*{box-sizing:border-box}html,body{color:#f5f2e9;background:#0f1420;margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.appShell{width:min(100%,520px);min-height:100vh;margin:0 auto;padding-bottom:40px}.topbar{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f1420eb;border-bottom:1px solid #2a3145;padding:16px 18px;position:sticky;top:0}.brand{font-size:20px;font-weight:900}.brand span{color:#f2b632}main{padding:16px 18px 32px}.hero{background:linear-gradient(155deg,#1b2338,#141b2c);border:1px solid #2a3145;border-radius:20px;margin-bottom:20px;padding:24px 20px}.hero h1{margin:0 0 10px;font-size:24px;line-height:1.4}.hero p{color:#b7bdcc;margin:0 0 8px;line-height:1.7}.panel{background:#171e30;border:1px solid #2a3145;border-radius:18px;margin-bottom:16px;padding:18px}.panel h2{margin:0 0 12px;font-size:17px}.gameCard{background:#10182a;border:1px solid #2a3145;border-radius:14px;gap:6px;margin-bottom:10px;padding:14px;display:grid}.gameCard .matchup{font-size:15px;font-weight:850}.gameCard .meta{color:#8b93a7;font-size:12px}.teamPicker{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0;display:grid}.teamPicker button{color:#f5f2e9;cursor:pointer;background:#0f1420;border:1px solid #2a3145;border-radius:12px;padding:10px}.teamPicker button.selected{color:#f2b632;background:#2a2410;border-color:#f2b632}input[type=text]{color:#f5f2e9;background:#0f1420;border:1px solid #2a3145;border-radius:12px;width:100%;padding:12px}.primaryButton{color:#16130a;text-align:center;cursor:pointer;background:#f2b632;border:0;border-radius:14px;width:100%;margin-top:12px;padding:13px;font-weight:850;display:block}.primaryButton:disabled{opacity:.5;cursor:default}.notice{color:#b7bdcc;background:#10182a;border-radius:12px;margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.6}.errorText{color:#ff8383;margin-top:8px;font-size:13px}.rankRow{border-bottom:1px solid #22293c;justify-content:space-between;align-items:center;padding:10px 4px;display:flex}.rankRow .rank{color:#8b93a7;width:28px;font-weight:850}.rankRow .name{flex:1;padding:0 8px}.rankRow .wins{color:#f2b632;font-weight:850}.navRow{gap:10px;margin-bottom:16px;display:flex}.navRow a{text-align:center;background:#171e30;border:1px solid #2a3145;border-radius:12px;flex:1;padding:10px;font-size:13px;font-weight:850}body.theme2027{color:#2b2a28;background:#fdf6ea url(/2027/paper-bg.webp) top/cover no-repeat fixed}body.theme2027 .topbar{background:#fdf6eaeb;border-bottom:1px solid #eadfce}body.theme2027 .brand span{color:#e6002d}body.theme2027 .footer{color:#9a8f7a}body.theme2027 .panel,body.theme2027 .gameCard,body.theme2027 .confirmCard,body.theme2027 .homeHeader .cap,body.theme2027 .menuList a,body.theme2027 .menuList .menuItem{color:#2b2a28;background:#fff;border:1px solid #eadfce}body.theme2027 .notice{color:#7d684c;background:#fff7e7}body.theme2027 .leagueLabel,body.theme2027 .menuSub,body.theme2027 .team,body.theme2027 .confirmCard .label{color:#9a8f7a}body.theme2027 .teamGrid button{color:#2b2a28;background:#fff;border:1px solid #eadfce}body.theme2027 .teamGrid button.selected{color:#e6002d;background:#fdeceb;border-color:#e6002d}body.theme2027 input[type=text],body.theme2027 .navRow a{color:#2b2a28;background:#fff;border:1px solid #eadfce}body.theme2027 .countRow{border-bottom:1px solid #eadfce}body.theme2027 .authTextButton{color:#4a8b65}.heroImageWrap{border:1px solid #2a3145;border-radius:20px;margin-bottom:16px;position:relative;overflow:hidden}.heroImageWrap img.heroImage{width:100%;height:auto;display:block}.heroImageWrap img.queenAccent{opacity:.35;pointer-events:none;z-index:0;width:22%;height:auto;position:absolute;top:0;right:14%}.seasonCta{justify-content:center;align-items:center;gap:8px;font-size:16px;display:flex}.heroCtaInside{display:block;position:absolute;bottom:0;left:20%;right:20%}.heroCtaInside img{width:100%;height:auto;display:block}.imageButton{cursor:pointer;background:0 0;border:0;width:100%;margin-top:12px;padding:0;display:block}.imageButton img{width:100%;height:auto;display:block}.stepsHeader{grid-template-columns:.5fr auto 1.5fr;align-items:center;gap:10px;margin-bottom:18px;display:grid}.stepsTitleImage{grid-column:2;justify-self:center;width:100%;max-width:280px;height:auto;display:block}.stepsSubtitleImage{grid-column:3;justify-self:start;width:100%;max-width:145px;height:auto;display:block}@media (max-width:420px){.stepsHeader{text-align:center;grid-template-columns:1fr;justify-items:center}.stepsTitleImage{grid-column:1;max-width:220px}.stepsSubtitleImage{grid-column:1;justify-self:center;max-width:200px}}.stepsSection{color:#2b2a28;text-align:center;background:#fdf6ea url(/2027/paper-bg.webp) top/cover no-repeat;border-radius:20px;margin:22px 0;padding:24px 18px}.stepsSection h2{color:#16130a;margin:0 0 4px;font-size:20px}.stepsSection .stepsSubtitle{color:#7d684c;margin:0 0 18px;font-size:13px}.stepsGrid{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.stepCardImage{border-radius:8px;width:100%;height:auto;display:block}.seasonHero{text-align:center;background:linear-gradient(155deg,#1b2338,#141b2c);border:1px solid #2a3145;border-radius:20px;margin-bottom:20px;padding:28px 20px}.seasonHero .badge{color:#f2b632;background:#2a2410;border-radius:999px;margin-bottom:10px;padding:5px 12px;font-size:12px;font-weight:850;display:inline-block}.seasonHero h1{margin:0 0 14px;font-size:26px;line-height:1.4}.seasonHero .jinx{color:#b7bdcc;margin:0;line-height:1.8}.leagueLabel{color:#8b93a7;margin:16px 0 8px;font-size:13px;font-weight:850}.leagueLabel:first-child{margin-top:0}.teamGrid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.teamGrid button{color:#f5f2e9;cursor:pointer;background:#10182a;border:1px solid #2a3145;border-radius:12px;place-items:center;gap:4px;padding:12px 6px;font-size:12px;display:grid}.teamGrid button .cap{font-size:22px}.teamCapImage{object-fit:contain;border-radius:6px;display:block}.teamGrid button.selected{color:#f2b632;background:#2a2410;border-color:#f2b632}.confirmCard{text-align:center;background:#10182a;border:1px solid #2a3145;border-radius:14px;place-items:center;gap:6px;margin-bottom:6px;padding:20px;display:grid}.confirmCard .cap{font-size:40px}.confirmCard .label{color:#8b93a7;margin-top:8px;font-size:12px}.confirmCard .value{font-size:18px;font-weight:850}.completeCard{text-align:center;padding:10px 0 4px}.completeCard .confetti{font-size:42px}.completeCard h1{color:#f2b632;margin:6px 0 16px;font-size:20px}.homeHeader{align-items:center;gap:12px;margin-bottom:6px;display:flex}.homeHeader .cap{font-size:32px}.homeHeader .name{font-weight:850}.homeHeader .team{color:#8b93a7;font-size:13px}.menuList{gap:10px;display:grid}.menuList a,.menuList .menuItem{background:#10182a;border:1px solid #2a3145;border-radius:14px;padding:14px;display:block}.menuList .menuTitle{margin-bottom:3px;font-weight:850}.menuList .menuSub{color:#8b93a7;font-size:12px}.countRow{border-bottom:1px solid #22293c;justify-content:space-between;align-items:center;padding:10px 4px;display:flex}.countRow .cap{margin-right:8px}.countRow .count{color:#f2b632;font-weight:850}.footer{color:#6b7284;text-align:center;padding:20px 18px 10px;font-size:11px;line-height:1.7}
