:root{--bg:#f2ece2;--paper:#fbf7ef;--ink:#3e2d25;--muted:#87786c;--line:#ded2c1;--accent:#6b4936;--gold:#ab8453;--green:#496450}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:15px system-ui,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:var(--paper);border:1px solid var(--line);border-radius:12px;min-height:48px;padding:13px 18px}button:hover{border-color:var(--accent);background:#eee3d2}button:disabled{opacity:.4;cursor:default}.primary{background:var(--ink);color:#fff5e5;border-color:var(--ink)}.primary:hover{background:var(--accent);color:#fff}.danger{color:#a33f30}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fffaf2;border-radius:10px;min-height:48px;padding:13px}input:focus,select:focus{outline:2px solid var(--gold)}label{color:var(--muted);margin:12px 0 7px;font-size:13px;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400}h1{margin-bottom:9px;font-size:36px}h2{font-size:28px}h3{font-size:17px}.muted,small{color:var(--muted)}.eyebrow{letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-size:11px}.shell{grid-template-columns:210px 1fr;min-height:100vh;display:grid}aside{border-right:1px solid var(--line);background:#e7ddce;flex-direction:column;gap:10px;padding:30px 18px;display:flex}.brand{padding:5px 10px 30px;font:24px/1.25 Georgia,serif}.brand small{letter-spacing:2px;margin-top:12px;font:10px system-ui;display:block}nav button{text-align:left;background:0 0;border:0;width:100%;margin-bottom:8px;display:block}nav button.active{background:var(--ink);color:var(--paper)}.sidefoot{margin-top:auto;padding:25px 8px 0;font-size:12px;line-height:1.7}main{min-width:0;padding:30px 34px}header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.badge{color:#526346;background:#e7eddf;border-radius:20px;padding:7px 12px;font-size:12px;display:inline-block}.notice{background:#e9dfcf;border-radius:12px;margin-bottom:20px;padding:12px 16px;font-size:13px;line-height:1.5}.sale-layout{grid-template-columns:minmax(0,1fr) 355px;gap:24px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px}.filters{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.filters button{min-height:44px;padding:10px 13px;font-size:13px}.filters .active{background:var(--ink);color:var(--paper)}.tools{gap:10px;display:flex}.tools>*{flex:1}.grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:16px;display:grid}.product{background:var(--paper);border:1px solid var(--line);text-align:left;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;min-height:160px;padding:18px;display:flex}.product .mark{color:var(--gold);font-size:22px}.product strong{font-size:16px;line-height:1.35}.product small{font-size:11px}.product .price{margin-top:auto;font-size:13px}.basket{align-self:start;position:sticky;top:20px}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.stack{gap:10px;display:flex}.stack>*{flex:1}.lineitem{border-bottom:1px solid var(--line);padding:15px 0}.lineitem strong{font-size:14px}.lineitem small{margin:5px 0;display:block}.qty{align-items:center;gap:8px;margin-top:10px;display:flex}.qty button{min-height:36px;padding:5px 12px}.total{padding:20px 0;font-family:Georgia,serif;font-size:27px}.wide{width:100%}.empty{text-align:center;color:var(--muted);padding:45px 15px;line-height:1.8}.statgrid{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px;display:grid}.stat{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px}.stat b{margin-top:10px;font:30px Georgia,serif;display:block}table{border-collapse:collapse;width:100%;font-size:14px}td,th{text-align:left;border-bottom:1px solid var(--line);padding:15px 10px}.tablewrap{overflow:auto}th{color:var(--muted);font-size:12px;font-weight:500}.right{text-align:right}.modalback{z-index:20;background:#2c201b88;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--paper);border-radius:22px;width:550px;max-width:100%;max-height:90vh;padding:28px;overflow:auto}.modal .close{float:right;min-height:36px;padding:8px 14px}.receipt{font:14px/1.7 monospace}.receipt h2{text-align:center;font:23px Georgia,serif}.receipt hr{border:0;border-top:1px dashed #aaa}.toast{background:var(--ink);color:#fff;z-index:50;border-radius:12px;padding:15px 25px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.subtle{background:0 0}.pill{border:1px solid var(--line);border-radius:8px;padding:4px 8px;font-size:12px}.split{grid-template-columns:1fr 1fr;gap:20px;display:grid}.textlink{color:var(--accent);text-decoration:underline}footer{color:var(--muted);padding-top:20px;font-size:12px;line-height:1.6}@media (max-width:1100px){.shell{grid-template-columns:165px 1fr}main{padding:24px 20px}.sale-layout{grid-template-columns:1fr 310px}.brand{font-size:21px}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media (max-width:780px){.shell{display:block}aside{padding:12px;display:block}.brand{display:none}nav{display:flex;overflow:auto}nav button{white-space:nowrap;width:auto;margin:0}.sidefoot{display:none}.sale-layout,.split{grid-template-columns:1fr}.basket{position:static}.statgrid{grid-template-columns:1fr}header{align-items:flex-start}h1{font-size:30px}}@media print{@page{size:58mm auto;margin:0}html,body{color:#000!important;background:#fff!important;min-width:0!important;margin:0!important;padding:0!important}body>*{display:none!important}#printArea{color:#000;background:#fff;width:48mm;max-width:100%;margin:0;padding:2mm 0;display:block!important}#printArea .receipt{overflow-wrap:anywhere;color:#000;width:100%;font:500 12px/1.4 Arial,Helvetica,sans-serif}#printArea .receipt *{color:#000!important;text-shadow:none!important}#printArea .receipt h2{overflow-wrap:normal;margin:0 0 3mm;font:700 17px/1.2 Arial,Helvetica,sans-serif}#printArea .receipt h3{margin:3mm 0;font:700 14px/1.3 Arial,Helvetica,sans-serif}#printArea .receipt p{margin:2mm 0}#printArea .receipt small{overflow-wrap:anywhere;font:11px/1.4 Arial,Helvetica,sans-serif;display:block}#printArea .receipt hr{border:0;border-top:1px solid #000;margin:3mm 0}#printArea .receiptline{break-inside:avoid;padding:2mm 0}#printArea .receipt .row{flex-wrap:wrap;align-items:flex-start;gap:2mm;display:flex}#printArea .receipt .row>span{flex:auto;min-width:0}#printArea .receipt .row>b:last-child{white-space:nowrap;flex:none;margin-left:auto}}.loading{max-width:600px;margin:12vh auto;padding:35px}.error{color:#982f26;background:#f7e7dc}.small{font-size:12px;line-height:1.6}.counter{float:right;color:#fff;background:#b88958;border-radius:20px;padding:1px 7px}.scent-results{max-height:240px;overflow:auto}.scent-results button{text-align:left;margin-bottom:6px}.center{text-align:center}.receipt p{margin:7px 0}.receiptline{padding:8px 0}.statgrid{margin-top:20px}.offline{color:#754917;background:#f0dfbf}.notice button{min-height:30px;margin-left:10px;padding:4px 10px}footer{margin-top:22px}.sidefoot{overflow-wrap:anywhere}.stack,.modal .wide{margin-top:12px}#printArea{display:none}.basket{flex-direction:column;gap:0;height:calc(100dvh - 175px);min-height:400px;max-height:calc(100dvh - 60px);padding:18px;display:flex}.basket h2{margin:0 0 12px;font-size:26px}.customer-compact{border-bottom:1px solid var(--line);flex-shrink:0;padding-bottom:12px}.customer-label{font-size:14px;font-weight:600}.small-button{border-radius:9px;min-height:38px;padding:6px 10px;font-size:12px}.customer-search-wrap{margin-top:9px;position:relative}.customer-search-wrap input{min-height:44px;padding:10px 12px;font-size:14px}.customer-results{z-index:10;background:var(--paper);border:1px solid var(--line);border-radius:10px;max-height:250px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 8px 24px #3e2d2522}.customer-results button{text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;width:100%;padding:10px 12px;display:block}.customer-results small{margin-top:3px;display:block}.basket-items{overscroll-behavior:contain;flex:1;min-height:0;padding-right:4px;overflow:auto}.basket-line{border-bottom:1px solid var(--line);padding:13px 0}.basket-line strong,.basket-line b{font-size:14px}.basket-line small{margin-top:4px;font-size:12px;line-height:1.5;display:block}.basket-line-controls{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.quantity-controls{border:1px solid var(--line);border-radius:10px;align-items:center;display:flex;overflow:hidden}.quantity-controls button{border:0;border-radius:0;min-width:42px;min-height:40px;padding:6px 10px;font-size:17px}.quantity-controls b{text-align:center;min-width:28px}.remove-item{color:#9a4938;background:0 0;border:0;min-height:40px;padding:6px 8px;font-size:12px}.basket-summary{background:var(--paper);border-top:1px solid var(--line);flex-shrink:0;margin-top:4px;padding-top:12px}.basket-total{margin-bottom:10px;font-size:19px}.charge-button{min-height:54px;font-size:17px;font-weight:650}.basket .empty{padding:25px 10px}.sale-layout{align-items:start}@media (max-width:780px){.basket{height:auto;min-height:280px;max-height:none}.basket-items{max-height:45dvh}.basket-summary{padding-bottom:8px;position:sticky;bottom:0}.charge-button{min-height:54px}}@media (min-width:781px){.basket{min-height:0}}.product-picker{flex-direction:column;max-height:calc(100dvh - 40px);padding:0;display:flex;overflow:hidden}.picker-heading{flex-shrink:0;padding:20px 24px 0}.picker-heading h2{margin-bottom:6px}.picker-heading p{margin-bottom:10px}.picker-body{overscroll-behavior:contain;min-height:0;padding:0 24px 16px;overflow:auto}.picker-footer{border-top:1px solid var(--line);background:var(--paper);flex-shrink:0;padding:12px 24px 20px}.picker-footer .wide{margin-top:0}.picker-footer p{margin-bottom:8px}.picker-footer .error{border-radius:8px;padding:10px}.selected-scent{margin:12px 0 0}.selected-scent button{margin:8px 0 0;display:block}.product-picker .scent-results{max-height:180px}.report-controls{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.report-controls label{flex:1;min-width:150px;margin:0}.report-controls label input,.report-controls label select{margin-top:6px}.report-section{margin-bottom:20px}.reports .tablewrap{max-height:440px}.reports table th{background:var(--paper);position:sticky;top:0}.reports .stat b{font-size:26px}.reports .notice p:last-child{margin-bottom:0}.customer-profile-list{max-height:360px;margin:18px 0 28px;overflow:auto}.customer-profile-choice{text-align:left;margin:8px 0}.customer-profile-choice b,.customer-profile-choice small{display:block}.customer-profile-choice.selected{background:#e9dfcd;border-color:#493629}.device-setup-code{letter-spacing:.12em;overflow-wrap:anywhere;font-size:1.4rem}details{margin-top:24px}summary{cursor:pointer;padding:12px 0;font-weight:600}
