:root{color:#1a2744;--navy:#1a2744;--green:#1d6a52;--cream:#f7f4ef;--pine:#12382e;--pine-2:var(--green);--gold:var(--green);--paper:#fffcf8;--line:#1a27441f;--muted:#1a27449e;--danger:var(--navy);--warn:var(--navy);--ink:var(--navy);--green-soft:#1d6a521a;--navy-soft:#1a274414;--accent-sales:var(--green);--accent-sales-soft:var(--cream);--accent-stock:var(--navy);--accent-stock-soft:var(--cream);--accent-purchase:var(--green);--accent-purchase-soft:var(--cream);--accent-alert:var(--navy);--accent-alert-soft:var(--cream);--accent-customer:var(--navy);--accent-customer-soft:var(--cream);--accent-report:var(--green);--accent-report-soft:var(--cream);--accent-staff:var(--navy);--accent-staff-soft:var(--cream);--accent-product:var(--green);--accent-product-soft:var(--cream);--shadow:0 10px 24px #1a274414;--sidebar:72px;--sidebar-narrow:72px;--sidebar-wide:240px;--page:var(--cream);background:#f7f4ef;font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:16px;line-height:1.45}*{box-sizing:border-box}html{max-width:100%;overflow-x:hidden}body{background:radial-gradient(1100px 380px at 0% -8%, #1d6a5214, transparent 55%), radial-gradient(900px 360px at 100% -6%, #1a27440d, transparent 50%), var(--page);max-width:100%;min-height:100dvh;margin:0;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%}h1,h2,h3{color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif;font-weight:600}h1{letter-spacing:-.02em;font-size:2rem}p{margin:0}code{background:#f3ead8;padding:0 .3rem;font-family:Consolas,monospace}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.skip{background:#fff;padding:.4rem .7rem;position:absolute;top:-3rem;left:.5rem}.skip:focus{z-index:50;top:.5rem}.shell{max-width:100%;min-height:100dvh;overflow-x:hidden}.sidebar{width:var(--sidebar-narrow);z-index:30;background:var(--navy);height:100dvh;color:var(--cream);flex-direction:column;gap:.85rem;padding:1rem .45rem 1.1rem;transition:width .2s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar-head{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.brand{align-items:center;gap:.75rem;min-width:0;display:flex}.brand-copy{min-width:0}.brand-copy strong,.brand-copy small,.brand strong,.brand small{display:block}.brand strong{letter-spacing:.01em;font-size:1.15rem}.brand small{color:#f7f4efb8}.brand-logo{object-fit:contain;background:#fff;border-radius:12px;flex:0 0 40px;width:40px;max-width:40px;height:40px}.nav{flex-direction:column;flex:1;gap:.3rem;min-width:0;min-height:0;display:flex;overflow:hidden auto}.sidebar-head,.sidebar-foot,.account-menu{min-width:0;max-width:100%}.sidebar-foot{gap:.55rem;margin-top:auto;display:grid}.pin-btn{width:100%;min-width:0;max-width:100%;min-height:40px;color:var(--cream);background:0 0;border:1px solid #f7f4ef47;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.35rem;font-weight:700;display:flex;overflow:hidden}.pin-btn svg{flex:none}.pin-btn.on{border-color:var(--green);background:#1d6a5266}.pin-btn:hover{background:#f7f4ef29}.pin-label{white-space:nowrap}.sidebar .sync-pill{text-align:left;width:100%;min-width:0;max-width:100%;font-weight:700;overflow:hidden}.account-menu{position:relative}.account-btn{text-align:left;color:#f6f1e6;background:#ffffff14;border:1px solid #ffffff29;border-radius:14px;align-items:center;gap:.7rem;width:100%;min-width:0;max-width:100%;min-height:48px;padding:.4rem;display:flex;overflow:hidden}.account-copy{min-width:0;display:grid}.account-copy strong,.account-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-copy small{color:#f7f4efb8}.avatar{background:var(--green);width:36px;height:36px;color:var(--cream);border:1px solid #fff3;border-radius:12px;flex:none;place-items:center;font-family:Georgia,Times New Roman,serif;display:grid}.account-pop{z-index:6;box-shadow:var(--shadow);background:#fffdf8;border:1px solid #e4dccf;border-radius:12px;padding:.3rem;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;right:0}.account-pop button{text-align:left;color:#0e2c25;background:0 0;border:0;border-radius:8px;min-height:44px;padding:.35rem .7rem}.account-pop button:hover{background:#f4f7f5}.nav button{text-align:left;color:#f6f1e6;background:0 0;border:0;border-radius:12px;align-items:center;gap:.7rem;width:100%;min-width:0;max-width:100%;min-height:48px;padding:.75rem .85rem;transition:background .18s,color .18s;display:flex;overflow:hidden}.nav-ico{flex:0 0 22px;place-items:center;width:22px;height:22px;display:grid}.nav-ico svg{display:block}.nav-label{white-space:nowrap;min-width:0;overflow:hidden}.nav button.active{background:var(--cream);color:var(--navy);box-shadow:inset 4px 0 0 var(--green);font-weight:700}.nav button:hover{background:#f7f4ef29}.nav button.active:hover{background:var(--cream);color:var(--navy)}.nav-backdrop,.menu-btn,.nav-close{display:none}.menu-btn,.nav-close{min-height:48px;color:inherit;background:0 0;border:1px solid #ffffff2e;border-radius:12px;justify-content:center;align-items:center;padding:.55rem .9rem}.menu-btn{border-color:var(--line);color:var(--pine);background:#fff;min-width:48px;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s}.menu-btn:hover,.menu-btn:focus-visible,.shell-top .menu-btn:hover,.shell-top .menu-btn:focus-visible{color:#1a2744;background:#1d6a5259;border-color:#1d6a52;transform:scale(1.04);box-shadow:0 0 0 3px #1d6a5247}.nav-close{color:#f6f1e6;flex:none}.workspace{margin-left:var(--sidebar-narrow);width:auto;min-width:0;max-width:100%;transition:margin-left .2s}.topbar{border-bottom:1px solid var(--line);z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f0;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1.25rem;display:flex;position:sticky;top:0}.top-identity{flex:1;min-width:0}.top-tools{align-items:center;gap:.5rem;min-width:0;margin-left:auto;display:flex}.theme-toggle{border:1.5px solid var(--navy);min-height:40px;color:var(--navy);cursor:pointer;background:0 0;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:.4rem;padding:.2rem .75rem;font-weight:700;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;display:inline-flex;position:relative}.theme-toggle:hover,.theme-toggle:focus-visible,.shell-top .theme-toggle:hover,.shell-top .theme-toggle:focus-visible{color:#1a2744;background:#1d6a5259;border-color:#1d6a52;box-shadow:0 0 0 3px #1d6a5259}.shell-top .warehouse-switch select{cursor:pointer;transition:border-color .18s,box-shadow .18s}.shell-top .warehouse-switch select:hover,.shell-top .warehouse-switch select:focus-visible{border-color:#1d6a52;box-shadow:0 0 0 3px #1d6a5247}.theme-toggle svg{display:block}@media (width>=901px){.topbar-quiet{justify-content:flex-end}.sidebar:hover,.shell.sidebar-pinned .sidebar,.shell.account-open .sidebar{width:var(--sidebar-wide)}.sidebar:hover~.workspace,.shell.sidebar-pinned .workspace,.shell.account-open .workspace{margin-left:var(--sidebar-wide)}.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .brand-copy,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .nav-label,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .account-copy,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .sync-label,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .pin-label{opacity:0;white-space:nowrap;flex:0 0 0;width:0;min-width:0;max-width:0;margin:0;padding:0;overflow:hidden}.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .nav button,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .account-btn,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .sync-pill,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .pin-btn,.shell:not(.sidebar-pinned):not(.account-open) .sidebar:not(:hover) .brand{justify-content:center;gap:0;min-width:0}}.topbar strong,.topbar small{display:block}.top-identity strong,.top-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar small,.muted,.field small,td small{color:var(--muted)}.top-actions,.row-actions,.page-head,.filters,.inline-form{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.page{align-content:start;gap:1rem;min-width:0;max-width:100%;padding:1.25rem 1.35rem 2rem;display:grid}.page>section{gap:1rem;min-width:0;display:grid}.page-head{justify-content:space-between;align-items:flex-end}.page>section.stock-page,.page>section.sale-page,.page>section.purchase-page,.page>section.customer-page,.page>section.alert-page,.page>section.report-page,.page>section.settings-page,.page>section.admin-page{gap:.7rem}.admin-page .stock-bar .btn{flex:none;min-height:32px;padding:.15rem .75rem}.stock-bar{align-items:center;gap:.45rem .65rem;min-width:0;min-height:0;display:flex}.stock-bar h1{letter-spacing:0;color:var(--navy);flex:none;font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:1.15rem;font-weight:700;line-height:1}.info-dot{border:1px solid var(--line);width:1.35rem;height:1.35rem;min-height:0;color:var(--pine-2);background:#fff;border-radius:99px;flex:none;padding:0;font-size:.75rem;font-weight:700;line-height:1}.customer-page .stock-bar{flex-wrap:wrap}.customer-page .stock-bar .btn{min-height:32px;margin-left:auto;padding:.15rem .75rem}.customer-page .stock-bar-actions{flex-wrap:wrap;gap:.35rem;margin-left:auto;display:flex}.customer-page .stock-bar-actions .btn{margin-left:0}.card-tags{flex-wrap:wrap;gap:.25rem;min-width:0;display:flex}.alert-page .stock-bar-actions,.report-page .stock-bar-actions{flex-wrap:wrap;gap:.35rem;margin-left:auto;display:flex}.alert-page .stock-bar-actions .btn,.report-page .stock-bar-actions .btn{min-height:32px;padding:.15rem .7rem}.report-period{flex-wrap:wrap;align-items:end;gap:.45rem;display:flex}.report-period .field{flex:9rem;min-width:0}.report-search{width:100%;display:block}.report-search input{width:100%;min-height:40px}.report-page .po-card-top{flex-wrap:wrap}.report-page .product-card .btn{min-height:32px}.report-preview tbody tr:nth-child(n+21){display:none}.customer-tools{grid-template-columns:minmax(0,1fr) 11.5rem 11.5rem;align-items:center;gap:.45rem;display:grid}.customer-tools .stock-search{width:100%;min-width:0}.customer-tools select{width:100%;min-height:38px}.customer-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.stock-bar .section-tabs{margin-left:auto;padding-bottom:0}.stock-bar .section-tabs button{min-height:32px;padding:.15rem .75rem;font-size:.9rem}.lead{color:var(--muted);max-width:68ch;margin-top:.35rem}.section-tabs{gap:.45rem;max-width:100%;padding-bottom:.15rem;display:flex;overflow-x:auto}.section-tabs button{border:1px solid var(--line);min-height:44px;color:var(--pine);background:#fff;border-radius:999px;flex:none;padding:.45rem .95rem}.section-tabs button.active{background:var(--pine);border-color:var(--pine);color:#f6f1e6;font-weight:700}.stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem;display:grid}.stat,.card,.login-card,.modal{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px}.stat{--stat-accent:var(--green);--stat-soft:var(--paper);text-align:left;color:var(--navy);background:var(--paper);border-left:3px solid var(--green);gap:.15rem;padding:.75rem .85rem;display:grid}button.stat{width:100%;color:inherit}button.stat:hover{border-color:var(--green);box-shadow:0 8px 18px #1a27441a}.stat strong{color:var(--navy);font-size:1.35rem}.stat span,.stat small{color:var(--muted)}.stat .stat-mark{color:var(--cream)}.stat.warn strong{color:var(--navy)}.accent-sales,.accent-stock,.accent-purchase,.accent-alert,.accent-customer,.accent-report,.accent-staff,.accent-product{--stat-accent:var(--green);--stat-soft:var(--paper)}.dash-page{gap:.85rem}.dash-welcome{border-bottom:2px solid var(--green);background:0 0;align-items:center;gap:.75rem;min-width:0;padding:0 0 .55rem;display:flex}.dash-welcome-copy{flex:auto;align-items:center;gap:.55rem;min-width:0;display:flex}.dash-kicker{border:1px solid var(--green);color:var(--green);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#1d6a521a;border-radius:999px;flex:none;margin:0;padding:.22rem .6rem;font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:.68rem;font-weight:700;line-height:1.3}.dash-hint{text-overflow:ellipsis;white-space:nowrap;color:#1a274499;min-width:0;margin:0;font-size:.85rem;overflow:hidden}.dash-search{flex:0 320px;width:min(100%,320px);min-width:180px;max-width:360px;margin:0;display:block;position:relative}.dash-search span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dash-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.dash-stat{text-align:left;width:100%;min-height:0;font:inherit;color:var(--navy);border:1px solid #1a274414;border-left:3px solid var(--green);cursor:pointer;background:#fffcf8;border-radius:12px;grid-template-columns:2.25rem minmax(0,1fr);align-items:center;gap:.08rem .75rem;padding:.9rem .95rem;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 22px #1a27440f}.dash-stat:after{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#1d6a5229,#0000 68%);width:4.5rem;height:4.5rem;position:absolute;top:0;right:0}.dash-stat-hero{background:#1d6a520d}.dash-stat:hover{border-color:#1d6a5273;border-left-color:var(--green);transform:translateY(-2px);box-shadow:0 14px 28px #1a27441a,0 0 0 3px #1d6a5224}.dash-mark{width:2.25rem;height:2.25rem;color:var(--navy);border:1.5px solid var(--green);background:#fffcf8;border-radius:999px;grid-row:1/span 3;justify-self:start;place-items:center;display:grid;box-shadow:inset 0 0 0 3px #1d6a5214}.dash-label{letter-spacing:.08em;text-transform:uppercase;color:#1a27449e;font-size:.68rem;font-weight:700}.dash-stat strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);overflow-wrap:anywhere;font-size:1.45rem;font-weight:700;line-height:1.15}.dash-stat small{color:#1a274499;font-size:.78rem}.dash-stat:not(:has(.dash-mark)){grid-template-columns:minmax(0,1fr);align-content:start;align-items:start;gap:.2rem 0}.dash-stat:not(:has(.dash-mark))>span:first-child{letter-spacing:.08em;text-transform:uppercase;color:#1a27449e;font-size:.68rem;font-weight:700;line-height:1.35}.dash-stat:not(:has(.dash-mark)) strong{grid-column:1}.dash-stat:not(:has(.dash-mark)) small{grid-column:1;line-height:1.35}.dash-welcome .dash-search input{width:100%;color:var(--navy);background:#fffcf8;border:1px solid #1a27442e;border-radius:999px;min-height:40px;padding:.4rem .95rem}.dash-quick{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;display:grid}.dash-quick button{text-align:center;border:1.5px solid var(--navy);min-height:42px;color:var(--navy);box-shadow:none;background:0 0;border-radius:999px;padding:.4rem .85rem;font-weight:700;transition:background .16s,color .16s,border-color .16s}.dash-quick button:hover{background:var(--green);border-color:var(--green);color:var(--cream)}.widget-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.widget-head input{flex:12rem;width:min(100%,16rem);min-width:0}.widget-head .btn{min-height:40px;padding:.3rem .75rem}.dash-page .card.chart-card,.dash-page .card.feed-card,.dash-page .card.low-card,.dash-page .card.expiry-card{background:var(--paper)}.week-chart{border-bottom:2px solid var(--navy);grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:.35rem;min-height:148px;padding-bottom:.35rem;display:grid}.week-col{place-items:end center;gap:.25rem;min-width:0;display:grid}.week-col span,.week-col small{color:var(--navy);font-size:.72rem}.week-track{background:var(--green-soft);border-radius:10px;align-items:flex-end;width:100%;max-width:28px;height:108px;display:flex}.week-bar{background:linear-gradient(180deg, #4e9a74 0%, var(--green) 100%);border-radius:10px 10px 6px 6px;width:100%;min-height:6px}.card{gap:.65rem;min-width:0;padding:.85rem .95rem;display:grid}.feed-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.feed-list li{grid-template-columns:.7rem 1fr;align-items:start;gap:.55rem;display:grid}.feed-list strong,.feed-list span{display:block}.feed-list span{color:var(--muted);font-size:.82rem}.dash-page .split{gap:.65rem}.feed-dot{background:var(--dot,var(--green));border-radius:99px;width:.7rem;height:.7rem;margin-top:.35rem}.feed-sales,.feed-stock,.feed-purchase,.feed-customer,.feed-report{--dot:var(--green)}.feed-alert{--dot:var(--navy)}.accent-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.accent-list li{border-left:3px solid var(--list-accent,var(--navy));padding:.15rem 0 .15rem .55rem}.accent-list strong,.accent-list span{display:block}.accent-list.low{--list-accent:var(--navy)}.accent-list.expiry{--list-accent:var(--green)}.split,.sale-layout{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem;display:grid}.table-wrap{max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.65rem .4rem}th{color:var(--muted);font-size:.82rem;font-weight:600}td strong,td small{display:block}.danger-text{color:var(--danger);font-weight:700}.btn,.sync-pill{border:1px solid var(--line);background:#fff;border-radius:999px;min-height:44px;padding:.55rem .9rem}.btn.primary{background:var(--green);border-color:var(--green);color:var(--cream)}.btn.primary:hover{background:#165843}.btn.danger{background:var(--cream);color:var(--navy);border-color:var(--navy)}.btn.ghost{background:var(--green-soft);color:var(--navy);border-color:#1a27441f}.btn.ghost:hover{background:#1d6a5229}.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed}.sync-pill.synced,.sync-pill.offline,.sync-pill.pending,.sync-pill.error,.sync-pill.syncing{color:var(--cream)}.sidebar .sync-pill{align-items:center;gap:.5rem;display:flex}.sidebar .sync-pill>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sync-dot{background:currentColor;border-radius:99px;flex:none;width:.55rem;height:.55rem}.sidebar .sync-pill.synced{background:#1d6a5261;border-color:#1d6a52d9}.sidebar .sync-pill.synced .sync-dot{background:#4e9a74}.sidebar .sync-pill.syncing{background:#0f141959;border-color:#f7f4ef59;animation:1.4s ease-in-out infinite sync-pulse}.sidebar .sync-pill.syncing .sync-dot{background:var(--cream)}.sidebar .sync-pill.offline,.sidebar .sync-pill.pending{color:#f7f4efb8;background:0 0;border-color:#f7f4ef61}.sidebar .sync-pill.offline .sync-dot,.sidebar .sync-pill.pending .sync-dot{background:#f7f4ef80}.sidebar .sync-pill.error{border-color:var(--green);background:#0f1419}.sidebar .sync-pill.error .sync-dot{background:var(--green)}@keyframes sync-pulse{0%,to{box-shadow:0 0 #f7f4ef00}50%{box-shadow:0 0 0 4px #f7f4ef29}}@media (prefers-reduced-motion:reduce){.sidebar .sync-pill.syncing{animation:none}}.field{gap:.3rem;min-width:0;display:grid}.field span{font-size:.92rem;font-weight:600}input,select{background:#fff;border:1px solid #d9d0c2;border-radius:10px;width:100%;max-width:100%;min-height:44px;padding:.65rem .75rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:.8rem;display:grid}.stack{gap:.75rem;display:grid}.check{align-items:center;gap:.5rem;display:flex}.filters input,.filters select,.inline-form input,.inline-form select{width:auto;min-width:10rem}.banner{border-radius:12px;margin:.8rem 1.25rem 0;padding:.8rem 1rem}.banner.warn,.banner.bad,.form-error{background:var(--navy-soft);color:var(--navy);border:1px solid #1a274429;border-radius:10px;padding:.7rem .8rem}.empty{padding:1.2rem .2rem}.plain-list,.pick-list,.queue-list{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.plain-list li,.queue-list li{gap:.15rem;display:grid}.pick-list button{text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;min-height:48px;padding:.75rem;display:grid}.cart-line{grid-template-columns:minmax(0,1fr) 90px 90px auto;align-items:center;gap:.4rem;display:grid}.cart-row.over{background:var(--navy-soft);border:1px solid var(--navy);border-radius:12px;padding:.45rem .5rem}.cart-row.over input{border-color:var(--navy);box-shadow:0 0 0 3px #1a27441f}.line-stock{color:var(--danger);margin:.15rem 0 0;font-size:.82rem;font-weight:700}.total-line,.sale-total{justify-content:space-between;align-items:baseline;font-size:1.15rem;display:flex}.sale-workspace{align-items:start;gap:.75rem;width:100%;display:grid}.sale-workspace .sale-sheet{width:100%}.sale-items{align-content:start;gap:.55rem;min-width:0}.sale-items-head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.sale-items-head h2{color:var(--pine);font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:1.05rem;font-weight:700}.sale-count{background:var(--pine);color:#f6f1e6;border-radius:999px;place-items:center;min-width:1.6rem;height:1.6rem;padding:0 .45rem;font-size:.82rem;font-weight:700;display:inline-grid}.sale-sheet{gap:.7rem;width:100%;padding:.85rem .95rem 1rem}.sale-sheet input[readonly],.shop-form input[readonly],.product-form input[readonly]{background:var(--cream);color:var(--navy)}.sale-mode{margin:-.35rem 0 0}.sale-sheet :is(input,select){min-height:40px;padding:.4rem .65rem}.sale-sheet .inline-form{align-items:center}.sale-sheet .inline-form .btn{min-height:40px}.sale-search{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;width:100%;display:grid}.sale-search-label{color:var(--pine);white-space:nowrap;font-size:.92rem;font-weight:700}.sale-search-box{min-width:0;position:relative}.sale-search input{background:#fff;min-height:44px}.sale-results{z-index:12;border:1px solid var(--line);max-height:260px;box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:.25rem;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.sale-results .muted{padding:.55rem .7rem}.sale-results [role=option]{cursor:pointer;border-radius:8px;gap:.1rem;padding:.5rem .65rem;display:grid}.sale-results [role=option].active{background:#e7f4ee}.sale-results [role=option] span{color:var(--muted);font-size:.8rem}.sale-lines{gap:.4rem;max-height:calc(100dvh - 8.5rem);display:grid;overflow:auto}.sale-head,.sale-line{grid-template-columns:minmax(0,1fr) 92px 110px 108px auto;align-items:center;gap:.45rem .55rem;display:grid}.sale-head{color:var(--muted);padding:0 .7rem;font-size:.75rem;font-weight:700}.sale-head span:nth-child(4){text-align:right}.sale-line{border:1px solid var(--line);background:#fffdf8;border-radius:12px;padding:.45rem .7rem}.sale-line.over{background:var(--navy-soft);border-color:var(--navy)}.sale-line.over input{border-color:var(--navy);box-shadow:0 0 0 3px #1a27441f}.sale-line .line-stock{grid-column:1/-1;margin:0}.sale-product{align-content:center;gap:.12rem;min-width:0;display:grid}.sale-product strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sale-product-meta{min-width:0;color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.sale-line input,.sale-line .btn{height:40px;min-height:40px}.sale-line .btn{padding:0 .75rem}.sale-line-sum{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.sale-price-lock{color:var(--pine);text-align:right;font-weight:700}.sale-pay{grid-template-columns:1fr 1fr;align-items:start;gap:.6rem;display:grid}.customer-field{gap:.3rem;min-width:0;display:grid}.customer-label{justify-content:space-between;align-items:center;gap:.4rem;font-size:.92rem;font-weight:600;display:flex}.customer-field small{color:var(--muted);font-size:.75rem;line-height:1.35}.link-btn{color:var(--pine-2);background:0 0;border:0;min-height:0;padding:0;font-size:.82rem;font-weight:700}.customer-menu{max-height:240px}.customer-menu [role=option]{gap:.05rem;display:grid}.customer-menu [role=option] span{color:var(--muted);font-size:.78rem}.shop-form{gap:.7rem;display:grid}.shop-form input{min-height:40px}.shop-form input[readonly]{background:var(--cream);color:var(--navy)}.shop-edit{color:var(--pine);align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;display:flex}.shop-edit input{width:1.05rem;height:1.05rem;min-height:0;padding:0}.shop-form .btn.primary{width:100%}.purchase-note{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.purchase-note article{gap:.25rem}.purchase-note strong{color:var(--pine)}.purchase-note p{color:var(--muted);font-size:.88rem}.purchase-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.purchase-tools{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.purchase-tools input,.purchase-tools select{flex:9rem;width:auto;min-width:9rem;min-height:40px}.purchase-tools .btn{min-height:40px}.purchase-card{width:min(720px,100%)}.purchase-done{color:var(--pine);background:#e7f4ee;border-radius:10px;margin:0;padding:.55rem .7rem;font-weight:700}.purchase-stats .stat{min-height:0;padding:.55rem .7rem}.purchase-stats .stat strong,.stock-stats .dash-stat strong,.purchase-stats .stat strong{font-size:1.15rem}.po-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.55rem;display:grid}.po-card{cursor:pointer;gap:.2rem;padding:.65rem .7rem}.po-card h3{color:var(--pine);font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:1rem;font-weight:700}.po-card-top{justify-content:space-between;align-items:flex-start;gap:.4rem;display:flex}.po-meta{color:var(--muted);margin:0;font-size:.8rem}.po-value{color:#0e2c25;margin:.1rem 0;font-weight:700}.po-card .icon-btn{width:32px;height:32px;min-height:0}.recv-banner{background:#e7f4ee;border-radius:12px;gap:.1rem;padding:.6rem .7rem;display:grid}.recv-banner strong{color:var(--pine)}.recv-line{border:1px solid var(--line);background:#fffdf8;border-radius:12px;gap:.35rem;padding:.55rem .65rem;display:grid}.recv-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;display:grid}.recv-fields label{color:var(--muted);gap:.12rem;font-size:.75rem;font-weight:700;display:grid}.recv-line .btn{min-height:36px;padding:.2rem .7rem}.po-detail{gap:.7rem;display:grid}.po-detail h3{color:var(--pine);font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:.95rem}.po-foot{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.purchase-extra{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.purchase-extra input{min-height:40px}.po-row{cursor:pointer}.po-row:hover{background:#f7f3ea}.sale-total{border-top:1px solid var(--line);padding-top:.35rem}.sale-total strong{color:var(--pine);font-size:1.35rem}.sale-sheet>.btn.primary{width:100%}.pager{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;padding-top:.6rem;display:flex}.hint-box{background:#f7f1e4;border-radius:12px;gap:.2rem;padding:.8rem;display:grid}.modal-back{z-index:40;background:#161c1875;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{width:min(560px,100%);max-height:min(88dvh,900px);padding:1rem;overflow:auto}.modal.wide{width:min(860px,100%)}.modal.standard{border-top:4px solid #12382e;width:min(600px,100vw - 2rem);padding:.85rem 1rem 1rem}.modal.standard .modal-head{margin-bottom:.45rem}.modal.standard .modal-head h2{color:#0e2c25;font-size:1.28rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wizard{gap:.75rem;min-width:0;display:grid}.wizard-progress{background:#e8ece9;border-radius:999px;height:4px;overflow:hidden}.wizard-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#12382e,#1d6a52);height:100%;transition:width .25s}.wizard-head{gap:.2rem;display:grid}.wizard-kicker{letter-spacing:.06em;text-transform:uppercase;color:#1d6a52;margin:0;font-size:.72rem;font-weight:700}.wizard-title{color:#0e2c25;margin:0;font-size:1.05rem}.wizard-hint{color:var(--muted);margin:0;font-size:.88rem}.wizard-dots{justify-content:center;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.wizard-dots li{background:#d5ddd8;border-radius:50%;width:8px;height:8px;transition:background .2s,transform .2s}.wizard-dots li.active{background:#12382e;transform:scale(1.15)}.wizard-dots li.done{background:#1d6a52}.wizard-body{gap:.85rem;min-width:0;display:grid}.wizard-panel{gap:.75rem;min-width:0;display:grid}.card.inset{border:1px solid var(--line);box-shadow:none;background:#faf8f4;border-radius:14px;padding:.85rem}.wizard-password-row{grid-template-columns:1fr auto auto;align-items:center;gap:.35rem;display:grid}.wizard-auto-hint strong{color:#0e2c25;font-size:1.05rem}.wizard-summary{gap:.55rem}.wizard-summary-row{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:baseline;gap:.75rem;padding:.35rem 0;font-size:.9rem;display:flex}.wizard-summary-row span{color:var(--muted);flex:none;max-width:42%}.wizard-summary-row strong{text-align:right;color:#12382e;word-break:break-word;font-weight:600}.wizard-nav{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding-top:.25rem;display:flex}.wizard-nav .btn.primary{min-width:7.5rem;margin-left:auto}.field.invalid input,.field.invalid select{border-color:#b42318}@media (width<=520px){.wizard-password-row{grid-template-columns:1fr}.wizard-password-row .btn{width:100%}.wizard-nav .btn{flex:calc(50% - .25rem)}.wizard-nav .btn.primary{margin-left:0}.wizard-summary-row{flex-direction:column;gap:.15rem}.wizard-summary-row strong{text-align:left}}html.theme-dark .card.inset{background:#ffffff0a}html.theme-dark .wizard-progress{background:#ffffff14}.product-form{gap:.85rem;min-width:0;display:grid}.form-section{border-top:1px solid var(--line);gap:.5rem;padding-top:.75rem;display:grid}.product-form .form-section:first-of-type{border-top:0;padding-top:0}.form-section h3{color:#0e2c25;align-items:center;gap:.4rem;font-size:.95rem;display:flex}.sec-icon{width:16px;height:16px;color:var(--pine-2);flex:none}.sec-icon,.sec-icon path,.sec-icon rect{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.section-note{color:var(--muted);font-size:.8rem}.req{color:#1d6a52;margin-left:.35rem;font-size:.72rem;font-style:normal;font-weight:700}.product-grid{grid-template-columns:1fr 1fr;gap:.45rem .6rem;min-width:0;display:grid}.price-grid{grid-template-columns:1fr 1fr minmax(0,.9fr)}.product-form .span-2{grid-column:1/-1}.product-form .field{gap:.15rem}.product-form .field span{color:#12382e;font-size:.78rem}.stock-example{color:#12382e;background:#eef4f1;border-radius:10px;margin:0;padding:.4rem .6rem;font-size:.82rem}.expiry-grid{grid-template-columns:1fr 1fr;gap:.45rem .6rem;display:grid}.expiry-type,.date-with-cal{min-width:0;position:relative}.product-form .date-text{padding-right:2.7rem}.cal-btn{width:2.15rem;height:2.15rem;min-height:2.15rem;color:var(--pine);background:#e7f4ee;border:0;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.cal-btn svg{width:18px;height:18px}.cal-btn svg,.cal-btn path,.cal-btn rect{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.cal-btn:hover{background:var(--pine-2);color:#fff}.product-form .cal-native{opacity:0;pointer-events:none;border:0;width:1px;height:1px;min-height:0;margin:0;padding:0;position:absolute;overflow:hidden}.expiry-chip{width:fit-content;max-width:100%;color:var(--pine);background:#e7f4ee;border-radius:999px;margin:0;padding:.18rem .55rem;font-size:.78rem;font-weight:700}.expiry-chip.empty{color:var(--muted);background:#f3efe6;font-weight:600}.expiry-chip.warn{background:var(--navy-soft);color:var(--navy)}.sale-toggle{background:#fffdf8;border:1px solid #e4dccf;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .7rem;display:flex}.sale-toggle span{gap:.1rem;display:grid}.sale-toggle strong{color:#0e2c25;font-size:.92rem}.sale-toggle small{color:var(--muted);font-size:.78rem}.sale-toggle input{width:1.15rem;height:1.15rem;min-height:0}.product-form textarea{resize:vertical;background:#fff;border:1px solid #d9d0c2;border-radius:10px;width:100%;min-height:64px;padding:.5rem .6rem}.product-form input,.product-form select{min-height:40px;padding:.4rem .6rem}.product-form input[readonly]{background:var(--cream);color:var(--navy)}.product-form :is(input,select,textarea):focus:not(.cal-native){border-color:var(--pine-2);outline:none;box-shadow:0 0 0 3px #1d6a522e}.product-form .btn.primary{width:100%}.combo{min-width:0;position:relative}.combo-menu{z-index:6;border:1px solid var(--line);max-height:180px;box-shadow:var(--shadow);background:#fff;border-radius:10px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.combo-menu.up{top:auto;bottom:calc(100% + 4px)}.combo-menu [role=option]{cursor:pointer;min-height:40px;padding:.45rem .7rem}.combo-menu [role=option].active{background:#f3efe6}.field small{color:var(--muted);font-size:.75rem;line-height:1.35}.stock-warn{color:var(--navy);background:var(--navy-soft);border-radius:10px;margin:0;padding:.55rem .7rem;font-size:.85rem}.stock-add{background:#fffdf8;border:1px solid #d7cbb6;gap:0;width:min(720px,100%);margin:0 auto;padding:0;overflow:hidden;box-shadow:0 22px 48px #0e2c251f}.stock-add-head{color:#f6f1e6;background:linear-gradient(110deg,#0c241e 0%,#12382e 58%,#1d6a52 130%);align-items:center;gap:.9rem;padding:1.15rem 1.3rem;display:flex}.stock-logo{object-fit:contain;background:#fffdf8;border-radius:14px;flex:none;width:54px;height:54px}.stock-kicker{color:#f7f4efb8;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700}.stock-add-head h2{color:#f6f1e6;font-size:1.9rem}.stock-add-head p{color:#e7efe9;margin:0}.stock-add-body{gap:.95rem;padding:1.15rem 1.25rem 1.35rem;display:grid}.stock-now{color:var(--muted);margin:0}.stock-step{background:#fff;border:1px solid #e4dccf;border-radius:16px;gap:.7rem;padding:.9rem .95rem 1rem;display:grid}.stock-step h3{color:#0e2c25;align-items:center;gap:.45rem;margin:0;font-size:1.05rem;display:flex}.stock-step h3 span{color:#f6f1e6;background:#12382e;border-radius:999px;place-items:center;width:1.45rem;height:1.45rem;font-family:Segoe UI,sans-serif;font-size:.78rem;display:inline-grid}.stock-grid{grid-template-columns:1fr 1fr;gap:.7rem .8rem;display:grid}.stock-grid .field:first-child{grid-column:1/-1}.stock-example{color:#12382e;background:#eef4f1;border-radius:12px;margin:0;padding:.7rem .85rem}.product-strip{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.product-strip div{background:#f4f7f5;border:1px solid #e4dccf;border-radius:12px;min-width:0;padding:.6rem .7rem}.product-strip span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:700;display:block}.product-strip strong{color:#0e2c25;overflow-wrap:anywhere}.product-strip .badge{margin-top:.25rem}.live-panel{color:#f6f1e6;background:linear-gradient(165deg,#0e2c25 0%,#1d6a52 100%);border-radius:16px;gap:.3rem;padding:.95rem 1rem;display:grid}.live-panel.quiet{color:#12382e;background:#eef4f1}.live-panel p{margin:0}.live-panel strong{font-size:1.35rem}.live-value{color:var(--cream)}.live-panel.quiet .live-value{color:var(--navy)}.live-warn{color:var(--cream)}.stock-success{color:#12382e;background:#e7f4ee;border:1px solid #b7d8c8;border-radius:14px;margin:0;padding:.8rem .9rem}.choice-pair{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.choice-pair button{color:#0e2c25;background:#fff;border:1px solid #d9cbb6;border-radius:12px;min-height:48px;font-weight:700}.choice-pair button.active{color:#f6f1e6;background:#0e2c25;border-color:#0e2c25}.stock-add .btn.primary{background:#1d6a52;width:100%;min-height:48px}.stock-success button{color:#f6f1e6;background:#12382e;border:1px solid #12382e;border-radius:999px;min-height:36px;margin-top:.45rem;padding:.2rem .75rem;font-weight:700;display:inline-flex}.stock-stats{grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:.7rem;display:grid}.stock-stats .dash-stat{min-width:0}.stock-stats .dash-stat strong{overflow-wrap:break-word;font-size:1.2rem}.stock-stats .dash-stat.on{border-color:#1d6a52;box-shadow:0 0 0 3px #1d6a5229}.soon-card{gap:.55rem;padding:.75rem .9rem;display:grid}.soon-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;display:grid}.soon-item{text-align:left;color:#0e2c25;background:#fff;border:1px solid #d7e6de;border-radius:12px;gap:.05rem;min-width:0;min-height:0;padding:.5rem .6rem;display:grid}.soon-item strong,.soon-item span,.soon-item small{overflow-wrap:anywhere}.soon-item span{color:var(--warn);font-size:.82rem;font-weight:700}.soon-item small{color:var(--muted)}.stock-tools{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.stock-search{flex:220px;min-width:min(100%,180px);display:block;position:relative}.stock-search input{width:100%;min-height:38px;padding:.35rem 4.4rem .35rem .7rem}.stock-search button,.search-hint{height:1.7rem;min-height:0;color:var(--pine);background:#e7f4ee;border:0;border-radius:999px;padding:0 .5rem;font-size:.75rem;font-weight:700;position:absolute;top:50%;right:.3rem;transform:translateY(-50%)}.search-hint{color:var(--muted);pointer-events:none;background:#f3efe6;place-items:center;display:grid}.stock-tools select{flex:0 11.5rem;width:auto;min-width:0;min-height:38px;padding:.3rem .6rem}.stock-export{flex:none;min-height:38px;padding:.2rem .75rem}.stock-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.stock-card{min-width:0;box-shadow:var(--shadow);background:linear-gradient(#fffdf8 0%,#f6f1e6 100%);border:1px solid #e4dccf;border-radius:16px;align-content:start;padding:.8rem .85rem .9rem;display:grid}.stock-card-open{width:100%;min-height:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:.28rem;padding:0;display:grid}.stock-card-top{justify-content:space-between;align-items:flex-start;gap:.4rem;min-width:0;display:flex}.stock-card-top h3{color:#0e2c25;overflow-wrap:anywhere;font-size:1.05rem;line-height:1.2}.id-chip{text-overflow:ellipsis;white-space:nowrap;max-width:46%;color:var(--pine);background:#e7f4ee;border-radius:999px;flex:none;padding:.08rem .45rem;font-size:.7rem;font-weight:700;overflow:hidden}.onhand-num{color:var(--pine);margin:.15rem 0 0;font-size:1.65rem;font-weight:700;line-height:1}.onhand-num small{color:var(--muted);margin-left:.3rem;font-size:.72rem;font-weight:600}.carton-line,.money-line{color:var(--muted);margin:0;font-size:.82rem}.money-line{color:#0e2c25;flex-wrap:wrap;gap:.2rem .65rem;font-weight:700;display:flex}.modal.wide:has(.stock-detail){flex-direction:column;width:min(760px,100vw - 2rem);padding-bottom:0;display:flex;overflow:hidden}.modal.wide:has(.stock-detail) .modal-head{flex:none}.stock-detail{gap:.85rem;min-height:0;padding-bottom:.8rem;display:grid;overflow:auto}.stock-detail h3{align-items:center;gap:.4rem;display:flex}.glance{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.glance>div{border:1px solid var(--line);background:#f4f7f5;border-radius:12px;gap:.1rem;min-width:0;padding:.55rem .65rem;display:grid}.glance span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:700}.glance strong{color:var(--pine);overflow-wrap:anywhere;font-size:1.05rem}.glance small{color:var(--muted)}.glance-badges{flex-wrap:wrap;gap:.25rem;font-weight:700;display:flex}.stock-foot{border-top:1px solid var(--line);background:var(--paper);flex-wrap:wrap;flex:none;gap:.45rem;padding:.7rem 0 .85rem;display:flex}.stock-foot .btn{min-height:40px}.badge.hold{background:var(--cream);color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.qty-up{color:var(--green);font-weight:700}.qty-down{color:var(--navy);font-weight:700}input[readonly]{background:var(--cream);color:var(--navy)}.badges{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.badge{border-radius:999px;padding:.08rem .5rem;font-size:.72rem;font-weight:700;line-height:1.6;display:inline-block}.badge.ok{background:var(--green);color:var(--cream);box-shadow:inset 0 0 0 1px var(--navy)}.badge.out,.badge.expired,.badge.low,.badge.soon{background:var(--navy);color:var(--cream)}.product-row{cursor:pointer}.product-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.product-card{border:1px solid #1a27441f;border-left:3px solid var(--green);background:var(--paper);min-width:0;box-shadow:var(--shadow);cursor:pointer;border-radius:16px;align-content:start;gap:.3rem;padding:.9rem .9rem 1rem;display:grid;position:relative}.product-card:hover{border-color:#1a274433;border-left-color:var(--green)}.product-card h3{color:var(--navy);font-size:1.12rem}.product-card-top{justify-content:space-between;align-items:flex-start;gap:.4rem;display:flex}.product-mark{color:#f6f1e6;background:linear-gradient(145deg,#0e2c25,#1d6a52);border-radius:12px;place-items:center;width:42px;height:42px;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;display:grid}.product-sku{color:var(--muted);letter-spacing:.04em;margin:0;font-size:.8rem}.product-qty{color:#12382e;margin:.15rem 0 0;font-size:1.35rem}.product-qty small{color:var(--muted);font-size:.75rem;font-weight:600}.icon-btn{color:#0e2c25;background:#fff;border:1px solid #e4dccf;border-radius:999px;width:40px;height:40px;font-size:1.25rem;line-height:1}.card-menu{position:relative}.card-menu-pop{z-index:8;min-width:148px;box-shadow:var(--shadow);background:#fff;border:1px solid #e4dccf;border-radius:12px;padding:.3rem;display:grid;position:absolute;top:calc(100% + 4px);right:0}.card-menu-pop button{text-align:left;color:#0e2c25;background:0 0;border:0;border-radius:8px;min-height:40px;padding:.35rem .65rem}.card-menu-pop button:hover{background:#f4f7f5}.insight-block{border-top:1px solid var(--line);gap:.35rem;padding-top:.7rem;display:grid}.insight-block h3{color:#0e2c25;font-size:1.05rem}.insight-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.insight-list li{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.insight-list span{color:var(--muted);text-align:right}.reorder-flag{margin:0;font-weight:700}.reorder-flag.ok{color:#1d6a52}.reorder-flag.soon{color:var(--warn)}.product-view{gap:.75rem;display:grid}.detail-list{grid-template-columns:1fr 1fr;gap:.55rem .8rem;margin:0;display:grid}.detail-list div{gap:.1rem;min-width:0;display:grid}.detail-list dt{color:var(--muted);font-size:.75rem;font-weight:700}.detail-list dd{overflow-wrap:anywhere;margin:0}.view-actions{flex-wrap:wrap;gap:.5rem;display:flex}.more-details{border:1px solid var(--line);background:#fff;border-radius:12px;padding:.35rem .75rem .7rem}.more-details summary{cursor:pointer;color:var(--pine);align-items:center;min-height:40px;font-weight:700;display:flex}.more-details[open]{background:var(--paper)}.more-details .product-grid{margin-top:.35rem}@media (width<=520px){.modal.standard{width:calc(100vw - 1.5rem);padding:.85rem}.product-grid,.price-grid,.expiry-grid{grid-template-columns:1fr}.cal-btn{width:2.5rem;height:2.5rem;min-height:2.5rem}.product-form .date-text{min-height:44px;padding-right:3.1rem}.product-form .span-2{grid-column:auto}.detail-list,.stock-grid,.choice-pair,.product-strip{grid-template-columns:1fr}.glance{grid-template-columns:1fr 1fr}.modal-back:has(.stock-detail){padding:.45rem}.modal.wide:has(.stock-detail){width:100%;max-height:calc(100dvh - .9rem)}.stock-add-head,.stock-add-body{padding-left:.9rem;padding-right:.9rem}}.modal-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.toast-wrap{z-index:28;justify-items:end;gap:.5rem;display:grid;position:fixed;bottom:1rem;left:1rem;right:1rem}.toast{background:var(--pine);color:#fff;max-width:min(320px,100%);box-shadow:var(--shadow);border-radius:12px;padding:.75rem .9rem}.toast.err{background:var(--danger)}.warehouse-switch{gap:.15rem;min-width:9rem;font-size:.85rem;display:grid}.receipt{color:#000;background:#fff;width:min(80mm,100%);margin:0 auto}.receipt.w58{width:min(58mm,100%)}.receipt.thermal{font-family:Segoe UI,sans-serif}.receipt h3{font-size:1.1rem}.receipt table{font-size:.92rem}.receipt td{border-bottom:1px dashed #ccc}.receipt-logo{object-fit:contain;max-width:70%;max-height:48px;margin:0 auto .35rem;display:block}.receipt-bars{width:100%;height:36px;margin:.35rem 0;display:block}.receipt-urdu{font-size:.95rem}.settings-page .section-tabs{flex-wrap:wrap}.settings-search{width:100%;display:block}.settings-search input{width:100%;min-height:40px}.settings-stack,.settings-card{gap:.7rem;display:grid}.settings-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.settings-card-head h2,.settings-card h2,.settings-card h3{font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:1rem}.settings-checks{grid-template-columns:1fr 1fr;gap:.35rem .8rem;display:grid}.settings-check{align-items:center;gap:.45rem;min-height:32px;display:flex}.settings-logo{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:8px;width:72px;height:72px}.settings-card textarea{width:100%}@media (width<=1100px){.product-cards,.customer-cards,.dash-stats,.dash-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-stats{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr))}.stock-cards,.soon-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.dash-welcome{flex-direction:column;align-items:stretch;gap:.45rem}.dash-welcome .dash-search{flex:auto;width:100%;min-width:0;max-width:none}.product-cards,.customer-cards,.dash-stats,.dash-quick,.stock-cards,.soon-strip,.customer-tools,.purchase-stats,.report-period,.settings-checks{grid-template-columns:1fr}.report-period{display:grid}.stock-stats{grid-template-columns:1fr 1fr}.insight-list li{flex-direction:column;align-items:flex-start}.insight-list span{text-align:left}}@media (width>=900px){.sale-workspace{grid-template-columns:minmax(420px,480px) minmax(0,1fr)}.sale-sheet{grid-area:1/1}.sale-items{grid-area:1/2;position:sticky;top:.75rem}}@media (width<=900px){.pin-btn{display:none}.menu-btn,.nav-close{display:inline-flex}.workspace{max-width:100%;margin-left:0}.sidebar{width:min(320px,88vw);box-shadow:none;transition:transform .22s;transform:translate(-105%)}.shell.nav-open .sidebar{transform:translate(0);box-shadow:18px 0 40px #0c181447}.nav-backdrop{z-index:25;background:#0c161280;border:0;padding:0;display:none;position:fixed;inset:0}.shell.nav-open .nav-backdrop{display:block}.topbar{align-items:center}.cart-line{grid-template-columns:1fr}}@media (width<=720px){h1{font-size:1.65rem}.page{padding:.95rem .85rem 1.6rem}.topbar{padding:.7rem .8rem}.theme-toggle{width:40px;min-width:40px;padding:0}.theme-toggle-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.banner{margin:.7rem .85rem 0}.top-actions{width:100%}.warehouse-switch{width:auto;max-width:42vw}.top-tools{flex:none}.filters,.inline-form{grid-template-columns:1fr;align-items:stretch;display:grid}.filters input,.filters select,.inline-form input,.inline-form select,.filters .field{width:100%;min-width:0}.page-head{align-items:stretch}.page-head>.btn,.page-head>button{width:100%}.stock-search{flex:100%}.stock-tools select{flex:calc(50% - .4rem)}.stock-bar{flex-wrap:wrap;row-gap:.35rem}.stock-bar .section-tabs{width:100%;margin-left:0}.sale-search,.purchase-note,.purchase-stats,.purchase-extra,.recv-fields,.po-cards{grid-template-columns:1fr}.purchase-tools input,.purchase-tools select{width:100%;min-width:0}.sale-pay{grid-template-columns:1fr}.sale-head{display:none}.sale-line{grid-template-columns:1fr;align-items:stretch}.sale-line .btn{width:100%}.sale-line-sum,.sale-price-lock{text-align:left}.data-table{overflow:visible}.data-table table,.data-table tbody,.data-table tr,.data-table td{width:100%;display:block}.data-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.data-table tr{border:1px solid var(--line);background:#fff;border-radius:14px;margin-bottom:.75rem;padding:.35rem .8rem}.data-table td{border:0;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.45rem 0;display:flex}.data-table td:before{content:attr(data-label);color:var(--muted);flex:0 0 38%;font-size:.78rem;font-weight:700}.data-table td.row-actions{flex-wrap:wrap;justify-content:flex-start}.data-table td.row-actions:before{content:none}}html.theme-dark{color:#f7f4ef;--page:#0f1419;--paper:#171e27;--ink:#f7f4ef;--muted:#f7f4efa3;--line:#f7f4ef29;--navy-soft:#f7f4ef14;--green-soft:#1d6a5238;--shadow:0 12px 28px #00000073;--danger:#f7f4ef;--warn:#f7f4ef;background:#0f1419}html.theme-dark body{color:#f7f4ef;background:radial-gradient(1100px 380px at 0 -8%,#1d6a522e,#0000 55%),#0f1419}html.theme-dark .sidebar{background:#0b1016}html.theme-dark .topbar{color:#f7f4ef;background:#0f1419f0}html.theme-dark .topbar strong,html.theme-dark .topbar small{color:#f7f4ef}html.theme-dark .topbar small{color:#f7f4efa3}html.theme-dark .menu-btn,html.theme-dark .theme-toggle{color:#f7f4ef;background:#171e27;border-color:#f7f4ef66}html.theme-dark .dash-quick button:hover,html.theme-dark .btn.primary{background:var(--green);border-color:var(--green);color:#f7f4ef}html.theme-dark .card,html.theme-dark .stat,html.theme-dark .modal,html.theme-dark .login-card,html.theme-dark .dash-stat,html.theme-dark .product-card,html.theme-dark .btn,html.theme-dark .account-pop{color:#f7f4ef;background:#171e27;border-color:#f7f4ef24}html.theme-dark .dash-stat{border-left-color:var(--green)}html.theme-dark .dash-stat-hero{background:#1d6a5238}html.theme-dark .dash-stat strong,html.theme-dark .dash-welcome h1,html.theme-dark .week-col span,html.theme-dark .week-col small{color:#f7f4ef}html.theme-dark .shell-top .menu-btn:hover,html.theme-dark .shell-top .menu-btn:focus-visible,html.theme-dark .shell-top .theme-toggle:hover,html.theme-dark .shell-top .theme-toggle:focus-visible{color:#f7f4ef;background:#1d6a52;border-color:#1d6a52;box-shadow:0 0 0 3px #1d6a5273}html.theme-dark .shell-top .warehouse-switch select:hover,html.theme-dark .shell-top .warehouse-switch select:focus-visible{border-color:#1d6a52;box-shadow:0 0 0 3px #1d6a5266}html.theme-dark .menu-btn:hover,html.theme-dark .theme-toggle:hover{border-color:var(--green);color:#f7f4ef;background:#1d6a5259}html.theme-dark .dash-welcome h1.dash-kicker{color:#4e9a74;background:#1d6a5238}html.theme-dark .dash-hint{color:#f7f4efa3}html.theme-dark .dash-welcome{background:0 0}html.theme-dark .dash-welcome p,html.theme-dark .dash-stat small,html.theme-dark .dash-label,html.theme-dark .dash-search span{color:#f7f4efa3}html.theme-dark .dash-mark{color:#f7f4ef;background:#0f1419}html.theme-dark .dash-quick button{color:#f7f4ef;background:0 0;border-color:#f7f4ef80}html.theme-dark input,html.theme-dark select,html.theme-dark textarea,html.theme-dark .dash-welcome .dash-search input{color:#f7f4ef;background:#0f1419;border-color:#f7f4ef38}html.theme-dark .btn.ghost{color:#f7f4ef;background:#1d6a5238}html.theme-dark .account-pop button{color:#f7f4ef}html.theme-dark .account-pop button:hover{background:#f7f4ef14}html.theme-dark .nav button.active{color:#1a2744;background:#f7f4ef}html.theme-dark .section-tabs button{color:#f7f4ef;background:#171e27}html.theme-dark .section-tabs button.active{background:var(--green);border-color:var(--green);color:#f7f4ef}.login-wrap,html.theme-dark .login-wrap{color:#f6f1e8;background:radial-gradient(72% 42% at 50% -8%,#d6b0702e,#0000 58%),radial-gradient(36% 28% at 100% 100%,#48361c47,#0000 52%),radial-gradient(28% 24% at 0 88%,#12282273,#0000 55%),#0b0c0f;place-items:center;min-height:100dvh;padding:clamp(1rem,3.5vw,2.75rem);display:grid}.login-wrap>p,html.theme-dark .login-wrap>p{color:#e7d7b8;letter-spacing:.04em;text-align:center;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.05rem}.login-wrap .login-card,html.theme-dark .login-wrap .login-card{color:#f6f1e8;background:linear-gradient(#d6b07014,#0000 18%),linear-gradient(#16181d 0%,#101216 100%);border:1px solid #d6b0706b;border-radius:22px;gap:1rem;width:min(440px,100%);max-width:100%;margin:0;padding:clamp(1.55rem,4vw,2.35rem) clamp(1.2rem,4vw,2.1rem) clamp(1.35rem,3.5vw,1.9rem);display:grid;position:relative;box-shadow:0 0 0 1px #0000008c,0 28px 70px #0000007a,0 0 48px #d6b07014}.login-wrap .login-card:before,html.theme-dark .login-wrap .login-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#e8d2a4,#0000);height:1px;position:absolute;top:0;left:18%;right:18%}.login-wrap .login-brand,html.theme-dark .login-wrap .login-brand{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.85rem}.login-wrap .login-logo,html.theme-dark .login-wrap .login-logo{object-fit:contain;background:#f7f3eb;border:1px solid #e8d2a4d9;border-radius:22px;flex:none;width:92px;max-width:92px;height:92px;padding:8px;display:block;box-shadow:0 0 0 6px #d6b0701a,0 14px 28px #00000059}.login-wrap .login-kicker,html.theme-dark .login-wrap .login-kicker{color:#d6b070;letter-spacing:.22em;text-transform:uppercase;margin-bottom:.35rem;font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:.68rem;font-weight:700;line-height:1.3;display:block}.login-wrap .login-brand strong,html.theme-dark .login-wrap .login-brand strong{color:#f8f3ea;letter-spacing:.03em;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:600;line-height:1.15}.login-wrap .login-brand small,html.theme-dark .login-wrap .login-brand small{color:#e7d7b8c7;letter-spacing:.04em;margin-top:.28rem;font-size:.84rem}.login-wrap .login-tabs,html.theme-dark .login-wrap .login-tabs{background:#d6b07014;border:1px solid #d6b0702e;border-radius:999px;grid-template-columns:1fr 1fr;gap:.35rem;padding:.25rem;display:grid}.login-wrap .login-tabs button,html.theme-dark .login-wrap .login-tabs button{letter-spacing:.06em;text-transform:uppercase;color:#f6f1e89e;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.55rem .75rem;font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:.82rem;font-weight:600}.login-wrap .login-tabs button.active,html.theme-dark .login-wrap .login-tabs button.active{color:#1a140c;background:linear-gradient(135deg,#e8d2a4,#c9a66b);box-shadow:0 8px 22px #00000038}.login-wrap .login-success,html.theme-dark .login-wrap .login-success{color:#d8f0dc;background:#78b4821f;border:1px solid #78b48259;border-radius:14px;margin:0;padding:.85rem 1rem;font-size:.92rem;line-height:1.45}.login-wrap .login-rule,html.theme-dark .login-wrap .login-rule{background:linear-gradient(90deg,#0000,#d6b070,#0000);width:72px;height:1px;margin:.1rem auto 0}.login-wrap h1,html.theme-dark .login-wrap h1{color:#f8f3ea;letter-spacing:.01em;text-align:center;font-size:clamp(1.85rem,4.5vw,2.2rem)}.login-wrap .lead,html.theme-dark .login-wrap .lead{color:#f6f1e8ad;text-align:center;max-width:none;margin:-.25rem 0 0;font-size:.95rem;line-height:1.5}.login-wrap .form-error,html.theme-dark .login-wrap .form-error{color:#f8ebe3;overflow-wrap:anywhere;background:#5c24206b;border:1px solid #d6a89480;border-radius:12px;margin:0;padding:.75rem .85rem;line-height:1.45}.login-wrap .field,html.theme-dark .login-wrap .field{gap:.4rem}.login-wrap .field span,html.theme-dark .login-wrap .field span{color:#e7d7b8;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:700}.login-wrap input,html.theme-dark .login-wrap input{color:#f7f3eb;background:#0b0c0f;border:1px solid #d6b07052;border-radius:12px;width:100%;min-height:48px;padding:.75rem .9rem}.login-wrap input::placeholder,html.theme-dark .login-wrap input::placeholder{color:#f6f1e866}.login-wrap input:focus,html.theme-dark .login-wrap input:focus{border-color:#e8d2a4;box-shadow:0 0 0 3px #d6b07033}.login-wrap input:-webkit-autofill{-webkit-text-fill-color:#f7f3eb;caret-color:#f7f3eb;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0b0c0f}.login-wrap input:-webkit-autofill:hover{-webkit-text-fill-color:#f7f3eb;caret-color:#f7f3eb;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0b0c0f}.login-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:#f7f3eb;caret-color:#f7f3eb;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0b0c0f}html.theme-dark .login-wrap input:-webkit-autofill{-webkit-text-fill-color:#f7f3eb;caret-color:#f7f3eb;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0b0c0f}html.theme-dark .login-wrap input:-webkit-autofill:hover{-webkit-text-fill-color:#f7f3eb;caret-color:#f7f3eb;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0b0c0f}html.theme-dark .login-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:#f7f3eb;caret-color:#f7f3eb;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #0b0c0f}.login-wrap .login-password,html.theme-dark .login-wrap .login-password{min-width:0;display:block;position:relative}.login-wrap .login-password input,html.theme-dark .login-wrap .login-password input{padding-right:5rem}.login-wrap .login-reveal,html.theme-dark .login-wrap .login-reveal{color:#e7d7b8;letter-spacing:.12em;text-transform:uppercase;background:0 0;border:1px solid #d6b07073;border-radius:999px;min-height:32px;padding:.15rem .7rem;font-size:.68rem;font-weight:700;position:absolute;top:50%;right:.4rem;transform:translateY(-50%)}.login-wrap .login-reveal:hover,html.theme-dark .login-wrap .login-reveal:hover{color:#f8f3ea;background:#d6b0701f}.login-wrap .btn.primary,html.theme-dark .login-wrap .btn.primary{color:#1a140c;letter-spacing:.16em;text-transform:uppercase;background:linear-gradient(#f0ddb4 0%,#c6a15a 100%);border:1px solid #e8d2a4;border-radius:999px;width:100%;min-height:50px;margin-top:.15rem;font-size:.82rem;font-weight:700;box-shadow:0 10px 24px #c6a15a38}.login-wrap .btn.primary:hover:not(:disabled),html.theme-dark .login-wrap .btn.primary:hover:not(:disabled){color:#1a140c;background:linear-gradient(#f7e8c8 0%,#d4b06a 100%);border-color:#f3e2bb}.login-wrap .btn.primary:disabled,html.theme-dark .login-wrap .btn.primary:disabled{opacity:.42;color:#1a140c;box-shadow:none}.login-wrap .hint-box,html.theme-dark .login-wrap .hint-box{color:#f6f1e8c2;background:#d6b0700f;border:1px solid #d6b07038;border-radius:14px;gap:.35rem;padding:.95rem 1rem;display:grid}.login-wrap .hint-box strong,html.theme-dark .login-wrap .hint-box strong{color:#e7d7b8;letter-spacing:.16em;text-transform:uppercase;font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:.7rem;font-weight:700}.login-wrap .hint-box p,html.theme-dark .login-wrap .hint-box p{overflow-wrap:anywhere;font-size:.88rem;line-height:1.5}.login-wrap :focus-visible,html.theme-dark .login-wrap :focus-visible{outline-offset:2px;outline:2px solid #e8d2a4}@media (width<=420px){.login-wrap,html.theme-dark .login-wrap{padding:.85rem .75rem 1.15rem}.login-wrap .login-card,html.theme-dark .login-wrap .login-card{border-radius:18px;gap:.9rem;padding:1.3rem 1rem 1.15rem}.login-wrap .login-logo,html.theme-dark .login-wrap .login-logo{border-radius:18px;width:76px;max-width:76px;height:76px}.login-wrap .login-brand strong,html.theme-dark .login-wrap .login-brand strong{font-size:1.28rem}.login-wrap h1,html.theme-dark .login-wrap h1{font-size:1.7rem}.login-wrap .login-password input,html.theme-dark .login-wrap .login-password input{padding-right:4.6rem}}@media (height<=940px){.login-wrap,html.theme-dark .login-wrap{padding:.75rem}.login-wrap .login-card,html.theme-dark .login-wrap .login-card{gap:.7rem;padding:1.15rem 1.35rem 1.05rem}.login-wrap .login-logo,html.theme-dark .login-wrap .login-logo{width:72px;max-width:72px;height:72px}.login-wrap .login-brand,html.theme-dark .login-wrap .login-brand{gap:.55rem}.login-wrap .login-brand strong,html.theme-dark .login-wrap .login-brand strong{font-size:1.28rem}.login-wrap h1,html.theme-dark .login-wrap h1{font-size:1.65rem}.login-wrap .lead,html.theme-dark .login-wrap .lead{font-size:.88rem}.login-wrap input,html.theme-dark .login-wrap input{min-height:44px}.login-wrap .btn.primary,html.theme-dark .login-wrap .btn.primary{min-height:46px}.login-wrap .hint-box,html.theme-dark .login-wrap .hint-box{gap:.25rem;padding:.7rem .85rem}}@media print{.sidebar,.topbar,.no-print,.toast-wrap,.banner,.modal-back,.nav-backdrop,.menu-btn,body.printing-receipt .page{display:none!important}body.printing-receipt .modal-back{background:#fff;position:static;display:grid!important}body.printing-receipt .modal{box-shadow:none;border:0;width:auto;max-height:none}body.printing-receipt .receipt.w58{width:58mm!important}body.printing-receipt .receipt.w80,body.printing-receipt .receipt:not(.w58){width:80mm!important}body.printing-report .page{display:none!important}body.printing-report .modal-back{background:#fff;padding:0;position:static;display:grid!important}body.printing-report .modal{box-shadow:none;border:0;width:auto;max-height:none}body.printing-report .report-preview tbody tr{display:table-row!important}.shell{display:block}.workspace{max-width:100%;margin-left:0}.page{padding:0}.card,.stat{box-shadow:none}}
