:root{--gap:20px;--font:"Outfit", system-ui, -apple-system, "Segoe UI", sans-serif;--bg:#e7ebe4;--surface:#fff;--ink:#1c211d;--muted:#717870;--line:#e9ece6;--chip:#f2f4f0;--accent:#25573d;--accent-ink:#fff;--good:#2f8a4c;--ok:#c99a18;--meh:#d56f2a;--bad:#c2412d;--shadow:0 2px 4px #26382c0a, 0 28px 56px -18px #26382c38;--shadow-sm:0 1px 2px #26382c0f, 0 8px 20px -8px #26382c29;--overlay:#18201a73;--r-xl:32px;--r-lg:24px;--r-md:18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d100e;--surface:#171b18;--ink:#eef1ec;--muted:#969e95;--line:#272c28;--chip:#212622;--accent:#6dc195;--accent-ink:#0b1d13;--shadow:0 0 0 1px #ffffff0a, 0 28px 56px -18px #000000b3;--shadow-sm:0 0 0 1px #ffffff0d, 0 8px 20px -8px #0009;--overlay:#000000a8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0d100e;--surface:#171b18;--ink:#eef1ec;--muted:#969e95;--line:#272c28;--chip:#212622;--accent:#6dc195;--accent-ink:#0b1d13;--shadow:0 0 0 1px #ffffff0a, 0 28px 56px -18px #000000b3;--shadow-sm:0 0 0 1px #ffffff0d, 0 8px 20px -8px #0009;--overlay:#000000a8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font:400 15px/1.5 var(--font);-webkit-font-smoothing:antialiased}button,input{color:inherit;font-family:inherit}b,strong{font-weight:600}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{max-width:480px;padding:14px 16px 48px;padding-bottom:calc(48px + env(safe-area-inset-bottom));margin:0 auto}.nav:focus-visible,button:focus-visible,input:focus-visible,a:focus-visible,.carousel:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}header{padding:6px 6px var(--gap);justify-content:space-between;align-items:center;gap:10px;display:flex}.brand{font:600 23px/.95 var(--font);letter-spacing:-.03em}.brand span{color:var(--muted);display:block}.rounds{align-items:center;gap:5px;display:flex}.rounds i{background:color-mix(in srgb, var(--ink) 14%, transparent);border-radius:99px;width:8px;height:8px;transition:background .2s,width .3s cubic-bezier(.2,.9,.3,1.2);display:block}.rounds i.cur{background:var(--ink);width:22px}.rounds i.s-good{background:var(--good)}.rounds i.s-ok{background:var(--ok)}.rounds i.s-meh{background:var(--meh)}.rounds i.s-bad{background:var(--bad)}.score{font:400 13px var(--font);color:var(--muted);text-align:right;white-space:nowrap;margin-right:4px}.score b{color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:19px;font-weight:600}.hdr-right{align-items:center;gap:8px;display:flex}.icon-btn{background:var(--surface);width:42px;height:42px;box-shadow:var(--shadow-sm);cursor:pointer;font:600 17px var(--font);border:0;border-radius:50%;flex:none;place-items:center;transition:transform .15s;display:grid}.icon-btn:hover{transform:translateY(-1px)}.icon-btn:active{transform:scale(.94)}.icon-btn svg{width:20px;height:20px}.card{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:10px;overflow:hidden}.carousel{aspect-ratio:6/5;border-radius:var(--r-lg);touch-action:pan-y;-webkit-user-select:none;user-select:none;isolation:isolate;background:#1a1d1b;position:relative;overflow:hidden}.track{height:100%;transition:transform .45s cubic-bezier(.22,.8,.26,1);display:flex}.slide{background-color:#222;background-position:50%;background-size:cover;flex:0 0 100%;height:100%}.slide img{object-fit:cover;-webkit-user-drag:none;width:100%;height:100%;display:block}.shade{pointer-events:none;background:linear-gradient(#0000002e,#0000 22% 48%,#080e0ab8);position:absolute;inset:0}.nav,.count{color:#fff;-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background:#ffffff38;border:1px solid #ffffff47}.nav{cursor:pointer;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;transition:background .2s,scale .15s;display:grid;position:absolute;top:50%;translate:0 -50%}.nav:hover{background:#ffffff5c}.nav:active{scale:.92}.nav svg{width:18px;height:18px}.nav.prev{left:12px}.nav.next{right:12px}.count{font:500 12px var(--font);font-variant-numeric:tabular-nums;border-radius:99px;padding:6px 12px;position:absolute;top:12px;right:12px}.hero-cap{color:#fff;pointer-events:none;text-shadow:0 1px 12px #00000059;position:absolute;bottom:18px;left:20px;right:20px}.hood{font:600 clamp(26px, 7.6vw, 32px)/1.05 var(--font);letter-spacing:-.025em;text-wrap:balance;margin:0 0 6px}.hero-cap p{opacity:.92;margin:0;font-size:14px}.body{padding:var(--gap) 16px 6px}.stats{margin-bottom:var(--gap);gap:10px 28px;padding:0 2px;display:flex}.stats:has(.stat:nth-child(3)){justify-content:space-between;gap:14px}.stat b{font:500 18px/1.15 var(--font);letter-spacing:-.03em;white-space:nowrap;display:block}.stat b small{font:400 12px var(--font);letter-spacing:0;color:var(--muted);margin-left:3px}.stat.big b{font-size:26px}.stat.big b small{font-size:14px}.stat span{color:var(--muted);white-space:nowrap;margin-top:1px;font-size:11.5px;display:block}.facts{margin:0 -16px var(--gap);scrollbar-width:none;overscroll-behavior-x:contain;padding:0 16px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 24px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 24px),#0000)}.facts::-webkit-scrollbar{display:none}.facts-in{gap:6px;width:max-content;display:flex}.facts-in>*{flex:none}.facts.two .facts-in{flex-wrap:wrap}.chip{font:400 13px var(--font);background:var(--chip);color:color-mix(in srgb, var(--ink) 78%, var(--muted));white-space:nowrap;border-radius:99px;padding:7px 14px}.chip.subway{align-items:center;gap:3px;padding:5px 14px 5px 6px;display:inline-flex}.chip.subway span.mi{margin-left:5px}.line{width:20px;height:20px;font:700 11px/1 var(--font);border-radius:50%;place-items:center;font-style:normal;display:inline-grid}.amount{text-align:center;cursor:text;padding:0;position:relative}.amount-num{font:600 clamp(40px, 13vw, 58px)/1.1 var(--font);letter-spacing:-.02em;font-variant-numeric:tabular-nums lining-nums;align-items:center;transition:opacity .25s;display:inline-flex}.amount.unset .amount-num{opacity:.32}.amount-cur{color:var(--muted);align-self:flex-start;margin-top:.22em;margin-right:.12em;font-size:.55em;font-weight:500}.roll{display:inline-flex}.roll-col{text-align:center;will-change:filter;height:1.1em;animation:.28s cubic-bezier(.2,.9,.3,1.3) both roll-in;display:inline-block;overflow:hidden}.roll-col>span{will-change:transform;height:100%;display:block}.roll-sep{animation:.28s both roll-in;display:inline-block}@keyframes roll-in{0%{opacity:0;transform:translateY(.3em)scale(.8)}}.amount-caret{background:var(--accent);opacity:0;border-radius:2px;width:2px;height:.8em;margin-left:3px}.amount:focus-within .amount-caret{animation:1.1s step-end infinite caret}@keyframes caret{0%,55%{opacity:1}56%,to{opacity:0}}.amount input{opacity:0;cursor:text;border:0;width:100%;height:100%;padding:0;font-size:16px;position:absolute;inset:0}.dial+.btn{margin-top:calc(var(--gap) - 13px)}.dial{height:84px;margin:calc(var(--gap) - 10px) -16px 0;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;position:relative}.dial.dragging{cursor:grabbing}.dial-window{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 22% 78%,#0000);mask-image:linear-gradient(90deg,#0000,#000 22% 78%,#0000)}.dial-window:before{content:"";background:radial-gradient(ellipse 46% 70% at 50% 45%, color-mix(in srgb, var(--ink) 6%, transparent), transparent);position:absolute;inset:10px 0 0}.dial-rim{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dial-rim path{fill:none;stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.dial-track{position:absolute;inset:0}.tick{width:0;height:100%;opacity:var(--s,1);will-change:transform;display:none;position:absolute;top:0;left:50%}.tick:before{content:"";background:color-mix(in srgb, var(--ink) 26%, transparent);width:1px;height:16px;transform:scaleY(var(--s,1));border-radius:1px;position:absolute;top:28px;left:-.5px}.tick.mid:before{background:color-mix(in srgb, var(--ink) 45%, transparent);height:24px;top:24px}.tick.major:before{background:var(--ink);width:2px;height:32px;top:20px;left:-1px}.tick span{transform:translateX(-50%) translateY(calc((1 - var(--s,1)) * -12px)) scale(calc(.8 + .2 * var(--s,1)));font:500 11px/1 var(--font);color:var(--muted);white-space:nowrap;font-style:normal;position:absolute;top:60px;left:0}.dial-needle{background:var(--accent);transform-origin:50% 0;pointer-events:none;will-change:transform;border-radius:2px;width:2px;height:46px;margin-left:-1px;position:absolute;top:10px;left:50%}.dial-needle:before{content:"";background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:50%;margin-left:-5px;transition:box-shadow .2s,transform .2s cubic-bezier(.2,.9,.3,1.6);position:absolute;top:-5px;left:50%}.dial.dragging .dial-needle:before{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 18%, transparent);transform:scale(1.25)}.dial:focus-visible .dial-needle:before{box-shadow:0 0 0 3px var(--surface), 0 0 0 5px var(--accent)}.btn{width:100%;margin-top:var(--gap);font:500 16px var(--font);cursor:pointer;background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 22px -10px color-mix(in srgb, var(--accent) 70%, transparent);border:0;border-radius:99px;padding:17px 20px;transition:transform .15s,opacity .2s,box-shadow .2s;display:block}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.btn.ghost{background:var(--chip);color:var(--ink);box-shadow:none}.ask{margin:0 2px var(--gap,16px)}.ask p{color:var(--muted);margin:0;font-size:15px;line-height:1.4}.ask b{color:var(--ink);font-weight:500}.ask .ask-q{font:600 21px/1.25 var(--font);letter-spacing:-.01em;color:var(--ink);margin-top:6px}.reveal{animation:.4s cubic-bezier(.2,.8,.3,1) both rise}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.price-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;padding:0 2px;display:flex}.actual{font:600 38px/1.05 var(--font);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.actual small,.pts small{font:400 13px var(--font);color:var(--muted);letter-spacing:0;margin-top:4px;display:block}.pts{font:600 38px/1.05 var(--font);letter-spacing:-.03em;text-align:right}.meter{background:var(--chip);border-radius:99px;height:8px;margin-bottom:10px;overflow:hidden}.meter>div{border-radius:inherit;width:0;height:100%;transition:width .8s cubic-bezier(.2,.8,.3,1)}.yours{color:var(--muted);border-bottom:1px solid var(--line);margin-bottom:6px;padding:0 2px 16px;font-size:14px}.yours b{color:var(--ink);font-weight:500}dl{grid-template-columns:auto 1fr;margin:0 0 14px;font-size:14px;display:grid}dt,dd{border-bottom:1px solid var(--line);padding:10px 2px}dt{color:var(--muted);padding-right:18px}dd{text-align:right;margin:0}dd .muted{color:var(--muted);font-size:13px}.amen{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.amen .chip{padding:5px 11px;font-size:12px}.link{color:var(--accent);padding:0 2px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.link:hover{text-decoration:underline}.summary{padding:26px 24px 22px}.summary h2{font:600 28px/1 var(--font);letter-spacing:-.03em;margin:0 0 22px}.summary h2 span{color:var(--muted);display:block}.total{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:12px;padding-bottom:18px;display:flex}.big{font:500 64px/.9 var(--font);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.big small{font:400 15px var(--font);letter-spacing:0;color:var(--muted);margin-left:6px}.muted{color:var(--muted)}.grid{letter-spacing:3px;padding-bottom:6px;font-size:22px;line-height:1}table{border-collapse:collapse;text-align:left;width:100%;margin:4px 0 6px;font-size:15px}td{border-bottom:1px solid var(--line);padding:12px 0;line-height:1.35}td small{font-size:13px}td:last-child{text-align:right;font:500 22px var(--font);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.summary .btn.ghost{margin-top:10px}.curve{border-bottom:1px solid var(--line);margin:0;padding:16px 0 14px}.curve svg{width:100%;height:auto;display:block;overflow:visible}.curve .area{fill:color-mix(in srgb, var(--accent) 14%, transparent)}.curve .line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.curve .axis{stroke:var(--line);stroke-width:1px}.curve .you-line{stroke:var(--ink);stroke-width:2px}.curve .you-dot{fill:var(--ink);stroke:var(--surface);stroke-width:2.5px}.curve text{font:400 11px var(--font);fill:var(--muted);font-variant-numeric:tabular-nums}.curve text.you{fill:var(--ink);letter-spacing:.04em;font-weight:600}.curve figcaption{margin-top:10px;font-size:15px}.curve figcaption small{color:var(--muted);font-size:13px;display:block}.curve.skel-curve{border-radius:var(--r-md);border-bottom:0;height:190px;margin:14px 0 4px}.toast{background:var(--ink);color:var(--surface);font:500 14px var(--font);opacity:0;pointer-events:none;z-index:60;box-shadow:var(--shadow-sm);border-radius:99px;padding:11px 18px;transition:opacity .2s;position:fixed;bottom:24px;left:50%;translate:-50%}.toast.show{opacity:1}.note{color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;margin:18px 0 0;font-size:13px}.empty{text-align:center;padding:34px 24px 24px}.empty p{margin:0 0 6px}.overlay{background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow);width:100%;max-width:440px;max-height:calc(100dvh - 32px);padding:26px 24px 22px;animation:.25s cubic-bezier(.2,.8,.3,1) both rise;position:relative;overflow-y:auto}.modal h2{font:600 26px/1.1 var(--font);letter-spacing:-.03em;margin:0 0 16px;padding-right:48px}.modal h3{font:600 16px var(--font);letter-spacing:-.01em;margin:22px 0 8px}.modal p{color:color-mix(in srgb, var(--ink) 72%, var(--muted));margin:0 0 10px}.modal ul{color:color-mix(in srgb, var(--ink) 72%, var(--muted));margin:0 0 10px;padding-left:18px}.modal li{margin-bottom:4px}.modal li::marker{color:var(--muted)}.modal b{color:var(--ink)}.modal p.muted{color:var(--muted);font-size:13px}.modal .close{background:var(--chip);box-shadow:none;position:absolute;top:18px;right:18px}.menu{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);z-index:40;min-width:232px;padding:8px;animation:.18s both rise;position:fixed;top:74px;right:max(16px,50vw - 224px)}.menu button{text-align:left;width:100%;font:400 15px var(--font);cursor:pointer;background:0 0;border:0;border-radius:14px;padding:11px 14px;display:block}.menu button:hover{background:var(--chip)}.menu hr{border:0;border-top:1px solid var(--line);margin:8px 6px}.menu .lbl{font:400 13px var(--font);color:var(--muted);padding:4px 14px 6px}.seg{background:var(--chip);border-radius:99px;gap:2px;margin:0 6px 4px;padding:4px;display:flex}.seg button{text-align:center;color:var(--muted);border-radius:99px;flex:1;padding:8px 4px;font-size:13px}.seg button:hover{color:var(--ink);background:0 0}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);font-weight:500}.stat-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;padding-bottom:16px;display:grid}.stat-grid b{font:500 30px/1.1 var(--font);letter-spacing:-.03em;font-variant-numeric:tabular-nums;display:block}.stat-grid span{margin-top:3px;font-size:13px;display:block}.dist{color:var(--muted);grid-template-columns:56px 1fr;align-items:center;gap:8px 10px;font-size:13px;display:grid}.dist .bar{background:var(--chip);border-radius:99px;height:22px;position:relative;overflow:hidden}.dist .bar i{background:color-mix(in srgb, var(--accent) 30%, var(--chip));border-radius:99px;min-width:0;height:100%;display:block}.dist .bar b{color:var(--ink);font-size:12px;font-weight:500;line-height:22px;position:absolute;top:0;left:10px}.example{background:var(--chip);border-radius:var(--r-md);color:color-mix(in srgb, var(--ink) 72%, var(--muted));padding:14px 16px;font-size:14px;line-height:1.6}.skel{background:linear-gradient(100deg, var(--chip) 30%, var(--line) 50%, var(--chip) 70%);background-size:200% 100%;border-radius:12px;animation:1.4s linear infinite shimmer}.skel.pic{aspect-ratio:6/5;border-radius:var(--r-lg)}.skel.line1{width:70%;height:44px;margin-bottom:18px}.skel.chips{border-radius:99px;width:85%;height:32px;margin-bottom:22px}.skel.input{border-radius:var(--r-md);height:150px;margin-bottom:16px}.skel.btn{height:54px;box-shadow:none;border-radius:99px}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.app.playing{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));--hdr:46px;position:relative}.app.playing header{height:var(--hdr);padding:0 6px 10px}.app.playing .brand{font-size:18px;line-height:1}.app.playing .brand span{margin-left:.25em;display:inline}.app.playing .icon-btn{width:36px;height:36px}.app.playing .icon-btn svg{width:18px;height:18px}@media (max-width:767px) and (max-height:959px){.app.playing{--hdr:0px}.app.playing header{z-index:5;pointer-events:none;height:auto;padding:10px 10px 0 14px;position:absolute;top:18px;left:26px;right:26px}.app.playing header>*{pointer-events:auto}.app.playing .brand{display:none}.app.playing .rounds i{background:#ffffff73}.app.playing .rounds i.cur{background:#fff}.app.playing .rounds i.s-good{background:var(--good)}.app.playing .rounds i.s-ok{background:var(--ok)}.app.playing .rounds i.s-meh{background:var(--meh)}.app.playing .rounds i.s-bad{background:var(--bad)}.app.playing .score{color:#fffc;text-shadow:0 1px 8px #0006}.app.playing .score b{color:#fff}.app.playing .icon-btn{color:#fff;width:36px;height:36px;box-shadow:none;-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background:#ffffff38;border:1px solid #ffffff47}.app.playing .icon-btn svg{width:18px;height:18px}.app.playing .menu{top:66px}.app.playing .card.round .shade{background:linear-gradient(#00000061,#0000 26% 48%,#080e0ab8)}}.card.round .count{top:auto;bottom:18px}.card.round .hero-cap{right:76px}.card.round .carousel{aspect-ratio:auto;height:var(--photo-h,55svh);max-height:75svh}.card.fit{height:calc(100svh - 16px - var(--hdr,0px) - env(safe-area-inset-bottom));flex-direction:column;min-height:560px;display:flex}.card.fit .carousel{flex:auto;height:auto;min-height:40svh}.card.fit .body{flex:none;padding-bottom:0}.card.fit .dial+.btn{margin-top:calc(var(--gap) + 1px)}@media (max-height:720px){.app.playing{--gap:12px}.card.fit .amount-num{font-size:44px}.card.fit .btn{padding-top:14px;padding-bottom:14px}.card.fit .stats{margin-bottom:10px}}
