@font-face{font-family:Gloock;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/gloock-latin-400-normal-DFN7alGW.woff2) format("woff2"),url(/assets/gloock-latin-400-normal-Aj3esJP-.woff) format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-400-normal-DCh3z3eG.woff2) format("woff2"),url(/assets/figtree-latin-400-normal-Cmu7UqQt.woff) format("woff")}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-600-normal-BD_wgCWh.woff2) format("woff2"),url(/assets/figtree-latin-600-normal-BQwd_lqE.woff) format("woff")}:root{--bg:#1c1220;--surface:#28192d;--raise:#34223a;--line:#4a3350;--fg:#f3e7ee;--muted:#b9a2b4;--accent:#e8a07f;--accent-ink:#2a1610;--rose:#d76d8f;--paper:#ffffff;--display:"Gloock", Georgia, "Times New Roman", serif;--body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:15px;line-height:1.5;-webkit-tap-highlight-color:transparent;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}[hidden]{display:none!important}.app{max-width:520px;margin:0 auto;padding-block:calc(env(safe-area-inset-top,0px) + 20px) calc(env(safe-area-inset-bottom,0px) + 40px);display:flex;flex-direction:column;gap:18px}.view{display:flex;flex-direction:column;gap:18px}header{display:flex;align-items:center;justify-content:space-between;gap:12px}h1{font-family:var(--display);font-weight:400;font-size:28px;margin:0;letter-spacing:.01em}h1 span{color:var(--accent)}.welcome{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:radial-gradient(120% 80% at 50% 100%,#3a1f3a 0%,var(--bg) 60%);display:grid;place-items:center;padding:24px max(16px,env(safe-area-inset-left,0px)) 24px max(16px,env(safe-area-inset-right,0px));transition:opacity .4s ease}.welcome.out{opacity:0;pointer-events:none}.welcome>div{width:100%;max-width:340px;display:flex;flex-direction:column;gap:18px;text-align:center}.wordmark{font-size:clamp(56px,18vw,84px);line-height:1}.welcome p{color:var(--muted);margin:0 0 18px;font-variant-numeric:tabular-nums}nav{display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border-radius:999px;padding:4px}nav button{background:none;border:0;color:var(--muted);font:600 14px var(--body);padding:10px 0;border-radius:999px;cursor:pointer}nav button[aria-selected=true]{background:var(--raise);color:var(--fg)}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.45;cursor:not-allowed}.label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 8px}.filters{display:flex;flex-direction:column;gap:12px}.row{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:none;color:var(--fg);font:500 13px var(--body);padding:7px 13px;border-radius:999px;cursor:pointer}.chip[aria-pressed=true]{background:var(--fg);color:var(--bg);border-color:var(--fg)}.pool{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.card{background:var(--surface);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:14px}.art{background:var(--paper);border-radius:16px;aspect-ratio:16/10;overflow:hidden;display:grid;place-items:center}.art img{width:100%;height:100%;object-fit:contain}.card h2{font-family:var(--display);font-weight:400;font-size:32px;line-height:1.1;margin:0;text-wrap:balance}.card p{margin:0;opacity:.9;max-width:62ch}.badges{display:flex;flex-wrap:wrap;gap:6px}.badge{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--raise);color:var(--muted)}.badge.tried{color:var(--accent)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ghost{background:none;border:1px solid var(--line);color:var(--fg);font:600 14px var(--body);padding:11px;border-radius:12px;cursor:pointer}.ghost.small{padding:6px 12px;font-size:13px}.ghost[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.spin{background:var(--accent);color:var(--accent-ink);border:0;font:600 17px var(--body);padding:16px;border-radius:16px;cursor:pointer;width:100%}.spin:active{transform:scale(.98)}.card.flip{animation:flip .35s ease}@keyframes flip{0%{opacity:0;transform:translateY(8px) rotate(-1deg)}to{opacity:1;transform:none}}.list{display:flex;flex-direction:column;gap:2px}.item{display:flex;align-items:center;gap:12px;background:none;border:0;border-bottom:1px solid var(--line);color:var(--fg);padding:12px 2px;text-align:left;font:500 15px var(--body);cursor:pointer;width:100%}.thumb{width:52px;height:38px;flex:none;border-radius:8px;background:var(--paper);overflow:hidden}.thumb img{width:100%;height:100%;object-fit:contain;display:block}.item .nm{flex:1;min-width:0}.item .meta{font-size:12px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{background:var(--surface);border-radius:14px;padding:14px}.stat b{display:block;font-family:var(--display);font-weight:400;font-size:28px;font-variant-numeric:tabular-nums}.stat span{font-size:12px;color:var(--muted)}.empty{color:var(--muted);font-size:14px;padding:12px 0}.link{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:13px var(--body)}.confirm{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--muted)}.flows{display:flex;flex-direction:column;gap:10px}.flow{background:var(--surface);border:1.5px solid transparent;border-radius:18px;padding:16px;text-align:left;color:var(--fg);font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:8px;width:100%}.flow[aria-pressed=true]{border-color:var(--accent)}.flow .top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.flow b{font-family:var(--display);font-weight:400;font-size:22px}.flow .len{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.flow p{margin:0;font-size:14px;color:var(--muted)}.fthumbs{display:flex;gap:4px;overflow:hidden}.fthumbs span{width:36px;height:26px;flex:none;border-radius:5px;background:var(--paper);overflow:hidden}.fthumbs img{width:100%;height:100%;object-fit:contain;display:block}.fthumbs .shuffled{background:var(--raise);width:auto;padding:0 10px;font-size:12px;line-height:26px;color:var(--muted)}.flow.locked{opacity:.6;cursor:default}.flow.locked .needs{font-size:12px;color:var(--rose)}.panel{background:var(--surface);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:14px}.setting{display:flex;flex-direction:column;gap:8px}.setting .head{display:flex;justify-content:space-between;align-items:baseline}.setting .head span{font-size:14px;font-weight:600}.setting .head output{font-family:var(--display);font-size:22px;font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--accent)}.hint{font-size:12px;color:var(--muted);margin:0}.session{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:var(--bg);overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:calc(env(safe-area-inset-top,0px) + 12px) max(16px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 16px) max(16px,env(safe-area-inset-left,0px))}.session>*,#sLive>*{width:100%;max-width:520px;margin-inline:auto}.sbar{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.sbar .end{background:none;border:1px solid var(--line);color:var(--muted);font:600 13px var(--body);padding:6px 14px;border-radius:999px;cursor:pointer}.stage{flex:1;min-height:0;background:var(--paper);border-radius:22px;overflow:hidden;display:grid;place-items:center}.stage img{width:100%;height:100%;object-fit:contain;opacity:.92}.stage.swap img{animation:fadein .5s ease}@keyframes fadein{0%{opacity:0}to{opacity:.92}}.now{display:flex;align-items:center;justify-content:space-between;gap:14px}.now h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,9vw,44px);line-height:1.05;margin:0;text-wrap:balance;min-width:0}.ring{position:relative;width:84px;height:84px;flex:none}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring .track{stroke:var(--raise)}.ring .bar{stroke:var(--accent);transition:stroke-dashoffset .3s linear}.ring.warn .bar{stroke:var(--rose)}.ring.paused .bar{stroke:var(--muted)}.ring time{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:600 18px var(--body);font-variant-numeric:tabular-nums}.next{display:flex;align-items:center;gap:12px;background:var(--surface);border:1.5px solid transparent;border-radius:16px;padding:10px 12px;min-height:66px;transition:border-color .3s,background .3s}.next .thumb{width:62px;height:46px}.next .nl{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.next .nn{font-size:18px;font-weight:600;line-height:1.2}.next.soon{border-color:var(--rose);background:var(--raise)}.next.soon .nl{color:var(--rose)}.controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.controls button{min-height:64px;border-radius:16px;font:600 16px var(--body);cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--fg)}.controls .go{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.done{flex:1;display:flex;flex-direction:column;justify-content:center;gap:16px;text-align:center}.done h2{font-family:var(--display);font-weight:400;font-size:40px;margin:0}.done p{margin:0;color:var(--muted);font-variant-numeric:tabular-nums}.done .actions{max-width:360px;margin-inline:auto;width:100%}.note{font-size:12px;color:var(--muted);text-align:center;margin:0}@media (orientation:landscape) and (max-height:560px){.session{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:auto 1fr auto auto auto;column-gap:20px;row-gap:10px}.session>*,#sLive>*{max-width:none;margin-inline:0}.sbar,.done{grid-column:1/-1}.stage{grid-column:1;grid-row:2/6;min-height:180px}.now{grid-column:2;grid-row:2;align-self:end}.next{grid-column:2;grid-row:3;min-height:58px;padding:8px 10px}.controls{grid-column:2;grid-row:4}.note{grid-column:2;grid-row:5}.now h2{font-size:clamp(26px,5vw,36px)}.ring{width:68px;height:68px}.ring time{font-size:16px}.next .thumb{width:52px;height:38px}.controls button{min-height:52px;font-size:15px}}@media (prefers-reduced-motion:reduce){.card.flip,.stage.swap img{animation:none}.ring .bar,.welcome{transition:none}}
