@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/oswald-600.woff2) format("woff2")}:root{--bg-primary: #1a0a2e;--bg-secondary: #2d1b4e;--bg-card: #3d2b5e;--text-primary: #f5e6d3;--text-secondary: #c9a8e8;--accent-gold: #ffd700;--accent-red: #e63946;--accent-green: #2ecc71;--accent-blue: #4ecdc4;--border-radius: 12px;--shadow: 0 4px 20px rgba(0, 0, 0, .3)}[data-theme=circus]{--bg-primary: #1a0a2e;--bg-secondary: #2d1b4e;--bg-card: #3d2b5e;--text-primary: #f5e6d3;--text-secondary: #c9a8e8;--accent-gold: #ffd700;--accent-red: #e63946;--accent-green: #2ecc71;--accent-blue: #4ecdc4}[data-theme=dark]{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-card: #21262d;--text-primary: #e6edf3;--text-secondary: #8b949e;--accent-gold: #f0b429;--accent-red: #ff6b6b;--accent-green: #3fb950;--accent-blue: #58a6ff}[data-theme=light]{--bg-primary: #f0f0f0;--bg-secondary: #e0e0e0;--bg-card: #ffffff;--text-primary: #1a1a2e;--text-secondary: #555577;--accent-gold: #c8860a;--accent-red: #d32f2f;--accent-green: #2e7d32;--accent-blue: #0277bd}[data-theme=monokai]{--bg-primary: #272822;--bg-secondary: #3e3d32;--bg-card: #49483e;--text-primary: #f8f8f2;--text-secondary: #75715e;--accent-gold: #e6db74;--accent-red: #f92672;--accent-green: #a6e22e;--accent-blue: #66d9e8}[data-theme=high-contrast]{--bg-primary: #000000;--bg-secondary: #111111;--bg-card: #222222;--text-primary: #ffffff;--text-secondary: #cccccc;--accent-gold: #ffff00;--accent-red: #ff4444;--accent-green: #44ff44;--accent-blue: #44ddff}[data-theme=c64]{--bg-primary: #3e31a2;--bg-secondary: #7c70da;--bg-card: #5a4fc5;--text-primary: #c7c2ef;--text-secondary: #9085e0;--accent-gold: #7abfc7;--accent-red: #894036;--accent-green: #acea88;--accent-blue: #7abfc7}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}:root{--page-max: 560px;--gutter: 16px;--radius-lg: 18px;--radius-md: 14px;--font-display: "Oswald", "Arial Narrow", sans-serif;--gold-face: color-mix(in srgb, var(--accent-gold) 62%, #fff);--gold-edge: color-mix(in srgb, var(--accent-gold) 52%, #000);--gold-ink: color-mix(in srgb, var(--accent-gold) 18%, #1a0d00);--panel: var(--bg-secondary);--panel-line: var(--bg-card);--edge-shadow: rgba(0, 0, 0, .32);--spring: cubic-bezier(.2, 1.3, .4, 1)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(110% 60% at 50% -12%,color-mix(in srgb,var(--accent-gold) 16%,transparent),transparent 62%),repeating-conic-gradient(from -3deg at 50% -25%,rgba(255,255,255,.035) 0deg 6deg,transparent 6deg 12deg),radial-gradient(130% 90% at 50% 115%,rgba(0,0,0,.45),transparent 60%)}[data-theme=light] body:before{background:radial-gradient(110% 60% at 50% -12%,color-mix(in srgb,var(--accent-gold) 18%,transparent),transparent 62%),repeating-conic-gradient(from -3deg at 50% -25%,rgba(0,0,0,.025) 0deg 6deg,transparent 6deg 12deg)}[data-theme=light]{--edge-shadow: rgba(0, 0, 0, .14)}button,input{font:inherit;-webkit-tap-highlight-color:transparent}.app{width:100%;max-width:var(--page-max);margin:0 auto;padding:0 var(--gutter) 24px;padding-top:calc(10px + var(--discord-overlay-top, 0px));min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1;display:flex;flex-direction:column;gap:16px}.page{display:flex;flex-direction:column;align-items:stretch;gap:18px;animation:pageIn .45s var(--spring) backwards}@keyframes pageIn{0%{opacity:0;transform:translateY(18px) scale(.98)}}.page h2{text-align:center;font-family:var(--font-display);font-weight:600;font-size:1.35rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-gold);text-shadow:0 2px 0 var(--edge-shadow)}.app-header{display:flex;align-items:center;gap:10px;padding:8px 0 6px}.app-title{flex:1;min-width:0;font-family:var(--font-display);font-size:clamp(1.3rem,6.2vw,1.75rem);font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--accent-gold);text-shadow:0 3px 0 var(--gold-edge),0 6px 14px rgba(0,0,0,.45);white-space:nowrap}.header-right{display:flex;align-items:center;gap:8px}.header-sep{display:none}.header-phase{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:999px;background:var(--panel);border:2px solid var(--panel-line);box-shadow:0 3px 0 var(--edge-shadow);color:var(--accent-gold)}.phase-countdown{font-family:var(--font-display);font-weight:600;font-size:1rem;letter-spacing:.04em;color:var(--text-primary)}.header-phase.urgent{border-color:var(--accent-red);color:var(--accent-red);animation:urgentPulse 1.2s ease-in-out infinite}@keyframes urgentPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@media (max-width: 360px){.app-header .app-title{font-size:1.15rem}.header-right{gap:6px}.header-phase{padding:0 9px}.header-phase svg{display:none}.app-header .leaderboard-btn,.app-header .settings-btn{width:36px;height:36px}}.app-header .leaderboard-btn,.app-header .settings-btn{width:40px;height:40px;display:grid;place-items:center;padding:0;border-radius:50%;background:var(--panel);border:2px solid var(--panel-line);box-shadow:0 3px 0 var(--edge-shadow);color:var(--accent-gold);cursor:pointer;transition:transform .08s ease-out,box-shadow .08s ease-out}.app-header .leaderboard-btn:active,.app-header .settings-btn:active{transform:translateY(3px);box-shadow:0 0 0 var(--edge-shadow)}.btn,.submit-btn,.vote-btn,.secondary-btn,.error-screen .settings-btn{--face: var(--accent-gold);--face-hi: var(--gold-face);--edge: var(--gold-edge);--ink: var(--gold-ink);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;padding:13px 22px 11px;border:none;border-radius:var(--radius-md);font-family:var(--font-display);font-weight:600;font-size:1.15rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:linear-gradient(var(--face-hi),var(--face) 60%);box-shadow:0 6px 0 var(--edge),0 10px 18px #00000059,inset 0 2px #ffffff8c;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .08s ease-out,box-shadow .08s ease-out,filter .15s}.btn:active:not(:disabled),.submit-btn:active:not(:disabled),.vote-btn:active:not(:disabled),.secondary-btn:active:not(:disabled),.error-screen .settings-btn:active{transform:translateY(5px);box-shadow:0 1px 0 var(--edge),0 3px 8px #00000059,inset 0 2px #ffffff73}@media (hover: hover){.btn:hover:not(:disabled),.submit-btn:hover:not(:disabled),.vote-btn:hover:not(:disabled),.secondary-btn:hover:not(:disabled){filter:brightness(1.07)}}.btn:disabled,.submit-btn:disabled,.vote-btn:disabled,.secondary-btn:disabled{--face: var(--bg-card);--face-hi: var(--bg-card);--edge: color-mix(in srgb, var(--bg-card) 55%, #000);--ink: var(--text-secondary);cursor:not-allowed;box-shadow:0 6px 0 var(--edge),inset 0 2px #ffffff14}.submit-btn.duplicate,.btn-danger{--face: var(--accent-red);--face-hi: color-mix(in srgb, var(--accent-red) 70%, #fff);--edge: color-mix(in srgb, var(--accent-red) 50%, #000);--ink: #fff}.vote-btn.pending{--face: color-mix(in srgb, var(--accent-green) 78%, #000);--face-hi: color-mix(in srgb, var(--accent-green) 92%, #fff);--edge: color-mix(in srgb, var(--accent-green) 45%, #000);--ink: #fff;text-shadow:0 1px 0 rgba(0,0,0,.35)}.secondary-btn,.btn-ghost{--face: var(--panel);--face-hi: color-mix(in srgb, var(--panel) 85%, #fff);--edge: color-mix(in srgb, var(--panel) 55%, #000);--ink: var(--accent-gold);min-height:46px;font-size:1rem;border:2px solid var(--panel-line);box-shadow:0 5px 0 var(--edge),0 8px 14px #00000040}.panel,.submission-confirmed,.vote-confirmed,.not-participant,.no-results,.no-entries,.results-note{width:100%;padding:20px;text-align:center;background:var(--panel);border:2px solid var(--panel-line);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--edge-shadow),0 14px 26px #00000038}.results-note{padding:12px 16px;font-size:.88rem;color:var(--text-secondary)}.no-results p:first-child,.no-entries p:first-child{font-family:var(--font-display);font-size:1.25rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-gold);margin-bottom:4px}.no-results,.no-entries{color:var(--text-secondary)}.check-icon{display:inline-block;font-size:2.6rem;margin-bottom:6px;animation:stampIn .5s var(--spring) backwards}@keyframes stampIn{0%{opacity:0;transform:scale(2.2) rotate(-14deg)}}.vote-confirmed>p:not(.vote-subtext){font-family:var(--font-display);font-size:1.25rem;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-green)}.vote-subtext{color:var(--text-secondary);font-size:.85rem;margin:6px 0 16px}.loading-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px}.loading-screen .app-title{flex:none;font-size:2.4rem;animation:titleBob 1.6s ease-in-out infinite}@keyframes titleBob{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}.loading-bar{width:220px;height:12px;padding:2px;border-radius:999px;background:var(--panel);border:2px solid var(--panel-line);box-shadow:0 3px 0 var(--edge-shadow);overflow:hidden}.loading-bar-fill{height:100%;width:0%;border-radius:999px;background:repeating-linear-gradient(-45deg,var(--accent-gold) 0 8px,var(--gold-face) 8px 16px);animation:loadingProgress 3s ease-out forwards}@keyframes loadingProgress{0%{width:0%}25%{width:60%}50%{width:75%}75%{width:84%}to{width:91%}}.loading{text-align:center;color:var(--text-secondary);padding:24px;animation:softPulse 1.2s ease-in-out infinite}@keyframes softPulse{0%,to{opacity:.5}50%{opacity:1}}.error-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.error-screen h2{font-family:var(--font-display);font-size:2rem;text-transform:uppercase;color:var(--accent-gold);text-shadow:0 3px 0 var(--gold-edge)}.error-screen h2:before{content:"🎪";display:block;font-size:3rem;margin-bottom:6px;text-shadow:none;animation:titleBob 1.8s ease-in-out infinite}.error-screen p{max-width:34ch;padding:14px 18px;color:var(--text-primary);background:var(--panel);border:2px solid var(--panel-line);border-radius:var(--radius-md)}.error-screen .settings-btn{width:auto;min-width:180px}.letter-display{display:flex;gap:clamp(6px,2vw,12px);justify-content:center;margin:6px 0 10px;width:100%}.letter-card{--tile-face: color-mix(in srgb, var(--accent-gold) 35%, #fffaf0);--tile-face-lo: color-mix(in srgb, var(--accent-gold) 70%, #fff3d0);--tile-edge: var(--gold-edge);--tile-ink: var(--gold-ink);width:clamp(46px,13vw,62px);height:clamp(56px,15.6vw,74px);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.7rem,6.4vw,2.3rem);line-height:1;color:var(--tile-ink);background:linear-gradient(var(--tile-face),var(--tile-face-lo));border:none;border-radius:12px;box-shadow:0 5px 0 var(--tile-edge),0 9px 16px #00000061,inset 0 2px #ffffffbf;-webkit-user-select:none;user-select:none}.letter-card.correct{--tile-face: color-mix(in srgb, var(--accent-green) 35%, #f4fff7);--tile-face-lo: color-mix(in srgb, var(--accent-green) 80%, #fff);--tile-edge: color-mix(in srgb, var(--accent-green) 50%, #000);--tile-ink: color-mix(in srgb, var(--accent-green) 25%, #002010);animation:tilePop .28s var(--spring)}.letter-card.incorrect{--tile-face: color-mix(in srgb, var(--accent-red) 30%, #fff5f5);--tile-face-lo: color-mix(in srgb, var(--accent-red) 75%, #fff);--tile-edge: color-mix(in srgb, var(--accent-red) 50%, #000);--tile-ink: color-mix(in srgb, var(--accent-red) 25%, #200000);animation:tileNudge .3s ease-out}@keyframes tilePop{0%{transform:scale(1)}45%{transform:scale(1.14) translateY(-4px)}to{transform:scale(1)}}@keyframes tileNudge{0%,to{transform:rotate(0)}30%{transform:rotate(-5deg)}65%{transform:rotate(4deg)}}.letter-card.reveal{animation:letterReveal .5s var(--spring) backwards}.letter-card.wave{animation:letterWave .5s ease-in-out}@keyframes letterReveal{0%{transform:translateY(-40px) scale(.4) rotate(-20deg);opacity:0}}@keyframes letterWave{0%,to{transform:translateY(0)}50%{transform:translateY(-18px) rotate(-4deg)}}@keyframes letterInspire{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.letter-card.inspired{--tile-face: #fffbe6;--tile-face-lo: var(--gold-face);animation:letterInspire .25s ease-in-out;box-shadow:0 5px 0 var(--tile-edge),0 0 0 3px var(--accent-gold),0 0 22px color-mix(in srgb,var(--accent-gold) 60%,transparent)}.heading-ticker{position:relative;height:2rem;overflow:hidden;width:100%;text-align:center}.heading-ticker h2{position:absolute;width:100%;margin:0}@keyframes headingSlideIn{0%{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes headingSlideOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(-110%);opacity:0}}.heading-enter{animation:headingSlideIn .12s ease-out forwards}.heading-exit{animation:headingSlideOut .08s ease-in forwards}.heading-word{cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;-webkit-tap-highlight-color:transparent}.submission-form{width:100%;display:flex;flex-direction:column;gap:14px}.submission-form label{font-size:.88rem;color:var(--text-secondary);text-align:center}.submission-form input{width:100%;padding:16px 18px;background:color-mix(in srgb,var(--bg-primary) 70%,#000);border:3px solid var(--panel-line);border-radius:var(--radius-md);color:var(--text-primary);font-size:1.15rem;font-weight:600;outline:none;box-shadow:inset 0 3px #0000004d;transition:border-color .15s,box-shadow .15s}[data-theme=light] .submission-form input{background:#fff;box-shadow:inset 0 3px #0000000f}.submission-form input:focus{border-color:var(--accent-gold);box-shadow:inset 0 3px #0000004d,0 0 0 4px color-mix(in srgb,var(--accent-gold) 22%,transparent)}.submission-form input::placeholder{color:color-mix(in srgb,var(--text-secondary) 45%,transparent);font-weight:400;letter-spacing:2px}.submission-error,.results-error,.vote-error,.ballot-error{color:var(--accent-red);font-size:.88rem;font-weight:600;text-align:center}@keyframes vote-shake{0%{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}to{transform:translate(0)}}.vote-btn.shake{animation:vote-shake .4s ease}@keyframes letterDuplicateShake{0%{transform:translateY(0)}10%{transform:translateY(-16px)}25%{transform:translateY(11px)}40%{transform:translateY(-13px)}55%{transform:translateY(8px)}70%{transform:translateY(-6px)}85%{transform:translateY(3px)}to{transform:translateY(0)}}@keyframes btnDuplicateShake{0%{transform:translate(0)}10%{transform:translate(-10px)}25%{transform:translate(9px)}40%{transform:translate(-8px)}55%{transform:translate(6px)}70%{transform:translate(-4px)}85%{transform:translate(2px)}to{transform:translate(0)}}.letter-card.duplicate{--tile-face: color-mix(in srgb, var(--accent-red) 30%, #fff5f5) !important;--tile-face-lo: color-mix(in srgb, var(--accent-red) 75%, #fff) !important;--tile-edge: color-mix(in srgb, var(--accent-red) 50%, #000) !important;animation:letterDuplicateShake .55s ease-in-out}.submit-btn.duplicate.shaking{animation:btnDuplicateShake .5s ease-in-out}.submission-count{text-align:center;color:var(--text-secondary);font-size:.85rem}.submission-count:before{content:"✍️ "}.your-submission{width:100%;display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;padding:12px 16px;background:var(--panel);border:2px dashed color-mix(in srgb,var(--accent-blue) 70%,transparent);border-radius:var(--radius-md)}.your-submission-label{font-family:var(--font-display);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent-blue)}.your-submission-text{font-size:1.05rem;font-weight:600;color:var(--text-primary)}.voting-ballot{width:100%;display:flex;flex-direction:column;gap:14px}.ballot-hint{text-align:center;font-family:var(--font-display);font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin:0}.ballot-entries{display:flex;flex-direction:column;gap:10px}.ballot-entry{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--panel);border:2px solid var(--panel-line);border-radius:var(--radius-md);box-shadow:0 4px 0 var(--edge-shadow);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .08s ease-out,box-shadow .08s ease-out,border-color .15s,background .15s;animation:entryIn .4s var(--spring) backwards}.ballot-entry:nth-child(2){animation-delay:.04s}.ballot-entry:nth-child(3){animation-delay:.08s}.ballot-entry:nth-child(4){animation-delay:.12s}.ballot-entry:nth-child(5){animation-delay:.16s}.ballot-entry:nth-child(n+6){animation-delay:.2s}@keyframes entryIn{0%{opacity:0;transform:translateY(14px)}}.ballot-entry:active:not(.readonly){transform:translateY(3px);box-shadow:0 1px 0 var(--edge-shadow)}.ballot-entry.readonly{cursor:default;pointer-events:none}.ballot-entry.rank-1{border-color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 13%,var(--panel))}.ballot-entry.rank-2{border-color:#c9d3de;background:color-mix(in srgb,#c9d3de 10%,var(--panel))}.ballot-entry.rank-3{border-color:#cd7f32;background:color-mix(in srgb,#cd7f32 12%,var(--panel))}.ballot-rank-badge{display:grid;place-items:center;width:2.2rem;height:2.2rem;flex-shrink:0;font-size:1.5rem;line-height:1}.ballot-entry[class*=rank-] .ballot-rank-badge:not(.empty){animation:medalStamp .4s var(--spring)}@keyframes medalStamp{0%{transform:scale(2) rotate(-25deg);opacity:0}}.ballot-rank-badge.empty:before{content:"";width:1.4rem;height:1.4rem;border-radius:50%;border:2px dashed var(--text-secondary);opacity:.6}.entry-text{font-size:1rem;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.podium{display:flex;flex-direction:column;gap:10px;width:100%}.podium-entry{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--panel);border:2px solid var(--panel-line);border-radius:var(--radius-md);box-shadow:0 4px 0 var(--edge-shadow);text-align:left}.podium-entry.gold{border-color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 12%,var(--panel))}.podium-entry.silver{border-color:#c9d3de;background:color-mix(in srgb,#c9d3de 9%,var(--panel))}.podium-entry.bronze{border-color:#cd7f32;background:color-mix(in srgb,#cd7f32 11%,var(--panel))}.podium-entry.disqualified{opacity:.5}.podium-entry.disqualified .winner-acronym{text-decoration:line-through}.rank-emoji{width:2.2rem;flex-shrink:0;text-align:center;font-family:var(--font-display);font-size:1.4rem;line-height:1;color:var(--text-secondary)}.winner-info{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.winner-identity{display:flex;align-items:center;gap:6px}.winner-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.winner-name{font-weight:700;font-size:.95rem}.winner-acronym{font-weight:600;color:var(--accent-gold);font-size:1rem;overflow-wrap:anywhere}.winner-votes{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:.78rem}.presence-bar{display:flex;gap:8px;padding:10px 0 14px;flex-wrap:nowrap;justify-content:center}.presence-bar.clickable{cursor:pointer}.avatar-bubble.more{display:flex;align-items:center;justify-content:center;background:var(--panel);color:var(--text-secondary);cursor:pointer}.avatar-bubble{position:relative;width:42px;height:42px;flex-shrink:0;border-radius:50%;border:3px solid var(--panel-line);box-shadow:0 3px 0 var(--edge-shadow);transition:border-color .3s,opacity .3s;overflow:visible;animation:bubbleIn .45s var(--spring) backwards}.avatar-bubble:nth-child(2){animation-delay:.03s}.avatar-bubble:nth-child(3){animation-delay:.06s}.avatar-bubble:nth-child(4){animation-delay:.09s}.avatar-bubble:nth-child(5){animation-delay:.12s}.avatar-bubble:nth-child(n+6){animation-delay:.15s}@keyframes bubbleIn{0%{transform:scale(.2);opacity:0}}.avatar-bubble.submitted{border-color:var(--accent-green);box-shadow:0 3px 0 var(--edge-shadow),0 0 10px color-mix(in srgb,var(--accent-green) 45%,transparent)}.avatar-bubble.away{opacity:.6}.avatar-bubble.voted{border-color:var(--accent-blue);box-shadow:0 3px 0 var(--edge-shadow),0 0 10px color-mix(in srgb,var(--accent-blue) 40%,transparent)}.avatar-bubble.placeholder{background:var(--panel);animation:placeholderPulse 1.4s ease-in-out infinite}@keyframes placeholderPulse{0%,to{opacity:.4}50%{opacity:.8}}.avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.vote-badge{position:absolute;bottom:-4px;right:-4px;font-size:.75rem;line-height:1}.crown-badge{position:absolute;top:-11px;left:50%;transform:translate(-50%);font-size:.85rem;line-height:1;pointer-events:none}.not-participant-icon{font-size:3rem;margin-bottom:10px;display:inline-block;animation:titleBob 1.8s ease-in-out infinite}.not-participant h3{font-family:var(--font-display);font-size:1.3rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-gold);margin-bottom:8px}.not-participant p{color:var(--text-secondary);font-size:.9rem;margin-top:4px}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05020c9e;z-index:100;animation:overlayIn .2s ease-out}@keyframes overlayIn{0%{opacity:0}}.settings-drawer{position:fixed;bottom:0;left:0;right:0;max-width:var(--page-max);margin:0 auto;height:70vh;background:var(--bg-secondary);border:2px solid var(--panel-line);border-bottom:none;border-radius:24px 24px 0 0;box-shadow:0 -12px 30px #00000073;padding:30px 20px 20px;z-index:101;display:flex;flex-direction:column;gap:20px;transform:translateY(105%);visibility:hidden;transition:transform .28s ease-in,visibility 0s linear .28s;overflow-y:auto}.settings-drawer:before{content:"";position:absolute;top:10px;left:50%;width:44px;height:5px;margin-left:-22px;border-radius:999px;background:var(--panel-line)}.settings-drawer.open{transform:translateY(0);visibility:visible;transition:transform .45s var(--spring),visibility 0s linear 0s}.settings-drawer-header{display:flex;align-items:center;justify-content:space-between}.settings-drawer-header h2{font-family:var(--font-display);font-size:1.3rem;letter-spacing:.08em;text-transform:uppercase;background:none;-webkit-text-fill-color:var(--accent-gold);color:var(--accent-gold)}.settings-close-btn{width:36px;height:36px;display:grid;place-items:center;background:var(--bg-card);border:none;border-radius:50%;color:var(--text-primary);font-size:1rem;cursor:pointer;box-shadow:0 3px 0 var(--edge-shadow);transition:transform .08s ease-out,box-shadow .08s ease-out}.settings-close-btn:active{transform:translateY(3px);box-shadow:none}.settings-section h3{font-family:var(--font-display);color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.leaderboard-drawer{height:70vh;gap:12px;overflow:hidden}.lb-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;text-align:center}.lb-nav-btn{width:40px;height:40px;display:grid;place-items:center;background:var(--bg-card);border:none;border-radius:50%;color:var(--accent-gold);cursor:pointer;box-shadow:0 3px 0 var(--edge-shadow);transition:transform .08s ease-out,box-shadow .08s ease-out}.lb-nav-btn:active{transform:translateY(3px);box-shadow:none}.lb-nav-label{font-family:var(--font-display);font-size:1.15rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary)}.lb-list,.pd-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.lb-row,.pd-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,var(--bg-card) 55%,transparent)}.lb-row:first-child{background:color-mix(in srgb,var(--accent-gold) 16%,var(--bg-card))}.lb-rank{width:28px;text-align:center;font-family:var(--font-display);font-size:1.15rem;flex-shrink:0}.lb-avatar,.pd-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.lb-name,.pd-name{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-points{font-family:var(--font-display);color:var(--accent-gold);font-size:1rem;letter-spacing:.04em;flex-shrink:0}.lb-empty,.pd-empty{color:var(--text-secondary);text-align:center;margin-top:20px;font-size:.9rem}.players-drawer{height:70vh;gap:12px;overflow:hidden}.pd-row.away{opacity:.55}.pd-trophy{font-size:.85rem}.pd-status{flex-shrink:0;font-family:var(--font-display);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;padding:3px 9px;border-radius:999px;border:1px solid transparent}.pd-status.done{color:var(--accent-green);border-color:var(--accent-green);background:color-mix(in srgb,var(--accent-green) 14%,transparent)}.pd-status.voted{color:var(--accent-blue);border-color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 14%,transparent)}.pd-status.pending{color:var(--text-secondary);border-color:var(--bg-card);background:var(--bg-card)}.dict-drawer{height:75vh;gap:0;overflow:hidden}.dict-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:20px;padding-top:4px}.dict-status{color:var(--text-secondary);font-size:.9rem;text-align:center;margin-top:20px}.dict-entry{display:flex;flex-direction:column;gap:14px}.dict-word-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.dict-word{font-size:1.6rem;color:var(--accent-gold);font-family:var(--font-display);letter-spacing:.03em}.dict-phonetic{font-size:.85rem;color:var(--text-secondary)}.dict-meaning{display:flex;flex-direction:column;gap:8px}.dict-pos{font-family:var(--font-display);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary)}.dict-defs{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}.dict-def-item{font-size:.92rem;color:var(--text-primary);line-height:1.5}.dict-example{margin:4px 0 0;font-style:italic;color:var(--text-secondary);font-size:.82rem}.theme-grid{display:flex;gap:12px;flex-wrap:wrap}.theme-swatch{background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;padding:0}.theme-preview{width:46px;height:46px;border-radius:12px;border:3px solid transparent;box-shadow:0 3px 0 var(--edge-shadow);transition:border-color .2s,transform .2s var(--spring)}.theme-swatch.active .theme-preview{transform:scale(1.12) rotate(-3deg);border-color:var(--accent-gold)!important}.theme-swatch span{font-size:.72rem;color:var(--text-secondary)}.settings-hint{color:var(--text-secondary);font-size:.78rem;margin-top:6px}.sound-toggle{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-primary);font-weight:600}.toggle-track{width:52px;height:30px;background:var(--bg-card);border-radius:999px;position:relative;cursor:pointer;box-shadow:inset 0 3px #0000004d;transition:background .2s}.toggle-track.on{background:var(--accent-green)}.toggle-thumb{position:absolute;top:3px;left:3px;width:24px;height:24px;background:#fff;border-radius:50%;box-shadow:0 2px #0000004d;transition:transform .3s var(--spring)}.toggle-track.on .toggle-thumb{transform:translate(22px)}.debug-picker-screens{color:var(--accent-gold);font-size:.9rem}@media (prefers-reduced-motion: reduce){.page,.ballot-entry,.avatar-bubble,.check-icon,.loading-screen .app-title,.error-screen h2:before,.not-participant-icon,.header-phase.urgent{animation:none!important}}.debug-picker{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:var(--bg-primary);padding:32px;text-align:center}.debug-picker h1{font-size:2rem;margin:0}.debug-picker h2{color:var(--text-secondary);font-size:1rem;font-weight:400;margin:0}.debug-picker-presets{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:340px}.debug-picker-presets button{padding:10px 20px;background:var(--bg-card);border:2px solid var(--accent-gold);border-radius:var(--border-radius);color:var(--text-primary);font-size:1rem;cursor:pointer;transition:background .15s,color .15s}.debug-picker-presets button:hover{background:var(--accent-gold);color:#000}.debug-picker-custom{display:flex;gap:8px}.debug-picker-custom input{padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--text-secondary);border-radius:var(--border-radius);color:var(--text-primary);font-size:1rem;width:160px}.debug-picker-custom button{padding:10px 16px;background:var(--bg-card);border:2px solid var(--accent-gold);border-radius:var(--border-radius);color:var(--text-primary);font-size:1rem;cursor:pointer;transition:background .15s,color .15s}.debug-picker-custom button:hover:not(:disabled){background:var(--accent-gold);color:#000}.debug-picker-custom button:disabled{opacity:.4;cursor:not-allowed}.debug-picker-note{color:var(--text-secondary);font-size:.8rem;background:var(--bg-secondary);padding:6px 12px;border-radius:6px}.debug-toolbar{position:fixed;bottom:16px;left:50%;transform:translate(-50%);background:#000000e0;border:1px solid var(--accent-red);border-radius:10px;padding:8px 14px;display:flex;flex-direction:column;align-items:center;gap:6px;z-index:1000;font-size:.75rem;color:var(--accent-red);min-width:280px;pointer-events:all}.debug-toolbar-label{font-weight:700;letter-spacing:.05em;opacity:.8}.debug-toolbar-controls{display:flex;gap:6px;align-items:center}.debug-phase-btn{padding:4px 10px;background:transparent;border:1px solid var(--accent-red);border-radius:6px;color:var(--accent-red);font-size:.75rem;cursor:pointer;opacity:.55;transition:opacity .12s,background .12s}.debug-phase-btn.active{background:var(--accent-red);color:#fff;opacity:1;cursor:default}.debug-phase-btn:hover:not(.active){opacity:1}.debug-reset-btn{padding:4px 10px;background:transparent;border:1px solid #666;border-radius:6px;color:#888;font-size:.75rem;cursor:pointer;transition:border-color .12s,color .12s}.debug-reset-btn:hover{border-color:var(--accent-red);color:var(--accent-red)}.debug-phase-btn:disabled{opacity:.25;cursor:default}.debug-players-label{font-weight:700;opacity:.8}.debug-players-input{width:48px;padding:4px 6px;background:transparent;border:1px solid var(--accent-red);border-radius:6px;color:var(--accent-red);font-size:.75rem;text-align:center}.debug-picker-config{display:flex;flex-direction:column;gap:10px;align-items:center;border-top:1px solid rgba(255,255,255,.15);padding-top:16px;width:100%;max-width:340px}.debug-picker-config-row{display:flex;align-items:center;gap:10px;justify-content:center}.debug-picker-config label{color:var(--text-secondary);font-size:.85rem;min-width:64px;text-align:right}.debug-picker-config input[type=date],.debug-picker-config input[type=number]{padding:6px 10px;background:var(--bg-secondary);border:1px solid var(--text-secondary);border-radius:var(--border-radius);color:var(--text-primary);font-size:.9rem}.debug-picker-config input[type=number]{width:62px}.debug-picker-error{color:var(--accent-red);font-size:.8rem;margin:0}.wcard{--foil: linear-gradient(115deg, #5e400a 0%, #f9e08b 16%, #b8860b 30%, #fff6cc 44%, #a0740e 58%, #f3d36b 74%, #6b4a0c 100%);--edge: linear-gradient(#6b4a0c, #ffe27a 22%, #b8860b 48%, #fff0b8 74%, #6b4a0c);--accent: #ffd700;--accent-soft: rgba(255, 215, 0, .55);--accent-deep: #7a4f00;--ink: #fff6dc;--ink-soft: #eadcff;--back-bg: radial-gradient(circle at 50% 44%, #7a24bd 0%, #3d0f66 48%, #1d0533 100%);--back-label: #ffe08a;--emblem-disc: #2a0b45;--emblem-core: #3d1066;--panel-bg: radial-gradient(120% 70% at 50% 0%, rgba(160, 80, 255, .35), transparent 70%), linear-gradient(#3a1061, #1c0533);--ribbon-bg: linear-gradient(#ef4655, #a4161a);--ribbon-ink: #fff1bf;--art-bg: #140524}.wcard[data-medal=silver]{--foil: linear-gradient(115deg, #4f5864 0%, #f4f7fb 16%, #9aa6b4 30%, #ffffff 44%, #7d8896 58%, #dfe6ee 74%, #4a525d 100%);--edge: linear-gradient(#4f5864, #f4f7fb 22%, #8d99a7 48%, #ffffff 74%, #4f5864);--accent: #b9d3f7;--accent-soft: rgba(185, 211, 247, .55);--accent-deep: #3d4652;--ink: #f4f7fb;--ink-soft: #d4dde8;--back-bg: radial-gradient(circle at 50% 44%, #4d6d99 0%, #22344f 48%, #0d1626 100%);--back-label: #e8eef5;--emblem-disc: #142033;--emblem-core: #1f3049;--panel-bg: radial-gradient(120% 70% at 50% 0%, rgba(140, 180, 255, .28), transparent 70%), linear-gradient(#24324a, #0f1726);--ribbon-bg: linear-gradient(#5d82b8, #2b4570);--ribbon-ink: #f4f7fb;--art-bg: #0b1220}.wcard[data-medal=bronze]{--foil: linear-gradient(115deg, #4d250d 0%, #f2b880 16%, #a0582a 30%, #ffd9b0 44%, #8a4a1f 58%, #e09a5f 74%, #4d250d 100%);--edge: linear-gradient(#4d250d, #f2b880 22%, #a0582a 48%, #ffd9b0 74%, #4d250d);--accent: #f4ae6c;--accent-soft: rgba(240, 168, 104, .55);--accent-deep: #5a2d0c;--ink: #fff0e2;--ink-soft: #f1d4bd;--back-bg: radial-gradient(circle at 50% 44%, #9a5530 0%, #4a2414 48%, #200d06 100%);--back-label: #ffd2a8;--emblem-disc: #2a1208;--emblem-core: #45200f;--panel-bg: radial-gradient(120% 70% at 50% 0%, rgba(255, 160, 90, .25), transparent 70%), linear-gradient(#4a2416, #1f0d07);--ribbon-bg: linear-gradient(#c8653a, #7a3417);--ribbon-ink: #fff0e2;--art-bg: #1a0b05}.wcard[data-medal=honorable]{--foil: linear-gradient(115deg, #b9b0a1, #ece6da 45%, #cfc6b8);--edge: linear-gradient(#a59c8c, #ece6da 50%, #a59c8c);--accent: #d9ccff;--accent-soft: rgba(217, 204, 255, .45);--accent-deep: #3b2f6b;--ink: #f3efff;--ink-soft: #cfc6ea;--back-bg: radial-gradient(circle at 50% 44%, #3c3a5c 0%, #232238 55%, #141322 100%);--back-label: #e6ddff;--emblem-disc: #1c1b2e;--emblem-core: #2a2842;--panel-bg: linear-gradient(#2c2a44, #16152a);--ribbon-bg: linear-gradient(#6b5fb5, #40378a);--ribbon-ink: #f3efff;--art-bg: #12111f}.wcard{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;--thick: 1.4cqw}.wcard-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:5.5cqw;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 0 0 .3cqw #00000059}.wcard-back{transform:translateZ(calc(var(--thick) / 2))}.wcard-front{transform:rotateY(180deg) translateZ(calc(var(--thick) / 2));visibility:hidden}.wcard-edge{position:absolute;top:5.5cqw;bottom:5.5cqw;left:calc(50% - var(--thick) / 2);width:var(--thick);background:var(--edge)}.wcard-edge-r{transform:rotateY(90deg) translateZ(50cqw)}.wcard-edge-l{transform:rotateY(-90deg) translateZ(50cqw)}.wcard-foil-frame{position:absolute;top:0;right:0;bottom:0;left:0;padding:2.6cqw;border-radius:inherit;background:var(--foil);background-size:280% 280%;background-position:50% 50%}.wcard-foil-sheen{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.7) 50%,transparent 68%);mix-blend-mode:screen;opacity:.3}.wcard-back-panel{position:relative;height:100%;border-radius:3.6cqw;overflow:hidden;background:var(--back-bg);box-shadow:inset 0 0 0 .7cqw var(--accent-soft),inset 0 0 8cqw #0000008c}.wcard-back-stripes{position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;background:repeating-conic-gradient(from -5.625deg at 50% 47%,#ffffff17,#ffffff17 11.25deg,#0000001f 11.25deg,#0000001f 22.5deg)}.wcard-back-lattice{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.18;background-image:linear-gradient(45deg,var(--accent) .3cqw,transparent .3cqw),linear-gradient(-45deg,var(--accent) .3cqw,transparent .3cqw);background-size:7cqw 7cqw;-webkit-mask-image:radial-gradient(circle at 50% 44%,transparent 30%,#000 70%);mask-image:radial-gradient(circle at 50% 44%,transparent 30%,#000 70%)}.wcard-emblem{position:absolute;left:50%;top:44%;width:72cqw;transform:translate(-50%,-50%);filter:drop-shadow(0 1.6cqw 2cqw rgba(0,0,0,.55))}.wcard-emblem-disc{fill:var(--emblem-disc)}.wcard-emblem-core{fill:var(--emblem-core)}.wcard-emblem-arc{font-family:Oswald,sans-serif;font-size:13px;font-weight:600}.wcard-emblem-q{font-family:Oswald,sans-serif;font-weight:600}.wcard-back-label{position:absolute;left:0;right:0;bottom:9cqw;text-align:center;font-family:Oswald,sans-serif;font-weight:600;font-size:5.2cqw;letter-spacing:.22em;text-transform:uppercase;color:var(--back-label);text-shadow:0 .5cqw 0 rgba(0,0,0,.5)}.wcard-back-label small{display:block;font-size:3.6cqw;letter-spacing:.5em;opacity:.7;margin-top:.6cqw}.wcard-corner{position:absolute;color:var(--accent);font-size:6cqw;line-height:1;text-shadow:0 0 2cqw var(--accent-soft)}.wcard-corner.tl{top:4cqw;left:4.5cqw}.wcard-corner.tr{top:4cqw;right:4.5cqw}.wcard-corner.bl{bottom:4cqw;left:4.5cqw}.wcard-corner.br{bottom:4cqw;right:4.5cqw}.wcard-back-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:none;background:linear-gradient(105deg,transparent 38%,rgba(255,250,220,0) 42%,rgba(255,250,220,.65) 50%,rgba(255,250,220,0) 58%,transparent 62%);mix-blend-mode:overlay;transform:translate(-120%)}.is-live .wcard-back-shimmer{display:block;animation:wcardShimmer 3.6s ease-in-out infinite}.wcard[data-medal=bronze] .wcard-back-shimmer{opacity:.7}.wcard[data-medal=honorable] .wcard-back-shimmer{opacity:.35}@keyframes wcardShimmer{0%,50%{transform:translate(-120%)}to{transform:translate(120%)}}.wcard-front-panel{position:relative;height:100%;border-radius:3.6cqw;overflow:hidden;padding:3.4cqw;display:flex;flex-direction:column;gap:2.8cqw;background:var(--panel-bg);box-shadow:inset 0 0 0 .7cqw var(--accent-soft),inset 0 0 8cqw #00000080}.wcard-top{display:flex;align-items:center;justify-content:space-between;gap:2cqw;font-family:Oswald,sans-serif;font-weight:600;font-size:4.4cqw;letter-spacing:.1em;text-transform:uppercase;line-height:1}.wcard-ribbon{padding:1.3cqw 4.2cqw 1.1cqw;color:var(--ribbon-ink);background:var(--ribbon-bg);clip-path:polygon(0 0,100% 0,95% 50%,100% 100%,0 100%,5% 50%);text-shadow:0 .4cqw 0 rgba(0,0,0,.45);white-space:nowrap}.wcard-date{color:var(--accent);white-space:nowrap;font-size:.86em}.wcard-art{position:relative;flex:none;aspect-ratio:1 / .9;border-radius:2.8cqw;overflow:hidden;background:var(--art-bg);box-shadow:0 0 0 .9cqw var(--accent-deep),0 0 0 1.5cqw #00000073,0 2cqw 4cqw #00000073}.wcard[data-medal=gold] .wcard-art{box-shadow:0 0 0 .9cqw #d4a017,0 0 0 1.5cqw #00000073,0 2cqw 4cqw #00000073}.wcard[data-medal=silver] .wcard-art{box-shadow:0 0 0 .9cqw #b8c4d0,0 0 0 1.5cqw #00000073,0 2cqw 4cqw #00000073}.wcard[data-medal=bronze] .wcard-art{box-shadow:0 0 0 .9cqw #c0703a,0 0 0 1.5cqw #00000073,0 2cqw 4cqw #00000073}.wcard-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 5cqw #00000073}.wcard-art-img{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.wcard-art-fallback,.wcard-art-pending{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4cqw;background:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 8cqw,transparent 8cqw 16cqw),radial-gradient(circle at 50% 40%,#8a2be2,#2a0b45 75%)}.wcard-art-fallback.spicy{background:repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 8cqw,transparent 8cqw 16cqw),radial-gradient(circle at 50% 75%,#ff7b00,#c1121f 45%,#3d0410 85%)}.wcard-art-letters{display:flex;gap:2cqw}.wcard-art-letters span{font-family:Oswald,sans-serif;font-weight:600;font-size:15cqw;line-height:1;color:gold;text-shadow:0 1cqw 0 #8a5a00,0 2cqw 4cqw rgba(0,0,0,.5);animation:wcardLetterBob 2.4s ease-in-out infinite}@keyframes wcardLetterBob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5cqw)}}.wcard-art-caption{max-width:80%;text-align:center;font-family:Oswald,sans-serif;font-weight:600;font-size:4.6cqw;letter-spacing:.04em;color:#fff1d6;text-shadow:0 .4cqw 0 rgba(0,0,0,.5)}.wcard-art-pending-swirl{width:22cqw;height:22cqw;border-radius:50%;background:conic-gradient(#ff4d6d,gold,#4ecdc4,#a06cff,#ff4d6d);-webkit-mask:radial-gradient(circle,transparent 52%,#000 54%);mask:radial-gradient(circle,transparent 52%,#000 54%);animation:wcardSpin 1.4s linear infinite}@keyframes wcardSpin{to{transform:rotate(360deg)}}.wcard-title{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;font-family:Oswald,sans-serif;font-weight:600;line-height:1.04;letter-spacing:.01em;text-transform:uppercase;color:var(--ink);text-shadow:0 .5cqw 0 rgba(0,0,0,.5);overflow-wrap:anywhere}.wcard-title.size-xl{font-size:8.4cqw}.wcard-title.size-lg{font-size:6.9cqw}.wcard-title.size-md{font-size:5.7cqw}.wcard-title.size-sm{font-size:4.8cqw}.wcard-initial{color:var(--accent);text-shadow:0 .5cqw 0 var(--accent-deep),0 0 3cqw var(--accent-soft)}.wcard-byline{display:flex;align-items:center;gap:2.2cqw;font-size:4.3cqw;line-height:1;color:var(--ink-soft)}.wcard-avatar{flex:none;width:7.5cqw;height:7.5cqw;border-radius:50%;box-shadow:0 0 0 .5cqw var(--accent)}.wcard-name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:700}.wcard-points{flex:none;padding:1.1cqw 2.6cqw .9cqw;border-radius:99px;border:.45cqw solid var(--accent-soft);background:color-mix(in srgb,var(--accent) 14%,transparent);font-family:Oswald,sans-serif;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.wcard-holo,.wcard-glare,.wcard-streak,.wcard-shade{position:absolute;pointer-events:none}.wcard-holo{left:-50%;top:-50%;width:200%;height:200%;background:linear-gradient(115deg,transparent 8%,rgba(255,0,140,.55) 22%,rgba(255,200,0,.55) 32%,rgba(0,255,170,.5) 42%,rgba(0,170,255,.55) 52%,rgba(170,0,255,.55) 62%,rgba(255,0,140,.5) 72%,transparent 86%);mix-blend-mode:color-dodge;opacity:0}.wcard[data-medal]:not([data-medal=gold]) .wcard-holo{display:none}.wcard-glare{left:-20%;top:-20%;width:140%;height:140%;background:radial-gradient(circle closest-side,#ffffffe6,#ffffff59 26%,#fff0 72%);mix-blend-mode:overlay;opacity:.3}.wcard-streak{top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.12) 44%,rgba(255,252,235,.7) 49%,rgba(255,255,255,.9) 50%,rgba(255,252,235,.7) 51%,rgba(255,255,255,.12) 56%,transparent 62%);mix-blend-mode:screen;opacity:0}.wcard-shade{top:0;right:0;bottom:0;left:0;background:#06010e;opacity:0}.is-live .wcard-holo,.is-live .wcard-glare,.is-live .wcard-streak,.is-live .wcard-shade,.is-live .wcard-foil-sheen{will-change:transform,opacity}.wreveal{--card-w: min(72vw, 290px);--card-w: max(200px, min(72vw, 290px, calc((100svh - 290px) / 1.4)));width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;padding:clamp(4px,1.2vh,16px) 0 8px;user-select:none;-webkit-user-select:none}.wreveal-stage{position:relative;z-index:45;width:var(--card-w);aspect-ratio:5 / 7;container-type:inline-size;will-change:transform}.wreveal-persp{position:absolute;top:0;right:0;bottom:0;left:0;perspective:1100px;cursor:pointer;touch-action:none;outline:none;-webkit-tap-highlight-color:transparent}.wreveal-persp:focus-visible{outline:3px solid var(--accent-gold);outline-offset:8px;border-radius:5.5cqw}.wreveal-card{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;will-change:transform}.wreveal-glow{position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,rgba(255,215,0,.6),rgba(255,160,0,.18) 55%,transparent 78%);opacity:0;will-change:opacity,transform}.wreveal-shadow{position:absolute;left:50%;bottom:-7cqw;width:92%;height:16cqw;pointer-events:none;background:radial-gradient(closest-side,rgba(0,0,0,.7),rgba(0,0,0,.28) 55%,transparent 100%);transform:translate(-50%);will-change:transform,opacity}.wreveal-prompt{position:relative;z-index:46;max-width:100%;text-align:center;text-shadow:0 2px 6px rgba(0,0,0,.75);font-family:Oswald,sans-serif;font-weight:600;font-size:1rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-gold);min-height:1.5em;opacity:0;transform:translateY(8px) scale(.96);transition:opacity .25s ease,transform .25s ease;pointer-events:none}.wreveal-prompt.show{opacity:1;transform:none;animation:wrevealPrompt 1.8s ease-in-out infinite}@keyframes wrevealPrompt{0%,to{opacity:1}50%{opacity:.55}}.wreveal-sparkle{position:absolute;left:var(--x);top:var(--y);width:6cqw;height:6cqw;margin:-3cqw 0 0 -3cqw;pointer-events:none;background:radial-gradient(circle,#fffbe0 0 12%,transparent 13%),conic-gradient(from 45deg,transparent 0 20%,rgba(255,244,176,.95) 25%,transparent 30% 45%,rgba(255,244,176,.95) 50%,transparent 55% 70%,rgba(255,244,176,.95) 75%,transparent 80% 95%,rgba(255,244,176,.95) 100%);-webkit-mask:radial-gradient(circle,#000 0 30%,transparent 70%);mask:radial-gradient(circle,#000 0 30%,transparent 70%);opacity:0;animation:wrevealTwinkle var(--d) ease-in-out var(--delay) infinite}@keyframes wrevealTwinkle{0%,to{opacity:0;transform:scale(.3) rotate(0)}45%{opacity:1;transform:scale(1) rotate(45deg)}60%{opacity:.2;transform:scale(.6) rotate(70deg)}}.wreveal-fx{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;display:none;will-change:transform}.wreveal-fx.active{display:block}.wreveal-fx-back{z-index:40}.wreveal-fx-front{z-index:46}.wreveal-fx canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.wreveal-dim{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;will-change:opacity;background:radial-gradient(circle at var(--cx, 50%) var(--cy, 50%),rgba(30,8,60,.2) 0,rgba(8,2,18,.9) 60vmax)}.wreveal-flash{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;will-change:opacity;background:radial-gradient(circle at var(--cx, 50%) var(--cy, 50%),#ffffff 0,rgba(255,246,214,.85) 20vmax,rgba(255,230,160,0) 70vmax)}.wreveal.pile{padding-bottom:28px}.pile-progress{display:flex;gap:8px;height:10px}.pile-pip{width:10px;height:10px;border-radius:50%;border:2px solid var(--pip, var(--accent-gold));opacity:.45;transition:transform .25s cubic-bezier(.3,1.6,.5,1),opacity .2s,background .2s}.pile-pip.medal-gold{--pip: #ffd700}.pile-pip.medal-silver{--pip: #dfe6ee}.pile-pip.medal-bronze{--pip: #e0915a}.pile-pip.medal-honorable{--pip: #b9adf0}.pile-pip.current{opacity:1;transform:scale(1.35)}.pile-pip.done{opacity:1;background:var(--pip)}.wreveal-prompt.callout{font-size:1.35rem;letter-spacing:.18em;color:#fff6cc;text-shadow:0 0 12px rgba(255,215,0,.75),0 2px 6px rgba(0,0,0,.8);animation:wrevealCallout .5s cubic-bezier(.3,1.6,.5,1) both}@keyframes wrevealCallout{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}.wreveal-prompt.swipe:before,.wreveal-prompt.swipe:after{display:inline-block;animation:wrevealNudge 1.2s ease-in-out infinite}.wreveal-prompt.swipe:before{content:"‹";margin-right:.5em;animation-name:wrevealNudgeLeft}.wreveal-prompt.swipe:after{content:"›";margin-left:.5em}@keyframes wrevealNudge{0%,to{transform:translate(0)}50%{transform:translate(5px)}}@keyframes wrevealNudgeLeft{0%,to{transform:translate(0)}50%{transform:translate(-5px)}}.perf-noblend .wcard-holo,.perf-noblend .wcard-glare,.perf-noblend .wcard-streak,.perf-noblend .wcard-foil-sheen,.perf-noblend .wcard-back-shimmer{mix-blend-mode:normal}.wreveal-gl{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:45;pointer-events:none}.pile-closeup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:47;touch-action:none;cursor:zoom-out;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.results-loading{display:flex;justify-content:center;padding:max(28px,6vh) 0 8px}.results-loading-card{width:min(72vw,290px);aspect-ratio:5 / 7;border-radius:16px;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.12) 50%,transparent 65%) 0 0 / 300% 100%,radial-gradient(circle at 50% 44%,#5a1f8f,#2a0b45 75%);box-shadow:inset 0 0 0 6px #ffd70040;animation:resultsLoadingSweep 1.4s ease-in-out infinite}@keyframes resultsLoadingSweep{0%{background-position:120% 0,0 0}to{background-position:-20% 0,0 0}}.wreveal-prompt.locked,.wreveal-prompt.callout.rainbow{background:linear-gradient(90deg,var(--accent-gold),#ff7ad9,#4ecdc4,var(--accent-gold));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:resultsPainting 2.4s linear infinite}.wreveal-prompt.callout.rainbow{text-shadow:none;filter:drop-shadow(0 0 8px rgba(255,122,217,.55)) drop-shadow(0 2px 4px rgba(0,0,0,.7));animation:wrevealCallout .5s cubic-bezier(.3,1.6,.5,1) both,resultsPainting 1.6s linear infinite}@keyframes resultsPainting{to{background-position:-300% 0}}.results-summary{gap:18px}.summary-hero{align-self:center;width:min(62%,240px)}.summary-hero.tie{width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.summary-hero.tie .static-card{width:min(46%,220px)}.summary-hero.tie.three .static-card{width:calc((100% - 24px) / 3)}.summary-rest{width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.summary-rest .static-card{width:calc((100% - 20px) / 3)}.summary-heading{align-self:flex-start;font-family:var(--font-display);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.static-card{position:relative;display:block;width:100%;aspect-ratio:5 / 7;padding:0;border:none;background:none;container-type:inline-size;animation:staticCardIn .45s cubic-bezier(.3,1.5,.5,1) backwards}button.static-card{cursor:pointer}.summary-rest .static-card:nth-child(2){animation-delay:.06s}.summary-rest .static-card:nth-child(3){animation-delay:.12s}@keyframes staticCardIn{0%{opacity:0;transform:translateY(18px) scale(.92)}}.static-card-inner{position:absolute;top:0;right:0;bottom:0;left:0}.static-card .wcard{transform-style:flat}.static-card .wcard-front{visibility:visible;transform:none;box-shadow:0 1.5cqw 6cqw #00000073}.static-card .wcard-back,.static-card .wcard-edge{display:none}.rankings-enter{animation:rankingsIn .4s cubic-bezier(.2,1.2,.4,1) backwards}@keyframes rankingsIn{0%{opacity:0;transform:translateY(14px)}}.static-card-img{display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.static-card-loading{width:100%;height:100%;border-radius:5.5cqw;background:var(--panel);animation:softPulse 1.2s ease-in-out infinite}.phase-view{display:contents}.phase-view[hidden]{display:none}.day-page{display:flex;flex-direction:column;gap:8px}.screen-header{display:grid;grid-template-columns:76px 1fr 76px;align-items:center;min-height:44px}.screen-back{justify-self:start;display:inline-flex;align-items:center;gap:2px;padding:8px 10px 8px 2px;border:none;background:none;color:var(--accent-gold);font:inherit;font-family:var(--font-display);font-size:1rem;letter-spacing:.06em;cursor:pointer}.page .screen-title,.screen-title{margin:0;text-align:center;font-family:var(--font-display);font-weight:600;font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-header-extra{justify-self:end;display:flex;align-items:center}.summary-links,.lb-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.summary-links .secondary-btn,.lb-links .secondary-btn{flex:1 1 140px;min-height:42px;font-size:.95rem}button.lb-row,button.pd-row{width:100%;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,background-color .15s ease}button.lb-row:disabled,button.pd-row:disabled{cursor:default}button.lb-row:not(:disabled):active,button.pd-row:not(:disabled):active{transform:scale(.98)}.calendar-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;text-align:center}.calendar-nav .lb-nav-btn{display:grid;place-items:center}.calendar-nav .lb-nav-btn:disabled{opacity:.25;cursor:default}.calendar-month{font-family:var(--font-display);font-size:1.15rem;letter-spacing:.08em;text-transform:uppercase}.calendar-swipe{touch-action:pan-y;overflow:hidden;padding:8px;margin:-8px}.calendar-grid.enter-right{animation:calendarEnterRight .34s var(--spring) backwards}.calendar-grid.enter-left{animation:calendarEnterLeft .34s var(--spring) backwards}@keyframes calendarEnterRight{0%{transform:translate(40%);opacity:0}}@keyframes calendarEnterLeft{0%{transform:translate(-40%);opacity:0}}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-grid.loading{min-height:320px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-card) 40%,transparent);animation:calendarPulse 1.2s ease-in-out infinite alternate}@keyframes calendarPulse{to{opacity:.5}}.calendar-weekday{text-align:center;font-family:var(--font-display);font-size:.75rem;letter-spacing:.08em;color:var(--text-secondary)}.calendar-day{position:relative;aspect-ratio:1;display:flex;align-items:flex-end;justify-content:flex-start;padding:4px 5px;border-radius:10px;overflow:hidden;font-family:var(--font-display);font-size:.8rem;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-card) 30%,transparent);opacity:.55}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--accent-gold);opacity:.9}.calendar-day.lit{border:none;font:inherit;font-family:var(--font-display);font-size:.8rem;color:#fff;background:radial-gradient(circle at 50% 40%,#5a1f8f,#2a0b45 75%);box-shadow:0 3px #00000059,inset 0 0 0 2px #ffd7008c;opacity:1;cursor:pointer;transition:transform .12s ease;-webkit-tap-highlight-color:transparent}.calendar-day.lit:active{transform:scale(.94)}.calendar-day.lit.empty{box-shadow:0 3px #00000059,inset 0 0 0 2px var(--panel-line)}.calendar-day img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.calendar-day.lit:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.65),transparent 55%)}.calendar-mystery{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:#ffe08a;text-shadow:0 0 8px rgba(255,215,0,.7)}.calendar-num{position:relative;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.8)}.calendar-day.unseen{background:repeating-linear-gradient(45deg,rgba(255,215,0,.07) 0 4px,transparent 4px 9px),radial-gradient(circle at 50% 42%,#7a24bd,#2a0b45 78%);animation:calendarUnseen 1.8s ease-in-out infinite alternate}@keyframes calendarUnseen{0%{box-shadow:0 3px #00000059,inset 0 0 0 2px #ffd7008c,0 0 #ffd70000}to{box-shadow:0 3px #00000059,inset 0 0 0 2px #ffe27a,0 0 14px #ffd70099}}.collection-page{gap:12px}.collection-avatar{width:32px;height:32px;border-radius:50%;box-shadow:0 0 0 2px var(--panel-line)}.collection-count{text-align:center;font-family:var(--font-display);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.carousel{position:relative;margin:0 calc(-1 * var(--gutter));padding:6px 0 10px;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;outline:none;cursor:grab}.carousel:active{cursor:grabbing}.carousel:focus-visible .carousel-stage{outline:3px solid var(--accent-gold);outline-offset:8px;border-radius:5.5%}.carousel-stage{width:min(58vw,260px,calc((100svh - 400px) / 1.4));min-width:170px;aspect-ratio:5 / 7;margin:0 auto}.carousel-failed{text-align:center;color:var(--text-secondary)}.collection-caption{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;min-height:28px;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase}.collection-medal{padding:3px 10px;border-radius:999px;font-size:.75rem;color:#1a0d2e}.collection-medal.medal-gold{background:gold}.collection-medal.medal-silver{background:#b9d3f7}.collection-medal.medal-bronze{background:#f4ae6c}.collection-medal.medal-honorable{background:#d9ccff}.collection-date{font-size:.95rem}.collection-rarity{font-size:.75rem;letter-spacing:.1em;color:#fff6cc;text-shadow:0 0 8px rgba(255,215,0,.6)}.collection-rarity.rarity-rainbow{background:linear-gradient(90deg,var(--accent-gold),#ff7ad9,#4ecdc4,var(--accent-gold));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;animation:resultsPainting 2.4s linear infinite}.collection-actions{display:flex;justify-content:center}.collection-actions .btn{min-width:180px}.collection-note{text-align:center;font-size:.8rem;color:var(--text-secondary)}.collection-none{margin-top:18vh;text-align:center;font-family:var(--font-display);font-size:1.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.collection-loading{margin-top:18vh;text-align:center;color:var(--text-secondary);animation:collectionLoading .3s ease .4s backwards}@keyframes collectionLoading{0%{opacity:0}}.collection-empty{text-align:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:6px;padding:24px 8px}.month-strip{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;margin:0 calc(-1 * var(--gutter));padding-inline:var(--gutter);scrollbar-width:none;scroll-snap-type:x proximity}.month-strip::-webkit-scrollbar{display:none}.month-chip{flex:none;display:flex;align-items:baseline;gap:6px;padding:7px 12px;border-radius:999px;border:2px solid var(--panel-line);background:var(--panel);color:var(--text-primary);font:inherit;font-family:var(--font-display);font-size:.85rem;letter-spacing:.05em;cursor:pointer;scroll-snap-align:center;-webkit-tap-highlight-color:transparent}.month-chip span{font-size:.7rem;color:var(--text-secondary)}.month-chip.active{border-color:var(--accent-gold);color:var(--accent-gold)}
