:root{--bg: #1a1a2e;--text: #eee;--muted: #888;--accent: #6c5ce7;--accent-hover: #5b4cdb;--card: #16213e;--ok: #00b894;--fail: #e17055;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100dvh}#root{min-height:100dvh}.page{padding:calc(16px + var(--safe-top)) 16px calc(24px + var(--safe-bottom));max-width:480px;margin:0 auto}.header h1{margin:0 0 4px;font-size:1.5rem}.subtitle{color:var(--muted);margin:0 0 16px}.hint{color:var(--muted);font-size:.9rem}.error-text{color:var(--fail);margin:12px 0}.badge{display:inline-block;background:var(--card);padding:4px 10px;border-radius:999px;font-size:.8rem;margin-bottom:12px}.progress-bar{height:8px;background:var(--card);border-radius:4px;overflow:hidden;margin:12px 0}.progress-fill{height:100%;background:var(--accent);transition:width .3s}.round-list{list-style:none;padding:0;margin:0}.round-item{display:flex;justify-content:space-between;width:100%;min-height:48px;padding:14px 16px;margin-bottom:8px;background:var(--card);border:none;border-radius:12px;color:var(--text);font-size:1rem;cursor:pointer;text-align:left}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:none;border-radius:12px;font-size:1rem;cursor:pointer;text-decoration:none;color:#fff}.btn.primary{background:var(--accent)}.btn.primary:hover{background:var(--accent-hover)}.btn.secondary{background:var(--card);color:var(--text)}.btn.block{width:100%;margin-top:12px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.round{margin-top:8px}.round-label{color:var(--muted);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.quote,.statement{font-size:1.15rem;line-height:1.4;margin:12px 0}.options{display:flex;flex-direction:column;gap:8px}.options.row{flex-direction:row}.option-btn{min-height:48px;padding:12px 16px;background:var(--card);border:2px solid transparent;border-radius:12px;color:var(--text);font-size:1rem;cursor:pointer;text-align:left}.option-btn:disabled{opacity:.6;cursor:default}.option-btn.nominee .nominee-quote{font-style:italic}.feedback.ok{color:var(--ok)}.feedback.fail,.error{color:var(--fail)}.back-btn,.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:8px 0;font-size:.95rem}.link-btn.danger{color:var(--fail)}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.login-card{background:var(--card);padding:32px 28px;border-radius:20px;max-width:400px;width:100%;text-align:center;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 48px #0006}.login-logo{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.login-card h2{margin:0 0 8px;font-size:1.35rem}.login-subtitle{color:var(--muted);font-size:.9rem;margin:0 0 20px;line-height:1.4}.login-widget-slot{min-height:48px;display:flex;align-items:center;justify-content:center;margin:8px 0}.login-status{color:var(--accent);margin:12px 0}.login-error{text-align:center;font-size:.9rem}.login-hint{font-size:.8rem;margin-top:8px}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0 16px;color:var(--muted);font-size:.85rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.login-fallback{margin-top:0}.admin-shell{min-height:100dvh;background:var(--bg)}.admin-header{border-bottom:1px solid rgba(255,255,255,.08);background:#16213e99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.admin-header-inner{max-width:720px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-weight:600}.admin-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--accent);font-size:.7rem;font-weight:700}.admin-user{display:flex;align-items:center;gap:12px}.admin-user-name{font-size:.9rem;color:var(--muted);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-main{max-width:720px;margin:0 auto;padding:calc(16px + var(--safe-top)) 16px calc(32px + var(--safe-bottom))}.admin-page-title{margin:0 0 8px;font-size:1.5rem}.admin-subtitle{color:var(--muted);margin:0 0 24px}.status-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.status-badge--ok{background:#00b89433;color:var(--ok)}.status-badge--warn{background:#fdcb6e26;color:#fdcb6e}.status-badge--neutral{background:#6c5ce733;color:var(--accent)}.status-badge--muted{background:#8883;color:var(--muted)}.admin-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.admin-card{background:var(--card);padding:20px;border-radius:16px;border:1px solid rgba(255,255,255,.06)}.admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-card-head h3{margin:0;font-size:1.1rem}.admin-card-meta{color:var(--muted);font-size:.875rem;margin:0 0 16px;line-height:1.5}.admin-card-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-empty{text-align:center;padding:48px 24px;background:var(--card);border-radius:16px;color:var(--muted)}.admin-empty h3{color:var(--text);margin:0 0 8px}.mod-rounds{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:12px}.mod-round-card{background:var(--card);padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.mod-round-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mod-round-body{font-size:.95rem;line-height:1.5}.mod-quote,.mod-statement,.mod-question{margin:0 0 8px;font-size:1.05rem;line-height:1.45}.mod-quote{font-style:italic;border-left:3px solid var(--accent);padding-left:12px;margin-left:0}.mod-options,.mod-nominations{margin:8px 0 0;padding-left:20px}.mod-json{font-size:.75rem;overflow:auto;max-height:120px;margin:0;opacity:.8}.drop-header{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px}.drop-header .subtitle{margin:0;flex:1 1 100%}.collection-stats{background:var(--card);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;margin-bottom:20px}.collection-stats--empty{border-style:dashed}.collection-stats-title{margin:0 0 4px;font-size:1.05rem}.collection-stats-sub{margin:0 0 16px;color:var(--muted);font-size:.875rem}.collection-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px}.collection-stat{background:#ffffff08;border-radius:12px;padding:12px;text-align:center}.collection-stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--accent)}.collection-stat-label{display:block;margin-top:4px;font-size:.75rem;color:var(--muted);line-height:1.3}.collection-stats-warn{margin:16px 0 0;padding:12px 14px;border-radius:10px;background:#fdcb6e1f;color:#fdcb6e;font-size:.875rem;line-height:1.45}.collection-samples-title{margin:18px 0 8px;font-size:.9rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.collection-samples{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.collection-samples li{font-size:.9rem;line-height:1.45;padding:10px 12px;background:#ffffff08;border-radius:10px}.collection-samples strong{color:var(--text)}.admin-list{list-style:none;padding:0}.round-type{font-size:.75rem;color:var(--accent);text-transform:uppercase}.share-box{background:var(--card);padding:16px;border-radius:12px;margin:16px 0}.field{display:block;margin:12px 0}.field select{display:block;width:100%;min-height:44px;margin-top:4px;padding:8px;border-radius:8px;background:var(--bg);color:var(--text);border:1px solid #333}.section{margin:24px 0}.leaderboard{list-style:none;padding:0}.leaderboard li{padding:8px 0;border-bottom:1px solid #333}.score{font-size:2rem;font-weight:700;color:var(--accent)}.game{--game-bg: #fff0f3;--game-card: #ffffff;--game-soft: #fdeef2;--game-accent: #ff2d6f;--game-accent-soft: #ffe0ea;--game-accent2: #7c3aed;--game-good: #1a8f3c;--game-good-soft: #e7f6ec;--game-bad: #d23b3b;--game-bad-soft: #fbeaea;--game-text: #1a1320;--game-muted: #7a6b75;--game-border: #f1d9e2;min-height:100dvh;background:radial-gradient(900px 500px at 50% -10%,#ffd9e6 0%,var(--game-bg) 60%);color:var(--game-text);padding:calc(26px + var(--safe-top)) 16px calc(26px + var(--safe-bottom));line-height:1.5}.game-wrap{width:100%;max-width:680px;margin:0 auto}.game-card{background:var(--game-card);border:1px solid var(--game-border);border-radius:22px;padding:clamp(20px,5vw,30px);box-shadow:0 12px 40px #ff2d6f1a}.game-badge{display:inline-block;font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:#fff;background:var(--game-accent);border-radius:999px;padding:5px 13px;margin-bottom:16px;font-weight:700}.game-title{font-size:clamp(25px,6.4vw,32px);line-height:1.15;margin:0 0 10px;letter-spacing:-.5px}.game-sub{color:var(--game-muted);font-size:clamp(15px,4vw,16px);margin:0 0 22px}.game-hint{color:var(--game-muted);font-size:14px;margin:0}.game-error{color:var(--game-bad);margin:0}.game-disclaimer{font-size:12px;color:var(--game-muted);margin-top:14px;text-align:center}.game-foot{text-align:center;color:var(--game-muted);font-size:12px;margin-top:18px}.game-progress{height:7px;background:var(--game-soft);border-radius:999px;overflow:hidden;margin-bottom:12px}.game-progress>i{display:block;height:100%;width:0;background:var(--game-accent);transition:width .35s}.game-counter{font-size:14px;color:var(--game-muted);margin:0 0 14px}.game-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:14px;color:var(--game-muted)}.game-link{color:var(--game-accent);font-weight:700;cursor:pointer;background:none;border:none;font-size:14px;padding:0}.game-link--danger{color:var(--game-bad)}.game-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;font-size:16px;font-weight:700;border-radius:14px;padding:16px 22px;width:100%;color:#fff;background:var(--game-accent);min-height:54px;touch-action:manipulation;transition:transform .08s,filter .15s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center}.game-btn:hover{filter:brightness(1.05)}.game-btn:active{transform:translateY(1px)}.game-btn--ghost{background:transparent;border:1.5px solid var(--game-border);color:var(--game-text)}.game-btn--alt{background:var(--game-accent2)}.game-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.game-menu{display:grid;gap:12px;margin:6px 0 16px}.game-mode{display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;background:var(--game-soft);border:1.5px solid var(--game-border);border-radius:16px;padding:16px;color:var(--game-text);touch-action:manipulation;transition:border-color .15s,transform .08s}.game-mode:hover{border-color:var(--game-accent)}.game-mode:active{transform:scale(.99)}.game-mode--done{opacity:.85}.game-mode-ic{font-size:26px;flex:0 0 auto;width:46px;height:46px;display:grid;place-items:center;background:#fff;border-radius:12px;border:1px solid var(--game-border)}.game-mode-title{display:block;font-size:17px;font-weight:700}.game-mode-desc{display:block;font-size:13px;color:var(--game-muted);margin-top:2px}.game-qtag{font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:var(--game-accent);font-weight:700;margin-bottom:12px}.game-qtext{font-size:clamp(20px,5.4vw,26px);font-weight:800;line-height:1.28;letter-spacing:-.3px;margin-bottom:clamp(20px,5vw,30px)}.game-opts{margin-top:6px}.game-opt{display:block;width:100%;text-align:left;background:var(--game-card);border:1.5px solid var(--game-border);color:var(--game-text);border-radius:14px;padding:15px 16px;margin-bottom:11px;cursor:pointer;font-size:clamp(15px,4.1vw,16px);touch-action:manipulation;transition:border-color .15s,background .15s}.game-opt:hover{border-color:var(--game-accent);background:var(--game-soft)}.game-opt--correct{border-color:var(--game-good);background:var(--game-good-soft)}.game-opt--wrong{border-color:var(--game-bad);background:var(--game-bad-soft)}.game-opt:disabled{cursor:default}.game-mark{float:right;font-weight:800;margin-left:10px}.game-opt--correct .game-mark{color:var(--game-good)}.game-opt--wrong .game-mark{color:var(--game-bad)}.game-yn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}.game-yn-yes,.game-yn-no{border:none;border-radius:14px;padding:18px;font-size:15px;font-weight:800;cursor:pointer;min-height:60px;touch-action:manipulation;color:#fff;transition:transform .08s,filter .15s}.game-yn-yes{background:var(--game-good)}.game-yn-no{background:var(--game-bad)}.game-yn-yes:active,.game-yn-no:active{transform:translateY(1px)}.game-reveal{font-size:15px;background:var(--game-soft);border-left:3px solid var(--game-accent);border-radius:10px;padding:14px 16px;margin-top:16px;display:none}.game-reveal--show{display:block}.game-pct{font-weight:800;color:var(--game-accent)}.game-result-emoji{font-size:54px;text-align:center;margin-bottom:6px}.game-result-title{font-size:clamp(21px,5.6vw,26px);text-align:center;font-weight:800;margin-bottom:8px}.game-result-desc{font-size:15px;color:var(--game-muted);text-align:center;margin-bottom:8px}.game-verdict{text-align:center;font-size:16px;padding:16px;border-radius:14px;margin:18px 0;font-weight:600;background:var(--game-accent-soft);border:1px solid var(--game-accent);color:var(--game-accent)}.game-section{margin:24px 0}.game-leaderboard{list-style:none;padding:0;margin:12px 0 0}.game-leaderboard li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--game-border);font-size:15px}.game .login-overlay{background:#1a132080}.game .login-card{background:var(--game-card);color:var(--game-text);border:1px solid var(--game-border);box-shadow:0 12px 40px #ff2d6f26}.game .login-logo{color:var(--game-accent)}.game .login-subtitle,.game .login-hint{color:var(--game-muted)}.game .login-divider:before,.game .login-divider:after{background:var(--game-border)}.game .login-divider{color:var(--game-muted)}.game .login-error{color:var(--game-bad)}.game .login-status{color:var(--game-accent)}.game .btn.primary{background:var(--game-accent)}.game .btn.secondary{background:var(--game-soft);color:var(--game-text);border:1.5px solid var(--game-border)}.landing{--landing-bg: #f4f2ff;--landing-bg2: #eef0f8;--landing-text: #1a1a2e;--landing-muted: #5c5c7a;--landing-card: #ffffff;--landing-border: rgba(108, 92, 231, .12);--landing-glow: rgba(108, 92, 231, .15);min-height:100dvh;background:radial-gradient(900px 500px at 80% -10%,var(--landing-glow),transparent 60%),radial-gradient(700px 400px at 10% 100%,rgba(108,92,231,.08),transparent 55%),linear-gradient(180deg,var(--landing-bg),var(--landing-bg2));color:var(--landing-text)}.landing-header{position:sticky;top:0;z-index:10;background:#f4f2ffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--landing-border)}.landing-header-inner{max-width:720px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.landing-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--landing-text);font-weight:600}.landing-nav-link{color:var(--accent);text-decoration:none;font-weight:500;font-size:.95rem;padding:8px 12px;border-radius:8px;transition:background .15s}.landing-nav-link:hover{background:#6c5ce714}.landing-hero{max-width:720px;margin:0 auto;padding:calc(48px + var(--safe-top)) 20px 64px;min-height:70vh;display:flex;flex-direction:column;justify-content:center}.landing-kicker{color:var(--accent);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0 0 16px}.landing-title{font-size:clamp(2.25rem,6vw,3.5rem);font-weight:800;line-height:1.08;letter-spacing:-.02em;margin:0 0 20px}.landing-lead{font-size:clamp(1rem,2.5vw,1.15rem);line-height:1.55;color:var(--landing-muted);margin:0 0 32px;max-width:540px}.landing-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.landing-btn{min-width:160px}.landing .btn.secondary{background:var(--landing-card);color:var(--landing-text);border:1px solid var(--landing-border);box-shadow:0 2px 8px #1a1a2e0a}.landing .btn.secondary:hover{background:#faf9ff;border-color:#6c5ce740}.landing-hint{color:var(--landing-muted);font-size:.9rem;margin:0;max-width:420px}.landing-section{max-width:720px;margin:0 auto;padding:0 20px 56px}.landing-section-title{font-size:1.35rem;font-weight:700;margin:0 0 24px;letter-spacing:-.01em}.landing-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}.landing-step{display:flex;align-items:flex-start;gap:16px;padding:20px;background:var(--landing-card);border:1px solid var(--landing-border);border-radius:16px;box-shadow:0 4px 20px #1a1a2e0a}.landing-step-num{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#6c5ce71f;color:var(--accent);font-weight:700;font-size:.95rem}.landing-step-title{margin:0 0 6px;font-size:1.05rem;font-weight:600}.landing-step-text{margin:0;color:var(--landing-muted);font-size:.95rem;line-height:1.45}.landing-games{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (max-width: 520px){.landing-games{grid-template-columns:1fr}}.landing-game-card{padding:20px;background:var(--landing-card);border:1px solid var(--landing-border);border-radius:16px;box-shadow:0 4px 20px #1a1a2e0a}.landing-game-title{margin:0 0 8px;font-size:1rem;font-weight:600;color:var(--accent)}.landing-game-text{margin:0;font-size:.9rem;color:var(--landing-muted);line-height:1.45}.landing-footer{max-width:720px;margin:0 auto;padding:32px 20px calc(40px + var(--safe-bottom));display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--landing-border)}.landing-footer-brand{margin:0;font-size:.9rem;color:var(--landing-muted);font-weight:500}.landing-footer-link{color:var(--landing-muted);text-decoration:none;font-size:.85rem}.landing-footer-link:hover{color:var(--accent)}
