:root{--base:#f7f2ec;--g1:#e9dccd;--g2:#d9c3ae;--g3:#f3e9dd;--a1:#3b2418;--a2:#8a5a3c;--a-soft:#efe4d8;--a-ink:#5b3a29;--a-glow:#3b241847;--grad:linear-gradient(135deg, var(--a1), var(--a2));--glass:#ffffffa8;--glass-line:#ffffffb3;--soft-line:#2b1d161f;--ink:#2b1d16;--sub:#857a70;--faint:#b4aaa0;--line:#e6e0d7;--track:#eeeae4;--paper:#fff;--warm:#f6f3ee;--brand:#5b3a29;--copper:var(--a1);--copper-bg:var(--a-soft);--copper-ink:var(--a-ink);--danger:#a32d2d;--shop:#2f5d50;--ground:var(--base);--flow:#3f6e80;--font:"Zen Maru Gothic", "Hiragino Maru Gothic ProN", system-ui, sans-serif;--mono:"Outfit", "Zen Maru Gothic", system-ui, sans-serif;--pad:20px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--copper);outline-offset:2px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:500}.sub{color:var(--sub)}.small{font-size:12px}.label{color:var(--sub);letter-spacing:.14em;font-size:11px}.title{font-size:22px;font-weight:700;line-height:1.35}.heading{font-size:15px;font-weight:700}.rule{border:0;border-top:1px solid var(--ink);margin:0}.hair{border:0;border-top:1px solid var(--line);margin:0}.stack{flex-direction:column;gap:12px;display:flex}.stack-sm{flex-direction:column;gap:6px;display:flex}.row{align-items:center;gap:12px;display:flex}.between{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.grow{flex:1;min-width:0}.note{color:var(--sub);font-size:12px;line-height:1.7}.error-text{color:var(--danger);font-size:13px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{background:var(--paper);flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;display:flex}.app-main{flex-direction:column;flex:1;display:flex}.page{padding:16px var(--pad) 32px;flex-direction:column;gap:14px;display:flex}.page-top{padding-top:20px}.topbar{justify-content:space-between;align-items:center;min-height:44px;margin:-4px 0 -4px -12px;display:flex}.icon-btn{cursor:pointer;width:44px;height:44px;color:inherit;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.brand{color:var(--brand);letter-spacing:.04em;font-size:22px;font-weight:700}.btn{border:1px solid var(--ink);background:var(--paper);min-height:48px;color:var(--ink);cursor:pointer;text-align:center;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--ink);color:var(--paper)}.btn-shop{background:var(--shop);border-color:var(--shop);color:#fff;letter-spacing:.06em}.btn-small{min-height:36px;padding:0 12px;font-size:13px}.btn-big{min-height:52px;font-size:16px}.btn-block{width:100%}.btn-quiet{border-color:var(--line);color:var(--sub);font-weight:400}.btn-pair{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.btn-pair>.btn+.btn{border-left:0}.seg{border:1px solid var(--ink);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.seg button{background:var(--paper);cursor:pointer;border:0;border-radius:0;min-height:44px;padding:0 6px;font-size:13px}.seg button+button{border-left:1px solid var(--ink)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--paper);font-weight:700}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--ink);background:var(--paper);cursor:pointer;border-radius:0;min-height:40px;padding:0 14px;font-size:13px}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper)}.stats{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.stat{flex-direction:column;gap:1px;min-width:0;display:flex}.stat+.stat{border-left:1px solid var(--line);padding-left:10px}.stat-value{font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:500;line-height:1.25;overflow:hidden}.stat-value small{font-size:12px}.stat-sub{font-family:var(--mono);color:var(--sub);font-size:11px}.stats-lg .stat-value{font-size:24px}.ktable{grid-template-columns:64px repeat(3,minmax(0,1fr));font-size:13px;display:grid}.ktable>*{border-bottom:1px solid var(--line);padding:8px 0}.ktable .head{color:var(--sub);border-bottom-color:var(--ink);padding:6px 0;font-size:11px}.ktable .key{color:var(--sub);letter-spacing:.14em;font-size:11px}.ktable .plan{font-family:var(--mono);color:var(--sub)}.ktable .val{font-family:var(--mono)}.ktable .diff{font-family:var(--mono);text-align:right}.ktable .diff.zero{color:var(--sub)}.ktable .diff.changed{font-weight:700}.dl{border-top:1px solid var(--ink);grid-template-columns:76px 1fr;font-size:13px;display:grid}.dl>*{border-bottom:1px solid var(--line);padding:7px 0}.dl dt{color:var(--sub)}.dl dd{margin:0}.list-row{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border-radius:0;align-items:center;gap:12px;padding:12px 0;text-decoration:none;display:flex}.steps-table{flex-direction:column;display:flex}.steps-table .step-row{border-top:1px solid var(--line);grid-template-columns:72px 1fr auto;gap:8px;padding:8px 0;font-size:13px;display:grid}.bars{grid-template-columns:64px 1fr 28px;align-items:center;gap:8px 10px;display:grid}.bar-track{background:var(--line);height:8px;display:block}.bar-fill{background:var(--ink);height:8px;display:block}.segments{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;display:grid}.segments span{background:var(--line);height:8px}.segments span.on{background:var(--shop)}.window-bar{background:var(--line);height:4px;display:block;position:relative}.window-bar .window{background:color-mix(in srgb, var(--shop) 35%, white);height:4px;position:absolute;top:0}.window-bar .now{background:var(--ink);width:2px;height:10px;position:absolute;top:-3px}.hint{border-left:3px solid var(--ink);background:var(--warm);padding:10px 12px;font-size:14px;font-weight:700}.hint.warn{border-left-color:var(--copper);background:var(--copper-bg);color:var(--copper-ink)}.box{border:1px solid var(--ink);flex-direction:column;gap:8px;padding:12px;display:flex}.box-warm{background:var(--warm)}.dashed{border:1px dashed #c9c0b4;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.field{color:var(--sub);flex-direction:column;gap:6px;font-size:13px;display:flex}.field input,.field select,.field textarea,.input{border:1px solid var(--ink);background:var(--paper);min-height:46px;color:var(--ink);border-radius:0;width:100%;padding:0 12px;font-size:16px}.field textarea{resize:vertical;min-height:84px;padding:10px 12px;font-size:15px}.input-mono{font-family:var(--mono)}.suffix-input{border:1px solid var(--ink);background:var(--paper);grid-template-columns:1fr auto;align-items:center;padding-right:8px;display:grid}.suffix-input input{min-height:40px;font-family:var(--mono);border:0;width:100%;min-width:0;padding:0 8px;font-size:15px}.suffix-input span{color:var(--sub);font-size:11px}.stepper{border:1px solid var(--ink);grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.stepper button{background:var(--paper);cursor:pointer;border:0;border-radius:0;height:44px;font-size:18px}.stepper button:first-child{border-right:1px solid var(--ink)}.stepper button:last-child{border-left:1px solid var(--ink)}.stepper output{text-align:center;font-family:var(--mono);padding:0 4px;font-size:18px}.stepper output.text{font-family:var(--font);font-size:13px}.tabbar{border-top:1px solid var(--ink);background:var(--paper);padding-bottom:env(safe-area-inset-bottom);z-index:5;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:sticky;bottom:0}.tabbar a{color:#a39a90;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:60px;font-size:11px;text-decoration:none;display:flex}.tabbar a.active{color:var(--ink);box-shadow:inset 0 2px 0 var(--brand);font-weight:700}.cta-bar{bottom:calc(61px + env(safe-area-inset-bottom));padding:10px var(--pad);border-top:1px solid var(--line);background:var(--paper);padding-bottom:calc(10px + env(safe-area-inset-bottom));z-index:4;position:sticky}.band{background:var(--shop);color:#fff;height:168px;padding:12px var(--pad) 14px;background-position:50%;background-size:cover;flex-direction:column;justify-content:space-between;display:flex;position:relative}.band.has-photo:after{content:"";background:linear-gradient(#0000 40%,#00000073);position:absolute;inset:0}.band>*{z-index:1;position:relative}.thumb{background:var(--line);background-position:50%;background-size:cover;flex-shrink:0;width:64px;height:64px}.progress{gap:3px;display:grid}.progress span{background:var(--line);height:4px}.progress span.done{background:var(--ink)}.progress span.now{background:var(--copper)}.big-number{font-family:var(--mono);font-size:48px;line-height:1}.brew-step-row{border-top:1px solid var(--line);color:var(--sub);grid-template-columns:10px 72px 1fr auto;align-items:center;gap:8px;padding:7px 0;font-size:13px;display:grid}.brew-step-row.done{color:var(--faint)}.brew-step-row.now{color:var(--ink);font-weight:700}.brew-step-row .mark{width:8px;height:8px}.brew-step-row.now .mark{background:var(--copper)}.chart{width:100%;height:auto;display:block}.legend{color:var(--sub);gap:16px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend .dash{border-top:2px dashed var(--brand);width:18px}.legend .solid{background:var(--copper);width:18px;height:3px}.legend .solid-ink{background:var(--ink);width:18px;height:2px}.stars{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.stars button{border:1px solid var(--ink);background:var(--paper);min-height:52px;color:var(--faint);cursor:pointer;border-radius:0;font-size:20px}.stars button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.check{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:14px;display:flex}.check input{appearance:none;border:1px solid var(--ink);border-radius:0;flex-shrink:0;place-items:center;width:22px;height:22px;margin:0;display:grid}.check input:checked{background:var(--ink)}.check input:checked:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:10px;height:6px;transform:translateY(-1px)rotate(-45deg)}.center-page{flex-direction:column;justify-content:center;gap:16px;min-height:70dvh;padding:24px 28px;display:flex}.alert-mark{background:var(--ink);color:#fff;width:44px;height:44px;font-family:var(--mono);justify-content:center;align-items:center;font-size:22px;display:flex}.loading{padding:40px var(--pad);color:var(--sub);font-size:13px}.toast{border-top:1px solid var(--line);padding-top:10px;font-size:13px}.section-head{border-top:1px solid var(--ink);justify-content:space-between;align-items:baseline;gap:12px;padding-top:12px;display:flex}.section-head h2{margin:0;font-size:16px;font-weight:700}.disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.disclosure summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:44px;font-size:14px;list-style:none;display:flex}.disclosure summary::-webkit-details-marker{display:none}.disclosure-mark:after{content:"＋";font-family:var(--mono);font-size:18px}.disclosure[open] .disclosure-mark:after{content:"−"}.disclosure-body{padding-bottom:8px}.sticky-tabs{z-index:3;background:var(--paper);margin-top:-4px;padding:10px 0 0;position:sticky;top:0}.crumbs{color:#fff;align-items:center;gap:6px;font-size:13px;display:flex}.crumbs a{color:#fff}.big-grind{font-family:var(--mono);font-size:28px;line-height:1.1}.shop-mark{color:#fff;background-position:50%;background-size:cover;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:18px;font-weight:700;display:flex}.bean-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.bean-cards a{color:inherit;flex-direction:column;gap:6px;text-decoration:none;display:flex}.bean-cards .thumb{width:100%;height:72px}.avatar{color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.post-card{border-bottom:1px solid var(--ink);flex-direction:column;gap:10px;padding:14px 0;display:flex}.post-body{color:inherit;flex-direction:column;gap:8px;text-decoration:none;display:flex}.post-stats{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.post-stats>span{flex-direction:column;gap:1px;min-width:0;display:flex}.post-stats>span+span{border-left:1px solid var(--line);padding-left:6px}.post-stats .label{letter-spacing:.12em;font-size:10px}.post-stats .mono{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.post-photo{aspect-ratio:4/3;object-fit:cover;background:var(--line);width:100%;display:block}.badge{border:1px solid var(--ink);padding:1px 6px;font-size:11px}.tag{color:var(--ink);border:1px solid #c9c0b4;padding:1px 6px}.like-btn{min-height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px 0 0;font-size:14px;display:flex}.like-btn.liked{color:var(--copper)}.like-btn.liked .mono{color:var(--ink)}.hscroll{margin:0 calc(var(--pad) * -1);padding:0 var(--pad) 4px;scroll-snap-type:x proximity;gap:8px;display:flex;overflow-x:auto}.hscroll>*{scroll-snap-align:start}.bean-card{width:148px;color:inherit;flex-direction:column;flex:none;gap:6px;text-decoration:none;display:flex}.bean-card .thumb{width:100%;height:84px}.me-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.me-buttons a{border:1px solid var(--ink);min-height:64px;color:inherit;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:13px;text-decoration:none;display:flex}.menu-row{border:0;border-bottom:1px solid var(--line);text-align:left;min-height:48px;color:inherit;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:0;font-size:14px;text-decoration:none;display:flex}.screen{background:var(--ground);flex-direction:column;flex:1;padding-bottom:16px;display:flex}.screen-bar{background:var(--paper);justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:4px 8px;display:flex}.screen-bar .bar-title{font-size:14px;font-weight:700}.screen-head{padding:4px var(--pad) 0;background:var(--paper);flex-direction:column;gap:4px;display:flex}.screen-title{justify-content:space-between;align-items:center;gap:8px;min-height:48px;margin:0;font-size:20px;font-weight:700;display:flex}.sec{padding:16px var(--pad);background:var(--paper);flex-direction:column;gap:10px;margin-top:8px;display:flex}.sec.flush{margin-top:0}.sec.plain{background:0 0;padding-top:8px}.sec-h{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sec-h h2{margin:0;font-size:16px;font-weight:700}.sec-h .note-r{color:var(--sub);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:none}.utabs{border-bottom:1px solid var(--line);gap:20px;display:flex;overflow-x:auto}.utabs button{min-height:40px;color:var(--sub);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 2px;font-size:15px}.utabs button[aria-selected=true]{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.utabs-bar{z-index:3;padding:0 var(--pad);background:var(--paper);margin-top:8px;position:sticky;top:0}.tiles{background:var(--line);border:1px solid var(--line);gap:1px;display:grid}.tiles>*{background:var(--paper);flex-direction:column;gap:2px;min-width:0;padding:10px;display:flex}.tiles .k{color:var(--sub);letter-spacing:.12em;font-size:10px}.tiles .v{font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:500;line-height:1.25;overflow:hidden}.tiles .s{color:var(--sub);font-size:10px}.tiles .s.changed{color:var(--copper-ink)}.kv{grid-template-columns:84px 1fr;margin:0;font-size:14px;display:grid}.kv>*{border-top:1px solid var(--line);margin:0;padding:8px 0}.kv>dt{color:var(--sub)}.gen-cover{color:#fff;background-color:var(--shop);background-image:repeating-linear-gradient(135deg,#ffffff14 0 2px,#0000 2px 9px);flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:hidden}.gen-cover.manual{color:var(--sub);background-color:#e9e2d8}.photo-cover{background-color:var(--line);background-position:50%;background-size:cover}.switch-row{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 0;display:flex}.switch-row+.switch-row{border-top:1px solid var(--line)}.switch{background:var(--line);flex:none;width:44px;height:26px;position:relative}.switch:after{content:"";background:#fff;width:20px;height:20px;transition:left .15s;position:absolute;top:3px;left:3px}[aria-pressed=true]>.switch{background:var(--ink)}[aria-pressed=true]>.switch:after{left:21px}.chip-scroll{margin:0 calc(var(--pad) * -1);padding:0 var(--pad) 2px;gap:6px;display:flex;overflow-x:auto}.chip-scroll .chip{border-color:#c9c0b4;flex:none;min-height:34px;padding:0 12px}.chip-scroll .chip[aria-pressed=true]{border-color:var(--ink)}.choice{border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:56px;padding:6px 14px;display:flex}.choice[aria-pressed=true]{border:2px solid var(--ink);padding:5px 13px;font-weight:700}.choice .dot{border:1px solid #c9c0b4;flex:none;width:18px;height:18px}.choice[aria-pressed=true] .dot{border:6px solid var(--ink)}.foot-bar{z-index:4;padding:10px var(--pad) calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin-top:auto;display:grid;position:sticky;bottom:0}.sheet-back{z-index:20;background:#221d1966;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:520px;padding:16px var(--pad) calc(16px + env(safe-area-inset-bottom));background:var(--paper);flex-direction:column;gap:4px;margin:0 auto;display:flex}.sheet-row{border:0;border-top:1px solid var(--line);text-align:left;min-height:56px;color:inherit;cursor:pointer;background:0 0;flex-direction:column;justify-content:center;gap:2px;padding:0;text-decoration:none;display:flex}.toast-float{bottom:calc(68px + env(safe-area-inset-bottom));z-index:6;margin:8px var(--pad) 0;background:var(--ink);color:#fff;padding:12px 14px;font-size:13px;line-height:1.6;position:sticky}.post-mini{padding:14px var(--pad) 0;background:var(--paper);border-bottom:6px solid var(--ground);flex-direction:column;gap:8px;display:flex}.post-mini-body{color:inherit;grid-template-columns:1fr 96px;gap:12px;text-decoration:none;display:grid}.post-mini-media{object-fit:cover;background:var(--warm);width:96px;height:96px;display:block}.clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.post-actions{align-items:center;gap:4px;margin:0 -8px;display:flex}.post-actions>a,.post-actions>button{min-height:40px;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0 8px;font-size:13px;text-decoration:none;display:inline-flex}.wchart{flex-direction:column;gap:8px;display:flex}.wchart-readouts{grid-template-columns:1.3fr 1fr 1fr;gap:8px;display:grid}.wchart-readouts>span{flex-direction:column;gap:1px;min-width:0;display:flex}.wchart-readouts .k{color:var(--sub);letter-spacing:.12em;font-size:11px}.wchart-readouts .v{font-family:var(--mono);white-space:nowrap;font-size:26px;font-weight:500;line-height:1.1}.wchart-readouts.big .v{font-size:34px}.wchart-plot{padding:0 20px 0 32px;position:relative}.wchart-plot svg{width:100%;display:block;overflow:visible}.wchart-ylabel{font-family:var(--mono);color:var(--sub);font-size:10px;line-height:1;position:absolute}.wchart-steps{height:14px;color:var(--sub);margin:0 20px 0 32px;font-size:11px;position:relative}.wchart-steps span{white-space:nowrap;position:absolute;top:0}.wchart-steps span.now{color:var(--copper);font-weight:700}.wchart-x{height:14px;font-family:var(--mono);color:var(--sub);margin:0 20px 0 32px;font-size:11px;position:relative}.wchart-x span{white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.wchart-x span:first-child{transform:none}.wchart-x span:last-child{transform:translate(-100%)}.post-mini-top{align-items:center;gap:8px;margin:-6px 0 -4px;display:flex}.post-mini-head{min-width:0;min-height:40px;color:inherit;flex:1;align-items:center;gap:8px;text-decoration:none;display:flex}.post-mini-who{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;overflow:hidden}.post-mini-text{flex-direction:column;gap:4px;min-width:0;display:flex}.post-mini-hint{min-height:40px;color:var(--copper-ink);align-self:flex-start;align-items:center;margin:-10px 0;font-size:12px;text-decoration:none;display:inline-flex}.post-mini-tags{text-align:right;min-width:0;color:var(--sub);white-space:nowrap;text-overflow:ellipsis;flex:1;padding-right:8px;font-size:11px;overflow:hidden}.post-actions .like-btn{padding:0 8px}.post-actions>button:disabled{cursor:default}.post-tags{flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.post-tags>span{background:var(--ground);padding:2px 8px}.menu-pop{z-index:8;border:1px solid var(--ink);background:var(--paper);flex-direction:column;width:220px;display:flex;position:absolute;top:48px;right:12px}.menu-pop>button{background:var(--paper);text-align:left;cursor:pointer;border:0;min-height:44px;padding:0 12px;font-size:14px}.menu-pop>button+button{border-top:1px solid var(--line)}.grind-callout{border-left:3px solid var(--copper);background:var(--copper-bg);color:var(--copper-ink);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.grind-callout .big{color:var(--ink);overflow-wrap:anywhere;font-size:30px;line-height:1.15}.step-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.step-list>li{border-top:1px solid var(--line);grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.step-list .no{border:1px solid var(--line);width:24px;height:24px;font-family:var(--mono);color:var(--sub);justify-content:center;align-items:center;font-size:12px;display:flex}.step-list .no.pour{border-color:var(--copper);color:var(--copper-ink)}.bean-row{grid-template-columns:64px 1fr auto;align-items:center;gap:12px;display:grid}.bean-row-text{min-width:0;color:inherit;flex-direction:column;gap:2px;text-decoration:none;display:flex}.brew-adjust>*{gap:6px}.brew-adjust .stepper{border-color:var(--ink)}.brew-adjust-fixed{align-items:center;min-height:46px;display:flex}.brew-check{border:0;border-top:1px solid var(--line);min-height:48px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:0;font-size:14px;display:flex}.brew-check .box{border:1px solid var(--ink);flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;display:flex}.brew-check[aria-pressed=true]{color:var(--sub)}.brew-check[aria-pressed=true] .box{background:var(--ink);color:#fff}.foot-bar .btn-big{min-height:56px}.screen.live{background:var(--paper)}.live-stepno{letter-spacing:.12em;font-size:13px}.live-progress{padding:0 var(--pad)}.live-now{margin:18px var(--pad) 0;border-left:4px solid var(--copper);flex-direction:column;gap:8px;padding:4px 0 0 14px;display:flex}.live-now-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.live-action{font-size:28px;font-weight:700;line-height:1.2}.live-left{color:var(--copper-ink);white-space:nowrap;font-size:13px}.live-left .mono{font-size:18px}.live-bar{background:#c8642f33;height:4px;display:block;position:relative}.live-bar>span{background:var(--copper);position:absolute;inset:0 auto 0 0}.live-chart{padding:14px var(--pad) 0}.live-wait{padding:56px var(--pad) 48px;flex-direction:column;align-items:center;gap:8px;display:flex}.live-wait .k{color:var(--sub);letter-spacing:.12em;font-size:11px}.live-wait-big{font-size:96px;line-height:1}.live-next{margin:12px var(--pad) 0;border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:14px;display:flex}.live-next-label{flex:1;font-weight:700}.live-paused{margin:0 var(--pad)}.stars.rate button{border-color:var(--line);color:#c9c0b4;min-height:48px;font-size:24px}.stars.rate button[aria-pressed=true]{border-color:var(--copper);background:var(--copper-bg);color:var(--copper)}.post-band{background:var(--copper-bg);color:var(--copper-ink);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex}.post-band .btn{flex:none;min-height:44px}.screen.brew-screen{padding-bottom:0}.cover-overlay{z-index:1;padding:6px var(--pad) 12px;color:#fff;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.cover-overlay.shade{background:linear-gradient(#0000000d 40%,#0006)}.cover-name{letter-spacing:.04em;font-size:20px;font-weight:700;line-height:1.3}.search-box{background:var(--paper);min-height:44px;color:var(--sub);border:1px solid #c9c0b4;align-items:center;gap:8px;padding:0 12px;display:flex}.search-box input{min-width:0;min-height:42px;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:0;font-size:16px}.search-box:focus-within{border-color:var(--ink)}.shop-card{color:inherit;flex-direction:column;gap:8px;text-decoration:none;display:flex}.bean-line{border-top:1px solid var(--line);min-height:40px;color:inherit;align-items:center;gap:12px;margin:0;padding:12px 0;text-decoration:none;display:flex}.sales-badge{white-space:nowrap;color:var(--sub);border:1px solid #c9c0b4;flex:none;padding:1px 6px;font-size:10px}.sales-badge.online{border-color:var(--copper-bg);background:var(--copper-bg);color:var(--copper-ink)}.sales-badge.sold_out{background:#efeae3;border-color:#efeae3}.hcards{margin:0 calc(var(--pad) * -1);padding:0 var(--pad) 2px;gap:10px;display:flex;overflow-x:auto}.hcard{width:132px;color:inherit;flex-direction:column;flex:none;gap:5px;text-decoration:none;display:flex}.quick-btns{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.quick-btns>a,.quick-btns>button{border:1px solid var(--line);background:var(--paper);min-height:52px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 6px;font-size:14px;text-decoration:none;display:flex}.quick-btns>button:disabled{color:var(--faint);cursor:default}.sec-h button.note-r{min-height:40px;margin:-12px 0}.link-btn{min-height:40px;color:var(--sub);cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:13px;text-decoration:underline}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rcp-row{border-top:1px solid var(--line);position:relative}.rcp-main{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:12px 0;display:flex}.rcp-main:disabled{cursor:default}.rcp-thumb{background:var(--warm);flex:none;display:block}.rcp-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rcp-name{align-items:baseline;gap:6px;min-width:0;display:flex}.rcp-name strong{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.rcp-right{flex-direction:column;flex:none;align-self:stretch;align-items:flex-end;gap:6px;padding-bottom:30px;display:flex}.rcp-more{min-width:56px;min-height:40px;color:var(--sub);justify-content:flex-end;align-items:center;font-size:12px;display:flex;position:absolute;bottom:4px;right:0}.shop-badge{color:#fff;background:var(--shop);flex:none;padding:0 5px;font-size:10px}.app.ob{background:var(--paper)}.ob-bar{align-items:center;gap:4px;min-height:52px;padding:4px 8px;display:flex}.ob-progress{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:0 8px;display:grid}.ob-progress>span{background:var(--line);height:4px;display:block}.ob-progress>span.done{background:var(--ink)}.ob-skip{min-width:44px;min-height:44px;color:var(--sub);cursor:pointer;background:0 0;border:0;padding:0 8px;font-size:13px}.ob-body{padding:8px var(--pad) calc(20px + env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:14px;display:flex}.ob-title{margin:0;font-size:22px;font-weight:700;line-height:1.45}.ob-bean{background:var(--ground);align-items:center;gap:14px;padding:12px;display:flex}.ob-points{flex-direction:column;gap:14px;margin:0;padding:0;font-size:15px;list-style:none;display:flex}.ob-points li{align-items:center;gap:12px;display:flex}.ob-points li>.mono{background:var(--shop);color:#fff;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;display:flex}.ob-foot{flex-direction:column;gap:10px;margin-top:auto;padding-top:8px;display:flex}.ob-foot .btn-big{min-height:56px;font-size:17px}.ob-preview{background:var(--copper-bg);color:var(--copper-ink);padding:10px 12px;font-size:13px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.choice-grid .choice{text-align:center;justify-content:center;padding:6px 10px;font-size:14px}.choice-grid .choice[aria-pressed=true]{padding:5px 9px}.ob-more{min-height:44px;color:var(--sub);cursor:pointer;background:0 0;border:0;grid-column:1/-1;font-size:13px;text-decoration:underline}.ob-lines{border-bottom:1px solid var(--line);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ob-lines li{border-top:1px solid var(--line);gap:10px;padding:10px 0;font-size:14px;display:flex}.ob-lines li>span{width:14px;color:var(--sub);flex:none}html,body,.app{background:var(--base)}.app .screen{background:radial-gradient(120% 60% at 0% 0%, var(--g1) 0%, transparent 60%), radial-gradient(90% 50% at 100% 18%, var(--g2) 0%, transparent 60%), radial-gradient(120% 60% at 50% 100%, var(--g3) 0%, transparent 65%), var(--base)}.app .screen-head,.app .screen-bar{background:0 0}.app .screen-title{letter-spacing:.02em;font-size:28px}.app .sec{border:1px solid var(--glass-line);background:#ffffffc7;border-radius:22px;margin:12px 14px 0;padding:16px 18px;box-shadow:0 10px 30px #46230f14}.app .sec.flush{margin-top:12px}.app .sec.plain{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:0}.app .sec-h h2{font-size:18px}.app .tiles{background:0 0;border:0;gap:8px}.app .tiles>*{background:#ffffffbf;border:1px solid #ffffffe6;border-radius:14px}.app .tiles .v{font-size:20px;font-weight:600}.app .btn{border:1px solid var(--soft-line);background:#fffc;border-radius:14px}.app .btn-primary,.app .btn-shop{background:var(--grad);color:#fff;border:0}.app .btn-big{border-radius:18px}.app .btn-primary.btn-big,.app .btn-shop.btn-big{box-shadow:0 10px 22px var(--a-glow)}.app .btn-quiet{border-color:var(--soft-line);background:#fff9}.app .btn-pair{gap:8px}.app .btn-pair>.btn+.btn{border-left:1px solid var(--soft-line)}.app .btn-pair>.btn-primary+.btn,.app .btn-pair>.btn+.btn-primary{border-left:0}.app .chip{background:#fffc;border:1px solid #2b1d161a;border-radius:999px}.app .chip[aria-pressed=true]{background:var(--a-soft);color:var(--a-ink);border-color:#0000;font-weight:700}.app .chip-scroll .chip{border-color:#2b1d161a}.app .chip-scroll .chip[aria-pressed=true]{border-color:#0000}.app .badge,.app .tag,.app .sales-badge,.app .shop-badge{background:var(--a-soft);color:var(--a-ink);border-color:#0000;border-radius:999px}.app .seg{border:1px solid var(--soft-line);border-radius:14px;overflow:hidden}.app .seg button+button{border-left-color:var(--soft-line)}.app .seg button[aria-pressed=true]{background:var(--grad)}.app .field input,.app .field select,.app .field textarea,.app .input,.app .suffix-input,.app .stepper,.app .search-box{background:#ffffffb3;border:1px solid #fffc;border-radius:14px}.app .stepper{overflow:hidden}.app .stepper button{background:0 0}.app .stepper button:first-child,.app .stepper button:last-child{border-color:var(--soft-line)}.app .check input{border-color:var(--soft-line);border-radius:7px}.app .check input:checked{background:var(--grad)}.app .choice{background:#ffffffbf;border-radius:16px}.app .choice[aria-pressed=true]{border-color:var(--a1)}.app .stars button{border-color:var(--soft-line);background:#ffffffbf;border-radius:14px}.app .stars button[aria-pressed=true],.app .stars.rate button[aria-pressed=true]{border-color:var(--a1);background:var(--a-soft);color:var(--a1)}.app .switch{background:#0000001f;border-radius:16px;width:50px;height:30px}.app .switch:after{border-radius:50%;width:24px;height:24px;box-shadow:0 2px 6px #0000002e}.app [aria-pressed=true]>.switch{background:var(--grad)}.app [aria-pressed=true]>.switch:after{left:23px}.app .gen-cover,.app .photo-cover,.app .post-mini-media,.app .rcp-thumb,.app .thumb{border-radius:14px}.app .screen>.gen-cover:first-child,.app .screen>.photo-cover:first-child,.app .post-photo{border-radius:0 0 28px 28px}.app .avatar{border-radius:50%}.app .post-mini{border:1px solid var(--glass-line);background:#ffffffc7;border-radius:22px;margin:12px 14px 0;padding-bottom:6px;overflow:hidden;box-shadow:0 10px 30px #46230f14}.app .utabs{background:#ffffff8c;border-bottom:0;border-radius:999px;gap:0;margin:6px 0 8px;padding:4px;position:relative;overflow:hidden}.app .utabs button{z-index:1;border:0;border-radius:999px;flex:1;min-height:34px;margin:0;padding:0 10px;font-size:13px;transition:color .3s;position:relative}.app .utabs button[aria-selected=true]{color:var(--a1)}.app .utabs .seg-glass{background:linear-gradient(#fffffff2,#fff9);background-color:color-mix(in srgb, var(--a1) 12%, transparent);border:1px solid #fffffff2;border-radius:999px;transition:left .45s cubic-bezier(.3,1.3,.5,1),width .3s;position:absolute;top:4px;bottom:4px;box-shadow:inset 0 1px 1px #fff,0 4px 12px #28140a1f}.app .utabs-bar{background:0 0;margin:12px 14px 0;padding:0}.app .utabs-bar .utabs{margin:0}.app .foot-bar,.app .cta-bar{border-top:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);background:#ffffffb8}.app .cta-bar{bottom:calc(84px + env(safe-area-inset-bottom));-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0;border:0;margin:0;padding:0 14px 10px}.app .cta-bar>*{pointer-events:auto}.app .sheet{border-radius:28px 28px 0 0}.app .toast-float{bottom:calc(92px + env(safe-area-inset-bottom));background:var(--a1);border-radius:16px}.app .live-now{background:var(--a-soft);border-left:0;border-radius:18px;padding:14px 16px}.app .progress span,.app .ob-progress>span,.app .live-bar,.app .live-bar>span{border-radius:99px}.app .progress span.now,.app .ob-progress>span.done{background:var(--grad)}.app .quick-btns>a,.app .quick-btns>button,.app .me-buttons a{color:var(--a-ink);background:#ffffffbf;border:0;border-radius:18px;font-weight:700;box-shadow:0 6px 16px #46230f0f}.app .segments span{border-radius:3px}.app-main.with-tabs{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.app .tabbar-float{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:8;border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px)saturate(170%);backdrop-filter:blur(20px)saturate(170%);clip-path:inset(0 round 30px);background:#fff9;border-radius:30px;grid-template-columns:repeat(5,minmax(0,1fr));width:min(496px,100% - 24px);padding:4px;transition:clip-path .4s cubic-bezier(.3,1.1,.5,1);display:grid;position:fixed;transform:translate(-50%);box-shadow:inset 0 1px #fffc,0 10px 30px #28140a29}.app .tabbar-float.compact{clip-path:inset(0 calc((100% - 8px) / 5 * (4 - var(--i)) + 1px) 0 calc((100% - 8px) / 5 * var(--i) + 1px) round 30px)}.app .tabbar-float a{z-index:1;min-width:0;min-height:50px;color:var(--sub);letter-spacing:-.02em;white-space:nowrap;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:10px;text-decoration:none;transition:color .3s,transform .15s;display:flex;position:relative;overflow:hidden}.app .tabbar-float a.active{color:var(--a1);font-weight:700}.app .tab-glass{background:linear-gradient(#ffffffd9,#ffffff73);background-color:color-mix(in srgb, var(--a1) 16%, transparent);-webkit-backdrop-filter:blur(6px)saturate(200%);backdrop-filter:blur(6px)saturate(200%);box-shadow:inset 0 1px 1px #fff, inset 0 -8px 14px color-mix(in srgb, var(--a1) 10%, transparent), 0 6px 16px #28140a24;border:1px solid #fffffff2;border-radius:26px;transition:left .5s cubic-bezier(.34,1.4,.64,1);animation-duration:.5s;animation-timing-function:ease-out;position:absolute;top:4px;bottom:4px}@keyframes glass-move-0{0%{transform:scale(1.18,.86)}55%{transform:scale(.96,1.05)}to{transform:scale(1)}}@keyframes glass-move-1{0%{transform:scale(1.18,.86)}55%{transform:scale(.96,1.05)}to{transform:scale(1)}}@keyframes glass-move-2{0%{transform:scale(1.18,.86)}55%{transform:scale(.96,1.05)}to{transform:scale(1)}}@keyframes glass-move-3{0%{transform:scale(1.18,.86)}55%{transform:scale(.96,1.05)}to{transform:scale(1)}}@keyframes glass-move-4{0%{transform:scale(1.18,.86)}55%{transform:scale(.96,1.05)}to{transform:scale(1)}}.app .top-glass{z-index:7;width:min(520px,100%);height:calc(48px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);color:var(--ink);pointer-events:none;opacity:0;background:#ffffff9e;justify-content:center;align-items:center;font-size:15px;font-weight:700;transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .25s;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%,-100%)}.app .top-glass.show{opacity:1;transform:translate(-50%)}.app button,.app .btn{transition:transform .15s cubic-bezier(.2,.8,.2,1)}.app button:not(.sec):not(.switch-row):active,.app .btn:not(.btn-block):active,.app .tabbar-float a:active{transform:scale(.96)}.app .like-btn{position:relative}.app .like-btn .steam{pointer-events:none;width:16px;height:16px;position:absolute;top:-2px;left:2px}.app .like-btn .steam i{background:var(--a1);opacity:0;border-radius:3px;width:3px;height:10px;position:absolute;bottom:0}.app .like-btn .steam i:first-child{left:2px}.app .like-btn .steam i:nth-child(2){left:7px}.app .like-btn .steam i:nth-child(3){left:12px}.app .like-btn.pop .steam i{animation:.8s ease-out both steam}.app .like-btn.pop .steam i:nth-child(2){animation-delay:80ms}.app .like-btn.pop .steam i:nth-child(3){animation-delay:.16s}.app .like-btn.pop svg{animation:.4s cubic-bezier(.3,1.5,.5,1) both cup-pop}@keyframes steam{0%{opacity:0;transform:translateY(4px)scaleY(.6)}25%{opacity:.9}to{opacity:0;transform:translateY(-16px)scaleY(1.2)}}@keyframes cup-pop{0%{transform:scale(.8)}60%{transform:scale(1.15)}to{transform:scale(1)}}.app .streak{background:var(--a-soft);color:var(--a-ink);border-radius:999px;align-items:center;gap:4px;padding:3px 9px 3px 7px;font-size:12px;font-weight:700;display:inline-flex}@property --n{syntax:"<integer>";inherits:false;initial-value:0}.app .count{counter-reset:n var(--n);animation:.9s cubic-bezier(.2,.8,.2,1) both count-up}.app .count:after{content:counter(n)}@keyframes count-up{0%{--n:0}}.app .bento{grid-template-columns:1.25fr 1fr 1fr;gap:8px;display:grid}.app .bento>span{background:#ffffffbf;border:1px solid #ffffffe6;border-radius:14px;flex-direction:column;gap:2px;min-width:0;padding:12px;display:flex}.app .bento .k{color:var(--sub);letter-spacing:.12em;font-size:10px}.app .bento .v{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.app .bento .big{background:var(--a-soft);min-height:124px;color:var(--a-ink);grid-row:1/3;justify-content:space-between}.app .bento .big .v{color:var(--a1);font-size:44px;line-height:1}.app .bento .wide{grid-column:2/4}html.motion-calm .like-btn .steam i,html.motion-calm .like-btn svg,html.motion-calm .count,html.motion-off .like-btn .steam i,html.motion-off .like-btn svg,html.motion-off .count{animation:none!important}html.motion-off *,html.motion-off :before,html.motion-off :after{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.app .bean-tagline{margin:0;font-size:16px;font-weight:700;line-height:1.6}.app .flavor-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.app .flavor-chip{background:var(--a-soft);color:var(--a-ink);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}.app .taste-bars{grid-template-columns:40px 1fr;align-items:center;gap:6px 10px;display:grid}.app .taste-track{background:#2b1d1614;border-radius:99px;height:8px;display:block;overflow:hidden}.app .taste-fill{background:var(--grad);border-radius:99px;height:100%;display:block}.app .bean-story{white-space:pre-line;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.85;display:-webkit-box;overflow:hidden}.app .bean-story.open{display:block}.app .recipe-cards{scrollbar-width:none;gap:8px;margin:0 -18px;padding:2px 18px 6px;display:flex;overflow-x:auto}.app .recipe-cards::-webkit-scrollbar{display:none}.app .recipe-card{min-width:136px;max-width:200px;min-height:56px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffffd9;border:1px solid #2b1d161a;border-radius:16px;flex-direction:column;flex:none;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.app .recipe-card strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;overflow:hidden}.app .recipe-card span{color:var(--sub);font-size:11px}.app .recipe-card[aria-checked=true]{border-color:var(--a1);background:var(--a-soft);box-shadow:0 4px 12px var(--a-glow)}.app .recipe-card[aria-checked=true] strong{color:var(--a1)}.app .live-count{z-index:40;padding:24px var(--pad) calc(24px + env(safe-area-inset-bottom));background:#f7f2ecf5;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}.app .live-count-intro{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.app .live-count-intro strong{font-size:40px;line-height:1.2}.app .live-count-intro .mono{color:var(--a-ink);font-size:24px}.app .live-count-n{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:160px;font-weight:700;line-height:1;animation:.45s cubic-bezier(.3,1.3,.5,1) count-pop}@keyframes count-pop{0%{opacity:0;transform:scale(1.35)}to{opacity:1;transform:scale(1)}}.app .live-count-actions{grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:420px;margin-top:24px;display:grid}.app .live-guide-note{top:calc(56px + env(safe-area-inset-top));z-index:41;background:var(--a1);color:#fff;white-space:nowrap;border-radius:999px;padding:6px 14px;font-size:13px;position:fixed;left:50%;transform:translate(-50%)}.admin{background:var(--paper);flex-wrap:wrap;min-height:100dvh;display:flex}.admin-nav{border-right:1px solid var(--ink);flex-direction:column;flex:220px;gap:6px;padding:24px 20px;display:flex}.admin-nav a{padding:10px 12px;font-size:14px;text-decoration:none;display:block}.admin-nav a.active{background:var(--ink);color:var(--paper);font-weight:700}.admin-main{flex-direction:column;flex:999 560px;gap:18px;min-width:0;max-width:1120px;padding:28px 32px 48px;display:flex}@media (width<=760px){.admin-nav{border-right:0;border-bottom:1px solid var(--ink)}.admin-main{padding:20px 16px 40px}}.admin h1{font-size:28px;font-weight:700}.split{flex-wrap:wrap;align-items:flex-start;gap:32px;display:flex}.split>.main-col{flex-direction:column;flex:999 480px;gap:16px;min-width:0;display:flex}.split>.side-col{flex-direction:column;flex:290px;gap:12px;display:flex}.section-label{color:var(--sub);letter-spacing:.14em;border-top:1px solid var(--ink);padding-top:12px;font-size:11px}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--sub);letter-spacing:.14em;border-bottom:1px solid var(--ink);padding:8px 8px 8px 0;font-size:11px;font-weight:400}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 8px 10px 0}.funnel{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.funnel>div{flex-direction:column;gap:4px;padding:4px 16px;display:flex}.funnel>div:first-child{padding-left:0}.funnel>div+div{border-left:1px solid var(--line)}.funnel .n{font-family:var(--mono);font-size:44px;line-height:1.1}.hbar{grid-template-columns:96px 1fr 40px;align-items:center;gap:8px;font-size:13px;display:grid}.hbar .track{background:var(--track);height:10px}.hbar .fill{background:var(--ink);height:10px;display:block}.grid3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px;display:grid}.preview-card{border:1px solid var(--ink);flex-direction:column;display:flex}.preview-card .band{justify-content:flex-end;height:96px;padding:10px 14px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.swatches{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;display:grid}.swatches button{border:1px solid var(--line);cursor:pointer;border-radius:0;height:40px}.swatches button[aria-pressed=true]{border:3px solid var(--ink)}.qr-label{border:1px solid var(--ink);background:#fff;align-items:center;gap:16px;padding:18px;display:flex}.qr-label img{width:120px;height:120px;image-rendering:pixelated}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{position:absolute;top:0;left:0}}
