:root{font-family:Inter,system-ui,sans-serif;color:#14213d;background:#f4f7fb}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;padding:14px 5vw;background:white;border-bottom:1px solid #dce4ef;position:sticky;top:0;z-index:5}header a{color:#14213d;text-decoration:none;margin-left:18px}.brand{font-weight:800;font-size:1.25rem}main{max-width:1100px;margin:auto;padding:32px 5vw}.hero,.profilehero{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:24px;padding:28px;margin-bottom:28px}.eyebrow{font-weight:700}.coin{font-size:1.5rem}.appgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}.appcard,.mission{background:white;border:1px solid #dce4ef;border-radius:18px;padding:20px;text-decoration:none;color:inherit;display:flex;gap:12px;align-items:center}.appcard{flex-direction:column;align-items:flex-start;transition:.15s ease}.appcard:hover{transform:translateY(-3px);box-shadow:0 10px 25px #17345d13}.appcard span,.apphead span{font-size:2.5rem}.appcard small,.mission small,.post small{display:block;color:#58677d;margin-top:6px}.missiongrid{display:grid;gap:12px;margin-bottom:28px}.apphead{display:flex;gap:18px;align-items:center;margin-bottom:20px}.device{background:#172033;border-radius:24px;padding:12px;margin-top:24px;box-shadow:0 14px 35px #0002}.devicebar{color:white;padding:8px 12px}.devicebar span{float:right}.device #scene{background:#eef3fb;border-radius:15px;min-height:420px;padding:28px}.bubble{max-width:650px;background:white;border-radius:18px;padding:18px;margin:20px 0}.bubble b{display:block;margin-bottom:8px}button,.finish{display:block;width:100%;max-width:650px;margin:10px 0;padding:14px 18px;border:1px solid #bac8db;border-radius:14px;background:white;text-align:left;font-size:1rem;color:#14213d;text-decoration:none;cursor:pointer}button:hover{transform:translateY(-1px)}button.primary{width:auto;background:#14213d;color:#fff;border-color:#14213d;text-align:center}#feedback{max-width:650px;padding:14px 0;font-weight:700}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:14px;border-bottom:1px solid #e1e7ef}.avatar,.postavatar{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:#eaf0fb;font-size:2.4rem}.statstack{display:grid;gap:8px}.notice,.chatnotice{padding:12px 16px;border-radius:14px;background:#fff6d8;margin:12px 0}.composer{background:white;border:1px solid #dce4ef;border-radius:18px;padding:18px;margin-bottom:20px}.composer textarea{width:100%;margin:10px 0;padding:12px;border:1px solid #c8d3e2;border-radius:12px;font:inherit;resize:vertical}.feed{display:grid;gap:12px}.post{display:flex;gap:14px;background:white;border:1px solid #dce4ef;border-radius:18px;padding:18px}.postavatar{width:46px;height:46px;font-size:1.5rem;flex:0 0 auto}.post p{margin:10px 0}.reactions{color:#58677d;font-size:.92rem}.chatlayout{display:grid;grid-template-columns:240px 1fr;gap:16px}.chatlist,.chatpanel{background:white;border:1px solid #dce4ef;border-radius:18px;padding:16px}.chatperson{display:block;padding:11px 12px;margin:5px 0;border-radius:10px;text-decoration:none;color:#14213d}.chatperson.active{background:#e9f1ff;font-weight:700}.chatperson.muted{color:#58677d}.chatpanel{min-height:500px;display:flex;flex-direction:column}.messages{flex:1;overflow:auto;max-height:430px;padding:8px}.chatbubble{max-width:75%;background:#eef3fb;border-radius:16px;padding:10px 13px;margin:8px 0;display:grid}.chatbubble.mine{margin-left:auto;background:#dfeaff}.chatbubble strong{font-size:.8rem}.chatcompose{display:flex;gap:8px;margin-top:10px}.chatcompose input{flex:1;border:1px solid #c8d3e2;border-radius:12px;padding:12px;font:inherit}.chatcompose button{margin:0;width:auto}.emptychat{margin:auto;text-align:center;color:#58677d}.teachersection{margin-bottom:30px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0 22px}.metrics div{background:white;border:1px solid #dce4ef;border-radius:16px;padding:18px}.metrics strong{font-size:1.6rem;display:block}.metrics small{color:#58677d}@media(max-width:700px){header nav{display:none}.hero,.profilehero{align-items:flex-start;gap:20px;flex-direction:column}.device #scene{padding:16px}.devicebar span{float:none;display:block;margin-top:6px}.chatlayout{grid-template-columns:1fr}.chatlist{display:none}.metrics{grid-template-columns:1fr}}

/* v0.3 authentication and role experience */
.loginbody{min-height:100vh;background:linear-gradient(135deg,#eef5ff 0%,#f8fbff 50%,#eef8f5 100%);display:grid;place-items:center;padding:24px}.loginwrap{max-width:980px;width:100%;display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.loginbrand{display:flex;gap:22px;align-items:center}.loginbrand h1{font-size:3.8rem;margin:.15rem 0}.loginbrand p{max-width:520px;font-size:1.1rem;color:#58677d}.townmark{width:92px;height:92px;border-radius:26px;background:#14213d;color:#fff;display:grid;place-items:center;font-weight:900;font-size:2rem;box-shadow:0 18px 40px #14213d28}.logincard{background:#fff;border:1px solid #dce4ef;border-radius:26px;padding:32px;box-shadow:0 20px 60px #14213d14}.logincard h2{margin-top:0;font-size:2rem}.muted{color:#58677d}.logincard label{display:block;margin:18px 0 7px;font-weight:700}.logincard input{width:100%;padding:14px 15px;border:1px solid #bdcada;border-radius:12px;font:inherit}.loginbutton{margin-top:22px;max-width:none;text-align:center}.loginerror{background:#fff0f0;border:1px solid #efb7b7;color:#9b2424;padding:12px 14px;border-radius:12px}.demohint{border-top:1px solid #e5eaf1;margin-top:24px;padding-top:18px;display:grid;gap:4px;color:#58677d;font-size:.92rem}.demohint strong{color:#14213d}.staffhero{margin-bottom:26px}.staffhero h1{font-size:2.35rem;margin:.25rem 0}.staffhero>p:last-child{color:#58677d;max-width:720px}.staffgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:28px}.staffcard{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid #dce4ef;border-radius:18px;padding:20px;text-decoration:none;color:#14213d}.staffcard>span{font-size:1.7rem}.staffcard div{display:grid;gap:5px}.staffcard small{color:#58677d}.previewpanel{background:#fff;border:1px solid #dce4ef;border-radius:22px;padding:24px;display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}.previewpanel h2{margin:.25rem 0}.previewpanel p{color:#58677d}.previewstudents{display:grid;gap:9px}.previewstudent{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid #e0e7f0;border-radius:14px;padding:12px;text-decoration:none;color:#14213d}.previewstudent:hover{background:#f7faff}.previewstudent span:nth-child(2){display:grid;gap:2px}.previewstudent small{color:#58677d}.miniavatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eaf0fb}.arrow{font-size:1.3rem}.previewbar{background:#fff3c4;border-bottom:1px solid #ead98b;padding:10px 5vw;text-align:center;color:#5c4a00}.previewbar a{color:#14213d;font-weight:800;margin-left:10px}.accesscard{background:#fff;border:1px solid #dce4ef;border-radius:24px;padding:34px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start}.accessicon{font-size:3rem}.accesscard h1{margin:.25rem 0}.actionrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.actionbutton{background:#14213d;color:#fff;text-decoration:none;border-radius:12px;padding:12px 16px;font-weight:700}.actionbutton.secondary{background:#eef3fb;color:#14213d}.preview-choice{background:#fff}
@media(max-width:760px){.loginwrap{grid-template-columns:1fr}.loginbrand{align-items:flex-start}.loginbrand h1{font-size:2.3rem}.staffgrid{grid-template-columns:1fr}.previewpanel{grid-template-columns:1fr}.accesscard{grid-template-columns:1fr}.townmark{width:70px;height:70px;border-radius:20px}}


/* v0.4 student world + GameWorld */
.townhero{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:linear-gradient(135deg,#fff,#edf5ff);border:1px solid #dce4ef;border-radius:28px;padding:32px;margin-bottom:24px}.townhero h1{font-size:2.5rem;margin:.2rem 0}.townhero p{max-width:650px}.heroactions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.townstatus{background:#14213d;color:#fff;border-radius:22px;padding:20px 24px;display:grid;min-width:160px;text-align:center}.townstatus span{font-size:1.6rem}.townstatus small{opacity:.8;margin-top:5px}.devicehome{background:#172033;border-radius:28px;padding:12px;margin-bottom:30px;box-shadow:0 18px 45px #14213d1f}.devicehomebar{display:flex;justify-content:space-between;color:#fff;padding:8px 12px 14px}.appgrid-home{background:#edf4fb;border-radius:20px;padding:20px}.appgrid-home .appcard{min-height:160px;justify-content:center}.appgrid-home .appcard span{font-size:3rem}.sectionhead{display:flex;justify-content:space-between;gap:18px;align-items:end;margin:30px 0 14px}.sectionhead h2{margin:.15rem 0}.missionarrow{margin-left:auto;font-size:1.4rem}.badgegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}.badgecard{background:#f4f6f9;border:1px dashed #bcc8d8;border-radius:18px;padding:20px;display:grid;gap:6px;opacity:.55}.badgecard>span{font-size:2rem}.badgecard small{color:#58677d}.badgecard.earned{background:#fff;border-style:solid;opacity:1}.gw-topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.gw-topbar h1{font-size:2.2rem;margin:.15rem 0}.gw-scorebox{background:#14213d;color:#fff;border-radius:18px;padding:14px 20px;min-width:120px;text-align:center;display:grid}.gw-scorebox strong{font-size:2rem}.gw-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:18px}.gw-game,.phonecard,.safetytip{background:#fff;border:1px solid #dce4ef;border-radius:22px;padding:16px}.gw-hud{display:flex;justify-content:space-between;gap:15px;font-weight:700;margin-bottom:12px}.gw-arena{position:relative;height:440px;overflow:hidden;border-radius:18px;background:linear-gradient(#bfe5ff 0 42%,#b7df9a 42% 100%);border:3px solid #20314e;outline:none}.gw-arena:before{content:'';position:absolute;inset:auto 0 28% 0;height:12%;background:#d8bd88;opacity:.75}.gw-player,.gw-star,.gw-glitch{position:absolute;width:50px;height:50px;display:grid;place-items:center;font-size:2rem;z-index:2}.gw-player{transition:left .08s linear,top .08s linear}.gw-star{border:0;background:transparent;padding:0;margin:0;max-width:none}.gw-glitch{opacity:.75}.gw-glitch#glitch1{left:58%;top:23%}.gw-glitch#glitch2{left:28%;top:68%}.gw-controls{display:flex;justify-content:center;gap:8px;margin-top:12px}.gw-controls button{width:48px;height:48px;padding:0;margin:0;text-align:center;font-size:1.25rem}.gw-side{display:grid;gap:14px;align-content:start}.phonehead{display:flex;justify-content:space-between;border-bottom:1px solid #e5eaf1;padding-bottom:10px}.phonehead span{font-size:.85rem;color:#27804a}.gw-chatfeed{min-height:320px;display:grid;align-content:start;gap:10px;padding-top:12px}.systemmsg,.chatmsg{border-radius:14px;padding:11px 12px;background:#eef3fb;font-size:.94rem}.chatmsg{background:#e8f6e9}.chatmsg b{display:block;margin-bottom:3px}.safetytip{display:grid;gap:5px;background:#fff7d7}.safetytip strong{font-size:1.25rem}.gw-modal{position:fixed;inset:0;background:#0d1730a8;z-index:50;display:grid;place-items:center;padding:20px}.gw-modal[hidden]{display:none}.gw-modalcard{width:min(560px,100%);background:#fff;border-radius:26px;padding:28px;text-align:center;box-shadow:0 24px 80px #0005}.requestavatar{width:84px;height:84px;border-radius:50%;background:#e9f4ff;display:grid;place-items:center;font-size:2.8rem;margin:0 auto 12px}.choice-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.choice-row button{margin:0;text-align:center}.inline-feedback{min-height:48px;font-weight:700;color:#243a5d;margin:12px 0}.gw-modalcard .actionbutton{display:inline-block;margin-top:10px}
@media(max-width:850px){.gw-layout{grid-template-columns:1fr}.gw-side{grid-template-columns:1fr 1fr}.gw-chatfeed{min-height:180px}.townhero{grid-template-columns:1fr}.townstatus{justify-self:start}.badgegrid{grid-template-columns:1fr}.sectionhead{align-items:start;flex-direction:column}.choice-row{grid-template-columns:1fr}}
@media(max-width:600px){.gw-arena{height:360px}.gw-side{grid-template-columns:1fr}.gw-hud{flex-direction:column}.townhero h1{font-size:2rem}}

/* v0.5 CyberCoins, social interaction, moderation review, avatar builder */
.coinwelcome{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;background:#fff7d6;border:1px solid #efd77a;border-radius:22px;padding:20px 24px;margin:-8px 0 24px}.coinwelcome h2{margin:.2rem 0}.coinburst{font-size:3rem}.avatar-xl{font-size:3.5rem}.avatarbuilder{margin:28px 0}.avatarshop{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px}.avataritem{background:#fff;border:1px solid #dce4ef;border-radius:18px;padding:16px;text-align:center;display:grid;gap:9px;align-content:start}.avataritem.equipped{outline:3px solid #93b6ef;background:#f4f8ff}.avatarpreview{height:78px;display:grid;place-items:center;font-size:3.2rem;background:#f4f7fb;border-radius:15px}.avataritem form{margin:0}.avataritem button{width:100%;margin:0}.secondarybutton{background:#edf3fb!important;color:#14213d!important;border:1px solid #cbd8e8!important}.equippedtag{display:inline-block;background:#dff3e5;color:#22623b;border-radius:999px;padding:7px 10px;font-weight:700;font-size:.85rem}.twocol{display:grid;grid-template-columns:1.4fr .8fr;gap:24px}.coinledger{background:#fff;border:1px solid #dce4ef;border-radius:18px;overflow:hidden}.coinledger>div{display:flex;justify-content:space-between;gap:16px;padding:12px 15px;border-bottom:1px solid #edf0f4}.coinledger>div:last-child{border-bottom:0}.coinplus{color:#237345}.coinminus{color:#a54545}.postcontent{flex:1;min-width:0}.postmeta{display:flex;justify-content:space-between;gap:10px}.reactionbar{display:flex;align-items:center;gap:14px;color:#58677d;margin:10px 0}.reactionbar form{margin:0}.reactionbutton{margin:0!important;background:#f4f7fb!important;color:#243a5d!important;border:1px solid #d7e1ed!important;width:auto!important;padding:7px 11px!important}.reactionbutton.active{background:#ffe7ef!important;color:#8e2948!important}.comments{display:grid;gap:8px;margin:10px 0}.comment{display:flex;gap:9px;background:#f6f8fb;border-radius:12px;padding:9px 11px}.comment>span{font-size:1.25rem}.comment p{margin:2px 0}.commentform{display:flex;gap:8px}.commentform input{flex:1;border:1px solid #c8d3e2;border-radius:12px;padding:10px 12px;font:inherit}.commentform button{width:auto;margin:0}.startchat{margin:4px 0}.startchat button{width:100%;text-align:left;margin:0;background:#f7f9fc;color:#14213d;border:1px solid #e0e7f0}.chatlesson{display:flex;gap:8px;flex-direction:column;background:#f3f7ff;border:1px solid #d9e5f7;border-radius:13px;padding:11px 13px;margin-bottom:8px}.chatlesson span{font-size:.9rem;color:#58677d}.chatnotice{min-height:28px;padding:6px 2px;font-weight:700;color:#53657c}.moderation-block{background:#fff0f0;color:#902626;border-radius:10px;padding:10px}.moderation-warn{background:#fff7d6;color:#695400;border-radius:10px;padding:10px}.teacherheading{display:flex;justify-content:space-between;align-items:start;gap:16px}.flagcount{background:#fff1d3;border:1px solid #efd393;border-radius:999px;padding:8px 12px;font-weight:800}.reviewqueue{display:grid;gap:12px}.reviewevent{background:#fff;border:1px solid #dce4ef;border-left:5px solid #e2a23d;border-radius:16px;padding:16px}.reviewevent.reviewed{opacity:.62;border-left-color:#8ca59a}.reviewtop{display:flex;justify-content:space-between;gap:14px}.reviewtop>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.sourcepill,.actionpill{font-size:.72rem;border-radius:999px;padding:4px 7px;background:#edf2f8}.actionpill.block{background:#ffe2e2;color:#8f2525}.actionpill.warn{background:#fff1c6;color:#775d00}.reviewevent blockquote{margin:9px 0;background:#f7f8fa;border-left:3px solid #c6d0dc;padding:9px 12px;color:#4f5d70}.reviewevent form{margin:0}.reviewevent button{width:auto;margin:0}.emptyreview{background:#f7f9fb;border-radius:14px;padding:18px;color:#58677d}
@media(max-width:800px){.coinwelcome{grid-template-columns:auto 1fr}.coinwelcome .actionbutton{grid-column:1/-1}.twocol{grid-template-columns:1fr}}

/* v0.6 economy, daily rewards, collectibles, official-vs-scam learning */
.dailyreward{display:flex;gap:12px;align-items:center;background:#eaf7ee;border:1px solid #b9dfc4;border-radius:16px;padding:12px 16px;margin:-10px 0 22px}.dailyreward>span{font-size:1.8rem}.dailyreward div{display:grid;gap:2px}.dailyreward small{color:#4c6a57}.official-event{display:grid;grid-template-columns:auto 1fr auto;gap:14px 18px;align-items:center;background:#eef8f0;border:2px solid #83c396;border-radius:20px;padding:16px 18px;margin-bottom:18px}.official-event p{margin:.25rem 0}.official-badge{font-size:.72rem;font-weight:900;background:#d8f0df;color:#245c34;border-radius:999px;padding:7px 9px}.official-event button{width:auto;margin:0}.official-feedback{grid-column:2/-1;color:#28563a;font-weight:700;min-height:1.2rem}.fake-link{background:#f4f5f7;border:1px dashed #b6bfcb;border-radius:10px;padding:10px;margin:12px 0;font-family:ui-monospace,Consolas,monospace;color:#6a3540}.scamcard{border:3px solid #e0b24b}.game-store,.collectible-shop,.myroom{margin-top:30px}.collectible-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.collectible-card{background:#fff;border:1px solid #dce4ef;border-radius:18px;padding:15px;display:grid;gap:8px;align-content:start}.collectible-card.owned{background:#f3fbf5;border-color:#a9d3b5}.collectible-card p{font-size:.9rem;color:#58677d;margin:0;min-height:2.6em}.collectible-card form{margin:0}.collectible-card button{width:100%;margin:0}.collectible-icon{font-size:2.8rem;display:grid;place-items:center;height:70px;background:#f5f8fc;border-radius:14px}.ownedtag{background:#dcf1e2;color:#235e35;padding:6px 9px;border-radius:999px;text-align:center;font-weight:800;font-size:.82rem}.room-scene{min-height:210px;background:linear-gradient(#eaf4ff 0 65%,#dec69d 65%);border:3px solid #263650;border-radius:22px;padding:22px;display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;position:relative}.room-avatar{font-size:5rem}.room-item{font-size:3.2rem;filter:drop-shadow(0 3px 2px #0002)}.room-title h2{margin:.15rem 0 12px}
@media(max-width:760px){.official-event{grid-template-columns:1fr}.official-feedback{grid-column:1}.official-event button{width:100%}}

/* v0.7 CyberCitizen 12-species avatar system */
.citizen-onboarding{max-width:1280px;margin:0 auto}.citizen-intro{text-align:center;max-width:760px;margin:10px auto 24px}.citizen-intro h1{font-size:clamp(2.2rem,5vw,4rem);margin:.15rem 0;color:#0d1d42}.citizen-intro>p{font-size:1.08rem;color:#50617b}.starter-chip{display:inline-block;background:#fff2b9;border:1px solid #e6c75c;border-radius:999px;padding:9px 14px;font-weight:900;color:#66510b}.species-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.species-card{position:relative;background:linear-gradient(180deg,#073968,#062a52);border:3px solid #0c72bd;border-radius:20px;padding:8px 8px 13px;text-align:center;color:#fff;cursor:pointer;box-shadow:0 8px 22px #082d5a22;transition:.16s transform,.16s border-color}.species-card:hover{transform:translateY(-3px);border-color:#32c7ff}.species-card input{position:absolute;opacity:0;pointer-events:none}.species-card:has(input:checked){border-color:#63e4ff;box-shadow:0 0 0 4px #6fe9ff40,0 12px 30px #082d5a40;transform:translateY(-4px)}.species-art{height:170px;display:block;overflow:hidden;border-radius:14px;background:#06345d}.species-art img{width:100%;height:100%;object-fit:cover;object-position:center top}.species-card strong{display:block;font-size:1rem;margin-top:9px}.pickmark{position:absolute;right:10px;top:10px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#54ddff;color:#062747;font-weight:900;opacity:0}.species-card:has(input:checked) .pickmark{opacity:1}.accent-picker{margin:28px 0;background:#fff;border:1px solid #d9e3ef;border-radius:22px;padding:20px;display:grid;grid-template-columns:1fr 1.3fr;gap:20px;align-items:center}.accent-picker h2{margin:.1rem 0}.accent-options{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.accent-option{display:grid;place-items:center;gap:6px;text-align:center;font-size:.78rem;font-weight:800;cursor:pointer}.accent-option input{position:absolute;opacity:0}.accent-option>span{width:48px;height:48px;border-radius:50%;background:#168eea;border:5px solid #fff;box-shadow:0 0 0 2px #cad7e7}.accent-option.pixel-pink>span{background:#ed6aa7}.accent-option.volt-green>span{background:#6bd35f}.accent-option.sunset-orange>span{background:#f38a3b}.accent-option.royal-purple>span{background:#835bd7}.accent-option:has(input:checked)>span{box-shadow:0 0 0 4px #152c53}.onboarding-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#0c1f43;color:#fff;border-radius:18px;padding:15px 18px;margin-bottom:35px}.onboarding-actions button{width:auto;margin:0;background:#2fc5ff;color:#06294c}.cybercitizen-avatar{width:110px;height:120px;border-radius:24px;overflow:hidden;background:#07345d;border:3px solid #168eea}.cybercitizen-avatar img{width:100%;height:100%;object-fit:cover;object-position:center top}.cybercitizen-room{width:120px;height:150px!important;overflow:hidden;border-radius:20px;background:#07345d}.cybercitizen-room img{width:100%;height:100%;object-fit:cover;object-position:center top}.mini-citizen{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:center top;vertical-align:middle;background:#07345d}.smalllink{font-size:.85rem;font-weight:800}.chatperson .mini-citizen,.startchat .mini-citizen{margin-right:5px}
@media(max-width:1050px){.species-grid{grid-template-columns:repeat(4,1fr)}.accent-options{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.species-grid{grid-template-columns:repeat(2,1fr)}.species-art{height:190px}.accent-picker{grid-template-columns:1fr}.onboarding-actions{align-items:stretch;flex-direction:column}.onboarding-actions button{width:100%}}

/* v0.8 reusable CyberCitizen wardrobe */
.wardrobe-shell{margin:30px 0}.wardrobe-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.55fr);gap:20px;align-items:start}.citizen-stage{position:sticky;top:88px;background:linear-gradient(180deg,#071d3e,#092f59);border:3px solid #168eea;border-radius:26px;padding:18px;box-shadow:0 18px 45px #102d5a24}.citizen-stage.accent-pixel-pink{border-color:#ed6aa7}.citizen-stage.accent-volt-green{border-color:#6bd35f}.citizen-stage.accent-sunset-orange{border-color:#f38a3b}.citizen-stage.accent-royal-purple{border-color:#835bd7}.citizen-card-live{position:relative;max-width:360px;margin:auto;aspect-ratio:3/4;border-radius:22px;overflow:hidden;background:#07345d}.citizen-base{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}.avatar-layer{position:absolute;z-index:2;pointer-events:none;filter:drop-shadow(0 3px 3px #0005)}.avatar-layer span{display:block;line-height:1}.outfit-layer{left:50%;bottom:4%;transform:translateX(-50%);font-size:4.2rem}.headwear-layer{left:50%;top:4%;transform:translateX(-50%);font-size:4rem}.eyewear-layer{left:50%;top:27%;transform:translateX(-50%);font-size:3.5rem}.accessory-layer{right:5%;bottom:12%;font-size:3.5rem}.expression-chip{position:absolute;left:12px;bottom:12px;z-index:3;background:#ffffffeb;color:#14213d;border-radius:999px;padding:7px 10px;font-weight:900;font-size:.82rem;box-shadow:0 4px 12px #0002}.item-hero-cape{font-size:5rem;bottom:0}.item-sound-headphones{font-size:4.5rem;top:8%}.item-royal-crown{top:2%}.item-star-shades{font-size:3.8rem}.item-shield-badge{right:4%;bottom:18%}.loadout-summary{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.loadout-summary strong,.loadout-summary span{background:#ffffff14;color:#fff;border:1px solid #ffffff24;border-radius:999px;padding:6px 9px;font-size:.78rem}.loadout-summary strong{background:#2fc5ff;color:#06294c;border-color:#2fc5ff}.wardrobe-inventory{display:grid;gap:18px}.wardrobe-group{background:#fff;border:1px solid #dce4ef;border-radius:22px;padding:18px}.wardrobe-group-title{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:12px}.wardrobe-group-title h3{margin:0;font-size:1.2rem}.wardrobe-group-title small{color:#58677d}.wardrobe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px}.wardrobe-item{border:1px solid #dce4ef;border-radius:16px;padding:12px;display:grid;gap:7px;text-align:center;align-content:start;background:#f9fbfd}.wardrobe-item.owned{background:#fff}.wardrobe-item.equipped{outline:3px solid #58c9ff;background:#eefaff}.wardrobe-icon{height:58px;border-radius:13px;background:#edf3fb;display:grid;place-items:center;font-size:2.5rem}.wardrobe-item small{color:#58677d;font-weight:800}.wardrobe-item form{margin:0}.wardrobe-item button{width:100%;margin:0;text-align:center;padding:9px 10px}.wardrobe-item .equippedtag{justify-self:center}.profilehero .cybercitizen-avatar{box-shadow:0 0 0 4px #ffffff,0 0 0 7px #168eea}
@media(max-width:900px){.wardrobe-layout{grid-template-columns:1fr}.citizen-stage{position:relative;top:auto}.citizen-card-live{max-width:320px}}
.storegrid,.sportsgrid,.cardbinder,.districtgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:20px 0}.storeitem,.sportcard,.tradingcard,.district,.quest,.browserframe,.sportarena{background:#fff;border:1px solid #dbe6f4;border-radius:20px;padding:18px;box-shadow:0 8px 22px #0a2b5a10}.bigicon,.crittericon,.sportball{font-size:48px}.safetynotice{padding:16px;border-radius:16px;background:#fff5c7;border:1px solid #f2d15e;margin:18px 0}.browserbar{display:flex;background:#0a2448;padding:12px;border-radius:14px;color:white}.browserbar form{display:flex;gap:8px;width:100%}.browserbar input{flex:1;padding:12px;border-radius:10px;border:0}.searchresults{display:grid;gap:12px;margin-top:20px}.searchresults a{display:grid;gap:4px;padding:16px;border:1px solid #dbe6f4;border-radius:14px;text-decoration:none;color:#0a2448}.sportshero{background:linear-gradient(135deg,#082653,#0c5ca8);color:white}.sportcard{display:grid;text-decoration:none;color:#0a2448;gap:8px}.sportcard>span{font-size:42px}.quickchallenge{margin:20px 0;padding:18px;background:#eef7ff;border-radius:16px}.quickchallenge button{margin:5px;padding:10px 14px}.tradingcard{background:linear-gradient(160deg,#fff,#eef8ff);border:2px solid #5ba7e8}.lockedcard{filter:grayscale(1);opacity:.55}.district{display:grid;gap:5px;text-align:center}.district>span{font-size:34px}.districtlocked{opacity:.5}.questgrid{display:grid;gap:10px}.quest{display:flex;align-items:center;gap:14px}.quest>span{font-size:28px}.quest>div{flex:1}.quest small{display:block}.compact{min-height:auto}.webpage{padding:24px}.webbody{margin:18px 0;padding:18px;background:#f6f9fd;border-radius:14px}


/* v1.0 depth pass + tablet-first play */
.featurehub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 30px}.featuretile{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid #2a64a5;border-radius:20px;background:linear-gradient(145deg,#0c2341,#0a1930);text-decoration:none;color:#fff;min-height:130px;justify-content:center}.featuretile span{font-size:2.2rem}.featuretile strong{font-size:1.05rem}.featuretile small{color:#9fc6f2}.basegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.base-device{min-height:150px;padding:16px;border-radius:18px;border:2px solid #284f7b;background:#0b1c33;color:#fff;text-align:left}.base-device span{font-size:2rem;display:block}.base-device strong,.base-device small{display:block;margin-top:7px}.base-device.safe-pick{border-color:#43d18d;background:#0c2b2a}.base-device.unsafe-pick{border-color:#ff6b7a;background:#351825}.challengepanel,.capsulebox{margin:22px 0;padding:24px;border-radius:22px;background:#0c1f39;border:1px solid #2b5c91;text-align:center}.securitymeter{height:16px;background:#061226;border-radius:99px;overflow:hidden;margin:14px 0}.securitymeter div{height:100%;width:0;background:linear-gradient(90deg,#28c79a,#39a9ff);transition:.35s}.detective-scene{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.fakephone{border:10px solid #071321;border-radius:30px;padding:18px;background:#eaf4ff;color:#13243a;min-height:380px}.fakepost code{display:block;padding:10px;background:#fff3b0;border-radius:10px;word-break:break-all}.clueboard{padding:22px;border-radius:22px;background:#0b1c33;border:1px solid #2a64a5}.clue{display:block;width:100%;margin:10px 0;padding:14px;border-radius:14px}.clue.found{background:#123b36;border-color:#43d18d}.bossarena{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:center}.bosschar{font-size:8rem;text-align:center;filter:drop-shadow(0 0 18px #7f5cff)}.bosschar span{display:block;font-size:1rem}.battlecard{padding:24px;border-radius:22px;background:#0b1c33;border:1px solid #744bca}.battlecard button,.hoopcourt button,#dashChoices button{margin:6px;padding:13px 18px;border-radius:14px}.capsule-orb{font-size:7rem;animation:floaty 2s ease-in-out infinite}.reward-reveal{font-size:1.5rem;font-weight:800;padding:20px;margin:16px auto;max-width:420px;border:2px solid #36b7ff;border-radius:18px;background:#0a2b51}@keyframes floaty{50%{transform:translateY(-8px)}}.scoreboard{display:flex;justify-content:space-between;background:#050b15;padding:14px 20px;border-radius:14px;font-weight:800;letter-spacing:.08em}.hoopcourt{margin-top:14px;padding:28px;border-radius:20px;background:repeating-linear-gradient(90deg,#7a4a24 0,#7a4a24 40px,#85542c 40px,#85542c 80px);color:white}.basket{font-size:3rem}.raceway{height:130px;position:relative;background:#2a303a;border-radius:18px;margin:16px 0;overflow:hidden;border:8px solid #4d9d4d}.raceway:after{content:'';position:absolute;left:0;right:0;top:50%;border-top:4px dashed #fff;opacity:.8}.racecar{position:absolute;left:10%;top:35px;font-size:3rem;z-index:2;transition:.35s}.finish{position:absolute;right:4%;top:30px;font-size:3rem}.sportarena{max-width:900px;margin:0 auto}.quickchallenge em{display:block;margin-top:14px}.app-install-hint{font-size:.85rem;color:#9fc6f2}
@media(max-width:900px){.featurehub,.basegrid{grid-template-columns:repeat(2,minmax(0,1fr))}.bossarena,.detective-scene{grid-template-columns:1fr}.bosschar{font-size:6rem}}
@media(max-width:600px){header{padding:10px 12px}header nav{gap:8px;flex-wrap:wrap}main{padding:14px}.featurehub,.basegrid{grid-template-columns:1fr 1fr;gap:9px}.featuretile{padding:13px;min-height:112px}.featuretile span{font-size:1.8rem}.townhero{padding:18px}.base-device{min-height:125px;padding:12px}.sportsgrid{grid-template-columns:1fr 1fr}.fakephone{min-height:320px}.actionbutton,button{min-height:44px}}

/* v1.1 world depth: navigable town, expanded games, cases and boss progression */
.districtgrid a.district{text-decoration:none;color:inherit;transition:.15s}.districtgrid a.district:not(.districtlocked):hover{transform:translateY(-3px);border-color:#168eea;box-shadow:0 10px 25px #0b315522}.district-hero{background:linear-gradient(135deg,#072b54,#0a67a6);color:#fff}.locked-district-panel{max-width:650px;margin:45px auto;text-align:center;background:#fff;border:1px solid #dbe6f4;border-radius:26px;padding:36px}.lockbig{font-size:5rem}.district-actions{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.casegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.casefile{display:grid;grid-template-columns:auto 1fr;gap:18px;background:#fff;border:1px solid #dbe6f4;border-radius:22px;padding:20px;text-decoration:none;color:#14213d}.casefile>span{font-size:3rem}.casefile h2{margin:4px 0}.casefile p{color:#58677d}.casefile>b{grid-column:2;color:#0c72c5}.evidence-strip{display:flex;gap:6px;min-height:34px;flex-wrap:wrap}.evidence-strip span{background:#123b36;border:1px solid #43d18d;border-radius:99px;padding:5px 9px}.base-zone-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.zone-tab{width:auto;margin:0;padding:11px 16px}.zone-tab.active{background:#123b67;color:white;border-color:#168eea}.base-zone.hidden{display:none}.base-zone h2{margin-top:10px}.owned-room-strip{display:flex;gap:10px;flex-wrap:wrap;align-items:center;background:white;border:1px solid #dbe6f4;border-radius:16px;padding:14px;margin-bottom:14px}.owned-room-strip span{background:#eef5ff;border-radius:99px;padding:6px 10px}.shield-readout{display:flex;justify-content:center;align-items:baseline;gap:6px}.shield-readout strong{font-size:2.5rem}.boss-select{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 20px}.boss-chip{padding:10px 14px;border:1px solid #2a64a5;background:#0b1c33;color:white;border-radius:99px;text-decoration:none}.boss-chip.active{background:#168eea;border-color:#59c9ff}.hpbar{height:13px;background:#08111c;border-radius:99px;margin:10px auto;width:180px;overflow:hidden}.hpbar div{height:100%;width:100%;background:#ff5b70;transition:.35s}.rounddots{display:flex;gap:7px;margin-bottom:13px}.rounddots span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#172b46;color:#9fc6f2}.rounddots .current{outline:2px solid #2fc5ff;color:#fff}.rounddots .done{background:#0d513f;color:#fff}.sportvisual{height:190px;border-radius:22px;margin:14px 0;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(160deg,#092a50,#0a5d83)}.sportvisual:before{content:'';position:absolute;inset:18px;border:2px dashed #ffffff55;border-radius:18px}.sport-emoji{font-size:5rem;z-index:1;filter:drop-shadow(0 8px 12px #0005)}.streak{position:absolute;right:14px;top:14px;background:#050b15d9;color:#fff;border-radius:99px;padding:7px 11px;font-weight:900}.gamepanel{padding:16px;border-radius:18px;background:#f6f9fd;color:#14213d}.gamepanel button{display:inline-block;width:auto;margin:5px}.sportcard em{font-style:normal;color:#0c72c5;font-weight:900}.binder-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:15px 0}.binder-tools b{font-size:.8rem;padding:6px 9px;border-radius:99px;background:#eef5ff}.binder-tools a{margin-left:auto}.tradingcard{position:relative;overflow:hidden}.tradingcard.rarity-rare{border-color:#7957d5}.tradingcard.rarity-epic{border-color:#f19b2c;box-shadow:0 10px 30px #d57a1f28}.cardtop{display:flex;justify-content:space-between;color:#58677d}.cardstats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:12px 0}.cardstats div{display:grid;text-align:center;background:#f5f8fc;border-radius:10px;padding:7px}.cardstats b{font-size:1.2rem}.cardstats small{font-size:.62rem}.ownedtag{display:block;text-align:center;border-radius:99px;background:#e8f7ef;padding:7px}.lockedcard .ownedtag{background:#eef1f5}.boss-purple{filter:drop-shadow(0 0 18px #7f5cff)}.boss-blue{filter:drop-shadow(0 0 18px #2fc5ff)}.boss-orange{filter:drop-shadow(0 0 18px #ff923e)}
@media(max-width:760px){.casegrid{grid-template-columns:1fr}.casefile{grid-template-columns:auto 1fr}.sportvisual{height:150px}.binder-tools a{margin-left:0}.cardstats{grid-template-columns:1fr 1fr 1fr}}

/* v1.2 explorable world, room builder, companions, arcade */
.home-companion{display:flex;align-items:center;gap:6px;margin-top:9px;padding-top:8px;border-top:1px solid #ffffff33}.home-companion span{font-size:1.6rem}.town-map-scene{position:relative;min-height:620px;margin:20px 0 30px;border-radius:28px;overflow:hidden;background:linear-gradient(#8ed0ff 0 28%,#8bd083 28% 100%);border:4px solid #0c4679;box-shadow:inset 0 0 0 5px #ffffff33}.town-map-scene:before{content:'';position:absolute;left:0;right:0;top:26%;height:80px;background:#73b7e7;clip-path:polygon(0 45%,15% 20%,32% 50%,52% 15%,70% 55%,100% 20%,100% 100%,0 100%);opacity:.7}.map-road{position:absolute;background:#7c8790;border:6px solid #e9edf0}.road-a{width:120%;height:70px;left:-10%;top:53%;transform:rotate(-7deg)}.road-b{height:120%;width:70px;left:48%;top:-10%;transform:rotate(5deg)}.map-building{position:absolute;width:130px;min-height:110px;padding:12px;border-radius:20px;background:#fff;border:3px solid #174c7d;text-decoration:none;color:#0b2b50;text-align:center;display:grid;place-items:center;gap:4px;box-shadow:0 10px 20px #102c4d33;z-index:2;transition:.15s}.map-building:hover{transform:translateY(-5px) scale(1.03)}.map-building>span{font-size:2.5rem}.map-building small{font-size:.7rem}.map-locked{filter:grayscale(.8);opacity:.65}.map-pos-1{left:5%;top:12%}.map-pos-2{left:25%;top:34%}.map-pos-3{left:7%;top:66%}.map-pos-4{left:39%;top:12%}.map-pos-5{left:57%;top:35%}.map-pos-6{right:5%;top:11%}.map-pos-7{right:8%;top:65%}.map-pos-8{left:28%;top:70%}.map-pos-9{left:50%;top:72%}.map-pos-10{right:27%;top:8%}.map-pos-11{right:26%;top:55%}.map-pos-12{right:3%;top:38%}.room-builder{border:3px solid #244a72;border-radius:24px;overflow:hidden;background:#eef7ff}.room-backwall{height:150px;background:linear-gradient(135deg,#c9e5ff,#f4d9ff);position:relative}.room-window{position:absolute;left:8%;top:25px;background:#fff;border:8px solid #47749c;padding:18px 28px;font-size:2rem}.room-poster{position:absolute;right:10%;top:34px;background:#0b2b50;color:#54c7ff;padding:18px;transform:rotate(3deg);font-weight:900;border-radius:8px}.room-floor-grid{min-height:380px;position:relative;background:repeating-linear-gradient(90deg,#b6855d 0,#b6855d 44px,#c39268 44px,#c39268 88px);display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:8px;padding:20px}.room-slot{border:2px dashed #ffffff77;border-radius:18px;display:grid;place-items:center;min-height:130px;position:relative}.slot-label{opacity:.4;font-weight:900}.placed-item{display:grid;place-items:center;text-align:center;background:#ffffffdd;border-radius:16px;padding:10px;min-width:90px}.placed-item>span{font-size:2.5rem}.tinybutton{position:absolute;right:3px;top:3px;border-radius:50%;width:26px;height:26px;min-height:0;padding:0}.cybercitizen-room{position:absolute;left:42%;bottom:12px;z-index:3}.room-companion{position:absolute;right:-38px;bottom:5px;font-size:2.4rem;filter:drop-shadow(0 4px 4px #0003)}.placement-tray{display:grid;gap:8px;margin-top:14px;padding:14px;background:#eef7ff;border-radius:18px}.placement-tray form{display:grid;grid-template-columns:1fr 120px 90px;gap:8px;align-items:center}.placement-tray select{padding:8px;border-radius:9px}.companion-card{display:grid;place-items:center;padding:15px 24px;background:#ffffff1a;border-radius:18px}.companion-card span{font-size:3rem}.arcadehero{background:linear-gradient(135deg,#27134f,#0d65a1)}.arcade-cabinets{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.arcade-cabinet{background:linear-gradient(180deg,#2d1b59,#0b1530);color:white;text-decoration:none;border:4px solid #44d7ff;border-radius:28px 28px 14px 14px;padding:22px;text-align:center;display:grid;gap:9px;box-shadow:0 0 24px #33d0ff44}.arcade-cabinet span{font-size:4rem}.arcade-cabinet b{background:#f3d93e;color:#1b1b1b;border-radius:10px;padding:7px}.arcade-stage{max-width:760px;margin:20px auto;text-align:center;background:#10152a;border:6px solid #5be6ff;border-radius:30px;padding:24px;color:white}.arcade-marquee{font-size:2rem;font-weight:900;color:#f4e34b;text-shadow:0 0 10px #ffcf35}.arcade-screen{min-height:300px;margin:20px 0;background:#050914;border:4px inset #3d5d80;border-radius:16px;padding:28px;display:grid;align-content:center;gap:18px}.arcade-screen button{margin:7px}.arcade-screen #arcadePrompt{font-size:1.3rem;font-weight:800}.arcade-screen #arcadeHud{color:#74dfff}.arcade-stage .secondarybutton{display:inline-block;margin-left:10px}.district-actions .featuretile[href="/arcade/"]{border-color:#ffda44}
@media(max-width:900px){.arcade-cabinets{grid-template-columns:repeat(2,1fr)}.town-map-scene{min-height:760px}.map-building{width:110px}.map-pos-1{left:4%;top:8%}.map-pos-2{left:36%;top:17%}.map-pos-3{left:68%;top:7%}.map-pos-4{left:7%;top:34%}.map-pos-5{left:40%;top:42%}.map-pos-6{right:5%;top:31%}.map-pos-7{left:5%;top:63%}.map-pos-8{left:37%;top:69%}.map-pos-9{right:5%;top:59%}.map-pos-10{left:4%;top:82%}.map-pos-11{left:38%;top:84%}.map-pos-12{right:4%;top:81%}}
@media(max-width:600px){.town-map-scene{min-height:1050px}.map-building{width:42%;position:absolute}.map-pos-1{left:5%;top:3%}.map-pos-2{left:53%;top:3%}.map-pos-3{left:5%;top:19%}.map-pos-4{left:53%;top:19%}.map-pos-5{left:5%;top:35%}.map-pos-6{left:53%;top:35%}.map-pos-7{left:5%;top:51%}.map-pos-8{left:53%;top:51%}.map-pos-9{left:5%;top:67%}.map-pos-10{left:53%;top:67%}.map-pos-11{left:5%;top:83%}.map-pos-12{left:53%;top:83%}.arcade-cabinets{grid-template-columns:1fr}.placement-tray form{grid-template-columns:1fr}.room-floor-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,1fr)}}

/* v1.3 CyberGlitch rendered visual-quality pass */
.rendered-coinbox img{width:92px;height:48px;object-fit:cover;object-position:center;border-radius:10px;filter:drop-shadow(0 6px 10px #0005)}
.rendered-coinbox{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 10px;align-items:center}.rendered-coinbox img{grid-row:1/3}.rendered-coinbox span{align-self:end}.rendered-coinbox strong{align-self:start}
.gw-game{background:linear-gradient(180deg,#07172c,#0b2c50);border-color:#1d78ba;color:#fff;box-shadow:0 16px 45px #051b3550}.gw-hud{color:#bde9ff}.gw-arena{background:radial-gradient(circle at 60% 30%,#1178a455,transparent 26%),linear-gradient(180deg,#0b3156 0 55%,#092445 55%);border:2px solid #159ee0;box-shadow:inset 0 0 45px #0aa8ff22;overflow:hidden}.gw-arena:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 48%,#48cbff22 49%,#48cbff22 51%,transparent 52%),linear-gradient(0deg,transparent 48%,#48cbff17 49%,#48cbff17 51%,transparent 52%);background-size:90px 90px;perspective:400px;pointer-events:none}.rendered-player{background:transparent!important;border:0!important;width:74px!important;height:54px!important;display:grid;place-items:center}.rendered-player img{width:82px;height:58px;object-fit:cover;object-position:center;border-radius:14px;filter:drop-shadow(0 10px 12px #0008)}.rendered-orb{width:48px!important;height:48px!important;border-radius:50%!important;background:radial-gradient(circle at 35% 28%,#fff,#62eaff 17%,#177bea 50%,#062d73 72%)!important;border:3px solid #7ff8ff!important;color:#fff!important;box-shadow:0 0 16px #35cfff,0 0 34px #1c76ff!important;display:grid!important;place-items:center!important;padding:0!important;font-weight:1000!important}.rendered-orb span{font-size:20px;text-shadow:0 2px 4px #001d4b}.gw-scenery{position:absolute;pointer-events:none}.scenery-tree{left:16%;top:18%;width:50px;height:80px}.scenery-tree:before,.scenery-tree:after{content:'';position:absolute;background:linear-gradient(135deg,#23d997,#087b78);clip-path:polygon(50% 0,100% 100%,0 100%);width:50px;height:50px}.scenery-tree:after{top:25px;transform:scale(.85)}.scenery-tree i{position:absolute;left:21px;top:55px;width:9px;height:24px;background:#8b5a3d;border-radius:4px}.scenery-tower{right:13%;top:14%;width:58px;height:80px;background:linear-gradient(180deg,#35b4ff,#164d9e);border:2px solid #72e8ff;border-radius:10px 10px 4px 4px;box-shadow:0 0 18px #2eb7ff55}.scenery-tower:before{content:'';position:absolute;left:12px;right:12px;top:14px;height:8px;background:#bff8ff;box-shadow:0 18px #bff8ff,0 36px #bff8ff}.scenery-tower i{position:absolute;left:22px;bottom:0;width:14px;height:20px;background:#061d42}
.game-store{margin-top:30px;padding:26px;border-radius:28px;background:linear-gradient(145deg,#051427,#082345);border:1px solid #197ed0;color:#fff;box-shadow:0 20px 55px #061a3544}.game-store .sectionhead h2,.game-store .eyebrow{color:#fff}.game-store .muted{color:#b9d7f4}.game-store .collectible-grid{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:14px}.rendered-store-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#0a2544,#07182d)!important;border:1px solid #167ac4!important;color:#fff;border-radius:20px!important;padding:12px!important;box-shadow:inset 0 0 20px #27b8ff12}.rendered-store-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0006,0 0 18px #139cff44}.rendered-store-card.rarity-uncommon{border-color:#24b9e8!important}.rendered-store-card.rarity-rare{border-color:#a348f5!important;box-shadow:inset 0 0 24px #9b44ff18}.rendered-store-card.rarity-epic{border-color:#ff9c27!important;box-shadow:inset 0 0 24px #ff7d001d}.rarity-label{display:inline-block;width:max-content;font-size:.7rem;font-weight:900;letter-spacing:.06em;border:1px solid currentColor;border-radius:99px;padding:4px 7px;color:#68d7ff;margin-bottom:7px}.rarity-rare .rarity-label{color:#d089ff}.rarity-epic .rarity-label{color:#ffb24c}.rendered-item-art{height:150px;border-radius:14px;overflow:hidden;background:radial-gradient(circle,#0c4b6f,#061729);margin-bottom:10px}.rendered-item-art img{width:100%;height:100%;object-fit:cover;transition:.22s}.rendered-store-card:hover .rendered-item-art img{transform:scale(1.055)}.rendered-store-card>strong{font-size:1.2rem}.rendered-store-card p{color:#d8e7f5;min-height:48px}.coin-price{display:flex;gap:7px;align-items:center;color:#fff;font-size:1rem}.coin-price b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(#ffd34f,#f49718);color:#6b4300;border:2px solid #ffdf73}.rendered-store-card button{max-width:none;text-align:center;color:#fff;background:linear-gradient(#168eff,#0870d2);border-color:#39baff;font-weight:900}.rendered-store-card.owned button,.rendered-store-card .ownedtag{background:#21873a;color:white}.rendered-request{overflow:hidden;background:#071d35!important;border:2px solid #21bfff}.rendered-request img{width:100%;height:100%;object-fit:cover}.coin-request img{object-fit:cover;object-position:center}
.rendered-arcade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rendered-cabinet{padding:12px!important;overflow:hidden;background:linear-gradient(180deg,#07172e,#0c2142)!important;border:2px solid #1dc7ff!important;box-shadow:0 0 20px #19b8ff33,0 18px 36px #08162c38!important}.arcade-art{height:190px;border-radius:18px;overflow:hidden;border:1px solid #3dd7ff66;background:#061426}.arcade-art img{width:100%;height:100%;object-fit:cover;transition:.25s}.rendered-cabinet:hover .arcade-art img{transform:scale(1.04)}.rendered-cabinet strong{font-size:1.4rem;color:#e9f8ff}.rendered-cabinet small{color:#a9d6f3}.rendered-cabinet b{background:linear-gradient(#42cf38,#229b27)!important;color:#fff!important}.rendered-stage{max-width:900px}.selected-game-art{height:260px;border:2px solid #37cfff;border-radius:18px;overflow:hidden;margin:16px 0;background:#061426}.selected-game-art img{width:100%;height:100%;object-fit:cover}.rendered-stage .arcade-screen{background:linear-gradient(180deg,#071426,#050913);border-color:#3479b0}.rendered-stage .arcade-screen button{background:linear-gradient(#143c6a,#0c2648);color:#fff;border-color:#2daeee;text-align:center}.rendered-stage .arcade-screen button:hover{background:linear-gradient(#1a67a7,#123f70)}
.rendered-sportsgrid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.rendered-sportcard{overflow:hidden;padding:12px!important;background:linear-gradient(180deg,#07172f,#0a2848)!important;color:#fff!important;border:1px solid #1b8dcc!important;border-radius:22px!important;box-shadow:0 12px 24px #061d3540!important}.sport-card-art{height:180px;border-radius:17px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 45%,#1e88bb,#07152c 68%)}.sport-card-art:after{content:'';position:absolute;inset:12px;border:1px solid #ffffff30;border-radius:14px}.sport-card-art img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 12px 12px #0008);transition:.2s}.rendered-sportcard:hover .sport-card-art img{transform:scale(1.07)}.rendered-sportcard strong{font-size:1.2rem}.rendered-sportcard small{color:#b8d8ef}.rendered-sportcard em{color:#4ce4ff!important}.sport-mark{position:absolute;right:12px;bottom:12px;width:42px;height:42px;border-radius:50%;z-index:2;background:radial-gradient(circle at 35% 30%,#fff,#22a8ff 25%,#063c8c 70%);border:2px solid #75eaff;box-shadow:0 0 15px #2bc8ff}.sport-mark-basketball{background:radial-gradient(circle,#ffb445,#d56a11)}.sport-mark-football{background:linear-gradient(45deg,#6e3b1c,#b06a31);border-radius:55% 18%}.sport-mark-soccer{background:radial-gradient(circle,#fff 50%,#151515 53%)}.sport-mark-baseball{background:radial-gradient(circle,#fff,#ececec)}.sport-mark-hockey{background:linear-gradient(#232323,#050505);height:22px;bottom:21px}.sport-mark-volleyball{background:conic-gradient(#f5f5f5,#53c8ff,#f5f5f5,#53c8ff,#f5f5f5)}.sport-mark-skate{border-radius:12px;background:linear-gradient(90deg,#fd4fff,#32d9ff)}.sport-mark-racing{background:linear-gradient(135deg,#ff3c3c 50%,#fff 50%)}.sport-mark-dojo{background:linear-gradient(#181818,#181818);border-radius:6px;height:16px;bottom:24px}.sport-mark-wrestling{background:linear-gradient(135deg,#e52f45,#3e58db)}.sport-mark-swimming{background:radial-gradient(circle,#bff4ff,#0ba8d8)}.sport-mark-games{background:linear-gradient(#ffd447,#da9400)}
.rendered-sportarena{background:linear-gradient(145deg,#07182f,#0b3154);border:1px solid #1689c9;border-radius:26px;padding:20px;color:#fff}.rendered-sportarena .scoreboard{background:#06111f;border:1px solid #1ba6ef;border-radius:15px}.rendered-sportarena .sportvisual{height:300px;background:radial-gradient(circle at 50% 40%,#157ba5,#06203c 72%);border:2px solid #1bbaf4}.rendered-sportarena .sportvisual:before{display:none}.sport-athlete{position:relative;z-index:2;height:90%;display:grid;place-items:center}.sport-athlete img{height:100%;max-width:64%;object-fit:contain;filter:drop-shadow(0 14px 12px #0008)}.sport-field-lines{position:absolute;inset:20px;border:2px solid #ffffff35;border-radius:20px}.sport-field-lines:before,.sport-field-lines:after{content:'';position:absolute;background:#ffffff30}.sport-field-lines:before{left:50%;top:0;bottom:0;width:2px}.sport-field-lines:after{left:38%;top:35%;width:24%;height:30%;border:2px solid #ffffff30;border-radius:50%;background:transparent}.rendered-sportarena .gamepanel{background:#f5f9ff}.rendered-sportarena .gamepanel button{background:linear-gradient(#137fd8,#07599e);color:#fff;border-color:#37b9fa;font-weight:800}
.rendered-critter-art{height:180px;display:grid;place-items:center;background:radial-gradient(circle,#dff7ff,#9acdeb);border-radius:16px;overflow:hidden}.rendered-critter-art img{height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 9px 10px #0003)}
@media(max-width:760px){.rendered-arcade-grid{grid-template-columns:1fr}.rendered-sportarena .sportvisual{height:230px}.rendered-item-art{height:135px}}
.cybertown-placeholder-art{height:150px;border-radius:14px;background:radial-gradient(circle at 50% 45%,#164c79,#07182c 70%);border:1px solid #258cd1;display:grid;place-items:center;text-align:center;color:#aee8ff;position:relative;overflow:hidden}.cybertown-placeholder-art:before{content:'';position:absolute;width:110px;height:110px;border:2px solid #37d5ff33;border-radius:50%;box-shadow:0 0 35px #25baff44}.cybertown-placeholder-art span{font-size:2rem;font-weight:1000;letter-spacing:.08em;z-index:1}.cybertown-placeholder-art b{font-size:.75rem;z-index:1;color:#d7f2ff}

/* v1.4 Coin Dash completion loop */
.gw-finish-gate{position:absolute;right:28px;top:46%;width:88px;height:116px;border:3px solid #69efff;border-radius:18px 18px 8px 8px;background:linear-gradient(180deg,#143d7c,#071932);box-shadow:0 0 18px #32d9ff,0 0 42px #246dff88;z-index:3;display:grid;place-items:start center;padding-top:10px;color:#dffcff;font-weight:900;letter-spacing:.08em;text-shadow:0 0 8px #42e7ff}.gw-finish-gate[hidden]{display:none}.gw-finish-gate:before,.gw-finish-gate:after{content:'';position:absolute;top:28px;width:10px;height:72px;border-radius:8px;background:linear-gradient(#b9fbff,#21a8ff,#683dff);box-shadow:0 0 12px #46e8ff}.gw-finish-gate:before{left:12px}.gw-finish-gate:after{right:12px}.gw-finish-gate i{position:absolute;left:20px;right:20px;bottom:12px;height:10px;border-radius:10px;background:#7df4ff;box-shadow:0 0 16px #57eaff}.gw-finish-gate span{font-size:.72rem}
.victory-card{background:radial-gradient(circle at 50% 0,#164d8c,#07182f 46%,#061226);color:#fff;border:2px solid #31cfff;box-shadow:0 0 45px #1aaeff77,0 28px 90px #0009}.victory-card h2{font-size:2.3rem;margin:.2rem 0 .5rem;color:#fff}.victory-card p{color:#cce9ff}.victory-art{height:145px;display:grid;place-items:center;position:relative;overflow:hidden;border-radius:20px;margin-bottom:10px;background:linear-gradient(90deg,#072548,#135d8e,#072548)}.victory-art:after{content:'';position:absolute;left:8%;right:8%;bottom:26px;height:5px;background:#57ecff;box-shadow:0 0 18px #4cecff}.victory-art img{position:relative;z-index:2;width:190px;max-height:125px;object-fit:cover;border-radius:20px;filter:drop-shadow(0 14px 18px #0008);transform:rotate(-4deg)}.victory-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.victory-stats>div{background:#0b3158;border:1px solid #2c9bd6;border-radius:16px;padding:13px 8px;display:grid;gap:3px}.victory-stats strong{font-size:1.45rem;color:#77f2ff}.victory-stats span{font-size:.82rem;color:#c9eaff}.victory-message{font-weight:800;color:#ffe68c!important}.victory-actions{grid-template-columns:1fr 1fr}.victory-actions .primary{background:linear-gradient(180deg,#26b8ff,#0872dc);color:#fff;border-color:#62dcff}
@media(max-width:600px){.victory-stats{grid-template-columns:1fr}.victory-actions{grid-template-columns:1fr}.gw-finish-gate{right:14px;transform:scale(.88);transform-origin:right center}}

/* ===== CyberGlitch v1.5 — Tac-Sec-Toe ===== */
.tst-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:10px 0 18px}
.tst-topbar h1{font-size:clamp(2rem,4vw,3.4rem);margin:.15rem 0;color:#09204b}
.tst-shell{display:grid;grid-template-columns:minmax(180px,240px) minmax(430px,1fr) minmax(180px,240px);gap:18px;align-items:stretch;margin:18px 0}
.tst-player-panel,.tst-center{border:1px solid #b8d6f4;border-radius:24px;background:linear-gradient(180deg,#071b3b,#04132d);color:#eef8ff;box-shadow:0 12px 35px rgba(3,30,76,.16)}
.tst-player-panel{padding:18px;text-align:center;overflow:hidden}.tst-player-panel h2{color:#fff;margin:.2rem 0 1rem}
.tst-character-card{height:230px;border-radius:20px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 70%,rgba(20,176,255,.24),transparent 58%),#061733;border:1px solid #1da7ff}
.tst-character-card.enemy{border-color:#ff3c59;background:radial-gradient(circle at 50% 70%,rgba(255,48,80,.20),transparent 58%),#190a1a}
.tst-character-card img{position:relative;z-index:2;width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(0,0,0,.35))}
.tst-character-glow{position:absolute;width:150px;height:150px;border-radius:50%;filter:blur(28px);opacity:.5}.tst-character-glow.blue{background:#00aaff}.tst-character-glow.red{background:#ff294d}
.danger-text{color:#ff627b}.tst-score-row,.tst-power,.tst-threat{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:14px;background:#0a2348;margin-top:10px}
.tst-power,.tst-threat{display:grid;text-align:left;gap:4px}.tst-power span,.tst-threat span{font-size:.72rem;letter-spacing:.08em;color:#78cfff}.tst-power b,.tst-threat b{font-size:.85rem}
.tst-power.active{outline:2px solid #36e391;box-shadow:0 0 18px rgba(54,227,145,.32)}.tst-power.active b{color:#69f6a9}
.tst-center{padding:18px}.tst-statusbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 16px;border:1px solid #1c9dff;border-radius:14px;background:linear-gradient(90deg,#092b5a,#071b3b);margin-bottom:14px}
.tst-statusbar span{font-weight:800;color:#75d7ff}.tst-statusbar strong{font-size:.78rem;letter-spacing:.08em;color:#fff}
.tst-board-wrap{display:grid;place-items:center;padding:12px;border-radius:22px;background:radial-gradient(circle,#0a2d5a 0,#061a39 58%,#031128 100%);border:1px solid #17a5ff}
.tst-board{width:min(520px,100%);aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border-radius:20px;background:linear-gradient(135deg,#03a8ff,#6947ff,#0abfff);box-shadow:0 0 30px rgba(0,159,255,.25)}
.tst-cell{appearance:none;border:0;border-radius:13px;background:linear-gradient(180deg,#071b3b,#041128);display:grid;place-items:center;cursor:pointer;transition:.16s transform,.16s box-shadow,.16s background;min-width:0;padding:5px}
.tst-cell:hover:empty{transform:translateY(-2px);box-shadow:inset 0 0 0 2px #5fcfff,0 0 22px rgba(52,190,255,.35)}
.tst-cell img{width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.36))}
.tst-cell.player-mark{background:radial-gradient(circle,#0e4f83,#06172f)}.tst-cell.enemy-mark{background:radial-gradient(circle,#541229,#180815)}
.tst-cell.winner-cell{animation:tstWin 750ms ease-in-out infinite alternate;box-shadow:inset 0 0 0 3px #ffe45a,0 0 26px #ffc928}
@keyframes tstWin{from{transform:scale(.96)}to{transform:scale(1.03)}}
.tst-challenge{margin-top:15px;padding:18px;border-radius:19px;border:1px solid #205fa0;background:linear-gradient(180deg,#09244a,#06162e)}
.tst-challenge-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.tst-challenge h3{color:#fff;margin:.15rem 0 .8rem;font-size:1.12rem}
.tst-challenge-badge{padding:8px 10px;border-radius:999px;background:#0b79ce;color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.05em;white-space:nowrap}
.tst-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tst-answer{display:flex;align-items:center;gap:10px;text-align:left;background:#0a1e3e;color:#eaf6ff;border:1px solid #285b92;border-radius:12px;padding:11px 12px;cursor:pointer}
.tst-answer span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:8px;background:#133a68;color:#80d6ff;font-weight:900}.tst-answer:hover{border-color:#42b9ff}
.tst-answer.correct{background:#103e2e;border-color:#35db82}.tst-answer.incorrect{background:#4a1423;border-color:#ff5a75}.tst-feedback{min-height:24px;color:#cfeaff;font-weight:700;margin:.8rem 0 .2rem}
.tst-howto{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 24px}.tst-howto article{padding:16px;border:1px solid #c6daf0;background:#fff;border-radius:16px}
.tst-howto strong{display:block;color:#07336d;margin-bottom:4px}.tst-howto span{color:#49617f}.tst-result-card{text-align:center;max-width:620px}
.tst-result-art{height:190px;display:grid;place-items:center}.tst-result-art img{height:100%;max-width:230px;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(0,0,0,.25))}
@media(max-width:980px){.tst-shell{grid-template-columns:1fr}.tst-player-panel{display:grid;grid-template-columns:140px 1fr;align-items:center;text-align:left}.tst-character-card{height:135px}.tst-player-panel .eyebrow,.tst-player-panel h2,.tst-player-panel .tst-score-row,.tst-player-panel .tst-power,.tst-player-panel .tst-threat{grid-column:2}.tst-character-card{grid-row:1/6}.tst-choice-grid{grid-template-columns:1fr}}
@media(max-width:620px){.tst-topbar{align-items:flex-start;flex-direction:column}.tst-howto{grid-template-columns:1fr}.tst-player-panel{grid-template-columns:100px 1fr}.tst-character-card{height:105px}.tst-center{padding:10px}.tst-challenge-head{display:block}.tst-challenge-badge{display:inline-block;margin-bottom:8px}}

/* ===== CyberGlitch v1.6 — Integrated Tac-Sec-Toe ===== */
.game-back-link{display:inline-block;margin-bottom:10px}
.tst-gameframe{background:linear-gradient(180deg,#06152d,#030b1a);border:1px solid #164c88;border-radius:26px;padding:18px;color:#e9f7ff;box-shadow:0 24px 60px #08214d24;overflow:hidden}
.tst-gameheader{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:2px 8px 16px;border-bottom:1px solid #153b67}
.tst-gameheader h1{margin:0;font-size:clamp(2.2rem,4vw,4rem);letter-spacing:.03em;background:linear-gradient(90deg,#d77cff,#64dfff);-webkit-background-clip:text;color:transparent;text-shadow:0 0 24px #7d6cff44}
.tst-tagline{margin:0;color:#b9d7f5}.tst-coins{display:flex;align-items:center;gap:10px;background:#06152d;border:1px solid #236ca8;border-radius:16px;padding:10px 14px;min-width:150px}
.tst-coins img{width:54px;height:42px;object-fit:contain}.tst-coins span{display:block;color:#8fdfff;font-size:.7rem;font-weight:900;letter-spacing:.08em}.tst-coins strong{font-size:1.45rem;color:#ffd448}
.tst-stage{display:grid;grid-template-columns:260px minmax(520px,1fr) 260px;gap:16px;padding-top:16px}
.tst-side{border:1px solid #1c5a96;border-radius:20px;background:linear-gradient(180deg,#071b37,#041124);padding:16px}
.tst-side-enemy{border-color:#69233a;background:linear-gradient(180deg,#220914,#090810)}
.tst-avatar-frame{height:205px;border-radius:17px;display:grid;place-items:center;background:radial-gradient(circle,#1b5c8b,#06152b 64%);border:1px solid #1fb9ff;overflow:hidden}
.tst-avatar-frame.enemy{background:radial-gradient(circle,#69182d,#13070d 65%);border-color:#ff3558}
.tst-avatar-frame img{width:92%;height:92%;object-fit:contain;filter:drop-shadow(0 14px 16px #0007)}
.tst-role-label{display:inline-block;margin-top:12px;padding:5px 10px;border-radius:8px;background:#116ab5;color:#dff7ff;font-weight:900;font-size:.72rem}.tst-role-label.enemy{background:#86162b;color:#ffb2bf}
.tst-side h2{margin:.55rem 0;color:#fff}.tst-stat{display:flex;justify-content:space-between;align-items:center;margin:12px 0;padding:12px;border-radius:12px;background:#0b2c50}.tst-stat.enemy{background:#30101a}.tst-stat span{font-size:.75rem;font-weight:900;letter-spacing:.07em;color:#8fdfff}.tst-stat strong{font-size:1.35rem}
.tst-shield-card,.tst-threat-card{display:flex;align-items:center;gap:10px;padding:13px;border-radius:14px;border:1px solid #245684;background:#071a32;margin:12px 0}.tst-shield-card.active{border-color:#46e79d;box-shadow:0 0 20px #43e59b25}.tst-shield-icon{width:44px;height:50px;display:grid;place-items:center;clip-path:polygon(50% 0,100% 20%,88% 75%,50% 100%,12% 75%,0 20%);background:linear-gradient(#20c5ff,#1269d6);font-weight:1000;color:#fff}.tst-shield-card strong,.tst-threat-card>span{display:block;color:#62dfff;font-size:.75rem}.tst-shield-card span{display:block;color:#c8def3;font-size:.8rem}
.tst-threat-card{display:grid;gap:5px;border-color:#5e2030;background:#240b13}.tst-threat-card>span{color:#ff6a82}.tst-threat-card strong{color:#fff;font-size:1.15rem}.threat-meter{display:flex;gap:4px}.threat-meter i{width:20%;height:7px;border-radius:4px;background:#3a1b24}.threat-meter i:first-child,.threat-meter i:nth-child(2){background:#ef334f}
.tst-event-card{margin-top:14px;padding:14px;border-radius:15px;background:linear-gradient(180deg,#082a50,#06172c);border:1px solid #1c78b4}.event-kicker{font-size:.66rem;font-weight:900;color:#69ddff;letter-spacing:.06em}.tst-event-card h3{color:#ffd04d;margin:.5rem 0}.tst-event-card p{font-size:.85rem;color:#c7dff3}.tst-event-card button{width:100%;background:linear-gradient(#ffc52d,#e59000);border-color:#ffd96a;color:#2b1900;font-weight:900}.event-feedback{min-height:1.3em}
.tst-arena{min-width:0}.tst-arena-titlebar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:10px;padding:10px 14px;border:1px solid #1a5d9e;border-radius:13px;background:#071b36}.tst-arena-titlebar span{display:block;color:#53d4ff;font-size:.72rem;font-weight:900;letter-spacing:.06em}.tst-arena-titlebar strong{color:#fff}.tst-power-counter{font-size:.72rem;font-weight:900;color:#d597ff;border:1px solid #714fa0;padding:7px 9px;border-radius:999px;background:#25133f}
.tst-board-stage{position:relative;min-height:610px;border:1px solid #116cb3;border-radius:22px;padding:18px;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#0b3767,#06152e 68%,#030b19);overflow:hidden}
.tst-board-stage:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#28a8ff0e 1px,transparent 1px),linear-gradient(90deg,#28a8ff0e 1px,transparent 1px);background-size:34px 34px;pointer-events:none}
.tst-board-live{position:relative;z-index:2;width:min(560px,92%);aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border-radius:20px;background:linear-gradient(135deg,#0d9ce6,#4938dc,#04badd);box-shadow:0 0 45px #0c9fff32}
.tst-live-cell{position:relative;overflow:hidden;border:0;border-radius:11px;background:linear-gradient(180deg,#071a36,#061128);cursor:pointer;display:grid;place-items:center;padding:6px;transition:transform .14s,box-shadow .14s}
.tst-live-cell:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 2px #64dcff,0 0 22px #28c8ff46}.tst-live-cell img{position:relative;z-index:2;width:90%;height:90%;object-fit:contain;filter:drop-shadow(0 10px 12px #0007)}
.cell-glow{position:absolute;width:70%;height:70%;border-radius:50%;background:#0aa9ff12;filter:blur(16px)}.tst-live-cell.player-mark{background:radial-gradient(circle,#135c8e,#06152e)}.tst-live-cell.enemy-mark{background:radial-gradient(circle,#671829,#18080e)}.tst-live-cell.winner-cell{animation:v16winner .65s ease-in-out infinite alternate;box-shadow:inset 0 0 0 3px #ffe864,0 0 28px #ffd12e}
@keyframes v16winner{from{transform:scale(.96)}to{transform:scale(1.03)}}
.tst-challenge-overlay{position:absolute;z-index:8;inset:0;background:#020913d9;backdrop-filter:blur(3px);display:grid;place-items:center;padding:22px;opacity:0;transition:opacity .15s}.tst-challenge-overlay[hidden]{display:none}.tst-challenge-overlay.show{opacity:1}
.tst-challenge-window{width:min(720px,94%);border:2px solid #a353ff;border-radius:22px;padding:20px;background:linear-gradient(180deg,#24103e,#0b1634 40%,#061229);box-shadow:0 0 46px #7a3cff55}.tst-challenge-top{display:flex;gap:14px;align-items:center}.tst-powerup-gem{width:62px;height:62px;display:grid;place-items:center;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);background:linear-gradient(#b86cff,#5d29d8);font-size:2rem;font-weight:1000;color:#fff}.tst-challenge-window h3{margin:.2rem 0 .8rem;color:#fff}
.tst-overlay-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tst-overlay-answer{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid #385989;background:#091a35;color:#ecf7ff;border-radius:12px;padding:12px;cursor:pointer}.tst-overlay-answer span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#183c6c;color:#6ee3ff;font-weight:900}.tst-overlay-answer.correct{border-color:#38dc86;background:#123b2b}.tst-overlay-answer.incorrect{border-color:#ff5671;background:#441421}.tst-overlay-feedback{min-height:1.5em;color:#dcefff;font-weight:700}.tst-resume{width:100%;background:linear-gradient(#18b6ff,#0967c4);color:#fff;border-color:#54dcff;font-weight:900}
.tst-thinking{position:absolute;z-index:7;inset:auto 50% 30px auto;transform:translateX(50%);display:flex;align-items:center;gap:10px;background:#170a12e8;border:1px solid #b12b45;color:#fff;border-radius:999px;padding:10px 16px}.tst-thinking[hidden]{display:none}.thinking-orb{width:18px;height:18px;border-radius:50%;background:#ff3452;box-shadow:0 0 14px #ff3452;animation:thinkpulse .55s infinite alternate}@keyframes thinkpulse{to{transform:scale(1.4);opacity:.55}}
.tst-instructions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.tst-instructions span{background:#071a34;border:1px solid #214a75;border-radius:12px;padding:10px;font-size:.78rem;color:#bcd6ee}.tst-instructions b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#0e79c3;color:#fff;margin-right:5px}
.tst-mini-rules{display:grid;gap:9px;margin-top:15px}.tst-mini-rules article{display:grid;gap:2px;padding:10px;border:1px solid #52202f;border-radius:12px;background:#1c0c12}.tst-mini-rules b{color:#ff6c84}.tst-mini-rules span{font-size:.8rem;color:#ddbfc7}
.tst-result-card-v16{text-align:center;max-width:620px;position:relative;overflow:hidden}.tst-result-card-v16>img{height:190px;max-width:240px;object-fit:contain;filter:drop-shadow(0 14px 16px #0005)}.result-burst{position:absolute;width:300px;height:300px;left:50%;top:20px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,#54dfff55,transparent 65%);pointer-events:none}
@media(max-width:1180px){.tst-stage{grid-template-columns:210px 1fr 210px}.tst-board-stage{min-height:540px}}
@media(max-width:930px){.tst-stage{grid-template-columns:1fr}.tst-side{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:center}.tst-avatar-frame{grid-row:1/6;height:120px}.tst-event-card,.tst-mini-rules{grid-column:1/-1}.tst-board-stage{min-height:540px}.tst-overlay-choices{grid-template-columns:1fr}}
@media(max-width:620px){.tst-gameheader{align-items:flex-start;flex-direction:column}.tst-board-stage{min-height:450px;padding:10px}.tst-board-live{width:100%}.tst-instructions{grid-template-columns:1fr}.tst-side{grid-template-columns:90px 1fr}.tst-avatar-frame{height:90px}.tst-challenge-window{padding:14px}}


/* ===== CyberGlitch v1.7 — GameWorld cache/layout hardening ===== */
main.gameworld-main{
  max-width:1600px;
  width:100%;
  padding:20px clamp(14px,2vw,32px) 48px;
}
.gameworld-main .tst-gameframe{
  width:100%;
  max-width:none;
}
.gameworld-main .tst-stage{
  width:100%;
}
.gameworld-main .tst-arena{
  width:100%;
  min-width:0;
}
.gameworld-main .tst-board-stage{
  width:100%;
}
.gameworld-main .tst-board-live{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  grid-template-rows:repeat(3,minmax(0,1fr)) !important;
  width:min(620px,94%) !important;
  aspect-ratio:1 / 1 !important;
}
.gameworld-main .tst-live-cell{
  display:grid !important;
  width:auto !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:6px !important;
}

/* ===== CyberGlitch v1.8 — MyCorner rendered wardrobe ===== */
main.mycorner-main{max-width:1500px;width:100%;padding:20px clamp(14px,2.5vw,36px) 60px}
.mycorner-main .wardrobe-layout{grid-template-columns:minmax(320px,430px) minmax(0,1fr);align-items:start}
.mycorner-main .citizen-stage{position:sticky;top:18px}
.wardrobe-rendered-art{height:132px;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 50% 70%,#125b8d,#06152d 68%);border:1px solid #234c78;display:grid;place-items:center;margin-bottom:9px}
.wardrobe-rendered-art img{width:100%;height:100%;object-fit:cover;transition:transform .18s ease}
.wardrobe-item:hover .wardrobe-rendered-art img{transform:scale(1.035)}
.wardrobe-item{padding:8px}
.wardrobe-item>strong{display:block;font-size:.88rem;margin:.2rem 0}
.wardrobe-item>small{display:flex;justify-content:center;align-items:center;gap:4px}
.mini-coin,.ct-coin-mark{display:inline-grid;place-items:center;border-radius:50%;background:linear-gradient(#ffd94b,#e59700);color:#513100;border:2px solid #ffe988;font-weight:1000}
.mini-coin{width:17px;height:17px;font-size:.62rem}.ct-coin-mark{width:23px;height:23px;font-size:.72rem;margin-right:5px}
.ct-star-mark{color:#30aaff;text-shadow:0 0 8px #45c6ff}
.rendered-avatar-layer{pointer-events:none;background:transparent!important;border:0!important;display:grid;place-items:center}
.rendered-avatar-layer img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 8px #001a3a55)}
/* product-art overlays are intentionally subtle so the base CyberCitizen remains dominant */
.outfit-layer.rendered-avatar-layer{left:22%;right:22%;top:47%;bottom:7%;opacity:.88}
.headwear-layer.rendered-avatar-layer{left:20%;right:20%;top:2%;height:33%;opacity:.96}
.eyewear-layer.rendered-avatar-layer{left:27%;right:27%;top:24%;height:18%;opacity:.94}
.accessory-layer.rendered-avatar-layer{right:3%;left:auto;top:48%;width:30%;height:30%;opacity:.96}
.rendered-expression-chip{display:flex!important;align-items:center;gap:6px;background:#071a34!important;border:1px solid #20baff!important;color:#e7f9ff!important;padding:5px 9px!important}
.rendered-expression-chip img{width:26px;height:26px;border-radius:50%;object-fit:cover}
.rendered-expression-chip span{font-size:.72rem;font-weight:900}
.rendered-city-window{width:100%;height:100%;min-height:70px;display:flex;align-items:flex-end;justify-content:center;gap:8px;padding:10px;background:linear-gradient(#0a2652,#102a5d 55%,#ef7d55 140%)}
.rendered-city-window i{display:block;width:16%;background:linear-gradient(#153c73,#071a39);border:1px solid #2d8dcc;box-shadow:inset 0 0 0 4px #09234a}
.rendered-city-window i:nth-child(1){height:38%}.rendered-city-window i:nth-child(2){height:70%}.rendered-city-window i:nth-child(3){height:52%}.rendered-city-window i:nth-child(4){height:82%}
.room-item-rendered,.mission-app-token,.cybertown-critter-token{display:inline-grid!important;place-items:center;border-radius:10px;background:linear-gradient(145deg,#13b9ff,#185ad6 60%,#7338dc);color:#fff!important;font-weight:1000;border:1px solid #78e2ff;box-shadow:0 5px 12px #003a6f33}
.room-item-rendered{width:42px;height:42px}.room-item-rendered.tiny{width:25px;height:25px;font-size:.65rem}.mission-app-token{width:38px;height:38px}
.rendered-room-companion img{width:82px!important;height:82px!important;object-fit:contain;filter:drop-shadow(0 8px 10px #0005)}
.cybertown-critter-token{width:55px;height:55px;border-radius:50%}
.rendered-badge{width:64px!important;height:72px!important;display:grid!important;place-items:center!important;clip-path:polygon(50% 0,92% 18%,86% 70%,50% 100%,14% 70%,8% 18%);font-size:1.45rem!important;color:#fff!important;font-weight:1000;background:linear-gradient(#16bfff,#125bd8);filter:drop-shadow(0 8px 9px #003a7140)}
.rendered-badge.clue{background:linear-gradient(#ae67ff,#6330cf)}.rendered-badge.pause{background:linear-gradient(#ffd94e,#eb8d00);color:#4a2a00!important}
@media(max-width:980px){.mycorner-main .wardrobe-layout{grid-template-columns:1fr}.mycorner-main .citizen-stage{position:relative;top:auto}.wardrobe-rendered-art{height:120px}}


/* ===== CyberGlitch v1.9 — MyCorner full-item visibility fix ===== */

/* Give the wardrobe more usable horizontal space */
main.mycorner-main{
  max-width:1600px;
}

.mycorner-main .wardrobe-layout{
  grid-template-columns:minmax(330px,430px) minmax(0,1fr);
  gap:22px;
}

/* Keep category grids roomy enough that product art is not squeezed */
.mycorner-main .wardrobe-grid{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:12px;
}

/* Product card */
.mycorner-main .wardrobe-item{
  min-width:0;
  padding:10px;
  overflow:visible;
}

/* Critical fix: show the ENTIRE rendered object */
.mycorner-main .wardrobe-rendered-art{
  height:180px;
  min-height:180px;
  padding:12px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 58%,rgba(28,151,255,.24),transparent 55%),
    linear-gradient(180deg,#081d3c,#041328);
}

/* v1.8 used object-fit:cover, which cut off the product. */
.mycorner-main .wardrobe-rendered-art img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
  object-position:center center;
  transform:none;
}

/* Do not zoom/crop on hover */
.mycorner-main .wardrobe-item:hover .wardrobe-rendered-art img{
  transform:scale(1.02);
}

/* Some source renders have wider proportions. Keep them safely inset. */
.mycorner-main .wardrobe-group[data-category="eyewear"] .wardrobe-rendered-art img,
.mycorner-main .wardrobe-group[data-category="accessory"] .wardrobe-rendered-art img,
.mycorner-main .wardrobe-group[data-category="headwear"] .wardrobe-rendered-art img{
  width:92%;
  height:92%;
}

/* Keep all product information below the artwork instead of overlapping it */
.mycorner-main .wardrobe-item > strong{
  min-height:2.2em;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.mycorner-main .wardrobe-item > small{
  min-height:24px;
}

.mycorner-main .wardrobe-item form,
.mycorner-main .wardrobe-item > button,
.mycorner-main .wardrobe-item .ownedtag{
  margin-top:7px;
}

/* Expressions benefit from a slightly shorter, face-focused presentation */
.mycorner-main .wardrobe-group[data-category="expression"] .wardrobe-rendered-art{
  height:150px;
  min-height:150px;
}

/* Mobile/tablet fallback */
@media(max-width:1100px){
  .mycorner-main .wardrobe-grid{
    grid-template-columns:repeat(auto-fit,minmax(165px,1fr));
  }
  .mycorner-main .wardrobe-rendered-art{
    height:165px;
    min-height:165px;
  }
}

@media(max-width:760px){
  .mycorner-main .wardrobe-layout{
    grid-template-columns:1fr;
  }
  .mycorner-main .wardrobe-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mycorner-main .wardrobe-rendered-art{
    height:150px;
    min-height:150px;
  }
}

/* ===== CyberGlitch v2.0 — Living world + companions + Arcade obby ===== */
.rendered-townstatus .home-companion{margin-top:10px}
.companion-orb,.rendered-coinburst,.daily-gift-rendered{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#14c2ff,#175bd8 62%,#673bd8);color:white;font-weight:1000;border:2px solid #8ee8ff;box-shadow:0 6px 18px #004f8c45}
.companion-orb{width:38px;height:38px;margin:auto}.rendered-coinburst{width:64px;height:64px;font-size:1.6rem}.daily-gift-rendered{width:44px;height:44px;font-size:1.4rem}
.rendered-featurehub .featuretile{overflow:hidden;position:relative}.feature-token{width:72px;height:72px!important;border-radius:18px!important;display:grid!important;place-items:center!important;font-size:.68rem!important;font-weight:1000!important;letter-spacing:.06em;color:#eafdff;background:linear-gradient(145deg,#0ea8ed,#1556d0 60%,#6539d2);border:1px solid #76ddff;box-shadow:0 9px 20px #004d8c36}.feature-token.sports,.feature-token.dash{background:linear-gradient(145deg,#12c996,#177bd6)}.feature-token.boss{background:linear-gradient(145deg,#f23d67,#7e236c)}.feature-token.capsule{background:linear-gradient(145deg,#a35dff,#334fd6)}
.v20-town-map{background:radial-gradient(circle at 50% 45%,#dff8ff,#d7ebff 40%,#bdd8ee);min-height:650px;overflow:hidden}.town-core-glow{position:absolute;left:47%;top:42%;width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#16c8ff,#155fd8,#6a3ddd);color:#fff;font-weight:1000;font-size:1.6rem;box-shadow:0 0 35px #159fe777;z-index:2}
.rendered-building{min-height:110px;padding:8px 10px!important;background:linear-gradient(180deg,#061c3d,#0b3260)!important;border:1px solid #239ee8!important;box-shadow:0 10px 24px #244f7829!important}.rendered-building strong{color:white!important}.rendered-building small{color:#bdeaff!important}
.building-art{height:58px;position:relative;display:grid;place-items:center}.building-roof{position:absolute;top:0;width:72%;height:16px;background:linear-gradient(#1bc4ff,#126bd6);clip-path:polygon(10% 100%,20% 0,80% 0,90% 100%)}.building-body{position:absolute;top:13px;width:68%;height:42px;border-radius:4px;background:linear-gradient(#145da1,#082851);border:1px solid #49cfff;display:flex;gap:5px;justify-content:center;align-items:center}.building-body i{width:10px;height:15px;background:#77e4ff;box-shadow:0 0 8px #63dfff}.level-2 .building-art{filter:drop-shadow(0 0 8px #00baff)}.level-2 .building-body:after{content:'UP';position:absolute;right:-20px;top:6px;font-size:.55rem;color:#fff;background:#6b47e8;padding:3px 4px;border-radius:4px}.level-3{border-color:#d2a5ff!important;box-shadow:0 0 23px #7a4eff55!important}.level-3 .building-art{transform:scale(1.06);filter:drop-shadow(0 0 12px #8d5cff)}.level-3 .building-roof{background:linear-gradient(#d362ff,#4e61ff)}.building-progress{display:block;height:5px;background:#06152d;border-radius:9px;overflow:hidden;margin-top:5px}.building-progress i{display:block;height:100%;background:linear-gradient(90deg,#20e4ff,#8c5cff)}.map-locked{filter:grayscale(.8);opacity:.48}
.district-level-card{display:grid;text-align:center;gap:4px;background:#071a36;color:white;border:1px solid #2aa9ef;border-radius:18px;padding:14px 20px}.district-level-card span{font-size:.7rem;color:#73dfff;font-weight:900}.district-level-card strong{font-size:1.3rem}.district-world-v20{margin-bottom:26px}.district-plaza-render{position:relative;min-height:390px;border-radius:24px;overflow:hidden;background:radial-gradient(circle at 50% 15%,#bcecff,#81c3e7 35%,#73b985 36%,#4d985f 100%);border:1px solid #91bfdc;padding:28px}.district-plaza-render:after{content:'';position:absolute;left:0;right:0;bottom:0;height:95px;background:linear-gradient(#586b83,#33465f);clip-path:polygon(0 35%,100% 0,100% 100%,0 100%)}
.district-building-large{position:relative;z-index:2;width:min(420px,55%);margin:10px auto;text-align:center;background:linear-gradient(#0b62a6,#082b58);border:3px solid #64d9ff;border-radius:18px 18px 8px 8px;padding:25px 20px 16px;color:white;box-shadow:0 18px 35px #113b5d44}.district-building-top{display:inline-block;padding:6px 14px;border-radius:999px;background:#061731;color:#73dcff;font-size:.68rem;font-weight:900}.district-building-windows{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 12%}.district-building-windows i{height:38px;background:linear-gradient(#8deaff,#2da8e7);border:2px solid #0f4c82;box-shadow:0 0 12px #4bdcff}.district-building-large strong{display:block;font-size:1.4rem}.district-building-large small{color:#b8eaff}
.district-npc{position:relative;z-index:4;display:flex;align-items:flex-end;gap:12px;max-width:560px;margin-top:18px}.npc-avatar{width:130px;height:150px;display:grid;place-items:end center}.npc-avatar img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 10px #0004)}.npc-bubble{background:white;border:2px solid #1d91d2;border-radius:18px 18px 18px 5px;padding:14px 16px;box-shadow:0 10px 22px #0d385d25}.npc-bubble span{font-size:.64rem;font-weight:900;color:#1485c2}.npc-bubble h3{margin:.2rem 0}.npc-bubble p{margin:.35rem 0;color:#465b73}.npc-bubble a{font-weight:800;text-decoration:none;color:#075cb3}.district-action-token{width:58px;height:58px!important;display:grid!important;place-items:center!important;border-radius:15px;background:linear-gradient(145deg,#11bced,#135bd5 62%,#6237d5);font-size:1.05rem!important;font-weight:1000;color:white;border:1px solid #79e2ff}.v20-locked .lock-core{width:90px;height:100px;margin:auto;display:grid;place-items:center;clip-path:polygon(50% 0,90% 18%,84% 70%,50% 100%,16% 70%,10% 18%);background:linear-gradient(#5480ad,#223f67);color:white;font-size:2rem;font-weight:1000}
.active-companion-v20{display:flex;align-items:center;gap:12px;background:#071b37;border:1px solid #28aef0;border-radius:18px;color:white;padding:10px 14px;max-width:430px}.active-companion-v20 img{width:90px;height:90px;object-fit:contain}.active-companion-v20 span{display:block;color:#62dfff;font-size:.65rem;font-weight:900}.active-companion-v20 b{display:block}.active-companion-v20 small{display:block;color:#bcdaf0;margin-top:4px}.critter-ability-v20{margin:10px 0;padding:9px;border-radius:12px;background:#071c37;border:1px solid #2a74aa}.critter-ability-v20 span{display:block;color:#70dcff;font-weight:900;font-size:.74rem}.critter-ability-v20 p{margin:4px 0 0;font-size:.78rem;color:#c8dded}
main.arcade-main-v20{max-width:1500px;width:100%}.arcade-player-card{display:flex;align-items:center;gap:10px;background:#061a36;border:1px solid #279be0;border-radius:17px;padding:9px 13px;color:white}.arcade-player-card img{width:74px;height:74px;object-fit:contain}.arcade-player-card span,.arcade-player-card strong,.arcade-player-card small{display:block}.arcade-player-card small{color:#8ddfff}.arcade-floor-v20{position:relative;border-radius:25px;background:linear-gradient(#07162d,#040b17);border:1px solid #1b538b;padding:70px 18px 22px;overflow:hidden}.arcade-floor-grid{position:absolute;inset:0;background-image:linear-gradient(#1aa8f512 1px,transparent 1px),linear-gradient(90deg,#1aa8f512 1px,transparent 1px);background-size:42px 42px;perspective:400px}.arcade-neon-sign{position:absolute;top:20px;left:50%;transform:translateX(-50%);color:#76e5ff;font-size:1.25rem;font-weight:1000;letter-spacing:.12em;text-shadow:0 0 14px #24c6ff}.v20-cabinets{position:relative;z-index:2}.featured-cabinet{outline:2px solid #9c61ff;box-shadow:0 0 28px #6e4dff55}.arcade-companion-power{position:relative;z-index:2;margin:16px auto 0;max-width:620px;text-align:center;border:1px solid #41d3ff;border-radius:16px;background:#09254a;color:white;padding:12px}.arcade-companion-power span{display:block;color:#67ddff;font-size:.68rem;font-weight:900}.arcade-companion-power small{display:block;color:#c1def2}
.firewall-run-shell{background:linear-gradient(180deg,#06152e,#030a17);border:1px solid #1b70ae;border-radius:24px;padding:18px;color:white}.firewall-run-title{display:flex;justify-content:space-between;gap:18px;align-items:center}.firewall-run-title h2{font-size:2rem;margin:.2rem 0}.run-power{background:#25164a;border:1px solid #8f65e8;border-radius:13px;padding:9px 12px}.run-power span,.run-power small{display:block}.run-power span{color:#dfbbff;font-weight:900}.run-arena{position:relative;height:540px;margin:14px 0;border-radius:20px;overflow:hidden;border:2px solid #18a9ef;background:linear-gradient(#071a38,#081d42 60%,#041128);outline:none}.run-arena:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 32%,#28cfff18 33%,transparent 34%,transparent 65%,#28cfff18 66%,transparent 67%),linear-gradient(#14c9ff0c 1px,transparent 1px);background-size:100% 100%,100% 42px}.run-lane{position:absolute;top:0;bottom:0;width:33.333%;border-left:1px solid #35cfff26;border-right:1px solid #35cfff26}.lane-0{left:0}.lane-1{left:33.333%}.lane-2{left:66.666%}.run-player{position:absolute;bottom:25px;width:120px;height:130px;transition:left .18s ease;z-index:4}.run-player img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 15px 12px #0006)}.lane-pos-0{left:calc(16.666% - 60px)}.lane-pos-1{left:calc(50% - 60px)}.lane-pos-2{left:calc(83.333% - 60px)}.run-prompt{position:absolute;top:18px;left:50%;transform:translateX(-50%);z-index:5;min-width:55%;text-align:center;background:#06152de8;border:1px solid #31bfff;border-radius:14px;padding:10px 14px;font-weight:900;color:#dff8ff}.run-gate{position:absolute;left:2%;right:2%;top:28%;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;z-index:3}.run-gate[hidden]{display:none}.gate-option{height:180px;border:3px solid #337bb5;border-radius:22px;background:linear-gradient(#0a2447aa,#06152ed9);display:grid;place-items:center;text-align:center;padding:12px;font-weight:900;color:#eaf8ff;box-shadow:inset 0 0 28px #18baff1c;cursor:pointer}.gate-option:hover{border-color:#5be1ff;box-shadow:0 0 22px #2acfff55}.safe-flash{animation:gateGood .5s 1;background:#0f653daa!important;border-color:#48ef9d!important}.bad-flash{animation:gateBad .5s 1;background:#6f1728aa!important;border-color:#ff5770!important}@keyframes gateGood{50%{box-shadow:0 0 50px #42ee9d}}@keyframes gateBad{50%{box-shadow:0 0 50px #ff4464}}.run-hud{display:flex;justify-content:space-between;gap:10px;background:#071a35;border:1px solid #1d5c93;border-radius:13px;padding:11px}.run-controls{display:flex;justify-content:center;gap:10px;margin-top:12px}.run-controls button{width:auto;margin:0;text-align:center}.critter-hint{outline:3px solid #79e8ff!important;box-shadow:0 0 16px #38cfff66!important}
@media(max-width:900px){.district-plaza-render{min-height:460px}.district-building-large{width:80%}.firewall-run-title{align-items:flex-start;flex-direction:column}.run-arena{height:470px}.gate-option{height:150px}.v20-town-map{min-height:760px}}


/* ===== CyberGlitch v2.1 — Home screen stabilization ===== */
main.student-home-v21{
  max-width:1480px;
  width:100%;
  margin:0 auto;
  padding:24px clamp(16px,3vw,40px) 60px;
}

.student-home-v21 .v21-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 250px;
  gap:24px;
  align-items:center;
  padding:30px;
  border-radius:26px;
  background:
    radial-gradient(circle at 85% 25%,rgba(47,185,255,.18),transparent 30%),
    linear-gradient(135deg,#ffffff,#edf7ff);
  border:1px solid #cfe1f3;
  margin-bottom:22px;
}
.v21-hero h1{font-size:clamp(2.2rem,4vw,3.4rem);margin:.15rem 0;color:#09264f}
.v21-hero p{max-width:720px;color:#49617e}
.v21-player-summary{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:12px;
  align-items:center;
  background:linear-gradient(145deg,#071b39,#0a315e);
  color:#fff;
  border:1px solid #2a98da;
  border-radius:20px;
  padding:16px;
}
.v21-coin-orb{
  width:66px;height:66px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(#ffd74f,#e99300);
  border:4px solid #ffe785;color:#533300;font-size:1.5rem;font-weight:1000;
  box-shadow:0 8px 18px #d47a0038;
}
.v21-player-summary strong{display:block;font-size:1.8rem}.v21-player-summary span{color:#9edfff}
.v21-companion{grid-column:1/-1;display:flex;gap:8px;align-items:center;padding-top:9px;border-top:1px solid #285075}
.v21-companion>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#176ec1;color:white;font-weight:1000}
.v21-companion small{color:#c9e4f5}

.v21-device{
  margin:24px 0 30px;
  padding:12px;
  background:linear-gradient(180deg,#06162e,#071e3b);
  border:2px solid #18568a;
  border-radius:26px;
  box-shadow:0 18px 42px #09264e24;
}
.v21-devicebar{
  position:static;
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:transparent;
  border:0;
  padding:8px 10px 14px;
  color:#dff6ff;
}
.v21-devicebar>div{display:flex;align-items:center;gap:9px}
.v21-device-logo{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(145deg,#15c1ff,#1757d3,#6941dc);
  color:white;font-weight:1000;border:1px solid #6ce2ff;
}
.v21-devicebar>span{font-size:.76rem;color:#74daff;font-weight:800}
.v21-appgrid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  padding:18px;
  border-radius:19px;
  background:#eaf3fb;
}
.v21-appcard{
  min-width:0;
  min-height:190px;
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:15px;
  border-radius:18px;
  background:#fff;
  border:1px solid #cbdbea;
  color:#102b50;
  text-decoration:none;
  box-shadow:0 6px 14px #173b5f0b;
  transition:transform .15s,box-shadow .15s,border-color .15s;
}
.v21-appcard:hover{transform:translateY(-3px);border-color:#3aaeea;box-shadow:0 12px 22px #11558b22}
.v21-appart{
  height:92px;
  border-radius:15px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:radial-gradient(circle at 50% 60%,#155d8f,#061b39 68%);
}
.v21-appsymbol{
  width:64px;height:64px;border-radius:17px;display:grid;place-items:center;
  background:linear-gradient(145deg,#16c5ff,#1764dc 58%,#7042dd);
  border:1px solid #8ceaff;
  color:#fff;font-weight:1000;font-size:.72rem;letter-spacing:.04em;
  box-shadow:0 8px 18px #003f7555;
}
.app-chatter .v21-appsymbol{background:linear-gradient(145deg,#1fd1c4,#087bcf)}
.app-appbox .v21-appsymbol{background:linear-gradient(145deg,#ffad36,#e14d5f)}
.app-loop .v21-appsymbol{background:linear-gradient(145deg,#a660ff,#3762dd)}
.app-mycorner .v21-appsymbol{background:linear-gradient(145deg,#ff6cb5,#714be0)}
.app-webworld .v21-appsymbol{background:linear-gradient(145deg,#24cba8,#1187d4)}
.app-sports .v21-appsymbol{background:linear-gradient(145deg,#31c85c,#167ccf)}
.app-critters .v21-appsymbol{background:linear-gradient(145deg,#f1a72c,#7a58db)}
.v21-appcard strong{font-size:1rem}.v21-appcard small{color:#60758d;line-height:1.35}

.v21-sectionhead{margin-top:30px}

.student-home-v21 .v21-featurehub{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.student-home-v21 .v21-featurehub .featuretile{min-height:145px}

.v21-district-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin:14px 0 32px;
}
.v21-district-card{
  position:relative;
  min-width:0;
  overflow:hidden;
  border-radius:20px;
  border:1px solid #236da5;
  background:linear-gradient(180deg,#092b51,#06182f);
  color:#fff;
  text-decoration:none;
  box-shadow:0 9px 22px #0a3c681c;
  transition:transform .15s,box-shadow .15s;
}
.v21-district-card:hover{transform:translateY(-3px);box-shadow:0 14px 27px #07385e33}
.v21-building-scene{
  position:relative;
  height:150px;
  display:grid;
  place-items:end center;
  padding-bottom:13px;
  background:
    radial-gradient(circle at 50% 5%,rgba(99,214,255,.48),transparent 38%),
    linear-gradient(#55b6e9 0 48%,#7bc589 49% 70%,#526a80 71% 100%);
}
.v21-building{
  position:relative;
  width:112px;
  height:105px;
  filter:drop-shadow(0 10px 10px #153d5550);
}
.v21-roof{
  position:absolute;left:10px;right:10px;top:2px;height:26px;
  background:linear-gradient(#1cceff,#1661d3);
  clip-path:polygon(10% 100%,22% 0,78% 0,90% 100%);
  border-radius:4px;
}
.v21-tower{
  position:absolute;left:18px;right:18px;top:24px;height:68px;
  background:linear-gradient(#0d5d9f,#07305d);
  border:2px solid #57d8ff;border-radius:5px;
  display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:11px;
}
.v21-tower i{background:linear-gradient(#a9f2ff,#3fc8f5);border:1px solid #127aae;box-shadow:0 0 7px #75e8ff}
.v21-door{
  position:absolute;left:43px;bottom:0;width:27px;height:36px;
  display:grid;place-items:center;border-radius:8px 8px 2px 2px;
  background:#071a36;border:2px solid #63dfff;color:#7de9ff;font-weight:1000;
}
.v21-level-badge{
  position:absolute;top:10px;right:10px;padding:5px 8px;border-radius:999px;
  background:#10294bdb;border:1px solid #67dcff;color:#dff8ff;font-size:.64rem;font-weight:900;
}
.v21-level-badge.locked{border-color:#8693a1;color:#e4e8ed}
.v21-district-copy{display:grid;gap:4px;padding:13px 14px 15px}
.v21-district-copy strong{font-size:1.02rem}.v21-district-copy small{color:#a9d0ed}
.v21-progress{height:6px;border-radius:10px;background:#031225;overflow:hidden;margin-top:6px}
.v21-progress i{display:block;height:100%;background:linear-gradient(90deg,#24d8ff,#905fff)}
.v21-district-card.level-2{border-color:#36c7e8}.v21-district-card.level-2 .v21-building{transform:scale(1.03)}
.v21-district-card.level-3{border-color:#9c72ff;box-shadow:0 0 24px #764dff2e}.v21-district-card.level-3 .v21-roof{background:linear-gradient(#d36aff,#4c64ff)}
.v21-locked{filter:grayscale(.72);opacity:.58}
.v21-locked .v21-building-scene{background:linear-gradient(#afbec9 0 48%,#9fab97 49% 70%,#68737e 71% 100%)}

.v21-questgrid,.v21-missions{display:grid;gap:10px;margin-bottom:28px}
.v21-quest,.v21-mission{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:13px;
  align-items:center;
  padding:14px 16px;
  border:1px solid #d4e1ee;
  border-radius:16px;
  background:#fff;
  color:#112e52;
}
.v21-mission{text-decoration:none}
.v21-questmark{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(145deg,#16bdf6,#175bd4,#7045dd);
  color:#fff;font-weight:1000;
}
.v21-quest small,.v21-mission small{display:block;color:#667b91;margin-top:3px}
.v21-quest form{margin:0}.v21-quest button{width:auto;min-width:100px;text-align:center;margin:0;padding:9px 12px}
.v21-done{color:#168c52}

@media(max-width:1100px){
  .v21-appgrid,.v21-district-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .student-home-v21 .v21-featurehub{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:780px){
  .student-home-v21 .v21-hero{grid-template-columns:1fr}
  .v21-player-summary{grid-template-columns:60px 1fr}
  .v21-appgrid,.v21-district-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .student-home-v21 .v21-featurehub{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  main.student-home-v21{padding:14px 10px 40px}
  .v21-appgrid,.v21-district-grid{grid-template-columns:1fr 1fr;gap:9px;padding:10px}
  .v21-appcard{min-height:160px;padding:10px}
  .v21-appart{height:70px}
  .v21-appsymbol{width:52px;height:52px}
  .student-home-v21 .v21-featurehub{grid-template-columns:1fr 1fr;gap:9px}
  .student-home-v21 .featuretile{min-height:118px;padding:12px}
  .v21-building-scene{height:120px}
  .v21-building{transform:scale(.85)}
}


/* ===== CyberGlitch v2.2 — Rendered main-page restoration ===== */
.v22-player-summary{
  display:grid;grid-template-columns:115px 1fr;gap:14px;align-items:center;
  min-width:300px;padding:12px;border-radius:22px;
  background:linear-gradient(145deg,#06172f,#092e58);
  border:1px solid #2b98dc;color:#fff;box-shadow:0 12px 28px #0b396322;
}
.v22-player-art{height:120px;border-radius:17px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle,#125b91,#06152c)}
.v22-player-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 9px #0005)}
.v22-player-copy>span{display:block;color:#73dfff;font-size:.65rem;font-weight:900;letter-spacing:.08em}
.v22-player-copy>strong{display:block;font-size:1.35rem;margin:.15rem 0 .5rem}
.v22-coin-row{display:grid;grid-template-columns:55px auto 1fr;align-items:center;gap:6px}
.v22-coin-row img{width:55px;height:40px;object-fit:contain}.v22-coin-row b{font-size:1.5rem;color:#ffd64c}.v22-coin-row small{color:#9bdfff}
.v22-active-critter{display:block;margin-top:7px;color:#bdd9ee}

.v22-appgrid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;
  padding:18px;border-radius:19px;background:#eaf3fb;
}
.v22-appcard{
  min-width:0;overflow:hidden;display:flex;flex-direction:column;
  padding:0 0 14px;border-radius:18px;background:#fff;
  border:1px solid #cbdbea;color:#102b50;text-decoration:none;
  box-shadow:0 7px 16px #173b5f0d;transition:.16s transform,.16s box-shadow,.16s border-color;
}
.v22-appcard:hover{transform:translateY(-4px);border-color:#34baf2;box-shadow:0 14px 26px #0b568e25}
.v22-appart{position:relative;height:150px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 60%,#125d91,#06162e 70%)}
.v22-appart:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#42cfff0c 1px,transparent 1px),linear-gradient(90deg,#42cfff0c 1px,transparent 1px);background-size:24px 24px}
.v22-appart img{position:relative;z-index:2;width:90%;height:90%;object-fit:contain;filter:drop-shadow(0 10px 13px #0007)}
.v22-app-glow{position:absolute;z-index:1;width:120px;height:80px;border-radius:50%;background:#20c8ff40;filter:blur(24px)}
.v22-appcard>strong,.v22-appcard>small,.v22-open{margin-left:14px;margin-right:14px}
.v22-appcard>strong{margin-top:12px;font-size:1.05rem}.v22-appcard>small{color:#60758d;line-height:1.35;min-height:42px}
.v22-open{margin-top:auto;padding-top:9px;color:#0879cb;font-weight:900;font-size:.72rem;letter-spacing:.05em}

.v22-featurehub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.v22-featurecard{
  min-height:165px;display:grid;grid-template-columns:125px 1fr;gap:12px;align-items:center;
  overflow:hidden;padding:10px;border:1px solid #1d6b9e;border-radius:19px;
  background:linear-gradient(145deg,#071b38,#0b315a);color:white;text-decoration:none;
  box-shadow:0 9px 20px #0a3c6918;transition:.16s transform,.16s box-shadow;
}
.v22-featurecard:hover{transform:translateY(-3px);box-shadow:0 13px 27px #0a416d32}
.v22-featurecard.danger{border-color:#9f3452;background:linear-gradient(145deg,#260c19,#0d1732)}
.v22-featureart{height:135px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle,#135f92,#051428 70%)}
.v22-featurecard.danger .v22-featureart{background:radial-gradient(circle,#6d1a2e,#16070e 70%)}
.v22-featureart img{width:95%;height:95%;object-fit:contain;filter:drop-shadow(0 9px 11px #0007)}
.v22-featurecard span{display:block;color:#5fdcff;font-size:.65rem;font-weight:900;letter-spacing:.07em}.v22-featurecard.danger span{color:#ff718a}
.v22-featurecard strong{display:block;font-size:1.06rem;margin:.2rem 0}.v22-featurecard small{color:#bdd8ea;line-height:1.3}

.v22-district-scene{
  position:relative;height:165px;overflow:hidden;display:grid;grid-template-columns:55% 45%;
  align-items:end;background:linear-gradient(#5fc3ee 0 49%,#8bce8f 50% 70%,#536b81 71% 100%);
}
.v22-district-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff12);pointer-events:none}
.v22-district-art{height:145px;display:grid;place-items:end center;z-index:2}
.v22-district-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 10px #183c4f55)}
.v22-building-silhouette{
  position:relative;z-index:2;width:90%;height:118px;margin:0 8px 9px auto;
  display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:22px 14px 35px;
  border:2px solid #5ee0ff;border-radius:13px 13px 5px 5px;
  background:linear-gradient(#1067a7,#07305e);box-shadow:0 10px 15px #123c5450;
}
.v22-building-silhouette:before{content:'';position:absolute;left:9%;right:9%;top:-19px;height:21px;background:linear-gradient(#20d2ff,#1662d5);clip-path:polygon(10% 100%,22% 0,78% 0,90% 100%)}
.v22-building-silhouette i{background:linear-gradient(#a5f1ff,#3cc3f2);border:1px solid #0f76ae;box-shadow:0 0 8px #5de0ff}
.v22-building-silhouette b{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:30px;height:35px;display:grid;place-items:center;border-radius:8px 8px 2px 2px;background:#05162f;border:2px solid #5bdcff;color:#6ee4ff}
.v21-district-card.level-3 .v22-building-silhouette{border-color:#c181ff;box-shadow:0 0 22px #7a55ff50}.v21-district-card.level-3 .v22-building-silhouette:before{background:linear-gradient(#d972ff,#4c63ff)}
.v21-locked .v22-district-art{filter:grayscale(.9);opacity:.44}.v21-locked .v22-building-silhouette{filter:grayscale(.9);opacity:.55}

@media(max-width:1180px){
  .v22-appgrid,.v22-featurehub{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:850px){
  .v22-appgrid,.v22-featurehub{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v22-player-summary{min-width:0}
}
@media(max-width:560px){
  .v22-appart{height:115px}
  .v22-featurecard{grid-template-columns:90px 1fr;min-height:135px}.v22-featureart{height:110px}
  .v22-district-scene{height:135px}.v22-district-art{height:115px}.v22-building-silhouette{height:95px;padding:18px 10px 30px}
}


/* ===== CyberGlitch v2.3 — Main page full-art visibility ===== */

/* App cards: show the complete rendered image instead of cropping it */
.student-home-v21 .v22-appart{
  height:190px;
  min-height:190px;
  padding:14px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 56%,rgba(35,174,255,.28),transparent 54%),
    linear-gradient(180deg,#071d3e,#04142d);
}

.student-home-v21 .v22-appart img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
}

/* Give portrait character assets extra breathing room */
.student-home-v21 .app-chatter .v22-appart img,
.student-home-v21 .app-loop .v22-appart img,
.student-home-v21 .app-mycorner .v22-appart img,
.student-home-v21 .app-sports .v22-appart img{
  width:88%;
  height:88%;
}

/* Wide rendered items such as the Rocket Board and capsule */
.student-home-v21 .app-gameworld .v22-appart img,
.student-home-v21 .app-appbox .v22-appart img,
.student-home-v21 .app-webworld .v22-appart img,
.student-home-v21 .app-critters .v22-appart img{
  width:92%;
  height:92%;
}

/* Keep every app card aligned */
.student-home-v21 .v22-appcard{
  min-height:340px;
}
.student-home-v21 .v22-appcard>strong{
  min-height:1.5em;
}
.student-home-v21 .v22-appcard>small{
  min-height:3.7em;
}

/* Play & Explore cards */
.student-home-v21 .v22-featurecard{
  min-height:185px;
  grid-template-columns:155px minmax(0,1fr);
}
.student-home-v21 .v22-featureart{
  height:155px;
  min-height:155px;
  padding:9px;
  overflow:hidden;
}
.student-home-v21 .v22-featureart img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
  object-position:center !important;
}

/* District art: do not crop characters or item renders */
.student-home-v21 .v22-district-art{
  padding:7px;
  overflow:hidden;
}
.student-home-v21 .v22-district-art img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
  object-position:center bottom !important;
}

/* Improve readability and spacing under rendered art */
.student-home-v21 .v22-appcard>strong,
.student-home-v21 .v22-appcard>small,
.student-home-v21 .v22-open{
  margin-left:16px;
  margin-right:16px;
}
.student-home-v21 .v22-open{
  padding-top:8px;
}

/* Wide-screen cards can breathe more */
@media(min-width:1350px){
  .student-home-v21 .v22-appgrid{
    gap:18px;
  }
  .student-home-v21 .v22-appart{
    height:205px;
    min-height:205px;
  }
  .student-home-v21 .v22-appcard{
    min-height:355px;
  }
}

/* Responsive protection */
@media(max-width:1100px){
  .student-home-v21 .v22-appart{
    height:170px;
    min-height:170px;
  }
  .student-home-v21 .v22-appcard{
    min-height:315px;
  }
  .student-home-v21 .v22-featurecard{
    grid-template-columns:125px minmax(0,1fr);
  }
  .student-home-v21 .v22-featureart{
    height:130px;
    min-height:130px;
  }
}

@media(max-width:760px){
  .student-home-v21 .v22-appart{
    height:145px;
    min-height:145px;
  }
  .student-home-v21 .v22-appcard{
    min-height:290px;
  }
  .student-home-v21 .v22-featurecard{
    grid-template-columns:105px minmax(0,1fr);
  }
  .student-home-v21 .v22-featureart{
    height:115px;
    min-height:115px;
  }
}


/* ===== CyberGlitch v2.4 — full visibility + Byte Bug + CyberGlitch Today ===== */

/* Player summary: reserve real space for companion */
.v22-player-summary{
  grid-template-columns:120px minmax(0,1fr);
  min-width:340px;
}
.v22-player-copy{min-width:0}
.v22-coin-row{
  grid-template-columns:64px auto minmax(90px,1fr);
  gap:8px;
}
.v22-coin-row img{
  width:64px;height:46px;object-fit:contain;
}
.v22-coin-row small{
  white-space:nowrap;
  overflow:visible;
}
.v24-companion-row{
  margin-top:9px;
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:9px;
  align-items:center;
  padding-top:9px;
  border-top:1px solid #2a5578;
}
.v24-companion-row img{
  width:56px;height:56px;object-fit:contain;border-radius:14px;
  background:radial-gradient(circle,#155d91,#06162d 70%);
  border:1px solid #2e9ede;
}
.v24-companion-row span{
  display:block;font-size:.62rem;letter-spacing:.08em;font-weight:900;color:#62ddff;
}
.v24-companion-row strong{
  display:block;color:#fff;font-size:.9rem;
}

/* Main app artwork: fit dedicated assets with zero cropping */
.student-home-v21 .v22-appart{
  height:210px;
  min-height:210px;
  padding:18px;
  box-sizing:border-box;
}
.student-home-v21 .v22-appart img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
.student-home-v21 .v22-appcard{
  min-height:365px;
}
.student-home-v21 .v22-appcard>small{
  min-height:3.2em;
}

/* Keep MyCorner's live species art fully visible too */
.student-home-v21 .app-mycorner .v22-appart img{
  width:86%!important;height:86%!important;
}

/* Feature cards full art */
.student-home-v21 .v22-featureart{
  height:165px;
  min-height:165px;
  padding:12px;
}
.student-home-v21 .v22-featureart img{
  object-fit:contain!important;
  object-position:center!important;
}

/* CyberGlitch Today */
.v24-today{
  margin:28px 0 34px;
  padding:20px;
  border-radius:24px;
  background:linear-gradient(145deg,#071a37,#0a315c);
  border:1px solid #2377aa;
  box-shadow:0 16px 34px #0a3a6525;
}
.v24-today-head{
  display:flex;justify-content:space-between;align-items:center;gap:16px;
  margin-bottom:14px;
}
.v24-today-head h2{color:#fff;margin:.2rem 0}
.v24-live-dot{
  padding:6px 10px;border-radius:999px;
  background:#0b6543;color:#82ffc1;border:1px solid #35db92;
  font-size:.66rem;font-weight:900;letter-spacing:.08em;
}
.v24-today-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;
}
.v24-event-card{
  min-width:0;
  display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;
  padding:12px;border-radius:18px;background:#f8fbff;border:1px solid #c9ddec;
}
.v24-event-art{
  height:120px;border-radius:14px;overflow:hidden;display:grid;place-items:center;
  background:radial-gradient(circle,#145f94,#06162d 72%);
}
.v24-event-art img{width:92%;height:92%;object-fit:contain}
.v24-event-card span{font-size:.63rem;font-weight:900;letter-spacing:.06em;color:#0f80c1}
.v24-event-card strong{display:block;margin:.2rem 0;color:#0b294f}
.v24-event-card p{margin:.3rem 0 .55rem;color:#5a6f86;font-size:.82rem;line-height:1.35}
.v24-event-card a{font-weight:900;text-decoration:none;color:#0876c4;font-size:.78rem}

/* Make all text and art fit on narrower desktop layouts */
@media(max-width:1250px){
  .v22-player-summary{min-width:300px}
  .student-home-v21 .v22-appart{height:185px;min-height:185px}
  .student-home-v21 .v22-appcard{min-height:340px}
  .v24-today-grid{grid-template-columns:1fr 1fr}
  .v24-event-card:last-child{grid-column:1/-1}
}
@media(max-width:850px){
  .v22-player-summary{min-width:0}
  .v24-today-grid{grid-template-columns:1fr}
  .v24-event-card:last-child{grid-column:auto}
}
@media(max-width:560px){
  .v22-player-summary{grid-template-columns:100px minmax(0,1fr)}
  .v22-coin-row{grid-template-columns:48px auto 1fr}
  .v22-coin-row img{width:48px;height:38px}
  .student-home-v21 .v22-appart{height:145px;min-height:145px}
  .student-home-v21 .v22-appcard{min-height:290px}
  .v24-event-card{grid-template-columns:90px minmax(0,1fr)}
  .v24-event-art{height:95px}
}

/* ===== CyberGlitch v2.5 — approved dashboard ===== */
main.student-home-v25{max-width:none;width:100%;padding:14px 16px 50px;background:#eaf7ff}.ct25-shell{max-width:1660px;margin:0 auto;padding:16px;border-radius:26px;background:linear-gradient(180deg,#031127,#041833 38%,#031126);border:1px solid #0e5b93;color:#eef8ff}.ct25-topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:6px 8px 14px;border-bottom:1px solid #12365d}.ct25-brand{display:flex;align-items:center;gap:10px}.ct25-brandmark{width:48px;height:52px;display:grid;place-items:center;clip-path:polygon(50% 0,93% 18%,86% 72%,50% 100%,14% 72%,7% 18%);background:linear-gradient(#16c9ff,#1660d6,#653fd8);color:#fff;font-weight:1000}.ct25-brand strong{font-size:1.7rem}.ct25-topstats{display:flex;gap:10px}.ct25-stat-pill{min-width:150px;display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:14px;background:#071a35;border:1px solid #1c5f94}.ct25-stat-pill img{width:48px;height:38px;object-fit:contain}.ct25-stat-pill>b{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#12365f;color:#64dfff}.ct25-stat-pill strong,.ct25-stat-pill span{display:block}.ct25-stat-pill strong{color:#ffd84f}.ct25-stat-pill span{font-size:.72rem;color:#c6dfef}.ct25-levelbar{width:100px;height:5px;border-radius:10px;background:#061224;overflow:hidden}.ct25-levelbar i{display:block;height:100%;background:linear-gradient(90deg,#1fd9ff,#5f72ff)}
.ct25-dashboard-row{display:grid;grid-template-columns:420px minmax(0,1fr) 245px;gap:14px;margin:14px 0}.ct25-player-card,.ct25-today,.ct25-quick-actions{background:linear-gradient(180deg,#061a35,#041329);border:1px solid #17649d;border-radius:18px}.ct25-player-card{display:grid;grid-template-columns:175px 1fr;gap:12px;padding:12px}.ct25-player-art{height:205px;border-radius:15px;display:grid;place-items:end center;overflow:hidden;background:radial-gradient(circle,#175e8f,#06152d 68%);border:1px solid #168fd2}.ct25-player-art img{width:100%;height:100%;object-fit:contain}.ct25-player-info>span{display:block;color:#5cdfff;font-size:.64rem;font-weight:900}.ct25-player-info h1{margin:.15rem 0;color:#fff;font-size:2rem}.ct25-player-coins{display:grid;grid-template-columns:62px auto 1fr;gap:7px;align-items:center}.ct25-player-coins img{width:62px;height:42px;object-fit:contain}.ct25-player-coins b{font-size:1.8rem;color:#ffd84b}.ct25-player-coins small{color:#b9d9ec}.ct25-companion{display:grid;grid-template-columns:80px 1fr;gap:9px;align-items:center;margin-top:10px;padding-top:9px;border-top:1px solid #21466a}.ct25-companion>div{height:78px}.ct25-companion img{width:100%;height:100%;object-fit:contain}.ct25-companion span,.ct25-companion strong,.ct25-companion small{display:block}.ct25-companion span{font-size:.58rem;color:#5fdfff;font-weight:900}.ct25-companion small{color:#aacde5}
.ct25-today{padding:12px}.ct25-section-kicker{color:#5cddff;font-size:.68rem;font-weight:900;letter-spacing:.08em;margin-bottom:8px}.ct25-today-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ct25-today-card{display:grid;grid-template-columns:115px 1fr;gap:9px;align-items:center;min-height:146px;border-radius:14px;background:#071d3a;border:1px solid #225c8d;padding:8px}.ct25-today-art{height:120px;border-radius:11px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,#175d8e,#06142a)}.ct25-today-art img{width:100%;height:100%;object-fit:contain}.ct25-today-card span{display:block;color:#65dfff;font-size:.58rem;font-weight:900}.ct25-today-card strong{display:block;color:#fff}.ct25-today-card p{margin:.2rem 0 .5rem;color:#b8d4e8;font-size:.76rem}.ct25-today-card a{color:#6ee5ff;font-size:.7rem;font-weight:900;text-decoration:none}.ct25-quick-actions{padding:12px;display:grid;gap:8px;align-content:start}.ct25-quick-actions>a{display:grid;grid-template-columns:38px 1fr auto;gap:8px;align-items:center;padding:9px;border-radius:12px;background:#082344;border:1px solid #1e5d8e;color:#fff;text-decoration:none}.ct25-quick-actions>a>b{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,#18bdf7,#1660d8,#643bd8)}.ct25-quick-actions strong,.ct25-quick-actions small{display:block}.ct25-quick-actions small{color:#aacbe2;font-size:.68rem}
.ct25-sectionhead{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:18px 4px 8px}.ct25-sectionhead span{display:block;color:#5cddff;font-size:.65rem;font-weight:900}.ct25-sectionhead h2{margin:.15rem 0;color:#fff}.ct25-sectionhead small{color:#a8c9e0}.ct25-appgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ct25-app{overflow:hidden;border-radius:15px;background:#f8fbff;color:#102844;text-decoration:none;border:1px solid #bcd3e5}.ct25-appart{height:155px;padding:8px;display:grid;place-items:center;background:radial-gradient(circle,#125d91,#06152d 70%);overflow:hidden}.ct25-appart img{width:100%;height:100%;object-fit:contain!important}.ct25-appcopy{padding:10px 12px 12px}.ct25-appcopy strong{display:block}.ct25-appcopy p{min-height:2.8em;margin:.3rem 0 .5rem;color:#526b82;font-size:.78rem}.ct25-appcopy span{font-size:.7rem;color:#0875c3;font-weight:900}
.ct25-playgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.ct25-playgrid>a{display:grid;grid-template-columns:80px 1fr;gap:8px;align-items:center;padding:8px;border-radius:14px;background:#08213f;border:1px solid #1c6599;color:white;text-decoration:none}.ct25-playgrid img{width:80px;height:80px;object-fit:contain;border-radius:10px;background:radial-gradient(circle,#145d8c,#06142a)}.ct25-playgrid span{display:block;color:#61deff;font-size:.56rem;font-weight:900}.ct25-playgrid strong{display:block}.ct25-playgrid small{color:#aecce1;font-size:.67rem}
.ct25-town-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ct25-towncard{overflow:hidden;border-radius:15px;border:1px solid #1d6a9c;background:#061a34;color:#fff;text-decoration:none}.ct25-townart{position:relative;height:130px;display:grid;grid-template-columns:55% 45%;align-items:end;background:linear-gradient(#4fb7e5 0 50%,#85c688 51% 68%,#4c6076 69% 100%);overflow:hidden}.ct25-townart>img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.ct25-building{position:relative;width:88%;height:95px;margin:0 7px 7px auto;display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:22px 12px 30px;background:linear-gradient(#0e5f9d,#07305c);border:2px solid #5addff;border-radius:10px}.ct25-building:before{content:'';position:absolute;left:8%;right:8%;top:-17px;height:18px;background:linear-gradient(#20d2ff,#175fd2);clip-path:polygon(10% 100%,22% 0,78% 0,90% 100%)}.ct25-building span{background:linear-gradient(#a5efff,#41c1ec);border:1px solid #0f77ae}.ct25-building b{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:27px;height:30px;display:grid;place-items:center;border-radius:7px 7px 2px 2px;background:#05152d;border:2px solid #5bdcff;color:#6de4ff}.ct25-townart>em{position:absolute;top:8px;right:8px;font-style:normal;font-size:.6rem;font-weight:900;padding:4px 7px;border-radius:999px;background:#0a2b50d9;border:1px solid #61dbff}.ct25-towncopy{padding:9px 10px 11px}.ct25-towncopy strong,.ct25-towncopy small{display:block}.ct25-towncopy small{color:#a9cae0}.ct25-progress{display:block;height:5px;border-radius:8px;background:#020d1e;margin-top:7px;overflow:hidden}.ct25-progress i{display:block;height:100%;background:linear-gradient(90deg,#20e0ff,#8260ff)}.ct25-towncard.locked{filter:grayscale(.85);opacity:.55}
.ct25-questgrid,.ct25-missiongrid{display:grid;gap:8px}.ct25-quest,.ct25-missiongrid>a{display:grid;grid-template-columns:38px 1fr auto;gap:9px;align-items:center;padding:10px 12px;border-radius:12px;background:#f8fbff;color:#102844;border:1px solid #c6d9e7}.ct25-quest>b,.ct25-missiongrid>a>b{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,#18c1ff,#165dd2,#653ed8);color:white}.ct25-quest strong,.ct25-quest small,.ct25-missiongrid strong,.ct25-missiongrid small{display:block}.ct25-quest small,.ct25-missiongrid small{color:#5c7289}.ct25-quest form{margin:0}.ct25-quest button{margin:0;width:auto}.ct25-missiongrid>a{text-decoration:none}.ct25-missiongrid i{font-style:normal;color:#0b78c6}
@media(max-width:1320px){.ct25-dashboard-row{grid-template-columns:360px 1fr}.ct25-quick-actions{grid-column:1/-1;grid-template-columns:repeat(5,1fr)}.ct25-quick-actions>.ct25-section-kicker{grid-column:1/-1}.ct25-today-grid{grid-template-columns:1fr}.ct25-playgrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:980px){.ct25-topbar{align-items:flex-start;flex-direction:column}.ct25-topstats{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.ct25-dashboard-row{grid-template-columns:1fr}.ct25-appgrid,.ct25-town-grid{grid-template-columns:repeat(2,1fr)}.ct25-quick-actions{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){main.student-home-v25{padding:8px}.ct25-shell{padding:9px}.ct25-topstats{grid-template-columns:1fr}.ct25-player-card{grid-template-columns:120px 1fr}.ct25-player-art{height:160px}.ct25-appart{height:125px}.ct25-playgrid{grid-template-columns:1fr 1fr}.ct25-quick-actions{grid-template-columns:1fr}}

/* ===== CyberGlitch v2.6: real arcade mechanics + visible district upgrades ===== */
.arcade-main-v26{max-width:1500px!important}
.v26-back{margin-bottom:8px}.v26-back a{font-weight:800;text-decoration:none}
.v26-arcade-hero{display:grid;grid-template-columns:1fr 330px;gap:18px;padding:22px 26px;border-radius:24px;background:radial-gradient(circle at 80% 20%,#123f78,#04152e 55%);border:1px solid #1476b4;color:white;box-shadow:0 18px 40px #072c5225}.v26-arcade-hero h1{font-size:2.3rem;margin:.1rem 0}.v26-player{display:grid;grid-template-columns:95px 1fr;gap:10px;align-items:center;padding:9px;border-radius:18px;background:#06172e;border:1px solid #246ca0}.v26-player img{width:95px;height:95px;object-fit:contain}.v26-player span,.v26-player strong,.v26-player small{display:block}.v26-player span{color:#62e2ff;font-size:.7rem;font-weight:900}.v26-player strong{font-size:1.2rem}.v26-player small{color:#b9d6e8}
.v26-arcade-floor{margin-top:14px;padding:20px;border-radius:24px;background:linear-gradient(#071b39,#030d1e);border:1px solid #185d91}.v26-neon{text-align:center;font-size:2rem;font-weight:1000;letter-spacing:.1em;color:#72edff;text-shadow:0 0 12px #1ad4ff,0 0 28px #6e42ff;margin-bottom:18px}.v26-cabinets{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.v26-cabinet{overflow:hidden;border-radius:18px;background:#081a34;border:1px solid #256da1;color:white;text-decoration:none;box-shadow:0 12px 22px #0005}.v26-cabinet.featured{border-color:#c253ff;box-shadow:0 0 28px #9b3cff45}.v26-cabinet-screen{height:175px;padding:10px;background:radial-gradient(circle,#174c80,#020b1b);display:grid;place-items:center}.v26-cabinet-screen img{width:100%;height:100%;object-fit:contain}.v26-cabinet-copy{padding:12px}.v26-cabinet-copy span{color:#64e4ff;font-size:.6rem;font-weight:900}.v26-cabinet-copy strong,.v26-cabinet-copy small,.v26-cabinet-copy b{display:block}.v26-cabinet-copy strong{font-size:1.05rem;margin:.2rem 0}.v26-cabinet-copy small{min-height:3.8em;color:#b5d0e3}.v26-cabinet-copy b{margin-top:9px;color:#68e5ff}.v26-power-ready{margin-top:14px;padding:11px 14px;border-radius:14px;background:#092c4c;border:1px solid #2f99c8;display:flex;gap:14px;align-items:center}.v26-power-ready b{color:#5ce2ff}.v26-power-ready small{color:#b8d4e8}
.v26-game-shell{position:relative;margin-top:14px;padding:18px;border-radius:24px;background:linear-gradient(#061b39,#020c1c);border:1px solid #16699f;min-height:620px;color:white}.v26-game-hud{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:12px}.v26-game-hud>div{padding:9px 12px;border-radius:12px;background:#0a2b4d;border:1px solid #237db0}.v26-game-hud span,.v26-game-hud strong{display:block}.v26-game-hud span{font-size:.62rem;color:#64e1ff;font-weight:900}.v26-game-hud strong{font-size:1.15rem}.v26-game-hud i{font-style:normal}
.v26-game-message{min-height:48px;margin:12px 0;padding:11px 14px;border-radius:12px;background:#0b2948;border:1px solid #2c729e;color:#d8f1ff;font-weight:800;text-align:center}.v26-main-controls,.v26-finish-actions{display:flex;justify-content:center;gap:10px;margin-top:12px}.v26-main-controls a,.v26-finish-actions a{display:inline-grid;place-items:center;padding:10px 16px;border:1px solid #5adfff;border-radius:10px;color:#dff9ff;text-decoration:none;font-weight:900}
.v26-desktop{max-width:900px;margin:auto;border:8px solid #142c48;border-radius:18px;overflow:hidden;background:#58a9d2}.v26-browserbar{height:42px;display:flex;gap:6px;align-items:center;padding:0 12px;background:#e7f5ff;color:#234}.v26-browserbar i{width:11px;height:11px;border-radius:50%;background:#5b7890}.v26-browserbar span{margin-left:8px;font-size:.8rem}.v26-popup-field{position:relative;height:390px;background:linear-gradient(135deg,#1d8ec0,#5cc6d9);overflow:hidden}.v26-desktop-icons{display:flex;gap:14px;padding:20px}.v26-desktop-icons span{padding:15px;border-radius:10px;background:#ffffffc9;color:#17304b;font-weight:900}.v26-popup-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,80%);padding:20px;border-radius:16px;background:white;color:#18304b;box-shadow:0 18px 50px #0007;border:4px solid #4aa3d1}.v26-popup-card.danger{border-color:#ff4f72;animation:v26pulse .7s infinite alternate}.v26-popup-title{font-size:1.5rem;font-weight:1000}.v26-popup-card.danger .v26-popup-title{color:#d72849}.v26-popup-card button{width:auto;margin:6px 6px 0 0}.v26-popup-card.danger button:last-child{background:#ff365e;color:white}@keyframes v26pulse{to{box-shadow:0 0 28px #ff315b99}}
.v26-pairs-board{max-width:920px;margin:18px auto;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.v26-pair-card{height:125px;margin:0;border:2px solid #2c80b7;border-radius:15px;background:linear-gradient(145deg,#0b3158,#07172d);color:white;transform-style:preserve-3d;transition:.18s}.v26-pair-card span{display:block;font-size:2rem;color:#5ee5ff}.v26-pair-card strong{display:none;font-size:.78rem}.v26-pair-card.flipped{background:#eefaff;color:#102945;transform:translateY(-3px)}.v26-pair-card.flipped span{display:none}.v26-pair-card.flipped strong{display:block}.v26-pair-card.matched{background:#d8ffe8;border-color:#35c47b;color:#0b5d36;opacity:.8}
.v26-network-map{position:relative;max-width:900px;height:420px;margin:auto;border-radius:22px;background:radial-gradient(circle,#0d3e69,#020b19 72%);border:1px solid #1b74aa;overflow:hidden}.v26-network-map:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#1bc7ff18 1px,transparent 1px),linear-gradient(90deg,#1bc7ff18 1px,transparent 1px);background-size:35px 35px}.v26-node{position:absolute;z-index:2;width:120px;height:70px;border-radius:16px;display:grid;place-items:center;background:#0b2e50;border:2px solid #48dfff;color:white;font-weight:900}.v26-node.start{left:calc(50% - 60px);bottom:20px}.v26-node.finish{left:calc(50% - 60px);top:20px;background:#124e80}.v26-node.option{top:170px;width:260px;height:85px;margin:0}.v26-node.option.left{left:90px}.v26-node.option.right{right:90px}.v26-node.option.safe{background:#087747;border-color:#62ffc0}.v26-node.option.risk{background:#8a1c35;border-color:#ff6582}.v26-path{position:absolute;top:95px;width:3px;height:260px;background:#1dd9ff;box-shadow:0 0 12px #1dd9ff}.v26-path.left{left:35%;transform:rotate(27deg)}.v26-path.right{right:35%;transform:rotate(-27deg)}.v26-lab-prompt{text-align:center;font-size:1.25rem;font-weight:900;margin:10px}
.v26-device{max-width:780px;margin:auto;padding:18px;border:12px solid #243c58;border-radius:32px;background:#07192f}.v26-device-top{display:flex;justify-content:space-between;color:#61e5ff;font-weight:900}.v26-healthbar{height:14px;margin:10px 0;border-radius:20px;background:#020b17;overflow:hidden}.v26-healthbar i{display:block;height:100%;background:linear-gradient(90deg,#ff5570,#ffd44d,#37dc92);transition:.3s}.v26-device-screen{min-height:220px;padding:35px;border-radius:14px;background:linear-gradient(145deg,#dff7ff,#f8fdff);color:#15314c;text-align:center;display:grid;place-items:center}.v26-device-screen span,.v26-device-screen strong{display:block}.v26-device-screen span{color:#0b7ab3;font-size:.72rem}.v26-device-screen strong{font-size:1.3rem}.v26-patch-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.v26-patch-actions button{margin:0}
.v26-run-arena{position:relative;max-width:980px;height:440px;margin:auto;border-radius:22px;overflow:hidden;background:linear-gradient(#04172e,#06345b);border:2px solid #23b9e8}.v26-run-grid{position:absolute;inset:0;background-image:linear-gradient(#26cfff1c 1px,transparent 1px),linear-gradient(90deg,#26cfff1c 1px,transparent 1px);background-size:42px 42px;perspective:400px}.v26-run-lanes{position:absolute;inset:0}.v26-run-lanes i{position:absolute;top:0;bottom:0;width:2px;background:#52dfff55}.v26-run-lanes i:first-child{left:33.333%}.v26-run-lanes i:last-child{left:66.666%}.v26-run-prompt{position:absolute;top:20px;left:50%;transform:translateX(-50%);z-index:4;width:70%;padding:10px;border-radius:12px;background:#06142edb;border:1px solid #59ddff;text-align:center;font-weight:900}.v26-run-gates{position:absolute;left:4%;right:4%;top:145px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.v26-run-gates button{height:110px;margin:0;border:3px solid #4fe3ff;background:#07365bd9;color:white;border-radius:12px;font-weight:900;box-shadow:0 0 20px #2bd8ff55}.v26-runner{position:absolute;bottom:12px;width:110px;height:110px;transition:.2s;z-index:5}.v26-runner img{width:100%;height:100%;object-fit:contain}.v26-runner.lane0{left:calc(16.666% - 55px)}.v26-runner.lane1{left:calc(50% - 55px)}.v26-runner.lane2{left:calc(83.333% - 55px)}.v26-run-controls{display:flex;justify-content:center;gap:10px}.v26-run-controls button{width:auto}
.v26-finish{position:absolute;z-index:20;inset:80px 15%;padding:35px;border-radius:24px;background:linear-gradient(145deg,#061b38,#0c3d68);border:2px solid #5fe6ff;box-shadow:0 20px 70px #000c;text-align:center}.v26-trophy{width:100px;height:100px;margin:auto;display:grid;place-items:center;border-radius:50%;background:linear-gradient(#ffe36c,#ff9e20);color:#6b3a00;font-size:3.5rem;box-shadow:0 0 35px #ffd64c88}.v26-finish>span{display:block;margin-top:15px;color:#62e5ff;font-weight:900}.v26-finish h2{font-size:2rem;margin:.2rem}.v26-finish p{color:#cbe7f6;font-size:1.05rem}
.v26-district-progress{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:15px 0;padding:12px 16px;border-radius:14px;background:#082a4a;color:white;border:1px solid #2877a6}.v26-district-progress span,.v26-district-progress strong{display:block}.v26-district-progress span{font-size:.62rem;color:#61e4ff;font-weight:900}.v26-district-progress p{margin:0}.v26-upgrade-badge{margin-top:8px;padding:5px 8px;border-radius:8px;background:#0d3a64;color:#65e7ff;font-size:.62rem;font-weight:900}
.district-level-2 .district-building-large{box-shadow:0 0 30px #2ddcff77}.district-level-2 .district-building-large:after{content:'★  ★';display:block;color:#ffe266;font-size:1.5rem;letter-spacing:.6em;margin-top:8px}.district-level-3 .district-building-large{box-shadow:0 0 45px #7b56ff99;border-color:#7ae9ff}.district-level-3 .district-building-large:after{content:'★ CYBERPOWERED ★';display:block;color:#ffe56a;font-weight:1000;letter-spacing:.12em;margin-top:8px;text-shadow:0 0 12px #ffcf36}
@media(max-width:1100px){.v26-cabinets{grid-template-columns:repeat(2,1fr)}.v26-arcade-hero{grid-template-columns:1fr}.v26-node.option.left{left:25px}.v26-node.option.right{right:25px}.v26-pairs-board{grid-template-columns:repeat(4,1fr)}}@media(max-width:650px){.v26-cabinets{grid-template-columns:1fr}.v26-pairs-board{grid-template-columns:repeat(2,1fr)}.v26-node.option{width:42%;font-size:.72rem}.v26-node.option.left{left:4%}.v26-node.option.right{right:4%}.v26-finish{inset:70px 4%}.v26-district-progress{display:block}.v26-arcade-hero h1{font-size:1.7rem}}

/* ===== CyberGlitch v2.7 — Sports + Detective depth ===== */
main.sports-main-v27,main.detective-main-v27{max-width:1500px;width:100%}
.v27-back{display:inline-block;margin-bottom:10px}.v27-sport-hero,.v27-detective-hero,.v27-case-header{display:grid;grid-template-columns:1fr 300px;gap:20px;align-items:center;padding:24px;border-radius:24px;background:linear-gradient(145deg,#06172f,#0b3963);border:1px solid #1c75aa;color:white}.v27-sport-hero h1,.v27-detective-hero h1,.v27-case-header h1{font-size:2.4rem;margin:.15rem 0}.v27-sport-player{display:grid;grid-template-columns:100px 1fr;gap:10px;align-items:center;padding:10px;border-radius:18px;background:#06162d;border:1px solid #2679a8}.v27-sport-player img{width:100px;height:100px;object-fit:contain}.v27-sport-player span,.v27-sport-player strong,.v27-sport-player small{display:block}.v27-sport-player span{color:#61e1ff;font-size:.7rem;font-weight:900}.v27-sport-player small{color:#b5d2e5}
.v27-game-card{margin-top:14px;padding:16px;border-radius:24px;background:linear-gradient(#071a37,#031026);border:1px solid #1d6ea2;color:white}.v27-scorebar{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;margin-bottom:12px;border-radius:12px;background:#0b3155;border:1px solid #2377a8}.v27-scorebar span{color:#62e3ff;font-weight:900}.v27-scorebar b{font-size:.8rem}.v27-scorebar i{font-style:normal;color:#ffe15d;font-size:1rem}.v27-controls{display:flex;justify-content:center;gap:10px;margin-top:12px}.v27-controls button{width:auto}
.v27-hoops-court{position:relative;height:500px;overflow:hidden;border-radius:20px;background:linear-gradient(#0d2749 0 43%,#b56b28 44% 100%);border:2px solid #2aa6df}.v27-hoops-court:after{content:'';position:absolute;left:50%;bottom:-130px;width:430px;height:280px;border:4px solid #f7e1bd;border-radius:50%;transform:translateX(-50%)}.v27-crowd{position:absolute;top:0;left:0;right:0;height:120px;background:radial-gradient(circle at 15px 15px,#87d9ff 0 4px,transparent 5px);background-size:30px 30px;opacity:.35}.v27-backboard{position:absolute;right:80px;top:95px;width:160px;height:110px;border:8px solid white;background:#d9f4ff99}.v27-backboard span{position:absolute;left:50px;top:30px;width:60px;height:45px;border:4px solid white}.v27-backboard i{position:absolute;left:54px;bottom:-34px;width:52px;height:14px;border-radius:50%;border:5px solid #ff6e2f}.v27-hoops-player{position:absolute;left:80px;bottom:50px;width:160px;height:180px}.v27-hoops-player img{width:100%;height:100%;object-fit:contain}.v27-ball{position:absolute;left:215px;bottom:75px;width:45px;height:45px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffb04a,#c24d13);border:3px solid #54230c}.v27-ball.made{animation:v27swish .5s forwards}.v27-ball.miss{animation:v27miss .5s forwards}@keyframes v27swish{to{left:590px;bottom:300px;transform:scale(.7)}}@keyframes v27miss{to{left:535px;bottom:260px;transform:translateX(-80px)}}.v27-shotmeter{position:absolute;left:50%;bottom:35px;transform:translateX(-50%);width:360px;height:18px;border-radius:12px;background:linear-gradient(90deg,#e1495e 0 35%,#f0c54a 35% 42%,#40d982 42% 58%,#f0c54a 58% 65%,#e1495e 65%);border:2px solid #fff}.v27-shotmeter i{position:absolute;top:-8px;width:6px;height:32px;background:white;box-shadow:0 0 8px #fff}.v27-court-prompt{position:absolute;left:50%;top:20px;transform:translateX(-50%);padding:9px 14px;border-radius:12px;background:#06162cdd;border:1px solid #50d8ff;font-weight:900;z-index:4}.v27-cyber-choice{margin:12px auto;padding:14px;max-width:800px;border-radius:15px;background:#0b3154;border:1px solid #2c8db9}.v27-cyber-choice span,.v27-cyber-choice strong{display:block}.v27-cyber-choice span{font-size:.65rem;color:#5ee2ff;font-weight:900}.v27-cyber-choice button{width:auto;margin:8px 8px 0 0}
.v27-dash-track{position:relative;height:500px;overflow:hidden;border-radius:20px;background:linear-gradient(#0a2342,#082f53);border:2px solid #29b1dc}.v27-dash-grid{position:absolute;inset:0;background-image:linear-gradient(#2ad6ff1b 1px,transparent 1px),linear-gradient(90deg,#2ad6ff1b 1px,transparent 1px);background-size:38px 38px}.v27-road-lines i{position:absolute;top:0;bottom:0;width:3px;background:#7beaff44}.v27-road-lines i:first-child{left:33.333%}.v27-road-lines i:last-child{left:66.666%}.v27-dash-prompt{position:absolute;top:20px;left:50%;transform:translateX(-50%);z-index:5;padding:9px 13px;border-radius:12px;background:#06172fe0;border:1px solid #5be1ff;font-weight:900}.v27-dash-choices{position:absolute;top:145px;left:4%;right:4%;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.v27-dash-choices button{height:110px;margin:0;border:3px solid #55e2ff;background:#07385fdd;color:white;border-radius:13px;font-weight:900}.v27-dash-rider{position:absolute;bottom:15px;width:110px;height:125px;transition:.2s}.v27-dash-rider>img:first-child{position:absolute;width:100%;height:100%;object-fit:contain;z-index:2}.v27-dash-rider .board{position:absolute;width:100%;height:45px;object-fit:contain;bottom:0;left:0;z-index:1}.v27-dash-rider.lane0{left:calc(16.666% - 55px)}.v27-dash-rider.lane1{left:calc(50% - 55px)}.v27-dash-rider.lane2{left:calc(83.333% - 55px)}
.v27-hockey-rink{position:relative;height:500px;border-radius:20px;overflow:hidden;background:linear-gradient(#dff8ff,#bde8f6);border:8px solid #dbeef5}.v27-rink-lines:before,.v27-rink-lines:after{content:'';position:absolute;top:0;bottom:0;width:4px;background:#e64b63}.v27-rink-lines:before{left:33%}.v27-rink-lines:after{right:33%}.v27-goal{position:absolute;left:50%;top:35px;transform:translateX(-50%);width:340px;height:170px;border:8px solid #e92e4e;border-bottom-width:18px;border-radius:15px 15px 0 0}.v27-goalie{position:absolute;top:95px;width:130px;height:145px;transition:.18s}.v27-goalie img{width:100%;height:100%;object-fit:contain}.v27-goalie.left{left:calc(35% - 65px)}.v27-goalie.center{left:calc(50% - 65px)}.v27-goalie.right{left:calc(65% - 65px)}.v27-puck{position:absolute;left:50%;bottom:55px;width:34px;height:18px;border-radius:50%;background:#111;transform:translateX(-50%);transition:.45s}.v27-puck.shot0{left:35%;bottom:335px}.v27-puck.shot1{left:50%;bottom:335px}.v27-puck.shot2{left:65%;bottom:335px}.v27-puck.saved{box-shadow:0 0 18px #1acb75}.v27-puck.goal{box-shadow:0 0 18px #ff3058}.v27-hockey-threat{position:absolute;left:50%;bottom:105px;transform:translateX(-50%);padding:9px 14px;border-radius:12px;background:#08274bdc;color:white;font-weight:900;text-align:center;min-width:380px}.v27-hockey-options{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);display:flex;gap:10px}.v27-hockey-options button{width:auto;margin:0}
.v27-coming{margin-top:14px;display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:center;padding:20px;border-radius:22px;background:#071a36;border:1px solid #1c6fa5;color:white}.v27-coming-art{height:280px;display:grid;place-items:center;background:radial-gradient(circle,#135c8c,#06142b);border-radius:18px}.v27-coming-art img{width:95%;height:95%;object-fit:contain}
.v27-detective-hero img{width:220px;height:220px;object-fit:contain;justify-self:end}.v27-casegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:15px}.v27-casecard{display:grid;grid-template-columns:220px 1fr;gap:14px;padding:12px;border-radius:18px;background:#f8fbff;border:1px solid #c7dbe9;color:#102a49;text-decoration:none}.v27-caseart{height:180px;border-radius:14px;overflow:hidden;background:radial-gradient(circle,#145e91,#06152d);display:grid;place-items:center}.v27-caseart img{width:100%;height:100%;object-fit:contain}.v27-casecard span{font-size:.65rem;color:#0c7db8;font-weight:900}.v27-casecard strong{display:block;font-size:1.2rem;margin:.2rem 0}.v27-casecard p{color:#5b7188}.v27-casecard b{color:#0a76bd}
.v27-case-header{grid-template-columns:1fr 170px}.v27-cluecount{padding:16px;border-radius:15px;background:#06162d;border:1px solid #2d7eaa;text-align:center;color:#68e2ff;font-weight:900}.v27-cluecount strong{display:block;font-size:2.2rem;color:#ffe05c}
.v27-scene-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;margin-top:14px}.v27-bedroom-scene{position:relative;height:650px;border-radius:22px;overflow:hidden;border:2px solid #2a86b7;background:linear-gradient(#7ec9e9 0 55%,#9b714e 56% 100%)}.v27-bedroom-scene:before{content:'';position:absolute;left:0;right:0;top:55%;height:5px;background:#704a32}.v27-window{position:absolute;left:55px;top:55px;width:240px;height:170px;border:12px solid #e9f7ff;background:linear-gradient(#5aa8da,#aacdec)}.v27-window span{position:absolute;background:#e9f7ff}.v27-window span:first-child{width:8px;top:0;bottom:0;left:50%}.v27-window span:nth-child(2){height:8px;left:0;right:0;top:50%}.v27-window span:nth-child(3){left:20px;right:20px;bottom:20px;height:25px;background:#70a66c}.v27-bed{position:absolute;left:45px;bottom:35px;width:360px;height:180px;border-radius:20px;background:linear-gradient(#203f7f,#132a59);border:8px solid #eee}.v27-bed i{position:absolute;right:30px;top:20px;width:130px;height:70px;border-radius:20px;background:white}.v27-bed b{position:absolute;left:30px;bottom:35px;color:#70e2ff;letter-spacing:.1em}.v27-desk{position:absolute;right:55px;bottom:65px;width:380px;height:190px;background:#5d3d2e;border-radius:8px}.v27-monitor{position:absolute;left:55px;top:-155px;width:240px;height:150px;display:grid;place-items:center;background:#06172e;border:12px solid #202c3a;color:#65e4ff;font-weight:1000}.v27-keyboard{position:absolute;left:70px;top:20px;width:200px;height:30px;background:#d7e1e8}.v27-tablet{position:absolute;right:25px;top:35px;width:65px;height:95px;border-radius:8px;background:#071a34;border:6px solid #333}.v27-phone{position:absolute;right:30px;top:55px;width:75px;height:140px;border-radius:14px;background:#06172e;border:7px solid #333;color:#65e4ff;display:grid;place-items:center}.v27-poster{position:absolute;left:340px;top:60px;width:220px;height:120px;padding:18px;text-align:center;background:#fff7c8;border:5px solid #725d30;color:#16314c;font-size:1.5rem;font-weight:1000}.v27-poster small{display:block;font-size:.7rem}.v27-scene-avatar{position:absolute;left:410px;bottom:30px;width:180px;height:210px;object-fit:contain;filter:drop-shadow(0 12px 10px #0005)}.v27-hotspot{position:absolute;margin:0;border:3px solid #52e5ff;background:#14b9ff28;border-radius:50%;box-shadow:0 0 20px #20d9ff;animation:v27spot .8s infinite alternate}.v27-hotspot.found{border-color:#56e391;background:#1bd17735;box-shadow:0 0 16px #42e495;animation:none}.v27-hotspot.monitor{right:135px;bottom:345px;width:70px;height:70px}.v27-hotspot.phone{right:35px;top:95px;width:70px;height:70px}.v27-hotspot.tablet{right:65px;bottom:125px;width:60px;height:60px}.v27-hotspot.poster{left:420px;top:85px;width:60px;height:60px}.v27-hotspot.backpack{left:280px;bottom:95px;width:65px;height:65px}@keyframes v27spot{to{transform:scale(1.12)}}
.v27-clue-panel{padding:16px;border-radius:20px;background:#071a35;border:1px solid #236d9e;color:white}.v27-clue-panel h2{margin:.15rem 0 12px}.v27-clue-panel article{display:grid;grid-template-columns:34px 1fr;gap:8px;padding:9px;border-radius:12px;background:#0a2c4d;margin-bottom:8px}.v27-clue-panel article>b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#1e79b9}.v27-clue-panel article strong,.v27-clue-panel article small{display:block}.v27-clue-panel article small{color:#acd0e7;margin-top:3px}.v27-case-decision{margin-top:12px;padding-top:12px;border-top:1px solid #24567a}.v27-case-decision>strong{display:block;margin-bottom:8px}.v27-case-decision button{margin:5px 0;text-align:left}.v27-clue-panel #caseFeedback{color:#7ff1ba;font-weight:900}
@media(max-width:1000px){.v27-sport-hero,.v27-detective-hero,.v27-case-header{grid-template-columns:1fr}.v27-casegrid{grid-template-columns:1fr}.v27-scene-shell{grid-template-columns:1fr}.v27-clue-panel{order:-1}.v27-bedroom-scene{height:580px}.v27-coming{grid-template-columns:1fr}}@media(max-width:650px){.v27-casecard{grid-template-columns:120px 1fr}.v27-caseart{height:120px}.v27-hoops-court,.v27-dash-track,.v27-hockey-rink{height:420px}.v27-backboard{right:20px}.v27-hoops-player{left:20px}.v27-shotmeter{width:70%}.v27-hockey-threat{min-width:80%}.v27-bedroom-scene{transform-origin:top left}.v27-detective-hero img{justify-self:start}}

/* ===== CyberGlitch v2.8 — Cyber Base Defense ===== */
main.cyberbase-main-v28{max-width:1540px;width:100%}
.v28-back{display:inline-block;margin-bottom:10px;font-weight:800;text-decoration:none}
.v28-base-hero{display:grid;grid-template-columns:1fr 330px;gap:18px;align-items:center;padding:24px 28px;border-radius:24px;background:radial-gradient(circle at 85% 20%,#154c7a,#06162e 55%);border:1px solid #1c79ad;color:white}.v28-base-hero h1{font-size:2.7rem;margin:.1rem 0}.v28-base-player{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:center;padding:10px;border-radius:18px;background:#06162d;border:1px solid #247cab}.v28-base-player img{width:110px;height:110px;object-fit:contain}.v28-base-player span,.v28-base-player strong,.v28-base-player small{display:block}.v28-base-player span{color:#63e3ff;font-size:.65rem;font-weight:900}.v28-base-player strong{font-size:1.3rem}.v28-base-player small{color:#b7d4e7}

.v28-base-hud{display:grid;grid-template-columns:repeat(3,1fr) 2fr;gap:9px;margin:12px 0;padding:10px;border-radius:15px;background:#071a36;border:1px solid #1f689a;color:white}.v28-base-hud>div:not(.v28-powerbar){padding:6px 10px;border-right:1px solid #234b70}.v28-base-hud span,.v28-base-hud strong{display:block}.v28-base-hud span{font-size:.62rem;color:#62e1ff;font-weight:900;letter-spacing:.06em}.v28-base-hud strong{font-size:1.2rem}.v28-base-hud i{font-style:normal}.v28-powerbar{height:16px;align-self:center;border-radius:20px;background:#020b18;overflow:hidden;border:1px solid #245881}.v28-powerbar i{display:block;width:0;height:100%;background:linear-gradient(90deg,#29d7ff,#33dc92,#ffe55c);transition:.3s}

.v28-house-shell{margin:12px 0}.v28-house-roof{height:70px;display:grid;place-items:end center;background:linear-gradient(145deg,#1479ba,#08355d);clip-path:polygon(8% 100%,18% 12%,50% 0,82% 12%,92% 100%);border-radius:30px 30px 0 0;color:white}.v28-house-roof span{margin-bottom:12px;padding:5px 12px;border-radius:999px;background:#04152dcc;color:#6ee5ff;font-size:.7rem;font-weight:900;letter-spacing:.08em}.v28-house{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;background:#17354d;border:8px solid #17354d;border-radius:0 0 22px 22px}
.v28-room{min-width:0;border-radius:14px;overflow:hidden;border:2px solid #4ccdf6;background:#eaf7ff}.v28-room.room-purple{border-color:#9a6df3}.v28-room.room-green{border-color:#55d995}.v28-room>header{display:flex;justify-content:space-between;padding:9px 11px;background:#071a35;color:white}.v28-room>header span{font-size:.7rem;color:#69e0ff;font-weight:900}.v28-room>header strong{font-size:.7rem}.v28-room-scene{position:relative;height:460px;overflow:hidden;background:linear-gradient(#7bc8eb 0 58%,#bd8b62 59% 100%)}
.room-purple .v28-room-scene{background:linear-gradient(#9b91da 0 58%,#a77e62 59% 100%)}.room-green .v28-room-scene{background:linear-gradient(#8fd7c0 0 58%,#aa865d 59% 100%)}
.v28-bed{position:absolute;left:16px;bottom:112px;width:165px;height:90px;border-radius:14px;background:#1b3970;border:6px solid #edf7ff}.v28-bed i{position:absolute;right:8px;top:10px;width:65px;height:38px;border-radius:12px;background:white}.v28-desk{position:absolute;right:15px;bottom:112px;width:150px;height:85px;background:#65432f}.v28-desk b{position:absolute;left:30px;top:-80px;width:90px;height:70px;border:7px solid #273441;background:#06182f}.v28-desk i{position:absolute;left:45px;top:20px;width:70px;height:15px;background:#dde7ee}.v28-router-art{position:absolute;left:55%;top:70px;width:80px;height:45px;border-radius:9px;background:#eef6fb;border:3px solid #50697d}.v28-router-art span{position:absolute;bottom:8px;width:8px;height:8px;border-radius:50%;background:#31df93}.v28-router-art span:first-child{left:20px}.v28-router-art span:nth-child(2){left:35px}.v28-router-art em{position:absolute;left:50%;bottom:40px;width:4px;height:45px;background:#50697d}
.v28-sofa{position:absolute;left:18px;bottom:112px;width:190px;height:90px;border-radius:25px 25px 12px 12px;background:#274c7e}.v28-sofa i{position:absolute;top:12px;width:72px;height:45px;border-radius:16px;background:#39679e}.v28-sofa i:first-child{left:18px}.v28-sofa i:last-child{right:18px}.v28-tv{position:absolute;right:25px;top:55px;width:170px;height:110px;border:9px solid #232e39;background:#07182e;color:#65e2ff;display:grid;place-items:center;font-size:.7rem;font-weight:900}.v28-console{position:absolute;right:70px;bottom:125px;width:85px;height:28px;border-radius:10px;background:#e8eff5}.v28-console i{position:absolute;width:7px;height:7px;border-radius:50%;background:#2ed58a;top:10px}.v28-console i:first-child{left:18px}.v28-console i:last-child{left:30px}
.v28-door{position:absolute;left:25px;bottom:112px;width:105px;height:210px;background:#4d3428;border:8px solid #e9f2f7}.v28-door i{position:absolute;right:12px;top:105px;width:10px;height:10px;border-radius:50%;background:#e6b740}.v28-camera{position:absolute;left:135px;top:65px;width:65px;height:45px;border-radius:12px;background:#eef4f6;border:4px solid #526b7d}.v28-camera span{position:absolute;left:18px;top:8px;width:22px;height:22px;border-radius:50%;background:#07182e;box-shadow:inset 0 0 0 5px #1c86c8}.v28-smartlights{position:absolute;right:28px;top:60px;display:flex;gap:25px}.v28-smartlights i{width:35px;height:35px;border-radius:50%;background:#ffe064;box-shadow:0 0 22px #ffe064}
.v28-room-avatar{position:absolute;left:50%;bottom:110px;transform:translateX(-50%);width:120px;height:140px;object-fit:contain;filter:drop-shadow(0 10px 8px #0004)}.v28-room-critter{position:absolute;left:48%;bottom:100px;width:65px;height:65px;transform:translateX(55px)}.v28-room-critter img{width:100%;height:100%;object-fit:contain}
.v28-device-dock{position:absolute;left:8px;right:8px;bottom:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.v28-device{margin:0;min-width:0;height:98px;padding:6px;border-radius:11px;background:#071a34;color:white;border:1px solid #2d83b3;text-align:left;overflow:hidden}.v28-device.secured{border-color:#4fe59c;background:#0d3a2c;box-shadow:0 0 14px #2ee29355}.v28-device-art{float:left;width:40px;height:40px;margin-right:6px;border-radius:10px;background:linear-gradient(145deg,#18bff8,#1761d7,#653dd5);display:grid;place-items:center;position:relative}.v28-device-art b{color:white}.v28-device-art i{position:absolute;inset:5px;border:1px solid #8ae9ff;border-radius:7px}.v28-device strong,.v28-device small,.v28-device em{display:block}.v28-device strong{font-size:.72rem}.v28-device small{font-size:.56rem;color:#9fcce4}.v28-device em{font-size:.55rem;color:#64e4ff;font-style:normal;font-weight:900;margin-top:4px}.v28-device.secured em{color:#67f1a9}

.v28-sectionhead{display:flex;justify-content:space-between;align-items:end;gap:12px}.v28-sectionhead h2{margin:.15rem 0}.v28-defense-inventory,.v28-owned-gear,.v28-attack-section{margin-top:15px;padding:16px;border-radius:20px;background:#f8fbff;border:1px solid #c9ddeb}.v28-defense-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.v28-defense-chips>span{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#092d4e;color:white;border:1px solid #32a9da;font-size:.78rem}.v28-defense-chips b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#176dc0}.v28-defense-chips i{font-style:normal;color:#5ef0a8;font-size:.6rem;font-weight:900}.v28-gear-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.v28-gear-grid article{display:grid;grid-template-columns:45px 1fr;gap:8px;padding:9px;border-radius:12px;background:#071a34;color:white}.v28-gear-grid article>span{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,#19c2fb,#1760d5,#6841d5)}.v28-gear-grid strong,.v28-gear-grid small{display:block}.v28-gear-grid small{color:#8fdcfa}

.v28-attack-section.locked{opacity:.55;filter:grayscale(.8)}.v28-defense-arena{position:relative;min-height:430px;margin-top:10px;border-radius:20px;background:radial-gradient(circle at 50% 48%,#0b3b68,#031226 70%);border:1px solid #166b9d;overflow:hidden}.v28-defense-arena:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#25cfff10 1px,transparent 1px),linear-gradient(90deg,#25cfff10 1px,transparent 1px);background-size:36px 36px}.v28-base-core{position:absolute;left:50%;top:40px;transform:translateX(-50%);width:180px;text-align:center;color:white}.v28-base-core>span{width:90px;height:100px;margin:auto;display:grid;place-items:center;clip-path:polygon(50% 0,92% 18%,85% 73%,50% 100%,15% 73%,8% 18%);background:linear-gradient(#17c7ff,#155ed3,#6b40d6);font-size:2rem;font-weight:1000;box-shadow:0 0 30px #1bc8ff77}.v28-base-core strong,.v28-base-core small{display:block}.v28-base-core strong{margin-top:7px}.v28-base-core small{color:#62e5ff}.v28-attack-lanes{position:absolute;left:10%;right:10%;bottom:45px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.v28-attack-lanes button{height:105px;margin:0;border:2px solid #2a6fa1;border-radius:14px;background:#071d39;color:white}.v28-attack-lanes span,.v28-attack-lanes strong{display:block}.v28-attack-lanes span{color:#63deff;font-size:.65rem}.v28-attack-lanes button.under-attack{border-color:#ff4e70;box-shadow:0 0 22px #ff365c66;animation:v28danger .55s infinite alternate}.v28-attack-lanes button.blocked{background:#0e7148;border-color:#52f1a3}.v28-attack-lanes button.hit{background:#781b30;border-color:#ff5570}.v28-malware-max{position:absolute;right:18px;top:45px;width:220px;color:white;text-align:center}.v28-malware-max img{width:140px;height:140px;object-fit:contain;filter:drop-shadow(0 10px 10px #0006)}.v28-malware-max span,.v28-malware-max strong{display:block}.v28-malware-max span{color:#ff6680;font-size:.65rem;font-weight:900}.v28-malware-max strong{font-size:.72rem;color:#e6cbd0}@keyframes v28danger{to{transform:translateY(-3px)}}.v28-attack-controls{text-align:center;margin-top:10px}.v28-attack-controls button{width:auto}

.v28-modal{position:fixed;z-index:999;inset:0;display:grid;place-items:center;background:#020814dd;backdrop-filter:blur(4px);padding:18px}.v28-modal[hidden]{display:none}.v28-modal-card{width:min(650px,95vw);padding:24px;border-radius:22px;background:linear-gradient(#071b38,#0a3156);border:2px solid #50dfff;color:white;box-shadow:0 20px 70px #000b;text-align:center}.v28-modal-art>span{width:80px;height:85px;margin:auto;display:grid;place-items:center;clip-path:polygon(50% 0,92% 18%,85% 73%,50% 100%,15% 73%,8% 18%);background:linear-gradient(#1ccaff,#165ed6,#6741d9);font-size:1.7rem;font-weight:1000}.v28-modal-card h2{font-size:2rem;margin:.25rem 0}.v28-modal-choices{display:grid;gap:8px}.v28-modal-choices button{margin:0;text-align:left;background:#0a2747;color:white;border-color:#2e719e}.v28-modal-choices button.correct{background:#105c3c;border-color:#53ec9e}.v28-modal-choices button.wrong{background:#68172a;border-color:#ff5873}.v28-modal-card #closeModal{width:auto;margin-top:10px}.v28-modal-card.victory>img{width:190px;height:190px;object-fit:contain}.v28-victory-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.v28-victory-stats>div{padding:11px;border-radius:12px;background:#06162d;border:1px solid #2c739e}.v28-victory-stats strong,.v28-victory-stats span{display:block}.v28-victory-stats strong{font-size:1.45rem;color:#ffe15d}.v28-victory-stats span{color:#a9cce2;font-size:.7rem}.v28-modal-card.victory>a{display:inline-block;margin-top:8px;color:#62e4ff}

@media(max-width:1100px){.v28-house{grid-template-columns:1fr}.v28-room-scene{height:390px}.v28-base-hero{grid-template-columns:1fr}.v28-malware-max{width:160px}.v28-malware-max img{width:100px;height:100px}.v28-gear-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.v28-base-hud{grid-template-columns:1fr 1fr}.v28-powerbar{grid-column:1/-1}.v28-device-dock{grid-template-columns:1fr 1fr 1fr}.v28-room-scene{height:430px}.v28-attack-lanes{left:3%;right:3%;gap:7px}.v28-malware-max{right:5px}.v28-gear-grid{grid-template-columns:1fr 1fr}.v28-victory-stats{grid-template-columns:1fr}.v28-base-hero h1{font-size:2rem}}


/* ===== CyberGlitch v2.9 — readability + K–5 language stabilization ===== */

/* HOME: allow cards to grow instead of clipping copy */
.student-home-v25 .ct25-appgrid{
  grid-template-columns:repeat(4,minmax(250px,1fr));
  align-items:stretch;
}
.student-home-v25 .ct25-app{
  display:flex;
  flex-direction:column;
  min-height:370px;
  overflow:hidden;
}
.student-home-v25 .ct25-appart{
  flex:0 0 190px;
  height:190px;
  padding:16px;
  box-sizing:border-box;
  overflow:hidden;
}
.student-home-v25 .ct25-appart img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain!important;
  object-position:center!important;
}
.student-home-v25 .ct25-appcopy{
  flex:1;
  display:flex;
  flex-direction:column;
  padding:14px 16px 15px;
  min-height:150px;
}
.student-home-v25 .ct25-appcopy strong{
  font-size:1.05rem;
  line-height:1.2;
}
.student-home-v25 .ct25-appcopy p{
  min-height:0!important;
  margin:.45rem 0 .8rem;
  font-size:.84rem;
  line-height:1.4;
  color:#415e78;
}
.student-home-v25 .ct25-appcopy span{
  margin-top:auto;
  font-size:.76rem;
}

/* Town cards: visual area and copy area can never overlap */
.student-home-v25 .ct25-town-grid{
  grid-template-columns:repeat(4,minmax(260px,1fr));
  align-items:stretch;
}
.student-home-v25 .ct25-towncard{
  display:flex;
  flex-direction:column;
  min-height:265px;
}
.student-home-v25 .ct25-townart{
  flex:0 0 165px;
  height:165px;
  overflow:hidden;
}
.student-home-v25 .ct25-townart>img{
  padding:8px;
  box-sizing:border-box;
  object-fit:contain!important;
  object-position:center bottom!important;
}
.student-home-v25 .ct25-building{
  height:112px;
  max-width:145px;
  align-self:end;
}
.student-home-v25 .ct25-towncopy{
  min-height:78px;
  padding:12px 14px 14px;
  background:#061a34;
}
.student-home-v25 .ct25-towncopy strong{
  color:#fff;
  font-size:1rem;
  line-height:1.25;
}
.student-home-v25 .ct25-towncopy small{
  color:#c0def0;
  margin-top:4px;
  line-height:1.3;
}
.student-home-v25 .ct25-sectionhead small{
  color:#c4deee;
  font-size:.8rem;
}

/* Today/dashboard cards: prevent embedded art from stealing copy space */
.student-home-v25 .ct25-today-card{
  grid-template-columns:105px minmax(0,1fr);
  min-height:170px;
  align-items:center;
}
.student-home-v25 .ct25-today-art{
  width:105px;
  height:120px;
  padding:6px;
  box-sizing:border-box;
}
.student-home-v25 .ct25-today-art img{
  object-fit:contain!important;
}
.student-home-v25 .ct25-today-card p{
  font-size:.8rem;
  line-height:1.35;
}

/* CAPSULE */
main.capsule-main-v29{
  max-width:1250px;
  width:100%;
}
.v29-back{display:inline-block;margin-bottom:10px;text-decoration:none;font-weight:800}
.v29-capsule-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 230px;
  gap:20px;
  align-items:center;
  padding:30px 36px;
  border-radius:26px;
  background:linear-gradient(145deg,#f8fbff,#eaf5ff);
  border:1px solid #cbddeb;
}
.v29-capsule-hero h1{
  margin:.2rem 0;
  color:#092650;
  font-size:clamp(2.2rem,4vw,3.25rem);
}
.v29-capsule-hero p{color:#2f4c68;font-size:1.02rem}
.v29-capsule-hero>img{
  width:210px;height:170px;object-fit:contain;justify-self:end;
}
.v29-capsule-stage{
  margin-top:22px;
  display:grid;
  grid-template-columns:380px minmax(0,1fr);
  gap:28px;
  align-items:center;
  min-height:410px;
  padding:34px;
  border-radius:26px;
  background:radial-gradient(circle at 20% 45%,#15466f,#061a35 55%);
  border:1px solid #1e72a8;
}
.v29-capsule-art{
  height:330px;
  display:grid;
  place-items:center;
}
.v29-capsule-art img{
  width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 18px 18px #0007);
}
.v29-reward-result{
  color:#f4fbff;
}
.v29-reward-result>span{
  display:block;color:#68e4ff;font-size:.7rem;font-weight:900;letter-spacing:.08em;
}
.v29-reward-result h2{
  color:#fff;
  margin:.35rem 0;
  font-size:1.8rem;
}
.v29-reward-result p{
  color:#d8edf8;
  font-size:1rem;
  line-height:1.45;
}
.v29-reward-name{
  margin:14px 0;
  padding:18px 20px;
  border-radius:16px;
  background:#f7fbff;
  border:2px solid #30bbf1;
  color:#082b56;
  font-size:1.55rem;
  font-weight:1000;
  box-shadow:0 10px 22px #00122755;
}
.v29-view-reward,.v29-open-capsule{
  display:inline-grid;
  place-items:center;
  width:auto;
  min-width:220px;
  margin:8px 0 10px;
  padding:13px 20px;
  border-radius:12px;
  background:linear-gradient(#14b9f5,#086ac4);
  border:1px solid #5bdcff;
  color:#fff;
  text-decoration:none;
  font-weight:1000;
}
.v29-reward-result small{
  display:block;color:#a9ccdf;margin-top:5px;
}

/* FIREWALL RUN: explain game before play */
.v29-how-to-play{
  max-width:980px;
  margin:0 auto 14px;
  padding:16px 18px;
  border-radius:18px;
  background:#f7fbff;
  color:#102b4b;
  border:1px solid #bdd9e9;
}
.v29-how-title span{
  display:block;color:#087dbb;font-size:.68rem;font-weight:1000;letter-spacing:.08em;
}
.v29-how-title h2{
  margin:.2rem 0 .8rem;
  color:#092650;
  font-size:1.35rem;
}
.v29-how-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
}
.v29-how-steps article{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:8px;
  align-items:start;
  padding:10px;
  border-radius:13px;
  background:#eaf5ff;
  border:1px solid #c3dceb;
}
.v29-how-steps b{
  width:32px;height:32px;border-radius:50%;
  display:grid;place-items:center;
  background:#0d7fc5;color:#fff;
}
.v29-how-steps strong,.v29-how-steps small{display:block}
.v29-how-steps small{grid-column:2;color:#536b80;margin-top:2px;line-height:1.3}
.v29-how-to-play>p{
  margin:.8rem 0 0;
  line-height:1.4;
}
.v26-run-prompt{
  width:min(760px,82%)!important;
  font-size:1rem!important;
  line-height:1.35;
}
.v26-run-gates button{
  padding:12px!important;
  font-size:.94rem!important;
  line-height:1.25!important;
  white-space:normal!important;
}
.v26-game-message{
  font-size:.96rem!important;
  line-height:1.4!important;
}

/* Responsive */
@media(max-width:1250px){
  .student-home-v25 .ct25-appgrid,
  .student-home-v25 .ct25-town-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}
}
@media(max-width:780px){
  .v29-capsule-stage{grid-template-columns:1fr}
  .v29-capsule-art{height:230px}
  .v29-how-steps{grid-template-columns:1fr}
  .v29-capsule-hero{grid-template-columns:1fr}
  .v29-capsule-hero>img{justify-self:center}
}
@media(max-width:560px){
  .student-home-v25 .ct25-appgrid,
  .student-home-v25 .ct25-town-grid{grid-template-columns:1fr}
  .student-home-v25 .ct25-appart{height:165px;flex-basis:165px}
}

/* ===== CyberGlitch v3.0 — age-banded arcade + dashboard readability ===== */

/* HOME TOP: player + quick actions first row, Today full width below */
.student-home-v25 .ct25-dashboard-row{
  grid-template-columns:420px minmax(0,1fr)!important;
  grid-template-areas:
    "player quick"
    "today today";
  align-items:start!important;
}
.student-home-v25 .ct25-player-card{grid-area:player}
.student-home-v25 .ct25-quick-actions{
  grid-area:quick;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  min-height:0!important;
}
.student-home-v25 .ct25-quick-actions>.ct25-section-kicker{grid-column:1/-1}
.student-home-v25 .ct25-today{
  grid-area:today;
  width:100%;
  min-height:0!important;
  overflow:visible!important;
}
.student-home-v25 .ct25-today-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
.student-home-v25 .ct25-today-card{
  grid-template-columns:150px minmax(0,1fr)!important;
  min-height:205px!important;
  height:auto!important;
  overflow:visible!important;
  padding:12px!important;
}
.student-home-v25 .ct25-today-art{
  width:150px!important;
  height:165px!important;
  min-width:150px!important;
}
.student-home-v25 .ct25-today-card>div:last-child{
  min-width:0;
  align-self:center;
}
.student-home-v25 .ct25-today-card strong{
  font-size:1.05rem;
  line-height:1.25;
}
.student-home-v25 .ct25-today-card p{
  min-height:0!important;
  margin:.35rem 0 .65rem!important;
  line-height:1.45!important;
}
.student-home-v25 .ct25-today-card a{
  display:inline-block;
  margin-top:2px;
}
@media(max-width:1050px){
  .student-home-v25 .ct25-dashboard-row{
    grid-template-columns:1fr!important;
    grid-template-areas:"player" "quick" "today";
  }
  .student-home-v25 .ct25-today-grid{grid-template-columns:1fr!important}
  .student-home-v25 .ct25-today-card{grid-template-columns:130px 1fr!important}
  .student-home-v25 .ct25-today-art{width:130px!important;height:135px!important;min-width:130px!important}
}
@media(max-width:620px){
  .student-home-v25 .ct25-quick-actions{grid-template-columns:1fr!important}
  .student-home-v25 .ct25-today-card{grid-template-columns:100px 1fr!important;min-height:160px!important}
  .student-home-v25 .ct25-today-art{width:100px!important;height:110px!important;min-width:100px!important}
}

/* K-2 ARCADE */
main.arcade-young-v30{max-width:1400px;width:100%}
.v30-back{display:inline-block;margin-bottom:10px;font-weight:900;text-decoration:none}
.v30-young-hero{
  display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:center;
  padding:24px 28px;border-radius:24px;
  background:linear-gradient(145deg,#0c3158,#0a5b7c);
  border:2px solid #59d8ff;color:#fff;
}
.v30-young-hero h1{font-size:2.5rem;margin:.15rem 0}
.v30-young-player{display:grid;grid-template-columns:100px 1fr;gap:10px;align-items:center;padding:9px;border-radius:18px;background:#071a35;border:1px solid #5bddff}
.v30-young-player img{width:100px;height:100px;object-fit:contain}
.v30-young-player span,.v30-young-player strong,.v30-young-player small{display:block}
.v30-young-player span{font-size:.65rem;color:#70e6ff;font-weight:900}
.v30-young-player strong{font-size:1.2rem}
.v30-young-player small{color:#c4e5f4}

.v30-young-floor,.v30-game-shell{margin-top:14px;padding:18px;border-radius:24px;background:#eef9ff;border:1px solid #bfdceb}
.v30-young-note{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:15px;background:#fff;border:1px solid #c5deeb;color:#17324e}.v30-young-note strong{font-size:1.1rem}.v30-young-note span{color:#587085}
.v30-listen{
  width:auto!important;margin:0!important;padding:10px 15px!important;border-radius:999px!important;
  background:linear-gradient(#ffcf3f,#f39a19)!important;color:#492900!important;border:2px solid #ffe27a!important;font-weight:1000!important
}
.v30-young-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.v30-young-gamecard{overflow:hidden;border-radius:20px;background:#fff;border:2px solid #55bfe9;color:#102d4b;text-decoration:none;box-shadow:0 10px 22px #1c5a7b18}
.v30-young-art{height:220px;padding:14px;display:grid;place-items:center;background:radial-gradient(circle,#3ebee9,#0b355b 70%)}.v30-young-art img{width:100%;height:100%;object-fit:contain}
.v30-young-gamecard>div:last-child{padding:15px}.v30-young-gamecard span{color:#087bb8;font-size:.7rem;font-weight:1000}.v30-young-gamecard strong{display:block;font-size:1.35rem;margin:.25rem 0}.v30-young-gamecard small{display:block;min-height:2.8em;color:#526d83;font-size:.9rem;line-height:1.35}.v30-young-gamecard b{display:block;margin-top:10px;color:#087bc1}

.v30-simple-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;margin-bottom:12px;border-radius:15px;background:#fff;border:1px solid #c4deeb;color:#102d4a}.v30-simple-title span{font-size:.68rem;color:#097db8;font-weight:1000}.v30-simple-title h2{margin:.1rem 0;font-size:1.5rem}

.v30-tac-stage{display:grid;grid-template-columns:180px minmax(420px,620px) 180px;gap:16px;justify-content:center;align-items:center}
.v30-tac-side{text-align:center;color:#14334f}.v30-tac-side img{width:160px;height:160px;object-fit:contain}.v30-tac-side strong,.v30-tac-side span{display:block}.v30-tac-side strong{font-size:1.2rem}.v30-tac-side span{color:#5a7288}.v30-tac-side.bot img{filter:drop-shadow(0 8px 10px #0004)}
.v30-tac-board{aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border-radius:22px;background:linear-gradient(145deg,#0d80bb,#643eda)}
.v30-tac-board button{margin:0!important;display:grid!important;place-items:center!important;padding:5px!important;border:0!important;border-radius:14px!important;background:#071d39!important;min-height:0!important}
.v30-tac-board button img{width:88%;height:88%;object-fit:contain}.v30-tac-board button.bot span{width:70%;height:70%;border-radius:50%;display:grid;place-items:center;background:#ff4b69;color:#fff;font-size:2rem;font-weight:1000}
.v30-tac-center>p{text-align:center;font-size:1.1rem;font-weight:900;color:#163c5a}

.v30-tiny-choice{max-width:720px;margin:15px auto 0;padding:18px;border-radius:20px;background:#08294b;color:white;border:2px solid #5de1ff;text-align:center}.v30-tiny-choice>span{display:block;color:#6ae7ff;font-size:.7rem;font-weight:1000}.v30-tiny-choice h2{font-size:2rem;margin:.3rem 0}.v30-tiny-choice #tinyAnswers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v30-tiny-choice #tinyAnswers button{margin:0!important;height:90px;font-size:1.6rem;font-weight:1000}.v30-tiny-choice p{min-height:1.4em;font-weight:900}

.v30-young-finish{position:fixed;z-index:999;inset:0;display:grid;place-items:center;align-content:center;text-align:center;background:#041226e8;color:white;padding:20px}.v30-young-finish[hidden]{display:none}.v30-young-finish img{width:200px;height:200px;object-fit:contain}.v30-young-finish span{color:#65e6ff;font-weight:1000}.v30-young-finish h2{font-size:2.5rem;margin:.2rem}.v30-young-finish button,.v30-young-finish a{width:auto;display:inline-grid;place-items:center;margin:8px auto;padding:12px 18px;border-radius:12px;font-weight:1000;text-decoration:none}.v30-young-finish a{border:1px solid #66e5ff;color:#fff}

.v30-sort-stage{max-width:850px;margin:auto;text-align:center}.v30-sort-card{margin:10px auto 18px;width:min(500px,90%);min-height:260px;padding:20px;border-radius:22px;background:#fff;border:2px solid #59c6ec;display:grid;place-items:center}.v30-sort-picture span{width:100px;height:105px;display:grid;place-items:center;clip-path:polygon(50% 0,92% 18%,85% 73%,50% 100%,15% 73%,8% 18%);background:linear-gradient(#1cc9ff,#1760d5,#6942dc);color:#fff;font-size:2rem;font-weight:1000}.v30-sort-card h2{font-size:2rem;color:#143553}.v30-sort-bins{display:grid;grid-template-columns:1fr 1fr;gap:16px}.v30-sort-bins button{height:110px;margin:0!important;font-size:2rem;font-weight:1000}.v30-sort-bins .safe{background:#2fc77f;color:#073822;border-color:#74efb3}.v30-sort-bins .stop{background:#ff6177;color:#4d0715;border-color:#ff9eac}.v30-sort-stage>p{font-size:1.1rem;font-weight:900;color:#143653}.v30-sort-stage>#sortStart{width:auto}

.v30-buddy-board{max-width:900px;margin:10px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.v30-buddy-board button{height:190px;margin:0!important;border-radius:18px!important;background:#0a3155!important;border:2px solid #59d9ff!important;display:grid!important;place-items:center!important;overflow:hidden}.v30-buddy-board button span{font-size:3rem;color:#7be9ff;font-weight:1000}.v30-buddy-board button img{display:none;width:90%;height:90%;object-fit:contain}.v30-buddy-board button.open img,.v30-buddy-board button.match img{display:block}.v30-buddy-board button.open span,.v30-buddy-board button.match span{display:none}.v30-buddy-board button.match{background:#d9ffec!important;border-color:#4ee09a!important}.v30-game-shell>#buddyMessage{text-align:center;font-size:1.15rem;font-weight:900;color:#143652}.v30-game-shell>#buddyStart{display:block;width:auto;margin:10px auto}

@media(max-width:900px){
  .v30-young-hero{grid-template-columns:1fr}
  .v30-young-grid{grid-template-columns:1fr}
  .v30-tac-stage{grid-template-columns:1fr}
  .v30-tac-side{display:none}
}
@media(max-width:600px){
  .v30-tac-board{width:100%}
  .v30-buddy-board{grid-template-columns:repeat(2,1fr)}
  .v30-buddy-board button{height:150px}
  .v30-tiny-choice #tinyAnswers{grid-template-columns:1fr}
}

/* ======================================================================
   CyberGlitch v3.1 — STABILITY / VISUAL FIDELITY
   Home is isolated under .home-v31.
   Tic-tac-toe boards are isolated from dashboard/global grid rules.
   ====================================================================== */

/* ---------- ACTUAL HOME PAGE ---------- */
main.home-v31{
  max-width:none!important;width:100%!important;margin:0!important;
  padding:12px!important;box-sizing:border-box!important;background:#eaf6ff!important;
}
.home-v31 .ct31-shell{
  width:100%;max-width:1920px;margin:0 auto;padding:12px;box-sizing:border-box;
  border-radius:24px;background:linear-gradient(180deg,#03152d,#021027 82%,#03152d);
  border:1px solid #126ca3;color:#fff;overflow:hidden;
}
.home-v31 .ct31-topbar{min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:2px 6px 10px}
.home-v31 .ct31-brand{display:flex;align-items:center;gap:10px}.home-v31 .ct31-brand>span{width:43px;height:50px;display:grid;place-items:center;clip-path:polygon(50% 0,93% 18%,86% 72%,50% 100%,14% 72%,7% 18%);background:linear-gradient(#18c8ff,#1661d6,#6943dd);font-weight:1000;font-size:1.2rem}.home-v31 .ct31-brand strong{font-size:1.8rem}
.home-v31 .ct31-topstats{display:flex;gap:8px;flex-wrap:wrap}.home-v31 .ct31-topstats>div{min-width:145px;height:46px;padding:5px 9px;box-sizing:border-box;display:grid;grid-template-columns:42px auto 1fr;gap:6px;align-items:center;border:1px solid #195d8e;border-radius:12px;background:#061b38}.home-v31 .ct31-topstats img{width:42px;height:34px;object-fit:contain}.home-v31 .ct31-topstats i{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#153965;color:#5de3ff;font-style:normal;font-weight:900}.home-v31 .ct31-topstats b{color:#ffe05c;font-size:1.05rem}.home-v31 .ct31-topstats small{color:#c3dceb}.home-v31 .ct31-topstats span{grid-column:2/4;height:5px;border-radius:10px;background:#020e20;overflow:hidden}.home-v31 .ct31-topstats span em{display:block;height:100%;background:linear-gradient(90deg,#20d6ff,#6774ff)}
.home-v31 .ct31-layout{display:grid;grid-template-columns:330px minmax(0,1fr) 390px;gap:12px;align-items:start}
.home-v31 .ct31-left,.home-v31 .ct31-center,.home-v31 .ct31-right{min-width:0}
.home-v31 .ct31-player{overflow:hidden;border-radius:18px;background:#061b38;border:1px solid #176da2}.home-v31 .ct31-player-art{height:285px;padding:8px;box-sizing:border-box;display:grid;place-items:center;background:radial-gradient(circle,#15588b,#05152e 72%)}.home-v31 .ct31-player-art img{width:100%;height:100%;object-fit:contain!important}.home-v31 .ct31-player-copy{padding:13px 15px 16px}.home-v31 .ct31-player-copy>span{display:block;color:#5fe3ff;font-size:.64rem;font-weight:1000}.home-v31 .ct31-player-copy h1{margin:.12rem 0;font-size:2.1rem}.home-v31 .ct31-player-copy>small{color:#bfd9e9}
.home-v31 .ct31-player-balance{display:grid;grid-template-columns:55px auto 1fr;gap:7px;align-items:center;margin:12px 0;padding:8px;border-radius:10px;background:#041329}.home-v31 .ct31-player-balance img{width:55px;height:38px;object-fit:contain}.home-v31 .ct31-player-balance b{font-size:1.45rem;color:#ffe05a}.home-v31 .ct31-player-balance span{color:#b9d8e9}
.home-v31 .ct31-companion{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:center;padding-top:10px;border-top:1px solid #21496c}.home-v31 .ct31-companion img{width:72px;height:72px;object-fit:contain}.home-v31 .ct31-companion span,.home-v31 .ct31-companion strong,.home-v31 .ct31-companion small{display:block}.home-v31 .ct31-companion span{font-size:.58rem;color:#5fe3ff;font-weight:900}.home-v31 .ct31-companion small{color:#b8d5e7}.home-v31 .ct31-player-copy>a{margin-top:11px;height:40px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(#1479df,#0752b7);color:#fff;text-decoration:none;font-weight:900}
.home-v31 .ct31-panel{padding:9px;border:1px solid #155e91;border-radius:16px;background:#061b38}.home-v31 .ct31-panel>header,.home-v31 .ct31-apps>header,.home-v31 .ct31-play>header,.home-v31 .ct31-side>header,.home-v31 .ct31-fulltown>header{display:flex;justify-content:space-between;align-items:center;gap:10px}.home-v31 .ct31-panel>header span,.home-v31 .ct31-apps>header span,.home-v31 .ct31-play>header span,.home-v31 .ct31-side>header span,.home-v31 .ct31-fulltown>header span{color:#5ee4ff;font-size:.66rem;font-weight:1000;letter-spacing:.06em}
.home-v31 .ct31-today-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px}.home-v31 .ct31-today-grid>article{min-width:0;min-height:165px;padding:8px;box-sizing:border-box;display:grid;grid-template-columns:112px minmax(0,1fr);gap:9px;align-items:center;border-radius:12px;background:#071f3e;border:1px solid #256a9b;overflow:hidden}.home-v31 .ct31-today-art{width:112px;height:118px;padding:4px;box-sizing:border-box;display:grid;place-items:center;border-radius:9px;background:radial-gradient(circle,#165283,#051329)}.home-v31 .ct31-today-art img{width:100%;height:100%;object-fit:contain!important}.home-v31 .ct31-today-grid article>div:last-child{min-width:0}.home-v31 .ct31-today-grid span{display:block;color:#60e1ff;font-size:.55rem;font-weight:1000}.home-v31 .ct31-today-grid strong{display:block;margin:.18rem 0;color:#fff;font-size:.96rem;line-height:1.18}.home-v31 .ct31-today-grid p{margin:.24rem 0 .48rem;color:#d0e5f2;font-size:.74rem;line-height:1.35}.home-v31 .ct31-today-grid a{color:#65e5ff;text-decoration:none;font-size:.66rem;font-weight:1000}
.home-v31 .ct31-capsule{min-height:165px;margin-top:9px;padding:14px 18px;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 180px 170px;gap:15px;align-items:center;border-radius:15px;background:linear-gradient(135deg,#f8fbff,#eaf5ff);color:#102a49}.home-v31 .ct31-capsule>div>span{font-size:.62rem;font-weight:1000}.home-v31 .ct31-capsule h2{margin:.15rem 0;font-size:1.5rem;color:#0a2c52}.home-v31 .ct31-capsule p{margin:.3rem 0;color:#31516c;line-height:1.35}.home-v31 .ct31-capsule>img{width:175px;height:135px;object-fit:contain}.home-v31 .ct31-capsule>a{height:44px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(#9237e7,#6a21bd);color:#fff;text-decoration:none;font-weight:1000}
.home-v31 .ct31-apps{margin-top:9px}.home-v31 .ct31-apps>header{min-height:34px}.home-v31 .ct31-apps>header h2{margin:.12rem 0;font-size:1.35rem}.home-v31 .ct31-apps>header small{color:#c5deec}.home-v31 .ct31-appgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.home-v31 .ct31-app{min-width:0;min-height:270px;display:flex;flex-direction:column;overflow:hidden;border-radius:12px;background:#f7fbff;border:1px solid #bdd4e4;color:#102941;text-decoration:none}.home-v31 .ct31-app-art{flex:0 0 140px;height:140px;padding:7px;box-sizing:border-box;display:grid;place-items:center;background:radial-gradient(circle,#145382,#05142b 72%)}.home-v31 .ct31-app-art img{width:100%;height:100%;object-fit:contain!important;object-position:center!important}.home-v31 .ct31-app-copy{flex:1;display:flex;flex-direction:column;padding:9px 11px 10px}.home-v31 .ct31-app-copy strong{font-size:.92rem}.home-v31 .ct31-app-copy p{margin:.28rem 0;color:#4e697f;font-size:.72rem;line-height:1.35}.home-v31 .ct31-app-copy span{margin-top:auto;color:#075fbd;font-size:.68rem;font-weight:1000}
.home-v31 .ct31-play{margin-top:9px;padding:8px;border-radius:13px;background:#061b38;border:1px solid #155d8f}.home-v31 .ct31-play>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:5px}.home-v31 .ct31-play a{min-width:0;padding:6px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:6px;align-items:center;border-radius:9px;background:#071f3d;color:#fff;text-decoration:none}.home-v31 .ct31-play img{width:48px;height:48px;object-fit:contain}.home-v31 .ct31-play strong,.home-v31 .ct31-play small{display:block}.home-v31 .ct31-play strong{font-size:.72rem}.home-v31 .ct31-play small{font-size:.58rem;color:#bdd8e8;line-height:1.15}
.home-v31 .ct31-right{display:grid;gap:9px}.home-v31 .ct31-side{padding:9px;border-radius:15px;background:#061b38;border:1px solid #155f92}.home-v31 .ct31-side>header small{color:#c2dce9}.home-v31 .ct31-townmini{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:6px}.home-v31 .ct31-townmini>a{min-width:0;overflow:hidden;padding-bottom:6px;border-radius:9px;background:#071f3e;border:1px solid #1c4c73;color:#fff;text-decoration:none}.home-v31 .ct31-townmini>a.locked{opacity:.55;filter:grayscale(.85)}.home-v31 .ct31-townmini-art{height:72px;padding:3px;background:#0a2849}.home-v31 .ct31-townmini-art img{width:100%;height:100%;object-fit:contain}.home-v31 .ct31-townmini strong,.home-v31 .ct31-townmini small{display:block;padding:0 5px}.home-v31 .ct31-townmini strong{margin-top:4px;font-size:.68rem;line-height:1.12}.home-v31 .ct31-townmini small{font-size:.54rem;color:#c4dce9;line-height:1.15}.home-v31 .ct31-townmini>a>span{display:block;height:4px;margin:4px 5px 0;border-radius:9px;background:#020c1b;overflow:hidden}.home-v31 .ct31-townmini>a>span i{display:block;height:100%;background:linear-gradient(90deg,#ae3cff,#5972ff)}.home-v31 .ct31-side-button{margin-top:7px;height:36px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(#1575da,#0751b7);color:#fff;text-decoration:none;font-size:.68rem;font-weight:900}
.home-v31 .ct31-list{display:grid;gap:5px;margin-top:6px}.home-v31 .ct31-list article,.home-v31 .ct31-list a{min-width:0;padding:6px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:6px;align-items:center;border-radius:8px;background:#071f3e;color:#fff;text-decoration:none}.home-v31 .ct31-list b{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:linear-gradient(#19bff9,#1760d5,#6841d8)}.home-v31 .ct31-list strong,.home-v31 .ct31-list small{display:block}.home-v31 .ct31-list strong{font-size:.68rem}.home-v31 .ct31-list small{font-size:.54rem;color:#bed9e8;line-height:1.12}.home-v31 .ct31-list>article>span,.home-v31 .ct31-list>a>span{color:#ffd84f;font-size:.62rem;font-weight:900}
.home-v31 .ct31-fulltown{margin-top:10px;padding:9px;border-radius:15px;background:#061b38;border:1px solid #155f92}.home-v31 .ct31-fulltown>header h2{margin:.12rem 0;font-size:1.25rem}.home-v31 .ct31-fulltown>header small{color:#c3ddea}.home-v31 .ct31-fulltown>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.home-v31 .ct31-fulltown>div>a{min-width:0;overflow:hidden;border-radius:10px;background:#071f3e;border:1px solid #1c5580;color:#fff;text-decoration:none}.home-v31 .ct31-fulltown>div>a.locked{opacity:.52;filter:grayscale(.85)}.home-v31 .ct31-fulltown-art{height:105px;padding:4px;background:linear-gradient(#4eb6e2 0 55%,#82c58b 56% 70%,#4b5e72 71%)}.home-v31 .ct31-fulltown-art img{width:100%;height:100%;object-fit:contain}.home-v31 .ct31-fulltown-copy{padding:7px}.home-v31 .ct31-fulltown-copy strong,.home-v31 .ct31-fulltown-copy small{display:block}.home-v31 .ct31-fulltown-copy strong{font-size:.75rem}.home-v31 .ct31-fulltown-copy small{font-size:.58rem;color:#c2dbe8}.home-v31 .ct31-fulltown-copy>span{display:block;height:4px;margin-top:5px;background:#020c1a;border-radius:9px;overflow:hidden}.home-v31 .ct31-fulltown-copy>span i{display:block;height:100%;background:linear-gradient(90deg,#af3dff,#5a70ff)}
@media(max-width:1500px){.home-v31 .ct31-layout{grid-template-columns:290px minmax(0,1fr) 330px}.home-v31 .ct31-today-grid>article{grid-template-columns:94px minmax(0,1fr)}.home-v31 .ct31-today-art{width:94px;height:100px}.home-v31 .ct31-app-art{height:126px;flex-basis:126px}.home-v31 .ct31-play>div{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1180px){.home-v31 .ct31-layout{grid-template-columns:280px minmax(0,1fr)}.home-v31 .ct31-right{grid-column:1/-1;grid-template-columns:1.4fr 1fr 1fr}.home-v31 .ct31-appgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-v31 .ct31-capsule{grid-template-columns:1fr 150px 160px}.home-v31 .ct31-fulltown>div{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.home-v31 .ct31-topbar{align-items:flex-start;flex-direction:column}.home-v31 .ct31-layout{grid-template-columns:1fr}.home-v31 .ct31-player{display:grid;grid-template-columns:220px 1fr}.home-v31 .ct31-player-art{height:250px}.home-v31 .ct31-right{grid-template-columns:1fr}.home-v31 .ct31-today-grid{grid-template-columns:1fr}.home-v31 .ct31-capsule{grid-template-columns:1fr}.home-v31 .ct31-capsule>img{justify-self:center}.home-v31 .ct31-fulltown>div{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){main.home-v31{padding:5px!important}.home-v31 .ct31-shell{padding:7px}.home-v31 .ct31-player{grid-template-columns:1fr}.home-v31 .ct31-player-art{height:220px}.home-v31 .ct31-topstats{display:grid;grid-template-columns:1fr;width:100%}.home-v31 .ct31-appgrid{grid-template-columns:1fr}.home-v31 .ct31-play>div{grid-template-columns:1fr 1fr}.home-v31 .ct31-fulltown>div{grid-template-columns:repeat(2,1fr)}}

/* ---------- K-2 SAFE-TAC-TOE: isolated stable board ---------- */
main.arcade-young-v30 .k2tt-shell{margin-top:12px;padding:16px;border-radius:22px;background:#eef9ff;border:1px solid #bddceb;color:#12314d}
main.arcade-young-v30 .k2tt-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:11px 14px;border-radius:15px;background:#fff;border:1px solid #c5deea}
main.arcade-young-v30 .k2tt-header span{display:block;color:#087db8;font-size:.68rem;font-weight:1000}
main.arcade-young-v30 .k2tt-header h2{margin:.1rem 0;font-size:1.6rem}
main.arcade-young-v30 .k2tt-header p{margin:.2rem 0;color:#526d83}
main.arcade-young-v30 .k2-listen{width:auto!important;margin:0!important;padding:10px 16px!important;border-radius:999px!important;background:linear-gradient(#ffd447,#f0a01b)!important;color:#4d2b00!important;border:2px solid #ffe887!important;font-weight:1000!important}
main.arcade-young-v30 .k2-speech-status{display:block;min-height:1.2em;margin-top:4px;color:#fff}
main.arcade-young-v30 .k2tt-stage{display:grid;grid-template-columns:170px minmax(420px,620px) 170px;gap:16px;justify-content:center;align-items:center;margin-top:14px}
main.arcade-young-v30 .k2tt-player{text-align:center}.k2tt-player img{width:150px;height:150px;object-fit:contain}.k2tt-player span,.k2tt-player strong{display:block}.k2tt-player span{font-size:.68rem;color:#087db8;font-weight:1000}.k2tt-player strong{font-size:1.1rem}
main.arcade-young-v30 .k2tt-game{min-width:0}
main.arcade-young-v30 .k2tt-status{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:12px 12px 0 0;background:#071d3b;color:#fff;border:2px solid #34c8f0;border-bottom:0}
main.arcade-young-v30 .k2tt-status span{font-size:.68rem;color:#69e4ff;font-weight:1000}
main.arcade-young-v30 .k2tt-status strong{font-size:1rem!important;line-height:1!important;color:#fff!important;margin:0!important;padding:0!important}
main.arcade-young-v30 .k2tt-board{width:100%!important;aspect-ratio:1/1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:7px!important;padding:8px!important;box-sizing:border-box!important;border-radius:0 0 18px 18px!important;background:linear-gradient(145deg,#0c8bc1,#6a42dc)!important;overflow:hidden!important}
main.arcade-young-v30 .k2tt-cell{position:relative!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:5px!important;display:grid!important;place-items:center!important;border:0!important;border-radius:13px!important;background:#071d3a!important;overflow:hidden!important;font-size:initial!important;line-height:normal!important}
main.arcade-young-v30 .k2tt-cell:hover{background:#0b3159!important}
main.arcade-young-v30 .k2tt-cell img{width:88%!important;height:88%!important;max-width:88%!important;max-height:88%!important;object-fit:contain!important}
main.arcade-young-v30 .k2tt-cell.winner{outline:5px solid #ffe15a!important;box-shadow:0 0 20px #ffd84f!important}
main.arcade-young-v30 #k2Message{text-align:center;margin:.7rem 0 0;font-size:1rem;font-weight:900}
main.arcade-young-v30 .k2tt-prompt{max-width:700px;margin:14px auto 0;padding:17px;border-radius:18px;background:#082b4e;color:#fff;border:2px solid #5ee1ff;text-align:center}
main.arcade-young-v30 .k2tt-prompt>span{display:block;color:#69e5ff;font-size:.66rem;font-weight:1000}
main.arcade-young-v30 .k2tt-prompt h2{font-size:1.9rem;margin:.3rem 0}
main.arcade-young-v30 #k2Answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}
main.arcade-young-v30 #k2Answers button{height:82px;margin:0!important;font-size:1.5rem;font-weight:1000}
main.arcade-young-v30 #k2Answers button.correct{background:#35cc82!important;color:#073b23!important;border-color:#7cf0b9!important}
main.arcade-young-v30 #k2Answers button.wrong{background:#ff6277!important;color:#4b0714!important;border-color:#ff9cab!important}
main.arcade-young-v30 #k2Continue{width:auto;margin:8px auto 0}
main.arcade-young-v30 .k2tt-finish{position:fixed;z-index:999;inset:0;padding:20px;display:grid;place-items:center;align-content:center;text-align:center;background:#031023e8;color:#fff}
main.arcade-young-v30 .k2tt-finish[hidden]{display:none}
main.arcade-young-v30 .k2tt-finish img{width:190px;height:190px;object-fit:contain}
main.arcade-young-v30 .k2tt-finish span{color:#64e4ff;font-weight:1000}
main.arcade-young-v30 .k2tt-finish h2{font-size:2.4rem;margin:.2rem}
main.arcade-young-v30 .k2tt-finish button,main.arcade-young-v30 .k2tt-finish a{width:auto;margin:7px auto;padding:11px 17px;border-radius:11px;font-weight:1000;text-decoration:none}
main.arcade-young-v30 .k2tt-finish a{border:1px solid #62e2ff;color:#fff}
@media(max-width:900px){main.arcade-young-v30 .k2tt-stage{grid-template-columns:1fr}.k2tt-player{display:none}}
@media(max-width:560px){main.arcade-young-v30 #k2Answers{grid-template-columns:1fr}}

/* ---------- EXISTING GAMEWORLD TAC-SEC-TOE: protect working board ---------- */
main.gameworld-v31 .tst-board-stage{position:relative!important;display:block!important;width:100%!important;max-width:720px!important;margin:0 auto!important;padding:14px!important;box-sizing:border-box!important}
main.gameworld-v31 .tst-board-live{position:relative!important;width:100%!important;aspect-ratio:1/1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:10px!important;padding:10px!important;box-sizing:border-box!important;overflow:hidden!important}
main.gameworld-v31 .tst-live-cell{position:relative!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:6px!important;display:grid!important;place-items:center!important;overflow:hidden!important;font-size:initial!important;line-height:normal!important}
main.gameworld-v31 .tst-live-cell img{width:86%!important;height:86%!important;max-width:86%!important;max-height:86%!important;object-fit:contain!important}
main.gameworld-v31 .tst-arena-titlebar strong{font-size:1rem!important;line-height:1.2!important;margin:0!important;padding:0!important}

/* ===== CyberGlitch v3.2 regression repair ===== */

/* Home cards: art and copy cannot overlap */
.home-v31 .ct31-app{position:relative!important;display:grid!important;grid-template-rows:150px minmax(136px,auto)!important;height:auto!important;min-height:286px!important;overflow:hidden!important}
.home-v31 .ct31-app-art{position:relative!important;width:100%!important;height:150px!important;min-height:150px!important;max-height:150px!important;padding:10px!important;box-sizing:border-box!important;overflow:hidden!important}
.home-v31 .ct31-app-art img{position:static!important;display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;margin:0!important}
.home-v31 .ct31-app-copy{position:relative!important;width:100%!important;min-height:136px!important;padding:12px 14px!important;box-sizing:border-box!important;background:#f7fbff!important;color:#102941!important;z-index:2!important}
.home-v31 .ct31-app-copy strong{font-size:1rem!important;line-height:1.25!important}.home-v31 .ct31-app-copy p{font-size:.79rem!important;line-height:1.38!important;color:#49677f!important}.home-v31 .ct31-app-copy span{font-size:.73rem!important}
.home-v31 .ct31-app.app-mycorner .ct31-app-art img{width:88%!important;height:88%!important;margin:auto!important}

/* Safe-Tac-Toe */
main.arcade-young-v30 .k2v32-shell{margin-top:14px;padding:18px;border-radius:22px;background:#eef9ff;border:1px solid #bddceb;color:#12314d}
main.arcade-young-v30 .k2v32-header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 15px;border-radius:15px;background:#fff;border:1px solid #c3ddea}
main.arcade-young-v30 .k2v32-header span{display:block;color:#087db8;font-size:.72rem;font-weight:1000}main.arcade-young-v30 .k2v32-header h2{margin:.1rem 0;font-size:1.8rem}main.arcade-young-v30 .k2v32-header p{margin:.25rem 0;color:#4b687f;font-size:1rem;line-height:1.4}
main.arcade-young-v30 .k2v32-listen{width:auto!important;min-width:120px!important;margin:0!important;padding:12px 18px!important;border-radius:999px!important;background:linear-gradient(#ffd548,#eea01c)!important;color:#4d2b00!important;border:2px solid #ffec90!important;font-size:1rem!important;font-weight:1000!important}
main.arcade-young-v30 .k2v32-speech-status{min-height:1.4em;margin:8px 0 0;text-align:center;color:#0b608e;font-size:.9rem;font-weight:900}
main.arcade-young-v30 .k2v32-stage{display:grid;grid-template-columns:180px minmax(430px,640px) 180px;gap:18px;justify-content:center;align-items:center;margin-top:12px}
main.arcade-young-v30 .k2v32-player{text-align:center}main.arcade-young-v30 .k2v32-player img{width:165px;height:165px;object-fit:contain}main.arcade-young-v30 .k2v32-player span,main.arcade-young-v30 .k2v32-player strong{display:block}main.arcade-young-v30 .k2v32-player span{color:#087db8;font-size:.72rem;font-weight:1000}main.arcade-young-v30 .k2v32-player strong{font-size:1.15rem}
main.arcade-young-v30 .k2v32-status{display:flex;justify-content:space-between;align-items:center;padding:10px 13px;border-radius:13px 13px 0 0;background:#071d3b;color:#fff;border:2px solid #35c9ef;border-bottom:0}main.arcade-young-v30 .k2v32-status span{color:#6be4ff;font-size:.72rem;font-weight:1000}main.arcade-young-v30 .k2v32-status strong{font-size:1.05rem!important;color:#fff!important}
main.arcade-young-v30 .k2v32-board{width:100%!important;aspect-ratio:1/1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:9px!important;box-sizing:border-box!important;background:linear-gradient(145deg,#0a89c1,#6942dc)!important;border-radius:0 0 18px 18px!important}
main.arcade-young-v30 .k2v32-cell{position:relative!important;display:grid!important;place-items:center!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:6px!important;border:0!important;border-radius:14px!important;background:#071d39!important;overflow:hidden!important}
main.arcade-young-v30 .k2v32-cell img{display:block!important;width:90%!important;height:90%!important;max-width:90%!important;max-height:90%!important;object-fit:contain!important}main.arcade-young-v30 .k2v32-cell.winner{outline:5px solid #ffe15b!important;box-shadow:0 0 22px #ffd84f!important}main.arcade-young-v30 #k2v32Message{text-align:center;font-size:1.1rem;font-weight:900;margin:.8rem 0 0}
main.arcade-young-v30 .k2v32-prompt{max-width:760px;margin:16px auto 0;padding:20px;border-radius:20px;background:#082c50;color:#fff;border:2px solid #5ee2ff}main.arcade-young-v30 .k2v32-prompt-top{display:flex;justify-content:space-between;align-items:start;gap:15px}main.arcade-young-v30 .k2v32-prompt-top>div{min-width:0}main.arcade-young-v30 .k2v32-prompt span{display:block;color:#6be5ff;font-size:.72rem;font-weight:1000}main.arcade-young-v30 .k2v32-prompt h2{font-size:1.8rem;margin:.25rem 0 .15rem;line-height:1.2}main.arcade-young-v30 .k2v32-prompt #k2v32QuestionHelp{margin:.2rem 0 .7rem;font-size:1.15rem;line-height:1.4;color:#e8f7ff;font-weight:800}
main.arcade-young-v30 #k2v32Answers{display:grid;grid-template-columns:1fr 1fr;gap:14px}main.arcade-young-v30 #k2v32Answers button{min-height:90px;margin:0!important;padding:15px!important;font-size:1.45rem!important;font-weight:1000!important}main.arcade-young-v30 #k2v32Answers button.correct{background:#36ce84!important;color:#063b23!important;border-color:#83f0bd!important}main.arcade-young-v30 #k2v32Answers button.wrong{background:#ff6378!important;color:#4b0715!important;border-color:#ffa3b0!important}main.arcade-young-v30 #k2v32Feedback{min-height:1.4em;font-size:1.05rem;font-weight:900;text-align:center}main.arcade-young-v30 #k2v32Continue{display:block;width:auto;margin:10px auto 0}
main.arcade-young-v30 .k2v32-finish{position:fixed;z-index:999;inset:0;padding:20px;display:grid;place-items:center;align-content:center;text-align:center;background:#031023e8;color:#fff}main.arcade-young-v30 .k2v32-finish[hidden]{display:none}main.arcade-young-v30 .k2v32-finish img{width:200px;height:200px;object-fit:contain}main.arcade-young-v30 .k2v32-finish span{color:#65e5ff;font-weight:1000}main.arcade-young-v30 .k2v32-finish h2{font-size:2.5rem;margin:.2rem}main.arcade-young-v30 .k2v32-finish button,main.arcade-young-v30 .k2v32-finish a{width:auto;margin:8px auto;padding:12px 18px;border-radius:12px;font-weight:1000;text-decoration:none}main.arcade-young-v30 .k2v32-finish a{border:1px solid #64e4ff;color:#fff}
@media(max-width:900px){main.arcade-young-v30 .k2v32-stage{grid-template-columns:1fr}main.arcade-young-v30 .k2v32-player{display:none}}@media(max-width:580px){main.arcade-young-v30 .k2v32-prompt-top{display:block}main.arcade-young-v30 #k2v32Answers{grid-template-columns:1fr}}

/* GameWorld Tac-Sec-Toe: listen + larger K-2 text */
main.gameworld-v31 .tst-v32-tools{display:flex;gap:8px;align-items:center}main.gameworld-v31 .tst-v32-listen{width:auto!important;margin:0!important;padding:9px 14px!important;border-radius:999px!important;background:linear-gradient(#ffd548,#efa11d)!important;color:#4e2b00!important;border:2px solid #ffe889!important;font-size:.95rem!important;font-weight:1000!important}
main.gameworld-v31 .tst-v32-simple-help{margin:.3rem 0 .55rem!important;color:#e5f6ff!important;font-size:1.08rem!important;line-height:1.4!important;font-weight:800!important}main.gameworld-v31 .tst-v32-speech-status{min-height:1.3em;margin:.35rem 0!important;color:#7ce8ff!important;font-size:.92rem!important;font-weight:900!important}
main.gameworld-v31 .tst-challenge-window{max-width:720px!important;padding:22px!important}main.gameworld-v31 .tst-challenge-window h3{font-size:1.45rem!important;line-height:1.35!important;margin:.15rem 0!important}main.gameworld-v31 .tst-overlay-choices{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}main.gameworld-v31 .tst-overlay-answer{min-height:88px!important;margin:0!important;padding:14px!important;text-align:center!important;font-size:1.12rem!important;line-height:1.3!important}main.gameworld-v31 .tst-overlay-answer b{display:block!important;font-size:1.1rem!important;line-height:1.3!important}main.gameworld-v31 .tst-overlay-feedback{font-size:1.02rem!important;line-height:1.4!important}main.gameworld-v31 .tst-resume{font-size:1rem!important;padding:11px 15px!important}main.gameworld-v31 .tst-howto article,main.gameworld-v31 .tst-rule-strip span,main.gameworld-v31 .tst-event-card p{font-size:.92rem!important;line-height:1.4!important}
@media(max-width:650px){main.gameworld-v31 .tst-overlay-choices{grid-template-columns:1fr!important}}

/* ===== CyberGlitch v3.3 — one Tac-Sec-Toe + 5–9 Safe/Stop language ===== */
main.arcade-young-v30 .v33-sort-help{margin:.25rem 0 0!important;color:#4c677e!important;font-size:1rem!important;line-height:1.4!important}
main.arcade-young-v30 .v30-sort-card{width:min(700px,94%)!important;min-height:300px!important;padding:28px!important}
main.arcade-young-v30 .v30-sort-card h2{font-size:1.65rem!important;line-height:1.42!important;max-width:620px!important;margin:18px auto!important}
main.arcade-young-v30 .v30-sort-bins{max-width:700px!important;margin:0 auto!important;gap:18px!important}
main.arcade-young-v30 .v30-sort-bins button{height:120px!important;font-size:2.2rem!important;border-radius:18px!important}
main.arcade-young-v30 .v30-sort-stage>#sortMessage{min-height:3em!important;max-width:720px!important;margin:14px auto!important;font-size:1.08rem!important;line-height:1.45!important}
main.arcade-young-v30 .v33-sort-speech{min-height:1.3em!important;margin:4px 0 10px!important;color:#0b6c9c!important;font-size:.92rem!important;font-weight:900!important}
main.gameworld-v31 .tst-challenge-window h3{font-size:1.5rem!important;line-height:1.42!important;max-width:620px!important}
main.gameworld-v31 .tst-overlay-answer{font-size:1.15rem!important;line-height:1.35!important}

/* ===== CyberGlitch v3.4 — clean art boxes + reliable bundled audio ===== */
.rendered-sportsgrid .sport-card-art.clean-athlete-art{
  position:relative!important;
  height:220px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:radial-gradient(circle at 50% 45%,#124f7e,#06162f 74%)!important;
}
.rendered-sportsgrid .sport-card-art.clean-athlete-art img{
  position:static!important;
  width:92%!important;
  height:92%!important;
  max-width:92%!important;
  max-height:92%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
  transform:none!important;
}
.rendered-sportsgrid .sport-card-art.clean-athlete-art::before,
.rendered-sportsgrid .sport-card-art.clean-athlete-art::after{
  content:none!important;
  display:none!important;
}
.rendered-sportsgrid .rendered-sportcard strong{
  display:block!important;
  margin:12px 14px 4px!important;
  font-size:1.35rem!important;
  line-height:1.2!important;
}
.rendered-sportsgrid .rendered-sportcard small{
  display:block!important;
  margin:0 14px 10px!important;
  font-size:.92rem!important;
  line-height:1.4!important;
}
.rendered-sportsgrid .rendered-sportcard em{
  display:block!important;
  margin:auto 14px 14px!important;
}

/* ===== CyberGlitch Arcade full-art/full-text fix 2026-08-18 ===== */
/* The game art itself contains title/instruction text. Never crop it. */
.v26-cabinets {
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr)) !important;
    align-items: stretch !important;
}
.v26-cabinet {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
    min-width: 0 !important;
    height: auto !important;
}
.v26-cabinet-screen {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 240 / 164 !important;
    padding: 10px !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.v26-cabinet-screen img,
.v26-cabinet-screen.v26-crop-link img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    clip-path: none !important;
}
.v26-cabinet-copy {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}
.v26-cabinet-copy span,
.v26-cabinet-copy strong,
.v26-cabinet-copy small,
.v26-cabinet-copy b {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
}
.v26-cabinet-copy small {
    min-height: 0 !important;
    line-height: 1.35 !important;
}
.v26-cabinet-copy b {
    margin-top: auto !important;
    padding-top: 12px !important;
}
@media (max-width: 1100px) {
    .v26-cabinets { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 650px) {
    .v26-cabinets { grid-template-columns: 1fr !important; }
}

/* ===== CyberGlitch FINAL arcade no-crop/no-clipping fix 2026-08-18 ===== */
.v26-arcade,
.v26-arcade-floor,
.v26-cabinets,
.v26-cabinet,
.v26-cabinet-screen,
.v26-cabinet-copy,
.arcade-main-v26,
.arcade-rebuild,
.cg-arcade-wrap,
.cg-floor,
.cg-cabinets,
.cg-cabinet,
.cg-screen,
.cg-cab-copy {
    overflow: visible !important;
    max-height: none !important;
}
.v26-cabinets,
.cg-cabinets {
    grid-auto-rows: max-content !important;
    align-items: start !important;
}
.v26-cabinet,
.cg-cabinet {
    height: auto !important;
    min-height: 0 !important;
    align-self: start !important;
}
.v26-cabinet-screen,
.v26-cabinet-screen.v26-crop-link,
.cg-screen {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    padding: 10px !important;
    display: block !important;
    clip-path: none !important;
    transform: none !important;
}
.v26-cabinet-screen img,
.v26-cabinet-screen.v26-crop-link img,
.cg-screen img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    clip-path: none !important;
    transform: none !important;
}
.v26-cabinet-copy,
.cg-cab-copy {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
}
.v26-cabinet-copy *,
.cg-cab-copy * {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
}
.v26-cabinet-copy small,
.cg-cab-copy p {
    min-height: 0 !important;
    line-height: 1.4 !important;
}
.v26-cabinet-copy b,
.cg-cab-copy b {
    margin-top: 12px !important;
    padding-top: 0 !important;
}

/* v018 Mystery Data Capsule visual refresh */
main.capsule-main-v29{max-width:1380px!important}
.v29-capsule-hero{
 background:radial-gradient(circle at 78% 50%,rgba(113,56,255,.28),transparent 28%),linear-gradient(145deg,#071832,#0b1740)!important;
 border:2px solid #29dbff!important;
 box-shadow:0 0 24px #1ad9ff33!important;
}
.v29-capsule-hero h1{color:#fff!important;text-shadow:0 0 13px #8c55ff88}
.v29-capsule-hero p{color:#d9efff!important}
.v29-capsule-hero>img{width:290px!important;height:240px!important;object-fit:contain!important}
.v29-capsule-stage{grid-template-columns:470px minmax(0,1fr)!important;background:radial-gradient(circle at 28% 48%,#272064,#091c3d 52%,#041126 100%)!important;border:2px solid #7c52ff!important;box-shadow:0 0 30px #4d4fff33!important}
.v29-capsule-art{height:420px!important}
.v29-capsule-art img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 22px 28px #0009)!important}
@media(max-width:780px){.v29-capsule-stage{grid-template-columns:1fr!important}.v29-capsule-art{height:320px!important}}

.v29-capsule-hero>img{width:340px!important;height:310px!important}.v29-capsule-art{height:510px!important}.v29-capsule-art img{width:100%!important;height:100%!important;object-fit:contain!important}

/* v020 capsule */
.v29-capsule-hero{background:linear-gradient(145deg,#081936,#17104b)!important;border:2px solid #42e5ff!important}
.v29-capsule-hero h1{color:#fff!important}.v29-capsule-hero p{color:#d9edff!important}
.v29-capsule-hero>img{width:360px!important;height:300px!important;object-fit:cover!important;border-radius:24px!important}
.v29-capsule-stage{background:radial-gradient(circle at 28% 50%,#251969,#071936 55%,#031023)!important;border:2px solid #9b55ff!important}
.v29-capsule-art{height:470px!important}.v29-capsule-art img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:24px!important;box-shadow:0 0 30px #5be7ff44!important}
