

/* CALCPLAY v2: mining and earned-only cosmetics */
.workshop-grid{display:grid;grid-template-columns:minmax(270px,.9fr) minmax(340px,1.25fr);gap:16px;align-items:start}.mine-ledger{grid-column:1/-1}.mine-panel,.shop-panel{min-width:0}.mine-scene{height:190px;position:relative;display:grid;place-items:center;overflow:hidden;margin:12px 0;border:1px solid rgba(128,240,191,.19);border-radius:18px;background:radial-gradient(ellipse at 50% 58%,rgba(75,209,190,.22),transparent 36%),radial-gradient(ellipse at 18% 10%,rgba(118,111,235,.2),transparent 45%),linear-gradient(145deg,#121d2b,#090d15 72%);box-shadow:inset 0 0 34px rgba(6,10,18,.65)}.mine-scene:before,.mine-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 48%,rgba(255,255,255,.035) 49%,transparent 51%);background-size:37px 37px;opacity:.55}.mine-scene.hit{animation:mine-hit .16s ease-out}.mine-crystal{position:relative;z-index:1;color:#80f0bf;font-size:82px;line-height:1;text-shadow:0 0 12px #64e9dc,0 0 44px rgba(98,232,212,.7);transform:rotate(45deg);animation:crystal-float 2.8s ease-in-out infinite}.mine-spark{position:absolute;top:36px;right:27%;color:#b2a1ff;font-size:26px;text-shadow:0 0 16px #a18dff;animation:crystal-float 2.2s ease-in-out infinite reverse}.mine-label{position:absolute;left:14px;bottom:13px;color:#8190a7;font:700 9px ui-monospace,monospace;letter-spacing:.16em}.mine-progress{height:8px;border-radius:999px;background:#202938;overflow:hidden}.mine-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#68dcbc,#a18dff);transition:width .2s}.mine-result{min-height:26px;margin-top:10px;color:var(--accent);font-size:13px}.mine-result b{color:#f1f5fb}.cosmetic-group{margin:14px 0}.cosmetic-group h4{font-size:11px;color:#aeb8c8;margin:0 0 8px}.cosmetic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cosmetic-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;min-height:72px;padding:9px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}.cosmetic-card .cosmetic-icon{grid-row:span 2;font-size:20px;text-align:center}.cosmetic-info{min-width:0}.cosmetic-info b,.cosmetic-info small{display:block}.cosmetic-info b{font-size:10px}.cosmetic-info small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.35}.cosmetic-card button{grid-column:2;justify-self:start;padding:5px 8px;font-size:9px}.cosmetic-card button:disabled{opacity:.45;cursor:not-allowed}.cosmetic-card.owned{border-color:rgba(128,240,191,.2)}.inventory-row{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--line);font-size:11px}.inventory-row>span:first-child{font-size:18px}.inventory-row .pill{margin-left:auto}.chat-emoji-picker{display:flex;gap:6px;min-height:28px;padding:5px 12px 0;overflow-x:auto}.chat-emoji-btn{flex:0 0 30px;width:30px;height:28px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.045);color:var(--text);cursor:pointer}.chat-emoji-btn:hover{border-color:var(--accent)}.chat-emote{margin-right:3px}.gamer-badge{display:inline-grid;place-items:center;min-width:19px;height:18px;margin-left:4px;padding:0 4px;border-radius:6px;background:rgba(255,255,255,.08);font-size:11px}.badge-tag_mint{color:#8af0c6;box-shadow:inset 0 0 0 1px rgba(128,240,191,.25)}.badge-tag_violet{color:#c1b4ff;box-shadow:inset 0 0 0 1px rgba(177,160,255,.25)}.badge-tag_comet{color:#8ddfff;box-shadow:inset 0 0 0 1px rgba(128,215,255,.25)}.badge-tag_crown{color:#ffc878;box-shadow:inset 0 0 0 1px rgba(255,200,120,.25)}.badge-tag_glitch{color:#ff98c6;box-shadow:inset 0 0 0 1px rgba(255,145,184,.25)}
/* Elemental crafting and point-only casino practice */
.craft-game{width:100%;max-width:760px}.craft-board{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,.7fr);gap:12px;margin:12px 0}.craft-elements{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;max-height:340px;overflow:auto;padding:3px}.craft-element{display:flex;flex-direction:column;align-items:center;gap:7px;min-height:82px;padding:10px 6px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,rgba(31,44,61,.8),rgba(14,20,30,.9));color:var(--text);cursor:pointer}.craft-element span{font-size:22px}.craft-element b{font-size:10px}.craft-element.selected{border-color:var(--accent);box-shadow:0 0 18px var(--glow)}.craft-log{display:grid;place-items:center;min-height:120px;padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);color:#bcc6d7;font-size:11px;text-align:center;line-height:1.6}.teacher-game{text-align:center;max-width:660px;margin:auto}.patience-bar{height:13px;margin:8px auto 20px;max-width:420px;overflow:hidden;border-radius:999px;background:#252d3c}.patience-bar span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#79e6ba,#e7c476,#ff748d);transition:width .35s}.teacher-avatar{display:grid;place-items:center;width:112px;height:112px;margin:0 auto 12px;border:1px solid var(--line);border-radius:28px;background:radial-gradient(circle at 50% 40%,rgba(177,160,255,.2),rgba(255,255,255,.025));font-size:57px}.teacher-event{min-height:44px;margin:12px auto;color:#cad4e5;font-size:13px}.teacher-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.teacher-actions .btn{font-size:10px}.escape-game{width:min(100%,720px)}#escapeCanvas{display:block;width:min(100%,720px);height:auto;margin:8px auto;border:1px solid rgba(128,215,255,.2);border-radius:14px;background:#101722;touch-action:none}.casino-game{width:100%;max-width:680px;margin:auto;text-align:center}.casino-score{margin:0 auto 12px;color:#bac5d8;font-size:13px}.casino-score b{color:var(--accent)}.casino-choice-row{display:flex;align-items:end;justify-content:center;gap:10px;flex-wrap:wrap;margin:10px auto}.casino-choice-row .input{width:min(220px,52vw)}.roulette-wheel{display:grid;place-items:center;width:128px;height:128px;margin:14px auto;border:8px solid #d8c28f;border-radius:50%;background:conic-gradient(#131720 0 10deg,#af4154 10deg 20deg,#131720 20deg 30deg,#af4154 30deg 40deg,#131720 40deg 50deg,#af4154 50deg 60deg,#131720 60deg 70deg,#af4154 70deg 80deg,#131720 80deg 90deg,#af4154 90deg 100deg,#131720 100deg 110deg,#af4154 110deg 120deg,#131720 120deg 130deg,#af4154 130deg 140deg,#131720 140deg 150deg,#af4154 150deg 160deg,#131720 160deg 170deg,#af4154 170deg 180deg,#131720 180deg 190deg,#af4154 190deg 200deg,#131720 200deg 210deg,#af4154 210deg 220deg,#131720 220deg 230deg,#af4154 230deg 240deg,#131720 240deg 250deg,#af4154 250deg 260deg,#131720 260deg 270deg,#af4154 270deg 280deg,#131720 280deg 290deg,#af4154 290deg 300deg,#131720 300deg 310deg,#af4154 310deg 320deg,#131720 320deg 330deg,#af4154 330deg 340deg,#131720 340deg 350deg,#af4154 350deg 360deg);box-shadow:0 0 28px rgba(128,240,191,.12),inset 0 0 0 8px #1b2432;color:white;font-size:30px;font-weight:850}.roulette-wheel.red{background-color:#a74255}.roulette-wheel.black{background-color:#11151e}.roulette-wheel.green{background-color:#287c63}.casino-notice{max-width:580px;margin:14px auto;font-size:10px;line-height:1.5}.card-table{padding:14px;border:1px solid rgba(128,240,191,.14);border-radius:16px;background:radial-gradient(ellipse at 50% 45%,rgba(18,99,82,.24),transparent 80%),#111a20}.card-label{margin:9px 0;color:#c1ccdc;font-size:11px}.playing-hand{display:flex;justify-content:center;gap:7px;min-height:82px}.playing-card{display:grid;align-content:center;justify-items:center;width:51px;height:72px;border:1px solid #d5d9e0;border-radius:8px;background:linear-gradient(145deg,#fff,#e4e7ec);color:#17202d;font-size:16px;font-weight:850;box-shadow:0 5px 12px rgba(0,0,0,.2)}button.playing-card{cursor:pointer}.playing-card small{font-size:12px}.playing-card.red-card{color:#c53d55}.playing-card.held-card{transform:translateY(-7px);border-color:#79e6ba;box-shadow:0 0 0 2px rgba(121,230,186,.4)}.playing-card.hidden-card{background:linear-gradient(145deg,#222d40,#111723);border-color:#64718b;color:#aab5c8;font-size:10px}.admin-points-form{display:grid;grid-template-columns:1.4fr 1fr 1.3fr auto;gap:10px;align-items:end}.admin-points-form label{min-width:0}.admin-points-form .input{width:100%}.admin-audit-wrap{margin-top:14px}.admin-game-cheat{display:grid;gap:6px;margin-top:15px;padding:11px;border:1px dashed rgba(255,145,184,.38);border-radius:11px;background:rgba(255,145,184,.055)}.admin-game-cheat b{color:#ffb0cb;font-size:11px}.admin-game-cheat small{color:var(--muted);font-size:9px}.admin-game-cheat .btn{justify-self:start}.workshop-grid .footer-note{line-height:1.55}@keyframes crystal-float{0%,100%{transform:translateY(0) rotate(45deg)}50%{transform:translateY(-7px) rotate(51deg)}}@keyframes mine-hit{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media(max-width:900px){.workshop-grid{grid-template-columns:1fr 1fr}.shop-panel{grid-column:1/-1}.mine-ledger{grid-column:1/-1}.admin-points-form{grid-template-columns:1fr 1fr}.craft-board{grid-template-columns:1fr}.craft-log{min-height:64px}}
@media(max-width:600px){.workshop-grid{grid-template-columns:1fr}.shop-panel,.mine-ledger{grid-column:auto}.cosmetic-grid{grid-template-columns:1fr}.cosmetic-card{grid-template-columns:34px minmax(0,1fr)}.admin-points-form{grid-template-columns:1fr}.admin-points-form button{width:100%}.playing-card{width:44px;height:64px}.playing-hand{gap:4px}.roulette-wheel{width:110px;height:110px}.craft-elements{grid-template-columns:repeat(auto-fill,minmax(82px,1fr))}.mine-scene{height:160px}}


/* Monthly rank ladder and account-level appearance preference */
.rank-ladder{margin:14px 0 16px}.rank-progress{margin:0 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--panel2));color:var(--muted);font-size:12px}.rank-tier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.rank-tier{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel2);opacity:.76}.rank-tier.passed{opacity:.9}.rank-tier.current{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--panel));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent)}.rank-tier-mark{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--accent) 14%,var(--panel));color:var(--accent);font-size:16px;font-weight:900}.rank-tier b,.rank-tier small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-tier b{font-size:11px}.rank-tier small{margin-top:3px;color:var(--muted);font-size:9px}.rank-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border:1px solid color-mix(in srgb,var(--accent) 27%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text);font-size:10px;font-weight:750;white-space:nowrap}.rank-pill.tier-12,.rank-pill.tier-11{border-color:color-mix(in srgb,#b59aff 45%,var(--line));color:#b59aff}.rank-pill.tier-10,.rank-pill.tier-9{border-color:color-mix(in srgb,#80d7ff 45%,var(--line));color:#80d7ff}.appearance-panel{margin:0 0 16px}.appearance-copy{margin:0 0 12px;color:var(--muted);font-size:12px}.appearance-options{display:flex;gap:8px;flex-wrap:wrap}.appearance-choice{display:flex;align-items:center;justify-content:center;gap:8px;min-width:130px;padding:11px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--text);font-weight:750;transition:.18s}.appearance-choice span{font-size:17px}.appearance-choice:hover{border-color:var(--accent)}.appearance-choice.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--panel));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent)}.appearance-panel .footer-note{margin-bottom:0}

:root[data-appearance="light"]{color-scheme:light;--bg:#f1f4f9;--panel:#ffffff;--panel2:#f6f8fc;--line:rgba(35,49,72,.13);--text:#1b2638;--muted:#58677f;--glow:rgba(38,127,91,.12)}
:root[data-appearance="dark"]{color-scheme:dark}
:root[data-appearance="light"] body{background:radial-gradient(ellipse at 48% -24%,rgba(89,105,177,.09),transparent 44%),var(--bg);color:var(--text)}
:root[data-appearance="light"] .sidebar{background:rgba(250,252,255,.96);border-right-color:var(--line)}
:root[data-appearance="light"] .nav-label{color:#718096}
:root[data-appearance="light"] .nav-btn{color:#536178}
:root[data-appearance="light"] .nav-btn:hover{background:#e9eef5;color:#1b2638}
:root[data-appearance="light"] .nav-btn.active{background:color-mix(in srgb,var(--accent) 17%,#fff);color:#174633}
:root[data-appearance="light"] .nav-ico{color:#64748b}
:root[data-appearance="light"] .sidebar-bottom{border-top-color:var(--line)}
:root[data-appearance="light"] .topbar{background:rgba(248,250,253,.92);border-bottom-color:var(--line);color:var(--text)}
:root[data-appearance="light"] .crumb{color:#526178}
:root[data-appearance="light"] .crumb b,:root[data-appearance="light"] .page-heading h1,:root[data-appearance="light"] .panel-head h3,:root[data-appearance="light"] .task-title,:root[data-appearance="light"] .list-name{color:var(--text)}
:root[data-appearance="light"] .page-heading p,:root[data-appearance="light"] .panel-head small,:root[data-appearance="light"] .stat-note,:root[data-appearance="light"] .profile-sub,:root[data-appearance="light"] .footer-note,:root[data-appearance="light"] .list-sub{color:var(--muted)}
:root[data-appearance="light"] .stat-card,:root[data-appearance="light"] .panel,:root[data-appearance="light"] .game-card{background:var(--panel);border-color:var(--line);box-shadow:0 8px 28px rgba(35,49,72,.055)}
:root[data-appearance="light"] .game-card:hover{box-shadow:0 14px 34px rgba(35,49,72,.12)}
:root[data-appearance="light"] .game-desc,:root[data-appearance="light"] .game-meta{color:var(--muted)}
:root[data-appearance="light"] .input,:root[data-appearance="light"] input,:root[data-appearance="light"] select,:root[data-appearance="light"] textarea{background:#fff;border-color:#d5dce7;color:#1b2638}
:root[data-appearance="light"] .input::placeholder,:root[data-appearance="light"] input::placeholder,:root[data-appearance="light"] textarea::placeholder{color:#8995a8}
:root[data-appearance="light"] .field-label{color:#4d5a70}
:root[data-appearance="light"] .btn-ghost{background:#eef2f7;color:#334155;border-color:#dce3ed}
:root[data-appearance="light"] .data-table th{background:#f4f6fa;color:#65738a}
:root[data-appearance="light"] .data-table td{color:#273449;border-bottom-color:#e7ebf1}
:root[data-appearance="light"] .mini-avatar{background:#e8edf5;color:#45536a}
:root[data-appearance="light"] .pill.gray{background:#edf1f6;color:#526178}
:root[data-appearance="light"] .notice{background:color-mix(in srgb,var(--accent) 8%,#fff);border-color:color-mix(in srgb,var(--accent) 28%,#d8e0eb);color:#46556c}
:root[data-appearance="light"] .notice strong{color:#244938}
:root[data-appearance="light"] .chat-person{background:#fff;border-color:var(--line);color:var(--text)}
:root[data-appearance="light"] .chat-person:hover,:root[data-appearance="light"] .chat-person.selected{background:#f0f4f8}
:root[data-appearance="light"] .bubble{background:#edf1f6;color:#26354b}
:root[data-appearance="light"] .bubble.mine{background:color-mix(in srgb,var(--accent) 18%,#fff);color:#1e3d32}
:root[data-appearance="light"] .bubble-time{color:#758198}
:root[data-appearance="light"] .day-col{background:#f7f9fc;border-color:#e0e6ef}
:root[data-appearance="light"] .day-name,:root[data-appearance="light"] .lesson span{color:#65738a}
:root[data-appearance="light"] .lesson{background:#fff;border-color:#e0e6ef}
:root[data-appearance="light"] .lesson b{color:#26354b}
:root[data-appearance="light"] .login-card,:root[data-appearance="light"] .modal{background:#fff;border-color:#dfe5ee;color:#1b2638;box-shadow:0 24px 90px rgba(25,38,58,.2)}
:root[data-appearance="light"] .login-card h1,:root[data-appearance="light"] .modal-top h2{color:#1b2638}
:root[data-appearance="light"] .login-card p,:root[data-appearance="light"] .login-note,:root[data-appearance="light"] .auth-mode-note{color:#5b6980}
:root[data-appearance="light"] .login-switch{color:#4e5d73}
:root[data-appearance="light"] .craft-element{background:linear-gradient(145deg,#fff,#f2f5fa);color:#24334a}
:root[data-appearance="light"] .craft-log{background:#f7f9fc;color:#4a5a72}
:root[data-appearance="light"] .teacher-event,:root[data-appearance="light"] .casino-score,:root[data-appearance="light"] .card-label{color:#4e5d73}
:root[data-appearance="light"] .mine-result b{color:#273449}
:root[data-appearance="light"] .cosmetic-card{background:#fbfcfe}
:root[data-appearance="light"] .chat-emoji-btn{background:#f2f5fa;color:#29374c}
:root[data-appearance="light"] .empty{color:#67758b}
:root[data-appearance="light"] .appearance-choice{background:#f4f6fa;color:#273449}
:root[data-appearance="light"] .appearance-choice.active{background:color-mix(in srgb,var(--accent) 15%,#fff);color:#1d4535}
@media(max-width:900px){.rank-tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.rank-tier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-choice{flex:1;min-width:0}}


/* Seasonal event countdowns: previews stay neutral until the exact start time. */
.seasonal-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 16px}.seasonal-card{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;align-items:start;overflow:hidden;padding:16px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--panel),var(--panel2));color:var(--text);transition:border-color .25s,box-shadow .25s,background .25s}.seasonal-card:after{position:absolute;right:13px;bottom:-19px;font-size:76px;opacity:.055;pointer-events:none}.seasonal-card.halloween:after{content:'🎃'}.seasonal-card.christmas:after{content:'❄'}.seasonal-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);font-size:25px}.seasonal-info{min-width:0}.seasonal-top{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.seasonal-phase{color:var(--muted)}.seasonal-card h3{margin:6px 0 1px;font-size:16px}.seasonal-countdown-label{margin:5px 0 0;color:var(--muted);font-size:10px}.seasonal-countdown{margin:2px 0;color:var(--text);font:800 clamp(16px,2vw,22px)/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.01em;font-variant-numeric:tabular-nums}.seasonal-date{margin:3px 0 2px;color:var(--text);font-size:10px}.seasonal-zone{color:var(--muted);font-size:9px}.seasonal-card.halloween.active{border-color:rgba(255,157,77,.62);background:radial-gradient(ellipse at 0% 0%,rgba(255,118,48,.14),transparent 65%),var(--panel);box-shadow:0 0 24px rgba(255,133,57,.13)}.seasonal-card.halloween.active .seasonal-phase,:root[data-season="halloween"] .hero .eyebrow{color:#ff9d4d}.seasonal-card.christmas.active{border-color:rgba(99,203,151,.62);background:radial-gradient(ellipse at 0% 0%,rgba(79,190,149,.15),transparent 65%),var(--panel);box-shadow:0 0 24px rgba(85,197,147,.13)}.seasonal-card.christmas.active .seasonal-phase,:root[data-season="christmas"] .hero .eyebrow{color:#67d3a4}:root[data-season="halloween"] .hero{border-color:rgba(255,157,77,.34)}:root[data-season="christmas"] .hero{border-color:rgba(99,203,151,.34)}:root[data-season="halloween"] .calc-logo{box-shadow:0 0 30px rgba(255,145,70,.36)}:root[data-season="christmas"] .calc-logo{box-shadow:0 0 30px rgba(92,211,156,.34)}
:root[data-appearance="light"] .seasonal-card{background:linear-gradient(145deg,#fff,#f6f8fc);border-color:#dce3ed;box-shadow:0 7px 22px rgba(35,49,72,.055)}:root[data-appearance="light"] .seasonal-card.halloween.active{background:radial-gradient(ellipse at 0% 0%,rgba(255,153,75,.12),transparent 65%),#fff}:root[data-appearance="light"] .seasonal-card.christmas.active{background:radial-gradient(ellipse at 0% 0%,rgba(82,190,143,.12),transparent 65%),#fff}
@media(max-width:700px){.seasonal-events{grid-template-columns:1fr}.seasonal-card{padding:13px}.seasonal-countdown{font-size:18px}}

.login-seasonal-countdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.login-seasonal-row{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}.login-seasonal-icon{font-size:16px}.login-seasonal-row b,.login-seasonal-row small{display:block}.login-seasonal-row b{font-size:9px}.login-seasonal-row small{margin-top:2px;color:var(--muted);font-size:8px;line-height:1.3}.login-seasonal-row.halloween.active{border-color:rgba(255,157,77,.55)}.login-seasonal-row.christmas.active{border-color:rgba(99,203,151,.55)}:root[data-appearance="light"] .login-seasonal-row{background:#f6f8fc;border-color:#dfe5ee}:root[data-appearance="light"] .login-seasonal-row b{color:#273449}

.community-info{margin:10px 0 14px;border:1px solid var(--line);border-radius:11px;background:var(--panel2);overflow:hidden}.community-info summary{padding:10px 12px;cursor:pointer;color:var(--text);font-size:10px;font-weight:800;list-style:none}.community-info summary::-webkit-details-marker{display:none}.community-info summary:after{content:'＋';float:right;color:var(--muted)}.community-info[open] summary:after{content:'−'}.community-info-body{max-height:310px;overflow-y:auto;padding:0 12px 10px;color:var(--muted);font-size:10px;line-height:1.5}.community-info-body p{margin:8px 0}.community-info-body strong{color:var(--text)}.community-info-body a{color:var(--accent);font-weight:750}.community-info-body ol{margin:6px 0 0;padding-left:18px}.community-info-body li{margin:5px 0}.login-screen{overflow-y:auto}.login-screen.community-expanded{place-items:start center}.login-screen.community-expanded .login-card{margin:8px auto 18px}:root[data-appearance="light"] .community-info{background:#f7f9fc;border-color:#dfe5ee}:root[data-appearance="light"] .community-info summary{color:#273449}:root[data-appearance="light"] .community-info-body strong{color:#273449}


/* CALCPLAY calculator and account-bound points flow */
.calculator-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(280px,1.1fr);gap:16px;margin-top:16px;align-items:start}.calculator-panel,.calculator-credit-panel{min-width:0}.calculator-display{display:flex;align-items:center;justify-content:flex-end;min-height:74px;margin:12px 0;padding:12px 16px;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--panel2);color:var(--text);font:650 30px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap}.calculator-keypad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.calc-key{min-height:48px;border:1px solid var(--line);border-radius:11px;background:var(--panel2);color:var(--text);font-size:16px;font-weight:750;cursor:pointer;transition:transform .12s,border-color .12s,background .12s}.calc-key:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel2))}.calc-key:active{transform:scale(.97)}.calc-key.calc-clear{color:#ff9baa}.calc-key.calc-equals{grid-row:span 2;background:var(--accent);color:#10201b;border-color:transparent;font-size:21px}.calc-key.calc-zero{grid-column:span 2}.calculator-panel .footer-note{margin:12px 0 0}.calculator-credit-copy{margin:0 0 16px;color:var(--muted);font-size:12px;line-height:1.55}.calculator-credit-form{display:grid;gap:9px}.calculator-credit-form .input{width:100%;min-height:42px}.calculator-credit-form .btn{justify-self:start;margin-top:4px}.calculator-credit-status{min-height:36px;margin:14px 0 0;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--muted);font-size:11px;line-height:1.5}.calculator-credit-status.error{color:#d34c65}.calculator-credit-status.success{color:#17734f}
:root[data-appearance="light"] .calculator-display,:root[data-appearance="light"] .calc-key,:root[data-appearance="light"] .calculator-credit-status{background:#f6f8fc;color:#1b2638;border-color:#d8e0eb}
:root[data-appearance="light"] .calc-key.calc-equals{background:var(--accent);color:#10201b}
@media(max-width:850px){.calculator-layout{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.calculator-layout{grid-template-columns:1fr}.calc-key{min-height:45px}.calculator-display{font-size:27px}.calculator-credit-form .btn{width:100%}}
.calculator-credit-panel[hidden]{display:none!important}
