:root{--bg:#f6f8f7;--surface:#fff;--surface-soft:#f9fbfa;--ink:#17211d;--muted:#66726d;--line:#dfe7e2;--accent:#13735d;--accent-strong:#0b4f42;--accent-soft:#e6f4ef;--danger:#b42318;--warning:#8a6116;--shadow:0 24px 70px #1826201a}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;color:var(--ink);margin:0;font-family:Aptos,Satoshi,Geist,Segoe UI,Arial,sans-serif;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:clamp(210px,18vw,268px) minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{color:#f7faf7;background:linear-gradient(#ffffff14,#0000 28%),#13241f;flex-direction:column;gap:28px;padding:24px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-strong);letter-spacing:0;border-radius:14px;place-items:center;font-weight:800;display:grid}.brand strong,.brand span{display:block}.brand span,.shift-card span,.shift-card small{color:#aebbb5;font-size:13px}.nav{gap:10px;display:grid;overflow:auto}.nav-item{color:#d8e2dc;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;width:100%;padding:13px 14px;transition:all .18s;display:flex}.nav-item:hover,.nav-item.active{background:#ffffff18;border-color:#ffffff1f}.nav-item.disabled{opacity:.62}.icon{place-items:center;width:24px;height:24px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;display:grid}.shift-card{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:16px;margin-top:auto;padding:18px;box-shadow:inset 0 1px #ffffff14}.shift-card strong{margin:8px 0 4px;font:700 26px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;display:block}.workspace{min-width:0;padding:28px}.workspace-header{border-bottom:1px solid var(--line);grid-template-columns:180px minmax(260px,1fr) auto;align-items:center;gap:18px;margin:-8px 0 26px;padding-bottom:18px;display:grid}.workspace-header strong,.workspace-header span{display:block}.workspace-header>div:first-child strong{font-size:22px}.workspace-header>div:first-child span{color:var(--muted);margin-top:4px;font-size:13px}.global-search{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:10px;min-width:0;padding:0 12px;display:flex}.global-search input{box-shadow:none;background:0 0;border:0;border-radius:0}.search-icon{background:var(--accent-soft);width:22px;height:22px;color:var(--accent-strong);border-radius:999px;place-items:center;font-size:11px;font-weight:900;display:grid}.workspace-tools{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.workspace-tools>span,.workspace-tools>strong{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px}.printer-status{color:var(--accent-strong);font-weight:800}.login-page{background:radial-gradient(circle at 18% 20%, #13735d21, transparent 32%), linear-gradient(135deg, #ffffffd1, transparent 44%), var(--bg);grid-template-columns:minmax(0,1fr) minmax(360px,430px);align-items:center;gap:32px;min-height:100dvh;padding:42px;display:grid}.login-story{max-width:720px}.login-story h1{letter-spacing:0;overflow-wrap:anywhere;max-width:760px;font-size:clamp(42px,6vw,76px);line-height:.95}.login-story h1 span{display:block}.login-story p{max-width:620px;color:var(--muted);margin:22px 0 0;font-size:19px;line-height:1.6}.status-pill,.live-badge{background:var(--accent-soft);width:fit-content;color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;border:1px solid #176b5738;border-radius:999px;align-items:center;padding:8px 12px;font-size:12px;font-weight:900;display:inline-flex}.login-stats{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.login-stats div{border:1px solid var(--line);background:#ffffff8f;border-radius:16px;min-width:170px;padding:16px}.login-stats strong,.login-stats span{display:block}.login-stats strong{font:800 28px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.login-stats span{color:var(--muted);margin-top:4px}.login-panel{border:1px solid var(--line);background:var(--surface);border-radius:22px;width:min(430px,100%);padding:28px;box-shadow:0 32px 90px #18262021}.login-brand{align-items:center;gap:14px;margin-bottom:24px;display:flex}.login-form{gap:14px;display:grid}.login-form label{gap:7px;display:grid}.form-error{color:var(--danger);background:#fff1f0;border-radius:8px;margin:0;padding:10px 12px;font-weight:800}.payment-error{color:var(--danger);background:#fff4f2;border:1px solid #b423182e;border-radius:14px;margin:0 0 12px;padding:12px 13px;font-size:13px;font-weight:850;line-height:1.45}.demo-credentials{border:1px dashed var(--line);color:var(--muted);border-radius:14px;gap:4px;margin-top:16px;padding:12px;font-size:13px;display:grid}.logout-button{color:#f7faf7;background:#ffffff14;border:1px solid #ffffff1f;border-radius:12px;width:100%;margin-top:14px;padding:10px 12px;font-weight:800}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.eyebrow{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}h1,h2{letter-spacing:0;margin:0}h1{font-size:38px;line-height:1}h2{font-size:20px}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.primary-button,.ghost-button{white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:12px 17px;font-weight:800;transition:transform .18s cubic-bezier(.16,1,.3,1),background .18s,box-shadow .18s}.primary-button{background:var(--accent);color:#fff;box-shadow:0 16px 34px #13735d33}.primary-button:hover{background:var(--accent-strong)}.ghost-button{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.primary-button:active,.ghost-button:active,.method:active,.product-card:active{transform:translateY(1px)scale(.99)}.wide{width:100%}.pos-grid{grid-template-columns:minmax(460px,1fr) minmax(300px,.52fr) minmax(290px,.48fr);align-items:start;gap:18px;display:grid}.catalog-panel,.cart-panel,.payment-panel,.inventory-form,.table-wrap,.metric,.sales-list{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:18px}.catalog-panel,.cart-panel,.payment-panel{padding:16px}.panel-title-row{justify-content:space-between;align-items:start;gap:14px;margin-bottom:16px;display:flex}.header-meta{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.header-meta span,.subline,.shift-meta span{color:var(--muted);font-size:13px}.header-meta span{border:1px solid var(--line);background:#ffffff9e;border-radius:999px;padding:7px 10px}.shift-meta{border-top:1px solid #ffffff1a;gap:4px;margin-top:14px;padding-top:14px;display:grid}.search-row,.field,.inventory-form label{gap:7px;display:grid}.input-help{color:var(--muted);font-size:12px;line-height:1.4}label span,.search-row label,.field span{color:var(--muted);font-size:13px;font-weight:700}input,select{border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--ink);border-radius:12px;outline:none;padding:12px 13px}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #147c581c}.category-strip{gap:8px;margin:14px 0;padding-bottom:2px;display:flex;overflow-x:auto}.category-strip button,.method{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:#fff;border-radius:999px;padding:10px 13px;font-weight:800}.category-strip button.active,.method.active{background:var(--accent-soft);color:var(--accent-strong);border-color:#176b5759}.product-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.product-card{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-soft));text-align:left;border-radius:8px;min-height:244px;padding:10px;transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s,background .18s}.product-image-wrap{aspect-ratio:1.22;background:#fff;border-radius:6px;place-items:center;margin-bottom:10px;display:grid;overflow:hidden}.product-image-wrap img{object-fit:cover;background:#fff;width:100%;height:100%;padding:0;transform:scale(1.18)}.product-card:hover{background:#fff;border-color:#176b5761;transform:translateY(-2px)}.product-card strong,.product-card span,.product-card small{display:block}.product-card strong{min-height:40px;margin-top:10px;font-size:14px;line-height:1.25}.product-card span{margin-top:8px;font:800 16px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.product-card small{color:var(--muted);margin-top:8px}.product-card-top{justify-content:space-between;gap:8px;display:flex}.product-card-top small{letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:11px;font-weight:900}.product-card.low small{color:var(--warning)}.product-card.out{opacity:.52}.panel-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px;display:flex}.panel-heading select{max-width:190px}.compact{display:block}.cart-list{align-content:start;gap:8px;min-height:324px;padding:8px 0;display:grid}.empty{border:1px dashed var(--line);min-height:260px;color:var(--muted);text-align:center;background:var(--surface-soft);border-radius:16px;place-items:center;display:grid}.cart-item{border:1px solid var(--line);background:var(--surface-soft);border-radius:14px;grid-template-columns:1fr auto;gap:10px;padding:10px;display:grid}.cart-item strong,.cart-item span{display:block}.cart-item span{color:var(--muted);font-size:13px}.qty-controls{align-items:center;gap:7px;display:flex}.qty-controls button{border:1px solid var(--line);background:#fff;border-radius:10px;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.qty-controls b{text-align:center;min-width:22px}.totals{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.totals>div,.change-box{justify-content:space-between;align-items:center;gap:12px;display:flex}.totals span,.change-box span{color:var(--muted);font-weight:700}.totals strong,.change-box strong,.metric strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.inline-input{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;align-items:center;width:112px;display:flex;overflow:hidden}.inline-input input{box-shadow:none;background:0 0;border:0;border-radius:0}.inline-input b{padding-right:10px}.grand-total{border-top:1px solid var(--line);padding-top:12px}.grand-total strong{font-size:28px}.payment-methods{flex-wrap:wrap;gap:8px;margin:8px 0 16px;display:flex}.change-box{background:var(--accent-soft);border-radius:16px;margin:14px 0;padding:16px}.receipt-preview{border:1px dashed var(--line);color:var(--muted);border-radius:16px;gap:6px;margin-top:14px;padding:14px;display:grid}.receipt-preview strong{color:var(--ink)}.inventory-form{grid-template-columns:1.3fr 1fr .9fr .6fr .6fr auto auto;align-items:end;gap:12px;margin-bottom:16px;padding:16px;display:grid}.simple-form{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-bottom:16px;padding:16px;display:grid}.purchase-form{grid-template-columns:1fr 1.4fr .65fr .75fr auto}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;padding:14px 16px}th{color:var(--muted);text-transform:uppercase;font-size:12px}td:nth-child(4),td:nth-child(5){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.stock-low{color:var(--warning);font-weight:800}.stock-out{color:var(--danger);font-weight:800}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.report-date{gap:6px;min-width:170px;display:grid}.report-date span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.metric{background:linear-gradient(180deg, #fff, var(--surface-soft));gap:10px;padding:18px;display:grid}.metric span{color:var(--muted);font-weight:700}.metric strong{font-size:28px}.report-sections{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.management-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.report-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;padding:16px}.mini-list{gap:8px;display:grid}.mini-list>div{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;gap:4px;padding:10px;display:grid}.mini-list span{color:var(--muted);font-size:13px}.mini-list strong{font-size:14px}.sales-list{gap:0;display:grid;overflow:hidden}.sale-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;gap:14px;padding:14px 16px;display:grid}.sale-row:last-child{border-bottom:0}.sale-row span{color:var(--muted);font-size:13px}.row-actions,.settings-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.settings-actions{justify-content:flex-start}.receipt-modal{background:#0f171380;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.receipt-dialog,.scanner-dialog,.qr-dialog{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(520px,100vw - 28px);padding:18px;box-shadow:0 32px 80px #11181538}.report-dialog{width:min(460px,100vw - 28px)}.scanner-dialog{width:min(620px,100vw - 28px)}.qr-dialog{width:min(860px,100vw - 28px);max-height:calc(100dvh - 28px);overflow:auto}.qr-label-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:14px 0;display:grid}.qr-label{border:1px solid var(--line);background:var(--surface-soft);text-align:center;border-radius:16px;grid-template-rows:112px minmax(34px,auto) auto;justify-items:center;gap:8px;min-width:0;padding:12px;display:grid}.barcode-svg{box-sizing:border-box;background:#fff;border:6px solid #fff;border-radius:10px;width:100%;max-width:170px;height:112px;display:block}.qr-label strong{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;max-width:100%;min-height:34px;font-size:13px;line-height:1.25;display:-webkit-box;overflow:hidden}.qr-label span{max-width:100%;color:var(--muted);text-overflow:ellipsis;font:700 12px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow:hidden}.dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.dialog-actions{gap:8px;display:flex}.dialog-head span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.scanner-frame{aspect-ratio:4/3;border:1px solid var(--line);background:#0f1713;border-radius:8px;position:relative;overflow:hidden}.scanner-frame video{object-fit:cover;width:100%;height:100%}.scan-guide{pointer-events:none;border:2px solid #e5f6eceb;border-radius:8px;position:absolute;inset:18%;box-shadow:0 0 0 999px #0f171352,inset 0 0 0 1px #0f171329}.scanner-status{color:var(--accent-strong);background:#f1f6f2;border-radius:8px;margin:12px 0;padding:12px;font-weight:800}.scanner-controls{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.scanner-controls label{gap:7px;display:grid}.scan-result{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:4px;margin-bottom:12px;padding:12px;display:grid}.scan-result span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.scan-result strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.scan-result b{color:var(--accent-strong)}.scan-product-panel{border:1px solid var(--line);background:#fff;border-radius:12px;gap:12px;margin-bottom:12px;padding:12px;display:grid}.scan-product-head{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;display:grid}.scan-product-image{border:1px solid var(--line);background:var(--surface-soft);width:76px;height:76px;color:var(--muted);border-radius:10px;place-items:center;font-size:12px;font-weight:800;display:grid;overflow:hidden}.scan-product-image img{object-fit:contain;background:#fff;width:100%;height:100%;padding:4px}.scan-product-head strong,.scan-product-head span,.scan-product-head small{display:block}.scan-product-head span{color:var(--muted);margin-top:4px;font-size:13px}.scan-product-head small{margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.scan-product-fields{grid-template-columns:1.2fr .9fr .6fr .6fr;gap:10px;display:grid}.scan-product-fields label{gap:6px;display:grid}pre{border:1px solid var(--line);color:#111;letter-spacing:0;white-space:pre-wrap;background:#fff;border-radius:4px;max-height:55dvh;padding:16px;font:12px/1.42 Courier New,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow:auto}@media print{@page{margin:4mm;size:80mm auto}body *{visibility:hidden}.receipt-dialog,.receipt-dialog *,.qr-dialog,.qr-dialog *{visibility:visible}.receipt-dialog,.qr-dialog{width:72mm;max-height:none;box-shadow:none;border:0;padding:0;position:fixed;inset:0}.qr-dialog{width:auto;padding:8mm}pre{border:0;max-height:none;padding:0;font-size:10.5px;line-height:1.35;overflow:visible}.dialog-head,.receipt-dialog .primary-button,.qr-dialog .primary-button{display:none}.qr-label-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1460px){.workspace{padding:22px}.workspace-header{grid-template-columns:190px minmax(260px,1fr)}.workspace-tools{grid-column:1/-1;justify-content:flex-end}.topbar{align-items:flex-start}.topbar-actions{max-width:430px}.topbar-actions .primary-button{min-width:120px}.pos-grid{grid-template-columns:minmax(420px,1fr) minmax(300px,.72fr)}.catalog-panel{grid-row:span 2}}@media (max-width:1180px){.login-page{grid-template-columns:1fr}.login-story{max-width:760px}.app-shell{grid-template-columns:1fr}.sidebar{z-index:2;flex-direction:row;align-items:center;position:sticky;top:0}.nav{grid-auto-flow:column;margin-left:auto}.shift-card{display:none}.pos-grid{grid-template-columns:1fr}.catalog-panel{grid-row:auto}.workspace-header{grid-template-columns:1fr}.workspace-tools{flex-wrap:wrap}}@media (max-width:760px){.login-page{max-width:100vw;padding:18px;display:block;overflow:hidden}.login-story h1{max-width:calc(100vw - 36px);font-size:34px;line-height:1.04}.login-story,.login-panel{width:100%;max-width:calc(100vw - 36px)}.login-story p{max-width:calc(100vw - 36px);font-size:16px}.login-stats{grid-template-columns:1fr;margin-top:22px;display:grid}.login-stats div{min-width:0}.login-panel{margin-top:28px;padding:20px}.workspace,.sidebar{padding:14px}.sidebar{flex-direction:column;align-items:stretch;gap:14px}.nav{grid-template-columns:repeat(3,minmax(0,1fr));margin-left:0}.nav-item{justify-content:center;padding:12px 8px}.brand{justify-content:space-between}.brand-mark{width:42px;height:42px}h1{font-size:32px}.topbar,.panel-heading,.panel-title-row{flex-direction:column;align-items:stretch}.topbar-actions,.payment-methods{grid-template-columns:1fr 1fr;display:grid}.topbar-actions{max-width:none}.topbar-actions .primary-button{grid-column:1/-1}.product-grid,.report-grid,.report-sections,.management-grid,.inventory-form,.simple-form,.purchase-form,.qr-label-grid{grid-template-columns:1fr}.catalog-panel,.cart-panel,.payment-panel{padding:14px}.cart-list{min-height:220px}.product-card{min-height:132px}.scanner-dialog,.qr-dialog,.receipt-dialog{width:calc(100vw - 20px);padding:14px}.scanner-controls,.scan-product-head,.scan-product-fields,.sale-row{grid-template-columns:1fr}}
