:root{--bg:#f5f7f6;--surface:#fff;--surface-soft:#f8faf9;--text:#17211f;--muted:#66736f;--border:#dfe7e3;--accent:#19745f;--accent-dark:#0f5d4a;--amber:#a66612;--blue:#2f5f98;--red:#aa3d32;--shadow:0 16px 36px #14201d14;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin:0}.app-shell{grid-template-columns:264px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#ecf4f1;background:#10231e;height:100vh;padding:22px 18px;position:sticky;top:0}.brand{width:100%;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:8px;display:flex}.brand-mark{background:#1f8a70;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.brand strong,.brand small{display:block}.brand small{color:#a9c7bf;margin-top:2px;font-size:13px}.sidebar nav{gap:7px;margin-top:28px;display:grid}.sidebar nav button,.mobile-nav button{color:#c8d8d3;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:0 12px;display:flex}.sidebar nav button.active,.sidebar nav button:hover{color:#fff;background:#ffffff1f}.main-area{min-width:0;padding:24px}.demo-banner{color:#6d4a08;background:#fff4d8;border:1px solid #f1d38a;border-radius:8px;margin-bottom:18px;padding:12px 16px;font-weight:700}.page-stack{gap:18px;display:grid}.page-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.page-heading h1{font-size:32px;line-height:1.15}.page-heading p{color:var(--muted);margin-top:6px}.invoice-number{color:var(--accent-dark);background:#e8f5f1;border:1px solid #b9ded3;border-radius:8px;padding:10px 14px;font-weight:800}.summary-grid{grid-template-columns:repeat(5,minmax(160px,1fr));gap:14px;display:grid}.summary-card,.panel,.totals-panel,.invoice-paper{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px}.summary-card{justify-content:space-between;align-items:center;min-height:112px;padding:18px;display:flex}.summary-card span{color:var(--muted);font-size:13px;font-weight:700}.summary-card strong{margin-top:8px;font-size:26px;display:block}.tone-green svg{color:var(--accent)}.tone-amber svg{color:var(--amber)}.tone-blue svg{color:var(--blue)}.tone-red svg{color:var(--red)}.dashboard-grid,.form-grid,.report-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:18px;display:grid}.panel{padding:18px}.panel h2,.section-heading h2{font-size:18px;line-height:1.25}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.compact-list,.delivery-list{gap:10px;display:grid}.compact-list button,.delivery-list button,.delivery-history-row{width:100%;color:inherit;background:var(--surface-soft);border:1px solid var(--border);text-align:left;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:13px;display:grid}.compact-list small,.delivery-list small{color:var(--muted);margin-top:3px;display:block}.primary-button,.secondary-button,.ghost-button,.text-button{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:800;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:var(--accent);border:1px solid var(--accent)}.primary-button:hover{background:var(--accent-dark)}.secondary-button{color:var(--accent-dark);background:#edf8f5;border:1px solid #b8ddd2}.ghost-button,.text-button{color:var(--text);border:1px solid var(--border);background:0 0}.text-button{min-height:34px;color:var(--accent-dark);border:0;padding-inline:10px}.field-grid{gap:14px;display:grid}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}label{color:#3d4945;gap:7px;margin-bottom:14px;font-size:13px;font-weight:800;display:grid}input,select,textarea{width:100%;min-height:42px;color:var(--text);background:#fff;border:1px solid #cfdad6;border-radius:8px;outline:none;padding:10px 12px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #19745f1f}.items-table{gap:8px;display:grid}.item-row{grid-template-columns:minmax(220px,1fr) 92px 140px 132px 44px;align-items:center;gap:10px;display:grid}.item-head{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.icon-button,.row-actions button{width:36px;height:36px;color:var(--muted);border:1px solid var(--border);background:#fff;border-radius:8px;place-items:center;display:inline-grid}.totals-panel{grid-template-columns:170px 150px minmax(280px,420px);justify-content:end;align-items:end;gap:16px;padding:18px;display:grid}.totals-box,.invoice-totals,.report-stats{gap:8px;display:grid}.totals-box span,.invoice-totals span,.report-stats span{color:var(--muted);justify-content:space-between;gap:18px;display:flex}.grand-total{border-top:1px solid var(--border);padding-top:8px;font-size:18px;font-weight:900;color:var(--text)!important}.button-row,.detail-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.table-wrap{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:980px}.data-table th,.data-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:13px 14px}.data-table th{color:var(--muted);text-transform:uppercase;background:#f4f8f6;font-size:12px}.data-table tr:last-child td{border-bottom:0}.row-actions{gap:6px;display:flex}.search-panel{grid-template-columns:minmax(260px,1.4fr) repeat(5,minmax(150px,1fr));align-items:end;gap:12px;display:grid}.search-field{position:relative}.search-field svg{color:var(--muted);position:absolute;bottom:12px;left:12px}.search-field input{padding-left:40px}.status{white-space:nowrap;border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:12px;font-weight:900;display:inline-flex}.status-pending,.status-unpaid{color:#8c342d;background:#fff0ee}.status-ready,.status-partial{color:#80500a;background:#fff3d7}.status-out{color:#245684;background:#e8f2ff}.status-delivered,.status-paid{color:#0f684f;background:#e7f7f1}.status-cancelled{color:#59605d;background:#eef1f0}.empty-state,.loading-box,.error-box{border:1px dashed var(--border);background:#fff;border-radius:8px;gap:6px;padding:18px;display:grid}.empty-state span,.loading-box{color:var(--muted)}.error-box{color:#7e2f28;background:#fff1ef;border-style:solid;border-color:#f0c1ba}.invoice-detail-page{max-width:980px}.print-hint{color:var(--muted);font-size:13px}.invoice-paper{color:#18221f;padding:38px}.invoice-header,.invoice-parties,.invoice-bottom{justify-content:space-between;gap:34px;display:flex}.invoice-header{border-bottom:2px solid #17211f;padding-bottom:28px}.invoice-header h1{font-size:30px}.invoice-header p,.invoice-parties p,.invoice-notes p{color:#53605c;margin-top:4px}.invoice-meta{text-align:right;gap:4px;display:grid}.invoice-meta span,.invoice-parties span,.invoice-notes span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.invoice-meta strong{font-size:24px}.invoice-parties{padding:26px 0}.invoice-parties>div{width:50%}.invoice-parties strong,.profile-block strong{margin-top:6px;font-size:18px;display:block}.invoice-items{border-collapse:collapse;width:100%}.invoice-items th,.invoice-items td{text-align:right;border-bottom:1px solid #dbe4e0;padding:12px}.invoice-items th:first-child,.invoice-items td:first-child{text-align:left}.invoice-items th{color:#53605c;text-transform:uppercase;background:#f2f6f4;font-size:12px}.invoice-bottom{align-items:flex-start;padding-top:26px}.invoice-notes{max-width:440px}.invoice-badges{gap:8px;margin-top:14px;display:flex}.invoice-totals{min-width:290px}.invoice-paper footer{color:#53605c;text-align:center;border-top:1px solid #dbe4e0;margin-top:38px;padding-top:18px}.customer-search{grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:12px;display:grid}.profile-block{color:var(--muted);gap:8px;display:grid}.report-grid{align-items:start}.report-table-panel{grid-column:1/-1}.delivery-history-row{grid-template-columns:minmax(0,1fr) auto auto}.settings-panel{max-width:760px}.saved-message{color:var(--accent-dark);font-weight:800}.modal-backdrop{z-index:20;background:#09120f73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{background:#fff;border-radius:8px;width:min(440px,100%);padding:22px;box-shadow:0 24px 60px #09120f47}.modal-panel p{color:var(--muted);margin:6px 0 18px}.mobile-nav{display:none}@media (width<=1180px){.summary-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.dashboard-grid,.form-grid,.report-grid{grid-template-columns:1fr}.search-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.app-shell{display:block}.sidebar{display:none}.main-area{padding:16px}.page-heading,.invoice-header,.invoice-parties,.invoice-bottom{display:grid}.page-heading h1{font-size:26px}.summary-grid,.field-grid.two,.search-panel,.customer-search,.totals-panel{grid-template-columns:1fr}.item-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:1fr;padding:12px}.item-head{display:none}.invoice-paper{padding:22px}.invoice-parties>div{width:100%}.mobile-nav{z-index:10;background:#10231e;border-radius:12px;grid-template-columns:repeat(5,1fr);margin:0 12px 12px;padding:8px;display:grid;position:static;bottom:auto;left:auto;right:auto;box-shadow:0 12px 36px #09120f40}.mobile-nav button{color:#c8d8d3;justify-content:center}.mobile-nav button.active{color:#fff;background:#ffffff1f}}@media print{@page{margin:.5in}body,:root{background:#fff}.no-print,.sidebar,.mobile-nav,.demo-banner,.detail-actions,.print-hint{display:none!important}.app-shell,.main-area,.invoice-detail-page{min-height:auto;padding:0;display:block}.invoice-paper{width:100%;box-shadow:none;border:0;border-radius:0;padding:0}}
