:root{--bg:#f5f7fa;--panel:#fff;--ink:#172033;--muted:#6d7789;--line:#e5e9f0;--brand:#244b78;--brand2:#19395f;--ok:#18794e;--warn:#9a6700;--bad:#b42318;--radius:10px;--shadow:0 8px 28px rgba(16,24,40,.06)}
*{box-sizing:border-box}html{font-size:13px}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink)}a{text-decoration:none;color:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:235px;background:#122b49;color:#e8eef6;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:30}.brand{height:72px;padding:14px 16px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{width:34px;height:34px;border-radius:9px;background:#fff;color:#173b63;display:grid;place-items:center;font-weight:800;font-size:12px}.brand strong{display:block;font-size:12px;letter-spacing:.6px}.brand span{display:block;font-size:10px;color:#aebed1;margin-top:2px}.nav{padding:10px 8px;overflow:auto}.nav-item{display:flex;align-items:center;gap:9px;padding:9px 10px;margin:2px 0;border-radius:8px;color:#c6d2df;font-size:11px}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.09);color:#fff}.nav-dot{width:6px;height:6px;border-radius:50%;background:#6f8cab}.nav-item.active .nav-dot{background:#fff}.nav-item em{margin-left:auto;font-style:normal;font-size:8px;background:#795f1d;color:#fff3c4;padding:2px 5px;border-radius:999px}.sidebar-foot{margin-top:auto;padding:12px 16px;border-top:1px solid rgba(255,255,255,.08);font-size:10px}.sidebar-foot span,.sidebar-foot small{display:block}.sidebar-foot small{color:#9db0c4;margin-top:2px}.main{margin-left:235px;width:calc(100% - 235px)}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 22px;gap:12px;position:sticky;top:0;z-index:20}.topbar h1{font-size:15px;margin:0;font-weight:700}.topbar p{font-size:10px;color:var(--muted);margin:3px 0 0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.user-pill{background:#f1f4f8;border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-size:10px}.content{padding:18px 20px 34px}.grid{display:grid;gap:12px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.metric .label{font-size:9px;text-transform:uppercase;letter-spacing:.55px;color:var(--muted)}.metric .value{font-size:20px;font-weight:750;margin-top:7px}.metric .hint{font-size:9px;color:var(--muted);margin-top:4px}.section-head{display:flex;align-items:center;justify-content:space-between;margin:15px 0 8px}.section-head h2{font-size:12px;margin:0}.section-head p{font-size:9px;color:var(--muted);margin:2px 0 0}.table-wrap{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th{background:#f8fafc;color:#596579;text-transform:uppercase;font-size:8.5px;letter-spacing:.45px;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}td{padding:9px 10px;border-bottom:1px solid #eef1f5;font-size:10px;vertical-align:middle}tr:last-child td{border-bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:7px;padding:7px 10px;font-size:10px;font-weight:650;cursor:pointer}.btn-primary{background:var(--brand);color:white}.btn-primary:hover{background:var(--brand2)}.btn-ghost{background:white;border-color:var(--line);color:var(--ink)}.btn-danger{background:#fff2f0;color:var(--bad);border-color:#ffd5cf}.icon-btn{display:none;border:0;background:transparent;font-size:18px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:9px;color:#566174;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid #d9dee7;border-radius:7px;padding:8px 9px;font:inherit;font-size:10px;background:white}.field textarea{min-height:72px;resize:vertical}.span-2{grid-column:span 2}.span-4{grid-column:span 4}.badge{display:inline-block;border-radius:999px;padding:3px 7px;font-size:8.5px;font-weight:700}.badge-ok{background:#eaf8f1;color:var(--ok)}.badge-warn{background:#fff6df;color:var(--warn)}.badge-bad{background:#fff0ee;color:var(--bad)}.alert{padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:10px;border:1px solid}.alert-success{background:#effbf5;border-color:#bce9d1;color:#146c43}.alert-error{background:#fff2f0;border-color:#ffc7c1;color:#9f241c}.empty{padding:26px;text-align:center;color:var(--muted);font-size:10px}.pending-box{background:#fff;border:1px dashed #c9d1dc;border-radius:10px;padding:28px;text-align:center}.pending-box h3{margin:0 0 6px;font-size:13px}.pending-box p{margin:0;color:var(--muted);font-size:10px}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#102b49,#224f7e)}.login-card{width:min(390px,92vw);background:#fff;border-radius:14px;padding:26px;box-shadow:0 22px 70px rgba(0,0,0,.22)}.login-card h1{font-size:17px;margin:0 0 4px}.login-card p{font-size:10px;color:var(--muted);margin:0 0 18px}.login-card .field{margin-bottom:10px}.login-card .btn{width:100%;margin-top:4px;padding:9px}.small-note{font-size:9px;color:var(--muted);margin-top:10px}.actions{display:flex;gap:6px;flex-wrap:wrap}.toolbar{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.toolbar .field{min-width:150px}.num{text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}.span-4{grid-column:span 2}}
@media(max-width:760px){html{font-size:14px}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.main{margin-left:0;width:100%}.icon-btn{display:block}.topbar{padding:0 12px}.topbar h1{font-size:13px}.top-actions .user-pill{display:none}.content{padding:12px}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-2,.span-4{grid-column:auto}.card{padding:12px}.btn{min-height:36px}.table-wrap table{min-width:640px}}

/* Company Settings / Branding */
.brand-logo{width:36px;height:36px;border-radius:9px;object-fit:contain;background:#fff;padding:3px;flex:0 0 36px}.brand-copy{min-width:0}.brand-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.login-logo{width:64px;height:64px;object-fit:contain;display:block;margin:0 0 14px;border:1px solid var(--line);border-radius:12px;padding:5px;background:#fff}.settings-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:12px}.field-help{font-size:8.5px;color:var(--muted)}.company-preview{align-self:start;position:sticky;top:90px}.paper-preview{border:1px solid #dfe4eb;background:#fff;padding:18px 14px;display:flex;gap:12px;align-items:center;min-height:110px}.paper-preview img,.preview-logo{width:62px;height:62px;object-fit:contain;flex:0 0 62px}.preview-logo{border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:15px;color:var(--brand)}.paper-preview h3{font-size:13px;margin:0 0 4px}.paper-preview p{font-size:9px;color:var(--muted);margin:2px 0;line-height:1.35}.settings-note{display:flex;flex-direction:column;gap:3px;padding:11px 0;font-size:9px;color:var(--muted)}.settings-note strong{font-size:9.5px;color:var(--ink)}.report-actions{display:flex;justify-content:flex-end;margin-bottom:8px}.print-company-header,.print-company-footer{display:none}
@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.company-preview{position:static}.brand-copy strong{max-width:145px}}
@media print{body{background:#fff!important;color:#111}.sidebar,.topbar,.no-print,.alert,.btn,.actions{display:none!important}.main{margin:0!important;width:100%!important}.content{padding:0!important}.card,.table-wrap{box-shadow:none!important;border-color:#bbb!important}.print-company-header{display:flex!important;align-items:center;gap:12px;border-bottom:1.5px solid #222;padding:0 0 10px;margin:0 0 16px}.print-company-header img{width:58px;height:58px;object-fit:contain}.print-company-header h2{font-size:15px;margin:0 0 3px}.print-company-header p{font-size:9px;margin:1px 0;color:#333}.print-company-footer{display:block!important;margin-top:18px;padding-top:7px;border-top:1px solid #999;text-align:center;font-size:8.5px;color:#444}.content>.settings-grid .card:first-child{display:none!important}.company-preview{position:static}.paper-preview{border:0;padding:0}.section-head{break-after:avoid}table{min-width:0;font-size:9px}th,td{padding:5px 6px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr 1fr}}

/* v1.2 Professional grouped navigation */
.nav{padding:9px 8px 14px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}
.nav-main{width:100%;display:flex;align-items:center;gap:9px;min-height:38px;padding:7px 9px;margin:2px 0;border:0;border-radius:8px;background:transparent;color:#cbd6e3;font-family:inherit;font-size:10.5px;text-align:left;cursor:pointer;transition:background .14s ease,color .14s ease}
.nav-main:hover,.nav-main.active,.nav-group.active>.nav-main{background:rgba(255,255,255,.09);color:#fff}
.nav-icon{flex:0 0 25px;width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.08);font-size:7.5px;font-weight:800;letter-spacing:.2px;color:#abc1d8}
.nav-main:hover .nav-icon,.nav-main.active .nav-icon,.nav-group.active>.nav-main .nav-icon{background:rgba(255,255,255,.14);color:#fff}
.nav-label{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;letter-spacing:.05px}
.nav-chevron{margin-left:auto;font-size:15px;line-height:1;color:#7e9ab7;transition:transform .16s ease}
.nav-group.open>.nav-main .nav-chevron,.nav-group.active>.nav-main .nav-chevron{transform:rotate(90deg)}
.nav-submenu{display:none;margin:2px 0 5px 34px;padding:3px 0 3px 8px;border-left:1px solid rgba(255,255,255,.11)}
.nav-group.open>.nav-submenu,.nav-group.active>.nav-submenu{display:block}
.nav-subitem{display:flex;align-items:center;gap:7px;min-height:30px;padding:6px 8px;margin:1px 0;border-radius:6px;color:#9fb2c7;font-size:9.5px;transition:background .13s ease,color .13s ease}
.nav-subitem:hover,.nav-subitem.active{background:rgba(255,255,255,.075);color:#fff}
.nav-subdot{width:4px;height:4px;border-radius:50%;background:#6686a6;flex:0 0 auto}.nav-subitem.active .nav-subdot{background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.12)}
.nav-status{margin-left:auto;flex:0 0 auto;font-style:normal;font-size:7px;font-weight:700;background:#775e19;color:#fff0b2;padding:2px 5px;border-radius:999px}

/* Desktop: submenu is also discoverable on hover without shifting the sidebar. */
@media(min-width:761px){.nav-group:hover>.nav-submenu{display:block}.nav-group:hover>.nav-main .nav-chevron{transform:rotate(90deg)}}

@media(max-width:760px){.nav-main{min-height:42px;font-size:11px}.nav-icon{width:28px;height:28px;flex-basis:28px}.nav-submenu{margin-left:37px}.nav-subitem{min-height:36px;font-size:10.5px}.nav-group:hover>.nav-submenu{display:none}.nav-group.open>.nav-submenu,.nav-group.active>.nav-submenu{display:block}}

/* v1.3 Per-user access control */
.access-user-picker{margin-bottom:12px}.access-user-picker .toolbar{align-items:center}.access-user-picker .field{min-width:290px}.access-summary{display:flex;flex-direction:column;gap:2px;padding-top:14px}.access-summary strong{font-size:11px}.access-summary span{font-size:9px;color:var(--muted)}.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.access-card{padding:10px 12px}.access-card .section-head{margin:0 0 6px}.access-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid #edf0f4;cursor:pointer}.access-row:first-of-type{border-top:0}.access-row strong,.access-row small{display:block}.access-row strong{font-size:9.5px}.access-row small{font-size:7.8px;color:var(--muted);margin-top:2px}.switch{position:relative;width:34px;height:19px;flex:0 0 34px}.switch input{position:absolute;opacity:0;pointer-events:none}.switch i{position:absolute;inset:0;border-radius:999px;background:#d6dce5;transition:.15s}.switch i:after{content:"";position:absolute;width:15px;height:15px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.15s}.switch input:checked+i{background:#1e6e52}.switch input:checked+i:after{transform:translateX(15px)}.access-save{position:sticky;bottom:0;margin-top:12px;background:rgba(247,249,252,.96);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;align-items:center;gap:12px;z-index:8}.access-save span{font-size:8.7px;color:var(--muted);line-height:1.35}.delete-review{display:grid;grid-template-columns:minmax(130px,1fr) auto auto;gap:5px;align-items:center}.delete-review input{min-width:130px;border:1px solid #d9dee7;border-radius:6px;padding:6px 7px;font-size:9px}
@media(max-width:1000px){.access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.access-grid{grid-template-columns:1fr}.access-user-picker .field{min-width:100%}.access-summary{padding-top:0}.access-save{align-items:flex-start;flex-direction:column}.delete-review{grid-template-columns:1fr 1fr}.delete-review input{grid-column:1/-1}}


/* v1.4 Construction dashboard refresh */
body{background:linear-gradient(180deg,#eef3f8 0%,#f7f9fc 42%,#f3f6fb 100%)}
.sidebar{overflow:hidden;background:linear-gradient(180deg,#102b49 0%,#13365b 45%,#0e2743 100%);box-shadow:18px 0 40px rgba(8,18,34,.12)}
.sidebar::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(255,197,66,.20),transparent 26%),linear-gradient(180deg,rgba(255,255,255,.05),transparent 25%),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20800%20260%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-opacity%3D%22.35%22%20stroke-width%3D%224%22%3E%3Cpath%20d%3D%22M55%20250V110M55%20110h165M150%20110V82M130%2082h40M185%20110l120%2055%22/%3E%3Cpath%20d%3D%22M320%20250V88M320%2088h110M375%2088V68M355%2068h40M430%2088l95%2045%22/%3E%3C/g%3E%3Cg%20fill%3D%22%23ffffff%22%20fill-opacity%3D%22.10%22%3E%3Crect%20x%3D%220%22%20y%3D%22210%22%20width%3D%22800%22%20height%3D%2250%22/%3E%3Crect%20x%3D%2280%22%20y%3D%22165%22%20width%3D%2256%22%20height%3D%2245%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22150%22%20y%3D%22145%22%20width%3D%2264%22%20height%3D%2265%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22230%22%20y%3D%22178%22%20width%3D%2248%22%20height%3D%2232%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22345%22%20y%3D%22158%22%20width%3D%2262%22%20height%3D%2252%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22423%22%20y%3D%22172%22%20width%3D%2248%22%20height%3D%2238%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22505%22%20y%3D%22150%22%20width%3D%2268%22%20height%3D%2260%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22586%22%20y%3D%22168%22%20width%3D%2240%22%20height%3D%2242%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22642%22%20y%3D%22138%22%20width%3D%2276%22%20height%3D%2272%22%20rx%3D%222%22/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat,no-repeat;background-position:right -10px top -30px,0 0,center bottom 62px;background-size:280px 280px,100% 100%,120% auto;opacity:.95;pointer-events:none}
.brand,.nav,.sidebar-foot{position:relative;z-index:1}
.brand{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0));backdrop-filter:blur(4px)}
.brand-mark,.brand-logo{box-shadow:0 8px 20px rgba(9,20,37,.18)}
.nav-main{backdrop-filter:blur(4px)}
.nav-main:hover,.nav-main.active,.nav-group.active>.nav-main{background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.06))}
.nav-subitem.active{background:linear-gradient(90deg,rgba(255,255,255,.12),rgba(255,255,255,.05))}
.sidebar-foot{background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.03))}
.topbar{background:rgba(255,255,255,.88);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(15,23,42,.04)}
.content{position:relative;overflow:hidden}
.content::before{content:"";position:absolute;right:-120px;top:18px;width:360px;height:360px;background:radial-gradient(circle,rgba(36,75,120,.08),transparent 62%);pointer-events:none;filter:blur(4px)}
.dashboard-hero{position:relative;overflow:hidden;padding:20px 22px;margin-bottom:12px;background:linear-gradient(135deg,#173c66 0%,#234f7f 60%,#325f91 100%);color:#fff;border:0;min-height:150px}
.dashboard-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 40%),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20800%20260%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-opacity%3D%22.35%22%20stroke-width%3D%224%22%3E%3Cpath%20d%3D%22M55%20250V110M55%20110h165M150%20110V82M130%2082h40M185%20110l120%2055%22/%3E%3Cpath%20d%3D%22M320%20250V88M320%2088h110M375%2088V68M355%2068h40M430%2088l95%2045%22/%3E%3C/g%3E%3Cg%20fill%3D%22%23ffffff%22%20fill-opacity%3D%22.10%22%3E%3Crect%20x%3D%220%22%20y%3D%22210%22%20width%3D%22800%22%20height%3D%2250%22/%3E%3Crect%20x%3D%2280%22%20y%3D%22165%22%20width%3D%2256%22%20height%3D%2245%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22150%22%20y%3D%22145%22%20width%3D%2264%22%20height%3D%2265%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22230%22%20y%3D%22178%22%20width%3D%2248%22%20height%3D%2232%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22345%22%20y%3D%22158%22%20width%3D%2262%22%20height%3D%2252%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22423%22%20y%3D%22172%22%20width%3D%2248%22%20height%3D%2238%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22505%22%20y%3D%22150%22%20width%3D%2268%22%20height%3D%2260%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22586%22%20y%3D%22168%22%20width%3D%2240%22%20height%3D%2242%22%20rx%3D%222%22/%3E%3Crect%20x%3D%22642%22%20y%3D%22138%22%20width%3D%2276%22%20height%3D%2272%22%20rx%3D%222%22/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat;background-position:0 0,right -20px bottom -6px;background-size:100% 100%,48% auto;opacity:.42;pointer-events:none}
.dashboard-hero__content{position:relative;z-index:1;max-width:62%}
.hero-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);font-size:8.5px;font-weight:700;text-transform:uppercase;letter-spacing:.7px}
.dashboard-hero h2{font-size:24px;line-height:1.15;margin:12px 0 6px}
.dashboard-hero p{font-size:10.5px;line-height:1.6;color:rgba(255,255,255,.85);margin:0 0 14px}
.hero-strip{display:flex;gap:18px;flex-wrap:wrap}
.hero-strip div{min-width:110px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:10px 12px;border-radius:12px;backdrop-filter:blur(8px)}
.hero-strip strong{display:block;font-size:18px;line-height:1.1;margin-bottom:3px}
.hero-strip span{font-size:9px;color:rgba(255,255,255,.84)}
.dashboard-kpis .metric-card{position:relative;overflow:hidden;padding:15px 16px;border:1px solid #e7edf4;background:linear-gradient(180deg,#fff,#fbfcfe)}
.metric-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.metric-badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:8px;font-weight:800;letter-spacing:.55px;text-transform:uppercase;background:#eef4fb;color:#365d87}
.metric-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;font-size:9px;font-weight:800;color:#35516d;background:#f3f6fa;border:1px solid #e4eaf2}
.metric-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#dfe7f1}
.metric-card.accent-sales::after{background:linear-gradient(90deg,#1e6ad6,#57a5ff)}
.metric-card.accent-expense::after{background:linear-gradient(90deg,#e06d32,#f8b164)}
.metric-card.accent-inventory::after{background:linear-gradient(90deg,#0f8c6b,#51c7a6)}
.metric-card.accent-warning::after{background:linear-gradient(90deg,#b8860b,#f3c64e)}
.chart-card{padding:14px 14px 16px}
.compact-head{margin-bottom:12px}
.legend-inline{display:flex;gap:10px;flex-wrap:wrap;font-size:8.5px;color:var(--muted)}
.legend-inline span{display:inline-flex;align-items:center;gap:5px}
.swatch{display:inline-block;width:10px;height:10px;border-radius:3px}
.swatch-sales{background:linear-gradient(180deg,#4ea4ff,#2469d6)}
.swatch-exp{background:linear-gradient(180deg,#f7b36a,#d9742d)}
.mini-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;align-items:end;min-height:170px;padding:8px 2px 4px}
.bar-group{display:flex;flex-direction:column;align-items:center;gap:8px}
.bar-pair{height:128px;display:flex;align-items:flex-end;gap:6px}
.bar{position:relative;width:18px;min-height:8px;border-radius:8px 8px 4px 4px;box-shadow:inset 0 -1px 0 rgba(255,255,255,.25)}
.bar span{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);font-size:7px;color:#4d5a6f;white-space:nowrap;background:#fff;border:1px solid #edf1f5;border-radius:999px;padding:2px 5px;box-shadow:0 3px 12px rgba(15,23,42,.05)}
.bar.sales{background:linear-gradient(180deg,#64b3ff 0%,#2b6bdc 100%)}
.bar.expenses{background:linear-gradient(180deg,#ffc67c 0%,#da7b35 100%)}
.bar-label{font-size:8.4px;color:#617086;font-weight:700;letter-spacing:.3px}
.stock-gauge-list{display:flex;flex-direction:column;gap:12px}
.stock-gauge{padding:10px 0;border-top:1px solid #edf1f5}
.stock-gauge:first-child{padding-top:0;border-top:0}
.stock-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:7px}
.stock-meta strong{font-size:10px}
.stock-meta span,.stock-gauge small{font-size:8.6px;color:var(--muted)}
.stock-progress{position:relative;height:11px;border-radius:999px;background:#eef3f7;overflow:hidden;border:1px solid #e3e9f0}
.stock-progress i{display:block;height:100%;border-radius:999px}
.stock-progress i.ok{background:linear-gradient(90deg,#13a17b,#66d0b2)}
.stock-progress i.warn{background:linear-gradient(90deg,#cc930b,#f3ca5d)}
.stock-progress i.bad{background:linear-gradient(90deg,#d55a3f,#f09b7e)}
.micro-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.micro-card{border:1px solid #e8edf3;background:#fafcff;border-radius:10px;padding:10px 11px}
.micro-card span{display:block;font-size:8.4px;color:var(--muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.55px}
.micro-card strong{font-size:15px}
.low-stock-panel{padding:10px 12px}
.low-stock-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(110px,1fr) auto;gap:12px;align-items:center;padding:9px 0;border-top:1px solid #edf1f5}
.low-stock-row:first-child{border-top:0}
.low-stock-info strong{display:block;font-size:9.8px}
.low-stock-info span{display:block;font-size:8.5px;color:var(--muted);margin-top:3px}
.low-stock-bar{height:10px;border-radius:999px;background:#eef2f6;overflow:hidden;border:1px solid #e3e9ef}
.low-stock-bar i{display:block;height:100%;background:linear-gradient(90deg,#f0bb46,#db8b2c);border-radius:999px}
.low-stock-val{text-align:right}
.low-stock-val strong{display:block;font-size:11px}
.low-stock-val small{display:block;font-size:8px;color:var(--muted)}
.dashboard-table tbody tr:hover{background:#fafcff}
@media(max-width:1200px){.dashboard-hero__content{max-width:75%}}
@media(max-width:980px){.hero-strip{gap:10px}.hero-strip div{min-width:96px}.micro-metrics{grid-template-columns:1fr}.low-stock-row{grid-template-columns:1fr;gap:8px}.low-stock-val{text-align:left}}
@media(max-width:760px){.dashboard-hero{padding:16px}.dashboard-hero__content{max-width:100%}.dashboard-hero::before{background-size:100% 100%,90% auto;background-position:0 0,center bottom}.dashboard-hero h2{font-size:18px}.hero-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mini-bars{gap:8px;overflow-x:auto;padding-bottom:8px}.bar-group{min-width:48px}.bar span{font-size:6.5px}.sidebar::before{background-position:right -10px top -10px,0 0,center bottom 62px;background-size:220px 220px,100% 100%,175% auto}}


/* v1.5 Sidebar icons + Main Office to Branch flow */
.nav-icon svg{width:15px;height:15px;display:block}.nav-main.active .nav-icon svg,.nav-main:hover .nav-icon svg{filter:drop-shadow(0 1px 5px rgba(255,255,255,.13))}.nav-subicon{width:18px;height:18px;display:grid;place-items:center;flex:0 0 18px;color:#7897b6}.nav-subicon svg{width:13px;height:13px}.nav-subitem:hover .nav-subicon,.nav-subitem.active .nav-subicon{color:#fff}.nav-subitem{gap:8px}.flow-banner{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;background:linear-gradient(90deg,#eef4fb,#f8fafc);border:1px solid #dfe7f1;border-radius:10px}.flow-banner b{color:#8ba0b7;font-size:12px}.flow-step{padding:6px 9px;border-radius:999px;background:#fff;border:1px solid #e1e7ee;font-size:8.5px;font-weight:700;color:#617086}.flow-step.active{background:#173f69;border-color:#173f69;color:#fff;box-shadow:0 5px 14px rgba(23,63,105,.14)}.receive-info{display:flex;align-items:center;justify-content:space-between;gap:12px}.receive-info strong,.receive-info span{display:block}.receive-info strong{font-size:11px}.receive-info>div>span{font-size:9px;color:var(--muted);margin-top:3px}.transfer-card{margin-bottom:10px;padding:0;overflow:hidden}.transfer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:linear-gradient(180deg,#fff,#fafcff);border-bottom:1px solid #e8edf3}.transfer-head strong{display:block;font-size:11px;color:#173f69}.transfer-head span{display:block;font-size:8.7px;color:var(--muted);margin-top:3px}.transfer-status{text-align:right}.transfer-status small{display:block;font-size:7.8px;color:var(--muted);margin-top:4px}.compact-transfer{border:0;border-radius:0;box-shadow:none}.compact-transfer table{min-width:640px}.receive-qty{width:90px;border:1px solid #d6dde7;border-radius:6px;padding:6px 7px;text-align:right;font:inherit;font-size:9px}.receive-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center}.receive-actions input{min-width:280px;max-width:500px;flex:1;border:1px solid #d6dde7;border-radius:6px;padding:7px 8px;font:inherit;font-size:9px}.transfer-note{padding:8px 14px;background:#fffdf6;border-top:1px solid #f0ead3;font-size:8.5px;color:#7d6940}
@media(max-width:760px){.flow-banner{align-items:stretch}.flow-banner b{display:none}.flow-step{flex:1 1 46%;text-align:center}.receive-info{align-items:flex-start;flex-direction:column}.receive-actions{align-items:stretch;flex-direction:column}.receive-actions input{min-width:0;width:100%}.nav-icon svg{width:16px;height:16px}}
.transfer-receive-footer{padding:10px 14px;border-top:1px solid #e8edf3;background:#fbfcfe}


/* v1.6 Full-screen Quick POS */
.btn-pos-shortcut{background:#153f6b;color:#fff;border-color:#153f6b;gap:8px}.btn-pos-shortcut:hover{background:#0f3155}.btn-pos-shortcut kbd{font:700 7.5px/1 ui-monospace,SFMono-Regular,Consolas,monospace;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2);padding:3px 5px;border-radius:5px}.pos-overlay{position:fixed;inset:0;z-index:1000;background:#eef2f6;display:none}.pos-overlay.open{display:block}.pos-shell{height:100vh;display:flex;flex-direction:column;background:#f3f6fa}.pos-header{height:68px;flex:0 0 68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px;background:linear-gradient(135deg,#102c4a,#173f68);color:#fff;box-shadow:0 4px 20px rgba(12,31,52,.18)}.pos-brand{display:flex;align-items:center;gap:10px}.pos-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#fff;color:#123b63;font-size:11px;font-weight:850}.pos-brand strong{display:block;font-size:14px}.pos-brand small{display:block;color:#b9cbe0;font-size:8.5px;margin-top:2px}.pos-header-actions{display:flex;align-items:center;gap:10px}.pos-header-actions label{font-size:8px;color:#b9cbe0;text-transform:uppercase;letter-spacing:.55px}.pos-header-actions select{display:block;margin-top:3px;min-width:180px;background:#fff;color:#18283c;border:0;border-radius:7px;padding:7px 9px;font:inherit;font-size:9.5px}.pos-close{width:36px;height:36px;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font-size:22px;line-height:1;cursor:pointer}.pos-body{min-height:0;flex:1;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:12px;padding:12px}.pos-catalog,.pos-cart-panel{min-height:0;background:#fff;border:1px solid #e0e6ee;border-radius:12px;box-shadow:0 8px 28px rgba(15,23,42,.055)}.pos-catalog{display:flex;flex-direction:column;padding:12px}.pos-search-wrap{display:flex;align-items:center;gap:8px;border:2px solid #cfd9e6;border-radius:10px;padding:0 10px;background:#fff}.pos-search-wrap:focus-within{border-color:#245f9e;box-shadow:0 0 0 3px rgba(36,95,158,.10)}.pos-search-icon{font-size:18px;color:#6c7f93}.pos-search-wrap input{flex:1;border:0;outline:0;padding:12px 0;font:inherit;font-size:12px;color:#17283c}.pos-search-wrap kbd{font:700 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;background:#eef2f6;color:#526276;border:1px solid #dbe2ea;padding:5px 7px;border-radius:5px}.pos-search-meta{display:flex;justify-content:space-between;gap:12px;padding:8px 3px 7px;color:#768396;font-size:8.5px}.pos-results{flex:1;min-height:0;overflow:auto;border-top:1px solid #edf1f5}.pos-result{display:grid;grid-template-columns:minmax(0,1.3fr) 120px 115px;align-items:center;gap:12px;padding:10px 8px;border-bottom:1px solid #edf1f5;cursor:pointer;transition:.12s}.pos-result:hover,.pos-result.selected{background:#f2f7fd}.pos-result.selected{box-shadow:inset 3px 0 #245f9e}.pos-item-title strong{display:block;font-size:10.5px}.pos-item-title span{display:block;color:#7b8796;font-size:8.3px;margin-top:2px}.pos-price strong{display:block;font-size:12px;text-align:right}.pos-price small{display:block;text-align:right;font-size:7.8px;color:#7b8796}.pos-stock{text-align:right}.pos-stock strong{font-size:10px}.pos-stock small{display:block;font-size:7.8px;color:#7b8796}.pos-stock.service strong{color:#245f9e}.pos-stock.low strong{color:#a86f00}.pos-stock.out strong{color:#b42318}.pos-cart-panel{display:flex;flex-direction:column;padding:12px}.pos-cart-head{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 10px;border-bottom:1px solid #edf1f5}.pos-cart-head strong{display:block;font-size:12px}.pos-cart-head span{display:block;font-size:8.5px;color:#7a8797;margin-top:2px}.pos-clear{border:0;background:#fff0ee;color:#a6382e;border-radius:7px;padding:6px 8px;font-size:8.5px;font-weight:700;cursor:pointer}.pos-cart{flex:1;min-height:120px;overflow:auto}.pos-empty{padding:32px 14px;text-align:center;color:#7b8796;font-size:9px;line-height:1.55}.pos-cart-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 84px 28px;gap:7px;align-items:center;padding:9px 4px;border-bottom:1px solid #edf1f5;cursor:pointer}.pos-cart-row.selected{background:#f4f8fd}.pos-cart-name strong{display:block;font-size:9.5px}.pos-cart-name small{font-size:7.8px;color:#7b8796}.pos-cart-qty{font-size:9px;text-align:center;background:#eef3f8;border-radius:7px;padding:5px}.pos-cart-line{text-align:right;font-size:9.5px;font-weight:750}.pos-remove{border:0;background:transparent;color:#ad4c42;font-size:15px;cursor:pointer}.pos-summary{border-top:1px solid #e7ecf2;padding:10px 2px 6px}.pos-summary>div{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:9px;color:#617084}.pos-summary .pos-grand{border-top:1px dashed #d9e0e9;margin-top:4px;padding-top:10px;color:#15253a}.pos-grand span{font-weight:800;letter-spacing:.65px}.pos-grand strong{font-size:20px}.pos-pay-btn{height:48px;border:0;border-radius:10px;background:linear-gradient(135deg,#176945,#209b68);color:#fff;font:800 13px/1 inherit;letter-spacing:.6px;cursor:pointer;box-shadow:0 8px 20px rgba(30,125,85,.16)}.pos-pay-btn:disabled{background:#c9d2dc;box-shadow:none;cursor:not-allowed}.pos-pay-btn span{margin-left:8px;font-size:8px;background:rgba(255,255,255,.15);padding:4px 6px;border-radius:5px}.pos-submodal{position:absolute;inset:0;z-index:5;background:rgba(11,25,41,.48);display:none;place-items:center;padding:16px;backdrop-filter:blur(3px)}.pos-submodal.open{display:grid}.pos-dialog{width:min(470px,96vw);background:#fff;border-radius:14px;border:1px solid #e0e6ed;box-shadow:0 28px 80px rgba(9,24,41,.28);padding:16px}.pos-dialog-title{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid #edf1f5}.pos-dialog-title strong{display:block;font-size:13px}.pos-dialog-title small{display:block;font-size:8.5px;color:#7b8796;margin-top:3px}.pos-dialog-title button{border:0;background:#f1f4f8;border-radius:8px;width:30px;height:30px;font-size:18px;cursor:pointer}.qty-dialog p{font-size:9px;color:#687789;margin:12px 0 8px}.qty-dialog label,.payment-form label{display:flex;flex-direction:column;gap:5px;font-size:9px;font-weight:700;color:#526176}.qty-dialog input,.payment-form input{border:1px solid #d7dee7;border-radius:8px;padding:10px 11px;font:inherit;font-size:12px;outline:0}.qty-dialog input:focus,.payment-form input:focus{border-color:#245f9e;box-shadow:0 0 0 3px rgba(36,95,158,.09)}.pos-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.payment-methods{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:12px 0}.payment-methods button{border:1px solid #dbe2ea;background:#f8fafc;border-radius:8px;padding:9px 6px;font:700 8.5px/1.2 inherit;color:#516176;cursor:pointer}.payment-methods button.active{background:#173f68;color:#fff;border-color:#173f68}.payment-form{display:grid;gap:10px}.change-display{display:flex;align-items:center;justify-content:space-between;background:#eef8f3;border:1px solid #d3ebdf;border-radius:10px;padding:11px 12px}.change-display span{font-size:8.5px;font-weight:800;letter-spacing:.7px;color:#42725c}.change-display strong{font-size:22px;color:#12643f}.pos-error{min-height:14px;color:#b42318;font-size:8.5px}.pos-confirm-pay{min-width:130px}.success-dialog{text-align:center;padding:24px}.success-check{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:#e7f7ee;color:#157149;font-size:28px;font-weight:800}.success-dialog>strong{display:block;font-size:15px}.success-dialog>p{font-size:9px;color:#6c7988;margin:5px 0 14px}.success-change{background:#f4f8fb;border:1px solid #e4eaf0;border-radius:10px;padding:12px;margin:0 0 14px}.success-change span{display:block;font-size:8px;color:#6b7888;letter-spacing:.7px}.success-change strong{display:block;font-size:24px;margin-top:3px}.success-dialog .btn{width:100%;padding:10px}.pos-loading{padding:30px;text-align:center;color:#748295;font-size:9px}.pos-no-results{padding:28px;text-align:center;color:#748295;font-size:9px}.pos-result.is-disabled{opacity:.55}.pos-result.is-disabled:hover{background:transparent;cursor:not-allowed}@media(max-width:1000px){.pos-body{grid-template-columns:minmax(0,1fr) 340px}.pos-result{grid-template-columns:minmax(0,1fr) 100px 90px}}@media(max-width:760px){.btn-pos-shortcut kbd{display:none}.pos-header{height:auto;min-height:68px;padding:9px 10px}.pos-brand small{display:none}.pos-header-actions label{max-width:150px}.pos-header-actions select{min-width:0;width:140px}.pos-body{display:flex;flex-direction:column;padding:7px;overflow:auto}.pos-catalog{min-height:48vh}.pos-cart-panel{min-height:44vh}.pos-result{grid-template-columns:minmax(0,1fr) 80px 72px;gap:6px}.pos-search-meta span:last-child{display:none}.payment-methods{grid-template-columns:1fr 1fr}.pos-cart-row{grid-template-columns:minmax(0,1fr) 60px 74px 26px}}
