.o-app{--o-cream: #f5ead8;--o-cream-2: #ecdbc1;--o-card: #fffaf1;--o-ink: #2c1d12;--o-ink-2: #826b55;--o-line: #e7d7be;--o-amber: #c9853a;--o-amber-2: #ad6c26;--o-espresso: #29190f;--o-rose: #b5564a;--o-shadow: 28px 30px 60px -28px rgba(74, 45, 18, .45);--o-shadow-sm: 0 10px 22px -12px rgba(74, 45, 18, .38)}body:has(.o-app){background:radial-gradient(120% 80% at 50% -10%,#fbf3e4 0%,var(--o-cream) 42%,var(--o-cream-2) 100%) fixed;color:var(--o-ink)}.o-app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E")}.o-app{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column;color:var(--o-ink)}.o-banner{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));background:linear-gradient(180deg,#fff6e8,#fbe9cf);border-bottom:1px solid var(--o-line);box-shadow:0 8px 18px -16px #4a2d1299}.o-banner-ic{font-size:20px;line-height:1}.o-banner-tx{flex:1;margin:0;font-size:12.5px;line-height:1.35;color:#5a4127}.o-banner-tx b{color:var(--o-espresso);font-weight:700}.o-share{display:inline-block;padding:0 5px;border:1px solid var(--o-amber);border-radius:6px;color:var(--o-amber-2);font-weight:700}.o-banner-x{flex:none;width:26px;height:26px;border:none;border-radius:50%;background:#7856281a;color:#8a6a3e;font-size:12px;cursor:pointer}.o-banner-x:active{transform:scale(.92)}.o-banner-link{border:none;background:none;padding:0;font:inherit;font-weight:700;color:var(--o-amber-2);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.o-guide-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:#28190c6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.o-guide{width:min(360px,100%);background:var(--o-cream);border:1px solid rgba(255,255,255,.6);border-radius:18px;padding:18px 20px 22px;box-shadow:0 24px 60px -18px #28190c99}.o-guide-h{display:flex;align-items:center;justify-content:space-between;font-family:Fraunces,serif;font-weight:600;font-size:18px;color:var(--o-espresso);margin-bottom:14px}.o-guide-steps{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:12px;font-size:14.5px;line-height:1.4;color:#5a4127}.o-guide-steps b{color:var(--o-espresso)}.o-guide-steps li::marker{color:var(--o-amber-2);font-weight:700}.o-stage{width:100%;max-width:480px;margin:0 auto;padding:22px 20px calc(36px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px;animation:o-rise .5s cubic-bezier(.2,.8,.25,1) both}.o-stage-center{justify-content:center;min-height:100dvh;text-align:center}@media (display-mode: standalone){.o-stage{padding-top:max(22px,calc(env(safe-area-inset-top) + 10px))}}@keyframes o-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.o-head{text-align:center;align-self:center;max-width:100%;padding:16px 22px;border-radius:22px;background:#fffaf1d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.55);box-shadow:var(--o-shadow)}.o-kicker{font-family:DM Mono,monospace;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--o-amber-2)}.o-title{margin-top:4px;font-family:Fraunces,serif;font-weight:600;font-size:clamp(28px,8vw,38px);line-height:1.04;letter-spacing:-.01em;color:var(--o-espresso);text-shadow:0 0 22px var(--o-cream),0 0 22px var(--o-cream)}.o-closed-sub{margin-top:12px;font-family:Fraunces,serif;font-weight:500;font-size:clamp(18px,5vw,23px);color:var(--o-espresso);text-shadow:0 0 18px var(--o-cream),0 0 18px var(--o-cream),0 0 18px var(--o-cream)}.o-beans{position:fixed;top:0;left:0;width:100%;height:100vh;height:100lvh;z-index:0;pointer-events:none}.o-beans canvas{display:block;width:100%;height:100%}.o-stage,.o-status{position:relative;z-index:1}.o-sub{margin-top:8px;font-size:14px;color:var(--o-ink-2)}.o-sub-warn{color:var(--o-amber-2);font-weight:600}.o-motion{margin-top:12px;padding:11px 18px;border:none;border-radius:999px;background:linear-gradient(165deg,#d99a4d,var(--o-amber-2));color:#2a1709;font-family:Hanken Grotesk,sans-serif;font-weight:700;font-size:14px;box-shadow:0 12px 22px -12px #ad6c26cc;cursor:pointer;transition:transform .14s ease}.o-motion:active{transform:scale(.96)}.o-menu{display:grid;grid-template-columns:1fr 1fr;gap:12px}.o-pill{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:16px 16px 14px;border:1.5px solid var(--o-line);border-radius:20px;background:var(--o-card);box-shadow:var(--o-shadow-sm);cursor:pointer;text-align:left;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.o-pill{animation:o-rise .42s cubic-bezier(.2,.8,.25,1) backwards}.o-pill:nth-child(1){animation-delay:.04s}.o-pill:nth-child(2){animation-delay:.09s}.o-pill:nth-child(3){animation-delay:.14s}.o-pill:nth-child(4){animation-delay:.19s}.o-pill:nth-child(5){animation-delay:.24s}.o-pill:nth-child(6){animation-delay:.29s}.o-pill:active{transform:scale(.97)}.o-pill.on:active{transform:translateY(-2px) scale(.97)}@media (prefers-reduced-motion: reduce){.o-pill{animation:none}}.o-pill-em{font-size:22px;line-height:1}.o-pill-nm{font-family:Fraunces,serif;font-weight:600;font-size:18px;color:var(--o-espresso);margin-top:4px}.o-pill-sub{font-family:DM Mono,monospace;font-size:11px;letter-spacing:.04em;color:var(--o-ink-2)}.o-pill.on{background:linear-gradient(165deg,#d99a4d,var(--o-amber-2));border-color:var(--o-amber-2);box-shadow:0 16px 30px -14px #ad6c26b3;transform:translateY(-2px)}.o-pill.on .o-pill-nm{color:#2a1709}.o-pill.on .o-pill-sub{color:#5a3a16}.o-milk-reveal{display:grid;grid-template-rows:0fr;margin-top:-18px;opacity:0;transition:grid-template-rows .36s cubic-bezier(.2,.8,.25,1),margin-top .36s cubic-bezier(.2,.8,.25,1),opacity .28s ease}.o-milk-reveal.open{grid-template-rows:1fr;margin-top:0;opacity:1}.o-milk-reveal-in{overflow:hidden}@media (prefers-reduced-motion: reduce){.o-milk-reveal{transition:none}}.o-milk{display:flex;flex-direction:column;gap:8px}.o-milk-label{font-family:DM Mono,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--o-amber-2);padding-left:2px;text-shadow:0 0 10px var(--o-cream),0 0 10px var(--o-cream),0 1px 1px var(--o-cream)}.o-milk-row{display:flex;gap:12px}.o-milk-opt{flex:1;padding:14px;border:1.5px solid var(--o-line);border-radius:16px;background:var(--o-card);box-shadow:var(--o-shadow-sm);font-family:Hanken Grotesk,sans-serif;font-weight:600;font-size:15px;color:var(--o-ink);cursor:pointer;transition:transform .14s ease,border-color .14s ease,color .14s ease}.o-milk-opt:active{transform:scale(.97)}.o-milk-opt.on{background:linear-gradient(165deg,#d99a4d,var(--o-amber-2));border-color:var(--o-amber-2);color:#2a1709}.o-fields{display:flex;flex-direction:column;gap:10px}.o-input{width:100%;padding:15px 16px;border:1.5px solid var(--o-line);border-radius:16px;background:var(--o-card);box-shadow:inset 0 2px 6px #4a2d120f;font-family:Hanken Grotesk,sans-serif;font-size:16px;color:var(--o-ink)}.o-input::placeholder{color:#ab9279}.o-input:focus{outline:none;border-color:var(--o-amber);box-shadow:0 0 0 4px #c9853a29}.o-cta{margin-top:6px;width:100%;padding:20px;border:none;border-radius:22px;background:linear-gradient(165deg,#f0a850,var(--o-amber-2) 60%,#93571c);color:#2a1709;font-family:Fraunces,serif;font-weight:700;font-size:21px;letter-spacing:.01em;text-shadow:0 1px 0 rgba(255,240,215,.35);box-shadow:0 18px 34px -14px #ad6c26d9,inset 0 1px #fff4de8c;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.o-cta:not(:disabled){animation:o-cta-glow 2.4s ease-in-out infinite}@keyframes o-cta-glow{0%,to{box-shadow:0 18px 34px -14px #ad6c26d9,inset 0 1px #fff4de8c,0 0 #c9853a00}50%{box-shadow:0 20px 38px -14px #ad6c26f2,inset 0 1px #fff4de8c,0 0 0 7px #c9853a29}}.o-cta:active:not(:disabled){transform:translateY(2px) scale(.99);animation:none}.o-cta:disabled{opacity:1;cursor:not-allowed;background:var(--o-card);color:var(--o-ink-2);border:1.5px solid var(--o-line);text-shadow:none;box-shadow:var(--o-shadow-sm)}@media (prefers-reduced-motion: reduce){.o-cta:not(:disabled){animation:none}}.o-error{text-align:center;color:var(--o-rose);font-size:14px;font-weight:600;animation:o-rise .3s ease both}.o-loading{font-family:Fraunces,serif;font-size:20px;color:var(--o-ink-2)}.o-status{display:flex;flex-direction:column;align-items:center;gap:4px;max-width:360px;margin:0 auto;padding:30px 26px 26px;border-radius:28px;background:#fffaf1d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);box-shadow:var(--o-shadow);transition:padding .35s ease,max-width .35s ease,border-radius .35s ease}.o-status .o-status-mark,.o-status .o-status-num,.o-status .o-status-num-l,.o-status .o-status-drink,.o-status .o-status-big,.o-status .o-status-eta{transition:font-size .35s ease,margin .35s ease}.o-stage-play{justify-content:flex-start;min-height:100dvh;text-align:center;padding-top:max(22px,calc(env(safe-area-inset-top) + 10px));gap:12px}.o-status-compact{max-width:280px;padding:12px 20px;border-radius:18px}.o-status-compact .o-status-mark{font-size:28px;margin-bottom:2px}.o-status-compact .o-status-num-l{font-size:9px}.o-status-compact .o-status-num{font-size:38px}.o-status-compact .o-status-drink{font-size:12px}.o-status-compact .o-status-state{margin-top:8px}.o-status-compact .o-status-big{font-size:16px}.o-status-compact .o-status-eta{font-size:11px;margin-top:2px}.o-status-compact .o-status-note{display:none}.o-play{align-self:center;margin-top:4px;padding:12px 22px;border:none;border-radius:999px;background:linear-gradient(165deg,#d99a4d,var(--o-amber-2));color:#2a1709;font-family:Hanken Grotesk,sans-serif;font-weight:700;font-size:14px;box-shadow:0 12px 22px -12px #ad6c26cc;cursor:pointer;transition:transform .14s ease}.o-play:active{transform:scale(.96)}.o-play.on{background:#fffaf1d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--o-espresso);border:1px solid rgba(255,255,255,.55);box-shadow:var(--o-shadow-sm)}.o-newcta{align-self:center;margin-top:2px;padding:9px 18px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:#fffaf1d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--o-ink);font-family:Hanken Grotesk,sans-serif;font-weight:600;font-size:13px;cursor:pointer;box-shadow:var(--o-shadow-sm)}.o-newcta:active{transform:scale(.96)}.o-status-mark{font-size:56px;line-height:1;margin-bottom:8px;filter:drop-shadow(0 8px 16px rgba(74,45,18,.25))}.o-status.is-ready .o-status-mark{animation:o-pop 1.4s ease-in-out infinite}@keyframes o-pop{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.12) rotate(-4deg)}}.o-status-num-l{font-family:DM Mono,monospace;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--o-amber-2)}.o-status-num{font-family:Fraunces,serif;font-weight:700;font-size:clamp(54px,18vw,84px);line-height:.95;color:var(--o-espresso);letter-spacing:-.02em}.o-status-drink{font-size:15px;color:var(--o-ink-2);text-transform:capitalize}.o-status-state{margin-top:18px}.o-status-big{font-family:Fraunces,serif;font-weight:600;font-size:26px;color:var(--o-espresso)}.o-status-state.ready .o-status-big{color:var(--o-amber-2)}.o-status-eta{margin-top:4px;font-family:DM Mono,monospace;font-size:14px;color:var(--o-ink-2)}.o-status-note{margin-top:22px;padding:12px 18px;border-radius:999px;background:#c9853a1f;border:1px solid rgba(201,133,58,.28);font-size:13.5px;font-weight:600;color:#7a5326}.o-status.is-ready .o-status-note{background:#4f8f5e24;border-color:#4f8f5e57;color:#3f7a4f}.o-status-spam{margin-top:9px;max-width:30ch;text-align:center;font-size:12px;line-height:1.4;color:var(--o-ink-2)}.o-status-compact .o-status-spam{display:none}
