@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{color-scheme:dark;--bg: #0d1117;--surface: #161b22;--card: #1c2028;--border: #2a2f38;--text: #e6edf3;--dim: #8b949e;--accent: #cf4545;--accent-hover: #b63939}*,*:before,*:after{box-sizing:border-box;margin:0}body{font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.shell{height:100vh;display:grid;grid-template-rows:auto 1fr;grid-template-columns:1fr 360px}.topbar{grid-column:1 / -1}.center{grid-column:1}.rail{grid-column:2;grid-row:2}.topbar{display:flex;align-items:center;gap:10px;padding:0 12px;height:48px;background:var(--surface);overflow:hidden;border-bottom:1px solid var(--border)}.logo-svg{height:18px;width:auto;color:var(--text);flex-shrink:0}.nav-tabs{display:flex;align-self:stretch;margin-left:8px}.nav-tab{display:flex;align-items:center;gap:6px;padding:0 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--dim);font-size:.82rem;cursor:pointer;white-space:nowrap}.nav-tab.active{color:var(--text);border-bottom-color:var(--accent)}.nav-badge{background:var(--accent);color:#fff;font-size:.6rem;font-weight:700;padding:1px 6px;border-radius:999px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:6px;flex-shrink:0;overflow:hidden}.gear-btn{width:34px;height:34px;display:grid;place-items:center;background:none;border:1px solid var(--border);border-radius:8px;color:var(--dim);cursor:pointer}.gear-btn:hover{border-color:#444d56;color:var(--text)}.gear-btn.active{border-color:var(--accent);color:var(--text)}.loc-reg{margin-left:auto;display:flex;gap:8px;flex-shrink:0}.topbar-select{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 10px;font-size:.78rem;outline:none;cursor:pointer}.density-toggle{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;flex-shrink:0}.dt-btn{padding:6px 14px;background:none;border:none;color:var(--dim);font-size:.76rem;cursor:pointer}.dt-btn.active{background:var(--card);color:var(--text);font-weight:600}.center-search{position:relative;padding:14px 20px 0}.center-search .dropdown{left:20px;right:20px}.search-input{width:100%;background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px 14px;font-size:.9rem;outline:none;transition:border-color .12s}.search-input:focus{border-color:#444d56}.dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;z-index:20;box-shadow:0 8px 24px #00000059}.rail-dd{left:0;right:0}.dd-item{display:grid;grid-template-columns:1fr auto;gap:2px 12px;width:100%;padding:10px 14px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);text-align:left;cursor:pointer;transition:background 80ms}.dd-item:last-child{border-bottom:none}.dd-item:hover{background:var(--card)}.dd-name{font-size:.88rem;font-weight:500}.dd-meta{grid-column:1;font-size:.74rem;color:var(--dim)}.dd-price{grid-row:1 / 3;grid-column:2;align-self:center;font-size:.88rem;color:var(--dim)}.dd-product{display:flex;flex-direction:column;gap:3px;padding:10px 14px}.dd-product.dd-oos{opacity:.4;cursor:not-allowed}.dd-row1{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.dd-pricing{display:flex;align-items:baseline;gap:6px;flex-shrink:0}.dd-sale{font-weight:700;color:#e05252}.dd-orig{font-size:.76rem;color:#636c76;text-decoration:line-through}.dd-row2{display:flex;align-items:center;gap:6px;font-size:.74rem;color:var(--dim)}.dd-strain{font-size:.64rem;font-weight:600;text-transform:uppercase;padding:1px 6px;border-radius:999px;border:1px solid var(--border)}.dd-strain.indica{color:#b09aff;border-color:#b09aff4d}.dd-strain.sativa{color:#7ec87e;border-color:#7ec87e4d}.dd-strain.hybrid{color:#e0b65c;border-color:#e0b65c4d}.dd-strain.cbd{color:#6cbfcf;border-color:#6cbfcf4d}.dd-row3{font-size:.72rem;color:var(--dim);display:flex;gap:8px}.dd-terps{font-style:italic;color:#7a8390}.dd-row4{display:flex;align-items:center;justify-content:space-between;font-size:.66rem;color:#525960;font-family:monospace}.dd-stock{font-family:Inter,system-ui,sans-serif;font-weight:500;color:#3fb950}.dd-stock.low{color:#d29922}.dd-stock.out{color:#f85149}.center{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border)}.grid-section-label,.list-section-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--dim);padding:8px 0 2px;grid-column:1 / -1}.list-section-label{padding:12px 0 4px}.grid{flex:1;overflow-y:auto;padding:16px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;align-content:start}.tile{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:115px;transition:border-color .1s}.tile:hover{border-color:#444d56}.cat-tile{border-top:3px solid transparent}.cat-tile .tile-label{font-weight:600;font-size:.95rem}.cat-tile .tile-count{font-size:.72rem;color:var(--dim);background:#8b949e1a;padding:2px 8px;border-radius:999px}.cat-empty{opacity:.35}.back-tile{border-style:dashed}.back-arrow{font-size:1.3rem;color:var(--dim)}.product-tile{align-items:stretch;text-align:left;justify-content:flex-start;gap:0;min-height:140px;padding:0;overflow:hidden;position:relative}.pt-body{display:flex;flex-direction:column;width:100%;background:none;border:none;color:inherit;text-align:left;cursor:pointer;padding:0}.pt-info-btn{position:absolute;bottom:8px;right:8px;background:#30363d99;border:none;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:#8b949e;cursor:pointer;opacity:0;transition:opacity .12s,color .12s}.product-tile:hover .pt-info-btn{opacity:1}.pt-info-btn:hover{color:#e6edf3;background:#30363de6}.pt-row1{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 0;gap:6px}.list-view{flex:1;overflow-y:auto;padding:8px 20px}.list-row{display:grid;grid-template-columns:1.4fr .6fr 1fr 1fr 50px 1fr auto;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--border);background:none;border-left:none;border-right:none;border-top:none;color:var(--text);text-align:left;cursor:pointer;width:100%}.list-row:hover{background:var(--card);border-radius:8px}.list-row.oos{opacity:.4;cursor:not-allowed}.lr-main{display:flex;flex-direction:column;gap:1px}.lr-name{font-weight:600;font-size:.86rem}.lr-sub{font-size:.7rem;color:var(--dim)}.lr-strain{font-size:.76rem;color:var(--dim)}.lr-chem{font-size:.74rem;color:var(--dim)}.lr-terps{font-size:.72rem;color:#7a8390;font-style:italic}.lr-stock{font-size:.78rem;font-weight:500;text-align:center;color:#3fb950}.lr-stock.low{color:#d29922}.lr-stock.out{color:#f85149}.lr-lot{font-size:.66rem;color:#525960;font-family:monospace}.lr-price{text-align:right;font-weight:600;font-size:.88rem}.lr-sale{color:#e05252}.lr-orig{font-size:.74rem;color:#636c76;text-decoration:line-through;margin-left:6px}.cat-list-row{grid-template-columns:32px 1fr auto 24px;padding:14px 12px;border-radius:8px;margin-bottom:2px}.cat-list-row:hover{background:var(--card)}.clr-icon{font-size:1rem;color:var(--dim);text-align:center}.clr-name{font-weight:600;font-size:.88rem}.clr-count{font-size:.72rem;color:var(--dim);background:#8b949e1a;padding:3px 10px;border-radius:999px}.clr-arrow{font-size:1.1rem;color:#525960}.back-list-row{grid-template-columns:32px 1fr;padding:12px;color:var(--dim);border-bottom:1px solid var(--border);margin-bottom:4px}.back-list-row:hover{color:var(--text)}.promo-tile-badge{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:4px;background:#3fb950;color:#0d1117}.product-tile.has-promo{border-color:#3fb95040}.promo-savings-row,.promo-savings-row strong{color:#3fb950}.product-tile.oos{opacity:.45;cursor:not-allowed}.pt-cat{font-size:.66rem;color:var(--dim);text-transform:uppercase;letter-spacing:.04em}.stock-badge{font-size:.62rem;font-weight:500;color:#3fb950;margin-left:auto}.stock-badge.low{color:#d29922}.stock-badge.out{color:#f85149}.strain-badge{font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:2px 7px;border-radius:999px;border:1px solid var(--border);flex-shrink:0}.strain-badge.indica{color:#b09aff;border-color:#b09aff4d}.strain-badge.sativa{color:#7ec87e;border-color:#7ec87e4d}.strain-badge.hybrid{color:#e0b65c;border-color:#e0b65c4d}.strain-badge.cbd{color:#6cbfcf;border-color:#6cbfcf4d}.pt-name{padding:6px 14px 0;font-weight:600;font-size:.95rem;line-height:1.3}.pt-chem{padding:4px 14px 0;display:flex;flex-direction:column;gap:1px;font-size:.74rem;color:var(--dim)}.pt-terps{font-size:.68rem;color:#7a8390;font-style:italic}.pt-pricing{margin-top:auto;padding:10px 14px 14px;display:flex;align-items:baseline;gap:8px}.pt-price{font-size:1.2rem;font-weight:700}.pt-sale{font-size:1.2rem;font-weight:700;color:#e05252}.pt-orig{font-size:.82rem;color:#636c76;text-decoration:line-through}.pt-meta{padding:6px 14px 12px;display:flex;flex-direction:column;gap:2px;font-size:.62rem;color:#525960;font-family:monospace;border-top:1px solid var(--border);margin-top:8px}.pt-tags{font-family:Inter,system-ui,sans-serif;color:var(--dim);font-style:normal}.browse-tabs{display:flex;border-bottom:1px solid var(--border);padding:0 20px}.browse-tab{padding:10px 18px;background:none;border:none;border-bottom:2px solid transparent;color:var(--dim);font-size:.82rem;cursor:pointer}.browse-tab.active{color:var(--text);border-bottom-color:var(--accent)}.history-browse{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:20px}.hb-section h3{margin:0 0 10px;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dim)}.hb-items{display:flex;flex-direction:column;gap:6px}.hb-item{background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.hb-item-oos{border-color:#f8514933}.hb-item-main{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;gap:12px;width:100%;background:none;border:none;color:var(--text);text-align:left;cursor:pointer}.hb-item-main:hover{background:#ffffff05}.hb-purchase-count{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;border-radius:8px;background:#3fb9501a;color:#3fb950;font-size:.82rem;font-weight:700;flex-shrink:0;border:1px solid rgba(63,185,80,.2)}.hb-item-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.hb-item-info strong{font-size:.88rem}.hb-item-info small{font-size:.74rem;color:var(--dim)}.hb-item-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.hb-stock-ok{font-size:.74rem;color:#3fb950;font-weight:500}.hb-sale-price{color:#e05252;font-weight:600}.hb-orig-price{color:#636c76;text-decoration:line-through}.hb-unavail{font-size:.74rem;color:#f85149;font-weight:500}.hb-unavail-sm{font-size:.7rem;color:#f85149;flex-shrink:0}.hb-chevron{font-size:.6rem;color:var(--dim)}.hb-add{padding:8px 16px;font-size:.82rem;flex-shrink:0}.hb-item-detail{padding:0 14px 12px;border-top:1px solid var(--border)}.hb-product-detail{padding-top:10px}.hb-pd-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:10px}.hb-pd-field{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 8px}.hb-pd-field small{display:block;font-size:.6rem;color:var(--dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:1px}.hb-pd-field span{font-size:.8rem}.hb-pd-wide{grid-column:1 / -1}.hb-no-product{margin:10px 0 0;font-size:.82rem;color:var(--dim)}.hb-similar{padding:10px 0 0;border-top:1px solid var(--border);margin-top:10px;display:flex;flex-direction:column;gap:6px}.hb-similar h4{margin:0 0 4px;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.hb-sim-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.hb-sim-info{display:flex;flex-direction:column;gap:1px}.hb-sim-info strong{font-size:.84rem}.hb-sim-info small{font-size:.72rem;color:var(--dim)}.hb-sim-terps{font-style:italic;color:#7a8390}.hb-similar-btn{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;text-align:left}.hb-similar-btn:hover{border-color:#444d56}.hb-similar-btn span{font-size:.82rem;font-weight:500}.hb-similar-btn small{font-size:.72rem;color:var(--dim)}.hb-order{background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:6px;overflow:hidden}.hb-order-head{display:flex;align-items:center;gap:12px;padding:12px 14px;width:100%;background:none;border:none;color:var(--text);text-align:left;cursor:pointer}.hb-order-head:hover{background:#ffffff05}.hb-order-id{font-family:monospace;font-size:.78rem;color:var(--dim)}.hb-order-head span{font-size:.8rem;color:var(--dim)}.hb-order-head strong{margin-left:auto;font-size:.88rem}.hb-order-detail{padding:0 14px 14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.hb-od-meta{display:flex;gap:16px;padding-top:10px;font-size:.76rem;color:var(--dim)}.hb-od-items{display:flex;flex-direction:column}.hb-od-line{border-bottom:1px solid var(--border);padding:8px 0}.hb-od-line:last-child{border-bottom:none}.hb-od-oos{opacity:.6}.hb-od-line-main{display:grid;grid-template-columns:28px 1fr auto auto;gap:10px;align-items:center}.hb-od-qty{width:24px;height:24px;border-radius:6px;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;font-weight:600;font-size:.76rem;color:var(--dim)}.hb-od-line-info span{font-size:.84rem;font-weight:500;display:block}.hb-od-line-info small{font-size:.7rem;color:var(--dim)}.hb-od-line-price{font-weight:600;font-size:.84rem}.hb-od-add{padding:6px 12px;font-size:.76rem}.hb-od-similar{padding:6px 0 0 34px;display:flex;flex-direction:column;gap:4px}.hb-od-similar>small{font-size:.68rem;color:var(--dim)}.hb-od-totals{display:flex;flex-direction:column;gap:4px;padding-top:8px;border-top:1px solid var(--border)}.hb-od-total-line{display:flex;justify-content:space-between;font-size:.82rem;color:var(--dim)}.hb-green{color:#3fb950}.hb-od-grand{padding-top:6px;border-top:1px solid var(--border);color:var(--text);font-size:.92rem}.hb-reorder-full{width:100%;padding:12px;font-size:.88rem;text-align:center}.filter-bar{padding:10px 20px;border-bottom:1px solid var(--border)}.filter-row,.filter-row2{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-row2{padding-top:8px}.filter-count{font-size:.76rem;color:var(--dim);margin-left:auto}.sync-badge{font-size:.68rem;color:#8b949e;background:#8b949e14;padding:2px 8px;border-radius:4px;margin-left:8px;cursor:help;white-space:nowrap}.filter-select{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:7px 10px;font-size:.78rem;outline:none;cursor:pointer}.filter-check{display:flex;align-items:center;gap:4px;font-size:.78rem;color:var(--dim);cursor:pointer;white-space:nowrap}.filter-check input{accent-color:var(--accent)}.filter-clear{background:none;border:1px solid var(--border);border-radius:8px;padding:6px 10px;color:var(--dim);font-size:.72rem;cursor:pointer}.filter-clear:hover{color:var(--text);border-color:#444d56}.view-toggle{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;flex-shrink:0}.vt-btn{padding:6px 10px;background:none;border:none;color:var(--dim);font-size:.82rem;cursor:pointer}.vt-btn.active{background:var(--card);color:var(--text)}.rail{background:var(--surface);display:flex;flex-direction:column;min-height:0}.rail-head{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border)}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot.clear{background:#3fb950}.dot.warn{background:#d29922}.dot.blocked{background:#f85149}.rail-compliance{font-size:.74rem;color:var(--dim)}.rail-title{margin-left:auto;font-weight:600;font-size:.86rem}.patient-section{border-bottom:1px solid var(--border)}.patient-lookup{position:relative;padding:12px 16px}.patient-input{width:100%;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:9px 12px;color:var(--text);font-size:.86rem;outline:none;transition:border-color .12s}.patient-input:focus{border-color:#444d56}.customer-loading{padding:8px 0;font-size:.8rem;color:#8b949e;font-style:italic}.customer-error{display:flex;align-items:flex-start;gap:8px;margin-top:8px;padding:10px 12px;background:#f8514914;border:1px solid rgba(248,81,73,.3);border-radius:8px;font-size:.8rem;color:#f85149;line-height:1.4}.customer-error span{flex:1}.customer-error-x{background:none;border:none;color:#f85149;font-size:1.1rem;cursor:pointer;padding:0;line-height:1;flex-shrink:0}.customer-error-x:hover{color:#ff7b72}.pc-summary{width:100%;display:flex;align-items:center;gap:8px;padding:10px 16px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left}.pc-summary-name{font-weight:600;font-size:.88rem;flex-shrink:0}.pc-type{padding:2px 7px;border-radius:999px;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#cf454526;color:#f08080;border:1px solid rgba(207,69,69,.25);flex-shrink:0}.pc-summary-detail{font-size:.74rem;color:var(--dim);margin-left:auto;white-space:nowrap}.pc-summary-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:8px}.pc-chevron{font-size:.72rem;color:var(--dim);transition:transform .15s}.pc-chevron.open{transform:rotate(180deg)}.pc-x{font-size:1.1rem;color:var(--dim);cursor:pointer;line-height:1}.pc-x:hover{color:var(--text)}.pc-detail{padding:12px 16px;border-bottom:1px solid var(--border)}.pc-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.pc-stat{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:7px 9px}.pc-stat small{display:block;font-size:.62rem;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.pc-stat span{font-size:.78rem;font-weight:500}.pc-coupons{margin-top:8px}.pc-coupons>small{display:block;font-size:.64rem;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.coupon-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;background:var(--card);border:1px solid var(--border);border-radius:8px;margin-bottom:4px}.coupon-row.applied{border-color:#3fb950}.coupon-code{font-size:.76rem;font-weight:600;font-family:monospace;color:#e0b65c}.coupon-desc{display:block;font-size:.72rem;color:var(--dim)}.coupon-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.coupon-meta{text-align:right;font-size:.64rem;color:#525960;display:flex;flex-direction:column;gap:1px}.coupon-btn{padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:600;cursor:pointer;border:1px solid #3fb950;background:#3fb9501a;color:#3fb950}.coupon-btn.remove{border-color:#f85149;background:#f851491a;color:#f85149}.pc-routes{margin-top:8px}.pc-routes>small{display:block;font-size:.64rem;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.pc-route-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.pc-route{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:7px 9px;display:flex;flex-direction:column;gap:2px}.pc-route span{font-size:.66rem;color:var(--dim)}.pc-route strong{font-size:.76rem}.pc-route.low{border-color:#d29922}.pc-route.low strong{color:#d29922}.pc-route.over{border-color:#f85149}.pc-route.over strong{color:#f85149}.pc-prefs{margin-top:8px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.pc-prefs small{font-size:.64rem;color:var(--dim);text-transform:uppercase;letter-spacing:.05em}.pc-prefs span{font-size:.78rem;color:var(--text)}.route-strip{display:flex;overflow-x:auto;padding:0;border-bottom:1px solid var(--border)}.rs-cell{min-width:80px;flex:1;padding:6px 8px;text-align:center;border-right:1px solid var(--border)}.rs-cell:last-child{border-right:none}.rs-label{display:block;font-size:.54rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dim);margin-bottom:3px}.rs-value{display:block;font-size:.82rem;font-weight:700;margin-bottom:5px}.rs-cell.ok .rs-value{color:#3fb950}.rs-cell.low .rs-value{color:#d29922}.rs-cell.over .rs-value{color:#f85149}.rs-bar{height:3px;background:#2a2f38;border-radius:2px;overflow:hidden}.rs-fill{height:100%;border-radius:2px;transition:width .2s ease}.rs-cell.ok .rs-fill{background:#3fb950}.rs-cell.low .rs-fill{background:#d29922}.rs-cell.over .rs-fill{background:#f85149}.cart-lines{flex:1;overflow-y:auto;padding:4px 0}.cart-line{display:grid;grid-template-columns:30px 1fr auto auto;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border)}.cl-qty{font-weight:600;font-size:.86rem;text-align:center}.cl-info span{display:block;font-size:.84rem}.cl-info small{color:var(--dim);font-size:.74rem}.cl-qty{cursor:pointer;border-radius:6px}.cl-qty:hover{background:var(--card)}.cl-qty-input{width:40px;background:var(--card);border:1px solid #444d56;border-radius:6px;color:var(--text);font-size:.86rem;font-weight:600;text-align:center;padding:4px;outline:none}.cl-promo{border-left:2px solid #3fb950}.cl-promo-badge{display:block;font-size:.66rem;font-weight:600;color:#3fb950;margin-top:2px}.cl-total{font-weight:600;font-size:.86rem;white-space:nowrap;cursor:pointer}.cl-total:hover{text-decoration:underline;text-decoration-style:dashed}.cl-total-override{color:#6cb6ff}.cl-override-unit{color:#6cb6ff;font-weight:600}.cl-price-input{width:72px;background:var(--card);border:1px solid #6cb6ff;border-radius:6px;color:var(--text);font-size:.86rem;font-weight:600;text-align:right;padding:4px 6px;outline:none}.cl-total-sale{color:#e05252}.cl-sale-unit{color:#e05252;font-weight:600}.cl-orig-unit{color:#636c76;text-decoration:line-through}.cl-btns{display:flex;gap:4px}.cl-btns button{width:30px;height:30px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:1rem;cursor:pointer;display:grid;place-items:center}.cl-btns button:hover{border-color:#444d56}.rail-footer{border-top:1px solid var(--border);padding:12px 16px 16px;display:flex;flex-direction:column;gap:7px}.sum-row{display:flex;justify-content:space-between;align-items:center;font-size:.84rem;color:var(--dim)}.sum-row strong{color:var(--text)}.sum-total{font-size:1.05rem;color:var(--text);padding-top:6px;border-top:1px solid var(--border)}.disc-input{width:68px;background:var(--card);border:1px solid var(--border);border-radius:6px;padding:5px 8px;color:var(--text);font-size:.84rem;text-align:right;outline:none}.disc-input:focus{border-color:#444d56}.coupon-applied-row,.coupon-applied-row strong{color:#3fb950}.loyalty-row{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;font-size:.84rem;color:var(--dim)}.loyalty-controls{display:flex;align-items:center;gap:6px;justify-self:end}.loyalty-input{width:68px;background:var(--card);border:1px solid var(--border);border-radius:6px;padding:4px 6px;color:var(--text);font-size:.84rem;text-align:right;outline:none}.loyalty-input:focus{border-color:#444d56}.loyalty-value{font-size:.82rem;color:var(--text);font-weight:500}.loyalty-avail{grid-column:1 / -1;font-size:.66rem;color:#525960}.coupon-entry{display:flex;gap:6px;align-items:center}.coupon-code-input{flex:1;background:var(--card);border:1px solid var(--border);border-radius:6px;padding:6px 8px;color:var(--text);font-size:.82rem;font-family:monospace;text-transform:uppercase;letter-spacing:.04em;outline:none}.coupon-code-input:focus{border-color:#444d56}.coupon-code-input::placeholder{text-transform:none;font-family:Inter,system-ui,sans-serif;letter-spacing:normal}.coupon-apply-btn{padding:6px 12px;border:1px solid #3fb950;border-radius:6px;background:#3fb9501a;color:#3fb950;font-size:.74rem;font-weight:600;cursor:pointer;flex-shrink:0}.coupon-apply-btn:disabled{opacity:.4;cursor:not-allowed}.coupon-applied-actions{display:flex;align-items:center;gap:6px}.coupon-remove-sm{background:none;border:none;color:#f85149;font-size:1rem;cursor:pointer;line-height:1}.override-btn{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px;color:var(--dim);font-size:.76rem;cursor:pointer}.pay-btn{margin-top:4px;padding:14px;background:var(--accent);border:none;border-radius:10px;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background .1s}.pay-btn:hover:not(:disabled){background:var(--accent-hover)}.pay-btn:disabled{opacity:.45;cursor:not-allowed}.effects-btn{width:100%;padding:10px;background:transparent;border:1px dashed #6cb6ff;color:#6cb6ff;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;margin:8px 0;transition:background .15s}.effects-btn:hover:not(:disabled){background:#6cb6ff14}.effects-btn:disabled{opacity:.5;cursor:wait}.effects-modal{max-width:520px;width:90vw;max-height:80vh;overflow-y:auto}.effects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.effects-header h3{margin:0}.effects-header-actions{display:flex;align-items:center;gap:10px}.effects-apply-all{font-size:.7rem;padding:4px 12px;border-radius:5px;white-space:nowrap}.effects-close{background:none;border:none;color:var(--muted);font-size:1.4rem;cursor:pointer;padding:0 4px}.effects-loading,.effects-empty{color:#8b949e;font-size:.85rem;padding:24px 0;text-align:center}.effects-empty p{margin:0 0 12px}.effects-debug{text-align:left;margin-top:12px}.effects-debug summary{cursor:pointer;font-size:.75rem;color:#636c76;padding:4px 0}.effects-debug-pre{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:12px;font-size:.7rem;line-height:1.5;max-height:300px;overflow:auto;white-space:pre-wrap;word-break:break-all;color:var(--text);margin:8px 0 0}.effects-list{display:flex;flex-direction:column;gap:6px}.effect-card{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:6px;transition:border-color .15s}.effect-card.effect-applied{border-color:#3fb950;background:#3fb9500f}.effect-info{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.effect-type-badge{display:none;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:4px;background:#6cb6ff1f;color:#6cb6ff}.effect-name{font-size:.82rem}.effect-desc{font-size:.7rem;color:#8b949e}.effect-action{display:flex;align-items:center;gap:10px;flex-shrink:0}.effect-value{font-size:.82rem;font-weight:700;color:#3fb950}.effect-apply,.effect-remove{font-size:.7rem;padding:4px 10px;border-radius:5px}.applied-effects-summary{margin:6px 0;display:flex;flex-direction:column;gap:4px}.applied-effect-row{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;padding:4px 8px;background:#3fb9500f;border-radius:6px;border:1px solid rgba(63,185,80,.2)}.applied-effect-name{color:#3fb950;font-weight:500}.applied-effect-right{display:flex;align-items:center;gap:8px}.applied-effect-val{color:#3fb950;font-size:.82rem}.applied-effect-x{background:none;border:none;color:#8b949e;font-size:1rem;cursor:pointer;padding:0 2px}.applied-effect-x:hover{color:#f85149}.promos-btn{position:relative}.promos-count{position:absolute;top:-4px;right:-4px;background:var(--accent);color:#fff;font-size:.58rem;font-weight:700;min-width:16px;height:16px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px}.promos-modal{max-width:600px;width:92vw;max-height:85vh;overflow-y:auto}.promos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.promos-header h3{margin:0}.promos-close{background:none;border:none;color:var(--muted);font-size:1.4rem;cursor:pointer}.promos-empty{color:#8b949e;font-size:.85rem;text-align:center;padding:24px 0}.promos-groups{display:flex;flex-direction:column;gap:16px}.promos-group-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#636c76;margin:0 0 6px}.promos-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px}.promo-card{padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:6px}.promo-card-name{font-size:.82rem;display:block;margin-bottom:4px}.promo-card-rules{margin:0;padding:0 0 0 14px;font-size:.72rem;color:#8b949e;line-height:1.6}.promo-card-more{color:#636c76;font-style:italic}.promo-card-desc{font-size:.7rem;color:#636c76;display:block;margin-top:4px}.eligibility-strip{display:flex;flex-wrap:wrap;gap:5px;padding:6px 16px}.eligibility-badge{font-size:.68rem;font-weight:600;padding:3px 10px;border-radius:999px;background:#3fb9501a;color:#3fb950;border:1px solid rgba(63,185,80,.2)}.elig-loyalty{background:#6cb6ff1a;color:#6cb6ff;border-color:#6cb6ff33}.pd-modal{max-width:420px;width:90vw;max-height:88vh;overflow-y:auto;padding:0;position:relative}.pd-close{position:absolute;top:10px;right:10px;z-index:2;background:#00000080;border:none;color:#e6edf3;font-size:1.2rem;width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.pd-close:hover{background:#000000b3}.pd-image{width:100%;height:200px;object-fit:contain;background:#0d1117;border-radius:12px 12px 0 0;display:block}.pd-content{padding:16px 20px 20px;display:flex;flex-direction:column;gap:12px}.pd-name{margin:0;font-size:1.05rem;line-height:1.3;font-weight:700}.pd-brand{font-size:.76rem;color:#8b949e;margin-top:-8px}.pd-price-row{display:flex;align-items:baseline;gap:10px}.pd-sale-big{font-size:1.5rem;font-weight:800;color:#3fb950}.pd-orig-big{font-size:.9rem;color:#636c76;text-decoration:line-through}.pd-price-big{font-size:1.5rem;font-weight:800}.pd-stock{margin-left:auto;font-size:.76rem;font-weight:600;color:#3fb950}.pd-stock.out{color:#f85149}.pd-stock.low{color:#d29922}.pd-badges{display:flex;flex-wrap:wrap;gap:5px}.pd-route-badge,.pd-cat-badge{font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:3px 8px;border-radius:4px}.pd-route-badge{background:#6cb6ff1a;color:#6cb6ff}.pd-cat-badge{background:#8b949e14;color:#8b949e}.pd-route-allot{display:flex;gap:16px;padding:10px 12px;background:#6cb6ff0d;border:1px solid rgba(108,182,255,.12);border-radius:8px;font-size:.78rem}.pd-route-label{color:#6cb6ff;font-weight:600}.pd-allot-label{color:#8b949e}.pd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:8px;overflow:hidden}.pd-cell{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--surface)}.pd-cell small{font-size:.62rem;color:#636c76;text-transform:uppercase;letter-spacing:.03em}.pd-cell strong{font-size:.82rem}.pd-lot{font-size:.7rem;font-family:monospace;word-break:break-all}.pd-label{display:block;font-size:.64rem;color:#636c76;text-transform:uppercase;letter-spacing:.03em;margin-bottom:5px}.pd-terp-list,.pd-tag-list{display:flex;flex-wrap:wrap;gap:4px}.pd-terp{font-size:.7rem;padding:2px 8px;border-radius:999px;background:#3fb95014;color:#3fb950;border:1px solid rgba(63,185,80,.15)}.pd-tag{font-size:.7rem;padding:2px 8px;border-radius:999px;background:#8b949e14;color:#8b949e;border:1px solid rgba(139,148,158,.15)}.pd-add{width:100%;padding:14px;font-size:.88rem;font-weight:600;border-radius:10px;margin-top:4px}.pay-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--bg);display:flex;flex-direction:column}.pay-header{display:flex;align-items:center;gap:16px;padding:14px 28px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.pay-header h2{margin:0;font-size:1.1rem}.pay-total-badge{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:6px 14px;font-size:.92rem;font-weight:700}.pay-close{margin-left:auto;width:38px;height:38px;display:grid;place-items:center;background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--dim);font-size:1.2rem;cursor:pointer}.pay-close:hover{border-color:#525960;color:var(--text)}.pay-body{flex:1;display:grid;grid-template-columns:1fr 1fr;min-height:0;overflow:hidden}.pay-left{overflow-y:auto;padding:24px 28px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:16px}.pay-section h3{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dim)}.pay-patient{margin:4px 0 0;font-size:.88rem;font-weight:500}.pay-items{display:flex;flex-direction:column}.pay-item{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:.86rem}.pay-item:last-child{border-bottom:none}.pay-item-qty{width:26px;height:26px;border-radius:6px;background:var(--card);border:1px solid var(--border);display:grid;place-items:center;font-weight:600;font-size:.78rem;color:var(--dim)}.pay-item-info{display:flex;flex-direction:column;gap:1px}.pay-item-name{font-weight:500;font-size:.86rem}.pay-item-sale{font-size:.72rem;color:#e05252}.pay-item-was{color:#636c76;text-decoration:line-through}.pay-item-promo{font-size:.7rem;color:#3fb950;font-weight:600}.pay-item-price{text-align:right;font-weight:600}.pay-item-override{color:#6cb6ff}.pay-totals{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--border)}.pay-line{display:flex;justify-content:space-between;font-size:.84rem;color:var(--dim)}.pay-green{color:#3fb950}.pay-grand-row{display:flex;justify-content:space-between;align-items:baseline;padding-top:10px;border-top:1px solid var(--border);font-size:1.2rem;color:var(--text)}.pay-grand-row strong{font-size:1.2rem}.pay-routes{padding-top:12px;border-top:1px solid var(--border)}.pay-routes h4{margin:0 0 8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.pay-route-grid{display:flex;flex-wrap:wrap;gap:6px}.pay-route{min-width:90px;flex:1;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px;text-align:center;display:flex;flex-direction:column;gap:2px}.pay-route-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.pay-route-order{font-size:.8rem;font-weight:600}.pay-route-none{color:var(--dim)}.pay-route.ok .pay-route-order{color:var(--text)}.pay-route.low .pay-route-order{color:#d29922}.pay-route.over .pay-route-order{color:#f85149}.pay-route-remaining{font-size:.72rem;font-weight:500}.pay-route.ok .pay-route-remaining{color:#3fb950}.pay-route.low .pay-route-remaining{color:#d29922}.pay-route.over .pay-route-remaining{color:#f85149}.pay-right{padding:24px 28px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.pay-right>h3{margin:0 0 4px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dim)}.pay-method-btn{display:flex;align-items:center;gap:16px;padding:16px 18px;background:var(--surface);border:2px solid var(--border);border-radius:12px;cursor:pointer;color:var(--text);text-align:left;transition:border-color .14s,background .14s}.pay-method-btn:hover{background:var(--card)}.pm-icon{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-size:1rem;font-weight:700;flex-shrink:0}.aeropay .pm-icon{background:#132b1e;color:#3fb950}.cash .pm-icon{background:#1e2b13;color:#7ec87e}.debit .pm-icon{background:#131e2b;color:#6cb6ff}.aeropay:hover{border-color:#3fb95059}.cash:hover{border-color:#7ec87e59}.debit:hover{border-color:#6cb6ff59}.pm-label{font-size:1rem;font-weight:600;display:block}.pay-method-btn small{color:var(--dim);font-size:.78rem;display:block;margin-top:1px}.pm-flow{flex:1;display:flex;flex-direction:column;gap:14px}.pm-flow h3{margin:0;font-size:1rem}.pm-waiting{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:32px;text-align:center}.pm-waiting-amount{font-size:2rem;font-weight:700}.pm-waiting p{margin:0;color:var(--dim);font-size:.88rem}.pm-actions{display:flex;gap:10px;margin-top:auto}.pm-actions .btn-primary,.pm-actions .btn-secondary{flex:1;text-align:center;padding:14px 18px}.cash-due{font-size:.9rem;color:var(--dim)}.cash-input{width:100%;font-size:2.2rem;font-weight:700;text-align:center;padding:18px;border-radius:12px;background:var(--card);border:1px solid var(--border);color:var(--text);outline:none}.cash-input:focus{border-color:#525960}.cash-presets{display:flex;gap:8px}.cash-preset{flex:1;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9rem;font-weight:600;cursor:pointer;text-align:center}.cash-preset:hover{border-color:#525960}.cash-change{text-align:center;font-size:1.1rem;padding:4px 0}.cash-change strong{color:#3fb950;font-size:1.3rem}.pay-complete{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.pay-check{width:80px;height:80px;border-radius:50%;background:#132b1e;color:#3fb950;font-size:2.2rem;display:grid;place-items:center;margin-bottom:8px}.pay-complete h2{margin:0;font-size:1.3rem}.pay-complete p{margin:0;color:var(--dim);font-size:.9rem}.pay-complete .btn-primary{margin-top:16px;min-width:220px;padding:16px 28px;font-size:1rem}.pay-order-id{font-family:monospace;font-size:.82rem!important;color:#3fb950!important;letter-spacing:.03em}.order-error{background:#f851491a;border:1px solid rgba(248,81,73,.3);border-radius:8px;padding:12px 16px;color:#f85149;font-size:.82rem;white-space:pre-wrap;line-height:1.5;margin:12px 0}.validation-error{background:#f851491a;border:1px solid rgba(248,81,73,.3);border-radius:8px;padding:10px 14px;color:#f85149;font-size:.78rem;white-space:pre-wrap;line-height:1.45;margin:8px 12px 4px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:grid;place-items:center;z-index:50}.modal{width:min(440px,90vw);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;display:grid;gap:10px}.modal h3{font-size:1rem}.modal p,.modal label{color:var(--dim);font-size:.84rem}.modal-input{width:100%;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--text);font-size:.88rem;outline:none}.modal-input:focus{border-color:#444d56}textarea.modal-input{min-height:80px;resize:vertical}.modal-btns{display:flex;gap:8px;justify-content:flex-end;padding-top:4px}.btn-secondary,.btn-primary{padding:10px 18px;border-radius:8px;font-size:.86rem;cursor:pointer}.btn-secondary{background:var(--card);border:1px solid var(--border);color:var(--text)}.btn-primary{background:var(--accent);border:none;color:#fff;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}.shell.ipad{grid-template-columns:1fr 380px}.shell.ipad .topbar{height:64px;padding:0 24px}.shell.ipad .topbar{height:56px}.shell.ipad .nav-tab{padding:0 20px;font-size:.88rem}.shell.ipad .gear-btn{width:40px;height:40px}.shell.ipad .dt-btn{padding:10px 16px;font-size:.82rem}.shell.ipad .center-search{padding:16px 24px 0}.shell.ipad .search-input{padding:14px 16px;font-size:1rem;border-radius:10px}.shell.ipad .filter-bar{padding:12px 24px}.shell.ipad .filter-select{padding:10px 12px;font-size:.84rem}.shell.ipad .filter-check{font-size:.84rem}.shell.ipad .filter-clear{padding:10px 14px;font-size:.78rem}.shell.ipad .vt-btn{padding:10px 14px}.shell.ipad .list-row{padding:14px 0;gap:14px}.shell.ipad .lr-name{font-size:.92rem}.shell.ipad .lr-price{font-size:.94rem}.shell.ipad .grid{padding:16px 24px;gap:14px}.shell.ipad .tile{min-height:130px;padding:16px;border-radius:12px}.shell.ipad .product-tile{min-height:176px}.shell.ipad .pt-row1{padding:12px 14px 0}.shell.ipad .pt-name{padding:6px 14px 0;font-size:1rem}.shell.ipad .pt-chem{padding:4px 14px 0;font-size:.82rem}.shell.ipad .pt-terps{font-size:.76rem}.shell.ipad .pt-pricing{padding:10px 14px 0}.shell.ipad .pt-price,.shell.ipad .pt-sale{font-size:1.35rem}.shell.ipad .pt-orig{font-size:.88rem}.shell.ipad .pt-meta{padding:8px 14px 12px;font-size:.7rem;margin-top:10px}.shell.ipad .pt-tags,.shell.ipad .pt-cat{font-size:.72rem}.shell.ipad .strain-badge{font-size:.68rem;padding:3px 9px}.shell.ipad .tile-label{font-size:1.05rem}.shell.ipad .tile-count{font-size:.82rem}.shell.ipad .back-arrow{font-size:1.6rem}.shell.ipad .rail-head{padding:14px 20px}.shell.ipad .rail-title{font-size:.94rem}.shell.ipad .pc-summary{padding:14px 20px}.shell.ipad .pc-summary-name{font-size:.94rem}.shell.ipad .pc-detail{padding:14px 20px}.shell.ipad .pc-stat{padding:9px 11px}.shell.ipad .pc-stat small{font-size:.68rem}.shell.ipad .pc-stat span{font-size:.84rem}.shell.ipad .patient-lookup{padding:14px 20px}.shell.ipad .patient-input{padding:12px 14px;font-size:.94rem}.shell.ipad .route-strip{padding:0 20px}.shell.ipad .rs-cell{padding:10px 12px}.shell.ipad .rs-label{font-size:.64rem}.shell.ipad .rs-value{font-size:.9rem}.shell.ipad .rs-bar{height:4px}.shell.ipad .cart-line{padding:12px 20px;gap:12px}.shell.ipad .cl-qty{font-size:.94rem}.shell.ipad .cl-info span{font-size:.9rem}.shell.ipad .cl-info small{font-size:.8rem}.shell.ipad .cl-total{font-size:.94rem}.shell.ipad .cl-btns button{width:44px;height:44px;font-size:1.15rem;border-radius:8px}.shell.ipad .rail-footer{padding:14px 20px 20px;gap:10px}.shell.ipad .sum-row{font-size:.9rem}.shell.ipad .sum-total{font-size:1.15rem}.shell.ipad .disc-input,.shell.ipad .loyalty-input{width:80px;padding:8px 10px;font-size:.9rem}.shell.ipad .loyalty-value{font-size:.88rem}.shell.ipad .loyalty-avail{font-size:.72rem}.shell.ipad .override-btn{padding:12px;font-size:.82rem}.shell.ipad .pay-btn{padding:18px;font-size:1.1rem;border-radius:12px}.shell.ipad .coupon-btn{padding:8px 12px;font-size:.76rem}.shell.ipad .coupon-code{font-size:.82rem}.shell.ipad .coupon-desc{font-size:.78rem}.shell.ipad .coupon-meta{font-size:.7rem}.shell.ipad .dropdown{border-radius:12px}.shell.ipad .dd-item{padding:14px 16px}.shell.ipad .dd-name{font-size:.94rem}.shell.ipad .dd-meta{font-size:.8rem}.shell.ipad .dd-price{font-size:.94rem}.shell.ipad .modal{padding:24px;border-radius:14px;gap:12px}.shell.ipad .modal-input{padding:12px 14px;font-size:.94rem}.shell.ipad .btn-secondary,.shell.ipad .btn-primary{padding:14px 22px;font-size:.92rem}.shell.ipad .topbar-select{padding:10px 12px;font-size:.84rem}.shell.ipad .cat-list-row{padding:16px 14px}.shell.ipad .clr-name{font-size:.94rem}.shell.ipad .back-list-row{padding:14px}.orders-center{grid-column:1 / -1;border-right:none}.orders-page{height:100%;display:flex;flex-direction:column}.orders-header{display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border)}.orders-header h2{margin:0;font-size:1.1rem}.orders-back{padding:8px 14px}.orders-tabs{display:flex;border-bottom:1px solid var(--border)}.orders-tab{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;color:var(--dim);font-size:.86rem;cursor:pointer}.orders-tab.active{color:var(--text);border-bottom-color:var(--accent)}.orders-badge{display:inline-block;background:var(--accent);color:#fff;font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:999px;margin-left:6px}.orders-body{flex:1;overflow-y:auto;padding:20px 24px}.orders-empty{color:var(--dim);text-align:center;padding:48px 0;font-size:.9rem}.draft-list{display:flex;flex-direction:column;gap:10px}.draft-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}.draft-top{display:flex;align-items:center;justify-content:space-between}.draft-status{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 10px;border-radius:999px}.draft-status.saved{background:#131e2b;color:#6cb6ff}.draft-age{font-size:.76rem;color:var(--dim)}.draft-info{display:flex;align-items:baseline;gap:10px}.draft-info strong{font-size:.92rem}.draft-info span{font-size:.82rem;color:var(--dim)}.draft-note{margin:0;font-size:.8rem;color:var(--dim);font-style:italic;padding:6px 10px;background:var(--surface);border-radius:6px}.draft-meta{font-size:.74rem;color:#525960;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-actions{display:flex;gap:8px;padding-top:4px}.draft-resume{flex:1;padding:10px}.draft-delete{padding:10px}.history-panel{display:flex;flex-direction:column;gap:16px}.history-search{display:flex;gap:10px}.history-input{flex:1;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px 14px;color:var(--text);font-size:.88rem;outline:none}.history-input:focus{border-color:#444d56}.history-list{display:flex;flex-direction:column;gap:0}.history-card{border-bottom:1px solid var(--border)}.history-thead{display:grid;grid-template-columns:80px 1.2fr 90px 1fr 70px 90px 90px;gap:12px;padding:8px 12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#636c76;border-bottom:1px solid var(--border)}.history-row{width:100%;display:grid;grid-template-columns:80px 1.2fr 90px 1fr 70px 90px 90px;gap:12px;align-items:center;padding:10px 12px;background:none;border:none;color:var(--text);font-size:.82rem;text-align:left;cursor:pointer;transition:background 80ms}.history-row:hover{background:var(--card)}.h-id{font-family:monospace;font-size:.76rem;color:var(--dim)}.h-customer{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.h-date{color:var(--dim);font-size:.78rem}.h-budtender{color:var(--dim);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.h-items{color:var(--dim);font-size:.78rem}.h-status{display:inline-block;width:fit-content;font-size:.66rem;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:999px;text-align:center}.h-status.completed{background:#132b1e;color:#3fb950}.h-status.refunded{background:#2b1e13;color:#d29922}.h-status.cancelled{background:#2b1313;color:#f85149}.h-total{font-weight:700;text-align:right}.h-right{text-align:right}.hd-item{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(48,54,61,.3)}.hd-item-qty{text-align:center;font-weight:600;font-size:.82rem;color:var(--dim)}.hd-item-info{display:flex;flex-direction:column;gap:1px;min-width:0}.hd-item-name{font-size:.82rem;font-weight:500}.hd-item-info small{font-size:.72rem;color:#8b949e}.hd-sale{color:#3fb950;font-weight:600}.hd-was{color:#636c76;text-decoration:line-through;font-size:.7rem;margin-left:4px}.hd-item-total{text-align:right;font-weight:600;font-size:.84rem;white-space:nowrap}.history-detail{padding:0 12px 16px;display:flex;flex-direction:column;gap:12px;animation:hd-reveal .15s ease-out}@keyframes hd-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.hd-loading{color:#8b949e;font-size:.8rem;padding:8px 0;font-style:italic}.hd-section h4{margin:0 0 8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dim)}.hd-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:6px}.hd-field{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:7px 10px}.hd-field small{display:block;font-size:.6rem;color:var(--dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.hd-field span{font-size:.8rem;font-weight:500}.hd-items{display:flex;flex-direction:column}.hd-item{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.hd-item:last-child{border-bottom:none}.hd-item-qty{width:24px;height:24px;border-radius:6px;background:var(--card);border:1px solid var(--border);display:grid;place-items:center;font-weight:600;font-size:.76rem;color:var(--dim)}.hd-item-info{display:flex;flex-direction:column;gap:1px}.hd-item-name{font-size:.84rem;font-weight:500}.hd-item-info small{font-size:.7rem;color:var(--dim)}.hd-item-total{font-weight:600;font-size:.84rem}.hd-totals{display:flex;flex-direction:column;gap:5px}.hd-total-line{display:flex;justify-content:space-between;font-size:.82rem;color:var(--dim)}.hd-green{color:#3fb950}.hd-grand{padding-top:6px;border-top:1px solid var(--border);color:var(--text);font-size:.95rem}.hd-grand strong{font-size:.95rem}.hd-routes{display:flex;gap:8px}.hd-route{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 14px;display:flex;flex-direction:column;align-items:center;gap:2px}.hd-route span{font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--dim)}.hd-route strong{font-size:.84rem}.history-note{margin:0;text-align:center;font-size:.76rem;color:#525960;font-style:italic}.settings-page{height:100%;display:flex;flex-direction:column}.settings-header{display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border)}.settings-header h2{margin:0;font-size:1.1rem;flex:1}.settings-loc-select{display:flex;align-items:center;gap:10px;padding:14px 24px;border-bottom:1px solid var(--border);font-size:.84rem;color:var(--dim)}.settings-loc-select select{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);font-size:.86rem}.settings-body{flex:1;overflow-y:auto;padding:20px 24px;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-content:start}.settings-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px}.settings-panel h3{margin:0 0 4px;font-size:.95rem}.sp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.sp-add{padding:8px 14px;font-size:.82rem;white-space:nowrap}.settings-hint{margin:0 0 14px;font-size:.78rem;color:var(--dim)}.folder-editor{display:flex;flex-direction:column;gap:4px}.fe-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--card);border:1px solid var(--border);border-radius:8px}.fe-row.fe-hidden{opacity:.4}.fe-arrows{display:flex;gap:4px}.fe-arrows button{width:28px;height:28px;border:1px solid var(--border);background:var(--surface);color:var(--dim);border-radius:6px;cursor:pointer;font-size:.8rem}.fe-arrows button:disabled{opacity:.3;cursor:not-allowed}.fe-arrows button:hover:not(:disabled){border-color:#525960}.fe-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.fe-name{flex:1;font-size:.88rem;font-weight:500;cursor:pointer}.fe-rules-count{font-size:.72rem;color:var(--dim)}.fe-delete{background:none;border:none;color:#f85149;font-size:1rem;cursor:pointer}.fe-row.fe-active{border-color:#525960}.fe-toggle{display:flex;align-items:center;gap:6px;font-size:.76rem;color:var(--dim);cursor:pointer}.fe-toggle input{accent-color:var(--accent)}.folder-detail{display:flex;flex-direction:column;gap:14px}.fd-header{display:flex;align-items:center;justify-content:space-between}.fd-header h3{margin:0;font-size:1rem}.fd-field{display:flex;flex-direction:column;gap:6px}.fd-field label{font-size:.76rem;color:var(--dim)}.fd-match{font-weight:600;color:#3fb950;margin-left:6px}.fd-colors{display:flex;gap:6px}.fd-color-btn{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .1s}.fd-color-btn.active{border-color:#fff}.fd-color-btn:hover{border-color:#ffffff80}.fd-empty{margin:0;font-size:.82rem;color:var(--dim);padding:10px 0}.fd-input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);font-size:.86rem;outline:none}.fd-input:focus{border-color:#525960}.fd-rules{display:flex;flex-direction:column;gap:4px}.fd-rule{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:6px}.fd-rule-field{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--dim);background:#8b949e1a;padding:2px 8px;border-radius:4px}.fd-rule-value{flex:1;font-size:.82rem}.fd-rule-remove{background:none;border:none;color:#f85149;cursor:pointer;font-size:.9rem}.fd-add-rule{display:flex;gap:6px;align-items:center}.fd-add-rule select{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;color:var(--text);font-size:.82rem;width:130px}.fd-val-select{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;color:var(--text);font-size:.82rem}.fd-val-input{flex:1}.fd-add-rule .btn-primary{padding:8px 14px;font-size:.82rem;white-space:nowrap}.qa-level-toggle{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:10px}.qa-lvl{flex:1;padding:8px 12px;background:none;border:none;color:var(--dim);font-size:.78rem;cursor:pointer;text-align:center}.qa-lvl.active{background:var(--card);color:var(--text);font-weight:500}.qa-search-wrap{position:relative;margin-top:8px}.qa-search{width:100%;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:9px 12px;color:var(--text);font-size:.86rem;outline:none}.qa-search:focus{border-color:#525960}.qa-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;z-index:10;box-shadow:0 8px 24px #00000059}.qa-result{display:flex;flex-direction:column;gap:1px;width:100%;padding:10px 14px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);text-align:left;cursor:pointer}.qa-result:last-child{border-bottom:none}.qa-result:hover{background:var(--card)}.qa-result span{font-size:.86rem;font-weight:500}.qa-result small{font-size:.74rem;color:var(--dim)}.settings-reg-select{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:.84rem;color:var(--dim)}.settings-reg-select select{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);font-size:.86rem}.qa-list{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.qa-empty{padding:14px;text-align:center;color:var(--dim);font-size:.82rem}.qa-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--card);border:1px solid var(--border);border-radius:8px}.qa-arrows{display:flex;gap:4px}.qa-arrows button{width:28px;height:28px;border:1px solid var(--border);background:var(--surface);color:var(--dim);border-radius:6px;cursor:pointer;font-size:.8rem}.qa-arrows button:disabled{opacity:.3;cursor:not-allowed}.qa-label{flex:1;font-size:.86rem;font-weight:500}.qa-pid{font-size:.7rem;font-family:monospace;color:#525960}.qa-remove{background:none;border:none;color:#f85149;font-size:1.1rem;cursor:pointer}.qa-add{display:flex;gap:8px}.qa-add select{flex:1;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);font-size:.84rem}.rail-btn-row{display:flex;gap:8px;margin-top:4px}.cart-actions-split{display:flex;flex-shrink:0}.cart-actions-split .park-btn{border-radius:10px 0 0 10px;border-right:none}.cart-actions-split .discard-btn{border-radius:0 10px 10px 0;padding:14px 10px;font-size:1rem}.park-btn{padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font-size:.88rem;font-weight:600;cursor:pointer;transition:border-color .1s}.park-btn:hover{border-color:#525960}.discard-btn{padding:14px;border:1px solid rgba(248,81,73,.3);border-radius:10px;background:transparent;color:#f85149;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .1s,border-color .1s}.discard-btn:hover{background:#f8514914;border-color:#f85149}.rail-btn-row .pay-btn{flex:1}.settings-tabs{display:flex;gap:2px;background:var(--bg);border-radius:8px;padding:2px}.settings-tab{padding:6px 16px;border:none;background:transparent;color:var(--dim);font-size:.82rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .1s}.settings-tab.active{background:var(--card);color:var(--text)}.settings-tab:hover:not(.active){color:var(--text)}.settings-locations{flex:1;overflow-y:auto;padding:16px 24px}.settings-loc-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.loc-list{display:flex;flex-direction:column;gap:8px}.loc-card{border:1px solid var(--border);border-radius:10px;background:var(--card);overflow:hidden;transition:opacity .15s}.loc-card.loc-disabled{opacity:.55}.loc-card-head{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background .1s}.loc-card-head:hover{background:#ffffff05}.loc-toggle{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.loc-toggle input{opacity:0;width:0;height:0;position:absolute}.loc-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border);border-radius:20px;transition:background .2s;cursor:pointer}.loc-toggle-slider:before{content:"";position:absolute;width:16px;height:16px;left:2px;bottom:2px;background:var(--text);border-radius:50%;transition:transform .2s}.loc-toggle input:checked+.loc-toggle-slider{background:#3fb950}.loc-toggle input:checked+.loc-toggle-slider:before{transform:translate(16px)}.loc-card-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.loc-card-name{font-weight:600;font-size:.92rem}.loc-card-addr{font-size:.78rem;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loc-card-meta{display:flex;gap:12px;font-size:.78rem;color:var(--dim);flex-shrink:0}.loc-card-chevron{font-size:.7rem;color:var(--dim);flex-shrink:0}.loc-card-body{border-top:1px solid var(--border);padding:16px}.loc-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:16px}.loc-detail-item{display:flex;flex-direction:column;gap:2px}.loc-detail-item small{font-size:.72rem;color:var(--dim);text-transform:uppercase;letter-spacing:.04em}.loc-detail-item span{font-size:.85rem}.loc-registers h4{margin:0 0 8px;font-size:.88rem}.loc-reg-empty{font-size:.82rem;color:var(--dim);margin-bottom:10px}.loc-reg-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;margin-bottom:6px;background:var(--surface)}.loc-reg-name{flex:1;font-size:.88rem;font-weight:500;cursor:pointer}.loc-reg-name:hover{text-decoration:underline}.loc-reg-id{font-size:.72rem;color:var(--dim);font-family:monospace}.loc-reg-input{flex:1;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.85rem}.loc-reg-input:focus{outline:none;border-color:var(--accent)}.loc-reg-delete{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--dim);font-size:1rem;cursor:pointer;border-radius:4px}.loc-reg-delete:hover{background:#f8514926;color:#f85149}.loc-reg-add{display:flex;gap:8px;margin-top:8px}.loc-reg-add .btn-primary{flex-shrink:0}.loc-empty{text-align:center;padding:40px 20px;color:var(--dim);font-size:.9rem}.setup-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;padding:40px;text-align:center}.setup-prompt-icon{color:var(--dim);opacity:.4;margin-bottom:8px}.setup-prompt-title{font-size:1.25rem;font-weight:700;margin:0}.setup-prompt-text{font-size:.9rem;color:var(--dim);max-width:380px;line-height:1.5;margin:0}.setup-prompt-btn{margin-top:8px;padding:12px 32px;font-size:.9rem}.setup-prompt-rail{display:flex;align-items:center;justify-content:center;flex:1;padding:24px;text-align:center}.setup-prompt-rail p{color:var(--dim);font-size:.85rem;line-height:1.5;margin:0}@media (max-width: 900px){.shell{grid-template-columns:1fr;height:auto}.rail{border-top:1px solid var(--border)}.center{border-right:none}}.full-loader{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.fl-content{display:flex;flex-direction:column;align-items:center;gap:28px}.fl-logo{height:32px;width:auto;color:var(--text);animation:fl-fade 2s ease-in-out infinite}@keyframes fl-fade{0%,to{opacity:.4}50%{opacity:1}}.fl-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--text);border-radius:50%;animation:fl-spin .8s linear infinite}@keyframes fl-spin{to{transform:rotate(360deg)}}.fl-text{margin:0;color:var(--dim);font-size:.88rem;letter-spacing:.02em}.login-screen{height:100vh;display:grid;place-items:center;background:var(--bg)}.login-card{width:min(380px,90vw);display:flex;flex-direction:column;align-items:center;gap:20px}.login-logo{height:28px;width:auto;color:var(--text);margin-bottom:8px}.login-card h2{margin:0;font-size:1.1rem;color:var(--dim);font-weight:400}.login-name{width:100%;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px;color:var(--text);font-size:1rem;text-align:center;outline:none}.login-name:focus{border-color:#444d56}.pin-display{display:flex;gap:12px;padding:8px 0}.pin-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--border);transition:background .1s}.pin-dot.filled{background:var(--text);border-color:var(--text)}.pin-pad{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;width:280px}.pin-key{width:80px;height:60px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--text);font-size:1.4rem;cursor:pointer;display:grid;place-items:center;transition:border-color .1s}.pin-key:hover{border-color:#444d56}.pin-key:active{background:var(--surface)}.pin-key:disabled{opacity:.4;cursor:not-allowed}.pin-key-fn{font-size:.9rem;color:var(--dim)}.login-error{margin:0;color:#f85149;font-size:.86rem;text-align:center}.login-skip{background:none;border:none;color:var(--dim);font-size:.78rem;cursor:pointer;text-decoration:underline}.env-toggle{display:flex;gap:1px;background:var(--bg);border-radius:6px;padding:2px;flex-shrink:0}.env-btn{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 10px;border:none;border-radius:4px;cursor:pointer;transition:all .1s;background:transparent;color:var(--dim)}.env-btn:hover:not(.active){color:var(--text)}.env-btn.env-staging.active{background:#d299222e;color:#d29922}.env-btn.env-production.active{background:#f8514926;color:#f85149}.refresh-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--dim);cursor:pointer;flex-shrink:0;transition:all .12s}.refresh-btn:hover{color:var(--text);border-color:#525960}.refresh-btn:active{transform:rotate(180deg)}.topbar-user{font-size:.72rem;color:var(--dim);display:flex;align-items:center;gap:4px;flex-shrink:0;max-width:140px;overflow:hidden}.topbar-user strong{color:var(--text);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{background:none;border:1px solid var(--border);border-radius:6px;color:var(--dim);font-size:.64rem;padding:3px 6px;cursor:pointer;flex-shrink:0}.logout-btn:hover{border-color:#444d56;color:var(--text)}
