:root{--paper: #fffcf6;--card: #f8f2e8;--soft: #f3ece0;--ink: #3b342f;--ink-strong: #2a2420;--muted: #73695f;--line: color-mix(in srgb, var(--ink) 13%, transparent);--rule: color-mix(in srgb, var(--ink) 26%, transparent);--band: #e5eedf;--band-fg: #2a2420;--band-muted: #5d6b55;--accent: #f4bd88;--accent-ink: #94551f;--accent-soft: #fdeedd;--on-accent: #2a2420;--pouch: #ebe2d4;--pouch-2: #dfd4c3;--ok: #3f7a45;--ok-soft: color-mix(in srgb, var(--ok) 11%, var(--paper));--warn: #8f6216;--warn-soft: color-mix(in srgb, var(--warn) 11%, var(--paper));--bad: #a3473a;--bad-soft: color-mix(in srgb, var(--bad) 9%, var(--paper));--z-rest: #efe8dc;--z-peak: #bcd6ac;--z-fade: #f2d79f;--z-past: #efc4ba;--f-fruity: #e8838f;--f-citrus: #ebb041;--f-floral: #a993d8;--f-tea: #6fb39b;--f-sweet: #e9a066;--f-choc: #a3735c;--f-nutty: #c8a676;--f-spice: #8ab36a;--sans: "Hanken Grotesk", "Helvetica Neue", Helvetica, Arial, sans-serif;--display: var(--sans);--body: var(--sans);--gutter: max(24px, env(safe-area-inset-left, 0px));color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--paper: #23211f;--card: #2c2926;--soft: #322e2a;--ink: #f1ebe2;--ink-strong: #fffaf3;--muted: #b3aaa0;--band: #2e3a31;--band-fg: #eef3ea;--band-muted: #b6c4b0;--accent: #f2b880;--accent-ink: #f5c597;--accent-soft: color-mix(in srgb, var(--accent) 22%, var(--paper));--on-accent: #2a2420;--pouch: #4a443d;--pouch-2: #3f3a34;--ok: #a9d19b;--warn: #f0cd7c;--bad: #f2a596;--z-rest: #3b3733;--z-peak: #6f8a62;--z-fade: #8a7446;--z-past: #84574d;--f-fruity: #f0a0ac;--f-citrus: #f2c46e;--f-floral: #c3b2e6;--f-tea: #96cdb9;--f-sweet: #f0b689;--f-choc: #caa38f;--f-nutty: #dcc296;--f-spice: #b2d095;color-scheme:dark}}:root[data-theme=dark]{--paper: #23211f;--card: #2c2926;--soft: #322e2a;--ink: #f1ebe2;--ink-strong: #fffaf3;--muted: #b3aaa0;--band: #2e3a31;--band-fg: #eef3ea;--band-muted: #b6c4b0;--accent: #f2b880;--accent-ink: #f5c597;--accent-soft: color-mix(in srgb, var(--accent) 22%, var(--paper));--on-accent: #2a2420;--pouch: #4a443d;--pouch-2: #3f3a34;--ok: #a9d19b;--warn: #f0cd7c;--bad: #f2a596;--z-rest: #3b3733;--z-peak: #6f8a62;--z-fade: #8a7446;--z-past: #84574d;--f-fruity: #f0a0ac;--f-citrus: #f2c46e;--f-floral: #c3b2e6;--f-tea: #96cdb9;--f-sweet: #f0b689;--f-choc: #caa38f;--f-nutty: #dcc296;--f-spice: #b2d095;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font:400 15.5px/1.5 var(--body);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}a{color:var(--ink);text-underline-offset:3px}a:hover{color:var(--accent-ink)}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink-strong);min-width:0}.logo:hover{color:var(--ink-strong)}.logo-mark{flex:none}.logo-text{display:flex;flex-direction:column;gap:2px;min-width:0}.wordmark{font-weight:700;font-size:26px;line-height:1;letter-spacing:-.035em;white-space:nowrap}.wordmark .bag-word{color:var(--on-accent);background:var(--accent);padding:1px 6px 3px;margin-left:2px;border-radius:3px}.logo-tag{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo-lg .wordmark{font-size:clamp(40px,6vw,64px)}.logo-lg .wordmark .bag-word{padding:2px 12px 6px;border-radius:5px}.logo-lg .logo-tag{font-size:13px}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.topbar-inner{max-width:1440px;margin:0 auto;padding-block:14px;padding-left:var(--gutter);padding-right:max(24px,env(safe-area-inset-right,0px));display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px 32px}.tabs{display:flex;gap:26px}.tabs a,.account{text-decoration:none;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:13px;padding:12px 0;border-bottom:1.5px solid transparent;white-space:nowrap;display:inline-flex;align-items:center}.tabs a:hover,.account:hover{color:var(--ink-strong)}.tabs a.active{color:var(--ink-strong);border-bottom:3px solid var(--accent)}.account.active{color:var(--ink-strong)}.badge{display:inline-block;margin-left:6px;font-size:11px;background:var(--accent);color:var(--on-accent);border-radius:999px;min-width:18px;padding:1px 6px;text-align:center;letter-spacing:0}@media (max-width: 860px){.topbar-inner{grid-template-columns:minmax(0,1fr) auto}.tabs{grid-column:1 / -1;gap:20px;overflow-x:auto;scrollbar-width:none}.wordmark{font-size:23px}}main.page{flex:1;width:100%;max-width:1440px;margin:0 auto;padding-block:8px 96px;padding-left:var(--gutter);padding-right:max(24px,env(safe-area-inset-right,0px))}@media (max-width: 600px){:root{--gutter: max(16px, env(safe-area-inset-left, 0px))}main.page,.topbar-inner{padding-right:max(16px,env(safe-area-inset-right,0px))}}.narrow{max-width:720px}.bottomnav{display:none}h1,h2,h3,h4{margin:0;font-weight:400;line-height:1.08;letter-spacing:-.02em;text-wrap:balance;color:var(--ink-strong)}.h1{font-size:clamp(34px,4.6vw,60px);letter-spacing:-.03em;line-height:1.02}.h2{font-size:clamp(22px,2vw,27px);line-height:1.12}.h3{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:500}.muted{color:var(--muted)}.small{font-size:13.5px}.kicker,.eyebrow{font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:9px}.eyebrow:before{content:"";width:0;height:0;border-style:solid;border-width:0 7px 7px 0;border-color:transparent currentColor transparent transparent}.lede{margin:0;color:var(--ink);max-width:46ch;font-size:clamp(17px,1.6vw,22px);line-height:1.35;letter-spacing:-.01em}.notes-line{color:var(--ink)}.mono{font-variant-numeric:tabular-nums}.view-head{display:flex;flex-direction:column;gap:18px;padding-block:clamp(32px,6vw,80px) clamp(22px,3vw,40px)}.view-head h1,.view-head h2{font-size:clamp(38px,5.4vw,72px);line-height:1.02;letter-spacing:-.03em;max-width:17ch;animation:rise .9s cubic-bezier(.2,.8,.2,1) both}.view-head.compact h1,.view-head.compact h2{font-size:clamp(32px,4vw,52px)}@keyframes rise{0%{transform:translateY(.18em)}}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:clamp(28px,5vw,64px) clamp(18px,2.5vw,32px)}.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 24px;margin-bottom:clamp(18px,2.5vw,32px)}.section-head h2{font-size:clamp(28px,3.4vw,46px);letter-spacing:-.03em}.section-head p{margin:10px 0 0;font-size:clamp(16px,1.5vw,20px);max-width:44ch}.stack{display:flex;flex-direction:column;gap:14px}.stack-lg{display:flex;flex-direction:column;gap:28px}.stack-sm{display:flex;flex-direction:column;gap:6px}.row{display:flex;align-items:center;gap:12px}.row-wrap{display:flex;flex-wrap:wrap;gap:8px}.between{justify-content:space-between}.grow{flex:1;min-width:0}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}@media (max-width: 460px){.two-col{grid-template-columns:minmax(0,1fr)}}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0 28px}.card{border-top:1px solid var(--rule);padding-top:18px;padding-bottom:6px;display:block;min-width:0}.card.stack,.card.stack-lg,.card.stack-sm,.card.row{display:flex}.card-link{text-decoration:none;color:inherit}.card-link:hover{color:inherit}.card-link:hover .h2,.card-link:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.divider{height:1px;background:var(--line);border:0;margin:0}.panel{border-top:1px solid var(--rule);padding-top:18px;display:flex;flex-direction:column;gap:18px;min-width:0}.panel h3{font-size:24px;text-transform:none;letter-spacing:-.02em;color:var(--ink-strong)}.callout{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;font-size:14.5px;border-left:2px solid currentColor}.callout svg{flex:none;margin-top:3px}.callout-green{background:var(--ok-soft);color:var(--ok)}.callout-green strong,.callout-green span{color:var(--ink-strong)}.callout-amber{background:var(--warn-soft);color:var(--warn)}.callout-amber>span{color:var(--ink-strong)}.callout-red{background:var(--bad-soft);color:var(--bad)}.callout-red>span{color:var(--ink-strong)}.callout-plain{background:var(--card);color:var(--ink);border-left-color:var(--rule)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid currentColor;white-space:nowrap;background:none}.pill-green{color:var(--ok)}.pill-gray{color:var(--muted)}.pill-amber{color:var(--warn)}.pill-accent{color:var(--accent-ink)}.stamp{display:inline-block;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);background:var(--card);padding:5px 10px;white-space:nowrap}.note-sample{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 11px;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:0;border:1px solid var(--ink-strong);background:var(--ink-strong);color:var(--paper);font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}.btn:hover:not(:disabled){background:transparent;color:var(--ink-strong)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-green{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-green:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--on-accent)}.btn-outline,.btn-quiet{background:transparent;color:var(--ink-strong);border-color:var(--line)}.btn-outline{border-color:var(--ink-strong)}.btn-outline:hover:not(:disabled),.btn-quiet:hover:not(:disabled){border-color:var(--ink-strong);background:transparent;color:var(--ink-strong)}.btn-text,.btn-danger-text,.link{background:none;border:0;padding:0 0 2px;min-height:44px;cursor:pointer;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-strong);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.btn-text:hover,.link:hover{color:var(--accent-ink)}.btn-danger-text{color:var(--bad)}.btn-block{width:100%}.btn-sm{min-height:40px;padding:0 14px;font-size:12px}.icon-btn{width:44px;height:44px;flex:none;border-radius:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid var(--line);background:transparent;color:var(--ink-strong)}.icon-btn:hover{border-color:var(--ink-strong)}.icon-btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label,.label,.lbl{font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:500}.hint{font-size:12.5px;color:var(--muted)}.input,.select,.textarea{width:100%;min-height:44px;padding:9px 2px;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;font-size:16px;color:var(--ink-strong)}.textarea{min-height:84px;resize:vertical;line-height:1.5;padding:10px;border:1px solid var(--line);background:var(--card)}.input:focus,.select:focus{outline:none;border-bottom-color:var(--ink-strong);box-shadow:0 1px 0 var(--ink-strong)}.textarea:focus{outline:none;border-color:var(--ink-strong)}.select{cursor:pointer}.select option{background:var(--paper);color:var(--ink)}.check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.check input{width:17px;height:17px;accent-color:var(--ink-strong)}.chip{min-height:40px;padding:0 14px;border-radius:999px;cursor:pointer;border:1px solid var(--line);background:none;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;transition:border-color .2s;color:var(--ink)}.chip.dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--fc, var(--muted))}.chip:hover{border-color:var(--ink-strong)}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chip-sm{min-height:36px;padding:0 12px}.segmented{display:flex;border:1px solid var(--line);padding:3px;gap:3px}.segmented button{flex:1;min-height:38px;border:0;background:none;cursor:pointer;padding:0 8px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.segmented button:hover{color:var(--ink-strong)}.segmented button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.segmented button:disabled{cursor:not-allowed;opacity:.55}.option{display:flex;align-items:flex-start;gap:12px;min-height:52px;padding:13px 0;width:100%;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;color:var(--ink)}.stack-sm>.option:first-child{border-top:1px solid var(--line)}.option:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.option .radio{width:16px;height:16px;flex:none;margin-top:3px;border-radius:50%;border:1.5px solid var(--rule)}.option[aria-pressed=true] .radio{border:5px solid var(--accent);background:var(--on-accent)}.option[aria-pressed=true] span>span:first-child{text-decoration:underline;text-underline-offset:4px}.stepper{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}.stepper button{width:44px;height:44px;border:1px solid var(--line);background:none;font-size:20px;cursor:pointer;color:var(--ink-strong)}.stepper button:hover:not(:disabled){border-color:var(--ink-strong)}.stepper button:disabled{opacity:.35;cursor:not-allowed}.stepper .value{font-size:clamp(30px,3vw,40px);letter-spacing:-.03em;text-align:center;color:var(--ink-strong)}.pouch-art{position:relative;display:grid;place-items:center;aspect-ratio:4 / 5;width:100%;max-width:100%;border:0;padding:0;overflow:hidden;background:color-mix(in srgb,var(--fc, var(--muted)) 10%,var(--card));transition:background .4s}button.pouch-art,a.pouch-art{cursor:pointer}.pouch-art:hover{background:color-mix(in srgb,var(--fc, var(--muted)) 18%,var(--card))}.pouch-art svg{width:min(54%,190px);height:auto;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.pouch-art:hover svg{transform:translateY(-5px) scale(1.03)}.pouch-art img{width:100%;height:100%;object-fit:cover}.pouch-art .tag{position:absolute;left:10px;top:10px;font-size:11px;letter-spacing:.07em;text-transform:uppercase;background:var(--paper);color:var(--ink);padding:4px 8px}.pouch-thumb{aspect-ratio:1}.notes{display:flex;flex-wrap:wrap;gap:6px}.note{font-size:12px;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px 4px 9px;border-radius:999px;border:1px solid var(--line);display:inline-flex;align-items:center;gap:7px;color:var(--ink)}.note:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--fc)}.fresh{display:flex;flex-direction:column;gap:7px}.fresh .frow{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;text-transform:uppercase;letter-spacing:.03em}.track{position:relative;height:3px}.track i{position:absolute;top:-5px;width:1.5px;height:13px;background:var(--ink-strong);transform:translate(-50%)}.track-scale{display:flex;justify-content:space-between;font-size:10.5px;color:var(--muted);letter-spacing:.04em}.pill.peak{color:var(--ok)}.pill.rest{color:var(--muted)}.pill.fade{color:var(--warn)}.pill.past{color:var(--bad)}.bag-entry{border-top:1px solid var(--rule);display:flex;flex-direction:column;min-width:0;padding-top:18px;margin-bottom:34px;gap:16px}.bag-entry .o{display:flex;justify-content:space-between;align-items:start;gap:12px}.bag-entry .roaster{font-size:12px;display:flex;flex-wrap:wrap;gap:0 8px;margin-bottom:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.bag-entry .roaster b{color:var(--ink-strong);font-weight:600}.bag-entry .roaster span:before{content:"/";margin-right:8px;opacity:.5}.bag-entry h3{font-size:clamp(22px,2vw,27px);line-height:1.1}.bag-entry h3 a{text-decoration:none}.bag-entry h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;color:var(--ink-strong)}.bag-entry .reg{color:var(--muted);font-size:14px;margin-top:6px}.spec{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid var(--line)}.spec div{padding:9px 0;min-width:0;border-bottom:1px solid var(--line)}.spec div:nth-child(odd){padding-right:12px}.spec div:nth-child(2n){padding-left:12px;border-left:1px solid var(--line)}.spec dt{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.spec dd{margin:2px 0 0;font-size:14.5px;overflow-wrap:anywhere;color:var(--ink-strong)}.bag-entry footer{border-top:1px solid var(--line);padding-top:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grams{display:flex;flex-direction:column;gap:5px;margin-right:auto;min-width:110px}.grams b{font-size:14px;font-weight:500;color:var(--ink-strong)}.meter,.grams .bar{height:2px;background:var(--line);overflow:hidden}.meter>span,.grams .bar span{display:block;height:100%;background:var(--ink-strong)}.who{font-size:12.5px;color:var(--muted);width:100%;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.04em}.foryou{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}@media (max-width: 900px){.foryou{grid-template-columns:minmax(0,1fr)}}.palbar{display:flex;height:6px;gap:2px}.palbar span{background:var(--fc)}.legend{display:grid;grid-template-columns:1fr auto;font-size:13px;text-transform:uppercase;letter-spacing:.03em}.legend>*{padding:7px 0;border-bottom:1px solid var(--line)}.legend .k{display:flex;align-items:center;gap:9px}.legend .k:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--fc)}.recent{display:flex;flex-direction:column;font-size:13.5px}.recent>div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:8px 0;text-transform:uppercase;letter-spacing:.02em}.picks{display:flex;flex-direction:column;gap:10px}.pick{display:grid;grid-template-columns:minmax(48px,90px) minmax(0,1fr);gap:clamp(12px,2vw,28px)}.pick .n{font-size:clamp(40px,5vw,72px);line-height:.85;letter-spacing:-.04em;color:var(--muted)}.why{font-size:15.5px;margin:0 0 14px;max-width:62ch;color:var(--ink)}.why b{font-weight:600;color:var(--ink-strong)}.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.3vw,20px);list-style:none;margin:0;padding:0}@media (max-width: 1000px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}}.tile{display:flex;flex-direction:column;gap:12px;min-width:0;animation:rise .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 90ms)}.tile-cap{display:flex;justify-content:space-between;gap:10px;font-size:14px;line-height:1.35}.tile-cap b{font-weight:500;display:block;color:var(--ink-strong)}.tile-cap span{color:var(--muted);font-size:13px}.tile-cap .g{text-align:right;white-space:nowrap}@media (max-width: 560px){.tile-cap{flex-direction:column;gap:2px}.tile-cap .g{text-align:left}}.band{background:var(--band);color:var(--band-fg);margin-inline:calc(-1 * var(--gutter));padding-block:clamp(44px,7vw,96px);padding-left:var(--gutter);padding-right:max(24px,env(safe-area-inset-right,0px));margin-block:clamp(36px,6vw,72px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}@media (max-width: 860px){.band{grid-template-columns:1fr}}.band h2{color:var(--band-fg);font-size:clamp(28px,3.2vw,42px);max-width:18ch;letter-spacing:-.025em}.band ol,.band ul{list-style:none;margin:22px 0 28px;padding:0;display:flex;flex-direction:column;gap:10px;font-size:16px}.band li{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:baseline}.band li .n{color:var(--band-muted);font-size:13px;letter-spacing:.06em}.band .btn{background:var(--ink-strong);color:var(--paper);border-color:var(--ink-strong)}.band .btn:hover{background:transparent;color:var(--ink-strong)}.band-art{display:grid;grid-template-columns:1fr 1fr;gap:14px}.band-art .pouch-art{aspect-ratio:1;background:color-mix(in srgb,var(--fc) 18%,var(--paper))}.band-art figcaption{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--band-muted);margin-top:8px}.bsearch{display:flex;align-items:end;gap:24px;border-bottom:1px solid var(--rule);margin-bottom:18px}.bsearch input{flex:1;min-width:0;background:transparent;border:0;padding:14px 0;font-size:clamp(22px,2.6vw,34px);letter-spacing:-.02em;color:var(--ink-strong)}.bsearch input::placeholder{color:var(--muted)}.bsearch input:focus{outline:none}.bsearch:focus-within{border-bottom-color:var(--ink-strong)}.bfilters{display:flex;flex-wrap:wrap;gap:18px 32px;align-items:end;padding:6px 0 22px}.bsel{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.bsel select{background:transparent;border:0;border-bottom:1px solid var(--rule);padding:8px 2px;font-size:16px;letter-spacing:0;text-transform:none;color:var(--ink-strong);cursor:pointer;min-height:44px}.bcount{font-size:13px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}.brows{display:flex;flex-direction:column}.brow{display:grid;grid-template-columns:clamp(96px,13vw,170px) minmax(0,1fr) auto;align-items:center;gap:clamp(16px,3vw,44px);padding:clamp(16px,2.2vw,28px) 0;border-top:1px solid var(--line);animation:rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 45ms)}.brows .brow:last-child{border-bottom:1px solid var(--line)}.btext{min-width:0;display:flex;flex-direction:column;gap:6px}.btext p{margin:0;font-size:clamp(15px,1.3vw,18px)}.btext p.muted{font-size:clamp(14px,1.1vw,16px)}.bname{font-size:clamp(24px,2.8vw,40px);line-height:1.08;letter-spacing:-.025em;text-decoration:none;color:var(--ink-strong);text-wrap:balance}.bname:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;color:var(--ink-strong)}.brow .acts{display:flex;flex-direction:column;gap:8px;align-items:stretch}@media (max-width: 640px){.brow{grid-template-columns:88px minmax(0,1fr);gap:16px}.brow .acts{grid-column:1 / -1;flex-direction:row}.brow .acts .btn{flex:1}.bsearch{flex-direction:column;align-items:stretch;gap:0}}.shelf-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:clamp(28px,5vw,64px);align-items:start}@media (max-width: 960px){.shelf-grid{grid-template-columns:minmax(0,1fr)}}.offers{display:flex;flex-direction:column}.offer{border-top:1px solid var(--rule);padding:24px 0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(150px,auto);gap:24px;align-items:center;text-decoration:none;color:inherit}.offers .offer:last-child{border-bottom:1px solid var(--rule)}a.offer:hover h4{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.offer .side{min-width:0;display:flex;flex-direction:column;gap:6px}.offer .side h4{font-size:clamp(20px,2.2vw,28px)}.offer .side .meta{text-transform:uppercase;letter-spacing:.03em;font-size:12.5px;color:var(--muted)}.offer .arrow{font-size:28px;color:var(--muted)}.offer .act{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.offer .msg{grid-column:1 / -1;font-size:15px;margin:0;color:var(--muted);max-width:70ch}@media (max-width: 760px){.offer{grid-template-columns:minmax(0,1fr);gap:14px}.offer .arrow{transform:rotate(90deg);justify-self:start}}.pack{border-top:1px solid var(--line);padding-top:14px;font-size:14.5px}.pack ol{margin:8px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.thread{display:flex;flex-direction:column;gap:8px}.msg{max-width:80%;padding:10px 14px;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.msg-me{align-self:flex-end;background:var(--accent);color:var(--on-accent)}.msg-them{align-self:flex-start;background:var(--card);color:var(--ink-strong)}.msg-system{align-self:stretch;max-width:none;text-align:center;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:6px 8px}.landing{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,440px)}@media (max-width: 920px){.landing{grid-template-columns:minmax(0,1fr)}}.landing-story{padding-block:clamp(28px,5vw,64px);padding-left:var(--gutter);padding-right:clamp(24px,5vw,72px);display:flex;flex-direction:column;gap:clamp(24px,4vw,44px)}.landing-story h1{font-size:clamp(38px,5.6vw,76px);line-height:1;letter-spacing:-.035em;max-width:15ch}.landing-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}@media (max-width: 640px){.landing-steps{grid-template-columns:minmax(0,1fr)}}.landing-steps li{border-top:1px solid var(--rule);padding:14px 0 18px;display:flex;flex-direction:column;gap:6px}.landing-steps .n{font-size:40px;line-height:1;letter-spacing:-.04em;color:var(--muted)}.landing-steps b{font-weight:600;color:var(--ink-strong)}.landing-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:640px}.landing-art .pouch-art{aspect-ratio:1}.landing-form{background:var(--card);padding-block:clamp(28px,5vw,64px);padding-left:clamp(24px,4vw,48px);padding-right:max(24px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;justify-content:center;gap:24px}@media (max-width: 920px){.landing-form{padding-left:var(--gutter)}}.landing-form h2{font-size:clamp(28px,3vw,38px)}.empty{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:40px 0;text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center}.empty .h2{font-size:22px}.loading{padding:48px 0;text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.sticky-actions{position:sticky;bottom:0;padding-block:14px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom,transparent,var(--paper) 30%)}.bar-row{display:grid;grid-template-columns:130px 1fr 44px;align-items:center;gap:10px;font-size:13px;text-transform:uppercase;letter-spacing:.03em}.bar-row .meter{height:4px}.bar-row .meter>span{background:var(--fc, var(--ink-strong))}.avatar{width:36px;height:36px;flex:none;border-radius:50%;background:var(--ink-strong);color:var(--paper);font-size:14px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding-block:24px;padding-left:var(--gutter);padding-right:max(16px,env(safe-area-inset-right,0px))}.auth-card{width:100%;max-width:420px}.error-text{color:var(--bad);font-size:14px}.narrow{padding-top:clamp(16px,3vw,40px)}.narrow .h1{margin-top:6px}.wordmark .bag-word{display:inline-block;line-height:1.05}.logo-text{gap:6px}.logo-lg .logo-text{gap:12px}.logo-lg .wordmark .bag-word{padding:0 12px 4px}@media (max-width: 560px){.pick{grid-template-columns:minmax(0,1fr);gap:4px}.pick .n{font-size:34px}}@media (max-width: 860px){.account{grid-row:1;grid-column:2}}.scan-drop{display:flex;align-items:center;gap:16px;padding:20px;background:var(--card);cursor:pointer;border:1.5px dashed var(--rule);transition:background .3s,border-color .3s}.scan-drop:hover,.scan-drop.over{background:var(--accent-soft);border-color:var(--accent)}.scan-drop b{display:block;font-weight:600;font-size:17px;color:var(--ink-strong)}.scan-drop small{display:block;color:var(--muted);font-size:13.5px;margin-top:2px}.scan-ico{width:48px;height:48px;flex:none;display:grid;place-items:center;background:var(--accent);color:var(--on-accent)}input.sr-only:focus-visible+.scan-state,.scan-drop:focus-within{outline:2px solid var(--ink);outline-offset:3px}.scan-state{display:flex;gap:16px;align-items:flex-start}.scan-state p{font-size:15px}.scan-state p.busy:after{content:"";display:inline-block;width:1.2em;text-align:left;animation:dots 1.2s steps(4) infinite}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:36px 20px}.bcard{display:flex;flex-direction:column;gap:12px;min-width:0;animation:rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 45ms)}.bcard .pouch-art svg{width:min(52%,170px)}.bcard-name{font-size:20px;line-height:1.15;letter-spacing:-.015em;color:var(--ink-strong);text-decoration:none;text-wrap:balance}.bcard-name:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;color:var(--ink-strong)}.bcard .notes .note{font-size:11px;padding:3px 8px}.bcard-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:10px}.bcard-acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (max-width: 560px){.bgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.bcard-name{font-size:17px}.bcard-acts{grid-template-columns:minmax(0,1fr)}}.or-rule{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;letter-spacing:.07em;text-transform:uppercase}.or-rule:before,.or-rule:after{content:"";flex:1;height:1px;background:var(--line)}
