:root{--display:"Saira Condensed", sans-serif;--read:"Libre Baskerville", Georgia, serif;--mono:"Geist Mono", ui-monospace, monospace;--bg:#1b1916;--card-bg:#ead4b4;--card-border:#6b4a2a;--text:#f4f2ec;--ink:#1a0d05;--muted:#b8a98f;--ink-muted:#6a4a30;--paper:#f1dfc2;--accent:#f2912c;--soul:#e0566f;--engine:#34a8c4;--court:#e0a32e;--mob:#e6603a;--icon-dim:#4f463c;--cat-metaphysics:#6a3a7a;--cat-mind:#a04055;--cat-epistemology:#2a6a7a;--cat-ethics:#8a5a1a;--cat-language:#4a6a2a;--cat-logic:#3a4a8a;--cat-science:#3a6a4a;--cat-politics:#8a3a1a;--cat-religion:#7a5a1a;--cat-aesthetics:#a04a6a;--cat-history:#6a5a4a;--cat-metaphil:#a05a1a}.phi,.phi *,.phi :before,.phi :after{box-sizing:border-box;margin:0;padding:0}.card,.overlay-inner,.explainer-inner,.milestone-banner,#finale .finale-stats{--text:var(--ink);--muted:var(--ink-muted);color:var(--text)}.phi{z-index:1;background:var(--bg);height:100%;color:var(--text);font-family:var(--read);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-size:17px;position:fixed;inset:0;overflow:hidden}.phi.show-finale{overflow:auto}.flourish{font-family:var(--mono);color:var(--text);opacity:.45;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;font-size:28px;line-height:1.05;position:fixed}.flourish.fl-tl{top:14px;left:14px}.flourish.fl-bl{bottom:70px;left:14px}.flourish.fl-tr{top:14px;right:14px}.flourish.fl-br{bottom:70px;right:14px}@media (max-width:600px){.flourish{display:none}}#app{max-width:480px;height:100dvh;padding:12px;padding-top:calc(12px + env(safe-area-inset-top,0px));padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:1;flex-direction:column;margin:0 auto;display:flex;position:relative}.phi.show-finale #app{height:auto;min-height:100dvh}#meters{justify-content:center;gap:24px;padding:10px 4px 14px;display:flex}.meter{flex-direction:column;align-items:center;gap:6px;width:44px;display:flex}.meter-icon-label{width:28px;height:28px}.meter-icon-label svg{width:100%;height:100%}.meter-bar-wrap{background:#ece5d626;border-radius:3px;width:7px;height:120px;position:relative}.meter-bar-fill{border-radius:3px;width:100%;position:absolute;bottom:0}.meter-dot{border-radius:2px;width:17px;height:4px;position:absolute;left:-5px}@keyframes meter-jiggle{0%{transform:translate(0)}20%{transform:translate(-2px)}40%{transform:translate(2px)}60%{transform:translate(-1px)}80%{transform:translate(1px)}to{transform:translate(0)}}.meter-bar-wrap.animate .meter-bar-fill,.meter-bar-wrap.animate .meter-dot{animation:.4s ease-out meter-jiggle}.meter-bar-fill{transition:height .35s cubic-bezier(.34,1.56,.64,1)}.meter-dot{transition:bottom .35s cubic-bezier(.34,1.56,.64,1)}#semester-counter{font-family:var(--read);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);text-align:center;min-height:18px;padding:0 0 6px;font-size:12px}#semester-counter .rank-pill{border:1px solid var(--card-border);letter-spacing:.12em;color:var(--text);vertical-align:middle;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:10px;display:inline-block}#stage{flex:1;justify-content:center;align-items:flex-start;padding-top:6px;display:flex;position:relative}.card{background:var(--card-bg);border:2px solid var(--card-border);touch-action:none;cursor:grab;will-change:transform;border-radius:4px;flex-direction:column;width:calc(100% - 24px);max-width:400px;min-height:360px;padding:26px 24px;display:flex;position:absolute;box-shadow:0 14px 40px #28140a59}.card:active{cursor:grabbing}.card.enter-deal{animation:.26s cubic-bezier(.2,.8,.2,1) both card-deal}@keyframes card-deal{0%{opacity:0;transform:translateY(16px)scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}.card.ghost{pointer-events:none}.card-back{pointer-events:none;cursor:default;background:color-mix(in srgb, var(--card-bg) 45%, var(--bg));border-color:color-mix(in srgb, var(--card-border) 60%, var(--bg));transform:translateY(8px)scale(.96);box-shadow:0 10px 28px #28140a47}@media (prefers-reduced-motion:reduce){.card.enter-deal{animation-duration:10ms}}.card-category{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;opacity:.85;margin-top:44px;margin-bottom:14px;font-size:11px;font-weight:500}.card-topic{font-family:var(--display);letter-spacing:-.005em;margin-bottom:20px;font-size:32px;font-weight:400;line-height:1.05}.card-prompt{font-family:var(--read);color:var(--text);margin-bottom:auto;font-size:19px;font-weight:700;line-height:1.45}.card-hint{font-family:var(--mono);color:var(--muted);text-align:center;letter-spacing:.08em;margin-top:18px;font-size:12px;font-style:italic}.card-help{border:1.5px solid var(--muted);width:34px;height:34px;color:var(--muted);font-family:var(--display);text-align:center;cursor:pointer;opacity:.5;z-index:5;background:0 0;border-radius:50%;padding:0;font-size:17px;font-weight:600;line-height:31px;position:absolute;bottom:10px;right:10px}.card-help:hover{opacity:.8}.explainer-overlay{z-index:90;background:#120f0be0;justify-content:center;align-items:center;padding:24px;animation:.18s both overlay-fade;display:flex;position:fixed;inset:0}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}.explainer-inner{background:var(--paper);border:1.5px solid var(--card-border);text-align:left;border-radius:3px;max-width:380px;padding:24px 22px;animation:.32s cubic-bezier(.18,1.25,.3,1) both discovery-pop}.explainer-inner h4{font-family:var(--display);margin-bottom:10px;font-size:20px;font-weight:400}.explainer-inner p{font-family:var(--read);color:var(--text);margin-bottom:14px;font-size:15px;line-height:1.5}.explainer-inner a{font-family:var(--mono);color:var(--muted);font-size:13px;text-decoration:underline}.explainer-inner button{background:var(--accent);color:var(--ink);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;border-radius:2px;margin-top:14px;padding:8px 20px;font-size:13px;display:block}.card-impact{justify-content:center;align-items:center;gap:10px;height:28px;margin-top:14px;display:flex}.card-impact-icon{justify-content:center;align-items:center;transition:all .3s;display:inline-flex}.card-impact-icon svg{width:100%;height:100%}.answer-label{font-family:var(--display);background:var(--text);color:var(--paper);pointer-events:none;opacity:0;border-radius:3px;max-width:240px;padding:12px 16px;font-size:19px;font-weight:400;line-height:1.2;transition:opacity 80ms ease-out,transform .12s ease-out;position:absolute;top:16px;transform:none;box-shadow:0 4px 12px #28140a4d}.answer-label.left{text-align:left;border-left:4px solid var(--paper);left:-10px}.answer-label.right{text-align:right;border-right:4px solid var(--paper);right:-10px}.card.armed .answer-label{transform:scale(1.05)}.card.event{background:var(--paper);border:2px double var(--card-border)}.card.event .card-topic{color:var(--muted);font-style:italic}.card.event.enter-paper{animation:.5s cubic-bezier(.2,.9,.2,1.1) both evt-paper}.card.event.enter-digital{animation:.4s cubic-bezier(.2,.8,.2,1) both evt-digital}.card.event.enter-inperson{animation:.46s cubic-bezier(.2,.85,.25,1.05) both evt-inperson}@keyframes evt-paper{0%{opacity:0;transform:translateY(-130%)rotate(-3deg)}55%{opacity:1;transform:translateY(0)rotate(1.5deg)}70%{transform:translateY(-3%)rotate(-1.5deg)}82%{transform:translate(4px)rotate(1deg)}91%{transform:translate(-2px)rotate(-.5deg)}to{opacity:1;transform:translate(0)rotate(0)}}@keyframes evt-digital{0%{opacity:0;transform:translateY(-26px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes evt-inperson{0%{opacity:0;transform:translate(118%)rotate(7deg)}68%{opacity:1;transform:translate(0)rotate(-2.5deg)}84%{transform:translate(-2%)rotate(1.2deg)}to{opacity:1;transform:translate(0)rotate(0)}}@media (prefers-reduced-motion:reduce){.card.event.enter-paper,.card.event.enter-digital,.card.event.enter-inperson{animation-duration:10ms}}.overlay{z-index:50;background:#120f0beb;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.overlay-inner{text-align:center;background:var(--paper);border:2px solid var(--card-border);border-radius:3px;max-width:460px;padding:32px 28px}.discovery-overlay .overlay-inner{z-index:2;animation:.55s cubic-bezier(.18,1.25,.3,1) both discovery-pop;position:relative}@keyframes discovery-pop{0%{opacity:0;transform:scale(.7)}55%{opacity:1;transform:scale(1.04)}to{transform:scale(1)}}.discovery-overlay h3{animation:.7s cubic-bezier(.2,.8,.2,1) 80ms both discovery-name}@keyframes discovery-name{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.discovery-flash{pointer-events:none;z-index:1;background:radial-gradient(circle at 50% 45%,#fff5e1f2,#fff5e100 60%);animation:.65s ease-out forwards discovery-flash;position:absolute;inset:-40%}@keyframes discovery-flash{0%{opacity:0;transform:scale(.4)}25%{opacity:1}to{opacity:0;transform:scale(1.35)}}.discovery-overlay.is-new .discovery-flash{animation-duration:.85s}.discovery-note{max-width:32ch;color:var(--ink,inherit);opacity:.92;margin:8px auto 4px;font-size:13px;line-height:1.45}.discovery-overlay.is-open-coordinate .discovery-flash{background:radial-gradient(circle at 50% 45%,#d2ebfff2,#d2ebff00 60%)}.discovery-overlay.is-open-coordinate h2{color:#4a86c7;letter-spacing:.16em}.discovery-overlay.is-open-coordinate .discovery-count{font-style:italic}.phi.screen-shake{animation:.6s cubic-bezier(.36,.07,.19,.97) both screen-shake}@keyframes screen-shake{0%,to{transform:translate(0)rotate(0)}10%{transform:translate(-6px,3px)rotate(-.4deg)}20%{transform:translate(7px,-4px)rotate(.5deg)}30%{transform:translate(-8px,2px)rotate(-.5deg)}40%{transform:translate(6px,4px)rotate(.4deg)}50%{transform:translate(-5px,-3px)rotate(-.3deg)}60%{transform:translate(5px,3px)rotate(.3deg)}70%{transform:translate(-4px,-2px)}80%{transform:translate(3px,2px)}90%{transform:translate(-2px,1px)}}@media (prefers-reduced-motion:reduce){.phi.screen-shake,.discovery-overlay .overlay-inner,.discovery-overlay h3{animation:none}.discovery-flash{opacity:0;animation:none}.meter-bar-wrap.animate .meter-bar-fill,.meter-bar-wrap.animate .meter-dot,.explainer-overlay,.explainer-inner,.milestone-banner{animation:none}.milestone-banner.out{opacity:0;animation:none}}.burst-container{pointer-events:none;z-index:60;position:fixed;inset:0;overflow:hidden}.burst-symbol{font-family:var(--mono);pointer-events:none;will-change:transform, opacity;font-weight:700;animation:cubic-bezier(.12,.7,.25,1) forwards symbol-burst;position:absolute;top:45%;left:50%}@keyframes symbol-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(0)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(1.15) rotate(var(--spin))}}.milestone-banner{z-index:62;pointer-events:auto;cursor:pointer;text-align:center;background:var(--paper);border:2px solid var(--card-border);will-change:transform, opacity;border-radius:3px;padding:14px 28px;animation:.55s cubic-bezier(.2,1.2,.3,1) both milestone-in;position:fixed;top:16%;left:50%;box-shadow:0 14px 40px #28140a59}.milestone-banner.out{animation:.46s cubic-bezier(.4,0,.7,.2) forwards milestone-out}.milestone-dismiss{font-family:var(--mono);color:var(--muted);opacity:.7;margin-top:8px;font-size:10px;font-style:italic}.milestone-n{font-family:var(--display);color:var(--text);margin:2px 0;font-size:26px}.milestone-sub{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:11px}@keyframes milestone-in{0%{opacity:0;transform:translate(-50%,-16px)scale(.9)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes milestone-out{0%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-10px)scale(.97)}}.interrupt-unlock{pointer-events:none;transition:opacity .5s;position:absolute;inset:0}.interrupt-unlock.out{opacity:0}.interrupt-ghost-card{background:color-mix(in srgb, var(--card-bg) 80%, var(--bg));border:2px solid var(--card-border);width:128px;height:190px;font-family:var(--mono);letter-spacing:.16em;text-transform:lowercase;color:var(--muted);transform-origin:50% 92%;opacity:0;will-change:transform, opacity;border-radius:5px;justify-content:center;align-items:flex-start;padding-top:13px;font-size:9px;font-style:italic;animation:.66s cubic-bezier(.16,.84,.24,1) both interrupt-fan;display:flex;position:absolute;top:4px;left:50%;box-shadow:0 12px 30px #28140a52}@keyframes interrupt-fan{0%{opacity:0;transform:translate(-50%,22px)rotate(0)scale(.82)}55%{opacity:.9}to{opacity:.82;transform:translate(calc(-50% + var(--tx)), -7px) rotate(var(--rot)) scale(1)}}.interrupt-caption{z-index:3;background:var(--paper);color:var(--ink);border:2px solid var(--card-border);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;will-change:transform, opacity;border-radius:999px;padding:8px 18px;font-size:11px;animation:.44s cubic-bezier(.2,.9,.25,1) .14s both interrupt-caption-in;position:absolute;top:24%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 34px #28140a57}@keyframes interrupt-caption-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.interrupt-ghost-card,.interrupt-caption{animation-duration:10ms}}.death-wash{pointer-events:none;z-index:55;background:var(--c);border-top:3px solid #ffffff73;width:100%;height:100%;position:fixed;left:0}.death-wash.capture{animation:2.3s cubic-bezier(.4,0,.2,1) forwards death-rise}@keyframes death-rise{0%{opacity:.95;transform:translateY(100%)}55%{opacity:.95;transform:translateY(0)}72%{opacity:.95;transform:translateY(0)}to{opacity:0;transform:translateY(0)}}.death-drain-back{z-index:55;pointer-events:none;background:radial-gradient(circle at 50% 45%,#140c0673,#140c06e6);animation:2.8s ease-in-out forwards drain-back;position:fixed;inset:0}@keyframes drain-back{0%{opacity:0}22%{opacity:1}72%{opacity:1}to{opacity:0}}.death-drain-stage{z-index:56;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.death-drain-icon{will-change:opacity, filter, transform;width:44vmin;height:44vmin;animation:1.2s ease-in 1.55s forwards drain-dissolve;position:relative}.death-drain-icon svg{width:100%;height:100%;position:absolute;inset:0}.death-drain-icon .husk{color:var(--icon-dim)}.death-drain-icon .fill{color:var(--c);animation:1.7s ease-in forwards drain-color}@keyframes drain-color{0%{clip-path:inset(0)}to{clip-path:inset(100% 0 0)}}@keyframes drain-dissolve{0%{opacity:1;filter:blur();transform:scale(1)translateY(0)}to{opacity:0;filter:blur(14px);transform:scale(.92)translateY(26px)}}.death-particles{pointer-events:none;z-index:56;position:fixed;inset:0;overflow:hidden}.death-glyph svg{width:100%;height:100%}.death-glyph{font-family:var(--mono);will-change:transform, opacity;font-weight:700;animation:1.8s cubic-bezier(.33,.1,.4,1) forwards death-glyph-move;position:absolute;top:50%}@keyframes death-glyph-move{0%{opacity:0;transform:translate(-50%)scale(.85)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--tx)), var(--ty)) scale(1.05) rotate(var(--spin))}}#finale.died{animation:1.1s .9s both finale-emerge}@keyframes finale-emerge{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){#finale.died{animation:none}}.tut-overlay{background:var(--bg);z-index:80;flex-direction:column;justify-content:flex-start;align-items:center;padding:clamp(60px,8vh,92px) 16px 40px;display:flex;position:fixed;inset:0;overflow:hidden auto}.tut-bar{z-index:1;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;top:0;left:0;right:0}.tut-bar-label{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.tut-bar-step{font-family:var(--mono);letter-spacing:.1em;color:var(--muted);flex:1;font-size:11px}.tut-skip{border:1px solid var(--card-border);color:var(--text);font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;padding:5px 14px;font-size:11px}.tut-skip:hover{border-color:var(--accent);color:var(--accent)}.tut-overlay .tut-content{text-align:center;width:100%;max-width:440px;animation:.4s both tut-fade-in}@keyframes tut-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.tut-overlay h1{font-family:var(--display);margin-bottom:6px;font-size:34px;font-weight:400}.tut-overlay .subtitle{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:20px;font-size:13px}.tut-overlay h2{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:13px;font-weight:600}.tut-overlay p{font-family:var(--read);color:var(--text);text-align:center;margin-bottom:14px;font-size:16px;line-height:1.55}.tut-overlay a{color:var(--muted);text-decoration:underline}.tut-overlay .tut-btn{background:var(--accent);color:var(--ink);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;border-radius:2px;margin-top:18px;padding:10px 28px;font-size:14px;display:inline-block}.tut-overlay .tut-hint{font-family:var(--mono);color:var(--muted);margin-top:14px;font-size:13px;font-style:italic}.tut-card-area{justify-content:center;align-items:center;height:320px;margin:10px 0;display:flex;position:relative}.tut-meters{justify-content:center;gap:24px;margin:16px 0;display:flex}.tut-meter{flex-direction:column;align-items:center;gap:6px;width:50px;display:flex}.tut-meter svg{width:28px;height:28px}.tut-meter svg.tut-icon-drain{animation:1.8s both tut-icon-drain}@keyframes tut-icon-drain{0%{opacity:1;transform:translateY(0)}55%{opacity:.5}to{opacity:.12;transform:translateY(7px)}}.tut-meter svg.tut-icon-bubble{animation:.62s ease-in-out infinite tut-icon-bubble}@keyframes tut-icon-bubble{0%{filter:brightness();transform:translateY(0)scale(1)}50%{filter:brightness(1.35);transform:translateY(-6px)scale(1.14)}to{filter:brightness();transform:translateY(0)scale(1)}}.tut-meter-label{font-family:var(--display);color:var(--muted);font-size:11px}.tut-meter-bar{background:#ece5d626;border-radius:3px;width:7px;height:80px;position:relative}.tut-meter-fill{opacity:.25;border-radius:3px;width:100%;transition:height .6s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:0}.tut-meter-dot{border-radius:2px;width:17px;height:4px;transition:bottom .6s cubic-bezier(.34,1.56,.64,1);position:absolute;left:-5px}.tut-status{font-family:var(--display);color:var(--text);min-height:28px;margin-top:10px;font-size:20px;transition:opacity .3s}.overlay h2{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:600}.overlay h3{font-family:var(--display);margin-bottom:12px;font-size:30px;font-weight:400;line-height:1.1}.overlay .discovery-count{font-family:var(--mono);color:var(--muted);margin-bottom:18px;font-size:13px}.overlay p{font-family:var(--read);color:var(--muted);margin-bottom:22px;font-size:15px;font-style:italic;line-height:1.55}.overlay button{background:var(--accent);border:1px solid var(--accent);color:var(--ink);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:2px;padding:10px 24px;font-size:14px}#finale{text-align:center;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;padding:16px 16px 0;display:flex;overflow-y:auto}#finale .finale-headline{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--text);margin-bottom:14px;font-size:27px;font-weight:800;line-height:1.05}#finale.survived .finale-headline{font-family:var(--display);letter-spacing:.04em;text-transform:none;color:var(--text);margin-bottom:6px;font-size:36px;font-weight:400;line-height:1.1;animation:.8s cubic-bezier(.2,.8,.2,1) both headline-enter}#finale.survived .finale-subtitle{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:20px;font-size:14px;font-weight:600}@keyframes headline-enter{0%{opacity:0;transform:translateY(16px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.confetti-container{pointer-events:none;z-index:100;position:fixed;inset:0;overflow:hidden}.confetti-particle{font-family:var(--mono);pointer-events:none;animation:linear forwards confetti-fall;position:absolute}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)scale(1)}70%{opacity:.8}to{opacity:0;transform:translateY(var(--fall-dist)) rotate(var(--spin)) scale(.5)}}#finale .finale-body{font-family:var(--read);max-width:400px;margin-bottom:24px;font-size:17px;line-height:1.55}#finale .finale-stats{background:var(--paper);border:1px solid var(--card-border);font-family:var(--mono);color:var(--muted);border-radius:2px;width:100%;max-width:400px;margin-bottom:16px;padding:14px 16px;font-size:13px}#finale .finale-stats .row{justify-content:space-between;align-items:center;padding:2px 0;display:flex}#finale .finale-stats .sparkline-row{align-items:center;gap:8px;padding:3px 0;display:flex}#finale .finale-stats .sparkline-row .spark-label{color:var(--muted);text-align:right;min-width:24px;font-size:11px}#finale .finale-stats .sparkline-row .spark-outcome{color:var(--muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;overflow:hidden}#finale .finale-stats .sparkline-row.current{font-weight:600}#finale .finale-stats .sparkline-row.current .spark-label,#finale .finale-stats .sparkline-row.current .spark-outcome{color:var(--text)}#finale .new-best{font-family:var(--display);color:var(--text);letter-spacing:.15em;text-transform:uppercase;margin-bottom:6px;font-size:13px;font-weight:600}#finale .discoveries{font-family:var(--display);color:var(--muted);column-count:2;column-gap:20px;width:100%;max-width:460px;margin-bottom:18px;font-size:14px}#finale .discoveries>div:first-child{column-span:all;margin-bottom:6px}#finale .discoveries .view-name{padding:2px 0;font-style:italic;line-height:1.4}#finale .discoveries .view-undiscovered{opacity:.3;font-style:normal}#finale .discoveries .view-matched{color:var(--text)}#finale .discoveries .view-new{color:var(--text);font-weight:600;animation:.5s cubic-bezier(.2,.8,.2,1) both view-pop}.combo-caption{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:6px 0;font-size:10px}.combo-list{font-family:var(--mono);break-inside:avoid;font-size:13px;line-height:1.5}.combo-item{justify-content:center;align-items:baseline;gap:6px;display:flex}.combo-topic{color:var(--muted)}.combo-arrow{color:var(--muted);opacity:.55}.combo-label{color:var(--text);font-weight:600}.combo-list.qa{text-align:left;max-width:460px;margin:0 auto}.combo-qa{justify-content:space-between;align-items:baseline;gap:16px;padding:5px 0;display:flex}.combo-qa+.combo-qa{border-top:1px solid var(--card-border)}.combo-q{color:var(--muted);text-align:left;flex:55%}.combo-a{color:var(--text);text-align:right;flex:45%;font-weight:600}#finale .discoveries .combo-list{margin:2px 0 8px 12px;font-size:11px}#finale .discoveries .combo-item{opacity:.35;justify-content:flex-start}#finale .discoveries .combo-item.got{opacity:1}#finale .discoveries .combo-item.got .combo-topic{color:var(--text)}#finale .discoveries .combo-item.got:before{content:"✓";color:var(--court);margin-right:2px;font-size:9px}#finale .discoveries details.view-row{break-inside:avoid}#finale .discoveries summary.view-name{cursor:pointer;list-style:none}#finale .discoveries summary.view-name::-webkit-details-marker{display:none}#finale .discoveries summary.view-name:after{content:" ▸";opacity:.4;font-size:9px;font-style:normal}#finale .discoveries details[open] summary.view-name:after{content:" ▾"}#finale .vibe{text-align:center;max-width:400px;margin-bottom:22px}#finale .vibe-label{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:12px}#finale .vibe-name{font-family:var(--display);color:var(--text);padding:.05em .28em 0;font-size:34px;font-style:italic;font-weight:600;line-height:1.28}.aura-wrap{padding:18px 30px;display:inline-block;position:relative}.aura-glow{z-index:0;pointer-events:none;background-blend-mode:screen;filter:blur(30px)saturate(1.35);opacity:.9;animation:6.5s ease-in-out infinite aura-pulse;position:absolute;inset:-45% -20%}.aura-wrap .vibe-name{z-index:1;position:relative}.aura-out-btn{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;border:1.5px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:3px;margin:-2px 0 20px;padding:10px 22px;font-size:14px;font-weight:700;transition:background .15s,color .15s}.aura-out-btn:hover{background:var(--accent);color:var(--ink)}#finale .finale-sims{font-family:var(--read);color:var(--muted);max-width:34em;margin:6px auto 18px;font-size:14px;line-height:1.5}#finale .finale-sims em{color:inherit;font-style:italic}#finale .finale-sims a{color:var(--accent);border-bottom:1px solid var(--accent);text-decoration:none}#finale .finale-credit{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);margin-top:4px;margin-bottom:18px;font-size:12px}#finale .finale-credit a{color:var(--accent);border-bottom:1px solid var(--accent);text-decoration:none}.aura-out-btn[disabled]{opacity:.6;cursor:default}.toast{z-index:120;background:var(--paper);color:var(--ink);font-family:var(--mono);border-radius:4px;padding:10px 18px;font-size:13px;animation:.3s both milestone-in;position:fixed;bottom:34px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000073}.toast.out{animation:.4s forwards milestone-out}@keyframes aura-pulse{0%,to{opacity:.7;transform:scale(1)rotate(0)}50%{opacity:.98;transform:scale(1.09)rotate(5deg)}}@media (prefers-reduced-motion:reduce){.aura-glow{opacity:.8;animation:none}}#finale .near-misses{font-family:var(--mono);color:var(--muted);width:100%;max-width:400px;margin-top:14px;margin-bottom:18px;font-size:14px;font-style:italic}#finale .near-miss-item{padding:2px 0}#finale .near-miss-name{color:var(--text);font-style:normal;font-weight:600}#finale .near-miss-gap{opacity:.6;font-size:12px;font-style:normal}@keyframes view-pop{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}#finale button{background:var(--accent);border:1px solid var(--accent);color:var(--ink);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:2px;flex-shrink:0;margin-top:8px;margin-bottom:16px;padding:10px 24px;font-size:14px}#finale button.join-lb-btn{background:#f2c230;border-color:#f2c230;margin-top:0;transition:background .15s,border-color .15s}#finale button.join-lb-btn:hover{background:#f8d052;border-color:#f8d052}@keyframes phiFade{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}#landing{z-index:95;box-sizing:border-box;background:var(--bg);color:var(--text);padding:clamp(28px,5vw,64px);padding-top:calc(clamp(28px,5vw,64px) + env(safe-area-inset-top,0px));padding-bottom:calc(clamp(28px,5vw,64px) + env(safe-area-inset-bottom,0px));flex-direction:column;max-width:760px;margin:0 auto;font-family:Archivo,sans-serif;display:flex;position:fixed;inset:0;overflow:hidden}#landing .hero{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;min-height:0;padding:clamp(24px,5vh,60px) 0;display:flex}#landing .wm{line-height:.78;animation:.8s 80ms both phiFade;display:inline-block;position:relative}#landing .wm>div{letter-spacing:.005em;font-family:Saira Condensed,sans-serif;font-size:clamp(110px,34vw,300px);font-weight:800}#landing .wm-philo{z-index:2;color:#0000;-webkit-text-stroke:clamp(3px,.9vw,6px) #f2912c;margin-left:-.07em;position:relative}#landing .wm-types{z-index:1;color:var(--text);margin-top:-.2em;position:relative}#landing .play-now{color:#1b1916;cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:#f2912c;border:none;border-radius:2px;align-items:center;gap:12px;margin-top:clamp(56px,9vh,104px);padding:16px 30px;font-family:Archivo,sans-serif;font-size:16px;font-weight:700;transition:transform .18s,background .18s;animation:.8s .2s both phiFade;display:inline-flex}#landing .play-now:hover{background:#ffa743;transform:translateY(-2px)}#landing .credit{letter-spacing:.08em;color:var(--text);border-top:1px solid #322e29;padding-top:20px;font-family:Geist Mono,monospace;font-size:13px;font-weight:500;animation:.7s .32s both phiFade}#landing .credit a{color:var(--text);border-bottom:1px solid #4a443c;text-decoration:none}#landing .credit a:hover{color:#f2912c;border-bottom-color:#f2912c}#landing.out{pointer-events:none;animation:.24s forwards landing-out}@keyframes landing-out{to{opacity:0}}.lb-root{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--read);padding:clamp(24px,5vw,56px) 16px 64px}.lb-wrap{max-width:640px;margin:0 auto}.lb-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:6px;display:flex}.lb-title{font-family:var(--display);letter-spacing:.01em;font-size:clamp(30px,6vw,46px);font-weight:800;line-height:1}.lb-sub{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:28px;font-size:12px}.lb-link{font-family:var(--mono);color:var(--accent);border-bottom:1px solid #0000;font-size:13px;text-decoration:none}.lb-link:hover{border-bottom-color:var(--accent)}.lb-row{border-radius:8px;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;margin-bottom:8px;padding:16px;display:grid;overflow:hidden}.lb-rank{font-family:var(--display);color:var(--text);opacity:.8;text-align:right;text-shadow:0 1px 3px #0000008c;font-size:18px;font-weight:700}.lb-name{font-family:var(--display);text-shadow:0 1px 3px #0009;font-size:18px;font-weight:600}.lb-view{font-family:var(--read);color:var(--text);opacity:.85;text-shadow:0 1px 3px #0009;margin-top:2px;font-size:12px;font-style:italic}.lb-turns{font-family:var(--display);text-align:right;text-shadow:0 1px 3px #0009;font-size:24px;font-weight:800;line-height:1}.lb-turns small{font-family:var(--mono);color:var(--text);opacity:.75;text-transform:uppercase;letter-spacing:.1em;margin-top:2px;font-size:10px;font-weight:400;display:block}.lb-turns small.lb-dex{opacity:.55;letter-spacing:.04em;margin-top:4px}.lb-empty{color:var(--muted);margin-top:24px;font-size:15px}.lb-foot{flex-wrap:wrap;align-items:center;gap:20px;margin-top:36px;display:flex}.lb-cta{font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;background:var(--accent);color:var(--ink);border-radius:2px;padding:11px 26px;font-size:14px;font-weight:700;text-decoration:none}.lb-cta:hover{filter:brightness(1.06)}
