/* Summer Day POS startup bundle; original source order preserved. */

/* style.css */
:root{--bg:#f7f7f2;--paper:#fffefa;--ink:#303c36;--muted:#879087;--line:#e7e9e0;--orange:#e89e78;--orange-dark:#b96f4b;--orange-light:#fbede3;--green:#658b76;--green-light:#eaf0e6;--sidebar:222px;--shadow:0 8px 30px #374a3010}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 'Tahoma','Leelawadee UI',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #dba57f;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #dca785;outline-offset:1px}button{border:0;background:none}input,select,textarea{border:1px solid var(--line);border-radius:10px;background:#fffefa;padding:11px 13px;color:var(--ink);min-width:0}textarea{resize:vertical;min-height:85px}h1,h2,h3,h4,p{margin:0}h1{font-size:25px;letter-spacing:-.5px;font-weight:600}h2{font-size:20px;font-weight:600}h3{font-size:17px}small{font-size:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:29px 18px 0;border-right:1px solid var(--line);background:#fbfcf6;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:10px;align-items:center;padding:0 6px}.brand>span:last-child{font:600 24px/1.05 Georgia,serif;letter-spacing:-.8px}.brand small{display:block;font:8px/1.9 Tahoma,sans-serif;letter-spacing:2px;margin-left:1px;color:#8b9487}.brand-sun{font-size:42px;line-height:1;color:#e5a66e}.shop-card{display:flex;gap:10px;align-items:center;background:#f0f2e8;border:1px solid #e8ebdd;border-radius:12px;padding:13px 10px;margin:27px 0}.shop-avatar{display:grid;place-items:center;width:32px;height:35px;border:1px solid #d4deca;background:#e2e9d8;border-radius:8px;font:20px Georgia;color:#6f8463}.shop-card strong{font-size:12px;white-space:nowrap}.shop-card span:not(.shop-dot){display:block;color:var(--muted);font-size:10px}.shop-dot,.green-dot{width:6px;height:6px;background:#6f9a77;border-radius:50%;margin-left:auto}.nav-label{font-size:10px;color:#a0a595;letter-spacing:.3px;margin:0 14px 10px}nav{display:grid;gap:5px}nav button{display:flex;align-items:center;gap:12px;padding:12px 13px;text-align:left;border-radius:10px;font-size:13px;color:#788477;transition:.15s}nav button:hover{background:#f0f1e7}nav button.active{background:#f8e8db;color:#a96f4c;font-weight:600}nav button .nav-icon{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.6}nav button .nav-tag{font-size:9px;border-radius:4px;background:#e9eddf;padding:1px 5px;margin-left:auto}.side-note{position:relative;margin:32px 6px 20px;padding:17px 15px;background:#eef1e4;border-radius:12px;overflow:hidden;min-height:125px}.side-note>span{color:#9fae8d}.side-note strong{display:block;font-size:12px;margin-top:4px}.side-note p{font-size:10px;line-height:1.9;color:#8e9b82;margin-top:6px}.little-rays{position:absolute;right:-15px;bottom:-22px;font-size:98px;color:#d8dfc7;line-height:1;opacity:.65}.side-bottom{margin-top:auto}.side-bottom>button{width:100%;text-align:left;font-size:11px;color:#85917e;padding:13px 7px}.side-bottom>button span{margin-right:6px}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:20px 0}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#eedfcf;font-size:10px;color:#a07d5e}.profile strong{font-size:11px;display:block}.profile small{display:block;font-size:9px;color:#939e8e}.workspace{margin-left:var(--sidebar);min-height:100vh;display:flex;flex-direction:column}.topbar{height:74px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffefa}.breadcrumb{font-size:11px;color:#8c968b}.breadcrumb span{margin:0 15px;color:#bcc2b5}.breadcrumb strong{font-weight:400;color:#576651}.top-tools{display:flex;gap:17px;align-items:center;font-size:10px;color:#8e9788}.connection{display:flex;align-items:center;gap:7px}.connection i{width:6px;height:6px;border-radius:50%;background:#8ea487}.divider{height:17px;width:1px;background:var(--line)}.icon-button{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:12px}.modebar{display:flex;justify-content:space-between;align-items:center;padding:8px 30px;font-size:10px;color:#937f60;background:#f7f1e2;border-bottom:1px solid #eee6d2;gap:12px}.modebar.real{background:#eaf1e7;color:#627e5c}.modebar button{padding:4px 10px;border:1px solid currentColor;border-radius:6px;font-size:10px;white-space:nowrap}.modebar a{text-decoration:underline;margin-left:10px}main{flex:1;padding:27px 30px 18px}.app-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 30px;padding:13px 0;font-size:9px;color:#9da592;border-top:1px solid var(--line)}.app-footer>span{color:#879680}kbd{font-family:inherit;font-size:9px;padding:2px 4px;border:1px solid #dfe3d7;background:#fffefa;border-radius:4px;color:#8c9581;margin:0 4px 0 12px}.subtle{color:#9ba492;font-size:10px}.muted{color:var(--muted)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#a4aa96;margin-bottom:3px}.page-heading p{font-size:11px;color:#8d9788;margin-top:5px}.heading-actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:10px 16px;border:1px solid #e0e4d6;border-radius:9px;background:#fffefa;font-size:12px;white-space:nowrap;transition:background .15s}.btn:hover{background:#f1f3e9}.btn.primary{border-color:#e6a484;background:#e8a27d;color:#fffefa}.btn.primary:hover{background:#d98f6b}.btn.green{background:#6d8d75;color:white;border-color:#6d8d75}.btn.soft{background:var(--orange-light);border-color:transparent;color:#b27c58}.btn.danger{color:#b46b61;border-color:#edd5ce}.btn.small{min-height:31px;padding:5px 10px;font-size:11px}.badge{display:inline-flex;padding:3px 8px;border-radius:5px;background:var(--green-light);color:#77906c;font-size:9px;white-space:nowrap}.badge.peach{background:#f8e9dc;color:#b58259}.badge.red{background:#f9e7e1;color:#ad7161}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:25px}.stat{display:flex;align-items:center;gap:13px;border:1px solid var(--line);background:#fffefa;padding:14px 17px;border-radius:12px}.stat-icon{width:39px;height:39px;background:#f5ecdd;border-radius:11px;display:grid;place-items:center;color:#b6946d;font-size:18px}.stat:nth-child(2) .stat-icon{background:#eaf0e4;color:#85967a}.stat:nth-child(3) .stat-icon{background:#f5e9e3;color:#b99584}.stat small{display:block;font-size:9px;color:#98a08d}.stat strong{font:600 21px/1.5 'Tahoma',sans-serif;letter-spacing:-.5px}.stat em{font:10px Tahoma;color:#9ca591;letter-spacing:0;margin-left:6px}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px}.catalog-panel{min-width:0}.search-row{display:flex;gap:10px;margin-bottom:17px}.search-box{position:relative;flex:1}.search-box input{width:100%;height:43px;background:#fffefa;padding:10px 55px 10px 39px;border-color:#e2e6d9;font-size:12px}.search-icon{position:absolute;left:14px;top:12px;width:16px;height:16px;border:1.6px solid #a0aa96;border-radius:50%;transform:scale(.7)}.search-icon:after{content:'';position:absolute;width:8px;height:1.7px;background:#a0aa96;transform:rotate(45deg);right:-6px;bottom:-3px}.search-box kbd{position:absolute;right:10px;top:12px;margin:0}.view-toggle{display:flex;border:1px solid var(--line);border-radius:9px;background:var(--paper);padding:4px}.view-toggle button{width:32px;border-radius:6px;color:#929c86}.view-toggle button.active{background:#f5ecdd;color:#a48b67}.categories{display:flex;gap:7px;overflow-x:auto;padding-bottom:10px;scrollbar-width:thin;margin-bottom:10px}.category{flex-shrink:0;padding:9px 12px;border:1px solid #e2e6d8;background:#fffefa;border-radius:8px;font-size:10px;color:#86917d;display:flex;align-items:center;gap:6px}.category.active{background:#6e8972;border-color:#6e8972;color:#fff}.category .cat-icon{opacity:.8;font-size:13px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:5px 0 12px}.section-title h3{font-size:13px;font-weight:500}.section-title small{font-size:9px;color:#9ba48f}.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.product-card{position:relative;border:1px solid #e3e7d9;background:#fffefa;border-radius:12px;text-align:left;overflow:hidden;transition:.17s;padding:0;display:flex;flex-direction:column;min-width:0}.product-card:hover{border-color:#c6cdb7;transform:translateY(-2px);box-shadow:var(--shadow)}.product-card .product-art{height:130px;margin:7px 7px 0;background:#f4f2e9;border-radius:8px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.product-card:nth-child(4n+2) .product-art{background:#eef1e8}.product-card:nth-child(4n+3) .product-art{background:#f5eee8}.product-illustration{height:126px;width:100%;max-width:170px}.product-photo{width:100%;height:100%;object-fit:contain}.stock-label{position:absolute;right:7px;top:7px;font-size:8px;background:#fffdf3d9;border:1px solid #eeecdf;border-radius:5px;padding:2px 5px;color:#8c9680}.stock-label.low{color:#bd8c63;background:#fbefdb}.product-copy{padding:11px 12px 12px;flex:1;display:flex;flex-direction:column}.product-copy .product-name{font-size:11px;line-height:1.7;color:#52604d;min-height:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-copy small{display:block;font-size:8px;color:#a1aa96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.price-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.price-row strong{font-size:15px;font-weight:500;color:#566b50;letter-spacing:-.3px}.price-row strong small{display:inline;font-size:8px;font-weight:400}.add-circle{display:grid;place-items:center;background:#f5e6d7;color:#bb8c61;border-radius:7px;width:24px;height:24px;font-size:19px;font-weight:300;line-height:1}.list-view{grid-template-columns:1fr}.list-view .product-card{display:grid;grid-template-columns:75px 1fr}.list-view .product-art{height:72px;margin:4px}.list-view .product-illustration{height:70px}.list-view .product-copy{display:grid;grid-template-columns:1fr 100px;align-items:center}.list-view .product-copy small{grid-column:1}.list-view .price-row{grid-column:2;grid-row:1/3;margin:0}.list-view .product-name{min-height:0}.pager{display:flex;justify-content:space-between;align-items:center;padding:17px 2px;color:#9ba48e;font-size:9px}.pager>div{display:flex;gap:6px}.pager button{border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:5px 10px;font-size:10px}.cart{background:#fffefa;border:1px solid #e2e6d8;border-radius:13px;display:flex;flex-direction:column;align-self:start;position:sticky;top:15px;min-height:630px;overflow:hidden}.cart-head{padding:18px 17px 15px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.cart-head h2{font-size:15px}.cart-head h2 span{font-size:10px;padding:2px 7px;background:#edf0e5;border-radius:5px;color:#98a18e;margin-left:5px}.cart-head small{display:block;color:#9da591;font-size:9px;margin-top:3px}.cart-head button{font-size:10px;color:#ad9985}.cart-customer{margin:13px 16px 0;padding:9px 11px;border:1px dashed #dfe4d5;border-radius:7px;display:flex;align-items:center;gap:8px;font-size:10px;color:#97a18e}.cart-customer button{margin-left:auto;font-size:16px;color:#9ba58e}.cart-items{flex:1;min-height:230px;max-height:340px;overflow-y:auto;padding:5px 16px}.cart-empty{text-align:center;color:#a0ab96;padding:60px 10px 70px}.cart-empty>div{font-size:36px;color:#d1d7c5;font-weight:300;line-height:1.5}.cart-empty h3{font-size:12px;font-weight:400;margin:8px 0}.cart-empty p{font-size:9px;color:#b0b7a3;line-height:1.9}.cart-line{display:flex;gap:10px;padding:14px 0;border-bottom:1px dashed #e6e9dd}.cart-thumb{width:44px;height:47px;flex-shrink:0;border-radius:7px;background:#f2eee3;display:grid;place-items:center;overflow:hidden}.cart-thumb svg{height:46px}.cart-line-copy{flex:1;min-width:0}.cart-line-copy strong{font-size:10px;font-weight:400;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-line-copy small{font-size:9px;color:#a4ab98;display:block}.qty-control{display:flex;align-items:center;gap:0;margin-top:7px}.qty-control button{width:23px;height:22px;background:#f2f2e8;border:1px solid #e7e9da;font-size:12px;border-radius:5px}.qty-control input{border:0;padding:0;width:33px;text-align:center;font-size:11px;background:none;appearance:textfield}.qty-control input::-webkit-inner-spin-button{display:none}.cart-line-total{text-align:right;font-size:11px;display:flex;flex-direction:column;justify-content:space-between;align-items:end}.cart-line-total button{font-size:14px;color:#b6b9a9;padding:0}.cart-note{padding:4px 16px 11px}.cart-note input{border:0;background:#f9f9f2;width:100%;font-size:9px;padding:9px;border-radius:7px}.cart-summary{padding:15px 17px 0;border-top:1px solid var(--line);background:#fdfdf7}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#95a08a;margin-bottom:9px}.summary-row input{width:70px;text-align:right;padding:3px 5px;font-size:10px;border-radius:5px}.summary-row.total{font-size:13px;color:#52664d;padding-top:12px;border-top:1px dashed #dce1ce;margin-top:12px;margin-bottom:15px}.summary-row.total strong{font-size:26px;font-weight:500;letter-spacing:-.5px}.checkout-btn{display:flex;align-items:center;justify-content:space-between;background:#e9a17c;color:#fff;width:100%;padding:14px 15px;border-radius:9px;font-size:12px}.checkout-btn kbd{background:#f4c4a7;border-color:#f2bb9b;color:#fff;font-size:9px}.cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 17px 13px;background:#fdfdf7}.cart-actions .btn{font-size:10px;min-height:32px;padding:6px 9px;background:#fffefa;color:#9b9f89;border-color:#e7eadc}.cart-foot{font-size:8px;color:#b0b7a2;text-align:center;padding:8px 0;border-top:1px solid #eff0e8;background:#fcfdf6}.empty-state{display:grid;place-items:center;text-align:center;border:1px dashed #dce1d1;border-radius:12px;padding:55px 25px;background:#fffefa;gap:12px;min-height:260px}.empty-state>span{font-size:30px;color:#b5c2a5}.empty-state p{font-size:12px;color:#929d87;max-width:470px;line-height:1.9}.table-panel,.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel{padding:23px}.panel h3{margin-bottom:15px;font-size:14px}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px}.table-toolbar input{font-size:12px;max-width:340px;width:100%}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}th{font-weight:400;font-size:10px;color:#929d88;background:#f4f6ed;padding:12px 15px}td{padding:13px 15px;border-bottom:1px solid #eef0e5;color:#5e6c57}td.product-cell{display:flex;align-items:center;gap:10px;white-space:normal;min-width:230px}.tiny-art{width:35px;height:35px;background:#f0f0e5;border-radius:6px;flex-shrink:0}.tiny-art svg{height:35px}.tiny-art img{height:35px;width:35px;object-fit:contain}td small{display:block;color:#a4ad98;font-size:9px}.text-right{text-align:right}tr:last-child td{border-bottom:0}.row-actions{display:flex;gap:6px;justify-content:end}.row-actions button{font-size:10px;background:#f1f3e9;padding:5px 8px;border-radius:5px}.filter-tabs{display:flex;gap:7px;margin-bottom:18px;flex-wrap:wrap}.filter-tabs button{border:1px solid var(--line);background:var(--paper);border-radius:7px;padding:8px 13px;font-size:11px;color:#94a084}.filter-tabs button.active{background:#e6eddc;border-color:#d4e0c6;color:#718164}.notice{border:1px solid #e9d8bc;border-radius:9px;background:#faf1e1;padding:13px 16px;color:#a88c67;font-size:11px;margin-bottom:20px;line-height:1.9}.notice.green{background:#edf2e5;border-color:#dce5ce;color:#7f9271}.notice a{text-decoration:underline}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label,.field{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#7a8970}.form-grid input,.form-grid select{width:100%;font-size:12px}.form-grid .full{grid-column:1/-1}.form-grid .checkbox{flex-direction:row;align-items:center;gap:9px}.checkbox input{width:auto!important;accent-color:#789470}.form-actions{display:flex;justify-content:end;gap:8px;margin-top:22px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.preview-paper{background:#fff;padding:25px 20px;box-shadow:0 5px 20px #54643b0e;font-size:10px;color:#65745b;line-height:1.8;border:1px solid #e4e7dc}.preview-paper .receipt-logo{font:24px Georgia;text-align:center;margin-bottom:9px;color:#b08560}.preview-paper h3{text-align:center;font-size:14px}.preview-paper p{text-align:center;font-size:9px;white-space:pre-line}.receipt-rule{border-top:1px dashed #d4d9c8;margin:14px 0}.receipt-line{display:flex;justify-content:space-between;margin-bottom:6px}.preview-paper .receipt-total{font-size:17px;font-weight:600}.chart{height:155px;display:flex;align-items:end;gap:8px;padding:15px 0 25px;border-bottom:1px solid #e1e6d7;margin-bottom:10px}.chart .bar{flex:1;background:#b7c6aa;border-radius:5px 5px 0 0;min-height:2px;position:relative}.chart .bar span{position:absolute;top:100%;font-size:8px;color:#a3ad96;left:50%;transform:translateX(-50%);margin-top:7px}.report-stat{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.report-stat .stat{display:block}.report-stat .stat strong{font-size:23px;display:block;margin-top:4px}.report-stat .stat small{font-size:10px}.report-stat .stat:last-child{background:#eaf0e4;border-color:#d9e3cd}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.help-grid p,.help-grid li{font-size:12px;line-height:2;color:#8c9a7e}.help-grid ul{padding-left:18px}.help-grid kbd{margin-left:0}.import-drop{border:1px dashed #cbd5bd;background:#f4f6ed;border-radius:12px;display:grid;place-items:center;padding:45px 20px;gap:13px;margin:20px 0}.import-drop>span{font-size:30px;color:#aab895}.import-drop p{font-size:11px;color:#9da98c}.import-drop input{border:0;font-size:12px;max-width:100%}.import-summary{display:flex;gap:12px;margin:20px 0}.import-summary>div{flex:1;background:#f3f5ec;border-radius:8px;padding:15px}.import-summary strong{font-size:23px;display:block}.import-summary small{color:#9ca78d;font-size:10px}dialog{border:1px solid #e0e5d5;border-radius:16px;background:#fffefa;color:var(--ink);padding:0;width:min(620px,calc(100vw - 30px));max-height:90vh;box-shadow:0 20px 80px #27381d30}dialog::backdrop{background:#35472f55;backdrop-filter:blur(3px)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:22px 25px;border-bottom:1px solid var(--line)}.modal-header h2{font-size:18px}.modal-header button{font-size:22px;color:#9aa68c}.modal-body{padding:25px}.modal-body>p{font-size:12px;color:#929e86;line-height:1.9;margin-bottom:16px}.modal-total{background:#f1f5e9;border-radius:10px;padding:20px;display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;color:#7d9071;font-size:12px}.modal-total strong{font-size:32px;color:#536c49;letter-spacing:-1px}.payment-options{display:flex;gap:9px;margin-bottom:20px}.payment-options button{flex:1;padding:13px 10px;border:1px solid var(--line);border-radius:9px;background:#f9faf3;font-size:12px}.payment-options button.active{background:#fbecdf;border-color:#d9aa87;color:#ac7a54}.cash-input{font-size:25px;width:100%;padding:12px;margin-top:7px;text-align:right;color:#647d57}.quick-cash{display:flex;gap:7px;margin:12px 0 20px}.quick-cash button{flex:1;padding:8px;border:1px solid #e2e7d8;border-radius:7px;font-size:11px}.change-row{display:flex;align-items:center;justify-content:space-between;margin:20px 0;font-size:13px;color:#99a78a}.change-row strong{font-size:25px;color:#7c956b}.checkout-error{color:#b57562;font-size:12px;min-height:20px}.success-icon{text-align:center;font-size:45px;color:#87a176}.success-message{text-align:center;margin:7px 0 22px}.success-message h2{font-size:20px;margin-bottom:7px}.success-message p{font-size:11px;color:#9ba78d}.success-amount{text-align:center;font-size:34px;color:#64845b;margin:12px}.native-jobs{margin-top:13px;display:grid;gap:8px}.error-box{padding:14px;background:#f9e9df;color:#b27b5e;border-radius:8px;font-size:12px}#toast{position:fixed;bottom:25px;left:calc(50% + 80px);transform:translate(-50%,20px);background:#435d3b;color:#fffdf4;border-radius:10px;padding:12px 22px;box-shadow:0 5px 25px #354b2a30;font-size:12px;opacity:0;pointer-events:none;z-index:50;transition:.2s;max-width:85vw}#toast.show{opacity:1;transform:translate(-50%,0)}.skeleton{min-height:600px;display:grid;place-items:center;color:#91a07e}.stock-info{font-size:11px;color:#95a287;margin-top:8px}.inline-warning{font-size:10px;color:#b78361;margin-top:5px}.form-error{font-size:12px;color:#b37863;margin-top:12px}.service-title{margin:24px 0 14px;font-size:13px;color:#819371}.migration-count{font-size:10px;padding:5px 9px;background:#f8e7db;color:#af835e;border-radius:6px;display:inline-block;margin-top:10px}.split-note{margin-top:15px;font-size:11px;color:#9ba58d}.audit-note{font-size:10px;color:#9da98f;line-height:1.9;margin-top:15px}.is-hidden{display:none!important}
@media(min-width:1550px){:root{--sidebar:246px}.workspace main{padding:32px 38px}.pos-layout{grid-template-columns:minmax(0,1fr) 370px;gap:28px}.products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.list-view{grid-template-columns:1fr}.product-card .product-art{height:151px}.product-illustration{height:145px;max-width:190px}.product-copy .product-name{font-size:13px}.product-copy small{font-size:9px}.cart{min-height:735px}.cart-items{min-height:300px;max-height:410px}.cart-line-copy strong{font-size:12px}nav button{font-size:14px}.brand>span:last-child{font-size:27px}}
@media(max-width:1190px){:root{--sidebar:190px}.sidebar{padding:25px 12px 0}.brand>span:last-child{font-size:21px}.brand-sun{font-size:35px}.shop-card{padding:10px 7px}.shop-card strong{font-size:10px}.pos-layout{grid-template-columns:minmax(0,1fr) 295px;gap:15px}main{padding:22px 21px}.topbar{padding:0 21px}.modebar{padding:8px 21px}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.list-view{grid-template-columns:1fr}.stat{padding:12px}.stat-icon{width:32px;height:32px}.stat strong{font-size:18px}.app-footer{margin:0 21px}.app-footer>div{font-size:0}.app-footer kbd{font-size:9px}.settings-layout{grid-template-columns:1fr 250px}.product-card .product-art{height:120px}.product-illustration{height:117px}}
@media(max-width:900px){:root{--sidebar:74px}.sidebar{padding:25px 9px}.brand>span:last-child,.shop-card,.nav-label,.side-note,.profile,.side-bottom>button{display:none}.brand{padding:0;justify-content:center;margin-bottom:35px}.brand-sun{font-size:37px}nav button{justify-content:center;padding:13px 0}nav .nav-text,nav .nav-tag{display:none}nav button .nav-icon{width:23px;height:23px}.top-tools #date,.top-tools .divider{display:none}.pos-layout{grid-template-columns:minmax(0,1fr) 280px}.stats{gap:8px}.stat-icon{display:none}.report-stat{grid-template-columns:1fr 1fr}.settings-layout{grid-template-columns:1fr}.receipt-settings-preview{max-width:310px}.two-columns{grid-template-columns:1fr}.help-grid{grid-template-columns:1fr}}
@media(max-width:680px){body{font-size:14px}:root{--sidebar:0px}.sidebar{display:none}.topbar{padding:0 15px;height:57px}.top-tools{gap:8px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 7px}.modebar{padding:7px 15px;font-size:9px}.modebar button{font-size:9px;padding:4px 7px}.modebar a{display:none}main{padding:20px 14px}.pos-layout{grid-template-columns:1fr}.cart{position:relative;top:0;min-height:420px}.cart-items{max-height:300px;min-height:100px}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.list-view{grid-template-columns:1fr}.product-card .product-art{height:123px}.product-illustration{height:120px}.page-heading{align-items:flex-start;gap:9px}h1{font-size:21px}.page-heading p{font-size:10px}.heading-actions .btn{font-size:10px;padding:8px 9px;min-height:34px}.stats{margin-bottom:18px;gap:7px}.stat{padding:9px}.stat strong{font-size:16px}.stat small{font-size:8px}.stat em{display:block;margin:0;font-size:8px}.app-footer{margin:0 14px}.app-footer>div{display:none}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1}.settings-layout{grid-template-columns:1fr}.modal-body{padding:20px}.modal-header{padding:17px 20px}#toast{left:50%}.table-toolbar{flex-wrap:wrap}.help-grid{grid-template-columns:1fr}.import-summary{gap:7px}.import-summary>div{padding:10px}.list-view .product-copy{grid-template-columns:1fr 90px}}


/* readable.css */
/* Larger Thai text and a cashier panel that fits a laptop viewport. */
.brand>span:last-child{font-size:22px;white-space:nowrap}.brand small{font-size:7.5px;letter-spacing:1.5px}.brand-sun{font-size:36px}.shop-card strong{font-size:12px}nav button{font-size:13px}.page-heading p{font-size:12px}.product-copy .product-name{font-size:13px}.product-copy small{font-size:10px}.category{font-size:11px}.product-copy{padding:11px 12px}.price-row strong{font-size:17px}.stock-label{font-size:9px}.cart-line-copy strong{font-size:12px}.cart-line-copy small{font-size:10px}.cart-line-total{font-size:12px}.cart-head small{font-size:10px}.cart-note input{font-size:10px}.summary-row{font-size:11px}.checkout-btn{font-size:14px}.cart-actions .btn{font-size:11px}.modebar{font-size:11px}.modebar button{font-size:11px}.top-tools{font-size:11px}.breadcrumb{font-size:12px}.btn{font-size:13px}.stat small{font-size:10px}.sidebar{overflow-y:auto}.product-copy .product-name{white-space:normal;min-height:42px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.list-view .product-name{min-height:0}.cart-customer{font-size:10px}.side-note{flex-shrink:0}
@media(min-width:901px){.pos-layout{height:calc(100vh - 243px);min-height:465px}.catalog-panel{display:flex;flex-direction:column;min-height:0}.products-grid{overflow-y:auto;min-height:170px;padding:2px 2px 5px;flex:1;align-content:start}.stats{flex-shrink:0;margin-bottom:17px}.search-row,.categories,.section-title,.pager{flex-shrink:0}.pager{padding:9px 2px}.cart{height:100%;min-height:0;position:relative;top:0}.cart-items{min-height:60px;max-height:none}.cart-head{padding:13px 15px}.cart-customer{margin:10px 15px 0;padding:7px 9px}.cart-note{padding:5px 15px 8px}.cart-summary{padding:11px 15px 0}.summary-row{margin-bottom:7px}.summary-row.total{padding-top:8px;margin:8px 0 10px}.summary-row.total strong{font-size:25px}.checkout-btn{padding:12px 13px}.cart-actions{padding:8px 15px 10px}.cart-foot{padding:6px 0}.app-footer{padding:9px 0}.side-note{margin-top:24px}.cart-empty{padding:25px 10px}.cart-line{padding:10px 0}}
@media(min-width:1550px){.brand>span:last-child{font-size:25px}.product-card .product-art{height:145px}.product-copy .product-name{font-size:14px}.product-copy small{font-size:11px}.cart-line-copy strong{font-size:13px}.category{font-size:12px}.summary-row{font-size:12px}.cart-head h2{font-size:17px}.cart-head{padding:17px}.stats{margin-bottom:20px}}
@media(max-width:900px){.brand>span:last-child{display:none}.pos-layout{align-items:start}.cart{min-height:590px}.cart-items{min-height:180px}}
@media(max-width:680px){.cart{min-height:480px}.product-copy .product-name{font-size:13px}.modebar{font-size:9px}.modebar button{font-size:10px}.top-tools{font-size:9px}}

.receipt-frame{width:100%;height:60vh;min-height:350px;border:1px solid #e3e7db;border-radius:9px;background:#edece5}
.products-grid{grid-auto-rows:max-content}.product-card{min-height:225px}.product-card .product-art{flex-shrink:0}.list-view .product-card{min-height:84px}
@media(min-width:901px){.products-grid{min-height:230px;grid-auto-rows:235px}.list-view{grid-auto-rows:86px}.product-card{height:235px}.product-card .product-art{height:120px}.product-illustration{height:117px}.product-copy .product-name{min-height:36px;line-height:1.4}.product-copy{padding:9px 11px}.price-row{margin-top:7px}.list-view .product-card{height:86px}.list-view .product-art{height:74px}.list-view .product-name{min-height:0}}
@media(min-width:901px) and (max-height:800px){.stats .stat{padding:8px 12px}.stats .stat-icon{display:none}.stats .stat strong{font-size:18px}.stats{margin-bottom:12px}.page-heading{margin-bottom:17px}main{padding-top:22px}.product-card{height:225px}.products-grid{grid-auto-rows:225px}.list-view{grid-auto-rows:86px}.list-view .product-card{height:86px}}
.cart-customer{display:none}
.vat-row{align-items:flex-start;gap:8px}.vat-picker{min-width:0;flex:1}.vat-options{display:inline-flex;gap:4px;padding:3px;border:1px solid #e0e5d7;background:#f1f4ea;border-radius:8px}.vat-options button{border:1px solid transparent;border-radius:6px;padding:7px 9px;min-height:33px;white-space:nowrap;font-size:11px;line-height:1.4;color:#7f8c73}.vat-options button.selected{background:#f7e4d4;border-color:#e8c3a4;color:#98663e;font-weight:bold}.vat-options button.vat-on{background:#6d8d75;border-color:#6d8d75;color:#fff}.vat-options button:disabled{opacity:.5;cursor:not-allowed}.vat-help{display:block;font-size:9px;line-height:1.6;color:#9ba58f;margin-top:4px}.vat-row>strong{font-size:12px;font-weight:400;white-space:nowrap;padding-top:12px;color:#73836a}.cart-summary .vat-row{margin-top:7px;margin-bottom:9px}
@media(min-width:1550px){.vat-options button{font-size:12px;padding:8px 11px}}
@media(min-width:901px) and (max-height:800px){.cart-summary .vat-row{margin-top:4px;margin-bottom:6px}.vat-options button{min-height:29px;padding:5px 8px}.vat-help{font-size:8px;margin-top:3px}.vat-row>strong{padding-top:9px}.cart-note{padding-bottom:4px}}
@media(min-width:901px) and (max-height:800px){.cart-head{padding:10px 15px}.cart-note{padding:4px 15px 6px}.cart-note input{padding:6px 8px}.cart-summary .summary-row{margin-bottom:5px}.cart-summary .summary-row.total{margin:6px 0 8px;padding-top:6px}.summary-row.total strong{line-height:1.2}.checkout-btn{padding:11px 13px}.cart-actions{padding:6px 15px 8px}.cart-foot{padding:4px 0}.cart-line{padding:7px 0}.qty-control{margin-top:4px}}

/* Fast cashier and product entry. */
.keyboard-hint{color:#866346;font-size:11px;line-height:1.8;margin-top:12px}.keyboard-hint kbd{margin:0 3px;padding:2px 5px}.product-kind{display:flex;gap:10px;margin-bottom:18px}.product-kind label{flex:1;display:flex;align-items:center;gap:8px;border:1px solid #dfbe96;border-radius:10px;padding:10px 12px;background:#fff6e4;color:#75482a;font-size:12px;cursor:pointer}.product-kind label:has(input:checked){background:#dcefe5;border-color:#76ac95;color:#2c5847}.product-kind input{accent-color:#347d62}.product-basic label small,.product-more label small{font-size:10px;color:#89694b;font-weight:normal}.product-basic label>small{display:block;margin-top:4px}.product-more{margin-top:17px;padding:12px 14px;border:1px solid #e4c9a6;border-radius:10px;background:#fffaf0}.product-more summary{cursor:pointer;font-size:12px;font-weight:600;color:#80502d}.product-more[open] summary{margin-bottom:15px}.product-more .form-grid{margin-top:12px}.product-save-actions{flex-wrap:wrap}.product-basic input{font-size:14px}.heading-actions{flex-wrap:wrap}.import-mapping{margin:15px 0}.product-more input[type=file]{max-width:100%}.checkout-error:empty{display:none}
dialog:has(#product-form){width:min(720px,calc(100vw - 28px))}dialog:has(#product-form) .modal-header{padding:17px 24px}dialog:has(#product-form) .modal-body{padding:20px 24px}.product-kind{margin-bottom:14px}.product-basic{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.product-basic>label{grid-column:span 3}.product-basic>.full{grid-column:1/-1}.product-basic:has([data-product-stock]:not(.is-hidden)) label:has([name="price"]),.product-basic:has([data-product-stock]:not(.is-hidden)) label:has([name="cost"]),.product-basic>[data-product-stock]{grid-column:span 2}.product-basic label>small{display:inline;margin:0}.product-basic>[data-product-stock]>small{display:block;font-size:9px}.product-save-actions{margin-top:15px}.product-more{margin-top:13px}
@media(max-width:680px){.product-kind{flex-direction:column}.product-save-actions .btn{flex:1}.heading-actions{justify-content:flex-end}.heading-actions .btn{white-space:normal}.page-heading .heading-actions{max-width:150px}.product-basic{grid-template-columns:1fr 1fr}.product-basic>label,.product-basic:has([data-product-stock]:not(.is-hidden)) label:has([name="price"]),.product-basic:has([data-product-stock]:not(.is-hidden)) label:has([name="cost"]){grid-column:span 1}.product-basic>.full,.product-basic>[data-product-stock]{grid-column:1/-1}}


/* summer-theme.css */
/* Summer Day brand palette, based on the shop's supplied logo and posters. */
:root {
  --bg: #fff9ef;
  --paper: #ffffff;
  --ink: #603e28;
  --muted: #80654f;
  --line: #efd7b9;
  --orange: #ff8537;
  --orange-dark: #ad4617;
  --orange-light: #ffe7ce;
  --green: #86c4b4;
  --green-light: #e3f3ed;
  --shadow: 0 8px 24px #ab652014;
}

body { background: var(--bg); color: var(--ink); }
h1, h2, h3, h4 { color: #603e28; }
button:focus-visible, a:focus-visible { outline-color: #a74516; }
input, select, textarea { background: #fff; border-color: #d9bc9c; color: #603e28; }
input::placeholder, textarea::placeholder { color: #8a705b; opacity: 1; }
input:focus, select:focus, textarea:focus { outline-color: #d36b24; border-color: #d36b24; }
input[type="checkbox"] { accent-color: #337a69; }
button:disabled { opacity: .5; }

/* The original supplied logo is displayed intact, inside a compact frame. */
.sidebar { background: #fff0cc; border-right: 1px solid #efc38e; color: #69452c; padding-top: 15px; scrollbar-color: #efb35e #fff0cc; }
.brand { position: relative; flex-shrink: 0; display: block; height: 128px; padding: 0; overflow: hidden; border: 1px solid #f2d7b4; border-radius: 19px; background: #fff; }
.brand-logo { position: absolute; width: 200px; height: 200px; max-width: none; top: 50%; left: 50%; transform: translate(-50%, -50%); object-fit: contain; }
.shop-card { background: #fffaf0; border-color: #edcd9f; margin: 14px 0 18px; padding: 9px 10px; }
.shop-card strong { color: #6b442a; }
.shop-card span:not(.shop-dot) { color: #87654b; }
.shop-avatar { color: #704322; background: #ffcf63; border-color: #e8b446; }
.shop-dot, .green-dot { background: #398b6e; }
.nav-label { color: #8d623a; }
nav { gap: 4px; }
nav button { color: #705038; padding: 10px 13px; }
nav button:hover { color: #653516; background: #ffdfae; }
nav button.active { color: #542b15; background: #ff893d; box-shadow: 0 3px 0 #e46b25; }
nav button .nav-tag { background: #ffd366; color: #70431c; }
.side-note { background: #ffe29b; border: 1px solid #edc66b; min-height: 110px; }
.side-note > span { color: #c45125; }
.side-note strong { color: #75451e; }
.side-note p { color: #80532a; }
.little-rays { color: #ffaf2f; opacity: .55; }
.side-bottom > button { color: #795032; }
.side-bottom > button:hover { color: #ab421b; }
.profile { border-top-color: #ebcd9c; padding: 15px 0; }
.profile strong { color: #644027; }
.profile small { color: #87674e; }
.avatar { background: #f5b1b0; color: #6e3430; }

.topbar { background: #fffdf8; border-bottom: 3px solid #ffae61; }
.breadcrumb, .top-tools { color: #82654f; }
.breadcrumb span { color: #b59a7c; }
.breadcrumb strong { color: #704529; font-weight: 600; }
.connection i { background: #398b6e; box-shadow: 0 0 0 3px #e3f3e8; }
.icon-button { color: #73471f; background: #ffe8b2; border-color: #e4bd76; }
.modebar { color: #775015; background: #ffe8a2; border-bottom-color: #ecc866; }
.modebar.real { color: #28594b; background: #d8eee5; border-bottom-color: #9dcebc; }
.modebar button { background: #fffaf0; border-color: #b68b39; color: #704917; font-weight: 600; }
.modebar.real button { background: #f6fffa; border-color: #6b9c87; color: #315f4e; }
.eyebrow { color: #a54b1f; font-weight: 600; }
.page-heading p { color: #80654f; }
.subtle, .muted, .section-title small, .pager, .app-footer, .app-footer > span { color: #84664e; }
.app-footer { border-top-color: #ebd6ba; }
kbd { color: #795235; background: #fff4df; border-color: #dbbc92; }

.btn { color: #70462b; background: #fff; border-color: #dabb94; }
.btn:hover { color: #603916; background: #fff0d9; border-color: #cf9656; }
.btn.primary, .checkout-btn { color: #52290f; background: #ff883b; border-color: #e8732b; font-weight: 600; box-shadow: 0 4px 0 #e8712933; }
.btn.primary:hover, .checkout-btn:hover { background: #ff9c50; border-color: #d56b24; }
.btn.green { background: #92cbbc; border-color: #68ac98; color: #234d40; }
.btn.green:hover { background: #abdccd; }
.btn.soft { background: #ffe1c2; border-color: #efb785; color: #963d14; }
.btn.danger { background: #ffebe7; border-color: #e5aaa0; color: #a43d32; }
.checkout-btn kbd { background: #ffc477; border-color: #bc6122; color: #63330f; }
.badge { color: #285c4d; background: #d9f0e5; }
.badge.peach, .migration-count { color: #86460e; background: #ffe3af; }
.badge.red { color: #993d3c; background: #ffd6d7; }

.stats .stat:nth-child(1) { background: #ffe2bf; border-color: #efa669; }
.stats .stat:nth-child(2) { background: #d9efe6; border-color: #9acdbb; }
.stats .stat:nth-child(3) { background: #ffe0df; border-color: #e6a4a4; }
.stat small, .stat em { color: #79563a; }
.stat strong { color: #6b4021; }
.stats .stat:nth-child(1) strong { color: #a84c1b; }
.stat-icon { background: #ffbc70; color: #804016; }
.stat:nth-child(2) .stat-icon { background: #9fd2bf; color: #2e604e; }
.stat:nth-child(3) .stat-icon { background: #f4b1b1; color: #873b40; }
.report-stat .stat { background: #fff; border-color: #e1c8a9; }
.report-stat .stat:last-child { background: #d9efe5; border-color: #9ac9b7; }

.search-box input { background: #fff; border-color: #dab78f; box-shadow: 0 2px 7px #ad6a2210; }
.search-icon { border-color: #a97143; }
.search-icon:after { background: #a97143; }
.view-toggle { background: #fff; border-color: #dec29f; }
.view-toggle button { color: #846044; }
.view-toggle button.active { background: #ffd798; color: #764718; }
.category { color: #7c5538; background: #fff; border-color: #dfbf99; }
.category:hover { background: #fff0d6; border-color: #d9a05c; }
.category.active { background: #91c8b9; border-color: #6faa96; color: #244b3f; box-shadow: 0 3px 0 #5e9c8422; font-weight: 600; }
.section-title h3 { color: #6d482c; font-weight: 600; }

.product-card { background: #fff; border-color: #e9cfad; box-shadow: 0 2px 5px #b2762709; }
.product-card:hover { border-color: #ec893f; box-shadow: 0 5px 16px #c57b301c; }
.product-card .product-art { background: #ffe7ab; }
.product-card:nth-child(4n+2) .product-art { background: #d7eee3; }
.product-card:nth-child(4n+3) .product-art { background: #ffddd8; }
.product-card:nth-child(4n+4) .product-art { background: #dff0f7; }
.product-illustration { filter: saturate(1.6) contrast(1.03); }
.product-copy .product-name { color: #654127; font-weight: 600; }
.product-copy small { color: #85684e; }
.price-row strong { color: #a2481b; font-weight: 600; }
.stock-label { color: #3a6250; background: #fffdf4; border-color: #cbb88d; }
.stock-label.low { color: #9a3e32; background: #ffdfd5; border-color: #e6a296; }
.add-circle { color: #60320f; background: #ffae57; font-weight: 600; }
.pager button { color: #795333; background: #fff; border-color: #dabd98; }
.pager button:hover { color: #58320f; background: #ffc673; }

.cart { background: #fff; border-color: #e9b17d; box-shadow: 0 7px 24px #ac6e2212; }
.cart-head { background: #ffd99c; border-bottom-color: #edb668; }
.cart-head h2 { color: #6c3f1e; }
.cart-head h2 span { background: #f59c43; color: #542c0b; }
.cart-head small { color: #825b37; }
.cart-head button { color: #9e3d29; font-weight: 600; }
.cart-empty { color: #866044; }
.cart-empty > div { color: #d9974c; }
.cart-empty h3 { color: #7a4e2e; }
.cart-empty p { color: #8d7054; }
.cart-line { border-bottom-color: #ead5b9; }
.cart-thumb, .tiny-art { background: #e4f1e8; }
.cart-line-copy strong { color: #67452c; }
.cart-line-copy small { color: #876a50; }
.cart-line-total { color: #704627; }
.cart-line-total button { color: #ac5143; }
.qty-control button { background: #ffedcd; border-color: #dfbc87; color: #7c4f26; }
.qty-control button:hover { background: #ffb95d; border-color: #d98a31; color: #633710; }
.qty-control input { color: #704b2e; }
.cart-note input { background: #fff4e0; color: #805a3b; }
.cart-summary { background: #fffaf0; border-top-color: #e9cda7; }
.summary-row { color: #7c5b3f; }
.summary-row input { color: #70492b; background: #fff; border-color: #d5b48c; }
.summary-row.total { color: #744425; border-top-color: #d6ad7e; }
.summary-row.total strong { color: #a9481b; font-weight: 600; }
.cart-actions { background: #fffaf0; }
.cart-actions .btn { color: #805435; background: #fff; border-color: #d9b890; }
.cart-actions .btn:hover { background: #ffe9c6; }
.cart-foot { color: #7f6246; background: #fff0cf; border-top-color: #e8cca0; }
.vat-options { background: #f2e8d5; border-color: #d7b891; }
.vat-options button { color: #7d6043; }
.vat-options button.selected { background: #ffc568; border-color: #bd8132; color: #654018; }
.vat-options button.vat-on { background: #90c8b6; border-color: #5e9b85; color: #254c3e; }
.vat-help { color: #836a4d; }
.vat-row > strong { color: #775233; font-weight: 600; }

.table-panel, .panel { background: #fff; border-color: #e3c5a1; box-shadow: 0 3px 12px #b67c2508; }
th { background: #ffd082; color: #643d1d; }
td { color: #6c4b31; border-bottom-color: #efddc4; }
tbody tr:nth-child(even) { background: #fff9ed; }
tbody tr:hover { background: #fff0d4; }
td small { color: #8b6b50; }
.row-actions button { background: #e0f1e8; color: #346252; }
.row-actions button:hover { background: #95c9b7; color: #254d3e; }
.filter-tabs button { background: #fff; color: #7d5b3e; border-color: #dabe98; }
.filter-tabs button.active { background: #94ccba; border-color: #6ba991; color: #28503f; }
.notice { background: #fff0bf; border-color: #e1bb67; color: #79551e; }
.notice.green { background: #e1f2e8; border-color: #9bc9b3; color: #37634c; }
.form-grid label, .field { color: #755132; }
.stock-info, .audit-note, .split-note { color: #86674c; }
.inline-warning { color: #a35421; }
.form-error, .checkout-error { color: #b13b31; }
.service-title { color: #82532f; }
.import-drop { background: #fff2d7; border-color: #d6a663; }
.import-drop > span { color: #b86726; }
.import-drop p { color: #815c37; }
.import-summary > div { background: #ffedc5; }
.import-summary strong { color: #a55a1e; }
.import-summary small { color: #8b623e; }
.preview-paper { color: #5f432d; border-color: #dcc8aa; }
.preview-paper .receipt-logo { color: #b6531f; }
.receipt-rule { border-top-color: #cfb28c; }
.chart { border-bottom-color: #dbc49e; }
.chart .bar { background: #ffad57; }
.chart .bar:nth-child(even) { background: #90c8b4; }
.chart .bar span { color: #87643e; }
.help-grid p, .help-grid li { color: #806244; }

dialog { background: #fffcf5; border-color: #e1b98b; box-shadow: 0 20px 80px #70402440; }
dialog::backdrop { background: #52371f73; }
.modal-header { background: #ffdfac; border-bottom-color: #eac48a; }
.modal-header h2 { color: #704523; }
.modal-header button { color: #8a6040; }
.modal-body > p { color: #7a5c40; }
.modal-total { background: #fff0c9; color: #87572a; }
.modal-total strong { color: #a44b1a; }
.payment-options button { background: #fff; color: #805939; border-color: #d7b893; }
.payment-options button.active { background: #d8eee4; color: #315e4e; border-color: #80b29e; }
.cash-input { color: #855026; }
.quick-cash button { color: #805027; background: #fff0d4; border-color: #d8b27c; }
.quick-cash button:hover { background: #ffcf8b; }
.change-row { color: #81633e; }
.change-row strong { color: #347859; }
.success-icon, .success-amount { color: #348566; }
.success-message p { color: #786346; }
.error-box { background: #ffddd5; color: #a33c2f; }
#toast { background: #735033; color: #fffaf0; box-shadow: 0 6px 24px #65412635; }
.skeleton { color: #b86a2d; }

@media (min-width: 901px) and (max-height: 900px) { .side-note { display: none; } }
@media (max-width: 1190px) and (min-width: 901px) { .brand { height: 113px; } .brand-logo { width: 180px; height: 180px; } }
@media (max-width: 900px) { .brand { height: 58px; margin-bottom: 23px; border-radius: 14px; } .brand-logo { width: 88px; height: 88px; } }


/* cashier.css */
/* Cashier layout follows the familiar product / basket / tools arrangement. */
/* The saved cash sale makes change the main number, ready for the cashier to read. */
#dialog:has(.sale-result) { width: min(760px,calc(100vw - 30px)); }
#dialog:has(.sale-result) .modal-body { padding: 20px 25px; }
.sale-result { text-align: center; }
.sale-result-status { color: #287257; font-size: 13px; }
.sale-result-label { margin-top: 14px; color: #725132; font-size: 20px; font-weight: 600; }
.sale-result-amount { margin: 7px 0 18px; font-size: min(124px,17vw); line-height: 1.2; font-weight: 700; color: #934619; font-variant-numeric: tabular-nums; letter-spacing: -3px; }
.sale-result-amount.long-amount { font-size: min(70px,8vw); letter-spacing: -1px; }
.sale-result-summary { display: flex; justify-content: center; gap: 48px; padding: 16px 12px; border-top: 1px solid #eadbc5; border-bottom: 1px solid #eadbc5; }
.sale-result-summary > div { display: flex; align-items: center; gap: 14px; font-size: 14px; }
.sale-result-summary span { color: #886b4d; }
.sale-result-summary strong { color: #5e4029; font-weight: 600; }
.sale-result-reference { color: #8a7055; margin: 12px 0 14px; font-size: 11px; }
.sale-result-close.btn { width: 100%; min-height: 55px; font-size: 18px; }
.receipt-choice-hint { font-size: 13px; color: #725132; }
.receipt-choice-status { min-height: 22px; margin: 5px 0 8px; font-size: 12px; color: #287257; }
.receipt-choice-status.has-error { color: #ac3827; }
.receipt-choice-actions { display: flex; align-items: stretch; gap: 10px; }
.receipt-choice-actions .sale-result-close { flex: 1; width: auto; }
.receipt-choice-actions > .btn:last-child { white-space: nowrap; font-size: 13px; }
.sale-result-receipt { display: flex; align-items: start; justify-content: center; gap: 14px; margin-top: 14px; }
.sale-result-receipt > .btn { font-size: 12px; }
.sale-result-receipt details { max-width: 50%; text-align: left; font-size: 12px; }
.sale-result-receipt summary { padding: 10px 0; cursor: pointer; color: #805a37; }
.sale-result-receipt .native-jobs { margin-top: 0; }
@media (max-height:700px) {
  #dialog:has(.sale-result) .modal-header { padding: 14px 22px; }
  #dialog:has(.sale-result) .modal-body { padding: 14px 22px; }
  .sale-result-label { margin-top: 8px; }
  .sale-result-amount { font-size: min(100px,17vw); margin: 4px 0 10px; }
  .sale-result-amount.long-amount { font-size: min(65px,8vw); }
  .sale-result-summary { padding: 10px 12px; }
  .sale-result-reference { margin: 10px 0; }
}
@media (max-width:600px) {
  .sale-result-summary { gap: 16px; }
  .sale-result-summary > div { flex-direction: column; gap: 4px; font-size: 13px; }
  .sale-result-label { margin-top: 15px; font-size: 18px; }
  .sale-result-amount { letter-spacing: -1px; }
}
.cashier-mode { background: #f7f7f4; }
.cashier-mode > .sidebar, .cashier-mode .workspace > .topbar,
.cashier-mode .workspace > .modebar, .cashier-mode .app-footer { display: none; }
.cashier-mode .workspace { margin-left: 0; min-height: 100dvh; }
.cashier-mode #main { padding: 0; min-height: 0; }
.cashier-shell { height: 100dvh; display: flex; flex-direction: column; overflow: hidden; }
.cashier-header { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; height: 70px; flex-shrink: 0; padding: 7px 18px; background: #ff8b3d; border-bottom: 1px solid #e8792b; color: #583013; }
.cashier-header h1 { font-size: 21px; font-weight: 600; color: #583013; letter-spacing: 0; }
.cashier-brand { display: flex; align-items: center; gap: 13px; min-width: 0; }
.cashier-menu-toggle { border: 1px solid #bb5b2099; background: #fff4dd; color: #643514; border-radius: 8px; font-size: 23px; width: 40px; height: 40px; flex-shrink: 0; }
.cashier-logo-frame { position: relative; width: 70px; height: 54px; border-radius: 10px; background: #fff; overflow: hidden; flex-shrink: 0; }
.cashier-logo-frame img { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 88px; height: 88px; max-width: none; }
.cashier-store { font-size: 15px; font-weight: 600; white-space: nowrap; }
.cashier-store small { display: block; font-size: 10px; font-weight: normal; }
.cashier-header-tools { display: flex; align-items: center; justify-content: flex-end; gap: 10px; font-size: 11px; }
.cashier-mode-switch, .cashier-low { padding: 6px 9px; color: #683915; background: #fff0c8; border: 1px solid #d68036; border-radius: 6px; white-space: nowrap; }
.cashier-low.has-low { background: #ffdfd6; color: #923a2b; }
.cashier-low strong { margin-left: 4px; }
.cashier-ready { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.cashier-ready i { width: 7px; height: 7px; border-radius: 50%; background: #347e58; }
.cashier-searchbar { display: grid; grid-template-columns: minmax(260px,30fr) minmax(420px,45fr) minmax(240px,25fr); align-items: center; padding: 10px 0; background: #fff5e3; border-bottom: 1px solid #dfd3bf; flex-shrink: 0; }
.cashier-categories { padding: 0 14px; }
.cashier-categories select { width: 100%; height: 42px; padding: 8px 12px; background: #fff; font-size: 13px; border-color: #d8b98f; border-radius: 7px; }
.cashier-searchbar .search-box { margin: 0 14px; }
.cashier-searchbar .search-box input { height: 42px; border-color: #d8b98f; border-radius: 7px; font-size: 13px; box-shadow: none; }
.cashier-searchbar .search-box kbd { top: 11px; }
.cashier-key-hint { padding-left: 16px; color: #88623c; font-size: 11px; }
.cashier-key-hint kbd { margin-left: 0; }
.cashier-layout.pos-layout { display: grid; grid-template-columns: minmax(260px,30fr) minmax(420px,45fr) minmax(240px,25fr); gap: 0; flex: 1; height: auto; min-height: 0; align-items: stretch; }
.cashier-layout .catalog-panel { display: flex; flex-direction: column; padding: 12px 12px 0; min-height: 0; overflow: hidden; background: #f6f6f2; }
.cashier-layout .catalog-meta { display: flex; align-items: center; justify-content: space-between; padding: 0 2px 10px; flex-shrink: 0; }
.cashier-layout .catalog-meta h2 { font-size: 13px; font-weight: 500; color: #73583e; }
.cashier-layout .catalog-meta small { font-size: 10px; color: #8b7660; }
.cashier-layout .products-grid { grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: 178px; gap: 10px; flex: 1; min-height: 0; overflow-y: auto; padding: 1px 2px 8px; align-content: start; }
.product-tile { position: relative; min-width: 0; height: 178px; }
.cashier-layout .product-card { width: 100%; height: 100%; min-height: 0; border: 1px solid #e0d9ca; border-radius: 9px; box-shadow: 0 2px 4px #6f57200a; }
.cashier-layout .product-card:hover { transform: none; border-color: #ec9851; box-shadow: 0 2px 9px #c77c2220; }
.cashier-layout .product-card .product-art { height: 92px; min-height: 92px; margin: 5px 5px 0; border-radius: 6px; }
.cashier-layout .product-illustration { height: 88px; max-width: 125px; }
.cashier-layout .product-copy { padding: 7px 9px; }
.cashier-layout .product-copy .product-name { min-height: 34px; font-size: 12px; line-height: 1.4; font-weight: 500; }
.cashier-layout .price-row { margin-top: 5px; }
.cashier-layout .price-row strong { font-size: 16px; font-weight: 600; }
.cashier-layout .price-row strong small { font-size: 9px; }
.cashier-layout .stock-label { font-size: 8px; top: 5px; right: 4px; padding: 1px 4px; background: #fffffff0; }
.favorite-toggle { position: absolute; top: 8px; left: 8px; z-index: 1; width: 24px; height: 24px; padding: 0; border-radius: 50%; background: #fffdf3eb; color: #9b8667; border: 1px solid #e0d4be; font-size: 18px; line-height: 1; }
.favorite-toggle.is-favorite { color: #8e4b06; background: #ffd879; border-color: #dba34c; }
.cashier-layout .pager { padding: 9px 1px; margin-top: auto; font-size: 10px; flex-shrink: 0; gap: 4px; }
.cashier-layout .pager > div { align-items: center; }
.cashier-layout .pager button { padding: 4px 8px; }
.cashier-layout .empty-state { grid-column: 1/-1; font-size: 12px; min-height: 220px; padding: 25px 12px; gap: 9px; }
.cashier-layout .empty-state h3 { font-size: 15px; }
.cashier-layout .empty-state p { font-size: 11px; }

/* A larger central basket keeps the bill and total visible. */
.cashier-layout .cart { align-self: stretch; height: auto; min-height: 0; max-height: none; position: relative; top: 0; border: 0; border-left: 1px solid #dcd9ce; border-right: 1px solid #dcd9ce; border-radius: 0; box-shadow: none; background: #fff; overflow: hidden; }
.cashier-layout .cart-head { padding: 13px 18px; min-height: 54px; background: #fff; border-bottom: 1px solid #ebe6dc; }
.cashier-layout .cart-head h2 { color: #5b4129; font-size: 17px; font-weight: 600; }
.cashier-layout .cart-head h2 span { background: #f4efdf; color: #8d6a40; font-size: 11px; padding: 3px 8px; font-weight: normal; }
.cashier-layout .cart-head small { color: #806849; }
.cart-table-head { display: grid; grid-template-columns: minmax(0,1fr) 106px 102px; gap: 10px; padding: 8px 18px; background: #fcfbf7; border-bottom: 1px solid #eee7db; color: #9b8265; font-size: 10px; flex-shrink: 0; }
.cart-table-head span:nth-child(2) { text-align: center; }
.cart-table-head span:last-child { text-align: right; padding-right: 22px; }
.cashier-layout .cart-items { flex: 1; min-height: 0; max-height: none; padding: 0 18px; overflow-y: auto; }
.cashier-layout .cart-line { display: grid; grid-template-columns: 35px minmax(0,1fr) 106px 102px; gap: 10px; padding: 15px 0; border-bottom: 1px solid #eee9df; align-items: center; }
.cashier-layout .cart-thumb { width: 35px; height: 39px; background: #f5f2e8; border-radius: 6px; }
.cashier-layout .cart-thumb svg { width: 42px; height: 39px; }
.cashier-layout .cart-line-copy strong { font-size: 14px; font-weight: 500; line-height: 1.5; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.cashier-layout .cart-line-copy small { font-size: 10px; color: #8a775f; }
.cashier-layout .qty-control { margin: 0; gap: 0; }
.cashier-layout .qty-control button { width: 28px; height: 30px; font-size: 16px; background: #fff8ed; border-color: #e2cfb2; }
.cashier-layout .qty-control input { width: 48px; height: 30px; font-size: 14px; font-weight: 500; }
.cashier-layout .cart-line-total { flex-direction: row; align-items: center; gap: 8px; font-size: 15px; font-weight: 500; justify-content: flex-end; white-space: nowrap; }
.cashier-layout .cart-line-total button { width: 18px; height: 30px; color: #ba9c85; font-size: 18px; }
.cashier-layout .cart-empty { padding: 80px 10px; }
.cashier-layout .cart-empty > div { color: #c4c0b4; font-size: 45px; }
.cashier-layout .cart-empty h3 { color: #a4947e; font-size: 16px; }
.cashier-layout .cart-empty p { color: #b3a38d; font-size: 12px; }
.cashier-layout .cart-summary { flex-shrink: 0; background: #fffdf6; border-top: 1px solid #ded8c9; padding: 16px 20px 18px; }
.cashier-layout .summary-row { font-size: 12px; margin-bottom: 8px; color: #8a6d4a; }
.cashier-layout .summary-row.total { border-top: 1px solid #e8d8c0; padding-top: 14px; margin: 12px 0 16px; color: #674321; font-size: 17px; align-items: baseline; }
.cashier-layout .summary-row.total strong { color: #a54b1d; font-size: clamp(42px,3.9vw,66px); font-weight: 600; line-height: 1.15; letter-spacing: -1.5px; white-space: nowrap; }
.cashier-layout .checkout-btn { min-height: 57px; padding: 13px 18px; border-radius: 8px; background: #ff8b3c; font-size: 19px; font-weight: 500; box-shadow: none; }
.cashier-layout .checkout-btn kbd { font-size: 11px; padding: 4px 6px; background: #ffc27c; color: #603717; }
.cashier-layout .checkout-btn:disabled { background: #e7e5dc; color: #a99e8b; border-color: #ded8cd; opacity: 1; }
.cashier-layout .checkout-btn:disabled kbd { background: #f3f0e8; border-color: #ccc4b5; color: #a6967e; }

.cashier-tools { display: flex; flex-direction: column; overflow-y: auto; min-height: 0; background: #fff; }
.cashier-tool-section { padding: 19px 17px; border-bottom: 1px solid #e1d9cb; }
.cashier-tool-section h2 { color: #825e36; font-size: 14px; font-weight: 500; margin: 0 0 15px; }
.cashier-tool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.cashier-tool-grid .btn { display: flex; align-items: center; justify-content: space-between; min-height: 43px; font-size: 12px; padding: 9px 10px; border-radius: 7px; color: #775535; background: #fffdf8; border-color: #dac8ae; gap: 4px; }
.cashier-tool-grid .btn.danger { color: #aa5344; border-color: #dfb5a9; }
.cashier-tool-grid .btn:hover { background: #fff0d8; }
.cashier-tool-grid kbd { margin: 0; font-size: 8px; padding: 1px 3px; }
.cashier-tool-grid .badge { padding: 1px 5px; font-size: 10px; background: #e4f0e8; }
.cashier-discount { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #876746; font-size: 12px; margin-bottom: 18px; }
.cashier-discount input { width: 80px; font-size: 14px; text-align: right; padding: 7px 9px; border-radius: 6px; }
.cashier-vat .vat-picker { margin-bottom: 9px; }
.cashier-vat .vat-options { background: #f5f0e4; padding: 3px; border-color: #e0d2b7; }
.cashier-vat .vat-options button { padding: 7px 9px; min-height: 33px; font-size: 11px; }
.cashier-vat .vat-help { font-size: 9px; color: #9b8263; margin-top: 5px; }
.cashier-vat > span { display: flex; justify-content: space-between; font-size: 11px; color: #9b8263; }
.cashier-vat strong { font-weight: 500; color: #775637; }
.cashier-note { border-top: 1px dashed #e5d7c3; padding-top: 14px; margin-top: 18px; color: #8c6c49; font-size: 12px; }
.cashier-note summary { cursor: pointer; }
.cashier-note input { width: 100%; margin-top: 9px; font-size: 12px; }
.cashier-local { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding: 14px 17px; gap: 8px; font-size: 10px; color: #9a8b73; }
.cashier-local span { color: #68977a; }
.cashier-local button { font-size: 10px; color: #8b7050; }
.cashier-menu { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cashier-menu .btn { justify-content: flex-start; padding: 14px; white-space: normal; }
.cashier-menu svg { width: 23px; height: 23px; stroke: currentColor; fill: none; stroke-width: 1.5; flex-shrink: 0; }

@media (min-width:1550px) {
  .cashier-layout .products-grid, .product-tile { grid-auto-rows: 196px; }
  .product-tile { height: 196px; }
  .cashier-layout .product-card .product-art { height: 108px; min-height: 108px; }
  .cashier-layout .product-illustration { height: 104px; }
  .cashier-layout .product-copy .product-name { font-size: 13px; }
}
@media (max-width:1100px) and (min-width:761px) {
  .cashier-searchbar { grid-template-columns: minmax(230px,32fr) minmax(400px,68fr); }
  .cashier-key-hint { display: none; }
  .cashier-layout.pos-layout { grid-template-columns: minmax(230px,32fr) minmax(400px,68fr); grid-template-rows: minmax(150px,1fr) auto; }
  .cashier-layout .catalog-panel { grid-column: 1; grid-row: 1; }
  .cashier-layout .cart { grid-column: 2; grid-row: 1/3; }
  .cashier-tools { grid-column: 1; grid-row: 2; max-height: 260px; border-top: 1px solid #ded7ca; }
  .cashier-tool-section { padding: 12px; }
  .cashier-tool-section h2 { font-size: 12px; margin-bottom: 9px; }
  .cashier-tool-grid { gap: 6px; }
  .cashier-tool-grid .btn { min-height: 35px; font-size: 11px; padding: 7px; }
  .cashier-layout .products-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cashier-header-tools .cashier-ready { display: none; }
  .cashier-store { display: none; }
}
@media (max-width:760px) {
  .cashier-shell { height: auto; min-height: 100dvh; overflow: visible; }
  .cashier-header { height: 65px; gap: 9px; padding: 6px 12px; grid-template-columns: auto 1fr auto; }
  .cashier-header h1 { font-size: 18px; text-align: center; }
  .cashier-brand { gap: 7px; }
  .cashier-logo-frame { width: 48px; height: 46px; }
  .cashier-logo-frame img { width: 69px; height: 69px; }
  .cashier-store, .cashier-ready { display: none; }
  .cashier-header-tools { gap: 5px; }
  .cashier-low { font-size: 9px; padding: 5px; }
  .cashier-mode-switch { font-size: 10px; padding: 6px; }
  .cashier-menu-toggle { width: 34px; height: 36px; font-size: 20px; }
  .cashier-searchbar { grid-template-columns: 155px minmax(0,1fr); }
  .cashier-key-hint { display: none; }
  .cashier-categories { padding: 0 6px 0 12px; }
  .cashier-searchbar .search-box { margin: 0 12px 0 5px; }
  .cashier-searchbar .search-box input { font-size: 11px; padding-left: 29px; padding-right: 34px; }
  .cashier-searchbar .search-icon { left: 8px; }
  .cashier-categories select { font-size: 11px; padding-left: 8px; }
  .cashier-layout.pos-layout { display: flex; flex-direction: column; height: auto; }
  .cashier-layout .catalog-panel { order: 2; height: 340px; flex: auto; }
  .cashier-layout .cart { order: 1; min-height: 430px; height: auto; border: 0; border-bottom: 1px solid #d9cfbf; }
  .cashier-layout .cart-items { min-height: 120px; max-height: 300px; }
  .cashier-layout .cart-line { grid-template-columns: 30px minmax(0,1fr) 100px 93px; gap: 7px; }
  .cashier-layout .cart-thumb { width: 30px; }
  .cashier-layout .cart-line-copy strong { font-size: 13px; }
  .cashier-layout .qty-control input { width: 44px; }
  .cashier-layout .cart-line-total { font-size: 14px; }
  .cashier-layout .summary-row.total strong { font-size: 45px; }
  .cashier-tools { order: 3; display: grid; grid-template-columns: 1fr 1fr; overflow: visible; border-top: 1px solid #ded7ca; }
  .cashier-tool-section { padding: 15px; }
  .cashier-local { grid-column: 1/-1; }
  .cashier-menu .btn { font-size: 12px; padding: 11px; }
}
@media (max-width:430px) {
  .cashier-logo-frame { display: none; }
  .cashier-layout .cart-items { padding: 0 12px; }
  .cashier-layout .cart-line { grid-template-columns: minmax(0,1fr) 90px 84px; }
  .cashier-layout .cart-thumb { display: none; }
  .cashier-layout .qty-control button { width: 25px; }
  .cashier-layout .qty-control input { width: 40px; }
  .cart-table-head { grid-template-columns: minmax(0,1fr) 90px 84px; padding: 8px 12px; gap: 7px; }
  .cashier-tools { grid-template-columns: 1fr; }
  .cashier-layout .cart-line-copy strong { font-size: 12px; }
  .cashier-vat .vat-help { font-size: 10px; }
}

/* Non-blocking warning for the shop's allow-negative-stock policy. */
.cart-stock-warning { background: #fff3cd; color: #713f12; border-radius: 12px; padding: 12px 14px; margin-bottom: 12px; font-size: 13px; line-height: 1.55; }
.cart-stock-warning[hidden] { display: none; }
.cart-stock-warning strong { display: block; color: #713f12; }
.cart-stock-warning ul { margin: 5px 0; padding-left: 20px; max-height: 100px; overflow-y: auto; overflow-wrap: anywhere; }
.cart-stock-warning span { display: block; font-size: 12px; }

/* Stock lifecycle actions: distinct tones and wrapped actions for laptop screens. */
.stock-list-table .row-actions { flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.stock-list-table .row-actions .stock-status.is-active { background: #fff2d4; color: #774400; }
.stock-list-table .row-actions .stock-status.is-inactive { background: #d9f4e8; color: #145840; }
.stock-list-table .row-actions .stock-delete { background: #ffe5e8; color: #a01f32; }
.stock-list-table .row-actions button:focus-visible { outline: 2px solid #155e75; outline-offset: 2px; }



/* receipt-editor.css */
.receipt-design-layout { grid-template-columns: minmax(0,1fr) 340px; align-items: start; gap: 26px; }
.receipt-design-panel { padding: 0 24px 22px; }
.receipt-design-section { padding: 22px 0; border-bottom: 1px solid #edddc7; }
.receipt-design-section h3 { margin-bottom: 16px; font-size: 15px; }
.receipt-logo-editor { display: flex; align-items: center; gap: 18px; }
.receipt-logo-thumb { width: 100px; height: 100px; flex-shrink: 0; display: grid; place-items: center; border: 1px solid #ead6bb; background: #fff; border-radius: 12px; }
.receipt-logo-thumb img { max-width: 92px; max-height: 92px; object-fit: contain; }
.receipt-logo-editor p { margin-top: 5px; font-size: 11px; color: #8e7154; }
.receipt-reset { display: block; padding: 8px 0 0; color: #a65022; text-decoration: underline; font-size: 11px; }
.receipt-logo-options { display: flex; align-items: center; gap: 26px; margin-top: 13px; }
.receipt-logo-options .receipt-toggle { flex: 1; }
.receipt-logo-width { display: flex; flex-direction: column; gap: 5px; font-size: 11px; }
.receipt-logo-width input { width: 100px; padding: 8px 10px; font-size: 13px; }
.receipt-font-stepper { display: flex; align-items: stretch; }
.receipt-font-stepper button { min-width: 38px; border: 1px solid #dcb890; background: #fff1d7; color: #80441d; font-size: 21px; }
.receipt-font-stepper button:first-child { border-radius: 8px 0 0 8px; }
.receipt-font-stepper button:last-child { border-radius: 0 8px 8px 0; }
.receipt-font-stepper input { border-radius: 0; text-align: center; padding: 8px; }
.receipt-toggle { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 10px 0; font-size: 13px; cursor: pointer; }
.receipt-toggle strong { font-size: 13px; font-weight: 500; }
.receipt-toggle small { display: block; margin-top: 4px; font-size: 10px; color: #8b6c4d; line-height: 1.6; }
.receipt-toggle input { appearance: none; -webkit-appearance: none; width: 42px; min-width: 42px; height: 24px; padding: 0; margin: 0; border: 1px solid #bfbaa9; border-radius: 20px; background: #d6d3c8; position: relative; cursor: pointer; }
.receipt-toggle input::before { content: ''; position: absolute; top: 2px; left: 2px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px #52371933; transition: left .12s; }
.receipt-toggle input:checked { background: #438a70; border-color: #438a70; }
.receipt-toggle input:checked::before { left: 20px; }
.receipt-text-field { margin: 5px 0 12px; }
.receipt-text-field textarea { min-height: 66px; }
.receipt-settings-preview { position: sticky; top: 22px; max-height: calc(100vh - 45px); overflow: auto; padding: 0 6px 12px; }
.receipt-settings-preview .section-title { margin-bottom: 14px; }
.receipt-settings-preview .section-title h3 { font-size: 14px; }
.receipt-preview-paper { width: var(--receipt-paper-width,80mm); max-width: 100%; margin: 0 auto; padding: 5mm 4mm; border: 1px solid #dfd3bf; background: #fff; box-shadow: 0 5px 18px #5f43110c; color: #222; line-height: 1.5; font-family: Tahoma,'Leelawadee UI',sans-serif; }
.receipt-preview-paper h3 { text-align: center; font-size: 1.15em; margin: 8px 0; color: #222; }
.receipt-preview-paper p { font-size: .85em; text-align: center; white-space: pre-line; overflow-wrap: anywhere; }
.receipt-preview-logo { text-align: center; line-height: 0; }
.receipt-preview-logo img { max-width: 100%; max-height: 40mm; object-fit: contain; }
.receipt-preview-paper .receipt-rule { border-top: 1px dashed #aaa; margin: 12px 0; }
.receipt-preview-paper .receipt-line { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 7px; font-size: .9em; }
.receipt-preview-paper .receipt-line > span:last-child { white-space: nowrap; }
.receipt-preview-paper .receipt-total { font-size: 1.1em; font-weight: bold; }
.receipt-preview-paper .receipt-vat-note { margin: 3px 0 10px; }
@media (max-width:1150px) { .receipt-design-layout { grid-template-columns: minmax(0,1fr) 290px; gap: 18px; } .receipt-design-panel { padding-left: 18px; padding-right: 18px; } .receipt-logo-options { gap: 16px; } }
@media (max-width:760px) { .receipt-design-layout { grid-template-columns: 1fr; } .receipt-settings-preview { position: static; max-height: none; padding-top: 10px; } }


/* dashboard.css */
.dashboard{font-size:15px}.dashboard h2{font-size:19px;margin:0 0 20px}.dash-range{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:18px;background:#fff1d5;border:1px solid #f2c998;border-radius:16px}.dash-presets{display:flex;gap:8px;margin-right:auto}.dash-range label{display:grid;gap:5px;font-size:12px}.dash-range input{max-width:175px}.dash-period{display:flex;justify-content:space-between;gap:15px;margin:22px 0 14px;font-weight:700}.dash-period span{font-weight:400;color:#846346}.dash-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.dash-stat{padding:22px;background:#fff;border:1px solid #edcfad;border-radius:18px;display:flex;flex-direction:column;gap:10px}.dash-stat strong{font-size:clamp(25px,2.5vw,38px);letter-spacing:-1px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.dash-stat small{font-size:12px;line-height:1.5}.dash-stat.orange{background:#ffdfad;border-color:#f8ac5c}.dash-stat.mint{background:#d6eee3;border-color:#8fc5b1}.dash-stat.pink{background:#ffe1dd}.dash-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.dashboard>.panel{margin-bottom:20px}.dashboard .panel{min-width:0;padding:24px;border-radius:18px}.dash-section-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.dash-section-title>span{font-size:12px;color:#806248}.dash-chart{height:210px;display:flex;align-items:end;gap:5px;border-bottom:1px solid #e9cfb4;margin:25px 0 35px;padding-top:10px}.dash-bar-slot{height:100%;flex:1;min-width:0;display:flex;align-items:end;position:relative}.dash-bar{width:100%;max-width:56px;margin:0 auto;background:linear-gradient(#ffb947,#ff8134);border-radius:6px 6px 0 0}.dash-bar-slot small{position:absolute;bottom:-23px;left:50%;transform:translateX(-50%);font-size:10px}.dash-note{font-size:12px;color:#85694f;line-height:1.7;margin:15px 0 0}.dash-empty{padding:24px 0;color:#917861}.dash-payment{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.dash-payment small{display:block;font-size:11px;color:#84674e}.dash-payment strong{font-size:20px}.dash-meter{height:7px;background:#f7ecdc;border-radius:20px;margin:9px 0;overflow:hidden}.dash-meter i{display:block;background:#54a58e;height:100%;border-radius:20px}.dash-tax{border-top:1px dashed #dfba96;margin-top:20px;padding-top:10px}.dash-tax span{display:flex;justify-content:space-between;font-size:12px;margin:10px 0}.dash-kind{padding:16px 0;border-bottom:1px solid #eee0cb}.dash-kind>strong{display:block;font-size:27px;margin:6px 0}.dash-kind small{font-size:12px}.dash-kind:nth-of-type(2) .dash-meter i{background:#ee947e}.dashboard table{font-size:14px}.dashboard td small{display:block;font-size:11px;color:#997858}.dash-checks details{border-top:1px solid #ead6be;padding:16px 0}.dash-checks summary,.dash-details summary{cursor:pointer;font-weight:600}.dash-checks summary b{float:right;color:#a14c20;font-size:13px}.dash-scroll{max-height:300px;overflow:auto;margin-top:15px}.dash-details table{margin-top:15px}.dashboard .dash-details{font-size:13px}@media(max-width:1100px){.dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}.dash-presets{width:100%}}@media(max-width:600px){.dash-stats{gap:8px}.dash-stat{padding:14px}.dash-period{flex-direction:column}.dashboard .panel{padding:16px}.dash-range input{width:135px}.dash-section-title{flex-wrap:wrap}.dash-checks summary b{float:none;margin-left:10px}}
.graph-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:5px 0 12px}.graph-toggle{display:flex;padding:4px;background:#fff4e1;border-radius:10px;gap:3px}.graph-toggle button{border:0;border-radius:7px;padding:8px 13px;background:transparent;font:inherit;font-size:13px;cursor:pointer;color:#735236}.graph-toggle button.selected{background:#fff;box-shadow:0 2px 6px #8d6e4020;color:#b44c13;font-weight:700}.graph-toolbar label{display:flex;gap:8px;align-items:center;font-size:12px}.graph-toolbar select{width:auto;padding:7px 25px 7px 9px;min-height:34px}.trend-scroll{overflow-x:auto}.trend-svg{width:100%;height:auto;min-width:460px;display:block;font:12px Tahoma,sans-serif;color:#795d45}.trend-svg text{fill:#795d45}.trend-svg .graph-peak{font-size:14px;font-weight:700;fill:#934d21}.graph-caption{font-size:12px;line-height:1.7;color:#866950;margin:12px 0 18px}.donut-layout{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.donut-svg{width:210px;max-width:100%;flex-shrink:0;font-family:Tahoma,sans-serif}.donut-label{font-size:11px;fill:#846d57}.donut-total{font-size:22px;font-weight:700;fill:#624126}.donut-legend{flex:1;min-width:160px}.donut-legend>div{padding:14px 0;border-bottom:1px solid #f2e7d7}.donut-legend span{font-size:14px}.donut-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px}.donut-legend strong{float:right;font-size:17px;color:#624126}.donut-legend b{display:block;margin:8px 0 3px;font-size:21px}.donut-legend small{font-size:12px;color:#896e56}.dash-summary-grid{grid-template-columns:1fr 1fr}.finance-row{margin:22px 0}.finance-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin-bottom:9px}.finance-row strong{font-size:18px}.finance-track{position:relative;height:18px;background:#faf5ed;border-radius:5px;overflow:hidden}.finance-track b{position:absolute;height:100%;border-radius:4px;min-width:0}.finance-zero{position:absolute;height:100%;border-left:1px solid #bca689;z-index:1}.ranking-chart{display:grid;grid-template-columns:1fr 1fr;gap:20px 34px}.ranking-label{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin-bottom:8px}.ranking-label>span{overflow-wrap:anywhere}.ranking-label span b{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:6px;background:#fff0d6;margin-right:8px;color:#98602d}.ranking-label>strong{white-space:nowrap}.ranking-track{height:10px;border-radius:8px;background:#f8efdf;overflow:hidden}.ranking-track i{display:block;height:100%;border-radius:8px}.ranking-row small{display:block;font-size:11px;margin-top:5px;color:#896c53}@media(max-width:1100px){.dash-summary-grid{grid-template-columns:1fr}}@media(max-width:700px){.ranking-chart{grid-template-columns:1fr}.donut-layout{gap:5px}.donut-svg{width:180px}.graph-toolbar{align-items:start}.graph-toolbar label{flex-wrap:wrap}.dashboard .dash-section-title h2{line-height:1.5}}


/* tax.css */
.tax-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.tax-tabs button{font:inherit;font-size:14px;padding:12px 16px;border:1px solid #edc494;background:#fff;border-radius:10px;color:#76502c;cursor:pointer}.tax-tabs button.selected{background:#ff973e;color:#572e10;border-color:#ef7525;font-weight:700}.tax-status{display:flex;gap:15px;align-items:center;background:#fff0c9;border:1px solid #edcb89;padding:16px 20px;border-radius:12px}.tax-status.registered{background:#daf0e6;border-color:#8ec3ad}.tax-status span{font-size:13px}.tax-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tax-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.tax-check{display:flex;align-items:center;gap:14px;border-bottom:1px solid #eee2cf;padding:16px 0}.tax-check span{flex:1}.tax-check>b{font-size:24px}.tax-steps{padding-left:22px;line-height:2.1}.tax-guide{margin-top:20px}.tax-guide summary{cursor:pointer;font-weight:700}.tax-guide li{margin:12px 0}.tax-search{max-width:420px;margin:12px 0}.tax-income{background:#fff9ee;padding:22px;border-radius:12px;border:1px solid #efd7b5}.tax-income .receipt-line{gap:20px;font-size:14px}.tax-checkbox{display:flex!important;align-items:center;gap:10px}.tax-checkbox input{width:18px;min-height:18px}.tax-void{opacity:.65}.tax-void td{background:#f4f1eb}.tax-review{line-height:1.8}#tax-content .panel{margin-bottom:20px}#tax-content table small{display:block;font-size:12px;color:#8e7257}#tax-content h2{font-size:20px}#tax-content table .btn{padding:7px 9px;font-size:12px;margin:3px}#tax-content .dash-stat strong{font-size:29px}@media(max-width:1150px){.tax-columns{grid-template-columns:1fr}.tax-stats{grid-template-columns:1fr 1fr}}@media(max-width:600px){.tax-status{align-items:start;flex-direction:column;gap:5px}.tax-tabs button{font-size:12px;padding:10px}.tax-stats{gap:8px}.tax-check{flex-wrap:wrap}.tax-income{padding:12px}}


/* modern-ui.css */
/* Summer Day / white workspace. Loaded after the functional layout styles. */
@font-face{font-family:SummerThai;src:url('assets/fonts/NotoSansThai.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--bg:#fff;--paper:#fff;--ink:#222b38;--muted:#647084;--line:#e7ebf0;--orange:#ff8537;--orange-dark:#bf4a0c;--orange-light:#fff1e7;--green:#247d69;--green-light:#eaf6f0;--shadow:0 4px 20px #1b29350a;--sidebar:232px}
body{font-family:SummerThai,'Leelawadee UI',Tahoma,sans-serif;background:#fff;color:var(--ink);font-size:14px;line-height:1.65}
h1,h2,h3,h4{color:#202938;letter-spacing:0}h1{font-size:27px;font-weight:700}button,input,select,textarea{font-family:inherit}button{transition:background .15s,border-color .15s,box-shadow .15s}
input,select,textarea{background:#fff;color:#283345;border:1px solid #dce2e9;border-radius:10px;padding:11px 13px;font-size:14px;line-height:1.6}input::placeholder,textarea::placeholder{color:#59677a}input:focus,select:focus,textarea:focus{outline:3px solid #ff853724;outline-offset:0;border-color:#ee8b4c}button:focus-visible,a:focus-visible{outline:3px solid #e87326;outline-offset:3px}input[type=checkbox],input[type=radio]{accent-color:#d45a14}
.sidebar{background:#fff;border-right:1px solid var(--line);padding:16px 16px 0;scrollbar-color:#dbe1e8 #fff}.brand{height:110px;border:0;border-radius:0;background:#fff;margin-bottom:18px}.brand-logo{width:178px;height:178px}.shop-card,.side-note{display:none}.nav-label{font-size:11px;font-weight:500;color:#59677a;margin:0 14px 12px}.sidebar nav{gap:6px}.sidebar nav button{min-height:46px;padding:11px 14px;font-size:14px;color:#596577;border-radius:10px;position:relative}.sidebar nav button:hover{background:#f6f8fa;color:#242e3e}.sidebar nav button.active{background:#fff0e5;color:#b8490c;box-shadow:none;font-weight:650}.sidebar nav button.active::before{content:'';position:absolute;left:0;top:13px;bottom:13px;width:3px;background:#ff8537;border-radius:4px}.sidebar .nav-tag{background:#f1f3f6;color:#59677a;font-size:9px}.side-bottom>button{color:#647084;font-size:12px;padding:16px 8px}.profile{border-color:var(--line);padding:18px 4px}.profile strong{color:#334155;font-size:12px}.profile small{color:#59677a;font-size:10px}.avatar{color:#b34a13;background:#fff0e6}.shop-dot,.green-dot,.connection i{background:#25856c}
.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);padding:0 32px}.breadcrumb,.top-tools{color:#647084;font-size:12px}.breadcrumb strong{color:#303b4e;font-weight:600}.breadcrumb span{color:#59677a}.icon-button{border-color:#e3e7ed;background:#fff;color:#59677a}.connection i{box-shadow:0 0 0 3px #e9f6f0}.modebar{background:#fff8f2;color:#94501c;border-bottom:1px solid #f6e6d9;padding:9px 32px;font-size:11px}.modebar button{color:#96501e;border-color:#ecd8c6;background:#fff;font-weight:500;border-radius:7px}.modebar.real{background:#f3faf6;color:#32705d;border-color:#e2efe8}.modebar.real button{background:#fff;border-color:#c9e1d5;color:#32705d}
.workspace main{padding:28px 32px 36px;background:#fff}.eyebrow{display:none}.page-heading{margin-bottom:26px;gap:20px;align-items:center}.page-heading p{font-size:13px;color:#59677a;margin-top:6px}.heading-actions{gap:10px}.heading-actions label{font-size:12px;color:#59677a}.subtle,.muted,.pager,.section-title small,.audit-note,.stock-info,.split-note{color:#59677a}.audit-note,.split-note{font-size:12px;line-height:1.85}.app-footer,.app-footer>span{color:#59677a;border-color:var(--line);font-size:11px}.app-footer{margin:0 32px;padding:14px 0}kbd{font-family:inherit;font-size:10px;color:#59677a;background:#f7f8fa;border:1px solid #dde3e9;box-shadow:none;border-radius:5px}
.btn{background:#fff;border-color:#dfe4ea;color:#445064;font-size:14px;min-height:42px;padding:10px 16px;border-radius:10px;box-shadow:none;font-weight:500}.btn:hover{background:#f7f9fb;border-color:#bdc7d2;color:#263449}.btn.primary{background:#d15410;color:#fff;border-color:#d15410;box-shadow:none;font-weight:600}.btn.primary:hover{background:#b9460b;border-color:#b9460b}.btn.soft{background:#fff0e5;color:#aa430c;border-color:#ffe0c9}.btn.green{background:#25846b;color:#fff;border-color:#25846b}.btn.danger{background:#fff;color:#b33c3c;border-color:#efcfcf}.btn.small{font-size:12px;min-height:34px}.badge{color:#26735e;background:#eaf6f0;font-size:11px;padding:4px 9px}.badge.peach,.migration-count{background:#fff1e4;color:#9a551c}.badge.red{background:#fff0ef;color:#b34444}
.panel,.table-panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.panel{padding:24px}.panel h3{font-size:17px;font-weight:600}.table-toolbar{padding:18px 20px}.table-toolbar input{font-size:14px;max-width:410px}.table-toolbar small{color:#59677a;font-size:12px}table,.dashboard table{font-size:14px}th{background:#f8f9fb;color:#647084;font-size:12px;font-weight:600;padding:14px 18px;border-bottom:1px solid var(--line)}td{color:#344155;padding:16px 18px;border-color:#eef1f5}tbody tr:nth-child(even){background:#fff}tbody tr:hover{background:#fafbfc}td small,.dashboard td small{color:#59677a;font-size:11px;line-height:1.7}.row-actions{gap:8px}.row-actions button{background:#f5f7fa;color:#4f5c70;font-size:12px;padding:7px 11px;border:1px solid #e8ecf1;border-radius:7px}.row-actions button:hover{background:#fff0e5;color:#a74710}.tiny-art,.cart-thumb{background:#f2f5f8}.filter-tabs{gap:8px}.filter-tabs button,.category{background:#fff;border-color:#e1e6ec;color:#637084;font-size:13px;padding:9px 15px;border-radius:9px}.filter-tabs button.active,.category.active{background:#fff0e5;color:#af470d;border-color:#ffd7b9;box-shadow:none}.filter-tabs button:hover,.category:hover{background:#fff8f2;border-color:#f1c8a9}.search-box input{border-color:#dde3eb;box-shadow:none;background:#fff;color:#29364a}.search-icon{border-color:#8590a0}.search-icon:after{background:#8590a0}.pager{font-size:12px}.pager button{background:#fff;border-color:#e2e7ee;color:#637084;font-size:12px}
.form-grid{gap:20px}.form-grid label,.field{color:#4b586d;font-size:13px;font-weight:500;gap:7px}.form-grid input,.form-grid select,.product-basic input{font-size:14px}.form-grid textarea{font-size:14px}.form-actions{gap:10px}.notice{background:#fff8ef;border-color:#f2e1c8;color:#8a5b23;font-size:13px;border-radius:10px}.notice.green{background:#f0f9f4;color:#326b54;border-color:#d9ede1}.form-error,.checkout-error{color:#b33333;font-size:13px}.inline-warning{color:#a45c15;font-size:12px}.product-kind label{background:#fff;border-color:#e2e7ee;color:#4e5d70;font-size:13px}.product-kind label:has(input:checked){background:#fff3e9;border-color:#f3be97;color:#9b4513}.product-more{background:#fafbfc;border-color:#e4e9ef;padding:14px}.product-more summary{color:#4f5e72;font-size:13px}.product-more label small,.product-basic label small,.keyboard-hint{color:#59677a;font-size:11px}.import-drop{background:#fafbfc;border-color:#cbd5df}.import-drop>span{color:#e47b35}.import-drop p{color:#59677a;font-size:13px}.import-summary>div{background:#f7f9fb}.import-summary strong{color:#29364a}.import-summary small{color:#647084;font-size:12px}
dialog{background:#fff;border:1px solid #e5e9ef;border-radius:18px;box-shadow:0 24px 90px #15233730;color:#29364a}dialog::backdrop{background:#18243566;backdrop-filter:blur(3px)}.modal-header{background:#fff;border-color:#edf0f4;padding:21px 25px}.modal-header h2{font-size:20px;color:#273448}.modal-header button{color:#59677a}.modal-body>p{color:#59677a;font-size:14px}.modal-total{background:#fff5ed;color:#75553e;border:1px solid #ffe2cc}.modal-total strong{color:#b8480c}.payment-options button{background:#fff;border-color:#e0e6ed;color:#526176;font-size:14px}.payment-options button.active{background:#fff0e4;color:#ad460e;border-color:#efb58a}.cash-input{color:#25334a;font-size:30px}.quick-cash button{background:#f8fafc;border-color:#e0e6ee;color:#506076;font-size:13px}.quick-cash button:hover{background:#fff1e7}.change-row{color:#647084}.change-row strong{color:#207b60}.help-grid p,.help-grid li{color:#5f6e82;font-size:13px}.cashier-menu .btn{font-size:14px;padding:15px;min-height:58px;border-color:#e4e8ee}.cashier-menu .btn.soft{background:#fff0e5;color:#a7440e;border-color:#f7cfb2}.receipt-frame{border-color:#e2e7ed;background:#f5f7fa}#toast{background:#263449;color:#fff;box-shadow:0 6px 24px #14213520;font-size:14px}.empty-state{background:#fafbfc;border-color:#dde4ec}.empty-state h3{color:#4b5d73}.empty-state p{color:#59677a;font-size:13px}
/* White dashboard cards keep color for the actual numbers and charts. */
.dashboard{font-size:14px}.dashboard .panel{border-radius:14px;padding:24px}.dash-range{background:#f8f9fb;border-color:#e8ecf1;padding:16px;border-radius:12px;gap:12px}.dash-range label{color:#59677a;font-size:12px}.dash-range input{font-size:13px}.dash-presets .btn{font-size:13px}.dash-period{color:#354358;font-size:14px;margin:24px 0 16px}.dash-period span{color:#59677a;font-size:13px}.dash-stats{gap:18px}.dash-stat,.dash-stat.orange,.dash-stat.mint,.dash-stat.pink{background:#fff;border:1px solid #e7ebf0;box-shadow:var(--shadow);border-radius:14px;padding:22px 24px;position:relative;border-top:3px solid #f4a56e}.dash-stat:nth-child(2){border-top-color:#9baac0}.dash-stat:nth-child(3){border-top-color:#d8b9a0}.dash-stat:nth-child(4){border-top-color:#67ad99}.dash-stat>span{color:#59677a;font-size:13px}.dash-stat strong{color:#202e42;font-size:32px;font-weight:700;letter-spacing:-.6px;line-height:1.3}.dash-stat small{color:#59677a;font-size:12px}.dash-section-title>span,.dash-note,.graph-caption{color:#59677a}.dash-section-title h2,.dashboard h2{font-size:18px;color:#2b394f}.dash-empty{color:#59677a}.dash-payment strong,.dash-kind>strong{color:#29364a}.dash-payment small,.dash-kind small,.dash-tax,.ranking-row small{color:#59677a}.dash-meter,.finance-track,.ranking-track{background:#f1f4f8}.dash-tax,.dash-kind,.donut-legend>div,.dash-checks details{border-color:#e8edf2}.graph-toggle{background:#f3f5f8;border-radius:9px}.graph-toggle button{color:#59677a;font-size:13px}.graph-toggle button.selected{color:#af480e;background:#fff;box-shadow:0 1px 5px #152a4410}.graph-toolbar label{color:#59677a}.graph-toolbar select{border-color:#e1e6ed}.trend-svg,.donut-svg{font-family:SummerThai,sans-serif}.trend-svg text{fill:#59677a}.trend-svg .graph-peak{fill:#b84c0e}.donut-total,.donut-legend strong,.donut-legend b{fill:#26354c;color:#26354c}.donut-label,.donut-legend small{fill:#59677a;color:#59677a}.ranking-label{color:#42526a}.ranking-label span b{background:#fff0e5;color:#b84c0e}.dash-checks summary b{color:#aa4e15}.finance-row{color:#4c5c72}.finance-zero{border-color:#bdc8d5}.tax-status{background:#fff8f1;border-color:#f1ddcb;color:#8b4e22}.tax-status.registered{background:#f1f9f5;color:#317257;border-color:#d5eade}.tax-tabs{gap:8px;margin:22px 0}.tax-tabs button{background:#fff;color:#5c6a7e;border-color:#e0e6ed;font-size:13px;padding:10px 14px;border-radius:9px}.tax-tabs button.selected{background:#fff0e5;border-color:#f5c8a6;color:#ab460e}.tax-check{border-color:#e9edf3}.tax-check>b{color:#34465f}.tax-steps{color:#59677a;line-height:2.2;font-size:13px}.tax-income{background:#fafbfc;border-color:#e8edf2}.tax-income .receipt-line{color:#56667d}.tax-income b{color:#27364d}#tax-content table small{color:#59677a}.tax-guide{color:#59677a;font-size:13px}.tax-guide a{color:#b6490d;text-decoration:underline}
/* Keep the established cashier proportions and keyboard flow. */
.cashier-mode,.cashier-shell{background:#fff}.cashier-header{background:#fff;border-bottom:1px solid #e7ebf1;color:#29364a;height:76px;padding:9px 20px}.cashier-header h1{color:#2b394e;font-size:22px}.cashier-menu-toggle{background:#fff;border-color:#e0e6ed;color:#59677a;border-radius:10px}.cashier-logo-frame{background:#fff;border:0}.cashier-store{color:#2c394d;font-size:16px}.cashier-store small{color:#59677a;font-size:11px}.cashier-header-tools{color:#59677a;font-size:12px}.cashier-mode-switch,.cashier-low{background:#f8fafc;border-color:#e5eaf0;color:#59677a;border-radius:8px;padding:8px 11px}.cashier-mode-switch{background:#fff1e6;border-color:#f8dcc7;color:#a34c16}.cashier-low.has-low{background:#fff3ec;color:#ab501b;border-color:#f3d6c2}.cashier-ready{color:#59677a}.cashier-searchbar{background:#fff;border-color:#e9edf2;padding:14px 0}.cashier-categories select,.cashier-searchbar .search-box input{border-color:#dfe5ec;border-radius:10px;height:44px;background:#f9fafc;font-size:14px}.cashier-key-hint{color:#59677a;font-size:12px}.cashier-layout .catalog-panel{background:#fafbfc;padding:16px 14px 0}.cashier-layout .catalog-meta h2{color:#4f6077;font-size:14px}.cashier-layout .catalog-meta small{color:#59677a;font-size:11px}.cashier-layout .product-card{border-color:#e6ebf1;border-radius:12px;box-shadow:0 2px 6px #20304b03;background:#fff}.cashier-layout .product-card:hover{border-color:#f0985c;box-shadow:0 3px 14px #d66c1420}.cashier-layout .product-card .product-art,.product-card:nth-child(n) .product-art{background:#f4f6f8;border-radius:9px}.product-illustration{filter:none}.cashier-layout .product-copy .product-name{color:#34445b;font-size:13px;font-weight:500}.cashier-layout .price-row strong{color:#b84c0f;font-size:17px;font-weight:650}.cashier-layout .stock-label{background:#ffffffed;border-color:#e5e9ee;color:#59677a;font-size:9px}.cashier-layout .stock-label.low{background:#fff1e9;color:#a64b18;border-color:#f2d1b8}.favorite-toggle{background:#ffffffec;border-color:#e3e8ef;color:#59677a}.favorite-toggle.is-favorite{background:#fff0e4;color:#e67b2e;border-color:#ffd6b7}.cashier-layout .cart{border-color:#e4e9ef}.cashier-layout .cart-head{border-color:#e8edf3;background:#fff;padding:17px 20px}.cashier-layout .cart-head h2{color:#26364d;font-size:18px}.cashier-layout .cart-head h2 span{background:#f1f4f8;color:#59677a;font-size:12px}.cart-table-head{background:#f8fafc;color:#59677a;border-color:#e9edf2;font-size:12px;padding:10px 20px}.cashier-layout .cart-line{border-color:#edf1f5}.cashier-layout .cart-line-copy strong{color:#34445a;font-size:15px}.cashier-layout .cart-line-copy small{color:#59677a;font-size:11px}.cashier-layout .cart-thumb{background:#f5f7f9}.cashier-layout .cart-line-total{color:#34445c;font-size:16px}.cashier-layout .qty-control button{background:#f7f9fb;border-color:#e2e8ef;color:#53667f}.cashier-layout .qty-control input{color:#33445d}.cashier-layout .cart-line-total button{color:#59677a}.cashier-layout .cart-summary{background:#fff;border-color:#e6ebf1;padding:20px 24px}.cashier-layout .summary-row{color:#59677a;font-size:13px}.cashier-layout .summary-row.total{border-color:#e5eaf0;color:#29384e;font-size:17px}.cashier-layout .summary-row.total strong{color:#bc4d0e;font-size:54px;font-weight:700;letter-spacing:-1px}.cashier-layout .checkout-btn{background:#ff8537;color:#2d2018;border:1px solid #ff8537;box-shadow:none;border-radius:12px;font-size:18px;min-height:56px;font-weight:650}.cashier-layout .checkout-btn:hover{background:#ff984f}.checkout-btn kbd{background:#ffffff42;border-color:#e47025;color:#55331d;font-size:11px}.cashier-layout .cart-empty h3{color:#59677a;font-size:17px}.cashier-layout .cart-empty p{color:#59677a;font-size:13px}.cashier-layout .cart-empty>div{color:#bdc8d5}.cashier-tools{background:#fff}.cashier-tool-section{border-color:#e9edf3;padding:20px}.cashier-tool-section h2{color:#5a6b82;font-size:14px}.cashier-tool-grid .btn{background:#fff;border-color:#e4e9f0;color:#55677f;border-radius:9px;font-size:12px;box-shadow:none}.cashier-tool-grid .btn:hover{background:#fff4ec;border-color:#f0c3a0}.cashier-tool-grid kbd{color:#59677a;background:#f8fafc;border-color:#e5eaf0}.cashier-discount{color:#59677a;font-size:13px}.cashier-discount input{border-color:#e0e7ef;color:#30435f}.cashier-vat .vat-options,.vat-options{background:#f4f6f9;border-color:#e2e8ef}.vat-options button{color:#59677a}.vat-options button.selected{background:#fff;border-color:#dfe5ed;color:#40536e}.vat-options button.vat-on{background:#fff0e4;border-color:#f0c4a0;color:#ad4a13}.cashier-vat .vat-help,.vat-help,.cashier-vat>span{color:#59677a;font-size:11px}.cashier-vat strong{color:#4b617e}.cashier-note{border-color:#e5ebf2;color:#59677a}.cashier-note input{background:#fff;border-color:#e3e9f1}.cashier-local,.cashier-local button{color:#59677a;font-size:11px}.cashier-local span{color:#367c68}.sale-result-label,.sale-result-summary strong{color:#34435b}.sale-result-amount{color:#c64f0d}.sale-result-summary{border-color:#e7ecf2}.sale-result-summary span,.sale-result-reference,.receipt-choice-hint,.sale-result-receipt summary{color:#59677a}.sale-result-close.btn{font-size:18px}
.receipt-design-section,.receipt-logo-thumb{border-color:#e6ebf1}.receipt-design-section h3{color:#34445c}.receipt-logo-editor p,.receipt-toggle small{color:#59677a;font-size:12px}.receipt-toggle strong{color:#4e6079;font-size:14px}.receipt-reset{color:#bc4d0e;font-size:12px}.receipt-font-stepper button{background:#f7f9fc;border-color:#dde5ef;color:#526780}.receipt-toggle input:checked{background:#d65d17;border-color:#d65d17}.receipt-logo-width{color:#59677a;font-size:12px}
@media(min-width:1550px){.workspace main{padding:32px 40px}.cashier-layout .product-copy .product-name{font-size:14px}.cashier-layout .products-grid{gap:12px}.cashier-layout .cart-line-copy strong{font-size:16px}}
@media(min-width:901px) and (max-width:1190px){:root{--sidebar:210px}.sidebar{padding-inline:12px}.sidebar nav button{font-size:13px;padding-inline:12px}.workspace main{padding:24px}.topbar,.modebar{padding-inline:24px}}
@media(min-width:681px) and (max-width:900px){:root{--sidebar:72px}.sidebar{padding:14px 8px}.brand{height:55px;margin-bottom:22px}.brand-logo{width:80px;height:80px}.sidebar nav button{padding:12px 0}.workspace main{padding:24px}}
@media(max-width:760px){.cashier-header{height:68px;padding:8px 12px}.cashier-header h1{font-size:18px}.cashier-header-tools{font-size:10px}.cashier-mode-switch,.cashier-low{padding:7px;font-size:10px}.cashier-searchbar{padding:12px 0}.cashier-searchbar .search-box input,.cashier-categories select{font-size:12px}.cashier-layout .cart-summary{padding:16px 18px}.cashier-layout .summary-row.total strong{font-size:44px}.cashier-layout .cart-head{padding:14px 18px}.cashier-layout .cart-line-copy strong{font-size:13px}.cashier-layout .cart-line-total{font-size:14px}.cashier-tool-section{padding:16px}.cashier-menu .btn{font-size:13px}.cashier-vat .vat-help{font-size:11px}}
@media(max-width:680px){:root{--sidebar:0px}.workspace main{padding:22px 16px}.topbar{padding-inline:16px}.modebar{padding:9px 16px;font-size:10px;gap:12px}.modebar button{font-size:10px}.page-heading{flex-wrap:wrap;gap:14px;margin-bottom:22px}.page-heading h1{font-size:23px}.page-heading p{font-size:12px}.page-heading .heading-actions{max-width:none;width:100%;justify-content:flex-start}.heading-actions .btn{font-size:12px;min-height:38px;padding:9px 12px}.app-footer{margin-inline:16px}.dash-stat{padding:16px!important}.dash-stat strong,#tax-content .dash-stat strong{font-size:26px}.dash-stat>span,.dash-stat small{font-size:12px}.dashboard .panel,.panel{padding:18px}.dash-range{padding:12px}.dash-stats{gap:10px}.modal-body{padding:20px}.form-grid label{font-size:13px}.tax-tabs button{font-size:12px;padding:9px 12px}.tax-status{padding:14px 16px}.tax-status span{font-size:12px}.cashier-mode #main{padding:0}.cashier-layout .summary-row.total{font-size:15px}.cashier-layout .products-grid{gap:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
/* Soft action colors distinguish neighboring cashier controls. */
.category-searchbar{display:flex;align-items:center;gap:18px;margin:0 0 22px}.category-searchbar input{width:100%;max-width:600px}.category-searchbar span{white-space:nowrap}.category-list{display:grid;gap:12px}.category-card{display:flex;align-items:center;gap:18px;border:1px solid #e7ebf0;border-radius:14px;padding:20px 22px;background:#fff;box-shadow:0 3px 12px #20304b06}.category-symbol{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#fff0df;color:#b85b1d;font-size:27px;flex-shrink:0}.category-card:nth-child(3n+2) .category-symbol{background:#e3f2ec;color:#377762}.category-card:nth-child(3n) .category-symbol{background:#e7effb;color:#486d9a}.category-copy{flex:1;min-width:0}.category-copy h2{font-size:16px;margin:0;overflow-wrap:anywhere}.category-copy p{margin:4px 0 0;color:#59677a;font-size:13px}.category-actions{display:flex;gap:8px;flex-wrap:wrap}.category-actions .btn:disabled{opacity:.4;cursor:not-allowed}.table-toolbar:has(#stock-category){flex-wrap:wrap;gap:12px}#stock-category{max-width:260px;width:100%;font-size:13px}.heading-actions{flex-wrap:wrap}.category-list+.pager{margin-top:18px}@media(max-width:680px){.category-card{padding:16px;gap:12px;flex-wrap:wrap}.category-actions{width:100%;justify-content:flex-end}.category-searchbar{gap:10px}.category-searchbar span{font-size:11px}}
.held-row{gap:14px;border-bottom:1px solid #e7ebf0}.held-row .cart-line-copy{min-width:0;overflow-wrap:anywhere}.held-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.held-actions .held-delete{display:grid;place-items:center;width:38px;min-height:38px;padding:0;font-size:25px;line-height:1;background:#fce6e5;color:#963f3a;border-color:#e7b2ae}.held-actions .held-delete:hover{background:#f7d4d2;border-color:#963f3a}
.cashier-tool-grid .btn[data-action="hold"]{--tool-bg:#fff0cc;--tool-border:#e8c578;--tool-ink:#795015;--tool-hover:#ffe6ab}
.cashier-tool-grid .btn[data-action="held"]{--tool-bg:#ddf2e9;--tool-border:#a3d4c0;--tool-ink:#24644e;--tool-hover:#c9e9dc}
.cashier-tool-grid .btn[data-action="clear-cart"]{--tool-bg:#fce6e5;--tool-border:#e7b2ae;--tool-ink:#963f3a;--tool-hover:#f7d4d2}
.cashier-tool-grid .btn[data-page="sales"]{--tool-bg:#e5eefb;--tool-border:#b8cceb;--tool-ink:#355d8a;--tool-hover:#d5e3f7}
.cashier-tool-grid .btn[data-action="edit-product"]{--tool-bg:#ffead9;--tool-border:#efc09a;--tool-ink:#934b1d;--tool-hover:#ffdcc0}
.cashier-tool-grid .btn[data-page="stock"]{--tool-bg:#e9e7f5;--tool-border:#c9c2e4;--tool-ink:#635184;--tool-hover:#dcd7ed}
.cashier-tool-grid .btn[data-action]{background:var(--tool-bg,#f3f6fa);border-color:var(--tool-border,#dae1eb);color:var(--tool-ink,#445064);font-weight:600}
.cashier-tool-grid .btn[data-action]:hover{background:var(--tool-hover,#e9eef5);border-color:var(--tool-ink,#718095)}
.cashier-tool-grid .btn kbd,.cashier-tool-grid .btn .badge{background:#ffffffa8;color:inherit;border:1px solid #ffffffd9}
.cashier-tool-section:first-child{background:#fafbfe}.cashier-layout .cart-head{background:#fff5ed}.cashier-layout .cart-head h2 span{background:#ffe3cb;color:#935023}


/* ui-depth.css */
/* Summer Day: white surfaces, orange accents, and soft elevation. */
:root{--shadow:0 10px 28px #49321c12,0 2px 6px #49321c08;--surface-shadow:0 7px 20px #4b372314,0 1px 3px #4b372308;--control-shadow:0 3px 9px #4334230d;--line:#eee9e3}
body,.workspace{background:#fcfbf9}.workspace main{background:transparent}
.sidebar{border-right:1px solid #f1e9e0;box-shadow:5px 0 24px #4b372309;background:#fff}
.sidebar nav button{border-radius:12px}.sidebar nav button.active{background:linear-gradient(125deg,#fff0df,#ffe1c3);color:#974009;box-shadow:0 5px 13px #d9742220}.sidebar nav button.active::before{top:12px;bottom:12px;background:#ee781f}
.topbar{border-top:3px solid #ff963e;border-bottom:1px solid #f3ebe3;box-shadow:0 3px 16px #5d3a1808}.modebar{background:#fff9f3;border-color:#f3e9df}
.page-heading h1{letter-spacing:-.4px}.page-heading h1::after{content:'';display:block;width:36px;height:4px;border-radius:8px;background:linear-gradient(90deg,#ff8b31,#ffc268);margin-top:10px}
.panel,.table-panel,.dashboard .panel,.category-card{border-color:#f0ebe5;border-radius:18px;box-shadow:var(--shadow);background:#fff}
.dashboard .panel{padding:26px}.dashboard .panel h2{font-weight:650}
.dash-stat,.dash-stat.orange,.dash-stat.mint,.dash-stat.pink{background:linear-gradient(145deg,#fff,#fffcf8);border:1px solid #f1e6da;border-radius:18px;box-shadow:var(--shadow);border-top:4px solid #ff9e46}
.dash-stat:nth-child(2){border-top-color:#ffc078}.dash-stat:nth-child(3){border-top-color:#e5b08e}.dash-stat:nth-child(4){border-top-color:#f37d31}
.dash-stat:first-child{background:linear-gradient(135deg,#fff3e2,#fff)}.dash-stat:first-child strong{color:#b84c0e}
.dash-range{background:#fff;border:1px solid #f1e9e0;box-shadow:var(--surface-shadow);border-radius:16px}
.graph-toggle{background:#fff2e5;box-shadow:inset 0 1px 3px #924d0d09}.graph-toggle button.selected{box-shadow:0 3px 9px #9b5b2420;color:#a54811}
.dash-meter,.finance-track,.ranking-track{background:#f6f1eb}.table-toolbar{background:#fff;border-radius:18px 18px 0 0}th{background:#fff7ef;color:#7f5c40;border-color:#f1e4d7}tbody tr:hover{background:#fffaf5}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea{border-color:#e8e1da;border-radius:11px;box-shadow:var(--control-shadow);background:#fff}
input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,select:focus,textarea:focus{border-color:#ed984f;box-shadow:0 0 0 3px #ff9d4924,0 4px 12px #a86b2920;outline:none}
.btn{border-color:#e9e2db;box-shadow:0 3px 8px #51371d0c;border-radius:11px}.btn:hover{border-color:#e4b48e;background:#fff7ee;box-shadow:0 5px 13px #a66b2920}.btn.primary{background:linear-gradient(125deg,#d5590c,#bd4609);border-color:#c44b09;box-shadow:0 6px 14px #d5643033;color:#fff}.btn.primary:hover{background:linear-gradient(125deg,#c84c06,#a83b05);box-shadow:0 8px 18px #c65b353b}.btn.soft{background:#fff0de;color:#a54710;border-color:#f4cfac}.btn:disabled{box-shadow:none}
.filter-tabs button,.tax-tabs button{box-shadow:0 3px 8px #51371d0a}.filter-tabs button.active,.tax-tabs button.active{background:#ffecd7;box-shadow:0 4px 11px #cb782621;border-color:#f6c89d;color:#a2440b}
.category-card{padding:22px 24px}.category-symbol,.category-card:nth-child(3n+2) .category-symbol,.category-card:nth-child(3n) .category-symbol{background:linear-gradient(145deg,#fff2dd,#ffe2bd);color:#b65b15;box-shadow:0 5px 11px #c77c2420;border:1px solid #fff5e7}
.category-actions .btn.danger,.btn.danger{background:#fff3f0;border-color:#edcdc4;color:#a24432}
dialog{border:1px solid #fff;border-radius:22px;box-shadow:0 28px 90px #30251c40,0 6px 18px #30251c18}.modal-header{background:linear-gradient(110deg,#fff4e5,#fff);border-bottom:1px solid #f1e3d4}.modal-total{box-shadow:0 5px 15px #b86e2020}.product-more{background:#fffcf8;border-color:#eee3d7;box-shadow:0 3px 10px #a66a1d09}
.cashier-shell{background:#faf8f5}.cashier-header{background:#fff;border-top:4px solid #ff963e;border-bottom:1px solid #f0e7dd;box-shadow:0 4px 15px #51371d0c;position:relative;z-index:2}
.cashier-menu-toggle{background:#fff2e1;color:#a4531a;border-color:#f2d6b9;box-shadow:0 3px 8px #9a5e2015}.cashier-header h1{color:#a44a11}.cashier-searchbar{background:transparent;border-bottom:0;padding:14px 0 10px}.cashier-categories select,.cashier-searchbar .search-box input{background:#fff;border-color:#ebdfd1;box-shadow:0 5px 14px #593d2310}
.cashier-layout.pos-layout{gap:12px;padding:4px 14px 14px}.cashier-layout .catalog-panel,.cashier-layout .cart,.cashier-tools{border:1px solid #eee5da;border-radius:18px;background:#fff;box-shadow:var(--surface-shadow)}
.cashier-layout .catalog-panel{padding:16px 10px 0}.cashier-layout .catalog-meta{padding-inline:4px}.cashier-layout .catalog-meta h2{color:#955225;font-weight:600}
.cashier-layout .products-grid{padding:3px 4px 10px;gap:10px}.cashier-layout .product-card{border-color:#eee5db;border-radius:13px;box-shadow:0 4px 9px #75533312}.cashier-layout .product-card:hover{border-color:#f1a05f;box-shadow:0 5px 13px #b36b2326}.cashier-layout .product-card .product-art{background:linear-gradient(145deg,#fff8ed,#f5f2ec)}
.cashier-layout .cart-head{background:linear-gradient(115deg,#ffedda,#fff9f2);border-bottom:1px solid #f5dfc8}.cashier-layout .cart-head h2{color:#914819}.cart-table-head{background:#fffaf5;color:#695442;border-color:#f2e8de}.cashier-layout .cart-summary{background:linear-gradient(180deg,#fff,#fffaf5);border-top:1px solid #f0e3d6}.cashier-layout .summary-row.total{border-color:#f1dfcc}.cashier-layout .summary-row.total strong{color:#b8490c}
.cashier-layout .checkout-btn{background:linear-gradient(110deg,#ffb349,#ff8433);border-color:#fb8b34;box-shadow:0 7px 16px #ef872b40;color:#4e290d}.cashier-layout .checkout-btn:hover{background:linear-gradient(110deg,#ffbf65,#ff9547);box-shadow:0 9px 20px #ef872b48}.cashier-layout .checkout-btn:disabled{box-shadow:none}
.cashier-tool-section:first-child{background:linear-gradient(150deg,#fff8ef,#fff)}.cashier-tools{overflow-y:auto}.cashier-tool-section{padding:18px 16px;border-color:#f1e5d9}.cashier-tool-section h2{color:#8d572d;font-weight:600}.cashier-tool-grid{gap:10px}.cashier-tool-grid .btn[data-action]{box-shadow:0 4px 9px #5e40221a;border-top-color:#ffffffd9;min-height:45px}.cashier-tool-grid .btn[data-action]:hover{box-shadow:0 6px 12px #5e402226}.cashier-tool-grid kbd{box-shadow:0 1px 3px #51371d0b}.cashier-local{padding-inline:16px}
.cashier-vat .vat-options{box-shadow:inset 0 1px 4px #51371d0c;background:#f7f3ed}.vat-options button.selected{box-shadow:0 3px 8px #68472a19}.qty-control input{box-shadow:none!important}.cashier-layout .qty-control button{box-shadow:0 2px 5px #51371d0d;background:#fff8f0;border-color:#ecdecd;color:#9a622e}
@media(max-width:1100px) and (min-width:761px){.cashier-layout.pos-layout{gap:10px;padding:4px 10px 10px}.cashier-tool-section{padding:12px}.cashier-tool-grid{gap:7px}.cashier-tool-grid .btn[data-action]{min-height:36px}}
@media(max-width:760px){.cashier-layout.pos-layout{gap:14px;padding:4px 12px 18px}.cashier-layout .cart{min-height:430px;border:1px solid #eee5da}.cashier-layout .catalog-panel{height:350px;flex:none}.cashier-tools{overflow:visible}.cashier-tool-section:first-child{border-radius:18px 0 0 0}.cashier-header{border-top-width:3px}}
@media(max-width:680px){.category-card{padding:17px}.dashboard .panel{padding:18px}.cashier-tool-section{padding:14px 12px}.cashier-tool-grid .btn[data-action]{font-size:11px}.cashier-layout .cart-summary{padding:16px}.page-heading h1::after{height:3px;margin-top:8px}}

/* Shared borderless surfaces across sales, stock, reports, tax and settings. */
.panel,.table-panel,.dashboard .panel,.dash-stat,.dash-stat.orange,.dash-stat.mint,.dash-stat.pink,
.dash-range,.category-card,.cashier-layout .catalog-panel,.cashier-layout .cart,.cashier-tools,
.cashier-layout .product-card,.cashier-layout .product-card:hover,.tax-status,.tax-income,
.notice,.notice.green,.product-more,.empty-state,.import-drop,.receipt-logo-thumb,.modal-total,dialog{
 border:0;box-shadow:var(--shadow)
}
.dash-stat,.dash-stat.orange,.dash-stat.mint,.dash-stat.pink{padding-top:26px;background:#fff}
.dash-stat:first-child{background:linear-gradient(125deg,#fff0dc,#fff9ee)}
.dash-stat:last-child{background:linear-gradient(125deg,#fff7ec,#fff)}
.category-symbol,.category-card:nth-child(3n+2) .category-symbol,.category-card:nth-child(3n) .category-symbol{border:0}
.cashier-layout .product-card{box-shadow:0 4px 12px #6e4c2517}.cashier-layout .product-card:hover{box-shadow:0 6px 18px #d17c2b2b}
.cashier-layout .cart-head,.cart-table-head,.cashier-layout .cart-summary,.cashier-tool-section,
.modal-header,.receipt-design-section{border:0}
.cashier-layout .cart-head{border-radius:18px 18px 0 0}.cashier-tool-section+.cashier-tool-section{margin-top:8px}
.cashier-tool-grid .btn[data-action],.cashier-tool-grid .btn[data-action]:hover{border-color:transparent}
.cashier-tools{background:#fff}.cashier-tool-section:first-child{border-radius:18px 18px 0 0}
.tax-status{background:linear-gradient(110deg,#fff0dd,#fff9ef)}.tax-status.registered{background:#edf8f2}
.tax-income{background:#fff8ef;border-radius:16px;padding:24px}
.tax-tabs button.selected{background:linear-gradient(120deg,#ffe8cc,#fff4e7);border-color:transparent;color:#a1440c;box-shadow:0 5px 12px #bb762320}
.receipt-design-section{padding:24px 0}.receipt-design-section+.receipt-design-section{margin-top:8px}
.receipt-logo-thumb{background:#fff;border-radius:16px}.receipt-settings-preview{padding:18px;background:#f7f5f1;border-radius:18px}
.receipt-preview-paper{border:0;box-shadow:0 12px 28px #44331d18}
.import-drop{background:linear-gradient(145deg,#fff8ef,#fff);border-radius:18px;padding:32px}
.import-summary>div{background:#fff;border:0;border-radius:14px;box-shadow:var(--surface-shadow);padding:20px}
.product-more{background:#fffcf8;border-radius:14px}.notice{background:#fff4e6;border-radius:14px}.notice.green{background:#edf8f2}
.empty-state{background:#fff;border-radius:18px}
@media(max-width:760px){.cashier-layout .cart{border:0}.cashier-tools .cashier-tool-section{border:0}.receipt-settings-preview{padding:14px}}

/* Orange leads primary actions; functional colors help locate tools quickly. */
:root{--sun-gradient:linear-gradient(120deg,#ffca32 0%,#ff9b16 45%,#ff701f 100%);--sun-hover:linear-gradient(120deg,#ffd452 0%,#ffad2f 40%,#ff842f 100%);--sun-ink:#482400;--sun-shadow:0 6px 16px #f982263d}
.btn,.row-actions button,.filter-tabs button,.tax-tabs button,.graph-toggle button,
.quick-cash button,.payment-options button,.receipt-font-stepper button,
.cashier-mode-switch,.pager button:not(:disabled){background:#f4f6f9;color:#344258;border-color:transparent;box-shadow:0 3px 8px #24344d0c;font-weight:600}
.btn:hover,.row-actions button:hover,.filter-tabs button:hover,.tax-tabs button:hover,
.graph-toggle button:hover,.quick-cash button:hover,.payment-options button:hover,
.receipt-font-stepper button:hover,.cashier-mode-switch:hover,.pager button:not(:disabled):hover{background:#e8eef5;color:#263950;border-color:transparent;box-shadow:0 5px 12px #24344d18}
.btn.soft{background:#fff0dc;color:#864113}.btn.soft:hover{background:#ffe1ba;color:#71350c}
.btn.green{background:linear-gradient(120deg,#c0f0db,#8bd9be);color:#164f3e}.btn.green:hover{background:linear-gradient(120deg,#ade9cf,#74cead);color:#164f3e}
.btn.primary,.cashier-layout .checkout-btn,.cashier-menu-toggle{background:var(--sun-gradient);color:var(--sun-ink);border-color:transparent;box-shadow:var(--sun-shadow)}
.btn.primary:hover,.cashier-layout .checkout-btn:hover,.cashier-menu-toggle:hover{background:var(--sun-hover);color:var(--sun-ink);box-shadow:0 8px 20px #f982264d}
.btn.danger,.category-actions .btn.danger,.held-actions .held-delete{background:linear-gradient(120deg,#ffe0df,#ffb8b5);color:#852e35;box-shadow:0 4px 10px #b044441a;border:0}
.btn.danger:hover,.category-actions .btn.danger:hover,.held-actions .held-delete:hover{background:linear-gradient(120deg,#ffd0cf,#ffa5a2);color:#75242b}
/* Shared page identity in navigation and cashier shortcuts. */
[data-page="sell"]{--role-gradient:var(--sun-gradient);--role-ink:var(--sun-ink);--role-shadow:#f9822633}
[data-page="stock"],[data-action="edit-product"]{--role-gradient:linear-gradient(120deg,#b2ecd5,#6ed0af);--role-ink:#164d3d;--role-shadow:#2c9c7824}
[data-page="sales"]{--role-gradient:linear-gradient(120deg,#c1e1ff,#8abef4);--role-ink:#24486c;--role-shadow:#4283c224}
[data-page="cost"]{--role-gradient:linear-gradient(120deg,#dfd2ff,#b69ced);--role-ink:#3d285f;--role-shadow:#8961bd24}
[data-page="tax"]{--role-gradient:linear-gradient(120deg,#cfd9ff,#9baeea);--role-ink:#273857;--role-shadow:#586eab24}
[data-page="receipt"]{--role-gradient:linear-gradient(120deg,#ffdae7,#f1adc7);--role-ink:#773751;--role-shadow:#c15d8524}
[data-page="settings"]{--role-gradient:linear-gradient(120deg,#e4eaf2,#bdccdd);--role-ink:#35485f;--role-shadow:#63768c24}
[data-page="import"]{--role-gradient:linear-gradient(120deg,#bceef3,#80d5df);--role-ink:#20545e;--role-shadow:#3799a624}
.cashier-menu .btn,.cashier-menu .btn.soft,.cashier-menu .btn:hover{background:var(--role-gradient);color:var(--role-ink);border:0;box-shadow:0 5px 12px var(--role-shadow);font-weight:600}
.cashier-menu .btn:hover{filter:brightness(1.04);box-shadow:0 7px 18px var(--role-shadow)}
.sidebar nav button.active{background:var(--role-gradient,var(--sun-gradient));color:var(--role-ink,var(--sun-ink));box-shadow:0 5px 12px var(--role-shadow,#f9822633);font-weight:700}
.sidebar nav button.active::before{background:currentColor;width:4px}
.filter-tabs button.active,.tax-tabs button.selected,.graph-toggle button.selected,.payment-options button.active{background:#ffe2b9;color:#71360c;box-shadow:inset 0 0 0 2px #e89838,0 3px 8px #f982261a}
.filter-tabs button:not(.active),.tax-tabs button:not(.selected),.graph-toggle button:not(.selected){background:#f1f4f8;color:#526075;box-shadow:none}
.cashier-tool-grid .btn[data-action="hold"]{--role-gradient:linear-gradient(120deg,#ffe9a1,#ffd166);--role-ink:#6c4b0c;--role-shadow:#c9962924}
.cashier-tool-grid .btn[data-action="held"]{--role-gradient:linear-gradient(120deg,#bceef3,#80d5df);--role-ink:#20545e;--role-shadow:#3799a624}
.cashier-tool-grid .btn[data-action="clear-cart"]{--role-gradient:linear-gradient(120deg,#ffe0df,#ffb8b5);--role-ink:#852e35;--role-shadow:#b044441a}
.cashier-tool-grid .btn[data-action],.cashier-tool-grid .btn[data-action]:hover{color:var(--role-ink);border:0;background:var(--role-gradient);box-shadow:0 4px 10px var(--role-shadow)}
.cashier-tool-grid .btn[data-action]:hover{filter:brightness(1.04);box-shadow:0 6px 14px var(--role-shadow)}
.cashier-tool-grid .btn kbd,.cashier-tool-grid .btn .badge{background:#ffffffb8;color:var(--role-ink);border:0}
.checkout-btn kbd{background:#fff6d4cf;color:#69330a;border:0}
.btn:focus-visible,.cashier-tool-grid .btn:focus-visible,.cashier-menu .btn:focus-visible{outline:3px solid #405976;outline-offset:3px}
.cashier-layout .cart-head{background:var(--sun-gradient)}.cashier-layout .cart-head h2{color:var(--sun-ink)}.cashier-layout .cart-head h2 span{background:#fff6d4c9;color:#71370a}
.cashier-header,.topbar{border-top:0;background:linear-gradient(90deg,#ffcc32,#ff741e) top/100% 4px no-repeat,#fff}
.cashier-layout .product-card .product-art,.product-card:nth-child(n) .product-art{background:linear-gradient(135deg,#fff2b8 0%,#ffd37d 55%,#ffb16d 100%)}
.product-illustration{filter:saturate(1.9) contrast(1.07) drop-shadow(0 4px 3px #a7541526)}
.tiny-art,.cart-thumb,.cashier-layout .cart-thumb{background:linear-gradient(135deg,#fff0af,#ffc67b)}
.category-symbol,.category-card:nth-child(3n+2) .category-symbol,.category-card:nth-child(3n) .category-symbol{background:var(--sun-gradient);color:var(--sun-ink);box-shadow:var(--sun-shadow)}
.dash-stat:first-child,.dash-stat.orange:first-child{background:var(--sun-gradient)}
.dash-stat:first-child>span,.dash-stat:first-child strong,.dash-stat:first-child small{color:var(--sun-ink)}
.dash-stat:last-child{background:linear-gradient(120deg,#ffe393,#ffb75e)}.dash-stat:last-child>span,.dash-stat:last-child strong,.dash-stat:last-child small{color:#59300c}
.dash-meter i,.dash-bar{background:var(--sun-gradient)}.finance-track b,.ranking-track i{background-image:linear-gradient(120deg,#ffffff55,#ffffff00)!important}
.ranking-label span b{background:var(--sun-gradient);color:var(--sun-ink)}.page-heading h1::after{background:var(--sun-gradient);width:46px}
.receipt-toggle input:checked{background:var(--sun-gradient);border-color:#f28c1e}.favorite-toggle.is-favorite{background:var(--sun-gradient);color:#6e3300;border:0}
.vat-options button.selected,.vat-options button.vat-on{background:var(--sun-gradient);color:#4c2806;border-color:transparent;box-shadow:var(--sun-shadow)}
.btn:disabled,.cashier-layout .checkout-btn:disabled,.pager button:disabled{background:#eae7e0;color:#827b70;box-shadow:none;opacity:.65;cursor:not-allowed}
.dash-presets .btn.primary{box-shadow:0 0 0 2px #934108,0 6px 16px #f9822633;color:#3c1e00}
.dash-presets .btn:not(.primary){background:#f1f4f8;color:#526075}

/* Readable text on light surfaces and solid dark status surfaces. */
:root{--muted:#59677a}
.cashier-layout .cart-head{gap:12px;flex-wrap:wrap}
.cashier-layout .cart-head>small{background:#fff7e8;color:#59300c;font-size:12px;font-weight:600;line-height:1.6;padding:5px 10px;border-radius:7px;opacity:1}
.cashier-layout .cart-head h2 span{background:#fff3d4;color:#59300c}
.cashier-layout .cart-line-copy small{font-size:12px;color:#59677a}
.cashier-layout .cart-line-total button{color:#923440}
input::placeholder,textarea::placeholder{color:#59677a;opacity:1}
.cashier-layout .stock-label{color:#526175;background:#fff}
.cashier-layout .stock-label.low{color:#8d3a11;background:#fff1e9}
#toast{background:#263449;color:#fff}
.btn:disabled,.cashier-layout .checkout-btn:disabled,.pager button:disabled,.category-actions .btn:disabled{color:#626976;background:#e9ecf0;opacity:1;box-shadow:none}

.import-drop>span{color:#9a460d}

/* Dashboard: a consistent color per measure, with neutral reading surfaces. */
.dashboard{--dash-revenue:#8a3d08;--dash-cost:#274f83;--dash-expense:#8a3651;--dash-profit:#185e48}
.dashboard .dash-stat.revenue{--stat-ink:var(--dash-revenue);background:linear-gradient(125deg,#fff0d9,#ffdbb2)}
.dashboard .dash-stat.cost{--stat-ink:var(--dash-cost);background:linear-gradient(125deg,#edf5ff,#d7e6fa)}
.dashboard .dash-stat.expense{--stat-ink:var(--dash-expense);background:linear-gradient(125deg,#fff0f3,#f8dce4)}
.dashboard .dash-stat.profit{--stat-ink:var(--dash-profit);background:linear-gradient(125deg,#eaf9f2,#ccecdf)}
.dashboard .dash-stat.loss{--stat-ink:#8c2938;background:linear-gradient(125deg,#fff0f1,#f8d4d9)}
.dashboard .dash-stat>span,.dashboard .dash-stat strong,.dashboard .dash-stat small{color:var(--stat-ink,#334155)}
.dashboard .dash-stat>span{font-weight:600}.dashboard .dash-stat small{opacity:1;line-height:1.7}
.dashboard .dash-stat{box-shadow:0 5px 18px #2634490d}
.dashboard .panel{background:#fff}.dashboard .dash-range{background:#f7f9fc}
.dashboard .dash-presets .btn:not(.primary){background:#fff;color:#47566b;box-shadow:0 2px 7px #2634490c}
.dashboard .dash-presets .btn.primary{background:linear-gradient(120deg,#ffe4bc,#ffc784);color:#71360c;box-shadow:inset 0 0 0 2px #c97622}
.dashboard .dash-presets .btn:not(.primary):hover{background:#eaf0f7}
.dashboard .graph-toggle{background:#f1f4f8}
.dashboard .graph-toggle button[data-chart-metric="total"].selected{background:#ffead3;color:#82400e;box-shadow:inset 0 0 0 2px #ca8032}
.dashboard .graph-toggle button[data-chart-metric="bills"].selected{background:#e9dffa;color:#553780;box-shadow:inset 0 0 0 2px #9271c1}
.dashboard .trend-svg[data-metric="bills"] .graph-peak{fill:#62418e}
.dashboard .dash-meter,.dashboard .finance-track,.dashboard .ranking-track{background:#edf1f6}
.dashboard .dash-meter i{background-image:none}
.dashboard .dash-payment{margin-top:20px}.dashboard .dash-tax{background:#f5f7fa;padding:14px;border:0;border-radius:10px}
.dashboard .ranking-label span b{background:#f0edf8;color:#58447a}
.dashboard .dash-checks summary b{background:#fff0d8;color:#80500f;padding:3px 9px;border-radius:6px}
.dashboard th{background:#f2f5fa;color:#47566b}.dashboard tbody tr:hover{background:#f7f9fc}


/* members.css */
/* Members: warm brand accents, teal loyalty actions, readable white surfaces. */
.members-workspace{display:grid;gap:22px}
.member-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.member-stats>div{background:linear-gradient(125deg,#e7f7f2,#fff);padding:24px;border-radius:20px;box-shadow:0 8px 24px #203d3710;display:flex;flex-direction:column;align-items:flex-start;gap:10px;color:#255448}
.member-stats>div:nth-child(2){background:linear-gradient(125deg,#fff0d9,#fff);color:#874008}
.member-stats>div:nth-child(3){background:linear-gradient(125deg,#edf0ff,#fff);color:#444d86}
.member-stats strong{font-size:28px;font-variant-numeric:tabular-nums;line-height:1.4}
.member-stats .member-last-sale{font-size:20px}
.member-toolbar{display:flex;gap:18px;align-items:end;padding-bottom:20px}
.member-toolbar label{display:grid;gap:8px;color:#48576b}
.member-search{flex:1;max-width:560px}
.member-block{display:block;color:#59677a;margin-top:5px}
.member-points-badge{display:inline-block;background:#e1f3ec;color:#16634d;padding:7px 12px;border-radius:10px;font-weight:700;white-space:nowrap}
.member-empty{text-align:center;padding:48px 20px}.member-empty p{color:#59677a}
.member-profile dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:24px 0 0}
.member-profile dt{color:#59677a;font-size:13px}.member-profile dd{margin:8px 0 0;overflow-wrap:anywhere}
.member-note{white-space:pre-wrap;background:#f5f7fa;padding:16px;border-radius:12px}
.member-history-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:20px}
.members-workspace h2{font-size:18px;margin-top:0}.members-workspace .table-scroll{overflow-x:auto}
.member-positive{color:#167052;font-weight:700}.member-negative{color:#b22c42;font-weight:700}
.member-section-title{display:flex;justify-content:space-between;align-items:center}.member-section-title h2{margin:0}
.cashier-tool-section.member-cart{margin:0 14px;padding:16px;border-radius:16px;background:linear-gradient(120deg,#e4f4ef,#f7fcfa);box-shadow:0 4px 14px #2255420b;border:0;color:#255448}
.member-cart small{display:block;line-height:1.6;margin-top:6px;color:#3c655a}
.member-selected{margin-top:10px}.member-selected strong{font-size:16px;overflow-wrap:anywhere}
.member-cart-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.member-cart .btn,.member-picker-row .btn{background:#fff;color:#175e4a;border:0;box-shadow:0 3px 10px #245b4520}
.member-cart .member-pick{margin-top:12px;background:linear-gradient(120deg,#16765d,#105240);color:#fff;width:100%}
.member-checkout-note{padding:12px 16px;border-radius:12px;background:#eaf6f1;color:#255448;font-size:14px;line-height:1.8}
.member-picker-toolbar{display:flex;gap:12px;margin-bottom:18px}.member-picker-toolbar input{flex:1;min-width:0}
#member-picker-results{max-height:42vh;overflow:auto}.member-picker-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 10px;border-bottom:1px solid #edf0f3}.member-picker-row small{display:block;color:#59677a;margin-top:5px}
.cashier-menu .btn[data-page="members"]{background:linear-gradient(120deg,#14765c,#10503f);color:#fff;box-shadow:0 6px 15px #16644925}
#nav button.active[data-page="members"]{background:#e3f3ec;color:#175d48}
[data-member-form] .checkbox{display:flex;align-items:center;gap:12px;line-height:1.7}[data-member-form] .checkbox input{width:20px;height:20px;flex:none;accent-color:#16765d}
[data-member-form] .form-grid label{display:grid;gap:8px}
.member-ratio-fields{display:grid;grid-template-columns:1fr 32px 1fr;gap:12px;align-items:end;margin-top:18px}
.member-ratio-equals{align-self:center;text-align:center;font-size:24px;font-weight:700;color:#526373;padding-top:22px}
.member-ratio-preview{display:grid;gap:8px;background:#eaf6f1;color:#205a47;padding:16px;border-radius:12px;margin-top:14px;line-height:1.7}
.member-ratio-preview span{font-size:13px}
#dialog [data-member-form="rules"] label.checkbox{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;text-align:left;gap:12px}
#dialog [data-member-form="rules"] label.checkbox input{margin:0;width:20px;height:20px}
@media(max-width:1000px){.member-history-grid{grid-template-columns:1fr}.member-profile dl{grid-template-columns:1fr 1fr}.member-stats strong{font-size:23px}}
@media(max-width:650px){.member-stats{grid-template-columns:1fr}.member-toolbar,.member-picker-toolbar{flex-direction:column;align-items:stretch}.member-profile dl{grid-template-columns:1fr}.member-stats>div{padding:18px}}


/* promotions.css */
.promo-kind-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.promo-kind,.promo-type{border:0;border-radius:16px;background:#fff0db;color:#783f08;padding:20px;text-align:left;box-shadow:0 5px 20px #29364a10}
.promo-kind strong,.promo-kind small{display:block}.promo-kind strong{font-size:18px;margin-bottom:8px}.promo-kind small{font-size:13px}
.promo-kind.redeem,.promo-type.redeem{background:linear-gradient(120deg,#eae5ff,#f7f5ff);color:#514486}
.promo-kind.gift,.promo-type.gift{background:linear-gradient(120deg,#d9f3ea,#f1fbf6);color:#1d604b}
.promo-kind.bogo,.promo-type.bogo{background:linear-gradient(120deg,#ffe2e8,#fff2f5);color:#89384d}
.promo-kind.discount,.promo-type.discount{background:linear-gradient(120deg,#ffe4bb,#fff7e8)}
.promo-row{display:flex;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid #edf0f3}.promo-row-copy{flex:1;min-width:0}.promo-row-copy h3{margin:0 0 8px;font-size:17px;overflow-wrap:anywhere}.promo-row-copy h3 small{display:inline-block;background:#eff3f6;border-radius:8px;padding:4px 8px;font-size:12px;color:#48596c;margin-left:8px}.promo-row-copy p{margin:0 0 6px}.promo-row-copy small{display:block;color:#59677a;line-height:1.8}.promo-row-actions{display:flex;gap:8px;flex-wrap:wrap}.promo-type{font-weight:700;font-size:13px;min-width:95px;text-align:center;padding:15px 10px}
.promo-specific{background:#f5f7fb;padding:16px;border-radius:14px;margin:16px 0}.promo-check{display:flex;gap:10px;align-items:center;margin-top:20px}.promo-check input{width:20px;height:20px;accent-color:#a04b10}
.promo-cart-panel{margin:12px 14px 0;padding:16px!important;background:linear-gradient(120deg,#fff0dc,#fff8ef);border:0!important;border-radius:16px}.promo-cart-panel small,.promo-cart-panel .member-section-title span{font-size:12px;color:#76512d}.promo-cart-panel small{display:block;margin-top:8px;line-height:1.6}
.promo-cart-result{background:#f0ebfb;color:#514078;padding:12px 14px;margin:8px 0;border-radius:12px;font-size:13px;line-height:1.7}.promo-cart-result strong,.promo-cart-result span{display:block}.promo-cart-result.promo-error{background:#fff0ee;color:#9e303a}
.cashier-menu .btn[data-page="promotions"]{background:linear-gradient(120deg,#f6d0e6,#eab1d3);color:#703451;box-shadow:0 5px 14px #9b52742a}
#nav button.active[data-page="promotions"]{background:#fbe9f2;color:#7a365b}
#promo-picker-list{max-height:50vh;overflow:auto}
@media(max-width:900px){.promo-kind-guide{grid-template-columns:repeat(2,1fr)}.promo-row{flex-wrap:wrap}.promo-row-actions{width:100%}.promo-row-copy{min-width:220px}}


/* accounts.css */
.auth-mode .sidebar,.auth-mode .topbar,.auth-mode .modebar,.auth-mode .app-footer{display:none!important}.auth-mode .workspace{margin:0!important;width:100%}.auth-mode #main{padding:0!important;max-width:none}.auth-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-brand{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff4df,#ffe2b8);padding:8vh 12%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.auth-brand img{width:180px;height:150px;object-fit:contain}.auth-brand>span{color:#a85414;margin:20px 0}.auth-brand h1{font-size:clamp(28px,3vw,48px);line-height:1.5;color:#55351f;z-index:1}.auth-brand p{font-size:18px;line-height:1.9;color:#845a3d;z-index:1}.auth-brand-sun{font-size:260px;color:#ffc14c;position:absolute;bottom:-70px;right:-40px;opacity:.45}.auth-card{width:min(450px,100%);margin:auto;padding:48px 30px}.auth-eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#b85412}.auth-card h2{font-size:30px;margin:16px 0}.auth-subtitle{color:#64748b;line-height:1.8;margin-bottom:28px}.auth-card form,.modal-body [data-account-form]{display:grid;gap:18px}.auth-card label,[data-account-form]>label{display:grid;gap:8px;font-size:14px;color:#334155}.auth-password{display:flex;position:relative}.auth-password input{padding-right:65px;min-width:0;width:100%}.auth-password button{position:absolute;right:10px;top:50%;transform:translateY(-50%);padding:6px;background:none;border:0;color:#9a4510;font-size:12px}.auth-submit{width:100%;min-height:48px}.auth-link{display:block;margin:20px auto;border:0;background:transparent;color:#b45110;padding:10px}.auth-local{display:block;text-align:center;margin-top:32px;color:#64748b}.recovery-code{padding:22px;background:#fff4df;border-radius:14px;margin:25px 0;overflow-wrap:anywhere}.recovery-code strong{font-size:23px;letter-spacing:2px}.recovery-code p{font-size:13px;color:#734f37;line-height:1.7}.account-current{display:flex!important;align-items:center;gap:9px;text-align:left;white-space:normal;max-width:240px}.account-current small{display:block;font-size:10px;color:#64748b}.account-avatar{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:14px;background:#e5f3fb;color:#245876;font-weight:800;font-size:20px}.account-avatar.owner{background:#fff0d3;color:#a6530e}.account-current .account-avatar{width:30px;height:30px;flex-basis:30px;font-size:15px;border-radius:10px}.account-profile{text-align:center}.account-profile .account-avatar{margin:auto}.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.account-stats>div{background:#fff;padding:25px;border-radius:20px;box-shadow:0 8px 28px #182b4509}.account-stats>div:first-child{background:linear-gradient(120deg,#fff0d0,#fffaf2)}.account-stats span{display:block;color:#64748b}.account-stats strong{display:block;font-size:32px;margin-top:10px}.account-row{display:flex;align-items:center;gap:18px;padding:22px 0;border-bottom:1px solid #edf1f6}.account-row:last-child{border:0}.account-row-copy{flex:1}.account-row h3{font-size:16px;margin:0 0 6px}.account-row p{margin:0 0 6px}.account-row small{color:#64748b}.account-actions{display:flex;gap:8px;flex-wrap:wrap}.account-status{font-size:11px;padding:4px 8px;border-radius:7px;display:inline-block}.account-status.on{color:#17644b;background:#e3f4ec}.account-status.off{color:#7d3544;background:#fae9ec}.account-rights{padding:20px;background:#f6f8fb;border-radius:15px}.account-rights h3{margin:0}.account-rights p,.account-rights small{color:#64748b;line-height:1.8}.account-check{display:flex!important;align-items:center;gap:10px;padding:9px 0}.account-check input{width:18px!important;height:18px;accent-color:#ed771a;box-shadow:none!important}.account-report{margin-top:24px}.account-report .section-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.account-dates{display:flex;align-items:end;gap:10px}.account-dates label{display:grid;gap:5px}.staff-no-stock [data-action="edit-product"],.staff-no-stock [data-action="adjust"],.staff-no-stock [data-action="export-products"],.staff-no-stock [data-action="export"],.staff-no-stock [data-category-action="add"],.staff-no-stock [data-category-action="rename"],.staff-no-stock [data-category-action="delete"]{display:none!important}.staff-no-cost #stock-table td:nth-child(3),.staff-no-cost .stock-table th:nth-child(3){display:none}.staff-no-owner [data-action="backup"],.staff-no-owner [data-action="invoice"],.staff-no-owner [data-member-action="rules"],.staff-no-owner [data-member-action="adjust"]{display:none!important}.staff-no-member-edit [data-member-action="edit"]{display:none!important}.profile .account-current{width:100%;padding:8px}.staff-no-owner .account-current{border-color:#d9e9f7}.auth-mode .form-error:empty{display:none}
@media(max-width:850px){.auth-page{grid-template-columns:1fr}.auth-brand{display:none}.auth-card{padding:40px 24px}.account-row{flex-wrap:wrap}.account-actions{margin-left:58px}.account-stats{gap:10px}.account-stats>div{padding:18px}.account-dates{flex-wrap:wrap}.cashier-header-tools .account-current small{display:none}.cashier-header-tools .account-current{max-width:150px}.cashier-ready{display:none}}
.staff-no-stock [data-action="stock-adjust"],.staff-no-stock [data-action="category-manager"],.staff-no-stock a[href^="/api/export"]{display:none!important}.staff-no-cost .stock-list-table th:nth-child(3),.staff-no-cost .stock-list-table td:nth-child(3){display:none}.staff-no-stock .stock-list-table th:last-child,.staff-no-stock .stock-list-table td:last-child{display:none}


/* responsive.css */
/* Shared screen layouts; printed receipts retain their original paper sizes. */
@media screen {
  .payment-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .payment-options button { min-width: 0; width: 100%; }
  :root { --version-space: 62px; --cashier-header-height: 112px; }
  html { -webkit-text-size-adjust: 100%; scroll-padding-bottom: var(--version-space); }
  body { min-width: 0; }
  .workspace { min-width: 0; padding-bottom: var(--version-space); }
  .workspace main, .panel, .form-grid > *, .two-columns > *, .page-heading > *,
  .cashier-brand, .cashier-header-tools, .cashier-layout > *, .heading-actions { min-width: 0; }
  .cashier-shell { padding-bottom: var(--version-space); }
  .workspace-menu-toggle, .mobile-pos-nav { display: none; }
  .site-version {
    position: fixed; right: max(12px, env(safe-area-inset-right));
    bottom: max(12px, env(safe-area-inset-bottom)); z-index: 10000;
    display: flex; align-items: center; gap: 10px; margin: 0;
    max-width: calc(100vw - 24px); padding: 9px 14px;
    background: #fffdf8; color: #683818; border: 1px solid #f4d6ac;
    border-radius: 13px; box-shadow: 0 4px 20px #59341b1c;
    font: 12px/1.35 Tahoma, sans-serif; pointer-events: none;
  }
  .site-version::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: #f3912e; flex: 0 0 7px; }
  .site-version span { color: #81644c; }
  .site-version strong { color: #9b4d13; font-size: 13px; white-space: nowrap; }
  dialog:has(> .site-version) .modal-body { padding-bottom: 76px; }
  #toast { bottom: calc(var(--version-space) + 12px); max-width: calc(100vw - 28px); overflow-wrap: anywhere; }
  body:has(> .print-toolbar), body:has(> .toolbar) { padding-bottom: var(--version-space); }
  body > #pages { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  body:has(> .print-toolbar) > main { max-width: calc(100% - 24px); }
}

@media screen and (max-width: 1366px) {
  input:not([type=checkbox]):not([type=radio]), select, textarea { font-size: 16px !important; }
  button, .btn, .pager button, .tax-tabs button { touch-action: manipulation; }
  .btn, .pager button, .cashier-menu-toggle, .cashier-mode-switch, .cashier-low,
  .cashier-tool-grid .btn[data-action], .vat-options button, .tax-tabs button { min-height: 44px; }
  .cashier-header { gap: 12px; grid-template-columns: auto minmax(0, 1fr) auto; }
  .cashier-header h1 { text-align: center; }
  .cashier-store, .cashier-ready, .cashier-key-hint { display: none; }
  .cashier-searchbar { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0; }
  .cashier-categories select, .cashier-searchbar .search-box input { height: 48px; }
  .cashier-searchbar .search-box input { padding-right: 12px; }
  .cashier-searchbar .search-box kbd { display: none; }
  .cashier-shell { height: auto; min-height: 100dvh; overflow: visible; }
  .cashier-layout.pos-layout {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: minmax(400px, calc(100dvh - 230px)) auto;
    gap: 14px; height: auto; flex: initial; padding: 4px 16px 16px;
  }
  .cashier-layout .catalog-panel { grid-column: 1; grid-row: 1; height: auto; min-height: 0; padding: 14px 10px 0; }
  .cashier-layout .cart { grid-column: 2; grid-row: 1; min-height: 0; }
  .cashier-layout .products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 190px; }
  .cashier-layout .product-tile { height: 190px; }
  .cashier-layout .product-copy .product-name { font-size: 14px; min-height: 40px; }
  .cashier-layout .product-copy { padding: 8px 10px; }
  .cashier-layout .stock-label { font-size: 11px; padding: 3px 6px; }
  .favorite-toggle { width: 36px; height: 36px; font-size: 24px; }
  .cashier-layout .pager { font-size: 12px; }
  .cashier-layout .pager button { min-width: 44px; font-size: 20px; }
  .cashier-tools { grid-column: 1 / -1; grid-row: 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: none; overflow: visible; }
  .cashier-tool-section { padding: 16px; min-width: 0; }
  .cashier-tool-section + .cashier-tool-section { margin: 0; }
  .cashier-tool-section h2 { font-size: 15px; }
  .cashier-tool-grid .btn[data-action] { font-size: 13px; padding: 10px; white-space: normal; }
  .cashier-local { grid-column: 1 / -1; min-height: 48px; }
  .cashier-layout .cart-items { padding: 0 14px; }
  .cart-table-head { display: none; }
  .cashier-layout .cart-line { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 14px 0; }
  .cashier-layout .cart-thumb { display: none; }
  .cashier-layout .cart-line-copy { grid-column: 1 / -1; overflow-wrap: anywhere; }
  .cashier-layout .cart-line-copy strong { font-size: 15px; }
  .cashier-layout .cart-line-copy small { font-size: 12px; }
  .cashier-layout .qty-control { grid-column: 1; justify-self: start; }
  .cashier-layout .qty-control button { width: 44px; height: 44px; }
  .cashier-layout .qty-control input { width: 48px; height: 44px; }
  .cashier-layout .cart-line-total { grid-column: 2; font-size: 16px; }
  .cashier-layout .cart-line-total button { width: 44px; height: 44px; }
  .cashier-layout .summary-row.total strong { font-size: clamp(32px, 4vw, 52px); }
  .cashier-layout .checkout-btn { min-height: 56px; font-size: 18px; }
  .cashier-layout .checkout-btn kbd, .cashier-tool-grid kbd { display: none; }
  .table-scroll { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .auth-card input { min-height: 48px; }
}

@media screen and (min-width: 1024px) and (max-width: 1366px) {
  .cashier-layout .products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media screen and (max-width: 1024px) {
  :root { --sidebar: 0px; }
  .sidebar { display: none !important; }
  .workspace { margin-left: 0 !important; width: 100%; }
  .workspace-menu-toggle { display: inline-grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; background: #fff0d8; color: #9b4d13; border-radius: 11px; font-size: 23px; }
  .topbar { height: auto; min-height: 68px; padding: 10px 16px; gap: 12px; }
  .breadcrumb { min-width: 0; flex: 1; font-size: 12px; overflow-wrap: anywhere; }
  .top-tools .connection, .top-tools #date, .top-tools .divider { display: none; }
  .top-tools { gap: 8px; }
  .modebar { flex-wrap: wrap; align-items: center; font-size: 12px; gap: 8px; }
  .modebar button { min-height: 44px; font-size: 12px; }
  .cashier-tools { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-heading .heading-actions { max-width: none; }
  .heading-actions .btn { min-height: 44px; }
  .settings-layout, .two-columns, .member-history-grid { grid-template-columns: minmax(0, 1fr); }
  .receipt-frame { min-height: 250px; height: 60dvh; }
  dialog { max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); overflow-y: auto; overscroll-behavior: contain; }
  .auth-page { min-height: 100dvh; padding: 24px 0 var(--version-space); }
  .auth-card { width: min(480px, 100%); }
}

@media screen and (min-width: 761px) and (max-width: 850px) {
  .auth-page::before { content: ''; display: block; width: 110px; height: 110px; margin: 32px auto 0; background: url('assets/summer-day-logo.png') center / contain no-repeat; }
}

@media screen and (max-width: 760px) {
  .workspace main { padding: 20px 14px; }
  .cashier-mode #main { padding: 0; }
  .cashier-header { position: sticky; top: 0; z-index: 20; height: auto; min-height: 110px; grid-template-columns: auto minmax(0, 1fr); gap: 8px 12px; padding: 10px 14px; padding-top: max(10px, env(safe-area-inset-top)); }
  .cashier-brand { grid-column: 1; grid-row: 1; }
  .cashier-logo-frame { display: none; }
  .cashier-header h1 { grid-column: 2; grid-row: 1; text-align: left; font-size: 21px; }
  .cashier-header-tools { grid-column: 1 / -1; grid-row: 2; justify-content: space-between; gap: 8px; }
  .cashier-header-tools .account-current { flex: 1; max-width: none; min-width: 0; padding: 6px 8px; }
  .cashier-header-tools .account-current > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100px; }
  .cashier-mode-switch, .cashier-low { font-size: 12px; padding: 8px; }
  .mobile-pos-nav { display: grid; grid-template-columns: 1fr 1fr 1fr; position: sticky; top: var(--cashier-header-height); z-index: 19; padding: 8px 12px; gap: 6px; background: #fffaf3; border-bottom: 1px solid #f0e5d5; }
  .mobile-pos-nav button { min-height: 44px; border-radius: 10px; padding: 7px 5px; font-size: 13px; color: #805b3e; background: #fff; border: 1px solid #eadfce; }
  .mobile-pos-nav button[aria-current=true] { background: #ffebc5; border-color: #f2b967; color: #88420f; font-weight: 700; }
  .cashier-searchbar { grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 12px 14px; }
  .cashier-categories { padding: 0; }
  .cashier-searchbar .search-box { margin: 0; }
  .cashier-searchbar .search-box input { padding-left: 38px; }
  .cashier-searchbar .search-icon { left: 13px; }
  .cashier-layout.pos-layout { display: flex; flex-direction: column; gap: 14px; padding: 0 12px 12px; }
  .cashier-layout .catalog-panel { order: 1; height: auto; flex: none; padding: 14px 10px 0; }
  .cashier-layout .products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: min(65dvh, 560px); min-height: 220px; flex: none; overflow-y: auto; -webkit-overflow-scrolling: touch; }
  .cashier-layout .cart { order: 2; min-height: 360px; height: auto; flex: none; }
  .cashier-layout .cart-items { min-height: 100px; max-height: 340px; flex: auto; }
  .cashier-tools { order: 3; grid-template-columns: minmax(0, 1fr); }
  .cashier-layout .catalog-panel, .cashier-layout .cart, .cashier-tools { scroll-margin-top: calc(var(--cashier-header-height) + 78px); }
  .cashier-layout .cart-head { padding: 14px; }
  .cashier-layout .cart-summary { padding: 16px 14px; }
  .cashier-layout .summary-row.total strong { font-size: clamp(32px, 9vw, 44px); letter-spacing: -1px; }
  .cashier-layout .summary-row.total { flex-wrap: wrap; gap: 6px; }
  .cashier-tool-grid { gap: 10px; }
  .cashier-tool-grid .btn[data-action] { font-size: 14px; min-height: 48px; }
  .cashier-local { font-size: 12px; flex-wrap: wrap; }
  .cashier-menu { grid-template-columns: minmax(0, 1fr); }
  .cashier-menu .btn { min-height: 48px; font-size: 14px; }
  .cashier-menu svg { width: 22px; }
  .topbar { padding: 10px 12px; gap: 8px; }
  .breadcrumb span { display: none; }
  .breadcrumb strong { display: block; }
  .top-tools .icon-button { display: none; }
  .top-tools .account-current { max-width: 138px; padding: 6px; font-size: 12px; }
  .top-tools .account-current small { display: none; }
  .page-heading { align-items: stretch; }
  .heading-actions { width: 100%; justify-content: flex-start; gap: 8px; }
  .heading-actions .btn { flex: 1 1 auto; font-size: 13px; }
  .form-grid, .product-basic { grid-template-columns: minmax(0, 1fr); }
  .form-grid .full, .product-basic > label { grid-column: 1 / -1 !important; }
  .table-toolbar { display: flex; flex-wrap: wrap; gap: 10px; }
  .table-toolbar input, .table-toolbar select { width: 100%; max-width: none; }
  .account-stats { grid-template-columns: minmax(0, 1fr); }
  .account-actions { width: 100%; margin-left: 0; }
  .account-dates { width: 100%; }
  .account-dates label { flex: 1 1 130px; min-width: 0; }
  .account-dates input { width: 100%; }
  .dash-range { flex-wrap: wrap; }
  .dash-range label { flex: 1 1 130px; min-width: 0; }
  .dash-range input { width: 100%; min-width: 0; }
  .dash-presets { flex-wrap: wrap; }
  .tax-tabs { max-width: 100%; overflow-x: auto; flex-wrap: nowrap; }
  .tax-tabs button { flex: 0 0 auto; }
  .promo-kind-guide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .member-toolbar, .member-picker-toolbar { align-items: stretch; }
  .member-search { min-width: 0; width: 100%; }
  .receipt-choice-actions, .sale-result-receipt { flex-wrap: wrap; }
  .receipt-choice-actions > .btn { flex: 1 1 100%; }
  .sale-result-receipt details { max-width: 100%; }
  .print-toolbar, body > .toolbar { flex-wrap: wrap; gap: 10px; padding: 12px; }
  .print-toolbar button, body > .toolbar button, .print-toolbar a { min-height: 44px; }
  body:has(> .print-toolbar) > .document-a4 { padding: 16px; }
  .auth-page { display: flex; flex-direction: column; justify-content: center; padding: 24px 0 74px; background: linear-gradient(180deg, #fff5e3 0, #fff 190px); }
  .auth-page::before { content: ''; display: block; flex: 0 0 86px; width: 100px; height: 86px; margin: 0 auto 8px; background: url('assets/summer-day-logo.png') center / contain no-repeat; }
  .auth-card { margin: 0 auto; padding: 20px 24px; }
  .auth-card h2 { font-size: 27px; }
  .auth-subtitle { font-size: 14px; margin-bottom: 22px; }
  .auth-local { font-size: 11px; margin-top: 20px; }
  .site-version { padding: 8px 11px; gap: 8px; border-radius: 11px; }
}

@media print {
  .site-version, .mobile-pos-nav, .workspace-menu-toggle { display: none !important; }
}
/* Owner consumption: fourth payment method stays readable on small screens. */
@media screen {
  .payment-options [data-payment="owner_use"] { grid-column: 1 / -1; min-height: 48px; }
  .owner-use-shortcut { width: 100%; min-height: 48px; margin-bottom: 12px; }
  .owner-use-line { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid #e6e0d8; }
  .owner-use-line span { min-width: 0; overflow-wrap: anywhere; }
  .owner-use-line small { display: block; margin-top: 4px; color: #665c50; }
  .owner-use-line strong { flex-shrink: 0; }
  #owner-use-pane .checkbox { display: flex; flex-direction: row; align-items: flex-start; gap: 10px; margin-top: 16px; line-height: 1.6; }
  #owner-use-pane input[type="checkbox"] { width: 20px; min-width: 20px; height: 20px; flex: none; margin-top: 3px; }
}

@media screen {
 .product-photo-editor { margin: 16px 0; padding: 16px; border: 1px solid #e4d8c9; border-radius: 12px; }
 .product-photo-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
 .product-photo-actions label { position:relative; overflow:hidden; cursor:pointer; }
 .product-photo-actions input { position:absolute; inset:0; opacity:0; width:100%; height:100%; cursor:pointer; }
 .product-photo-preview { width:min(100%,260px); aspect-ratio:1; object-fit:contain; border-radius:10px; }
 .product-photo-editor p { font-size:13px; line-height:1.6; }
}

/* Square product frames grow with each column; text remains below the image. */
@media screen {
 .cashier-layout .products-grid { grid-auto-rows: auto; }
 .cashier-layout .product-tile { height: auto; }
 .cashier-layout .product-card { height: 100%; }
 .cashier-layout .product-card .product-art {
  width: calc(100% - 10px); height: auto; min-height: 0;
  aspect-ratio: 1 / 1; flex: 0 0 auto;
 }
 .cashier-layout .product-art > img,
 .cashier-layout .product-art > svg { width: 100%; height: 100%; object-fit: contain; }
}

/* Camera scanner controls remain reachable on phones. */
.camera-scanner video { display:block; width:100%; max-height:45dvh; background:#17221b; border-radius:12px; object-fit:contain; }
.camera-scanner p { margin:12px 0; line-height:1.6; }
.camera-actions { display:flex; gap:10px; flex-wrap:wrap; }
.camera-actions label { position:relative; overflow:hidden; }
.camera-actions input { position:absolute; inset:0; width:100%; height:100%; opacity:0; }
.camera-match { display:block; width:100%; margin:10px 0; }
@media(max-width:600px) { .cashier-searchbar .cashier-key-hint { display:block; padding:0; } .cashier-key-hint [data-camera-scan] { width:100%; } .table-toolbar:has([data-camera-scan]) { flex-wrap:wrap; } }

.cashier-searchbar .cashier-key-hint { display:block; }
@media (min-width:601px) and (max-width:1366px) { .cashier-searchbar .cashier-key-hint { grid-column:1/-1; padding:8px 14px 0; } }

/* High contrast camera action shared by sales and stock. */
.btn[data-camera-scan] {
 display:inline-flex; align-items:center; justify-content:center; gap:12px;
 min-height:56px; padding:14px 22px; border:2px solid #a63d06;
 border-radius:14px; background:#bf4b08; color:#fff;
 font-size:17px; font-weight:700; line-height:1.4;
 box-shadow:0 4px 0 #8e3506,0 7px 16px #bf4b0829;
}
.btn[data-camera-scan]:hover { background:#a63d06; color:#fff; }
.btn[data-camera-scan]:active { transform:translateY(2px); box-shadow:0 2px 0 #8e3506; }
.btn[data-camera-scan]:focus-visible { outline:3px solid #12634c; outline-offset:4px; }
.camera-button-icon { width:25px; height:25px; flex:0 0 25px; }
@media(max-width:600px) {
 .table-toolbar > .btn[data-camera-scan] { width:100%; flex:0 0 100%; }
 .cashier-searchbar .cashier-key-hint { padding:2px 0 6px; }
}

.dash-product-search label { display:block; margin:14px 0 6px; }
.dash-product-search input { width:100%; max-width:560px; min-height:48px; }
#dash-product-count { margin:12px 0; font-size:13px; }
.dash-product-code { display:block; margin-top:5px; color:#66746b; }
.dash-product-search td:first-child { white-space:normal; min-width:180px; }

/* Keep product search results inside a compact, keyboard-scrollable frame. */
.dash-product-search .dash-product-frame {
 max-height:min(320px,45dvh); overflow:auto; border:1px solid #dce3df;
 border-radius:12px; overscroll-behavior:contain; scrollbar-gutter:stable;
}
.dash-product-frame table { border-collapse:separate; border-spacing:0; }
.dash-product-search .dash-product-frame th {
 position:sticky; top:0; z-index:1; background:#f2f5f7; padding:10px 14px;
 box-shadow:0 1px 0 #dce3df;
}
.dash-product-search .dash-product-frame td { padding:10px 14px; }
.dash-product-search .dash-product-code { margin-top:2px; }
.dash-product-frame:focus-visible { outline:3px solid #bf4b08; outline-offset:3px; }
@media(max-width:600px) { .dash-product-search .dash-product-frame { max-height:min(260px,40dvh); } }

#member-list td:last-child .btn { margin:3px 6px 3px 0; }
.member-status-btn { background:#fff0d9; color:#87420d; border:1px solid #e6b77a; }
#member-list td:last-child { white-space:normal; min-width:220px; }


/* labels.css */
.label-workspace{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}.label-editor,.label-preview-card,.label-settings,.label-print-card{background:#fff;border:0;border-radius:20px;box-shadow:0 7px 26px #15283f0c;padding:22px}.label-preview-aside{display:grid;gap:18px}.label-toolbar{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:18px}.label-toolbar h2,.label-settings h2,.label-print-card h2,.label-preview-card h2{font-size:17px;margin:0 0 10px;color:#172b45}.label-toolbar small,.label-item-head small,.label-print-card small{color:#5d6b80}.label-qty-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.label-item{background:#f7f9fc;border-radius:14px;padding:16px;margin:12px 0;box-shadow:0 2px 8px #15283f08}.label-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.label-item-head strong{color:#b8460b;margin-right:12px}.label-item-head small{display:inline-block}.label-remove{border:0!important;background:#ffebe9!important;color:#ae2921!important;width:30px;height:30px;border-radius:8px!important;font-size:22px;box-shadow:none!important}.label-field-grid{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:12px}.label-field-grid label,.label-settings label,.label-print-card>label,.label-preview-aside>section>label{display:flex;flex-direction:column;gap:6px;color:#33475f;font-size:12px;font-weight:500}.label-field-grid input,.label-settings input,.label-settings select,.label-print-card select,.label-preview-card select{background:#fff!important;color:#172b45!important;min-width:0;width:100%;height:42px;border:1px solid #dde3ed!important;border-radius:10px;box-shadow:0 2px 7px #15283f06!important;padding:8px 10px;font:inherit;font-size:14px}.label-field-grid input:focus,.label-settings input:focus,.label-settings select:focus{outline:2px solid #ffb360!important;outline-offset:1px}.label-item-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.label-item-change{color:#a54d00;font-size:11px;margin-right:auto}.btn.label-teal{background:#dcf4ec!important;color:#155b4b!important}.btn.label-blue{background:#e4edff!important;color:#214e97!important}.label-preview{min-height:185px;background:#edf1f6;border-radius:14px;display:flex;align-items:center;justify-content:center;padding:20px;margin:12px 0}.label-preview img{width:100%;height:auto;box-shadow:0 5px 16px #10243a26;display:block}.label-preview p{color:#64748b;font-size:13px}.label-preview-card .section-head{margin:0;gap:8px;align-items:center}.label-preview-card .section-head span{font-size:11px;color:#56657a}.label-errors,.label-warnings,.label-valid{white-space:pre-line;font-size:12px;line-height:1.7;padding:10px;border-radius:9px}.label-errors{background:#fff0ee;color:#9d2923}.label-warnings{background:#fff3d8;color:#805000}.label-valid{background:#e4f6ee;color:#176447}.label-setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.label-settings>label{margin:12px 0}.label-settings details{margin:14px 0}.label-settings summary{cursor:pointer;font-size:12px;font-weight:600;color:#9d430e}.label-settings details p,.label-print-card p{font-size:11px;line-height:1.7;color:#5a6b81;margin-bottom:0}.label-checks{display:grid;gap:12px;margin:16px 0}.label-checks label,.label-accept{display:flex;flex-direction:row!important;align-items:center;gap:8px;font-size:12px}.label-checks input,.label-accept input,.label-pick-row input{width:17px!important;height:17px!important;margin:0;accent-color:#ea580c;box-shadow:none!important;flex-shrink:0}.label-print-card{background:linear-gradient(140deg,#fff4e8,#fff 70%)}.label-print-card .btn{width:100%;margin-top:10px;font-size:12px}.label-print-card small{font-size:11px;display:block;margin:8px 0}.label-empty{text-align:center;padding:60px 15px}.label-empty>span{font-size:50px;color:#f79c50}.label-empty h3{color:#243b55}.label-empty p{color:#66788f;font-size:13px}.label-picker-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.label-picker-toolbar input{flex:1;min-width:160px}.label-picker-toolbar select{max-width:220px}#label-picker-list{max-height:420px;overflow:auto}.label-pick-row{display:flex;align-items:center;gap:14px;padding:14px 8px;border-bottom:1px solid #edf0f4;cursor:pointer}.label-pick-row>span{flex:1}.label-pick-row strong{font-size:14px;color:#24364f}.label-pick-row small{display:block;color:#65748a;font-size:11px;margin-top:5px}.label-pick-row b{color:#ba4a10;font-size:14px}.label-print-summary strong{font-size:30px;color:#b54a0c}.label-print-summary p{color:#50627b}.label-accept{margin-top:16px}.staff-no-stock [data-label-action="open"]{display:none!important}#nav [data-page="labels"] .nav-icon{stroke:#e87921}.label-a4-settings[hidden]{display:none!important}@media(min-width:1600px){.label-field-grid{grid-template-columns:minmax(180px,1.4fr) 120px minmax(130px,1fr) 100px}}@media(max-width:1050px){.label-workspace{grid-template-columns:minmax(0,1fr) 300px}.label-editor,.label-settings,.label-print-card,.label-preview-card{padding:16px}}@media(max-width:850px){.label-workspace{grid-template-columns:1fr}.label-preview-aside{grid-template-columns:1fr 1fr}.label-settings{grid-row:span 2}.label-preview-card{order:-1}}@media(max-width:580px){.label-preview-aside{grid-template-columns:1fr}.label-field-grid{grid-template-columns:minmax(0,1fr) 100px}.label-toolbar{display:block}.label-qty-tools{margin-top:12px}}
#label-preview-select-wrap[hidden]{display:none!important}
.label-field-grid textarea{width:100%;min-width:0;min-height:62px;border:1px solid #dde3ed;border-radius:10px;padding:8px 10px;background:white;color:#172b45;font:inherit;font-size:14px;line-height:1.5;resize:vertical;box-shadow:0 2px 7px #15283f06}.label-field-grid textarea:focus{outline:2px solid #ffb360;outline-offset:1px}.label-row-preview{margin:12px 0;padding:10px;background:#edf1f6;border-radius:10px}.label-row-preview small{display:block;color:#51637a;margin-bottom:8px;font-size:11px}.label-row-preview img{width:100%;height:auto;display:block}.label-row-preview[hidden],.label-roll-settings[hidden]{display:none!important}.label-roll-settings>small,#label-media-note{font-size:11px;line-height:1.6;color:#596c83;display:block}.label-roll-settings{padding:0 0 10px}


/* finance.css */
.fin-tabs,.fin-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.fin-tabs .selected{background:#fff0dd;color:#9b4209;box-shadow:0 3px 10px #d6661420}.fin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.fin-stat{background:#f5f7fb;border-radius:16px;padding:18px;box-shadow:0 4px 15px #122b4210}.fin-stat span{display:block;font-size:13px;color:#475569}.fin-stat strong{display:block;font-size:25px;color:#172b45;margin-top:10px}.fin-stat.in{background:#e7f6ef}.fin-stat.in strong,.fin-positive{color:#176347}.fin-stat.out{background:#fff0ed}.fin-stat.out strong,.fin-negative{color:#a62c34}.fin-stat.balance{background:linear-gradient(135deg,#fff0cc,#ffe0c5)}.fin-stat.balance strong{color:#893909}.fin-panel,.fin-empty{background:white;border-radius:20px;padding:24px;box-shadow:0 7px 26px #15283f0d;margin:18px 0}.fin-empty{text-align:center;padding:50px 20px}.fin-empty>span{font-size:40px;color:#df7a23}.fin-panel h2,.fin-empty h2{font-size:19px;color:#172b45}.fin-section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.fin-help,.fin-summary-caption{font-size:13px;line-height:1.7;color:#52647a}.fin-formula,.fin-notice{padding:14px 18px;background:#fff5df;color:#82500e;border-radius:12px;font-size:13px;margin:16px 0}.fin-table small{display:block;color:#5c6d82;font-size:11px;margin-top:5px;max-width:360px;white-space:normal}.fin-in{background:#daf3e6!important;color:#155d44!important}.fin-out{background:#ffe6e5!important;color:#9f2933!important}.fin-expense{background:#e8edff!important;color:#394b91!important}.fin-reconcile{padding:20px;background:#edf4ff;border-radius:15px;color:#253b59;margin:20px 0}.fin-reconcile h3{font-size:17px;margin:0 0 14px}.fin-reconcile dl{margin:0}.fin-reconcile dl>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;font-size:13px}.fin-reconcile dd{margin:0;font-weight:600;text-align:right}.fin-expected{border-top:1px solid #c6d6ec;margin-top:8px;padding-top:16px!important;font-size:17px!important;color:#243e75}.fin-difference{padding:12px;background:#f4f7fa;border-radius:10px;margin:12px 0;font-weight:600}.fin-tag{display:inline-block;border-radius:7px;padding:5px 8px;font-size:11px}.fin-tag.in{color:#155c43;background:#dcf3e8}.fin-tag.out{color:#9c3039;background:#ffe8e7}.fin-return-lines{margin:18px 0;display:grid;gap:12px;max-height:340px;overflow:auto}.fin-return-line{display:grid;grid-template-columns:minmax(130px,1fr) 95px 180px;align-items:center;gap:12px;background:#f5f7fb;padding:14px;border-radius:12px}.fin-return-line small{display:block;font-size:11px;color:#53667d;margin-top:5px}.fin-return-line label{font-size:11px;color:#33475d}.fin-return-line input,.fin-return-line select{width:100%;min-width:0;background:white}.fin-refund-badge{font-size:11px;border-radius:7px;padding:4px 7px;background:#ffeae6;color:#9b3033;display:inline-block;margin:4px 0}.fin-cashier-button{background:#e6edf9!important;color:#294d83!important}.fin-refund-notice{background:#fff0e9;color:#843b1d;border-radius:12px;padding:14px 18px;margin:16px 0;font-size:13px}.fin-refund-notice strong{font-size:17px}@media(max-width:850px){.fin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.fin-panel{padding:16px}.fin-return-line{grid-template-columns:minmax(0,1fr) 80px}.fin-return-line>label:last-child{grid-column:1/-1}}@media(max-width:500px){.fin-stat{padding:13px}.fin-stat strong{font-size:21px}.fin-reconcile{padding:14px}.fin-reconcile dl>div{font-size:12px}.fin-expected{font-size:15px!important}}

#dialog:has([data-finance-form="close"]){width:min(900px,96vw);max-width:96vw}#dialog:has([data-finance-form="close"]) .modal-header{position:sticky;top:0;background:white;z-index:2}#dialog:has([data-finance-form="close"]) .fin-stat{padding:12px}#dialog:has([data-finance-form="close"]) .fin-stat strong{font-size:22px}#dialog:has([data-finance-form="close"]) .fin-reconcile dl>div{padding:6px 0}

.fin-stats.fin-stats-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.cashier-tool-grid .btn.fin-cashier-button{background:linear-gradient(120deg,#d9eaff,#afcef9)!important;color:#214b80!important}
.btn.fin-return-button{background:linear-gradient(120deg,#ffe4d6,#ffc3a5)!important;color:#853513!important}
.fin-mode-label{font-size:13px;color:#475569;background:#f4f7fb;border-radius:10px;padding:10px 14px}
.fin-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.fin-management-grid .btn{min-height:52px;white-space:normal}
.fin-bill-list{max-height:390px;overflow:auto;display:grid;gap:10px}.fin-bill-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;background:#f5f7fb;border-radius:12px}.fin-bill-row small{display:block;color:#52647a;font-size:12px;margin-top:5px}.fin-bill-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.fin-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;font-size:12px}
#dialog:has(.fin-return-picker){width:min(760px,96vw)}
@media(max-width:420px){.fin-bill-row{align-items:flex-start;flex-direction:column}.fin-bill-actions{flex-direction:row}.fin-management-grid{gap:8px}}


/* print-helper.css */
#dialog:has(.ph-settings){width:min(820px,96vw)}.ph-settings p{line-height:1.7}.ph-note{font-size:12px;color:#52647a;line-height:1.7}.ph-device-head,.ph-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:20px 0 12px}.ph-online{color:#116244}.ph-offline{color:#a83a26}.ph-printers{display:grid;grid-template-columns:1fr;gap:12px}.ph-printers label{display:grid;gap:6px;font-size:13px}.ph-buttons{display:flex;gap:10px;flex-wrap:wrap}.ph-install{padding:16px;background:#fff5e7;border-radius:14px;margin:20px 0}.ph-install summary{font-weight:600;color:#823b15;cursor:pointer}.ph-install ol{padding-left:20px;line-height:1.8;font-size:13px}.ph-install a{color:#995012;text-decoration:underline}.ph-code{display:block;font-size:28px;letter-spacing:3px;color:#843c0b;padding:15px;background:white;border-radius:10px;user-select:all}.ph-job-list{max-height:280px;overflow:auto;display:grid;gap:8px}.ph-job{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f4f7fb;padding:13px;border-radius:10px}.ph-job strong{font-size:13px}.ph-job small{display:block;font-size:11px;color:#52647a;margin-top:5px}.ph-job-state{font-size:11px;color:#274f83;max-width:200px}.ph-job-state.submitted{color:#126447}.ph-job-state.failed,.ph-job-state.unknown,.ph-job-state.expired{color:#a33138}.label-print-card [data-label-action="print"]{margin-bottom:10px;width:100%}@media(max-width:550px){.ph-job{flex-wrap:wrap}.ph-code{font-size:24px;letter-spacing:2px}}

.ph-central{background:#fff5e8;border-radius:16px;padding:18px;margin:16px 0}.ph-central h3{margin:0 0 14px;color:#853e11}.ph-route-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ph-route-summary>div{padding:13px;background:white;border-radius:12px;box-shadow:0 3px 12px #9f5f1010}.ph-route-summary strong,.ph-route-summary span,.ph-route-summary small{display:block}.ph-route-summary strong{font-size:14px;color:#263d58;margin-bottom:8px}.ph-route-summary span{font-size:13px;line-height:1.6}.ph-route-summary small{font-size:11px;line-height:1.7;margin-top:5px}.ph-override,.ph-route-edit{margin:16px 0}.ph-override>summary,.ph-route-edit>summary{font-size:13px;font-weight:600;cursor:pointer;color:#304c70;margin-bottom:14px}.ph-route-edit form{margin-top:12px}.ph-route-edit button[type=submit]{margin-top:14px}.ph-settings .field.checkbox{display:flex;align-items:center;gap:10px;line-height:1.6}.ph-settings .field.checkbox input{width:18px;height:18px;flex:0 0 18px;margin:0}@media(max-width:600px){.ph-route-summary{grid-template-columns:1fr}.ph-central{padding:14px}.ph-route-summary>div{padding:12px}}

.ph-launch{padding:18px;background:#edf7f4;border-radius:16px;margin:16px 0;box-shadow:0 5px 18px #12644712}.ph-launch h3{margin:0;color:#154e41}.ph-launch p{font-size:13px;color:#3b5a52}.ph-launch .btn{display:inline-flex;text-decoration:none}.ph-launch .ph-download{font-size:13px;color:#24549a;text-decoration:underline}.ph-launch .ph-note{margin:12px 0 8px}


/* bulk-stock.css */
.receive-workspace{display:grid;gap:20px;color:#23344d}.receive-entry,.receive-sheet,.receive-footer,.receive-done{background:#fff;border-radius:20px;box-shadow:0 7px 25px #2536470b;padding:24px}.receive-entry{display:grid;grid-template-columns:minmax(250px,1fr) auto;gap:14px 24px;align-items:center}.receive-entry>p{grid-column:1/-1;margin:0}.receive-search-wrap{position:relative}.receive-search-wrap>label,.receive-note{display:block;font-weight:600;font-size:13px}.receive-search-bar{display:flex;gap:8px;margin-top:8px}.receive-search-bar input{flex:1;min-width:0}.receive-workspace input,.receive-workspace select{background:#fff;border:1px solid #d7e1eb;border-radius:10px;padding:11px 12px;min-height:43px;color:#23344d;box-sizing:border-box}.receive-workspace input:focus,.receive-workspace select:focus{outline:2px solid #ff9a32;outline-offset:1px}.receive-workspace input:disabled,.receive-workspace select:disabled{background:#f3f6f9;color:#596879}#receive-search-results:not(:empty){position:absolute;top:100%;left:0;right:0;z-index:8;background:#fff;box-shadow:0 10px 28px #132e4b24;border-radius:12px;padding:8px;max-height:350px;overflow:auto}.receive-match{width:100%;border:0;background:#fff;color:#23344d;padding:12px;text-align:left;display:flex;justify-content:space-between;gap:16px;border-radius:8px}.receive-match:hover,.receive-match:focus-visible{background:#fff2df}.receive-match span:last-child{text-align:right;white-space:nowrap}.receive-match small,.receive-product small,.receive-number small{display:block;color:#65758a;font-size:12px;margin-top:5px}.receive-no-match{padding:14px;line-height:2}.receive-sheet{padding:0;overflow:hidden}.receive-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px}.receive-sheet-head h2{font-size:17px;margin:0}.receive-sheet-head h2 span{color:#65758a;font-size:13px;font-weight:400}.receive-table-scroll{overflow-x:auto}.receive-table{width:100%;min-width:1030px;border-collapse:collapse}.receive-table th{background:#fff7ed;color:#775037;font-weight:500;font-size:12px;padding:13px 12px;text-align:left}.receive-table td{padding:16px 12px;border-bottom:1px solid #edf1f6;vertical-align:top}.receive-table th:first-child,.receive-table td:first-child{padding-left:24px}.receive-product{min-width:330px;width:40%}.receive-product>strong{font-size:15px}.receive-product label{font-size:11px;color:#596879;display:block}.receive-product input,.receive-product select{width:100%;margin:4px 0 7px}.receive-new-details{display:grid;grid-template-columns:1.2fr 1fr .65fr;gap:8px}.receive-table td:nth-child(3) input{width:85px}.receive-table td:nth-child(4) input{width:115px}.receive-table td:nth-child(5) input{width:105px}.receive-number{font-variant-numeric:tabular-nums;white-space:nowrap}.receive-remove{width:32px;height:32px;border:0;border-radius:8px;background:#ffeaed;color:#a82035;font-size:22px;cursor:pointer}.receive-remove:disabled{opacity:.5}.receive-warning{display:block;color:#94510d;background:#fff3da;padding:5px 8px;border-radius:6px;font-size:11px;margin-top:7px}.receive-empty{text-align:center;color:#52677f;padding:40px 15px;line-height:2}.receive-empty small{color:#748499}.receive-note input{display:block;width:100%;margin-top:8px}.receive-footer{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,auto);gap:16px 24px}.receive-footer>p,.receive-footer>.form-error,.receive-footer>.notice{grid-column:1/-1;margin:0}.receive-summary{align-self:center;display:grid;gap:8px;text-align:right}.receive-summary strong{font-size:21px;color:#ad4a00}.receive-summary span{color:#52677f;font-size:13px}.receive-submit{grid-column:1/-1;justify-self:end;min-height:48px}.receive-done{max-width:1000px;margin:auto;width:100%;box-sizing:border-box}.receive-check{display:inline-flex;background:#daf5e7;color:#176347;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;font-size:27px}.receive-total{display:block;color:#176347;font-size:24px;margin:16px 0}.receive-done table{width:100%}.receive-workspace button:focus-visible{outline:2px solid #1a647a;outline-offset:3px}@media(max-width:850px){.receive-entry,.receive-footer{grid-template-columns:1fr}.receive-entry>.btn{justify-self:start}.receive-summary{text-align:left}.receive-submit{width:100%}.receive-entry,.receive-footer,.receive-done{padding:18px}.receive-sheet-head{padding:18px}}

.receive-row-number{display:inline-block;color:#61758a;font-size:11px;background:#f0f4f8;border-radius:6px;padding:3px 7px;margin-right:7px;margin-bottom:6px}

.receive-new-details>label{min-width:0}.staff-no-stock [data-receive-action="open"]{display:none}
@media(min-width:851px) and (max-width:1450px){.receive-table{min-width:920px}.receive-product{min-width:250px;width:32%}.receive-table td:nth-child(3) input{width:72px}.receive-table td:nth-child(4) input{width:100px}.receive-table td:nth-child(5) input{width:85px}}


.receive-product select{padding-right:30px;min-width:0;font:inherit;color:#23344d;cursor:pointer}.receive-product select:disabled{cursor:default}

