:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef2f6;--bg-accent:#d9e4ef;--surface:#fff;--text:#152033;--muted:#5b6b7c;--border:#c9d4e0;--primary:#1f6f8b;--primary-hover:#185a70;--danger:#b42318;--danger-bg:#fef3f2;--draft:#667085;--issued:#b54708;--paid:#067647;--shadow:0 10px 30px #15203314;--radius:12px;color:var(--text);background:radial-gradient(circle at top left, #1f6f8b1f, transparent 35%), linear-gradient(160deg, var(--bg), var(--bg-accent));font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:"Source Sans 3",Segoe UI,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}h1,h2{letter-spacing:-.02em;margin:0;font-family:Fraunces,Georgia,serif;font-weight:600}h1{font-size:1.85rem}h2{font-size:1.15rem}button,input,select,textarea{font:inherit}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:8px;padding:.55rem .7rem}textarea{resize:vertical}label{color:var(--muted);align-content:start;gap:.35rem;font-size:.92rem;display:grid}.field-hint{color:var(--muted);font-size:.85rem}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#ffffffdb;align-items:center;gap:1.5rem;padding:.9rem 1.5rem;display:flex;position:sticky;top:0}.brand{font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:650}.nav{flex:1;gap:.35rem;display:flex}.nav-link{color:var(--muted);border-radius:999px;padding:.45rem .75rem}.nav-link.active,.nav-link:hover{color:var(--primary);background:#1f6f8b1a}.topbar-actions{align-items:center;gap:.75rem;display:flex}.user-email{color:var(--muted);font-size:.9rem}.page{width:min(1600px,100% - 2rem);margin:1.5rem auto 3rem}.stack{gap:1rem;display:grid}.page-header,.section-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.2rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.9rem 1rem;display:grid}label>input,label>select,label>textarea{align-self:stretch;height:auto;min-height:2.4rem;max-height:2.4rem}label>textarea{min-height:4rem;max-height:none}.form-grid h2,.form-grid .full,.form-actions.full{grid-column:1/-1}.form-actions{flex-wrap:wrap;gap:.6rem;display:flex}.btn{cursor:pointer;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:.5rem .9rem;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-ghost{border-color:var(--border);background:#fff}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:#0000}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:.7rem .55rem}.data-table th{color:var(--muted);font-size:.85rem;font-weight:600}.sort-th{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;font-weight:600;display:inline-flex}.sort-th:hover{color:var(--primary)}.sort-indicator{opacity:.35;font-size:.65rem}.sort-indicator.active{opacity:1;color:var(--primary)}.row-actions{white-space:nowrap;justify-content:flex-end;gap:.35rem;display:flex}.lines-table-wrap{overflow-x:auto}.lines-table{table-layout:fixed;width:100%}.lines-table input,.lines-table select{width:100%;min-width:0}.lines-table .col-item-name{width:55%}.lines-table .col-num-input{width:4.5rem}.lines-table .col-num-input input{width:100%;min-width:0;padding-left:.4rem;padding-right:.4rem}.lines-table .item-select{min-width:0}.item-combobox{width:100%;min-width:0;position:relative}.item-combobox-input-wrap{position:relative}.item-combobox-input-wrap input{padding-right:1.8rem}.item-combobox-clear{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.15rem .35rem;font-size:1.1rem;line-height:1;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.item-combobox-menu{z-index:1000;border:1px solid var(--border);max-height:220px;box-shadow:var(--shadow);background:#fff;border-radius:8px;position:fixed;overflow:auto}.item-combobox-option{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:.75rem;width:100%;padding:.55rem .7rem;display:flex}.item-combobox-option:hover,.item-combobox-option.active{background:#1f6f8b1a}.item-combobox-empty{color:var(--muted);padding:.65rem .7rem}.lines-table .num{white-space:nowrap;font-variant-numeric:tabular-nums}.invoice-totals{justify-content:flex-end;gap:1.5rem;margin-top:1rem;display:flex}.invoice-totals>div{text-align:right;gap:.2rem;display:grid}.total-amount{font-size:1.25rem}.status{text-transform:capitalize;font-size:.85rem;font-weight:600;display:inline-block}.status-draft{color:var(--draft)}.status-issued{color:var(--issued)}.status-paid{color:var(--paid)}.muted{color:var(--muted)}.error{color:var(--danger);margin:0}.success{color:var(--paid);margin:0}.toast-viewport{z-index:2000;pointer-events:none;gap:.6rem;width:min(360px,100% - 2rem);display:grid;position:fixed;bottom:1rem;right:1rem}.toast{pointer-events:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:.75rem;padding:.75rem .85rem;animation:.22s ease-out toast-in;display:flex}.toast p{flex:1;margin:0}.toast-success{border-color:var(--paid);background:var(--paid);color:#fff}.toast-error{background:var(--danger-bg);color:var(--danger);border-color:#b423184d}.toast-dismiss{color:inherit;cursor:pointer;opacity:.65;background:0 0;border:0;padding:.05rem .2rem;font-size:1.15rem;line-height:1}.toast-dismiss:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.item-thumb,.item-photo-preview,.pos-product-photo{object-fit:cover;background:#e8eef3;border-radius:8px;display:block}.item-thumb{width:40px;height:40px}.item-thumb.placeholder,.pos-product-photo.placeholder{border:1px dashed var(--border)}.item-photo-preview-wrap{align-items:center;gap:.75rem;display:flex}.item-photo-preview{width:96px;height:96px}.pos-layout{grid-template-columns:1.4fr 1fr;align-items:start;gap:1rem;display:grid}.pos-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;display:grid}.pos-product{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;gap:.4rem;padding:.65rem;display:grid}.pos-product:hover{border-color:var(--primary);background:#1f6f8b0f}.pos-product-photo{aspect-ratio:1;width:100%}.pos-product-name{font-size:.92rem;font-weight:600;line-height:1.25}.pos-product-price{color:var(--muted);font-size:.88rem}.pos-cart h2{margin-bottom:.75rem}.pos-cart-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.pos-cart-line{border-bottom:1px solid var(--border);gap:.45rem;padding-bottom:.75rem;display:grid}.pos-cart-line-main{justify-content:space-between;gap:.75rem;display:flex}.pos-cart-line-controls{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.pos-freebie{color:var(--text);align-items:center;gap:.35rem;margin:0;font-size:.88rem;display:inline-flex}.pos-cart-footer{gap:.75rem;margin-top:1rem;display:grid}.pos-totals{gap:.35rem;display:grid}.pos-totals>div{justify-content:space-between;gap:1rem;display:flex}.pos-grand strong{font-size:1.25rem}.pos-save{width:100%}.login-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(420px,100%);box-shadow:var(--shadow);gap:.9rem;padding:1.5rem;display:grid}.page-subtitle{margin:.25rem 0 0}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:.35rem;padding:1rem 1.1rem;display:grid}.stat-card.accent-warn{background:linear-gradient(#fff8f1,#fff);border-color:#b5470859}.stat-label,.stat-meta{color:var(--muted);font-size:.9rem}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.45rem}.dashboard-columns{grid-template-columns:1.5fr 1fr;align-items:start;gap:1rem;display:grid}.dashboard-charts{grid-template-columns:1.6fr 1fr;align-items:start;gap:1rem;display:grid}.dashboard-charts-pies{gap:1rem;display:grid}.chart-panel{min-height:100%}.chart-block{gap:.5rem;display:grid}.chart-frame{width:100%}.chart-frame-bars{height:280px}.chart-frame-pie{height:190px}.chart-legend-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.chart-legend-list li{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;font-size:.9rem;display:grid}.chart-swatch{border-radius:2px;width:.7rem;height:.7rem}.chart-tooltip{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;gap:.3rem;padding:.55rem .7rem;font-size:.85rem;display:grid}.chart-tooltip-row{justify-content:space-between;gap:1rem;display:flex}.category-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.category-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.35rem 0;display:flex}.production-card{border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1rem}.dashboard-note{margin:.75rem 0 0;font-size:.85rem}.pos-product.out-of-stock{opacity:.55;cursor:not-allowed}.pos-product-stock{color:var(--muted);font-size:.8rem}.pos-product-stock.low{color:var(--issued)}.filters-panel{gap:.75rem;display:grid}.filters-grid{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:.8rem 1rem;display:grid}.filters-actions{align-items:end;display:flex}.filters-summary{margin:0;font-size:.9rem}.table-toolbar{align-items:center;gap:.6rem;margin-bottom:.85rem;display:flex}.table-toolbar input[type=search]{max-width:280px}.table-toolbar-meta{margin-left:auto;font-size:.9rem}.pagination{justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1rem;display:flex}@media (width<=800px){.topbar{flex-wrap:wrap}.toast-viewport{width:auto;left:1rem;right:1rem}.nav{order:3;width:100%}.form-grid,.stat-grid,.dashboard-columns,.dashboard-charts,.filters-grid,.pos-layout{grid-template-columns:1fr}.page-header,.section-header,.invoice-totals{flex-direction:column;align-items:flex-start}}
