
:root{--ox:#6b1418;--ox2:#8a1c21;--oxd:#3d0b0e;--ink:#141010;--cream:#f6efe2;--cream2:#ece2cf;--card:#fffaf1;--mut:#6d625a;--line:#e0d4bf;--ok:#1f7a3f;--warn:#b26a00;--bad:#b3261e;--off:#7a7a7a;
--r:16px;--sh:0 1px 2px rgba(40,10,10,.06),0 4px 14px rgba(40,10,10,.07);--serif:ui-serif,"Noto Serif",Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Roboto","Segoe UI",sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.4;color:var(--ink);background:var(--cream);-webkit-tap-highlight-color:transparent}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--ox)}
:focus-visible{outline:3px solid #d99a2b;outline-offset:2px}
img{max-width:100%;display:block}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#app{max-width:560px;margin:0 auto;min-height:100vh;position:relative;padding-bottom:84px}
/* top bars */
.top{position:sticky;top:0;z-index:20;background:var(--ink);color:var(--cream);display:flex;align-items:center;gap:10px;padding:8px 14px;min-height:62px}
.top .logo{height:46px;width:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}
.logobtn{background:none;border:0;padding:0;margin:0}
.top .sp{flex:1}
.top h1{font-family:var(--serif);font-size:20px;margin:0;font-weight:700;letter-spacing:.2px}
.top .sub{font-size:13px;opacity:.75}
.iconbtn{background:transparent;border:0;color:inherit;min-width:44px;min-height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;position:relative;font-size:22px}
.badge{position:absolute;top:3px;right:1px;background:#e4a52b;color:#1a0d0d;font-size:12px;font-weight:800;border-radius:10px;min-width:20px;height:20px;line-height:20px;text-align:center;padding:0 5px}
.staff .top{background:linear-gradient(180deg,var(--oxd),var(--ox))}
.rolechip{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:999px;padding:7px 12px;font-size:15px;font-weight:600;min-height:40px}
/* layout */
.wrap{padding:14px}
.h2{font-family:var(--serif);font-size:23px;margin:18px 0 8px;font-weight:700}
.h3{font-size:15px;text-transform:uppercase;letter-spacing:.8px;color:var(--mut);margin:20px 2px 8px;font-weight:700}
.muted{color:var(--mut)}
.small{font-size:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:14px}
.stack>*+*{margin-top:10px}
.row{display:flex;align-items:center;gap:10px}
.row .grow{flex:1;min-width:0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pill{display:inline-block;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700;white-space:nowrap}
.p-ok{background:#e1f2e6;color:var(--ok)}.p-warn{background:#fdefd6;color:#8a5200}.p-bad{background:#fbe2df;color:var(--bad)}.p-off{background:#ececec;color:#555}.p-ox{background:#f3dcdc;color:var(--ox)}
.btn{border:0;border-radius:14px;min-height:48px;padding:0 18px;font-weight:700;font-size:17px;background:var(--ox);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn:active{transform:translateY(1px)}
.btn.ghost{background:transparent;color:var(--ox);border:2px solid var(--ox)}
.btn.dark{background:var(--ink)}
.btn.light{background:var(--cream2);color:var(--ink)}
.btn.block{width:100%}
.btn.sm{min-height:40px;font-size:15px;padding:0 14px;border-radius:12px}
.chips{display:flex;gap:8px;overflow-x:auto;padding:4px 14px 10px;scrollbar-width:none;margin:0 -14px}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;border:1.5px solid var(--line);background:var(--card);border-radius:999px;padding:8px 14px;font-size:15px;font-weight:600;min-height:40px}
.chip[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}
/* shop */
.travel{display:flex;gap:12px;align-items:center;background:linear-gradient(120deg,var(--ox),#2a0709);color:#fff;border-radius:var(--r);padding:14px 16px;border:0;width:100%;text-align:left;box-shadow:var(--sh)}
.travel b{font-family:var(--serif);font-size:19px;display:block;line-height:1.2}
.travel .em{font-size:30px}
.hero{padding:6px 2px 4px}
.hero h2{font-family:var(--serif);font-size:28px;line-height:1.15;margin:6px 0 4px}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pc{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);display:flex;flex-direction:column}
.pc .ph{aspect-ratio:1/1;background:#efe5d3;position:relative;overflow:hidden;border:0;padding:0;width:100%}
.pc .ph img{width:100%;height:100%;object-fit:cover}
.pc .bd{padding:10px 11px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.pc .nm{font-weight:800;font-size:16px;line-height:1.2}
.pc .fl{font-size:14px;color:var(--mut)}
.pc .pr{font-size:18px;font-weight:800;color:var(--ox)}
.pc .acts{display:flex;gap:6px;margin-top:auto;padding-top:6px}
.pc .acts .btn{flex:1;min-height:44px;font-size:15px;padding:0 8px;border-radius:12px}
.ph .tag{position:absolute;left:8px;top:8px;background:rgba(20,12,12,.82);color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:999px}
.noimg{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#3a0b0e,#140a0a);color:#f0dcc0;gap:6px;font-size:13px}
.noimg img{width:58%;height:auto;object-fit:contain}
.flv{display:flex;flex-wrap:wrap;gap:8px}
.flv button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:9px 12px;font-size:15px;font-weight:600;min-height:44px}
.flv button[aria-pressed=true]{border-color:var(--ox);background:#f7e6e6;color:var(--ox)}
/* sheet */
.scrim{position:fixed;inset:0;background:rgba(10,5,5,.5);z-index:50;display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--cream);width:100%;max-width:560px;border-radius:22px 22px 0 0;max-height:92vh;overflow:auto;padding:8px 16px 24px;animation:up .18s ease-out}
.sheet .grab{width:44px;height:5px;border-radius:3px;background:#cdbfa8;margin:6px auto 10px}
@keyframes up{from{transform:translateY(40px);opacity:.4}to{transform:none;opacity:1}}
.qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:12px;background:#fff}
.qty button{width:44px;height:44px;border:0;background:none;font-size:22px;font-weight:700}
.qty span{min-width:30px;text-align:center;font-weight:800}
.field{display:block;margin-top:10px}
.field span{display:block;font-size:14px;font-weight:700;margin-bottom:4px;color:#3b302a}
.field input,.field select,.field textarea{width:100%;min-height:48px;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;font-size:17px}
.seg{display:flex;background:var(--cream2);border-radius:14px;padding:4px;gap:4px}
.seg button{flex:1;border:0;background:transparent;border-radius:10px;min-height:42px;font-weight:700;font-size:15px}
.seg button[aria-pressed=true]{background:#fff;box-shadow:var(--sh);color:var(--ox)}
.line{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.line:last-child{border-bottom:0}
.thumb{width:58px;height:58px;border-radius:12px;object-fit:cover;flex:none;background:#efe5d3}
.tot{display:flex;justify-content:space-between;font-weight:800;font-size:19px;padding-top:8px}
/* bottom nav */
.tabs{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:560px;z-index:30;background:#fffaf1;border-top:1px solid var(--line);display:flex;padding:4px 4px calc(6px + env(safe-area-inset-bottom))}
.tabs button{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 2px;min-height:58px;font-size:12.5px;font-weight:700;color:#6d625a;border-radius:12px}
.tabs button .i{font-size:22px;line-height:1.1}
.tabs button[aria-current=page]{color:var(--ox);background:#f6e3e0}
.staff .tabs{background:#fff}
/* staff */
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh)}
.kpi .l{font-size:14px;color:var(--mut);font-weight:700}
.kpi .v{font-size:25px;font-weight:800;letter-spacing:-.3px;margin-top:2px}
.kpi .s{font-size:13px;color:var(--mut)}
.kpi.ox{background:var(--ox);color:#fff;border-color:var(--ox)}.kpi.ox .l,.kpi.ox .s{color:#f2d6d6}
.kpi.wide{grid-column:1/-1}
.statusbar{display:flex;gap:8px}
.statusbar button{flex:1;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:10px 4px;text-align:center;box-shadow:var(--sh)}
.statusbar b{display:block;font-size:24px}
.statusbar span{font-size:12.5px;font-weight:700;color:var(--mut)}
.alert{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.alert:last-child{border-bottom:0}
.alert .ic{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}
.alert .t{font-weight:800;font-size:16px}
.alert .d{font-size:14.5px;color:var(--mut)}
.dot{width:12px;height:12px;border-radius:50%;flex:none;display:inline-block}
.d-ok{background:var(--ok)}.d-warn{background:#e09a1a}.d-bad{background:var(--bad)}.d-off{background:#9a9a9a}
.auto{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);width:100%;background:none;border-left:0;border-right:0;border-top:0;text-align:left}
.auto:last-child{border-bottom:0}
.qa{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.qa button{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 4px;min-height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-weight:700;font-size:14px;box-shadow:var(--sh)}
.qa .i{font-size:24px}
.oc{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh)}
.oc .top2{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.oc .num{font-weight:800;color:var(--ox)}
.oc .who{font-weight:800;font-size:17px}
.oc .items{font-size:15px;color:#3b302a;margin:4px 0 8px}
.oc .btns{display:flex;gap:8px;flex-wrap:wrap}
.stop{display:flex;gap:12px}
.stop .n{width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.stop.done .n{background:var(--ok)}
.task{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.task:last-child{border-bottom:0}
.check{width:34px;height:34px;border-radius:10px;border:2px solid var(--ox);background:#fff;flex:none;font-size:20px;color:#fff;display:flex;align-items:center;justify-content:center}
.check[aria-pressed=true]{background:var(--ok);border-color:var(--ok)}
.task.done .grow{text-decoration:line-through;color:var(--mut)}
.clock{text-align:center;padding:18px 14px}
.clock .big{font-size:44px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-1px}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th{text-align:left;font-size:12.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--mut);padding:6px 4px}
.tbl td{padding:9px 4px;border-top:1px solid var(--line);vertical-align:top}
.tbl td.r,.tbl th.r{text-align:right}
.scrollx{overflow-x:auto;margin:0 -14px;padding:0 14px}
.matrix td,.matrix th{white-space:nowrap}
.sample{background:#fff4d6;border:1px dashed #d9a93a;color:#6b4a00;border-radius:12px;padding:8px 12px;font-size:14px}
.pin{max-width:340px;margin:0 auto;text-align:center;padding:24px 18px}
.pin .dots{display:flex;gap:16px;justify-content:center;margin:20px 0}
.pin .dots i{width:16px;height:16px;border-radius:50%;border:2px solid var(--cream);display:block}
.pin .dots i.on{background:var(--cream)}
.pad{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pad button{height:68px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;font-size:28px;font-weight:600;width:68px;margin:0 auto}
.pinscreen{background:radial-gradient(circle at 50% 0,#4a0e12,#140a0a 70%);color:var(--cream);min-height:100vh}
.toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:12px 18px;border-radius:14px;font-weight:700;z-index:80;box-shadow:0 6px 20px rgba(0,0,0,.3);max-width:90%;text-align:center}
.foot{text-align:center;font-size:13px;color:var(--mut);padding:22px 14px 8px}
.bar{height:10px;border-radius:6px;background:var(--cream2);overflow:hidden}
.bar i{display:block;height:100%;background:var(--ox)}
.kanban-col{min-height:40px}
.idea{display:flex;gap:10px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.idea:last-child{border-bottom:0}
.gc{border-radius:18px;padding:18px;color:#fff;background:linear-gradient(135deg,var(--ox),#1d0708);aspect-ratio:1.6/1;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--sh)}
.gc img{width:120px}
.gc .amt{font-size:34px;font-weight:800}
.menu{display:flex;flex-direction:column}
.menu button{display:flex;align-items:center;gap:12px;padding:14px 4px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font-size:17px;font-weight:600;min-height:56px}
.menu button:last-child{border-bottom:0}
.menu .i{font-size:22px;width:30px;text-align:center}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:13px}
.cal div{padding:6px 0;border-radius:8px;background:var(--cream2)}
.cal .b{background:var(--ox);color:#fff;font-weight:700}
.cal .h{background:none;font-weight:700;color:var(--mut)}
@media (min-width:430px){.pc .nm{font-size:17px}}

.top .logo{height:52px}
.shophero{background:var(--ink);color:var(--cream);margin:-14px -14px 14px;padding:4px 18px 20px;text-align:center}
.shophero img{width:150px;margin:0 auto}
.shophero h2{font-family:var(--serif);font-size:26px;line-height:1.15;margin:6px 0 4px}
.shophero p{margin:0;opacity:.8;font-size:15px}
.pc .acts .btn.plus{flex:0 0 44px;padding:0;font-size:22px}
.noimg img{width:42%}
.alert .btn{margin-top:8px}
.seg button{font-size:14px;padding:0 4px}
.dbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dbtns .wide{grid-column:1/-1}
.top{padding-top:6px;padding-bottom:6px}

.pc .ph .noimg img{width:48%;height:auto;object-fit:contain}
.noimg span{opacity:.85}
.sheet .sticky{position:sticky;bottom:-24px;background:var(--cream);padding:12px 0 16px;margin:14px 0 -16px;border-top:1px solid var(--line);z-index:2}
.line .grow{flex:1;min-width:0}

/* v0.3 */
.weekly{padding:0;overflow:hidden}
.weekly .wtoggle{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;background:none;border:0;font:inherit;color:inherit;cursor:pointer}
.weekly.on{border-color:#cfe5d2;background:#f4faf4}
.weekly>p,.weekly>.flv,.weekly>.seg{margin-left:16px;margin-right:16px}
.weekly>p:last-child{padding-bottom:14px}
.sw{flex:none;width:46px;height:28px;border-radius:14px;background:#cfc8c4;position:relative;transition:background .15s}
.sw i{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:left .15s}
.wtoggle[aria-checked=true] .sw{background:#2e8b57}
.wtoggle[aria-checked=true] .sw i{left:21px}
.mylink{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;margin-bottom:12px}
.mylink .i{font-size:24px}

/* v0.4 */
.ideabtn{background:none;border:0;padding:0;text-align:left;font:inherit;color:inherit;min-height:34px;cursor:pointer}
.idea .pill{margin-top:4px}
.idea .small .pill{margin-left:4px;padding:1px 8px;font-size:12px}
a.btn{text-decoration:none}
.flv button[disabled]{opacity:.5}
.rhythm .bars{display:flex;align-items:flex-end;gap:6px;height:76px;margin-top:10px;padding-top:14px}
.rhythm .bar{flex:1;background:linear-gradient(180deg,#b8432f,var(--ox));border-radius:6px 6px 2px 2px;position:relative;min-width:14px}
.rhythm .bar span{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--mut);white-space:nowrap}
.auto .pill{margin-top:4px}
.stmt{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fffdf8}

/* ================= v0.4 professional theme ================= */
@font-face{font-family:"Inter";src:url(fonts/inter.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(fonts/playfair-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
:root{--ox:#9e1b16;--ox2:#b8241d;--oxd:#2a0b09;--ink:#151413;--cream:#f5f2ed;--cream2:#ece8e1;--card:#ffffff;--mut:#6b655d;--line:#e4dfd6;--ok:#22744a;--warn:#a85d00;--bad:#b42318;
--r:12px;--sh:0 1px 2px rgba(20,16,12,.05);--sh2:0 4px 16px rgba(20,16,12,.08);--serif:"Playfair Display",Georgia,serif;--sans:"Inter",system-ui,-apple-system,"Roboto",sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
body{font-family:var(--sans);font-size:16px;line-height:1.45;letter-spacing:-.006em;background:var(--cream);color:var(--ink);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}
.lic{width:1.15em;height:1.15em;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:-.2em}
.lw{display:inline-flex;align-items:center;justify-content:center;margin-right:.3em;color:inherit}
.lw:last-child{margin-right:0}
/* header */
.top{background:var(--ink);min-height:56px;padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top));gap:8px;border-bottom:1px solid #000}
.staff .top{background:var(--ink)}
.top .logo{height:38px}
.top h1{font-family:var(--sans);font-size:17px;font-weight:650;letter-spacing:-.01em}
.top .sub{font-size:12px;opacity:.6;letter-spacing:0}
.iconbtn{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:10px;font-size:0}
.iconbtn .lic{width:22px;height:22px}
.iconbtn:active{background:rgba(255,255,255,.08)}
.badge{background:var(--ox2);color:#fff;font-size:11px;min-width:18px;height:18px;line-height:18px;top:4px;right:2px;border-radius:9px}
.rolechip{background:transparent;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:6px 10px;font-size:13px;font-weight:600;min-height:34px;color:#fff}
/* type */
.wrap{padding:16px}
.h2{font-family:var(--serif);font-size:24px;font-weight:700;letter-spacing:-.01em;margin:16px 0 8px;line-height:1.2}
.h3{font-size:12px;font-weight:650;letter-spacing:.08em;color:var(--mut);margin:24px 0 8px}
.small{font-size:13.5px}
.muted{color:var(--mut)}
.foot{color:#9a938a;font-size:12px}
/* surfaces */
.card,.kpi,.pc,.statusbar button{border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--line);background:var(--card)}
.card{padding:16px}
.kpi{padding:14px 16px}
.kpi .l{font-size:12.5px;font-weight:600;letter-spacing:.01em}
.kpi .v{font-size:24px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpi .s{font-size:12.5px}
.kpi.ox{background:var(--ink);border-color:var(--ink)}.kpi.ox .l,.kpi.ox .s{color:#b9b2a8}
.statusbar button{padding:12px 4px}
.statusbar b{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}
.statusbar span{font-size:12px;font-weight:600}
/* buttons */
.btn{border-radius:10px;min-height:48px;font-size:15.5px;font-weight:650;letter-spacing:-.005em;background:var(--ox);transition:background .15s var(--ease),transform .1s}
.btn:active{transform:scale(.985);background:#86150f}
.btn.dark{background:var(--ink)}
.btn.light{background:#fff;color:var(--ink);border:1px solid #d6d0c6}
.btn.light:active{background:var(--cream2)}
.btn.ghost{border:1px solid var(--ink);color:var(--ink)}
.btn.sm{min-height:36px;font-size:13.5px;border-radius:8px;padding:0 12px}
.btn .lic{width:18px;height:18px}
/* chips / segments / options */
.chip{border-radius:8px;border:1px solid var(--line);background:#fff;font-size:13.5px;font-weight:600;min-height:36px;padding:7px 12px;color:#3d3833}
.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.seg{background:var(--cream2);border-radius:10px;padding:3px}
.seg button{border-radius:8px;font-size:14px;font-weight:600;min-height:40px;color:#4a443e}
.seg button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.1)}
.flv button{border:1px solid #d6d0c6;border-radius:8px;font-size:14px;font-weight:600;min-height:42px;background:#fff}
.flv button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}
.pill{border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600;letter-spacing:.01em}
.p-ok{background:#e5f2ea}.p-warn{background:#fbf0de;color:#8a4b00}.p-bad{background:#fbe6e3}.p-ox{background:#f4e4e2;color:var(--ox)}
/* forms */
.field span{font-size:13px;font-weight:600;color:#3d3833}
.field input,.field select,.field textarea{border:1px solid #d6d0c6;border-radius:10px;font-size:16px;min-height:48px}
.field input:focus,.field select:focus,.field textarea:focus,input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(21,20,19,.08)}
:focus-visible{outline:2px solid var(--ox2);outline-offset:2px}
/* sheet */
.scrim{background:rgba(12,10,8,.45);backdrop-filter:blur(2px)}
.sheet{background:#fff;border-radius:16px 16px 0 0;padding:6px 16px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.15)}
.sheet .grab{background:#d6d0c6;width:36px;height:4px}
/* lists */
.line,.alert,.auto,.idea{border-bottom-color:#eeeae3}
.alert .ic{width:36px;height:36px;border-radius:8px;font-size:0}
.alert .ic .lw{margin:0}.alert .ic .lic{width:18px;height:18px}
.alert .t{font-weight:650;font-size:15px}
.alert .d{font-size:13.5px}
.menu button .i,.qa button .i{font-size:0}
.menu button .i .lic,.qa .i .lic{width:20px;height:20px}
.qa button{border-radius:var(--r);border:1px solid var(--line);background:#fff;box-shadow:var(--sh);font-size:13px;font-weight:600}
.qa button .i{color:var(--ox);margin-bottom:4px}
.check{border-radius:8px;border:1.5px solid #bdb6ab;width:28px;height:28px;font-size:16px}
.check[aria-pressed=true]{background:var(--ok);border-color:var(--ok)}
.thumb{border-radius:8px}
.tot{font-size:17px;font-weight:700}
/* shop */
.shophero h2,.hero h2{font-family:var(--serif);font-weight:700;letter-spacing:-.015em}
.travel{background:var(--ink);border-radius:var(--r);box-shadow:none;border:1px solid #000;padding:14px 16px}
.travel b{font-family:var(--sans);font-size:15.5px;font-weight:650}
.travel .em{font-size:0;width:40px;height:40px;border-radius:8px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#e9c79a}
.travel .em .lic{width:22px;height:22px}.travel .em .lw{margin:0}
.pc .ph{background:#ece6dc}
.pc .nm{font-weight:650;font-size:15px;letter-spacing:-.01em}
.pc .fl{font-size:12.5px}
.pc .pr{font-size:16px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.pc .acts .btn{min-height:40px;font-size:13.5px;border-radius:8px}
.ph .tag{border-radius:6px;font-weight:600;background:rgba(21,20,19,.85);letter-spacing:.02em}
.gc{border-radius:14px;background:linear-gradient(135deg,#1d1b19 0%,#2b1210 60%,#5a140f 100%);box-shadow:var(--sh2)}
.qty{border-radius:10px;border:1px solid #d6d0c6}
/* bottom nav: 5 slots, Home centered */
#app{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
.tabs{background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:6px 6px calc(8px + env(safe-area-inset-bottom));align-items:flex-end}
.staff .tabs{background:rgba(255,255,255,.97)}
.tabs button{border-radius:10px;min-height:54px;font-size:11px;font-weight:550;color:#8a837a;gap:3px;padding:6px 2px 4px;position:relative}
.tabs button .i{font-size:0;line-height:0;position:relative}
.tabs button .i .lic{width:23px;height:23px;stroke-width:1.75}
.tabs button[aria-current=page]{background:none;color:var(--ink)}
.tabs button[aria-current=page] .tl{font-weight:650}
.tabs button.home .i{width:52px;height:52px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;margin-top:-22px;box-shadow:0 4px 14px rgba(0,0,0,.22);border:3px solid #fff}
.tabs button.home[aria-current=page] .i{background:var(--ox)}
.tabs button.home .i .lic{width:24px;height:24px;stroke-width:2}
.tabs button.home{color:var(--ink)}
.tbadge{position:absolute;top:-6px;right:-10px;background:var(--ox);color:#fff;font-size:10.5px;font-weight:700;min-width:17px;height:17px;line-height:17px;border-radius:9px;text-align:center;padding:0 4px}
.toast{border-radius:10px;font-size:14px;font-weight:550;background:var(--ink)}
.rhythm .bar{background:var(--ink);border-radius:4px 4px 1px 1px}

.menu button{font-size:15.5px;font-weight:550;min-height:52px;color:var(--ink);border-bottom-color:#eeeae3}
.menu button .grow{flex:1}
.menu button>:last-child{color:#a39c92}
.menu .i{color:#4a443e;display:flex;justify-content:center}
.menu button:active,.auto:active,.ideabtn:active{background:#f7f5f1}

/* ================= v0.5 storefront ================= */
:root{--ivory:#f7f3ec;--ivory2:#efe9df;--ember:#9e1b16;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--pad:20px;--rimg:14px}
body:not(.staff){background:var(--ivory)}
.stop{min-height:58px;padding-left:12px;padding-right:8px;gap:2px}
.stop .logo{height:40px}
.stop .iconbtn{color:#f4efe7}
.eyebrow{font-size:11.5px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);margin:0 0 var(--s2)}
.eyebrow.ondark{color:#e9c9a9}
.disp{font-family:var(--serif);font-weight:700;font-size:30px;line-height:1.12;letter-spacing:-.015em;margin:0 0 var(--s3);color:var(--ink)}
.disp2{font-family:var(--serif);font-weight:700;font-size:24px;line-height:1.15;letter-spacing:-.01em;margin:0}
.disp3{font-family:var(--serif);font-weight:700;font-size:22px;line-height:1.15;margin:0 0 var(--s2)}
.ondark{color:#fbf7f1!important}
.lead{font-size:15.5px;color:#4d4741;margin:0 0 var(--s4);line-height:1.5}
.fine{font-size:12.5px;color:var(--mut);margin:var(--s3) 0 0}
.fine.ondark{color:#cfc6ba!important}
.center{text-align:center;justify-content:center}
.seal{height:26px;width:auto;flex:none}
.btn.glass{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.45);color:#fff;backdrop-filter:blur(6px)}
.btn.lg{min-height:54px;font-size:16px;border-radius:12px;margin-top:var(--s5)}
.linkbtn{background:none;border:0;padding:4px 0;font:inherit;font-size:14px;font-weight:600;color:var(--ember);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.linkbtn.ondark{color:#f1e6d8}
/* shop home */
.shop{padding:0}
.hero{position:relative;margin:0;aspect-ratio:4/4.6;overflow:hidden;background:#1a1716}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,10,9,.05) 0%,rgba(12,10,9,.15) 35%,rgba(12,10,9,.82) 78%,rgba(12,10,9,.92) 100%)}
.heroin{position:absolute;left:0;right:0;bottom:0;padding:var(--pad) var(--pad) var(--s5);z-index:1}
.heroin .disp{font-size:34px;margin-bottom:var(--s4);max-width:330px}
.herocta{display:flex;gap:var(--s2)}
.herocta .btn{flex:1;min-height:50px;padding:0 12px}
.herokosher{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s4);font-size:12.5px;color:#e6ddd0;letter-spacing:.02em}
.herokosher .seal{height:24px}
.trust{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-bottom:1px solid var(--line)}
.trust>div{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--s4) var(--s1);gap:2px;border-right:1px solid var(--line)}
.trust>div:last-child{border-right:0}
.trust .lic,.trust .seal{width:24px;height:24px;margin-bottom:6px;color:var(--ink)}
.trust b{font-size:13px;font-weight:650}
.trust span{font-size:11.5px;color:var(--mut)}
.sec{padding:var(--s6) var(--pad) 0}
.sechead{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--s4)}
.sechead .count{font-size:13px;color:var(--mut)}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:68%;gap:var(--s3);overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(-1*var(--pad));padding:0 var(--pad) var(--s1);scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail>*{scroll-snap-align:start}
.pgrid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5) var(--s3)}
.pcard{display:flex;flex-direction:column;min-width:0}
.pimg{position:relative;display:block;width:100%;aspect-ratio:1/1;border:0;padding:0;border-radius:var(--rimg);overflow:hidden;background:var(--ivory2);cursor:pointer}
.pcard.big .pimg{aspect-ratio:1/1}
.pimg>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s var(--ease)}
.pimg:active>img{transform:scale(1.02)}
.ptag{position:absolute;top:10px;left:10px;background:rgba(21,20,19,.86);color:#fff;font-size:11px;font-weight:600;letter-spacing:.04em;padding:5px 9px;border-radius:999px}
.pinfo{padding:var(--s3) 2px 0}
.pname{display:block;background:none;border:0;padding:0;font:inherit;text-align:left;font-size:15px;font-weight:650;color:var(--ink);line-height:1.3;cursor:pointer}
.pcard.big .pname{font-family:var(--serif);font-size:19px;font-weight:700}
.pmeta{font-size:12.5px;color:var(--mut);margin-top:2px}
.prow{display:flex;align-items:center;justify-content:space-between;margin-top:var(--s2)}
.pprice{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}
.padd{width:36px;height:36px;border-radius:50%;border:1px solid #d6d0c6;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--ink);cursor:pointer}
.padd .lic{width:18px;height:18px}
.padd:active{background:var(--ink);color:#fff}
.phold{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(circle at 50% 42%,#2b2724,#171513);color:#bdb3a6;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.phold img{width:46%;height:auto;opacity:.9}
.phold.sm{width:76px;height:76px;border-radius:10px;flex:none}.phold.sm img{width:70%}
.chips{margin:0 calc(-1*var(--pad)) var(--s4);padding:0 var(--pad) 2px;gap:var(--s2)}
.chip{border-radius:999px;min-height:38px;padding:8px 16px;font-size:13.5px;white-space:nowrap}
.feature{position:relative;display:block;width:100%;border:0;padding:0;border-radius:18px;overflow:hidden;text-align:left;font:inherit;color:#fff;background:#151413;aspect-ratio:16/10;cursor:pointer}
.feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,10,9,.88) 0%,rgba(12,10,9,.55) 55%,rgba(12,10,9,.1) 100%)}
.feature>div{position:absolute;left:0;top:0;bottom:0;width:66%;padding:var(--s5);z-index:1;display:flex;flex-direction:column;justify-content:flex-end}
.feature p{margin:0 0 var(--s3);font-size:13.5px;color:#e8e0d5;line-height:1.45}
.flink{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:650;color:#fff}
.flink .lic{width:16px;height:16px}
.travelband{display:flex;align-items:center;gap:var(--s3);width:100%;padding:var(--s4);border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit;text-align:left;color:var(--ink);cursor:pointer}
.travelband .ti{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.travelband b{display:block;font-size:15px}.travelband span span{font-size:13px;color:var(--mut)}
.story{margin:var(--s6) 0 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.story>img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.story>div{padding:var(--s5) var(--pad) var(--s6)}
.story p{color:#4d4741;line-height:1.55;margin:var(--s3) 0 0}
.storyseal{display:flex;gap:var(--s3);margin-top:var(--s4);align-items:center}.storyseal .seal{height:40px}
.sfoot{background:var(--ink);color:#bfb6aa;padding:var(--s6) var(--pad) var(--s7);text-align:center;font-size:13px;margin-top:0}
.wrap .sfoot,.me .sfoot,.bag .sfoot{margin:var(--s6) calc(-1*var(--s4)) calc(-1*var(--s4))}
.flogo{width:120px;height:auto;display:block;margin:0 auto var(--s4)}
.fseal{display:inline-flex;align-items:center;gap:var(--s3);text-align:left;color:#f2ece3;font-weight:600;margin-bottom:var(--s3)}
.fseal .seal{height:34px}.fseal small{font-weight:400;color:#a9a094}
.sfoot p{margin:var(--s2) 0}
.sfoot .fv{font-size:11.5px;color:#8b8277;margin-top:var(--s4)}
/* product page */
body.pdpage .tabs{display:none}
body.pdpage #app{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
.pdp{padding:0}
.pdimg{aspect-ratio:1/1;background:var(--ivory2);overflow:hidden}
.pdimg>img{width:100%;height:100%;object-fit:cover;display:block}
.pdbody{padding:var(--s5) var(--pad) var(--s4)}
.pdprice{display:flex;align-items:baseline;gap:var(--s3);margin-bottom:var(--s4)}
.pdprice>span:first-child{font-size:22px;font-weight:650;font-variant-numeric:tabular-nums}
.pdsize{font-size:14px;color:var(--mut)}
.pdkosher{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:#fff;border:1px solid var(--line);border-radius:12px;font-size:13px;color:#4d4741;line-height:1.35}
.pdkosher .seal{height:34px}.pdkosher b{color:var(--ink)}
.pddesc{font-size:15.5px;line-height:1.6;color:#3d3833;margin:var(--s4) 0}
.lbl{font-size:12px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin:var(--s5) 0 var(--s3)}
.lbl span{text-transform:none;letter-spacing:0;color:var(--ink);font-weight:600;margin-left:6px;font-size:13.5px}
.flv2{display:flex;flex-wrap:wrap;gap:var(--s2)}
.flv2 button{border:1px solid #d6d0c6;background:#fff;border-radius:999px;min-height:40px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:550;color:var(--ink);cursor:pointer}
.flv2 button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.acc{margin-top:var(--s5);border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:var(--s4) 0;font-weight:600;font-size:15px;cursor:pointer}
.acc summary::-webkit-details-marker{display:none}
.acc details[open] summary .lic{transform:rotate(180deg)}
.acc p{margin:0 0 var(--s4);color:#4d4741;font-size:14.5px;line-height:1.55}
.buybar{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:100%;max-width:560px;z-index:30;display:flex;gap:var(--s2);align-items:center;padding:var(--s3) var(--s4) calc(var(--s3) + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
.buybar .btn{flex:1;min-height:50px;padding:0 10px}
.buybar .qty{flex:none}
.qty button{width:40px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.qty button .lic{width:16px;height:16px}
.qty.sm button{width:34px;height:34px}.qty.sm span{min-width:24px;font-size:14px}
/* bag */
.bag .disp,.ckout .disp,.me .disp{margin-top:var(--s2)}
.bagl{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 var(--s4)}
.bagi{display:flex;gap:var(--s3);padding:var(--s4) 0;border-bottom:1px solid #eeeae3;align-items:flex-start}
.bagi:last-child{border-bottom:0}
.bagi>img{width:76px;height:76px;border-radius:10px;object-fit:cover;flex:none;background:var(--ivory2)}
.bn{font-weight:650;font-size:15px}.bm{font-size:13px;color:var(--mut);margin-top:2px}
.bp{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}
.rm{background:none;border:0;color:#9a938a;padding:6px;cursor:pointer}.rm .lic{width:18px;height:18px}
.summary{background:#fff;border:1px solid var(--line);border-radius:16px;padding:var(--s4);margin-top:var(--s4)}
.summary>div{display:flex;justify-content:space-between;padding:6px 0;font-size:14.5px;font-variant-numeric:tabular-nums}
.summary .stot{border-top:1px solid var(--line);margin-top:var(--s2);padding-top:var(--s3);font-weight:700;font-size:17px}
.sumh{font-size:12px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin:0 0 var(--s2)}
.summary .sumi{color:#4d4741;font-size:13.5px}
.assure{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s4);font-size:12.5px;color:var(--mut)}
.assure .lic{width:15px;height:15px}
.empty{text-align:center;padding:var(--s7) var(--s4)}
.empty .ei{width:72px;height:72px;border-radius:50%;background:#fff;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--s4)}
.empty .ei .lic{width:30px;height:30px}
.empty p{margin:var(--s2) 0 var(--s5)}
/* auth */
.auth{padding-top:var(--s5)}
.authcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:var(--s5) var(--s5) var(--s5)}
.steps{display:flex;gap:6px;margin-bottom:var(--s5)}.steps i{flex:1;height:3px;border-radius:2px;background:var(--ivory2)}.steps i.on{background:var(--ink)}
.authcard .disp{font-size:27px}
.field i{font-style:normal;font-weight:400;color:var(--mut)}
.otp{font-size:26px!important;letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums;font-weight:600}
.proto{display:flex;gap:var(--s2);align-items:flex-start;background:#fbf3e6;border:1px solid #efd9b6;border-radius:10px;padding:10px 12px;font-size:13px;color:#6b4a12;margin-bottom:var(--s2)}
.proto .lic{width:16px;height:16px;margin-top:2px}
.ferr{color:var(--bad);font-size:13.5px;margin:var(--s2) 0 0}
.authsum{display:flex;justify-content:space-between;margin-top:var(--s4);padding:var(--s3) var(--s4);border-radius:12px;background:var(--ivory2);font-size:14px}
/* checkout */
.cks{background:#fff;border:1px solid var(--line);border-radius:16px;padding:var(--s4);margin-top:var(--s3)}
.ckh{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s3)}
.ckh>span{font-size:12px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.ckv{font-size:14.5px;line-height:1.5;color:#3d3833;margin:0}
.ckout .seg{margin-bottom:var(--s3)}
.seg button .lic{width:17px;height:17px;margin-right:4px;vertical-align:-3px}
.radios{display:flex;flex-direction:column;gap:var(--s2)}
.radio{display:flex;align-items:center;gap:var(--s3);width:100%;text-align:left;font:inherit;font-size:14.5px;color:var(--ink);background:#fff;border:1px solid #ddd6cb;border-radius:12px;padding:var(--s3) var(--s4);min-height:52px;cursor:pointer;line-height:1.4}
.radio>i{width:20px;height:20px;border-radius:50%;border:1.5px solid #bdb5aa;flex:none;position:relative}
.radio[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.radio[aria-pressed=true]>i{border-color:var(--ink)}
.radio[aria-pressed=true]>i::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--ink)}
.radio>.lic{width:20px;height:20px;color:#6b655d}
.radio.add{border-style:dashed;color:#4d4741}
.ckout .card{border-radius:16px;margin-top:var(--s3)}
/* done */
.done{text-align:center;padding-top:var(--s6)}
.done .cks{text-align:left}
.okc{width:64px;height:64px;border-radius:50%;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--s4)}
.okc .lic{width:30px;height:30px;stroke-width:2.2}
/* account */
.mehero{background:linear-gradient(180deg,rgba(12,10,9,.55),rgba(12,10,9,.9)),url(img/plat-45oz-wide.webp) center/cover;border-radius:18px;padding:var(--s6) var(--s5);margin-top:var(--s2);color:#fff}
.mehero .disp{font-size:26px;margin-bottom:var(--s5)}
.mehero .btn{min-width:160px}
.mecard{display:flex;align-items:center;gap:var(--s3);background:var(--ink);color:#f4efe7;border-radius:18px;padding:var(--s4) var(--s4);margin-top:var(--s2)}
.mecard b{font-size:17px}.mecard span{font-size:13px;color:#bfb6aa}
.av{width:48px;height:48px;border-radius:50%;background:var(--ember);color:#fff!important;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px!important;flex:none;letter-spacing:.02em}
.mes{background:#fff;border:1px solid var(--line);border-radius:16px;padding:var(--s4);margin-top:var(--s3)}
.ord{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) 0;border-top:1px solid #eeeae3}
.ord:first-of-type{border-top:0}
.ord .small{color:#4d4741;margin-top:2px}
.ai{width:36px;height:36px;border-radius:10px;background:var(--ivory2);display:flex;align-items:center;justify-content:center;flex:none}
.ai .lic{width:18px;height:18px}
.iconbtn.sm{width:34px;height:34px;min-width:34px;min-height:34px;color:var(--ink);background:none;border:0}
.iconbtn.sm .lic{width:17px;height:17px}
.mylink2{display:flex;align-items:center;gap:var(--s3);width:100%;text-align:left;font:inherit;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:16px;padding:var(--s4);margin-top:var(--s3);cursor:pointer}
.me .card{border-radius:16px;margin-top:var(--s3)}
.btn .lic{margin-right:6px}

.sfoot{margin-bottom:calc(-92px - env(safe-area-inset-bottom))!important;padding-bottom:calc(48px + 92px + env(safe-area-inset-bottom))}
body.pdpage .sfoot{margin-bottom:0!important}
.phold b{font-family:var(--serif);font-size:17px;font-weight:700;color:#f3ede4;text-transform:none;letter-spacing:0;text-align:center;padding:0 10px;line-height:1.2}
.phold img{width:34%}
.phold span{font-size:10.5px;color:#a2988b}
.phold.sm b,.phold.sm span{display:none}

.rail{scroll-padding-inline:var(--pad);grid-auto-columns:62%}

.radio>.grow,.mecard>.grow,.ord>.grow,.mylink2>.grow,.bagi>.grow,.travelband>.grow{flex:1;min-width:0}
.done .grow{text-decoration:none;color:inherit}

/* ===== v0.6 platters + builder teaser ===== */
.platsec{padding-top:var(--s5)}
.platban{position:relative;display:block;width:100%;border:0;padding:0;border-radius:18px;overflow:hidden;text-align:left;font:inherit;color:#fff;background:#151413;aspect-ratio:4/3.6;cursor:pointer;box-shadow:0 10px 30px rgba(20,10,8,.18)}
.platban>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.platban::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,10,9,0) 25%,rgba(12,10,9,.55) 55%,rgba(12,10,9,.92) 100%)}
.platban>div{position:absolute;left:0;right:0;bottom:0;padding:var(--s5) var(--s5) var(--s5);z-index:1}
.platban .disp2{font-size:26px;max-width:300px;margin-bottom:var(--s2)}
.platban p:not(.eyebrow){margin:0 0 var(--s4);font-size:14px;color:#e6ddd0;max-width:320px;line-height:1.45}
.platbtn{background:#fbf7f1;color:var(--ink);gap:6px}
.platbtn .lic{width:16px;height:16px}
.plrail{margin-top:var(--s5);grid-auto-columns:58%}
.pserve{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:5px;background:rgba(251,247,241,.94);color:var(--ink);font-size:11.5px;font-weight:650;padding:5px 9px;border-radius:999px;letter-spacing:.01em}
.pserve .lic{width:13px;height:13px}
.plc .pname{font-family:var(--serif);font-size:17px;font-weight:700}
.bcard{position:relative;display:flex;align-items:center;gap:var(--s3);width:100%;margin-top:var(--s5);border:1px solid rgba(201,154,107,.35);border-radius:18px;padding:var(--s5) var(--s4) var(--s5) var(--s5);text-align:left;font:inherit;color:#fbf7f1;cursor:pointer;overflow:hidden;
 background:radial-gradient(120% 140% at 100% 0%,#3a1512 0%,#1c1513 45%,#121010 100%)}
.bcard::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.025) 0 1px,transparent 1px 14px);pointer-events:none}
.bcard.compact{margin-top:0}
.bctext{flex:1;min-width:0;position:relative;z-index:1}
.bctext .eyebrow{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(233,201,169,.45);border-radius:999px;padding:4px 10px;font-size:10.5px}
.bctext .eyebrow .lic{width:13px;height:13px}
.bctext .disp3{font-size:21px;margin:var(--s3) 0 var(--s2)}
.bctext p:not(.eyebrow){margin:0 0 var(--s3);font-size:13.5px;line-height:1.45;color:#d9cfc2}
.bart{flex:none;width:42%;max-width:170px;height:auto;position:relative;z-index:1;filter:drop-shadow(0 8px 14px rgba(0,0,0,.45))}
.bart .bspin{transform-origin:120px 84px}
.bart .bpiece{animation:bdrop 3.6s var(--ease) infinite}
.bart .p2{animation-delay:.25s}.bart .p3{animation-delay:.5s}.bart .p4{animation-delay:.75s}.bart .p5{animation-delay:1s}
@keyframes bdrop{0%{transform:translateY(-14px);opacity:0}18%{transform:translateY(0);opacity:1}80%{opacity:1}100%{opacity:1}}
@media (prefers-reduced-motion:reduce){.bart .bpiece{animation:none}}
/* platters page */
.plhero{position:relative;aspect-ratio:4/4.2;overflow:hidden;background:#151413}
.plhero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.plhero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,10,9,.05) 30%,rgba(12,10,9,.85) 100%)}
.plsub{margin:0;font-size:15px;max-width:320px;line-height:1.45}
.holi{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.hrow{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid var(--line)}
.hrow:last-child{border-bottom:0}
.hrow .hi{width:38px;height:38px;border-radius:50%;background:var(--ivory2);display:flex;align-items:center;justify-content:center;flex:none;color:var(--ember)}
.hrow b{display:block;font-size:15px;font-weight:650}.hrow span span{font-size:12.5px;color:var(--mut)}
.plhow{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}
.plhow>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:var(--s3) var(--s2);display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}
.plhow .lic{width:22px;height:22px;color:var(--ember);margin-bottom:4px}
.plhow b{font-size:13px}.plhow span{font-size:11.5px;color:var(--mut);line-height:1.3}
/* platter product page */
.szp{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s2)}
.szp button{border:1px solid #d6d0c6;background:#fff;border-radius:12px;min-height:56px;padding:6px 4px;font:inherit;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer}
.szp button b{font-size:14px;font-weight:650}.szp button small{font-size:11px;color:var(--mut)}
.szp button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.szp button[aria-pressed=true] small{color:#d9cfc2}
.inside ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.inside li{padding:11px 0 11px 22px;border-bottom:1px solid var(--line);font-size:15px;position:relative}
.inside li::before{content:"";position:absolute;left:4px;top:19px;width:7px;height:7px;border-radius:50%;background:var(--ember)}
.phnote{margin-top:var(--s4)!important;font-style:italic}
/* builder teaser */
body.bldpage{background:#121010}
body.bldpage #app{background:radial-gradient(130% 70% at 50% 0%,#3a1512 0%,#171212 50%,#110f0f 100%);min-height:100vh}
.bld{color:#fbf7f1;padding-bottom:var(--s6)}
.bldstage{position:relative;padding:var(--s6) var(--pad) var(--s3);display:flex;justify-content:center;perspective:700px}
.bldstage .bart{width:100%;max-width:380px;filter:drop-shadow(0 22px 30px rgba(0,0,0,.6))}
.bldstage .bart .bspin{animation:bfloat 6s ease-in-out infinite}
@keyframes bfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.b3d{position:absolute;right:calc(var(--pad) + 6px);top:var(--s5);font-family:var(--serif);font-weight:700;font-size:13px;letter-spacing:.12em;color:#e9c9a9;border:1px solid rgba(233,201,169,.5);border-radius:8px;padding:4px 8px}
.bldbody{padding:0 var(--pad)}
.bldbody .disp{font-size:36px;margin-bottom:var(--s3)}
.bldlead{font-size:16px;line-height:1.5;color:#d9cfc2;margin:0 0 var(--s5)}
.bsteps{list-style:none;margin:0 0 var(--s2);padding:0;border-top:1px solid rgba(255,255,255,.1)}
.bsteps li{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) 0;border-bottom:1px solid rgba(255,255,255,.1)}
.bsteps li>span{width:28px;height:28px;border-radius:50%;border:1px solid rgba(233,201,169,.6);color:#e9c9a9;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:14px;flex:none}
.bsteps b{display:block;font-size:15.5px}.bsteps small{font-size:13px;color:#b9ada0}
.bnot{background:#fbf7f1;color:var(--ink)}
.bnot .lic{width:18px;height:18px}
.bon{display:flex;gap:var(--s3);align-items:center;margin-top:var(--s5);padding:var(--s4);border:1px solid rgba(233,201,169,.45);border-radius:14px;background:rgba(255,255,255,.04)}
.bon .lic{width:26px;height:26px;color:#e9c9a9;flex:none}.bon b{display:block}.bon small{color:#cfc6ba;font-size:13px}

/* v0.6 staff polish: same type and ivory ground as the shop */
body.staff{background:var(--ivory)}
body.staff .top h1{font-family:var(--serif);font-size:21px;letter-spacing:0}
body.staff .card{border-color:#e6dccb;box-shadow:0 1px 2px rgba(20,10,8,.04),0 6px 18px rgba(20,10,8,.05)}

.btile{background:radial-gradient(120% 120% at 100% 0%,#3a1512 0%,#1c1513 50%,#121010 100%)!important;display:flex!important;align-items:center;justify-content:center}
.btile .bart{width:86%;max-width:none}
.pprice.muted{color:var(--mut);font-weight:550}
.btray{display:flex;align-items:center;gap:var(--s3);margin:0 0 var(--s5);padding:var(--s3) var(--s4);border:1px solid rgba(233,201,169,.3);border-radius:14px;background:rgba(255,255,255,.03)}
.bslots{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;flex:1}
.bslots i{display:block;aspect-ratio:1/1;border-radius:50%;border:1px dashed rgba(233,201,169,.45)}
.bslots i.on{border:0;background:radial-gradient(circle at 38% 35%,#c2463d,#7a1b18)}
.bslots i.on.s1{background:linear-gradient(135deg,#6b3319,#3d1f12)}
.bslots i.on.s2{background:radial-gradient(circle at 38% 35%,#e0b04e,#9b6b16)}
.btray span{font-size:12.5px;color:#cfc6ba;white-space:nowrap}

/* ================= v0.7: delivery checker, Shabbos bar, pick-any-12, collections, corporate, Jerky Club, reviews, referral, kashrus ================= */
.trust>button{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--s4) var(--s1);gap:2px;border:0;border-right:1px solid var(--line);background:none;font:inherit;color:var(--ink);cursor:pointer}
.trust>button:last-child{border-right:0}
.shwrap{padding:var(--s4) var(--pad) 0}
.shbar{display:flex;align-items:center;gap:var(--s3);width:100%;padding:var(--s3) var(--s4);border:1px solid rgba(201,154,107,.4);border-radius:14px;background:linear-gradient(135deg,#1c1513,#2a1210);color:#fbf7f1;font:inherit;text-align:left;cursor:pointer}
.shbar .shi{width:38px;height:38px;border-radius:50%;background:rgba(158,27,22,.35);display:flex;align-items:center;justify-content:center;flex:none;color:#f1c9a5}
.shbar b{display:block;font-size:14.5px;font-weight:650}.shbar span span,.shbar .grow>span{display:block;font-size:12.5px;color:#d8cbbd;margin-top:2px}
.shbar>.lic{width:18px;height:18px;color:#d8cbbd;flex:none}
.poz{color:var(--ember);font-weight:600}
/* ZIP checker */
.zipbox{background:#fff;border:1px solid var(--line);border-radius:16px;padding:var(--s4);margin-top:var(--s4)}
.zlab{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-bottom:var(--s2)}.zlab .lic{width:14px;height:14px}
.zin{display:flex;gap:var(--s2)}.zin input{flex:1;min-width:0;min-height:46px;border:1.5px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-size:17px;letter-spacing:.06em;background:var(--ivory)}
.zin input:focus{outline:2px solid var(--ember);outline-offset:1px;border-color:transparent}
.btn.sm{min-height:40px;font-size:14.5px;padding:0 14px;border-radius:12px}
.zres{margin-top:var(--s3);border-top:1px solid #eeeae3}
.zrow{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) 0 2px}
.zrow .zi{width:34px;height:34px;border-radius:50%;background:var(--ivory2);display:flex;align-items:center;justify-content:center;flex:none}.zrow .zi .lic{width:17px;height:17px}
.zrow b{display:block;font-size:14.5px}.zrow .grow span{display:block;font-size:12.5px;color:var(--mut);line-height:1.35}
.zfee{font-weight:650;font-variant-numeric:tabular-nums;font-size:14.5px}
.zmeta{font-size:12.5px;color:var(--mut);margin:2px 0 var(--s2) 46px;line-height:1.4}
.zipbox .zres>.zrow:first-child{padding-top:var(--s3)}
/* free-shipping bar */
.fbar{background:#fff;border:1px solid var(--line);border-radius:16px;padding:var(--s4);margin-top:var(--s4)}
.fbar p{margin:0 0 var(--s2);font-size:14.5px}.fbar b{color:var(--ink)}
.fbtrack{height:8px;border-radius:99px;background:var(--ivory2);overflow:hidden}.fbtrack i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#7a1b18,var(--ember) 60%,#c4532c);transition:width .3s var(--ease)}
.fbar small{display:block;margin-top:var(--s2);font-size:12px;color:var(--mut)}
/* delivery page */
.dlv{padding-bottom:var(--s5)}
.shnote{display:flex;gap:var(--s3);align-items:flex-start;margin-top:var(--s4);padding:var(--s4);border-radius:14px;background:#f4ece2;border:1px solid #e6d8c4}
.shnote>.lic{width:22px;height:22px;color:var(--ember);flex:none;margin-top:1px}.shnote b{display:block;font-size:14.5px}.shnote span{display:block;font-size:13px;color:#4d4741;margin-top:2px;line-height:1.45}
.ztab table{width:100%;border-collapse:collapse;font-size:13px;margin-top:var(--s2)}
.ztab th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);font-weight:650;padding:6px 4px;border-bottom:1px solid var(--line)}
.ztab td{padding:9px 4px;border-bottom:1px solid #eeeae3;vertical-align:top;font-variant-numeric:tabular-nums}.ztab td small{display:block;color:var(--mut);font-size:11.5px;margin-top:2px;line-height:1.3}
.ztab tr:last-child td{border-bottom:0}.ztab td:first-child{width:46%}
/* date chips */
.dchips{display:flex;gap:var(--s2);overflow-x:auto;scrollbar-width:none;margin:0 calc(-1*var(--s4));padding:0 var(--s4) 4px}.dchips::-webkit-scrollbar{display:none}
.dchips button{flex:none;width:64px;padding:8px 0 10px;border:1.5px solid var(--line);border-radius:14px;background:#fff;font:inherit;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:1px;cursor:pointer;position:relative}
.dchips button b{font-size:20px;font-weight:700;line-height:1.1}.dchips button small{font-size:11.5px;color:var(--mut);font-weight:600}
.dchips button i{font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ember);margin-top:2px}
.dchips button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fbf7f1}.dchips button[aria-pressed=true] small{color:#d8cbbd}.dchips button[aria-pressed=true] i{color:#f1c9a5}
/* pick any 12 */
.boxband{display:flex;align-items:center;gap:var(--s4);width:100%;padding:var(--s5) var(--s4);border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#fff,#f6efe4);font:inherit;text-align:left;color:var(--ink);cursor:pointer}
.boxband p{margin:0 0 var(--s2);font-size:13.5px;color:#4d4741;line-height:1.45}.boxband .flink{color:var(--ember)}
.bbslots{display:grid;grid-template-columns:repeat(3,16px);gap:5px;flex:none;padding:10px;border-radius:12px;background:#2a1a10;box-shadow:inset 0 0 0 1px rgba(201,154,107,.35)}
.bbslots i{width:16px;height:16px;border-radius:4px;background:rgba(255,255,255,.08)}.bbslots i.on{background:linear-gradient(135deg,#c2463d,#7a1b18)}
.boxhead{background:radial-gradient(120% 90% at 50% 0%,#3a1512,#151212 70%);padding:var(--s6) var(--pad) var(--s5);color:#fbf7f1}.boxhead p{margin:0;font-size:14.5px;color:#d8cbbd!important}
.ladder{display:flex;gap:6px;margin-top:var(--s4)}.ladder span{flex:1;border:1px solid rgba(233,201,169,.3);border-radius:10px;padding:6px 2px;text-align:center}
.ladder b{display:block;font-size:13px;color:#fbf7f1}.ladder small{font-size:10.5px;color:#bfb2a3}.ladder span.on{background:rgba(158,27,22,.45);border-color:#c4532c}
.boxbar{position:sticky;top:60px;z-index:5;display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--pad);background:rgba(247,243,236,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bslots2{display:grid;grid-template-columns:repeat(6,12px);gap:4px;flex:none}.bslots2 i{width:12px;height:12px;border-radius:3px;background:var(--ivory2);box-shadow:inset 0 0 0 1px #d8cfc2}.bslots2 i.on{background:var(--ember);box-shadow:none}
.bxl b{display:block;font-size:16px}.bxl span{font-size:12.5px;color:var(--mut)}
.bxlist{margin-top:var(--s4);background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.bxi{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid #eeeae3}.bxi:last-child{border-bottom:0}
.bxim{width:52px;height:52px;border-radius:10px;overflow:hidden;background:#1c1513;flex:none;display:flex;align-items:center;justify-content:center}.bxim img{width:100%;height:100%;object-fit:cover}.bxim img.bm{width:60%;height:auto;opacity:.75}
.bxi b{display:block;font-size:14.5px}.bxi .grow span{font-size:12.5px;color:var(--mut)}.bxi .grow{min-width:0}
.qty.sm button{width:38px;height:38px}.qty.sm button[disabled]{opacity:.35}
.boxbuy .bxt{flex:1;min-width:0}.boxbuy .bxt small{display:block;font-size:12px;color:var(--mut)}.boxbuy .bxt b{font-size:18px;font-variant-numeric:tabular-nums}.boxbuy .bxt s{font-size:12.5px;color:var(--mut);margin-left:6px}
.btn[aria-disabled=true]{opacity:.55}
/* collections */
.crail{grid-auto-columns:44%}
.ctile{position:relative;display:block;aspect-ratio:3/4;border:0;padding:0;border-radius:16px;overflow:hidden;background:#151413;cursor:pointer;text-align:left;font:inherit}
.ctile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ctile .cshade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,10,9,0) 30%,rgba(12,10,9,.88) 100%)}
.ctxt{position:absolute;left:0;right:0;bottom:0;padding:var(--s3);color:#fbf7f1}.ctxt small{display:block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#e9c9a9;font-weight:650}
.ctxt b{display:block;font-family:var(--serif);font-size:19px;line-height:1.15;margin:2px 0 6px}
.cdl{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:#e6ddd0}.cdl .lic{width:12px;height:12px}.cdl.soon{color:#f3b38c}
.clist{margin-top:var(--s4);display:flex;flex-direction:column;gap:var(--s3)}
.crow{display:flex;align-items:center;gap:var(--s3);width:100%;padding:var(--s2);padding-right:var(--s4);border:1px solid var(--line);border-radius:16px;background:#fff;font:inherit;text-align:left;color:var(--ink);cursor:pointer}
.crow img{width:72px;height:72px;border-radius:12px;object-fit:cover;flex:none}.crow small{display:block;font-size:11.5px;color:var(--mut)}.crow b{display:block;font-family:var(--serif);font-size:18px;margin:1px 0 3px}.crow .cdl{color:#6b4a2e}.crow .cdl.soon{color:var(--ember)}
.chero{aspect-ratio:4/3.4}
.dlpill{display:inline-flex;align-items:center;gap:6px;margin-top:var(--s3);padding:6px 12px;border-radius:99px;background:rgba(158,27,22,.85);color:#fff;font-size:13px;font-weight:650}.dlpill .lic{width:14px;height:14px}
.dlpill.light{background:#f4ece2;color:var(--ember);border:1px solid #e6d8c4;margin:var(--s3) 0 0}
.bon.light{background:#f4faf4;border-color:#cfe5d2;color:var(--ink)}.bon.light .lic{color:var(--ok)}.bon.light small{color:#4d4741}
/* corporate */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}.tiers div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:var(--s3) var(--s2);text-align:center}
.tiers b{display:block;font-family:var(--serif);font-size:19px;color:var(--ember)}.tiers span{font-size:12px;color:var(--mut)}
.corpfeat{margin-top:var(--s4);background:#fff;border:1px solid var(--line);border-radius:16px}.corpfeat>div{display:grid;grid-template-columns:28px 1fr;column-gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid #eeeae3}.corpfeat>div:last-child{border-bottom:0}
.corpfeat .lic{grid-row:span 2;width:22px;height:22px;color:var(--ember);margin-top:2px}.corpfeat b{font-size:14.5px}.corpfeat span{font-size:13px;color:var(--mut)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.corp textarea{font:inherit}
.logocard{margin-top:var(--s4);background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.lcprev{padding:0 var(--s4) var(--s4);display:flex;flex-direction:column;align-items:center;gap:var(--s3)}
.lcard{width:100%;max-width:280px;aspect-ratio:7/4;background:var(--ivory);border:1px solid #e3d8c6;border-radius:6px;box-shadow:0 8px 24px rgba(40,20,10,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:var(--s3);text-align:center}
.lcard img{max-height:48px;max-width:60%;object-fit:contain}.lcard .lph{display:inline-block;border:1.5px dashed #c9b9a1;border-radius:8px;padding:8px 16px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#a08b70}
.lcard p{margin:0;font-family:var(--serif);font-size:15px}.lcard small{font-size:10.5px;color:var(--mut);letter-spacing:.04em}
.upl{position:relative;overflow:hidden;cursor:pointer}.upl input{position:absolute;inset:0;opacity:0;cursor:pointer}
/* Jerky Club */
.clubcard{display:flex;align-items:stretch;gap:var(--s3);width:100%;padding:0;border:1px solid rgba(201,154,107,.35);border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#1c1513,#2c1411);color:#fbf7f1;font:inherit;text-align:left;cursor:pointer}
.clubcard .grow{padding:var(--s5) 0 var(--s5) var(--s5)}.clubcard p{margin:0 0 var(--s3);font-size:13.5px;color:#d8cbbd;line-height:1.45}.clubcard .eyebrow{display:flex;align-items:center;gap:6px}.clubcard .eyebrow .lic{width:14px;height:14px}
.clubcard img{width:34%;object-fit:cover;flex:none}
.clubopts{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.copt{border:1.5px solid var(--line);border-radius:14px;background:#fff;padding:var(--s3);text-align:left;font:inherit;color:var(--ink);cursor:pointer}.copt b{display:block;font-family:var(--serif);font-size:20px}.copt span{display:block;font-size:14px;font-weight:600;margin-top:2px}.copt small{font-size:12px;color:var(--mut)}
.copt[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.clubperks{list-style:none;padding:0;margin:var(--s5) 0 var(--s4)}.clubperks li{display:flex;gap:var(--s3);align-items:center;padding:6px 0;font-size:14px;color:#4d4741}.clubperks .lic{width:18px;height:18px;color:var(--ember);flex:none}
/* reviews */
.pdrate{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:0;margin:-4px 0 var(--s3);font:inherit;font-size:13px;color:var(--mut);cursor:pointer}
.stars{display:inline-flex;gap:1px}.stars .lic{width:15px;height:15px;stroke:#c9bfb2;fill:none}.stars .f .lic{fill:#b8862f;stroke:#b8862f}.stars.sm .lic{width:13px;height:13px}
.revs{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}.revs .ckh{display:flex;justify-content:space-between;align-items:center;font-weight:700}
.revavg{display:inline-flex;align-items:center;gap:6px;font-size:14px}
.sampletag{display:flex;gap:6px;align-items:center;margin:var(--s2) 0 var(--s3);padding:8px 10px;border-radius:10px;background:#fbf3e3;border:1px dashed #d9b77a;font-size:12.5px;color:#7a5418}.sampletag .lic{width:14px;height:14px;flex:none}
.rev{padding:var(--s3) 0;border-bottom:1px solid #eeeae3}.rev:last-child{border-bottom:0}.rev b{display:block;margin-top:4px;font-size:14.5px}.rev p{margin:2px 0 4px;font-size:14px;color:#4d4741;line-height:1.5}.rev small{font-size:12px;color:var(--mut)}
button.pdkosher{width:100%;font:inherit;text-align:left;cursor:pointer}button.pdkosher>.lic{width:16px;height:16px;color:var(--mut)}
/* referral */
.refer{margin-top:var(--s3);border-radius:16px;padding:var(--s5);background:radial-gradient(120% 120% at 100% 0%,#5a1712,#1c1513 60%);color:#fbf7f1;border:1px solid rgba(201,154,107,.35)}
.refer p{margin:0 0 var(--s3);font-size:13.5px;color:#d8cbbd;line-height:1.45}.refer .eyebrow{display:flex;align-items:center;gap:6px}.refer .eyebrow .lic{width:14px;height:14px}
.rcode{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1.5px dashed rgba(233,201,169,.55);border-radius:12px}.rcode span{font-size:12px;color:#bfb2a3;text-transform:uppercase;letter-spacing:.1em}.rcode b{font-size:18px;letter-spacing:.12em}
.refer .fine{margin-top:var(--s3)}
/* kashrus */
.kshero{background:radial-gradient(120% 90% at 50% 0%,#3a1512,#151212 70%);padding:var(--s6) var(--pad) var(--s6);text-align:center}.kshero .plsub{margin:0 auto}
.ksseal{width:120px;height:auto;margin:0 auto var(--s4);display:block}
.kslist{background:#fff;border:1px solid var(--line);border-radius:16px}.kslist>div{display:flex;gap:var(--s3);padding:var(--s4);border-bottom:1px solid #eeeae3}.kslist>div:last-child{border-bottom:0}
.kslist .lic{width:22px;height:22px;color:var(--ember);flex:none;margin-top:1px}.kslist b{display:block;font-size:14.5px}.kslist span{display:block;font-size:13.5px;color:#4d4741;margin-top:2px;line-height:1.45}
.ksseals{display:flex;justify-content:center;align-items:center;gap:var(--s5);margin-top:var(--s5)}.ksseals img{height:64px;width:auto}
/* footer links */
.flinks{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:var(--s4) 0 0}.flinks button{border:0;background:none;padding:6px 0;font:inherit;font-size:13px;color:#e6ddd0;text-decoration:underline;text-decoration-color:rgba(230,221,208,.35);text-underline-offset:3px;cursor:pointer}

.logocard .wtoggle{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;background:none;border:0;font:inherit;color:inherit;cursor:pointer;text-align:left}
.pimg.noph .pserve{top:10px;bottom:auto;right:10px;left:auto}
.boxbuy .bxt{flex:1 1 auto}.boxbuy .bxt s{display:block;margin-left:0}.boxbuy .btn{flex:none;padding:0 16px}.boxbuy .btn.light{padding:0 12px}

/* ===== v0.8 staff: sales ledgers, catalog, team permissions ===== */
.paydot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:middle;flex:none}
.perms{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card)}
.perm{display:flex;align-items:center;width:100%;gap:10px;padding:11px 14px;border:0;border-bottom:1px solid var(--line);background:transparent;font:inherit;font-size:15px;text-align:left;color:inherit}
.perm:last-child{border-bottom:0}
.perm i{flex:none;width:42px;height:24px;border-radius:999px;background:var(--cream2);position:relative;transition:background .15s}
.perm i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:left .15s}
.perm[aria-pressed="true"] i{background:var(--ox)}
.perm[aria-pressed="true"] i::after{left:21px}
button.kpi{font:inherit;color:inherit;cursor:pointer}
button.kpi[aria-pressed="true"]{outline:2px solid var(--ox);outline-offset:-2px}
.tbl td.r,.tbl th.r{text-align:right;white-space:nowrap}

/* ===== v0.9: add-a-product row, recipes, order statuses, daily sheets, print views ===== */
.addrow .arow{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.addrow .arow select,.addrow .arow input,.addrow .apnew,.rcrow select,.rcrow input{min-height:44px;border:1.5px solid var(--line);border-radius:12px;padding:0 10px;background:#fff;font:inherit;font-size:15px;min-width:0;width:100%}
.addrow .arow #ap_oz,.addrow .arow #ap_pr{grid-column:auto}
.addrow .arow .btn{grid-column:1/-1;min-height:44px}
@media (min-width:520px){.addrow .arow{grid-template-columns:1.2fr 1.6fr .8fr .9fr auto}.addrow .arow .btn{grid-column:auto}}
.addrow .apnew{margin-top:8px}
.rcrow{gap:6px;align-items:center}.rcrow select{flex:1}.rcrow input[type=number]{width:64px;flex:none;text-align:center}
.seg.v9scroll{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.seg.v9scroll::-webkit-scrollbar{display:none}
.seg.v9scroll button{flex:0 0 auto;white-space:nowrap;padding:0 12px;font-size:14px}
.oc.off{opacity:.62}
.daysheet{font-size:14px}
.dsec{margin:0 0 14px}.dsec:last-child{margin-bottom:0}
.dsec h3{font-family:var(--serif);font-size:17px;margin:4px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--ink,#1a1412)}
.ptbl{width:100%;border-collapse:collapse;margin:0 0 10px;font-size:13.5px}
.ptbl th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--mut);padding:5px 4px;border-bottom:1px solid var(--line)}
.ptbl th .cnt{color:var(--ox);font-size:13px}
.ptbl td{padding:6px 4px;border-bottom:1px solid var(--line);vertical-align:top}
.ptbl .r,.ptbl td.r,.ptbl th.r{text-align:right}
.ptbl td.ck{width:20px}.ptbl td.ck:before{content:'';display:inline-block;width:13px;height:13px;border:1.5px solid #555;border-radius:3px;margin-top:2px}
.ptbl .short{color:var(--bad);font-weight:700}
.ptbl.log td{height:26px}
.ptbl tr.ptot td{border-top:2px solid #333}
.sm{font-size:12px;color:var(--mut)}
body.printmode{background:#e9e4dc}
body.printmode .tabs,body.printmode .top{display:none}
.printpage{min-height:100vh;padding:0 0 30px}
.pbar{position:sticky;top:0;z-index:5;display:flex;gap:8px;align-items:center;padding:10px 12px;background:var(--ink,#16110f);}
.sheetpg{background:#fff;color:#111;max-width:794px;margin:12px auto;padding:22px 20px 16px;box-shadow:0 2px 14px rgba(0,0,0,.12)}
.phead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:3px solid #111;padding-bottom:10px;margin-bottom:12px}
.pbrand{font-family:var(--serif);font-size:24px;font-weight:700}
.psub{font-size:13.5px;color:#444;margin-top:2px}
.plogo{height:54px;width:auto;background:#16110f;border-radius:8px;padding:4px}
.pto{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;margin-bottom:8px}.pto .r{text-align:right}
.ptbl.aging td,.ptbl.aging th{text-align:center}
.pfoot{font-size:11px;color:#777;margin:12px 0 0;text-align:center}
@media print{
 @page{size:letter;margin:12mm}
 body,body.printmode{background:#fff!important}
 .noprint,.tabs,.top,.toast,.scrim,#splash{display:none!important}
 .sheetpg{box-shadow:none;margin:0;padding:0;max-width:none}
 .ptbl{font-size:11.5px}.ptbl td{padding:4px 3px}.dsec h3{font-size:15px}
}

.pbar .btn{opacity:1}.pbar .btn.light{background:#2a211e;color:#f4ede2;border-color:#3a2f2a}
.ptbl.stmt td:nth-child(3){min-width:110px}
@media (max-width:560px){.sheetpg{padding:16px 12px;margin:10px 6px}.ptbl.stmt{font-size:11.5px}.ptbl.stmt th:nth-child(2),.ptbl.stmt td:nth-child(2){display:none}.ptbl.stmt th,.ptbl.stmt td{padding:5px 3px}.ptbl.aging{font-size:11px}.pbrand{font-size:21px}}
.daysheet .ptbl td.sm{min-width:120px}

.row .btn:not(.light),.pbar .btn:not(.light),.addrow .btn,.btns .btn:not(.light){color:#fff}

/* v1.0: Access screen, Tartikov certificate card, platter cut-out tray */
.acckill{background:var(--oxd);color:#f6efe2;border-radius:var(--r);padding:20px 16px 14px;margin-top:12px}
.acckill h2{font-family:var(--serif);font-size:26px;line-height:1.15;margin:0 0 6px;color:#fff}
.acckill>p{margin:0 0 12px;opacity:.85;font-size:15px}
.acckill ol{margin:0;padding:0 0 0 22px;display:grid;gap:14px}
.acckill li{padding-left:4px}.acckill li::marker{font-weight:700;color:#f0c36a}
.acckill li b{display:block;font-size:16px;color:#fff}.acckill li span{display:block;font-size:14.5px;line-height:1.4;opacity:.9;margin-top:2px}
.acclinks{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.acclinks a.btn{text-decoration:none;display:inline-flex;align-items:center;gap:6px;min-height:40px}
.acclinks a.btn .lic{width:15px;height:15px}
.acckill .acclinks a.btn.light{background:#f6efe2;color:var(--oxd);border-color:#f6efe2}
.accrow b{display:block;font-size:15.5px;margin-bottom:4px}.accrow .small{line-height:1.4;margin-top:2px;overflow-wrap:anywhere}
.kscertsec{padding-bottom:0}
.kscert{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:var(--sh)}
.kscert img{width:132px;height:auto;flex:none}
.kscert .h2{margin:2px 0 4px;font-size:21px;line-height:1.2}.kscert p{margin:0}
@media (max-width:420px){.kscert{flex-direction:column;text-align:center}.kscert img{width:170px}}

/* ================= v1.1: guides, saved cards, delivery texts + tracking, money views ================= */
.gchips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 12px}
.gch-l{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;color:var(--mut);margin-right:2px}
.gch-l .lic{width:16px;height:16px}
.gchip{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:700;color:var(--ox);min-height:34px}
.gchip[aria-pressed="true"]{background:var(--ox);color:#fff;border-color:var(--ox)}
.chips11{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.eyebrow11{margin:0;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ox)}
.gsteps{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.gsteps li{display:flex;gap:10px;align-items:flex-start;background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:16px}
.gn{flex:none;width:26px;height:26px;border-radius:50%;background:var(--ox);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;margin-top:1px}
.gtip{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:10px 12px;border-radius:12px;background:#fbf1dc;border:1px solid #ecd9ae;font-size:15px}
.gtip .lic{flex:none;color:var(--warn);margin-top:2px}
.gico{flex:none;width:40px;height:40px;border-radius:12px;background:var(--cream2);color:var(--ox);display:flex;align-items:center;justify-content:center}
.gico.bad{background:#fbe3e1;color:var(--bad)}
.gcard .row{gap:12px}
.gdet{margin-top:8px}.gdet summary{cursor:pointer;font-weight:700;color:var(--ox);font-size:15px;list-style:none;display:flex;align-items:center;gap:4px}
.gdet summary::-webkit-details-marker{display:none}
.note11{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--cream2);border:1px solid var(--line);font-size:14px;color:var(--mut)}
.note11 .lic{flex:none;color:var(--ox);margin-top:1px}
.cardlist{display:flex;flex-direction:column;gap:8px}
.ccard{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,#2a1414,#4a1a1c);color:#fff}
.ccard .muted,.ccard .small.muted{color:#e8d9c8}
.ccard.off{background:#efe7da;color:var(--ink)}.ccard.off .muted{color:var(--mut)}
.cbrand{flex:none;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:3px 6px;min-width:58px;text-align:center}
.ccard.off .cbrand{border-color:var(--line)}
.ccard .iconbtn{color:inherit;background:transparent;border:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}
.chk11{display:flex;gap:8px;align-items:center;margin:10px 0 0;font-size:15px}
.chk11 input{width:20px;height:20px}
.txline{display:flex;gap:6px;align-items:center;font-size:13px;margin:-2px 0 8px;color:var(--ok)}
.txline .lic{width:16px;height:16px}
.dbtns2{margin-top:8px}
.dbtns2 .btn[aria-pressed="true"]{color:var(--ok);border-color:var(--ok)}
.stop.skipped11{border-color:#e7b7b2;background:#fff6f4}
.skipbox{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.alert11{border-color:#e7b7b2;background:#fff6f4}
.txcard .bubble11{margin:8px 0;padding:10px 12px;border-radius:16px 16px 16px 4px;background:#e9e2d6;font-size:15px;line-height:1.35;white-space:pre-wrap;word-break:break-word}
.trk11 .trkhero{background:radial-gradient(120% 120% at 70% 0%,var(--ox2),var(--oxd));border-radius:var(--r);padding:22px 18px;margin-bottom:12px}
.trk11 .trkhero h1{margin:6px 0 6px;font-size:30px;line-height:1.1}
.trk11 .trkhero p{margin:0}
.trksteps ol{list-style:none;margin:0;padding:0}
.trksteps li{display:flex;align-items:center;gap:12px;padding:10px 0;position:relative;color:var(--mut)}
.trksteps li .dot{flex:none;width:16px;height:16px;border-radius:50%;border:2px solid var(--line);background:var(--card);position:relative;z-index:1}
.trksteps li:not(:last-child)::after{content:"";position:absolute;left:7px;top:30px;bottom:-10px;width:2px;background:var(--line)}
.trksteps li.on{color:var(--ink);font-weight:700}
.trksteps li.on .dot{background:var(--ox);border-color:var(--ox)}
.trksteps li.on:not(:last-child)::after{background:var(--ox)}
.trksteps li.cur .dot{box-shadow:0 0 0 5px rgba(107,20,24,.18)}
.sqcard{cursor:pointer}.sqcard .row{gap:12px}
.dtable{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:8px 0 12px;font-size:14px}
.dr{display:grid;grid-template-columns:1.5fr .8fr 1fr .9fr;gap:6px;padding:8px 10px;align-items:center}
.dr span:not(:first-child){text-align:right}
.dh{background:var(--cream2);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.dday{border-top:1px solid var(--line)}.dday summary{list-style:none;cursor:pointer}.dday summary::-webkit-details-marker{display:none}
.dday[open] summary{background:#fbf6ec}
.dsub{font-size:13px;color:var(--mut);padding-top:4px;padding-bottom:4px}
.dt{border-top:2px solid var(--ink);font-weight:800}
.mrow{padding:6px 0}.mrow .row{gap:8px}
.mtrack{height:10px;border-radius:6px;background:var(--cream2);margin-top:4px;overflow:hidden}
.mtrack>div{height:100%;border-radius:6px;background:#a8743a}
.mchart{display:flex;align-items:flex-end;gap:4px;height:170px;padding-top:18px}
.mcol{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}
.mb{width:100%;max-width:34px;background:var(--ox);border-radius:5px 5px 0 0;min-height:2px}
.mv{font-size:10px;font-weight:700;color:var(--mut);margin-bottom:3px;white-space:nowrap}
.ml{font-size:12px;font-weight:700;color:var(--mut);margin-top:4px}
.rank11{flex:none;width:24px;height:24px;border-radius:50%;background:var(--cream2);font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center}

/* v1.1: staff screens no longer wobble sideways (chip rows bled 4px past the edge since v0.8) */
body.staff #app{overflow-x:clip}
.ccard .nw{white-space:nowrap}
.dbtns.dbtns2{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.dbtns2 .btn{font-size:14px;padding:0 6px;min-height:44px;white-space:nowrap}
/* v1.1: driver Collect and Delivered buttons had grey text on dark fill */
.stop .dbtns .btn:not(.light){color:#fff}
.stop .grow{min-width:0}
.txline{flex-wrap:wrap}
.dbtns2 .btn{min-width:0;font-size:13px;padding:0 4px;gap:4px;white-space:normal;line-height:1.15}
.dbtns2 .btn .lic{width:15px;height:15px;flex:none}

/* ---------- v1.2: type-ahead, phones, duplicates, quotes, delivery, recipes ---------- */
.ta12{margin-top:6px}
.ta12 input{width:100%;min-height:48px;border:1.5px solid var(--line);border-radius:12px;padding:0 12px;background:#fff;font-size:17px}
.ta12l{display:flex;flex-direction:column;margin-top:6px;border:1.5px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.ta12l:empty{display:none}
.ta12l button{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;background:#fff;border:0;border-bottom:1px solid var(--line);min-height:52px;font-size:16px}
.ta12l button:last-child{border-bottom:0}
.ta12l button b,.ta12l button .small{display:block}
.ta12l button u{text-decoration:none;background:#f6e3b4;border-radius:3px}
.ta12l .new{color:var(--ox);font-weight:700}
.ta12l .lic{flex:none;width:18px;height:18px;opacity:.6}
.ta12info{margin:8px 2px 0;color:#3b302a;line-height:1.45}
.ta12new{background:var(--cream2);border-radius:12px;padding:10px}
.ta12new input,.ta12new select{min-height:44px;border:1.5px solid var(--line);border-radius:10px;padding:0 10px;background:#fff;width:100%;min-width:0}
.warn12{margin-top:8px;background:#fff6e5;border:1px solid #f0d199;border-radius:10px;padding:8px 10px;font-size:15px}
.warn12 .lic{width:16px;height:16px;vertical-align:-3px;color:var(--warn)}
.ph12row{border:1.5px solid var(--line);border-radius:12px;padding:8px;background:#fff}
.ph12row.main{border-color:#9ccfab}
.ph12row .row{gap:8px}
.ph12row input,.ph12row select{min-height:44px;border:1.5px solid var(--line);border-radius:10px;padding:0 10px;background:#fff;min-width:0}
.ph12row input{flex:1.4}.ph12row select{flex:1}
.ph12row input[readonly]{background:var(--cream2)}
.linkbtn{background:none;border:0;padding:6px 0;color:var(--ox);font-weight:700;font-size:15px;display:inline-flex;align-items:center;gap:6px;min-height:36px}
.linkbtn.bad{color:var(--bad)}
.linkbtn .lic{width:16px;height:16px}
.prow12{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 2px;min-height:60px}
.prow12:last-child{border-bottom:0}
.prow12 .grow>*{display:block}
.prow12>.lic{flex:none;width:18px;height:18px;opacity:.5}
.dup12 .why12{margin:8px 0;padding-left:18px;font-size:14px;color:#3b302a}
.dgrid12{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dcol12{border:1.5px solid var(--line);border-radius:12px;padding:10px;background:#fff;display:flex;flex-direction:column;gap:4px;min-width:0;overflow-wrap:anywhere}
.dcol12 .btn{margin-top:auto;padding:0 8px;font-size:14px}
.mlist12{margin:6px 0;padding-left:20px}
.lbl12{margin:12px 0 4px;font-weight:700;font-size:14px}
.qcard12{display:block;width:100%;text-align:left;font:inherit;color:inherit}
.qline12{border-bottom:1px solid var(--line);padding:10px 0}
.qline12:first-child{padding-top:0}
.qline12 select{flex:1;min-width:0;min-height:44px;border:1.5px solid var(--line);border-radius:12px;padding:0 10px;background:#fff;font-size:15px}
.qnums12{display:grid;grid-template-columns:1fr 1.2fr 1fr 1fr;gap:6px;margin:8px 0 4px;align-items:end}
.qnums12 label span,.qc12 span{display:block;font-size:12px;font-weight:700;color:var(--mut);margin-bottom:2px}
.qnums12 input{width:100%;min-width:0;min-height:44px;border:1.5px solid var(--line);border-radius:10px;padding:0 8px;background:#fff;font-size:16px}
.qc12 b{display:block;min-height:44px;line-height:44px;font-size:15px}
.qc12 b.p-ok{color:var(--ok);background:none}.qc12 b.p-warn{color:var(--warn);background:none}.qc12 b.p-bad{color:var(--bad);background:none}.qc12 b.p-off{color:var(--off);background:none}
.qsum12 .row{padding:3px 0}
.qtot12{border-top:1.5px solid var(--line);margin-top:4px;padding-top:8px!important;font-weight:800;font-size:19px}
.mbar12{position:relative;height:12px;border-radius:99px;background:var(--cream2);overflow:visible;margin:10px 0 6px}
.mbar12>span{display:block;height:100%;border-radius:99px;transition:width .2s}
.mbar12>span.p-ok{background:var(--ok)}.mbar12>span.p-warn{background:#d99a2b}.mbar12>span.p-bad{background:var(--bad)}.mbar12>span.p-off{background:#bbb}
.mbar12 i{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);opacity:.5}
.mgbig12{font-size:28px;font-weight:800;background:none!important;padding:0}
.mgbig12.p-ok{color:var(--ok)}.mgbig12.p-warn{color:var(--warn)}.mgbig12.p-bad{color:var(--bad)}.mgbig12.p-off{color:var(--off)}
.bad12{color:var(--bad)}
.dbtns3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:8px}
.dbtns3 .btn{padding:0 6px;font-size:14px;gap:4px}
.sx12{margin:2px 0 8px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.sx12 .dbtns3{width:100%}
.podmini12{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:12px;background:#fff;padding:4px 10px 4px 4px;font-size:14px;font-weight:700;margin-top:6px}
.podmini12 img{width:44px;height:44px;object-fit:cover;border-radius:8px}
.podbig12{width:100%;border-radius:14px;margin-top:8px}
.podthumb12{max-width:140px;border-radius:10px;margin-top:8px}
.podbtn12{position:relative;overflow:hidden}
.podpill12{border:0;display:inline-flex;align-items:center;gap:4px}
.podpill12 .lic{width:14px;height:14px}
.dst12{margin-bottom:4px;display:flex;flex-wrap:wrap;gap:4px}
.pband12{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);padding:12px;margin:0 0 12px;font:inherit;color:inherit}
.pband12 .grow>*{display:block}
.coach12 .goals12{list-style:none;margin:10px 0;padding:0;display:grid;gap:4px;font-size:15px}
.coach12 .goals12 li{display:flex;align-items:center;gap:8px;color:var(--mut)}
.coach12 .goals12 li.on{color:var(--ok);font-weight:700}
.coach12 .goals12 .lic{width:18px;height:18px;flex:none}
.trknote12{background:rgba(255,255,255,.12);border-radius:10px;padding:8px 10px;margin-top:10px}
.irow12{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 2px;font:inherit;color:inherit}
.irow12:last-child{border-bottom:0}
.irow12 .grow>*{display:block}
.r12{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;flex:none}
.ibar12{height:5px;border-radius:9px;background:var(--cream2);margin-top:6px;max-width:220px}
.ibar12 span{display:block;height:100%;border-radius:9px;background:var(--ok)}
.ibar12 span.lo{background:var(--bad)}
.ing12prev{margin:6px 2px 0;line-height:1.45}
.rtbl12{width:100%;border-collapse:collapse;margin-top:10px;font-size:15px}
.rtbl12 th{text-align:left;font-size:12px;color:var(--mut);border-bottom:1.5px solid var(--line);padding:4px 2px}
.rtbl12 td{border-bottom:1px solid var(--line);padding:7px 2px}
.rtbl12 .r{text-align:right}
.rtbl12 .lic,.small .lic{width:14px;height:14px;vertical-align:-2px}
.lrow12{border-bottom:1px solid var(--line);padding:8px 0}
.lrow12:last-child{border-bottom:0}
.low12{border-color:#e7b7b2;background:#fff6f4}
.seg button[disabled]{opacity:.5}
@media print{.qnums12,.mbar12{break-inside:avoid}}

/* v1.2 fix: the print helper .sm (grey 12px) was turning primary and dark small buttons' text grey since v0.9 */
.btn.sm:not(.light):not(.ghost):not(.glass){color:#fff}


/* ---------- v1.3: consignment, load and route, team extras, buying ---------- */
.k3-13{grid-template-columns:repeat(3,1fr);margin-top:10px}
.k3-13 .kpi{padding:10px 8px;min-width:0}.k3-13 .kpi .v{font-size:20px}.k3-13 .kpi .s{font-size:12px}
.cons13 .grid2 .btn,.lv13 .btn{min-width:0}
.cnt13 input{width:64px;min-height:42px;border:1.5px solid var(--line);border-radius:10px;padding:0 8px;background:#fff;font-size:16px;text-align:right}
.cnt13 td,.cnt13 th{vertical-align:middle}
textarea#lr13t{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;font:inherit;font-size:15px;resize:vertical;min-height:120px}
.filebtn13{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}
.lrsteps13{display:grid;grid-template-columns:repeat(4,1fr)}
.lrsteps13 button{padding-left:4px;padding-right:4px;font-size:14px;white-space:nowrap}
.lra13 select,.lrr13 select{min-height:42px;border:1.5px solid var(--line);border-radius:10px;padding:0 8px;background:#fff;max-width:46%;font-size:15px}
.lrl13{margin-top:8px;border-top:1px solid var(--line)}
.lrr13{gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}
.lrr13:last-child{border-bottom:0}
.lrr13 .grow{min-width:0}.lrr13 .grow b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sn13{flex:none;width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.iconbtn13{flex:none;width:38px;height:38px;border-radius:10px;border:1.5px solid var(--line);background:#fff;font-size:17px;color:var(--ink)}
.iconbtn13:disabled{opacity:.35}
.lrd13{gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.bar13{height:8px;border-radius:6px;background:var(--cream2);overflow:hidden;margin-top:10px}
.bar13 i{display:block;height:100%;background:var(--ox);border-radius:6px}
.addr13{margin:2px 0;color:#3b302a}.addr13 .lic{width:14px;height:14px;vertical-align:-2px;color:var(--ox)}
.pubc13{border-left:4px solid var(--ox);margin-bottom:10px}
.warn13{border-left:4px solid var(--warn);margin-bottom:10px}
.warn13t{color:var(--warn);font-weight:600}
.av13{flex:none;width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--cream2);display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:var(--ox);font-size:18px;border:2px solid #fff;box-shadow:0 0 0 1.5px var(--line)}
.av13.big{width:96px;height:96px;font-size:36px}
.lv13>.row,.card>.row>.av13{gap:12px}
.ic.av13w{background:none;padding:0}
.ic.av13w .av13{width:40px;height:40px;font-size:16px}
.lvp13{background:#f6e3b4;color:#5a3d00;font-size:12px}
.badges13{display:flex;flex-wrap:wrap;gap:6px}
.bdg13{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;padding:4px 9px;border-radius:999px;background:#f1ece3;color:#8d8278;border:1px solid var(--line)}
.bdg13 .lic{width:13px;height:13px}
.bdg13.on{background:#fff4dc;color:#6b4300;border-color:#ecd29a;font-weight:600}
.photos13{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ph13{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}
.tot13{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}
.tot13>div{background:var(--cream2);border-radius:10px;padding:6px 6px;min-width:0}
.tot13 span{display:block;font-size:11.5px;color:var(--mut)}
.tot13 b{font-size:14px;white-space:nowrap}
.tot13 .big{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:#fff}
.tot13 .big span{color:#e9dccb;font-size:14px}.tot13 .big b{font-size:19px}
.ok13{color:var(--ok);font-weight:600;margin-top:6px}
.cmp13{font-size:14px}.cmp13 td{vertical-align:top}.cmp13 tr[data-k]{cursor:pointer}
.cmp13 tr.sel13 td{background:#fff4dc}
.cmp13 th,.cmp13 td{padding-left:4px;padding-right:4px}
.req13 .rl13{margin-top:8px;border-top:1px solid var(--line)}
.req13 input[type=checkbox]{width:22px;height:22px;flex:none;accent-color:var(--ox)}
.off13{opacity:.45}
.buyc13{border-left:4px solid var(--ox);margin-top:10px}
.req13 .tot13,.cons13 .kpis{margin-top:10px}
.seg button{white-space:nowrap}

/* v1.4 */
.wk14{margin-top:14px}.wkh14{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;justify-content:space-between;margin:0 4px 6px}.wkh14 b{font-family:var(--fd,inherit);font-size:16px}
.wkr14{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line,#e8dccb)}.wkr14:last-child{border-bottom:0}.wkr14 .grow{min-width:0}.wkx14{opacity:.5}
.wkit14{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px}
.wkm14{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none;text-align:right}.wkm14 .btn.sm{padding:6px 9px}
.txoff14{border:2px solid var(--bad,#b3261e)}.pay14c{margin:10px 0}
@media (max-width:560px){.ptbl.stmt.keep2 th:nth-child(2),.ptbl.stmt.keep2 td:nth-child(2){display:table-cell}}
@media (max-width:440px){.pbar{gap:6px;padding:10px 8px;flex-wrap:wrap}.pbar .btn.sm{padding-left:10px;padding-right:10px}}

/* v1.5 */
.st15{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px;color:var(--mut)}
.st15 span{display:inline-flex;align-items:center;gap:4px}.st15 .lic{width:14px;height:14px}
.st15 .tx15off{color:var(--bad,#b3261e)}
.perm.tx15{margin:6px 0 10px;width:100%;text-align:left}
.mx15{font-size:13px}.mx15 th,.mx15 td{padding:6px 4px}.mx15 .c{text-align:center}.mx15 th.c{font-size:12px}
.mx15 .on15{color:var(--ok)}.mx15 .on15 .lic{width:16px;height:16px}
.sr15{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sr15card .perm{width:100%;text-align:left}
.srlog15{border-top:1px solid var(--line);padding:8px 0}
.eta15{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-weight:600;color:var(--ox,#7a1f12)}.eta15 .lic{width:14px;height:14px}
a.btn.nav15{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.eta15bar{margin-bottom:12px}
.eta15trk{margin-top:12px}.eta15trk .disp15{font-size:24px;font-weight:800;margin:4px 0 0}
.perm>.grow{flex:1;min-width:0}
.eta15row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:3px}.eta15row .eta15{margin-top:0}
.cp15{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--ox);display:inline-flex;align-items:center;gap:4px;padding:4px 0;margin-left:auto}.cp15 .lic{width:14px;height:14px}

/* v1.6 */
.hero16 .hr16{position:absolute;inset:0}
.hero16 .hr16 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;opacity:0;transition:opacity 1.1s ease}
.hero16 .hr16 img.on{opacity:1}
.hr16dots{position:absolute;top:14px;right:14px;z-index:3;display:flex;gap:6px;padding:6px 8px;border-radius:12px;background:rgba(12,10,9,.28)}
.hr16dots button{width:8px;height:8px;border-radius:5px;border:0;padding:0;background:rgba(255,255,255,.5);transition:width .3s}
.hr16dots button[aria-pressed=true]{background:#fff;width:18px}
.nr16{display:flex;gap:6px;align-items:flex-start;margin:6px 0;padding:7px 9px;border-radius:10px;background:rgba(180,40,30,.09);color:var(--bad,#a3271b);font-size:13px;line-height:1.35}
.nr16 svg{flex:none;width:16px;height:16px;margin-top:1px}
.blk16{opacity:.75}
.pay16{margin:10px 0;border:1px solid rgba(180,40,30,.25)}
.pm16 button{min-width:44%}
.pn16 .pn16row{display:flex;gap:8px;align-items:center;padding:9px 0;border-top:1px solid var(--line,rgba(0,0,0,.08))}
.pn16 .pn16row:first-of-type{margin-top:8px}
.pn16b{display:flex;gap:6px;flex:none}
.wa16{text-align:center;text-decoration:none}
.trkpay16{margin-top:12px;border:1px solid rgba(180,40,30,.25)}
.ph16strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}
.ph16strip span{position:relative;flex:none}
.ph16strip img{width:72px;height:72px;object-fit:cover;border-radius:10px;display:block}
.ph16strip i{position:absolute;left:4px;top:4px;font-style:normal;font-size:11px;background:rgba(12,10,9,.7);color:#fff;border-radius:6px;padding:0 5px}
.ph16row{display:flex;gap:10px;align-items:flex-start}
.ph16row>img{width:76px;height:76px;object-fit:cover;border-radius:10px;flex:none}
.ph16row.off>img{opacity:.4}
.pi16 .btn{text-align:center;text-decoration:none}

.pn16 .pn16row{flex-wrap:wrap}
.pn16 .pn16row>.grow{min-width:100%}
.pn16b{width:100%}
.pn16b .btn{flex:1}

/* v1.7 card-first checkout */
.pay17 .pc17{border:1.5px solid var(--line);border-radius:14px;padding:4px;background:#fff}
.pay17 .pc17.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.pc17h{display:flex;align-items:center;gap:var(--s3);width:100%;text-align:left;font:inherit;font-size:15px;color:var(--ink);background:transparent;border:0;padding:var(--s3);cursor:pointer;line-height:1.35}
.pc17h>i{width:20px;height:20px;border-radius:50%;border:1.5px solid #bdb5aa;flex:none;position:relative}
.pc17h[aria-pressed=true]>i{border-color:var(--ink)}
.pc17h[aria-pressed=true]>i::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--ink)}
.pc17h .pill{flex:none}
.pc17r{padding:0 var(--s2) var(--s2);display:grid;gap:8px}
.pc17r .radio{min-height:48px;font-size:14px}
.fee17{margin:4px var(--s2) var(--s2);background:var(--cream);border-radius:10px;padding:10px 12px;font-size:14px}
.fee17 .row{display:flex;gap:8px;padding:2px 0}
.pay17 .sq17{margin:0 var(--s2);width:calc(100% - 2*var(--s2))}
.pay17 .sq17+p{margin-left:var(--s2)!important;margin-right:var(--s2)!important}
.err17{display:flex;gap:8px;align-items:flex-start;margin:8px var(--s2) 4px;color:var(--bad);font-size:13.5px}
.err17 .lic,.err17 svg{width:18px;height:18px;flex:none}
.ow17{margin-top:var(--s3);border:1px solid var(--line);border-radius:12px;background:#fff}
.ow17h{display:flex;align-items:center;gap:var(--s3);width:100%;text-align:left;font:inherit;font-size:13.5px;color:var(--mut);background:transparent;border:0;padding:10px 12px;cursor:pointer;line-height:1.35}
.ow17h svg{width:18px;height:18px;transition:transform .2s}
.ow17.open .ow17h svg{transform:rotate(90deg)}
.ow17b{padding:0 10px 10px;display:grid;gap:8px}
.ow17i{display:flex;gap:8px;align-items:center}
.ow17i .radio{min-height:44px;font-size:13.5px;padding:8px 12px;flex:1;min-width:0}
.ow17i .radio .nw{font-weight:500;color:var(--mut);overflow-wrap:anywhere}
.ow17i .cp17{flex:none;white-space:nowrap;padding:6px 9px;font-size:12.5px;min-height:36px;gap:4px}
.ow17i .cp17 svg{width:15px;height:15px}
.ow17i .radio{gap:10px}
.fee17s{display:flex;justify-content:space-between}
a.btn.sq17{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.btn.dim17{opacity:.55}
.pd17 .ckh .pill{text-transform:none;letter-spacing:0}
.cl17f{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--warn);margin:6px 0}
.cl17f svg{width:16px;height:16px;flex:none}

/* v1.7 not connected (grey) */
.nc17{display:flex;gap:10px;align-items:center;background:#f1f0ee;color:#6b655d;border:1px dashed #cfc9c0;border-radius:12px;padding:10px 12px;font-size:14px}
.nc17 b{color:#57524b}
.nc17 svg{width:20px;height:20px;flex:none;opacity:.7}
.nc17p{background:#eceae6!important;color:#6b655d!important;font-weight:600}
.nc17c{background:#f6f5f3}
.ow17i .cp17 .cpl17{font-size:11.5px}
.ow17i .cp17{flex-direction:column;padding:4px 8px!important;line-height:1.1;gap:2px!important}
.ow17i .radio .nw{display:block;font-size:13.5px}

/* ===== v1.8: fills any screen (phone, open fold, tablet, landscape). No phone frame; header and bottom bar span the full width. ===== */
html{background:var(--cream)}
body{overflow-x:hidden}
#app{max-width:none;width:100%}
.tabs,.buybar{left:0;right:0;transform:none;width:auto;max-width:none}
.tabs{justify-content:space-around;padding-left:max(4px,env(safe-area-inset-left));padding-right:max(4px,env(safe-area-inset-right))}
.tabs>button{flex:1 1 0;max-width:180px}
.top{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
.sheet{max-width:640px}
/* contrast: "Shop platters" was white on the ivory button (.btn.sm forced white text) */
.btn.platbtn,.btn.sm.platbtn,.platban .platbtn{background:#fbf7f1!important;color:var(--ink)!important;border:0}
.btn.platbtn .lic{color:var(--ink)}
.btn.light,.btn.sm.light{color:var(--ink)}
.btn.ghost,.btn.sm.ghost{color:var(--ink)}
.btn.glass,.btn.sm.glass{color:#fff}
/* readable line length on wide screens */
.wrap p,.sec p,.lead,.fine,.story p,.sfoot p{max-width:70ch}
.center .fine,.center p{margin-left:auto;margin-right:auto}

@media (min-width:600px){
 :root{--pad:28px}
 .wrap{padding:18px var(--pad)}
 .pgrid,.pgrid2,.photos13{grid-template-columns:repeat(3,minmax(0,1fr))}
 .kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
 .rail{grid-auto-columns:40%}
 .plrail{grid-auto-columns:34%}
 .hero{aspect-ratio:16/11;max-height:82vh}
 .heroin{padding:var(--s6) var(--pad) var(--s6)}
 .heroin .disp{font-size:44px;max-width:18ch}
 .herocta{max-width:560px}
 .platban{aspect-ratio:16/8.5}
 .platban>div{padding:var(--s6)}
 .platban .disp2{font-size:32px;max-width:20ch}
 .platban p:not(.eyebrow){font-size:15.5px;max-width:52ch}
 .plhero{aspect-ratio:16/10;max-height:78vh}
 .plsub{max-width:52ch}
 .bart{max-width:220px}
 .story>img{max-height:60vh;width:100%;object-fit:cover}
 .sheetpg{margin:16px auto}
}
@media (min-width:840px){
 main.wrap.dash18{column-count:2;column-gap:18px}
 main.wrap.dash18>.grp18{break-inside:avoid;-webkit-column-break-inside:avoid;display:block;padding-bottom:2px}
 main.wrap.dash18>.grp18.top18{column-span:all;-webkit-column-span:all;margin-bottom:6px}
 main.wrap.dash18>.grp18>.h3:first-child{margin-top:12px}
 main.wrap.dash18>.foot{column-span:all;-webkit-column-span:all}
 .dgrid12{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:900px){
 :root{--pad:40px}
 .pgrid,.pgrid2,.photos13{grid-template-columns:repeat(4,minmax(0,1fr))}
 .rail{grid-auto-columns:29%}
 .plrail{grid-auto-columns:24%}
 .qa{grid-template-columns:repeat(6,minmax(0,1fr))}
 .hero{aspect-ratio:21/10}
 .heroin .disp{font-size:52px}
 .platban{aspect-ratio:21/8}
 .plhero{aspect-ratio:21/9}
 .h2{font-size:26px}
}
/* landscape phones and the open fold turned sideways: keep the photo heroes from taking the whole screen */
@media (orientation:landscape) and (max-height:700px){
 .hero{aspect-ratio:auto;height:82vh;min-height:300px}
 .plhero{aspect-ratio:auto;height:70vh;min-height:260px}
 .platban{aspect-ratio:auto;height:72vh;min-height:280px}
}

/* contrast: More menu labels were grey (#a39c92 meant for the chevron hit the label when no chevron followed) */
.menu button>.grow{color:var(--ink)}
.menu button>.lic:last-child{color:#8a8279}


/* ===== v1.9: butcher-shop craft (Jack, Oct 23 10:27 AM: "more human-made... a salami slice spinning"). Pure CSS + inline SVG, nothing new loaded. ===== */
:root{--twine:#a88d63;--paper:#f7f3ec;--stampink:#9e1b16}
/* butcher-paper grain on ivory (1.7 KB tile, scrolls with the page: no fixed-background repaint) */
html body:not(.printmode):not(.bldpage){background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4AgMAAABECt5BAAAADFBMVEVcQChcQChcQChcQCghoFqbAAAABHRSTlMABgwS6BIkbAAABjdJREFUeNpd17GvHUcVBvDf7M6Nx2aJx8l7kiOlGDuKZCQXaxOkFCnGsYOMCNITeg8oKCwkJAoK/wVobFK4SOEif0BoKKjyF6C1EqRIRCINHcUTPcKINiIUs3vfs7fZe+/emTnnO9/5vrPgc8EOOxPN0wxNyJDSIpfhKCtHaiUZ9Gu7Rw5xoUFd7orcWp/9MxBOPnhQtKqIzl2jBkE4HjioaKjahf7kHgkOFQRQ+iNiUM0QahCHmKplutH226fpXeSB0PeZ0ZZL66fQRG4mIqoxgYkQfExJ69cedJEo1LlmoZSrxvR1R2jQRqjXt6PzWYrGSbWmZk6YrvOhxtTTG1WWPZxwqXn5KlgOWMNfK1AGQ02yO02dW0Ydku+v571a9NMltcYtrkpmNFJIeq3nnm6/wptr/PucRiZvCderiLCEsBhIw2i/sqSFwyN1fNqRGyx4+BDDkIU9OrVHdg9SiVhS7YzDJMqE4Y1PYsNtDALK7OkW062TmqsUrfQo8CB1at7kh8u5+Ffcvtg+f2VbNgj3yp5ZkzS7RpyFsC6e7+yRWxAGxNoXNKRjimjXQVhWyKX3kX0gv5dg+BRXAjE0dYP3aPGGlurSNhIU5bYL65ltsZglEyH1nYuFJzDmjurrNA+GML/Mm3L+26ScHK11bZMraNmwr8qiqkR2D/eLakf2dRuZ4HDlVQtBJpWX+HLoZKXqODvaUoFXOjbu9FtDKSNqX36nQC2KQJCShy8llbCYokKbzbRQibl3VAvPPjFe/fS5/Lz859/c+8dpOSU/J/3kX8+owyInKuN8qsOAD0OFeXbUClEgji/34iv1sPbAY/8zpz6bUidMrrveIk84um3g5qqWZYv+dC0ktwZS/nSvbytK5ZwitMwSIAcfKeZxSnBKagYhV355VptwJj9JW5sznSvB1bXWSHE6J8ppqb9CqAQ39o0Tl75pE8jDetBvZ5a+cWmqnOan6/HteHm0nRaQ8oTYupaOb7eVxO9MXfGNMl/qXVddjC7mHV7rDO7O8YcyGYTyptIjkcPPrP96UTEjaWeYw/GGZNr61nyBNnRyhkh0vw3nXKkOKzZTsDpPKWluWy94PmiGaSPvErlj2roophy8CrUj2yrePQvxlHlid/LzKsgXgvzIMjPwNXNdazOvdKl5X7nbwgbpouG9rRsM2/6rjrWMJQwyT8YRQxgGwsLvzxq59dWZ4Hlo8xqzW52uc9f1cB2Ox0STAo+H0NF4zyzVVDnsoLX4eCIvXUZKWXrz/vp0A/idrjVDjiRxCa2N4YjMMObQwp7HdbgjqUsX6fJk1bKas/z5as/hpK7ZzxyeHPeVuwhXdyfHV1V1LGgldHkYtjaI47W5N0ujbbb6BTkPylxpxfuE9ONo1+DiC5PPZ2hRl+XLKK84E8n72TOxCypios7ijuT+ao7WTuym+rToUtmtJRcHPar7K6dXgzGo3For3wbjuleEOGm9EbeemI24r5quio8GoiX2eS3kvfjZjTAWZZ/FgZLUbmj57qYIyeXe6eeHFnkVyrkquT1TTI28WMeMsJG1wFRWXi/Tb+buHXnoM9LDFqH+5eTvFddIC+IqoO+Xa2ZyNMk90DXTzy21Lb67DZrFMl7kY9LQ54dyzsPe2cIfBzH3qWbOytmYlM6NuskjRqVUOfcfb+zr1/PoutORWU+JzVKRnz+I8Zv/hTt/Fr51+b/1ua9tXq6lPqLt9o4+eBhf4Jrynb2Nnpf5uk/+j+H8ghrrQF4cMCXKn75NGr/jds5z+aYHPYUjB/Xq5VLX0taIQyN3EctFievw7mDJGH9QhwhfIf+C1jCH1Msfjrq/FJ6W1WQuMtzoxT92dz8AWs5PJqFTp//2ZUrkcMQYrXpK2At1bQVveXNfaQvDsJyNyx+dw+q15K1Ok/iCV4RFHgPmgRL2fisybn7db7nUjVYji2i+spvP6l/Wee7Mx3dH2RUc9MEo2r9IdJwCsRAkcbgibqNbDjiON9a9wpedbnm2maXDLVg6vS3twhpqyQ6u6FO0se1JbBhbSHvMH18CDw3m/QCfDlba7t8VMHz0137Yj3Z194BFLZeqSmvS2oKL6u3YDu/X1L6HxzRy2t5YCn/DTz/OjvZgGN0MWf0/CFYZjzRN9CAAAAAASUVORK5CYII=);background-size:120px 120px}
/* salami loader */
.salami19{display:inline-flex;flex-direction:column;align-items:center;gap:10px;color:var(--mut);font-family:var(--serif);font-size:15px;letter-spacing:.02em}
.salami19 .sal19{width:var(--sz,56px);height:var(--sz,56px);animation:sal19 1.8s linear infinite;filter:drop-shadow(0 2px 3px rgba(40,14,8,.18));will-change:transform}
@keyframes sal19{to{transform:rotate(360deg)}}
@keyframes sal19p{0%,100%{transform:scale(.94);opacity:.7}50%{transform:scale(1);opacity:1}}
.boot19{min-height:70vh;display:flex;align-items:center;justify-content:center}
#rt19{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 72px);z-index:60;transform:translate(-50%,-6px);opacity:0;pointer-events:none;background:var(--paper);border:1px solid #e4dccd;border-radius:999px;padding:5px;box-shadow:0 4px 14px rgba(20,16,12,.12);transition:opacity .16s,transform .16s}
#rt19.on{opacity:1;transform:translate(-50%,0)}
#rt19 .sal19{width:30px;height:30px;display:block;animation:sal19 .9s linear infinite}
#ptr19{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 66px);z-index:60;width:44px;height:44px;margin-left:-22px;border-radius:50%;background:var(--paper);border:1px solid #e4dccd;box-shadow:0 4px 14px rgba(20,16,12,.14);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transform:translateY(-40px)}
#ptr19 .sal19{width:32px;height:32px}
#ptr19.spin .sal19{animation:sal19 .8s linear infinite}
.err19{text-align:center;padding:64px 20px}
.err19 h2{font-family:var(--serif);font-size:24px;margin:16px 0 6px}
/* hand-inked underline under section titles */
.sechead .disp2,.shop .sec>.eyebrow+.disp,.story .disp2{padding-bottom:9px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 10'%3E%3Cpath d='M2 6.4C16 3.6 33 2.8 50 3.5c14 .6 27 1.6 43 .2' fill='none' stroke='%239e1b16' stroke-width='2.3' stroke-linecap='round'/%3E%3Cpath d='M8 8c12-1.6 24-2 37-1.6' fill='none' stroke='%239e1b16' stroke-opacity='.45' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat 0 100%/88px 9px}
.sechead{align-items:flex-end}
/* small-caps "est." label */
.est19{display:inline-block;font-family:var(--serif);font-variant:small-caps;font-weight:700;font-size:13px;letter-spacing:.14em;color:var(--stampink);border-top:1px solid currentColor;border-bottom:1px solid currentColor;padding:1px 8px 2px;margin:0 0 10px;line-height:1.3}
.est19.ondark{color:#f3d9b8}
/* butcher twine between storefront sections, with a small knot */
.shop>.sec+.sec,.shop>.sec+.story,.shop>.trust+.sec{position:relative;margin-top:22px}
.shop>.sec+.sec::before,.shop>.sec+.story::before,.shop>.trust+.sec::before{content:"";position:absolute;left:var(--pad,16px);right:var(--pad,16px);top:-12px;height:8px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 8' width='16' height='8'%3E%3Cpath d='M0 4.6C2.6 1.6 5.4 1.6 8 4.6s5.4 3 8 0' fill='none' stroke='%23a88d63' stroke-width='1.3'/%3E%3Cpath d='M0 3.4C2.6 6.4 5.4 6.4 8 3.4s5.4-3 8 0' fill='none' stroke='%23c7ad83' stroke-width='1.1'/%3E%3C/svg%3E") repeat-x 0 0/16px 8px;opacity:.9}
.shop>.sec+.sec::after,.shop>.sec+.story::after,.shop>.trust+.sec::after{content:"";position:absolute;left:50%;top:-16px;width:28px;height:16px;margin-left:-14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 16'%3E%3Cpath d='M9 8c0-3.5 4-5.5 5-2.2 1-3.3 5-1.3 5 2.2s-4 5.5-5 2.2C13 13.5 9 11.5 9 8z' fill='%23f7f3ec' stroke='%238d7350' stroke-width='1.3'/%3E%3Cpath d='M14 6v4M9.5 9.5 5 14M18.5 9.5 23 14' fill='none' stroke='%238d7350' stroke-width='1.3' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/28px 16px}
/* dotted cut line (cart totals, receipts) */
.cut19,.summary .stot{border-top:1.5px dashed #c9bba3 !important}
/* stamp badges */
.stamp19,.ptag{position:absolute;top:10px;left:10px;font-family:var(--serif);font-variant:small-caps;font-weight:700;font-size:12.5px;letter-spacing:.09em;line-height:1;color:var(--stampink);background:rgba(250,246,238,.94);border:1.6px solid currentColor;box-shadow:inset 0 0 0 2px rgba(250,246,238,.94),inset 0 0 0 3.1px currentColor;border-radius:5px;padding:6px 9px 7px;transform:rotate(-4deg);-webkit-mask:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABAAgMAAADXB5lNAAAADFBMVEUAAAAAAAAAAAAAAAA16TeWAAAAA3RSTlMARv9xV8PQAAAB7UlEQVR42mXTv2rfNxQF8M+VZZoUg2WabB1Mp47ubqgCfYC8Zj156Bj4qZDueYXONVgJ2aJwO+jruFBNEkjn6Py5ccfozHZ6w7j5EHdgVfB4pTClyjRdnRSagKYRCqxpAF2xeN/czsFCUc0+1NapVp69vvZi/eRYn16WPticA5eKngOTvtJXhbi1NEsNVUFVUfej8gi5QTrK1XGcdCgMwmhrEx9qn1c1fp1XkMH8IO7IP2/aN9RiiN42VZ+UjW0QJ834H2j5thuZgyzTIpk3Ed2I0nw2g3Zhyhvl5KCsmo9txO8hY/QMzEaJFIwjCc5e/31t/vxj4Z/vwyq1J210nAepiDw+0tgWxkmfloGPCn6RbdX7bs32pCVjXlTIsqXGbO+xRNxlHKBfzrfaIMnhfOWT/K/ELTXIsqan4JgjNsvQj9odjvWeNTHMYicWAl0r448jWWm+e45y9P+6vuiWCSWfU76cxr5RuZ8y2uxKmPJhvW3Cl0Yx2kP8UE38Zew6hFVnMy8jo+ym1PtGi6Onc/GWldvk1LauGuZy9uo6sIr5Qr789F15E0f3GqHZ/bD/jihtS0BNhvLoFdNaBDdZLjCa+pmkRQmyv7NndOYqdQq/Haa1qMXTGDTDA8Uec1JXn2JoHoWpUY7xiqNC/gVmbNHECDTyQAAAAABJRU5ErkJggg==) 0 0/64px 64px;mask:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABAAgMAAADXB5lNAAAADFBMVEUAAAAAAAAAAAAAAAA16TeWAAAAA3RSTlMARv9xV8PQAAAB7UlEQVR42mXTv2rfNxQF8M+VZZoUg2WabB1Mp47ubqgCfYC8Zj156Bj4qZDueYXONVgJ2aJwO+jruFBNEkjn6Py5ccfozHZ6w7j5EHdgVfB4pTClyjRdnRSagKYRCqxpAF2xeN/czsFCUc0+1NapVp69vvZi/eRYn16WPticA5eKngOTvtJXhbi1NEsNVUFVUfej8gi5QTrK1XGcdCgMwmhrEx9qn1c1fp1XkMH8IO7IP2/aN9RiiN42VZ+UjW0QJ834H2j5thuZgyzTIpk3Ed2I0nw2g3Zhyhvl5KCsmo9txO8hY/QMzEaJFIwjCc5e/31t/vxj4Z/vwyq1J210nAepiDw+0tgWxkmfloGPCn6RbdX7bs32pCVjXlTIsqXGbO+xRNxlHKBfzrfaIMnhfOWT/K/ELTXIsqan4JgjNsvQj9odjvWeNTHMYicWAl0r448jWWm+e45y9P+6vuiWCSWfU76cxr5RuZ8y2uxKmPJhvW3Cl0Yx2kP8UE38Zew6hFVnMy8jo+ym1PtGi6Onc/GWldvk1LauGuZy9uo6sIr5Qr789F15E0f3GqHZ/bD/jihtS0BNhvLoFdNaBDdZLjCa+pmkRQmyv7NndOYqdQq/Haa1qMXTGDTDA8Uec1JXn2JoHoWpUY7xiqNC/gVmbNHECDTyQAAAAABJRU5ErkJggg==) 0 0/64px 64px}
.stamp19.inl{position:static;display:inline-block;vertical-align:middle;margin:0 6px 0 0}
.stamp19.k{color:#24543a}
.stamp19.low{color:#8a4b00}
.stamp19.fresh{color:#7a2a1c}
.stamp19+.stamp19,.ptag+.stamp19{top:38px;transform:rotate(3deg)}
/* hand-inked category icons */
.chip .lic.ci19{width:18px;height:18px;margin:-3px 6px -4px -4px;stroke-width:1.7}
.chip{display:inline-flex;align-items:center}
/* "slice" press on main buttons: a quick diagonal knife glint */
.btn,.padd{position:relative;overflow:hidden;isolation:isolate}
.btn.slice19::after,.padd.slice19::after{content:"";position:absolute;inset:-40% auto -40% -60%;width:38%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-22deg);animation:slice19 .32s cubic-bezier(.3,.6,.2,1) forwards;pointer-events:none;z-index:1}
.btn.light.slice19::after,.btn.ghost.slice19::after{background:linear-gradient(100deg,transparent,rgba(158,27,22,.16),transparent)}
@keyframes slice19{to{left:125%}}
/* add to cart: tiny salami drop */
.fly19{position:fixed;left:0;top:0;width:22px;height:22px;z-index:200;pointer-events:none;will-change:transform,opacity}
.fly19 .sal19{width:22px;height:22px;display:block}
.bump19{animation:bump19 .22s ease-out}
@keyframes bump19{40%{transform:scale(1.28)}}
/* warm empty states */
.empty .ei.sal{background:transparent;border:0}
.empty .ei.sal .sal19{width:64px;height:64px}
@media (prefers-reduced-motion:reduce){
 .salami19 .sal19,#rt19 .sal19,#ptr19.spin .sal19{animation:sal19p 1.6s ease-in-out infinite}
 .btn.slice19::after,.padd.slice19::after{animation:none;display:none}
 .bump19{animation:none}
}

/* ===== v2.0 sheet connection ===== */
.bn20{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;line-height:1.35;padding:9px 12px;margin:10px 0 4px;border-radius:12px;background:#fbefdc;border:1px dashed #c9a46a;color:#3a2a1c}
.bn20.on{background:#eef5ec;border:1px solid #b9d3b2;color:#22381f}
.bn20 .muted{color:#6b5d50}
.dot20{display:inline-block;width:9px;height:9px;border-radius:50%;background:#3f8a3a;box-shadow:0 0 0 3px rgba(63,138,58,.18);flex:none}
.dot20.off{background:#b9ab9b;box-shadow:none}.dot20.bad{background:#b8322a;box-shadow:0 0 0 3px rgba(184,50,42,.18)}
.lnk20{background:none;border:0;padding:4px 2px;font:inherit;font-weight:700;color:#8a2c1d;text-decoration:underline;text-underline-offset:2px;cursor:pointer;min-height:32px}
.nc20{border:1.5px dashed #c9a46a;background:#fffaf1}
.nc20 b{display:block;font-size:16px;margin-bottom:2px;color:#2b1d14}
.loc20{background:#f7f2ea}
.con20{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:14px;background:#2a211c;color:#f4ece0;margin:12px 0}
.con20 .small{color:#cdbfae}.con20.ok{background:#1f3a24;color:#eaf6e8}.con20.ok .small{color:#b9d6b4}
.con20page .field input{font-size:16px}
.err20{color:#8f1f17;background:#fdecea;border:1px solid #f1c3bd;border-radius:10px;padding:10px 12px;margin:10px 0 0;font-size:14px;line-height:1.4}
.err20i{color:#a3271d}
.ok20{color:#1f4d1c;background:#edf6ea;border:1px solid #c4dfbd;border-radius:10px;padding:10px 12px;margin:10px 0 0;font-size:14px}
.ul20{margin:6px 0 0;padding-left:18px}.ul20 li{margin:3px 0}
.lv20{display:flex;align-items:center;gap:6px;margin:8px 2px 6px;flex-wrap:wrap}
.lt20{display:flex;gap:6px;overflow-x:auto;padding:8px 0 4px;margin:0 -2px;scrollbar-width:none}.lt20::-webkit-scrollbar{display:none}
.lt20 .chip{white-space:nowrap;flex:none}
.chip.on{background:#2a211c;color:#f6efe4;border-color:#2a211c}
.n20{display:inline-block;min-width:18px;padding:0 5px;border-radius:9px;background:#b8322a;color:#fff;font-size:11px;font-weight:800;line-height:18px;text-align:center}
.in20{min-height:44px;border:1.5px solid var(--line);border-radius:12px;padding:8px 10px;background:#fff;font-size:16px;color:#2b1d14}
.kp20{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0}
.kp20>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 6px;text-align:center}
.kp20 b{display:block;font-size:20px;font-family:'Playfair Display',Georgia,serif}.kp20 span{font-size:11px;color:var(--mut);font-weight:650}
.kp20>div.bad{background:#fdecea;border-color:#f1c3bd}.kp20>div.bad b{color:#9b2219}
.bar20{margin:8px 0}
.dl20.held{border-left:4px solid #b8322a}
.pn20{margin-top:10px;padding:8px 10px;border-radius:10px;background:#fdecea;color:#7d1a13;gap:8px}
.ck20{width:22px;height:22px;margin:2px 10px 0 0;accent-color:#8a2c1d;flex:none}
.stop20{flex:none;width:30px;height:30px;border-radius:50%;background:#2a211c;color:#f6efe4;display:grid;place-items:center;font-weight:800;margin-right:10px}
.plan20{border:1.5px solid #2a211c}.plan20 ol{margin:6px 0 4px;padding-left:20px}.pl20{margin-top:10px}
.empty20{text-align:center;color:var(--mut);padding:22px}
.mono20{font-family:ui-monospace,Menlo,Consolas,monospace;letter-spacing:.3px}
.pph20{width:56px;height:56px;border-radius:10px;object-fit:cover;margin-right:10px;flex:none;background:#f1e8db;display:grid;place-items:center;color:#8a6d55}
.pr20.big{border:1.5px solid #3f8a3a;margin-top:10px}
.scan20 input{font-size:20px;letter-spacing:1px;font-family:ui-monospace,Menlo,Consolas,monospace}
.t20{width:100%;border-collapse:collapse;margin-top:8px;font-size:14px}.t20 th,.t20 td{text-align:left;padding:6px 4px;border-bottom:1px solid var(--line)}.t20 th{font-size:12px;color:var(--mut)}.t20 td:not(:first-child),.t20 th:not(:first-child){text-align:right}
.g20f{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
.sw20{position:relative;display:inline-block;width:46px;height:28px;flex:none}.sw20 input{opacity:0;width:100%;height:100%;position:absolute;margin:0;cursor:pointer;z-index:1}
.sw20 span{position:absolute;inset:0;border-radius:14px;background:#cfc3b4;transition:background .15s}.sw20 span:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s}
.sw20 input:checked+span{background:#3f8a3a}.sw20 input:checked+span:after{transform:translateX(18px)}
.cp20{margin:12px 0;padding:12px 14px;border:1.5px dashed #c9a46a;border-radius:14px;background:#fffaf1}
.cp20.on{border-style:solid;border-color:#3f8a3a;background:#f1f8ee}
.cp20 input{min-height:46px;border:1.5px solid var(--line);border-radius:12px;padding:8px 12px;font-size:16px;text-transform:uppercase;background:#fff}
.cpline20{display:flex;justify-content:space-between;color:#2f6b2a;font-weight:650}
.cpck20{border-color:#b9d3b2;background:#f1f8ee;margin:10px 0}
#q20{position:fixed;right:12px;top:calc(env(safe-area-inset-top,0px) + 70px);z-index:60;border:0;border-radius:999px;padding:8px 14px;background:#2a211c;color:#fbe9c9;font:700 13px/1.2 system-ui,sans-serif;box-shadow:0 6px 18px rgba(0,0,0,.25)}
#q20:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#e8a33c;margin-right:7px;vertical-align:1px}
#q20.bad{background:#7d1a13}
@media (min-width:840px){.live20 .g20{display:grid;grid-template-columns:1fr 1fr;gap:10px}.live20 .g20>.card{margin:0}.live20 .g20>.empty20{grid-column:1/-1}.kp20{grid-template-columns:repeat(6,1fr)}}

/* ===== v2.0 dark mode: the page is inverted once (contrast ratios stay exactly the same, so AA holds),
   photos/logos and the charcoal bars are inverted back so they look like themselves. ===== */
html.dk20{filter:invert(1) hue-rotate(180deg);background:#fff;color-scheme:dark}
html.dk20 .top,html.dk20 .tabs,html.dk20 #splash,html.dk20 .shophero,html.dk20 .plhero,html.dk20 .platban,html.dk20 .travel,html.dk20 .feature,html.dk20 .sfoot,html.dk20 .mecard,html.dk20 .toast,html.dk20 #q20,html.dk20 .con20{filter:invert(1) hue-rotate(180deg)}
html.dk20 img:not(.top img,.tabs img,#splash img,.shophero img,.plhero img,.platban img,.travel img,.feature img,.sfoot img,.mecard img,.toast img,#q20 img,.con20 img,.top video,.tabs video,#splash video,.shophero video,.plhero video,.platban video,.travel video,.feature video,.sfoot video,.mecard video,.toast video,#q20 video,.con20 video),html.dk20 video:not(.top img,.tabs img,#splash img,.shophero img,.plhero img,.platban img,.travel img,.feature img,.sfoot img,.mecard img,.toast img,#q20 img,.con20 img,.top video,.tabs video,#splash video,.shophero video,.plhero video,.platban video,.travel video,.feature video,.sfoot video,.mecard video,.toast video,#q20 video,.con20 video),html.dk20 canvas,html.dk20 .pph20 img{filter:invert(1) hue-rotate(180deg)}
html.dk20 body{background-image:none!important}
html.dk20 .scrim{background:rgba(255,255,255,.45)}
.thm20{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:transparent;color:inherit;display:grid;place-items:center;padding:0;cursor:pointer;margin-left:2px}
.thm20 svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gbtn20{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:50px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:#1f1f1f;font:600 16px/1.2 var(--sans);margin:12px 0 4px;cursor:pointer}
.gbtn20 .g{width:20px;height:20px;border-radius:50%;background:conic-gradient(#ea4335 0 25%,#fbbc05 0 50%,#34a853 0 75%,#4285f4 0);display:inline-block;position:relative}
.gbtn20 .g:after{content:"";position:absolute;inset:5px;border-radius:50%;background:#fff}
.gor20{display:flex;align-items:center;gap:10px;color:var(--mut);font-size:13px;margin:14px 0 2px}.gor20:before,.gor20:after{content:"";flex:1;height:1px;background:var(--line)}

html.dk20 .btn:not(.light):not(.ghost):not(.glass):not(.sm.light):not(.top .btn):not(.tabs .btn):not(#splash .btn):not(.shophero .btn):not(.plhero .btn):not(.platban .btn):not(.travel .btn):not(.feature .btn):not(.sfoot .btn):not(.mecard .btn):not(.toast .btn):not(#q20 .btn):not(.con20 .btn){filter:invert(1) hue-rotate(180deg)}
html.dk20 .tabs{filter:none}html.dk20 .tabs img{filter:invert(1) hue-rotate(180deg)}
html.dk20 .hero16{filter:invert(1) hue-rotate(180deg)}html.dk20 .hero16 img,html.dk20 .hero16 video,html.dk20 .hero16 .btn{filter:none}
html.dk20 .hero16 img,html.dk20 .hero16 video,html.dk20 .hero16 .btn{filter:none!important}
html.dk20 .tabs button.home .i{filter:invert(1) hue-rotate(180deg)}

/* ===== v2.1 ===== */
/* header logo on a small ivory badge (the logo itself is untouched), both modes: the top bar is charcoal in both */
.top .logobtn{background:#f7f3ec;border-radius:12px;padding:4px 8px;line-height:0;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 1px 3px rgba(0,0,0,.35);display:inline-flex;align-items:center;justify-content:center}
.top .logobtn img.logo{display:block}
/* gift card: charcoal to ember with ivory text, in light AND dark (dark mode inverts it back so it keeps these exact colours) */
.gc{background:linear-gradient(135deg,#171311 0%,#241915 42%,#5a1a12 78%,#9e1b16 100%)!important;color:#f7f3ec!important;border:1px solid rgba(247,243,236,.08)}
.gc .small,.gc .amt{color:#f7f3ec}
html.dk20 .gc{filter:invert(1) hue-rotate(180deg)}
html.dk20 .gc img{filter:none!important}
/* customer lane */
.na21{display:inline-block;margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--bad);border:1.5px solid currentColor;border-radius:6px;padding:2px 7px;transform:rotate(-1.5deg)}
.bagi.gone21 img{opacity:.45;filter:grayscale(1)}
html.dk20 .bagi.gone21 img{filter:invert(1) hue-rotate(180deg) grayscale(1)}
.bagi.gone21 .bn{text-decoration:line-through;text-decoration-thickness:1px;opacity:.7}
.rm21{margin-top:2px}
.nab21{color:var(--bad);font-weight:600;margin:10px 2px 6px}
.btn.block.lg[disabled]{opacity:.5;cursor:not-allowed}
.ncck21,.dn21{border-left:4px solid var(--ember,#9e1b16);margin:12px 0}
.stl21{display:flex;flex-direction:column;gap:12px;margin:14px 0}
.prof21 .pill{font-size:12px}
.st21 .ost21{margin-bottom:0}
.steps21{list-style:none;display:flex;gap:0;padding:0;margin:12px 0 0;counter-reset:s}
.steps21 li{flex:1;position:relative;text-align:center;font-size:11px;line-height:1.2;color:var(--mut);padding-top:18px}
.steps21 li span{position:absolute;top:2px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;border:2px solid var(--line);background:var(--card)}
.steps21 li:before{content:"";position:absolute;top:7px;left:-50%;width:100%;height:2px;background:var(--line)}
.steps21 li:first-child:before{display:none}
.steps21 li.done span,.steps21 li.now span{border-color:var(--ember,#9e1b16);background:var(--ember,#9e1b16)}
.steps21 li.done:before,.steps21 li.now:before{background:var(--ember,#9e1b16)}
.steps21 li.now{color:var(--ink);font-weight:700}
.un21 b{display:block}

/* v2.1 dark-mode audit: charcoal / oxblood tiles and cards are inverted back (like the bars), so they stay charcoal and ember instead of turning pale pink or grey */
html.dk20 .ctile,html.dk20 .bcard,html.dk20 .clubcard,html.dk20 .kpi.ox,html.dk20 .shbar,html.dk20 .bbslots,html.dk20 .btile,html.dk20 .boxhead,html.dk20 .kshero,html.dk20 .refer,html.dk20 .acckill,html.dk20 .phold,html.dk20 .bxim{filter:invert(1) hue-rotate(180deg)}
html.dk20 .ctile img,html.dk20 .bcard img,html.dk20 .clubcard img,html.dk20 .kpi.ox img,html.dk20 .shbar img,html.dk20 .bbslots img,html.dk20 .btile img,html.dk20 .boxhead img,html.dk20 .kshero img,html.dk20 .refer img,html.dk20 .acckill img,html.dk20 .phold img,html.dk20 .bxim img,html.dk20 .ctile video,html.dk20 .bcard video,html.dk20 .clubcard video,html.dk20 .kpi.ox video,html.dk20 .shbar video,html.dk20 .bbslots video,html.dk20 .btile video,html.dk20 .boxhead video,html.dk20 .kshero video,html.dk20 .refer video,html.dk20 .acckill video,html.dk20 .phold video,html.dk20 .bxim video,html.dk20 .ctile .btn,html.dk20 .bcard .btn,html.dk20 .clubcard .btn,html.dk20 .kpi.ox .btn,html.dk20 .shbar .btn,html.dk20 .bbslots .btn,html.dk20 .btile .btn,html.dk20 .boxhead .btn,html.dk20 .kshero .btn,html.dk20 .refer .btn,html.dk20 .acckill .btn,html.dk20 .phold .btn,html.dk20 .bxim .btn,html.dk20 .ctile canvas,html.dk20 .bcard canvas,html.dk20 .clubcard canvas,html.dk20 .kpi.ox canvas,html.dk20 .shbar canvas,html.dk20 .bbslots canvas,html.dk20 .btile canvas,html.dk20 .boxhead canvas,html.dk20 .kshero canvas,html.dk20 .refer canvas,html.dk20 .acckill canvas,html.dk20 .phold canvas,html.dk20 .bxim canvas{filter:none!important}

/* ===== v2.2 owner money screens ===== */
.hd22 .h2{margin:12px 0 2px}.hd22 p{margin:0 0 8px}
.pk22{display:flex;flex-direction:column;gap:2px}.pk22 .chips{padding-bottom:6px}.sh22{margin:0 0 8px}.sh22 select{width:100%}
.mn22{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 6px}
.mn22>.tl22:last-child:nth-child(odd){grid-column:1/-1}
.tl22{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.tl22 .small{color:var(--mut);font-weight:600;letter-spacing:.02em;text-transform:uppercase;font-size:11.5px}
.tl22 b{font-family:"Playfair Display",Georgia,serif;font-size:22px;line-height:1.15;color:var(--ink);overflow-wrap:anywhere}
.tl22.ok22 b{color:var(--ok)}.tl22.bad22 b{color:var(--ember)}.tl22.emb22{background:var(--ink);border-color:var(--ink)}.tl22.emb22 b{color:#f7f3ec}.tl22.emb22 .small,.tl22.emb22 .tiny22{color:#d9cdbb}
.tiny22{font-size:12px;color:var(--mut);line-height:1.35}.rule22{margin:2px 2px 10px}
.sec22{margin-top:14px}.h3_22{font-family:"Playfair Display",Georgia,serif;font-size:19px;margin:0 0 8px;font-weight:700}.h3_22 .muted{font-family:"Inter",var(--sans);font-size:14px;font-weight:600}
.stack22{display:flex;flex-direction:column;gap:8px}
.or22,.rn22,.cp22,.ex22{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px;min-width:0}
.or22.owed22{border-left:4px solid var(--ember)}
.or22.today22{background:#e3f3dc;border-color:#b9dcae}
.rt22{text-align:right;flex:none}.bad22t{color:var(--ember);font-weight:700}.cl22{overflow-wrap:anywhere}
.rn22.hot22{border:1.5px solid var(--ember);background:#fbebe6}.emb22t{color:var(--ember)}
.mn22b{grid-template-columns:repeat(3,minmax(0,1fr))}.mn22b>.tl22:last-child:nth-child(odd){grid-column:auto}
@media (max-width:420px){.mn22b{grid-template-columns:repeat(2,minmax(0,1fr))}.mn22b>.tl22:first-child{grid-column:1/-1}}
.oz22{display:inline-flex;flex-wrap:wrap;gap:4px;align-items:center}.cb22{margin-top:6px;padding:6px 8px;border-left:3px solid var(--ember);background:var(--ivory,#f7f3ec);border-radius:6px}
.lnk22{background:none;border:0;color:var(--ember);font-weight:700;padding:8px 0 0;min-height:36px;cursor:pointer}
.dl22{margin:6px 0 0;display:grid;grid-template-columns:max-content 1fr;gap:4px 10px}.dl22 dt{color:var(--mut);font-weight:600}.dl22 dd{margin:0;overflow-wrap:anywhere}
@media (max-width:420px){.dl22{grid-template-columns:1fr}.dl22 dd{margin-bottom:4px}}
.seg22{display:flex;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;margin:4px 0 10px;background:var(--card)}
.seg22 button{flex:1;border:0;background:none;min-height:42px;font-weight:700;font-size:15px;color:var(--ink)}.seg22 button.on{background:var(--ink);color:#f7f3ec}
.exh22{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;padding:4px 0;min-height:40px;text-align:left;font-size:16px;font-weight:700;color:var(--ink)}
.exh22 .small{font-weight:500}.car22{color:var(--ember);width:14px}
.tot22{padding:10px 12px;margin-top:8px;border-top:2px solid var(--ink)}
.pf22{margin-top:12px;border:1.5px solid var(--ink)}.pfr22{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:15px;border-bottom:1px solid var(--line)}
.pfr22 b{white-space:nowrap}.pfr22.big22{font-size:18px;border-bottom:0}.pfr22.big22 b{font-family:"Playfair Display",Georgia,serif;font-size:24px;color:var(--ok)}.pfr22.neg22 b{color:var(--ember)}
.pfr22.yr22{border-bottom:0;font-size:13px;color:var(--mut)}
.mo22{margin-bottom:12px}.mol22{display:flex;width:100%;align-items:center;gap:8px;background:none;border:0;border-top:1px solid var(--line);padding:12px 2px;min-height:46px;font-size:16px;text-align:left;color:var(--ink)}.mol22:first-of-type{margin-top:8px}
@media (min-width:700px){.mn22{grid-template-columns:repeat(5,minmax(0,1fr))}.mn22>.tl22:last-child:nth-child(odd){grid-column:auto}.mn22b{grid-template-columns:repeat(3,minmax(0,1fr))}
 .stack22{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ex22+.ex22{margin-top:0}}

/* ===== v2.3 staff dashboards ===== */
.d23{max-width:1100px;margin:0 auto}
.hi23{margin:2px 2px 10px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--mut)}
.sec23{margin:18px 0 0}
.sech23{display:flex;align-items:center;gap:10px;justify-content:space-between;margin:0 2px 8px}
.sech23 h2{font-family:var(--serif);font-size:21px;margin:0;font-weight:700;letter-spacing:-.01em}
.sech23 h2::after{content:"";display:block;width:34px;height:2px;background:var(--ember,#9e1b16);margin-top:4px;border-radius:2px}
.nc23{border:1.5px dashed var(--line);border-radius:12px;padding:14px 16px;color:var(--mut);font-weight:600;background:transparent}
.nc23.bad{color:var(--bad);border-color:var(--bad)}
.ld23{padding:14px 16px;color:var(--mut)}
.empty23{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:14px 16px;color:var(--mut)}
.g3_23{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}
.stat23{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;min-width:0}
.stat23 span{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mut)}
.stat23 b{font-family:var(--sans);font-weight:800;font-variant-numeric:tabular-nums lining-nums;font-size:21px;line-height:1.2;margin-top:2px;overflow-wrap:anywhere;color:var(--ink)}
.stat23 i{font-style:normal;font-size:12.5px;color:var(--mut);margin-top:2px}
.clock23{background:#1c1714;color:#f7f3ec;border-radius:18px;padding:18px 16px 16px;margin-top:4px;box-shadow:0 6px 24px rgba(20,16,16,.18)}
.clock23 .cst23{font-size:15px;font-weight:600;opacity:.85}
.clock23 .ctd23{font-family:var(--sans);font-size:34px;font-weight:800;font-variant-numeric:tabular-nums lining-nums;margin:2px 0 12px;letter-spacing:-.01em}
.clock23.in .cst23::before,.clock23.break .cst23::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:#3fbf6e;margin-right:8px;vertical-align:1px}
.clock23.break .cst23::before{background:#e0a030}
.big23{width:100%;min-height:78px;border:0;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:800;font-size:22px;letter-spacing:-.01em;cursor:pointer;color:#fff;background:var(--ember,#9e1b16);margin-top:8px}
.big23 i{font-style:normal;font-size:13px;font-weight:600;opacity:.85}
.big23.brk23{background:#f7f3ec;color:#1c1714}
.big23.out23{background:#3a302b;color:#f7f3ec;border:1.5px solid rgba(247,243,236,.35)}
.big23:disabled{opacity:.45;cursor:not-allowed}
.big23:active:not(:disabled){transform:scale(.99)}
.g2_23{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.stop23 .big23{min-height:64px;font-size:19px}
.list23{list-style:none;margin:0;padding:0;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.list23 li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-top:1px solid var(--line);min-height:56px}
.list23 li:first-child{border-top:0}
.list23 li.done b{text-decoration:line-through;color:var(--mut)}
.qty23{font-family:var(--sans);font-weight:800;font-variant-numeric:tabular-nums lining-nums;font-size:22px;min-width:44px;text-align:right;color:var(--ember,#9e1b16)}
.qty23.sm{font-family:var(--sans);font-size:15px;color:var(--ink)}.qty23.warn{color:var(--bad)}
.chk23{flex:none;width:34px;height:34px;border-radius:9px;border:2px solid var(--ink);background:transparent;cursor:pointer;position:relative}
.chk23[aria-pressed="true"],li.done .chk23{background:var(--ember,#9e1b16);border-color:var(--ember,#9e1b16)}
.chk23[aria-pressed="true"]::after,li.done .chk23::after{content:"";position:absolute;left:10px;top:4px;width:8px;height:15px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg)}
.chk23.ro{width:22px;height:22px;border-radius:6px;cursor:default}
li.done .chk23.ro::after{left:6px;top:1px;width:5px;height:11px}
.lnk23{background:none;border:0;padding:8px 2px;color:var(--ember,#9e1b16);font-weight:700;font-size:14.5px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.lnk23.blk{display:block}
.rule23{background:#f3e7e4;border-left:4px solid var(--ember,#9e1b16);border-radius:10px;padding:10px 12px;font-size:14px;margin:4px 0 0;color:var(--ink)}
.route23{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.stop23{display:flex;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}
.stop23.active{border:2px solid var(--ember,#9e1b16)}
.stop23.closed{opacity:.6}
.sn23{flex:none;width:38px;height:38px;border-radius:50%;background:#1c1714;color:#f7f3ec;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-weight:800;font-size:17px}
.sbtn23{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sbtn23 .btn{text-decoration:none}
.held23{margin-top:8px;border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:10px;padding:10px 12px;background:var(--card)}
.dot23{flex:none;width:10px;height:10px;border-radius:50%;background:#2f9e5b}.dot23.break{background:#d39222}
.in23{width:100%;min-height:46px;border:1.5px solid var(--line);border-radius:10px;padding:8px 12px;font:inherit;font-size:16px;background:var(--card);color:var(--ink);margin:4px 0 8px;box-sizing:border-box}
.in23.sm{width:auto;min-height:40px;font-size:14px;margin:0;max-width:150px}
.photo23{display:flex;align-items:center;justify-content:center;min-height:56px;margin-top:10px;border:1.5px dashed var(--ink);border-radius:12px;font-weight:700;cursor:pointer;position:relative}
.photo23 input{position:absolute;inset:0;opacity:0;cursor:pointer}
.pimg23{display:block;max-width:100%;max-height:220px;border-radius:10px;margin:10px auto 0}
.tiles23{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:4px}
.tile23{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;cursor:pointer;min-height:118px;color:var(--ink);font:inherit}
.tile23 .ti23 svg{width:22px;height:22px;color:var(--ember,#9e1b16)}
.tile23 b{font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--mut);margin-top:4px}
.tile23 .tv23{font-family:var(--sans);font-size:22px;font-weight:800;font-variant-numeric:lining-nums;line-height:1.15}
.tile23 i{font-style:normal;font-size:12.5px;color:var(--mut)}
.tile23:active{transform:scale(.99)}
.pvrow23{display:flex;gap:8px;flex-wrap:wrap}
.pv23{background:#1c1714;color:#f7f3ec;border-radius:14px;padding:12px 14px;margin-bottom:10px}
.pv23 .small{opacity:.85}.pv23 .row{display:flex;align-items:center;gap:10px}
.pv23 .chips{display:flex;gap:8px;overflow-x:auto;margin-top:10px}
.pv23 .chip{background:transparent;color:#f7f3ec;border-color:rgba(247,243,236,.4)}
.pv23 .chip.on{background:#f7f3ec;color:#1c1714}
.h3_23{font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin:16px 2px 6px;color:var(--mut)}.h3_23.urg{color:var(--ember,#9e1b16)}
.more23{margin-bottom:12px}
@media (min-width:600px){.tiles23{grid-template-columns:repeat(3,1fr)}}
@media (min-width:840px){.d23 .sec23{break-inside:avoid}.tiles23{grid-template-columns:repeat(6,1fr)}.clock23{max-width:560px}
 .d23{display:grid;grid-template-columns:1fr 1fr;column-gap:18px;align-items:start}.d23>*{grid-column:1/-1}.d23>.sec23{grid-column:auto}}
@media (max-width:360px){.g3_23{grid-template-columns:1fr 1fr}.stat23 b{font-size:19px}}

/* ===== v2.3.1 calm look (Oct 23, 2026) =====
   Jack's brother: "very in your face". Warm off-white, dark-grey text, ember only on the main buy button
   and tiny accents, no dark bands, fewer borders/shadows, no motion. Dark mode stays the inverted theme,
   tuned so it lands on soft charcoal (#1E1E1E-ish) with off-white text and a desaturated accent. */
:root{--cream:#faf8f4;--cream2:#f3f0ea;--card:#ffffff;--ivory:#faf8f4;--ivory2:#f3f0ea;--paper:#faf8f4;
 --ink:#2a2a2a;--mut:#6f6a64;--line:#ebe7e0;--ember:#a2382e;--ox:#a2382e;--ox2:#8f3027;--oxd:#5a2a24;--stampink:#8a8178;
 --calm-bg:#faf8f4;--calm-ink:#2a2a2a;--calm-soft:#f3f0ea;--calm-line:#ebe7e0;--calm-brick:#9a4a3c;
 --sh:none;--sh2:0 1px 2px rgba(0,0,0,.04);--pad:24px}
@media (min-width:700px){:root{--pad:36px}}
@media (min-width:1100px){:root{--pad:48px}}
html,body{background:var(--calm-bg)!important;color:var(--calm-ink)}
body{background-image:none!important}
/* no animation, no flashing */
*:not(#splash):not(#splash *),*:not(#splash):not(#splash *)::before,*:not(#splash):not(#splash *)::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.bump19,.slice19::after{animation:none!important}
.btn.slice19::after,.padd.slice19::after{display:none!important}
/* fewer shadows and borders */
.card,.pcard,.prod,.tile,.ctile,.platban,.bcard,.clubcard,.boxband,.shbar,.feature,.travel,.sech23,.box23,.list23 li{box-shadow:none!important}
*:not(.sheet):not(.toast):not(input):not(select):not(textarea){box-shadow:none!important}

/* top bar: light, thin neutral line */
.top,.staff .top,body.staff .top{background:var(--calm-bg)!important;color:var(--calm-ink)!important;border-bottom:1px solid var(--calm-line)!important}
.top .logobtn{background:transparent;box-shadow:none;padding:2px 4px}
.thm20{border-color:var(--calm-line)}
/* hero: shorter, smaller headline, softer shade, photos still */
.hero{aspect-ratio:4/4}
@media (min-width:700px){.hero{aspect-ratio:16/9;max-height:62vh}}
@media (min-width:1100px){.hero{aspect-ratio:auto;height:60vh;min-height:300px}}
.hero::after{background:linear-gradient(180deg,rgba(20,18,16,0) 0%,rgba(20,18,16,.05) 40%,rgba(20,18,16,.55) 80%,rgba(20,18,16,.68) 100%)}
.heroin .disp{font-size:25px!important;line-height:1.2;margin-bottom:14px;font-weight:600}
@media (min-width:700px){.heroin .disp{font-size:32px!important}}
@media (min-width:1100px){.heroin .disp{font-size:38px!important}}
.hero16 .hr16 img,.hero>img,.platban img,.ctile img{filter:saturate(.85)}
.herocta .btn{min-height:46px}
/* hero secondary button stays quiet; main ember is for Add / Checkout */
.herocta .btn:not(.light):not(.ghost):not(.glass){background:rgba(250,248,244,.95);color:var(--calm-ink);border:0}

/* former dark/ember bands become calm light cards */
.shbar,.bcard,.clubcard{background:var(--card)!important;color:var(--calm-ink)!important;border:1px solid var(--calm-line)!important}
.shbar *,.bcard *,.clubcard *{color:inherit}
.shbar .small,.bcard .small,.clubcard .small,.shbar p,.bcard p,.clubcard p{color:var(--mut)!important}
.shi{background:var(--calm-soft)!important;color:var(--calm-brick)!important}
.phold{background:var(--calm-soft)!important;color:var(--mut)!important}
.phold svg,.phold img{opacity:.5}
.ctile{background:var(--calm-soft)}
.cshade{background:linear-gradient(180deg,rgba(20,18,16,0) 40%,rgba(20,18,16,.6) 100%)!important}
.bbslots{background:var(--calm-soft)!important}
.boxband{background:var(--card)!important;border:1px solid var(--calm-line)!important}
.chip{box-shadow:none}
.chip.on,button.chip[aria-pressed="true"]{background:var(--calm-ink)!important;color:#fff!important}
.ti{background:var(--calm-soft)!important;color:var(--calm-ink)!important}
/* footer: light */
.sfoot{background:var(--calm-soft)!important;color:var(--mut)!important;border-top:1px solid var(--calm-line)}
.sfoot a,.sfoot b,.sfoot strong,.sfoot h3,.sfoot h4{color:var(--calm-ink)!important}

/* ember only where it earns it: tags, links, prices and underlines go neutral */
.ptag{color:var(--calm-ink)!important;border-color:var(--calm-line)!important;background:rgba(250,248,244,.94)!important}
.linkbtn,.flink{color:var(--calm-ink)!important;text-decoration:underline;text-decoration-color:var(--calm-line);text-underline-offset:3px}
.poz{color:var(--mut)!important}
.est19{color:var(--mut)!important;border-color:var(--calm-line)!important}
.sech23 h2::after{background:var(--calm-line)!important;width:28px;height:1px}
.trksteps li.on:not(:last-child)::after{background:var(--mut)}
.na21{transform:none}
.tbadge,.badge{background:var(--calm-ink)!important;color:#fff!important}
/* buttons: the ember fill stays on the buy buttons (.btn primary); everything else calmer */
.btn{box-shadow:none!important}
.btn.sm:not(.light):not(.ghost){background:var(--calm-ink)}
.tabs button.home .i{background:var(--calm-ink)!important}

/* staff: same palette, Clock in in a muted brick */
.big23{background:var(--calm-brick)!important;color:#fff;font-weight:700}
.big23.brk23{background:var(--calm-soft)!important;color:var(--calm-ink)!important;border:1px solid var(--calm-line)}
.big23.out23{background:#4a4542!important;color:#f3f0ea!important;border:0!important}

/* dark mode: still the inverted theme; a gentle contrast step lands it on soft charcoal + off-white,
   and softens/desaturates the accent. Bars that used to be re-inverted to stay charcoal are now light
   in light mode, so they simply follow the page into charcoal. */
html.dk20{filter:invert(1) hue-rotate(180deg)!important}
html.dk20 .top,html.dk20 .sfoot{filter:none!important}
html.dk20 .top img,html.dk20 .sfoot img{filter:invert(1) hue-rotate(180deg)}
html.dk20 .top .logobtn{background:#141414;border-radius:10px;padding:3px 6px}

/* v2.3.1 calm, part 2: remaining dark/oxblood blocks go light; dark mode lets them follow the page */
.top .iconbtn,.stop .iconbtn{color:var(--calm-ink)!important}
.top .iconbtn:active{background:var(--calm-soft)}
.rolechip{color:var(--calm-ink)!important;border-color:var(--calm-line)!important;background:transparent!important}
.clock23{background:var(--card)!important;color:var(--calm-ink)!important;border:1px solid var(--calm-line);box-shadow:none!important}
.boxhead,.kshero{background:var(--calm-soft)!important;color:var(--calm-ink)!important}
.refer{background:var(--card)!important;color:var(--calm-ink)!important;border:1px solid var(--calm-line)!important}
.travel{background:var(--card)!important;color:var(--calm-ink)!important;border:1px solid var(--calm-line)!important}
.acckill{background:var(--calm-soft)!important;color:var(--calm-ink)!important;border:1px solid var(--calm-line)}
.kpi.ox{background:var(--calm-soft)!important;color:var(--calm-ink)!important;border-color:var(--calm-line)!important}
.bxim,.btile{background:var(--calm-soft)!important}
:is(.shbar,.bcard,.clubcard,.boxhead,.kshero,.refer,.travel,.acckill,.kpi.ox,.clock23,.sfoot) :is(h1,h2,h3,h4,b,strong,.disp,.h2){color:var(--calm-ink)!important}
:is(.shbar,.bcard,.clubcard,.boxhead,.kshero,.refer,.travel,.acckill,.kpi.ox,.clock23) :is(p,span,small,.small,.sub,.l,.s,.eyebrow,.plsub,.cst23):not(.btn):not(.btn *):not(.big23 *){color:var(--mut)!important}
.clock23 .ctd23{color:var(--calm-ink)!important}
html.dk20 :is(.bcard,.clubcard,.kpi.ox,.shbar,.bbslots,.btile,.boxhead,.kshero,.refer,.acckill,.phold,.bxim,.travel){filter:none!important}
html.dk20 :is(.bcard,.clubcard,.kpi.ox,.shbar,.bbslots,.btile,.boxhead,.kshero,.refer,.acckill,.phold,.bxim,.travel) :is(img,video){filter:invert(1) hue-rotate(180deg)!important}
html.dk20 :is(.bcard,.clubcard,.kpi.ox,.shbar,.btile,.boxhead,.kshero,.refer,.acckill,.travel) .btn:not(.light):not(.ghost):not(.glass){filter:invert(1) hue-rotate(180deg)!important}

/* v2.3.1 calm, part 3: thin neutral section lines instead of ember ink and twine */
.sechead .disp2,.shop .sec>.eyebrow+.disp,.story .disp2{background:linear-gradient(#d9d4cc,#d9d4cc) left bottom/32px 1px no-repeat!important;padding-bottom:10px}
.shop>.sec+.sec::before,.shop>.sec+.story::before,.shop>.trust+.sec::before{background:var(--calm-line)!important;height:1px;top:-14px}
.shop>.sec+.sec::after,.shop>.sec+.story::after,.shop>.trust+.sec::after{display:none!important}
.shop>.sec+.sec,.shop>.sec+.story,.shop>.trust+.sec{margin-top:32px}
.stamp19,.ptag{transform:none!important;border-width:1px!important;font-weight:600}
.stamp19+.stamp19,.ptag+.stamp19{transform:none!important}
.cut19,.summary .stot{border-top:1px dashed #d9d4cc!important}
.est19.ondark{color:var(--mut)!important}
.ondark{color:inherit}
.disp2{font-weight:600}
html.dk20 .big23:not(.brk23):not(.out23){filter:invert(1) hue-rotate(180deg)}
#rt19,#ptr19{box-shadow:none!important}

/* v2.3.1 calm, part 4 */
.big23:disabled{opacity:1!important;background:#ebe7e1!important;color:#8d877f!important}
html.dk20 .big23:disabled{filter:none!important}
.sfoot :is(p,span,small,button,.fv){color:var(--mut)!important}
.sfoot .flinks button{color:var(--calm-ink)!important;background:transparent;border-color:var(--calm-line)!important}
.sfoot img.seal.light{content:url(img/seal-dark.png)}
html.dk20 .sfoot img.seal.light{content:url(img/seal-light.png)}

/* account hero is a photo: keep it a photo in dark mode (was washing out pink) */
html.dk20 .mehero{filter:invert(1) hue-rotate(180deg)}
html.dk20 .mehero .btn{filter:none!important}

.clock23 .big23 span,.clock23 .big23 i,.big23 span{color:inherit!important}

/* ===== v2.3.2 warm calm (Oct 23, 2026) =====
   Jack on v2.3.1: "now it looks like grayscale... my animation stopped working".
   The middle: warm ivory page, charcoal text, ember/brick back as a real accent (section underlines,
   Popular stamps, prices, active tab, buttons), charcoal top bar with the logo on its ivory badge,
   cream/tan cards. Still no full-width ember bands, no auto-rotate, no bounce or glint.
   The smoke/bull launch splash is back exactly as in v2.3 (splash.js/splash.css restored). */
:root{--w-bg:#f6f0e6;--w-card:#fbf7f0;--w-tan:#efe4d3;--w-tan2:#e8dbc6;--w-line:#e2d5c1;--w-ink:#26211d;--w-mut:#6e6256;
 --w-ember:#a63a22;--w-ember2:#8e2f1a;--w-bar:#221d1a;
 --cream:var(--w-bg);--cream2:var(--w-tan);--card:var(--w-card);--ivory:var(--w-bg);--ivory2:var(--w-tan);--paper:var(--w-bg);
 --ink:var(--w-ink);--mut:var(--w-mut);--line:var(--w-line);--ember:var(--w-ember);--ox:var(--w-ember);--ox2:var(--w-ember2);--oxd:#4a2418;
 --stampink:var(--w-ember);--twine:#c9b392;
 --calm-bg:var(--w-bg);--calm-ink:var(--w-ink);--calm-soft:var(--w-tan);--calm-line:var(--w-line);--calm-brick:var(--w-ember)}

/* top bar: charcoal again, logo on its ivory badge (logo file untouched) */
.top,.staff .top,body.staff .top{background:var(--w-bar)!important;color:#f3ece0!important;border-bottom:0!important}
.top .logobtn{background:#f6f0e6!important;border-radius:12px;padding:4px 8px;line-height:0}
.top .iconbtn,.stop .iconbtn{color:#f3ece0!important}
.top .iconbtn:active{background:rgba(255,255,255,.08)}
.top .rolechip{color:#f3ece0!important;border-color:rgba(243,236,224,.28)!important}
.thm20{border-color:rgba(243,236,224,.28)}

/* buttons: ember again (main, small, hero) */
.btn:not(.light):not(.ghost):not(.glass){background:var(--w-ember);color:#fff}
.btn.sm:not(.light):not(.ghost){background:var(--w-ember)!important;color:#fff}
.herocta .btn:not(.light):not(.ghost):not(.glass){background:var(--w-ember)!important;color:#fff!important}
.btn.light,.btn.ghost{border-color:var(--w-line)}

/* section titles: a short ember underline */
.sechead .disp2,.shop .sec>.eyebrow+.disp,.story .disp2{background:linear-gradient(var(--w-ember),var(--w-ember)) left bottom/30px 2px no-repeat!important;padding-bottom:10px}
.sech23 h2::after{background:var(--w-ember)!important;width:28px;height:2px}
.eyebrow{color:var(--w-ember)}
/* section dividers: a thin warm line */
.shop>.sec+.sec::before,.shop>.sec+.story::before,.shop>.trust+.sec::before{background:var(--w-line)!important}

/* Popular stamps, prices, links: ember (stamps stay straight and small) */
.stamp19,.ptag{color:var(--w-ember)!important;border-color:rgba(166,58,34,.55)!important;background:rgba(251,247,240,.95)!important}
.pr,.pprice,.price,.prc{color:var(--w-ember)!important}
.poz{color:var(--w-ember)!important;opacity:.9}
.linkbtn,.flink{color:var(--w-ember)!important;text-decoration-color:rgba(166,58,34,.35)}
.tbadge,.badge{background:var(--w-ember)!important;color:#fff!important}
.est19{color:var(--w-mut)!important;border-color:var(--w-line)!important}

/* bottom tabs: ember for the active tab and its icon */
.tabs{background:var(--w-card)!important;border-top:1px solid var(--w-line)!important}
.tabs button{color:#8a7d70}
.tabs button[aria-current=page],.tabs button[aria-current=page] .tl{color:var(--w-ember)!important}
.tabs button.home .i{background:var(--w-bar)!important;border-color:var(--w-card)!important}
.tabs button.home[aria-current=page] .i{background:var(--w-ember)!important}
.tabs button.home[aria-current=page]{color:var(--w-ember)!important}

/* cards: soft warm tints instead of grey/white */
.shbar,.bcard,.clubcard,.refer,.travel{background:var(--w-tan)!important;border:1px solid var(--w-tan2)!important;color:var(--w-ink)!important}
.boxband,.clock23{background:var(--w-card)!important;border:1px solid var(--w-line)!important}
.boxhead,.kshero,.acckill,.kpi.ox{background:var(--w-tan)!important;border-color:var(--w-tan2)!important}
.shi{background:var(--w-card)!important;color:var(--w-ember)!important}
.phold,.ctile,.bbslots,.bxim,.btile{background:var(--w-tan)!important}
.phold{color:var(--w-mut)!important}
.ti{background:var(--w-tan)!important;color:var(--w-ember)!important}
.chip{border-color:var(--w-line)}
.chip.on,button.chip[aria-pressed="true"]{background:var(--w-ink)!important;color:#f6f0e6!important}
.card,.pcard,.prod,.tile{border-color:var(--w-line)}
.hrow .hi,.plhow .lic,.shnote>.lic,.kslist .lic,.clubperks .lic,.corpfeat .lic{color:var(--w-ember)}
.cut19,.summary .stot{border-top:1px dashed var(--w-tan2)!important}
.fbtrack i{background:var(--w-ember)!important}
/* footer: warm tan, not grey */
.sfoot{background:var(--w-tan)!important;border-top:1px solid var(--w-tan2)!important}

/* staff: same warm palette; Clock in is ember */
.big23{background:var(--w-ember)!important;color:#fff!important}
.big23.brk23{background:var(--w-tan)!important;color:var(--w-ink)!important;border:1px solid var(--w-tan2)!important}
.big23.out23{background:var(--w-bar)!important;color:#f3ece0!important}
.big23:disabled{background:#e9dfd0!important;color:#9a8c7c!important}

/* ---- dark mode: deep warm charcoal with ember accents ----
   Dark mode is the page inverted (invert + hue-rotate). These are the light-side values whose
   inverse lands on: page #1d1916, cards #27211d / #2e2620, lines #3b322b, text #f0e7da,
   muted #b5a898, accent text #d9623f. Bars, photos, the splash and buttons are re-inverted, so they
   keep their true colours (charcoal bar, ember buttons). */
html.dk20{--w-bg:#e9e5e2;--w-card:#e2dcd8;--w-tan:#ded6d0;--w-tan2:#d3cac3;--w-line:#d3cac3;--w-ink:#1f1609;--w-mut:#615444;--w-ember:#e66f4c;--w-ember2:#d05a38}
html.dk20 .btn:not(.light):not(.ghost):not(.glass),html.dk20 .big23:not(.brk23):not(.out23),html.dk20 .tabs button.home .i{--w-ember:#b4472c}
html.dk20 .tabs button.home .i{--w-bar:#3a302a}
/* the top bar keeps its true charcoal in dark mode (re-inverted), logo badge stays ivory */
html.dk20 .top{filter:invert(1) hue-rotate(180deg)!important;--w-bar:#171310;--w-ember:#b4472c}
html.dk20 .top img{filter:none!important}
html.dk20 .big23.out23{filter:invert(1) hue-rotate(180deg)!important;--w-bar:#3a302a}
html.dk20 .top .logobtn{background:#f6f0e6!important}

/* white surfaces become warm cream cards (light) / warm charcoal cards (dark) */
:is(.flv button,.chip,.qa button,.trust,.padd,.travelband,.story,.pdkosher,.flv2 button,.bagl,.summary,.empty .ei,.authcard,.cks,.radio,.mes,.mylink2,.holi,.plhow>div,.szp button,.zipbox,.fbar,.dchips button,.bxlist,.crow,.tiers div,.corpfeat,.logocard,.copt,.kslist,.kscert,.ta12l button,.dcol12,.podmini12,.iconbtn13,.kp20>div,.gbtn20,.btn.light,.sheet,.seg button[aria-pressed=true]):not(.on):not([aria-pressed=true].chip){background-color:var(--w-card)!important}
.chip.on,button.chip[aria-pressed="true"]{background-color:var(--w-ink)!important}
.padd,.btn.light,.chip,.flv2 button,.szp button{border-color:var(--w-line)!important}
html.dk20 :is(input,select,textarea){background-color:var(--w-card)!important;color:var(--w-ink)}
html.dk20 .sheet{background:var(--w-card)!important}
.lnk20{color:var(--w-ember)!important}
.ck20{accent-color:var(--w-ember)}
.bslots i.on,.bbslots i.on{background:var(--w-ember)!important}
.n20{background:var(--w-ember)!important}
.dl20.held{border-left-color:var(--w-ember)!important}
.rule23{background:var(--w-tan)!important}
.rn22.hot22{background:var(--w-tan)!important}
html.dk20 .tabs button.home .i{border-color:#1f1a17!important}
