:root{--navy:#092f3a;--blue:#087f8c;--aqua:#5edbc3;--ink:#16333e;--muted:#6d858e;--bg:#f2f7f7;--white:#fff;--line:#dce8e8;--pale:#e8f6f2;--warn:#fff7df;--warn-border:#f3dd9b;--danger:#ad3f3f;--shadow:0 8px 28px rgba(13,54,65,.07)}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button{cursor:pointer}.topbar{height:74px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(14px,3vw,36px);position:sticky;top:0;z-index:20;box-shadow:0 3px 12px #092f3a22}.brand{display:flex;gap:10px;align-items:center;color:white;text-decoration:none;font-size:18px;font-weight:800;letter-spacing:.2px}.brand img{width:38px;height:38px;object-fit:cover;border-radius:11px;background:white}.brand small{display:block;color:var(--aqua);font-size:9px;letter-spacing:1.8px;margin-top:-2px}.top-actions{display:flex;align-items:center;gap:8px}.status-pill{color:#c9e9e3;font-size:12px;padding:6px 9px;border:1px solid #ffffff30;border-radius:20px}.btn{border:0;border-radius:10px;padding:10px 15px;font-weight:750;transition:transform .12s,filter .12s}.btn:hover{filter:brightness(.96);transform:translateY(-1px)}.btn-primary{background:var(--blue);color:white}.topbar .btn-primary{background:#19a68c}.btn-ghost{background:#f0f7f6;color:var(--navy)}.btn-small{font-size:12px;padding:7px 10px}.hidden{display:none!important}.import-btn{display:inline-flex;align-items:center}.layout{display:flex;min-height:calc(100vh - 74px)}.sidebar{width:228px;flex:none;background:var(--navy);color:white;padding:18px 12px;display:flex;flex-direction:column;justify-content:space-between}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#d4e7e7;text-align:left;padding:12px 13px;border-radius:10px;display:flex;gap:12px;align-items:center;font-weight:650}.nav-item span{width:22px;text-align:center;font-size:17px;color:var(--aqua)}.nav-item:hover,.nav-item.active{background:#174e59;color:white}.sidebar-note{font-size:11px;color:#afc8ca;line-height:1.5;padding:0 9px 8px}.content{width:min(100%,1450px);padding:clamp(18px,3vw,34px);margin:0 auto}.view{display:none}.view.active{display:block}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.page-heading h1{font-size:clamp(24px,3vw,32px);line-height:1.1;margin:3px 0 7px;color:var(--navy)}.eyebrow{font-size:10px;font-weight:850;letter-spacing:1.8px;color:var(--blue);margin:0}.muted{color:var(--muted);font-size:13px;margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:17px 0}.metric-card,.panel{background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.metric-card{padding:17px 18px;min-height:113px}.metric-card span{font-size:12px;color:var(--muted);display:block}.metric-card strong{font-size:clamp(21px,2.1vw,29px);display:block;color:var(--navy);margin:7px 0 2px}.metric-card small{font-size:11px;color:var(--muted)}.panel{padding:19px;margin:15px 0}.panel h2{font-size:17px;color:var(--navy);margin:0 0 12px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.panel-head h2{margin:0 0 3px}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:15px}.notice{background:var(--warn);border:1px solid var(--warn-border);border-radius:12px;padding:12px 14px;color:#624e14;font-size:13px;margin:14px 0}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;align-items:end}.form-grid label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.form-grid input,.form-grid select,.month-picker input{width:100%;min-height:42px;border:1px solid #cedcdd;background:#fff;color:var(--ink);border-radius:9px;padding:9px 11px;outline:none}.form-grid input:focus,.form-grid select:focus,.month-picker input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #087f8c1c}.span-all{grid-column:1/-1}.form-total{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;background:var(--pale);padding:12px 14px;border-radius:10px}.form-total span{color:var(--muted);font-size:12px;font-weight:700}.form-total strong{font-size:22px;color:var(--navy)}.form-total small{margin-left:auto}.hint{font-size:12px;color:var(--muted);margin:-4px 0 0}.purchase-lines-head{display:flex;align-items:center;justify-content:space-between}.purchase-line{display:grid;grid-template-columns:2fr .8fr 1fr 1fr auto;gap:8px;align-items:center;margin:0 0 9px}.purchase-line select,.purchase-line input{width:100%;min-height:39px;border:1px solid #cedcdd;background:white;border-radius:8px;padding:8px}.purchase-line .line-total{font-size:12px;font-weight:700;text-align:right;white-space:nowrap}.remove-line{border:0;color:var(--danger);background:#fff1f1;border-radius:8px;padding:8px 10px}.check-label{display:flex!important;grid-template-columns:20px 1fr;align-items:center;gap:8px!important;font-size:12px!important}.check-label input{width:17px!important;min-height:17px!important;accent-color:var(--blue)}.data-table-wrap{width:100%;overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:620px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px 8px;font-size:13px;vertical-align:top}.data-table th{font-size:11px;letter-spacing:.3px;color:var(--muted);font-weight:800}.data-table td:last-child,.data-table th:last-child{text-align:right}.data-table .num{text-align:right;white-space:nowrap}.tag{display:inline-block;border-radius:20px;background:var(--pale);color:#087f8c;padding:3px 8px;font-size:10px;font-weight:800}.tag.warn{background:#fff1d6;color:#926900}.tag.bad{background:#ffe7e7;color:var(--danger)}.empty-state{padding:23px 8px;color:var(--muted);text-align:center;font-size:13px}.stock-row{display:grid;grid-template-columns:1.4fr .7fr .9fr .9fr 1.2fr;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:11px 0;font-size:13px}.stock-row.head{color:var(--muted);font-size:11px;font-weight:800}.stock-row input{width:100%;border:1px solid #cedcdd;border-radius:8px;padding:8px}.stock-summary{display:grid;gap:9px;margin:2px 0 14px}.stock-summary div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:7px 0;font-size:13px}.month-picker{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:700;min-width:150px}.report-grid{margin-top:0}.report-line{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:9px 0;font-size:13px}.report-line strong{white-space:nowrap}.app-footer{text-align:center;color:var(--muted);font-size:11px;padding:25px 0 10px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;padding:12px 18px;border-radius:10px;box-shadow:var(--shadow);z-index:50;max-width:calc(100vw - 30px);font-size:13px}.danger-btn{border:0;color:var(--danger);background:#fff1f1;border-radius:8px;padding:6px 8px;font-size:11px}.muted-cell{color:var(--muted)}@media(max-width:1000px){.sidebar{width:190px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:20px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.topbar{height:auto;min-height:62px;padding:10px 12px;gap:8px}.brand{font-size:15px}.brand img{width:32px;height:32px}.top-actions{gap:5px}.status-pill{display:none}.top-actions .btn{font-size:11px;padding:8px 9px}.layout{display:block;padding-bottom:64px}.sidebar{position:fixed;z-index:25;bottom:0;top:auto;left:0;right:0;width:auto;height:62px;padding:5px 7px env(safe-area-inset-bottom);box-shadow:0 -4px 18px #092f3a20}.sidebar nav{display:flex;justify-content:space-around;gap:2px}.nav-item{flex:1;display:flex;flex-direction:column;gap:1px;padding:5px 2px;font-size:9px;text-align:center;justify-content:center}.nav-item span{font-size:17px;line-height:1}.sidebar-note{display:none}.content{padding:17px 12px 24px}.page-heading{align-items:flex-start}.page-heading h1{font-size:25px}.page-heading .btn{font-size:12px;padding:9px}.metric-grid{gap:8px;margin:12px 0}.metric-card{padding:13px 12px;min-height:101px;border-radius:13px}.metric-card strong{font-size:22px}.metric-card small{font-size:10px}.two-col{grid-template-columns:1fr;gap:8px}.panel{padding:15px 12px;margin:11px 0;border-radius:13px}.form-grid{grid-template-columns:1fr 1fr;gap:10px}.form-grid label{font-size:11px}.form-grid input,.form-grid select{min-height:40px;padding:8px;font-size:13px}.form-grid label:nth-child(2){grid-column:span 1}.purchase-line{grid-template-columns:1.5fr .7fr .9fr auto;gap:5px}.purchase-line .line-total{grid-column:1/3;text-align:left}.purchase-line select,.purchase-line input{font-size:11px;padding:7px 5px}.page-heading .month-picker{min-width:125px}.data-table{min-width:580px}.stock-row{grid-template-columns:1.2fr .8fr .9fr .9fr;gap:6px;font-size:11px}.stock-row>*:nth-child(4){display:none}.stock-row.head>*:nth-child(4){display:none}.stock-row input{font-size:11px;padding:7px}.app-footer{padding-bottom:10px}}@media(max-width:420px){.top-actions .import-btn{display:none}.form-grid{grid-template-columns:1fr}.form-grid .span-all{grid-column:1}.page-heading{flex-wrap:wrap}.page-heading .month-picker{width:100%}.purchase-line{grid-template-columns:1.2fr .8fr .9fr auto}.purchase-line .line-total{grid-column:1/3}.stock-row{grid-template-columns:1.1fr .9fr 1fr}.stock-row>*:nth-child(3){display:none}.stock-row.head>*:nth-child(3){display:none}}