:root{--navy:#0f172a;--green:#1f9e6a;--bg:#f5f3ee;--muted:#64748b;--stroke:#e2e8f0;--ink:#0f172a}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:14px system-ui,-apple-system,Segoe UI,Arial;background:#edf3f0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6ee7b7;outline-offset:1px}.shell{display:flex;min-height:100vh;max-width:1700px;margin:auto;background:#fff}.sidebar{width:266px;background:#0f172a;color:#b9c6d5;flex:none;padding:26px 13px;display:flex;flex-direction:column;gap:4px}.brand{height:82px;display:flex;align-items:flex-start;justify-content:center;padding:0 8px}.brand img{width:100%;max-width:236px;height:76px;object-fit:contain}.navbtn{width:100%;padding:15px;border:0;border-radius:10px;background:transparent;color:#cbd5e1;text-align:left;font-size:13px;display:flex;align-items:center;gap:12px}.navbtn.active{background:#1f9e6a;color:#fff;font-weight:700}.navbtn:hover:not(.active){background:#1e293b}.navbtn svg,.bottomNav svg{width:19px;height:19px}.navdivider{margin:19px 13px 12px;border:0;border-top:1px solid #334155}.sidebarfooter{margin-top:auto;font-size:11px;color:#94a3b8;padding:14px}.main{background:#fbfcfc;flex:1;min-width:0}.topbar{height:79px;border-bottom:1px solid var(--stroke);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px}.rightTop{display:flex;gap:12px;align-items:center}.avatar{background:#dcfce7;border-radius:50%;padding:10px;color:#14532d;font-weight:700}.mobileTop,.bottomNav{display:none}.dashboard,.page{padding:27px 30px 60px}.intro{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}.intro h1,h1{font-size:27px;margin:0 0 7px}.intro p,.muted{color:var(--muted);margin:0}.kpis,.gridcards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.card{background:#fff;border:1px solid var(--stroke);border-radius:14px;padding:20px;box-shadow:0 6px 25px #0f172a06}.card h3{margin:0 0 15px}.smallTitle{font-size:12px;color:#64748b}.knum{font-size:30px;font-weight:750;margin-top:14px}.contentGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.btn{background:#1f9e6a;border:1px solid #1f9e6a;color:#fff;padding:11px 16px;border-radius:9px;font-weight:600}.btn.secondary{background:#fff;color:#0f172a;border-color:#cbd5e1}.btn.danger{background:#fef2f2;color:#991b1b;border-color:#fecaca}.btn.small{padding:6px 10px;font-size:12px}label{display:block;font-weight:600;margin:10px 0 5px}input,select,textarea{padding:11px;border:1px solid #cbd5e1;border-radius:9px;width:100%;background:white;color:#0f172a}textarea{min-height:84px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formpanel{max-width:780px}.item{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #edf2f7;padding:12px 0}.item:last-child{border:0}.tag{border-radius:20px;padding:4px 9px;background:#ecfdf5;color:#047857;font-size:12px}.status{background:#f8fafc;border-radius:6px;padding:4px 8px;color:#334155}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:15px 0}.toolbar select{max-width:310px}.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.lane{background:#f1f5f9;padding:13px;border-radius:14px;min-height:165px}.lane h3{font-size:13px}.contact{background:white;border:1px solid #e2e8f0;border-radius:11px;padding:12px;margin:9px 0}.contact p{margin:6px 0}.contact select{font-size:12px;padding:6px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px 8px;border-bottom:1px solid #e2e8f0}.tablewrap{overflow-x:auto}.notice{border-left:3px solid #1f9e6a;background:#ecfdf5;padding:13px 16px;border-radius:8px;margin:15px 0;color:#065f46}.warning{border-left-color:#d97706;background:#fffbeb;color:#92400e}.authpage{display:grid;min-height:100vh;place-items:center;padding:25px}.authbox{width:min(440px,100%);background:white;border-radius:18px;padding:30px;border:1px solid #e2e8f0;box-shadow:0 16px 50px #0001}.authbox img{width:260px;max-width:100%;height:100px;object-fit:contain}.message{padding:10px 15px;border-radius:9px;background:#f1f5f9;margin:12px 0}.error{background:#fef2f2;color:#991b1b}.hidden,[hidden]{display:none!important}.link{border:0;background:transparent;color:#047857;text-decoration:underline;padding:5px}.mobileActions{display:flex;gap:8px}.iconbtn{border:0;background:transparent;padding:9px;color:#0f172a}.iconbtn svg{width:24px;height:24px}.empty{color:#64748b;padding:25px;text-align:center}.wide{width:100%}.sideAdmin{font-size:10px;letter-spacing:.12em;margin:16px 14px 0;color:#94a3b8}
@media(max-width:960px){.kpis,.gridcards{grid-template-columns:repeat(2,minmax(0,1fr))}.contentGrid{grid-template-columns:1fr}.sidebar{width:225px}}
@media(max-width:700px){.shell{display:block}.sidebar,.topbar{display:none}.mobileTop{display:flex;height:88px;background:#fff;padding:10px 18px;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:10}.mobileTop img{width:min(60vw,210px);height:70px;object-fit:contain;object-position:left center}.bottomNav{display:flex;position:fixed;bottom:0;left:0;right:0;background:white;box-shadow:0 -5px 20px #0f172a10;border-top:1px solid #e2e8f0;z-index:20;justify-content:space-around;padding:9px 4px max(9px,env(safe-area-inset-bottom))}.bottomNav button{border:0;background:transparent;color:#64748b;font-size:10px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:5px 2px;min-width:70px}.bottomNav button.active{color:#1f9e6a;font-weight:750}.dashboard,.page{padding:20px 15px 110px}.intro{align-items:flex-start;flex-direction:column}.intro h1,h1{font-size:23px}.kpis{gap:10px}.card{padding:15px}.knum{font-size:25px}.formgrid{grid-template-columns:1fr}.kanban{display:flex;overflow-x:auto}.lane{min-width:245px;flex:0 0 245px}.mobile-menu{display:block;background:#fff;border-bottom:1px solid #e2e8f0;padding:15px}.mobile-menu select{max-width:100%}}

.kanban,.tablewrap{max-width:100%}.contact,.item{overflow-wrap:anywhere}.iconbtn{min-width:44px;min-height:44px}@media(max-width:360px){.mobileTop{padding:10px}.mobileTop img{max-width:calc(100vw - 122px)}.mobileActions{gap:0}}
