:root{
  --bg:#050a10;--bg2:#08121d;--panel:#0b1824;--panel2:#102231;--line:#29465b;
  --accent:#f4c16d;--accent2:#ffe0a1;--cool:#67c8ea;--text:#edf3f7;--muted:#91a6b7;
  --good:#70d6a4;--warn:#f2c566;--bad:#ff8b8b;--shadow:0 18px 60px rgba(0,0,0,.34);
}
*{box-sizing:border-box}html{background:#03070b}body{margin:0;min-height:100vh;color:var(--text);font:15px/1.48 Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at 78% 5%,#183750 0,#08131f 38%,#050a10 100%)}
button,input,select,textarea{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow,.tag{color:var(--accent);letter-spacing:.2em;font-size:11px;text-transform:uppercase}.row{display:flex;gap:12px;align-items:center}.between{display:flex;justify-content:space-between;gap:14px;align-items:center}.stack{display:grid;gap:12px}
.btn{border:1px solid var(--line);background:#0b1b28;color:var(--text);padding:10px 14px;border-radius:10px;cursor:pointer;transition:.16s}.btn:hover{border-color:#4f7e9b;transform:translateY(-1px)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#101010;font-weight:800}.btn.gold{border-color:var(--accent);color:var(--accent)}.btn.ghost{background:transparent}.btn.good{border-color:#3c936b;color:#a4e4c4}.btn.bad{border-color:#994d4d;color:#ffb6b6}.btn.smallbtn{padding:7px 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid #37627c;border-radius:999px;color:#c4eafa;background:#0c1d2b;font-size:11px;letter-spacing:.05em}.status.good{border-color:#357b5c;color:#a8e7c8}.status.warn{border-color:#806328;color:#f8d983}.status.bad{border-color:#8c4949;color:#ffb1b1}
.circle{display:inline-block;width:22px;height:22px;border:2px solid var(--accent);border-right-color:transparent;border-radius:50%;position:relative;vertical-align:middle}.circle:after{content:'';position:absolute;width:5px;height:5px;background:var(--accent);border-radius:50%;right:-6px;top:-4px;box-shadow:0 0 12px var(--accent)}
/* Platform landing */
.platformHero{min-height:100vh;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(3,8,14,.15),rgba(3,8,14,.86)),url('assets/portal-master.png') center 45%/cover;display:flex;flex-direction:column}.platformHero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,transparent 0,rgba(2,6,10,.12) 45%,rgba(2,6,10,.72) 100%)}
.platformNav{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:22px 32px}.platformBrand{font-weight:750;letter-spacing:.2em;font-size:14px}.platformBrand b{color:var(--accent)}.platformNavActions{display:flex;gap:10px}.landingCopy{position:relative;z-index:2;margin:auto auto 8vh;max-width:870px;width:calc(100% - 40px);text-align:center}.landingCopy h1{font-size:clamp(40px,7vw,86px);line-height:.96;letter-spacing:.11em;margin:0;text-shadow:0 10px 50px #000}.landingCopy .promise{font-size:clamp(17px,2.1vw,25px);color:#f5d89c;letter-spacing:.18em;margin:18px 0 10px}.landingCopy p{max-width:650px;margin:0 auto 25px;color:#d3dce3;font-size:17px}.landingActions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.landingFooter{position:relative;z-index:2;padding:0 32px 24px;color:#8298a8;font-size:11px;display:flex;justify-content:space-between;gap:20px;letter-spacing:.08em}.beyond{display:flex;align-items:center;gap:9px;color:#c4af7e}
/* Auth */
.authScreen{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#050b11}.authArt{background:linear-gradient(180deg,rgba(3,8,14,.15),rgba(3,8,14,.5)),url('assets/portal-master.png') center/cover;position:relative}.authArt .quote{position:absolute;left:38px;bottom:38px;max-width:520px}.authArt h2{font:34px/1.15 Georgia,serif;margin:4px 0}.authPane{display:grid;place-items:center;padding:40px}.authCard{width:min(460px,100%);border:1px solid var(--line);border-radius:18px;background:#081722;padding:27px;box-shadow:var(--shadow)}.authCard h1{margin:7px 0}.field{display:grid;gap:6px;margin:12px 0}.field label{font-size:12px;color:#bdcbd5}.input,select,textarea{width:100%;background:#07131d;color:var(--text);border:1px solid #2d4b60;border-radius:9px;padding:10px 11px;outline:none}.input:focus,select:focus,textarea:focus{border-color:var(--cool)}
/* My Universes */
.libraryShell{min-height:100vh;background:radial-gradient(circle at 10% 0,#152b3d 0,#07111a 34%,#04090e 100%)}.libraryTop{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 30px;border-bottom:1px solid #203649;background:#06101bd9;backdrop-filter:blur(10px);position:sticky;top:0;z-index:5}.libraryBrand{letter-spacing:.18em;font-weight:800}.libraryMain{max-width:1320px;margin:auto;padding:34px 30px 60px}.libraryIntro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.libraryIntro h1{font-size:34px;margin:4px 0}.universeGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.universeCard{min-height:260px;position:relative;border-radius:18px;overflow:hidden;border:1px solid #355167;box-shadow:var(--shadow);cursor:pointer;transition:.2s}.universeCard:hover{transform:translateY(-3px);border-color:#8aa5b7}.universeCard:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.8))}.universeCard .ucopy{position:absolute;z-index:2;left:22px;right:22px;bottom:20px}.universeCard h2{font-size:28px;margin:4px 0}.universeCard .meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.sportFootball{background:linear-gradient(135deg,#7c1f1f,#10161d 60%),radial-gradient(circle at 70% 20%,#efba65,transparent 35%)}.sportCourts{background:linear-gradient(135deg,#4c2079,#0b1f35 58%),radial-gradient(circle at 70% 15%,#46c4ff,transparent 35%)}.bookGlass{background:linear-gradient(135deg,#14384f,#091018 58%),radial-gradient(circle at 70% 15%,#a8eef2,transparent 32%)}.bookEmbers{background:linear-gradient(135deg,#6a2914,#17100b 58%),radial-gradient(circle at 72% 18%,#f08b39,transparent 33%)}.universeGlyph{position:absolute;right:18px;top:16px;z-index:2;font-size:56px;opacity:.55;filter:drop-shadow(0 4px 12px #000)}
/* Universe shell */
.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh;background:var(--universe-bg,#07111c);color:var(--universe-text,#edf3f7)}.side{border-right:1px solid var(--universe-line,#29465b);padding:20px 15px;background:var(--universe-side,#06101bd9);position:sticky;top:0;height:100vh}.universeBrand{display:flex;gap:11px;align-items:center}.uBadge{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--universe-accent,#f4c16d);color:#101010;font-weight:900;box-shadow:0 0 22px color-mix(in srgb,var(--universe-accent,#f4c16d) 25%, transparent)}.uTitle{font-weight:800;line-height:1.05}.uSub{font-size:11px;color:var(--universe-muted,#91a6b7);margin-top:4px}.rolepill{margin:22px 0 13px;padding:10px;border:1px solid var(--universe-line,#29465b);border-radius:11px;background:color-mix(in srgb,var(--universe-panel,#0b1824) 90%, transparent)}.navlist{display:grid;gap:6px}.nav{border:1px solid transparent;background:transparent;color:var(--universe-muted,#91a6b7);padding:10px 11px;border-radius:10px;cursor:pointer;text-align:left}.nav:hover,.nav.active{color:var(--universe-text,#edf3f7);border-color:var(--universe-line,#29465b);background:var(--universe-panel2,#102231)}.nav .nicon{display:inline-block;width:25px;color:var(--universe-accent,#f4c16d)}.sidebottom{position:absolute;bottom:18px;left:15px;right:15px}.main{padding:26px 30px 55px;max-width:1500px;width:100%}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.topbar h1{margin:3px 0 0;font-size:28px}.panel,.card,.kpi{border:1px solid var(--universe-line,#29465b);background:linear-gradient(145deg,var(--universe-panel2,#102231),var(--universe-panel,#0b1824));border-radius:14px;box-shadow:0 8px 25px rgba(0,0,0,.15)}.panel{padding:18px}.card{padding:16px}.card.clickable{cursor:pointer}.card.clickable:hover{border-color:var(--universe-accent,#f4c16d)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:16px 0}.kpi{padding:17px}.kpi .num{font-size:27px;font-weight:800;margin-top:4px}.kpi .label{color:var(--universe-muted,#91a6b7);font-size:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.section{margin-top:22px}.sectionTitle{font-size:16px;letter-spacing:.1em;margin:0 0 11px}.divider{height:1px;background:var(--universe-line,#29465b);margin:16px 0}.list{display:grid;gap:9px}.listitem{border:1px solid var(--universe-line,#29465b);background:color-mix(in srgb,var(--universe-panel,#0b1824) 90%,transparent);border-radius:11px;padding:12px 13px}.listitem strong{display:block}.success{border-left:3px solid var(--good);padding-left:12px}.warning{border-left:3px solid var(--warn);padding-left:12px}.danger{border-left:3px solid var(--bad);padding-left:12px}
.teamHeader{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.teamBadge{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#631c1c,#16090b);border:1px solid #9a4646;font-weight:900;color:#ffd789;font-size:20px}.teamBadge.tt{background:linear-gradient(145deg,#0c4262,#08141d);border-color:#3876a0;color:#9de5ff}.readiness{display:flex;gap:7px;flex-wrap:wrap}.matchup{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;text-align:center;padding:22px}.matchup .versus{font-size:22px;color:var(--universe-accent,#f4c16d);font-weight:800}.teamtile{padding:16px;border:1px solid var(--universe-line,#29465b);border-radius:13px;background:var(--universe-panel,#0b1824)}.manifest{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;white-space:pre-wrap;color:#bad1df;background:#06111b;border:1px solid #203b4e;border-radius:11px;padding:14px;max-height:320px;overflow:auto}.actionGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.actionCard{padding:17px;border:1px solid var(--universe-line,#29465b);border-radius:12px;background:var(--universe-panel,#0b1824);cursor:pointer}.actionCard:hover{border-color:var(--universe-accent,#f4c16d)}.outputbox{min-height:110px;border:1px dashed var(--universe-line,#29465b);border-radius:12px;padding:14px;background:#06121c;color:#c9d8e1}.rating{display:flex;gap:7px;flex-wrap:wrap}.rating button.active{border-color:var(--universe-accent,#f4c16d);color:var(--universe-accent,#f4c16d)}
.bookHero{min-height:250px;border:1px solid var(--universe-line);border-radius:18px;padding:28px;display:flex;align-items:end;background:linear-gradient(180deg,transparent,#05090dcc),radial-gradient(circle at 75% 25%,color-mix(in srgb,var(--universe-accent) 45%,transparent),transparent 32%),var(--universe-panel);box-shadow:var(--shadow)}.bookHero h1{font:42px/1.05 Georgia,serif;margin:5px 0}.lore{font:17px/1.6 Georgia,serif;color:#dbe2e8}.chapter{padding:14px;border-left:3px solid var(--universe-accent);background:var(--universe-panel);border-radius:0 10px 10px 0}.charGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.charCard{min-height:160px;border:1px solid var(--universe-line);border-radius:14px;padding:16px;background:linear-gradient(160deg,var(--universe-panel2),var(--universe-panel))}
.modalback{position:fixed;inset:0;background:#000a;display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(680px,100%);max-height:90vh;overflow:auto;border:1px solid #45667c;border-radius:16px;background:#081621;padding:20px;box-shadow:var(--shadow)}.toast{position:fixed;right:18px;bottom:18px;background:#122a38;border:1px solid #3d657d;color:#eaf5fa;padding:11px 14px;border-radius:10px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:1000px){.kpis{grid-template-columns:1fr 1fr}.grid3,.charGrid{grid-template-columns:1fr 1fr}.universeGrid{grid-template-columns:1fr 1fr}.actionGrid{grid-template-columns:1fr 1fr}.authScreen{grid-template-columns:1fr}.authArt{min-height:36vh}}
@media(max-width:780px){.platformNav{padding:18px}.platformNav .platformBrand{font-size:12px}.landingFooter{padding:0 18px 18px}.libraryTop{padding:16px 18px}.libraryMain{padding:24px 18px 50px}.libraryIntro{align-items:flex-start;flex-direction:column}.universeGrid{grid-template-columns:1fr}.shell{grid-template-columns:1fr}.side{height:auto;position:relative;border-right:0;border-bottom:1px solid var(--universe-line);padding:14px}.navlist{display:flex;overflow-x:auto}.nav{white-space:nowrap}.sidebottom{position:static;margin-top:12px}.main{padding:20px 16px 45px}.grid2,.grid3,.charGrid,.actionGrid{grid-template-columns:1fr}.kpis{grid-template-columns:1fr 1fr}.matchup{grid-template-columns:1fr}.authPane{padding:24px}.authArt .quote{left:22px;bottom:22px}.platformHero{min-height:100svh}}
@media(max-width:480px){.kpis{grid-template-columns:1fr}.landingCopy h1{letter-spacing:.06em}.platformNavActions .btn.ghost{display:none}.landingFooter{flex-direction:column;align-items:center;text-align:center}}
/* v0.4 — scalable World Portal system */
.universeGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.worldPortal{position:relative;min-height:470px;border:1px solid #32495b;border-radius:18px;overflow:hidden;background:#071019;cursor:pointer;box-shadow:0 20px 55px #0009;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.worldPortal:hover{transform:translateY(-6px);border-color:#d8aa5c;box-shadow:0 28px 70px #000c,0 0 0 1px #d8aa5c33}
.portalFrame{position:absolute;inset:0 0 145px;overflow:hidden;background:#08111a}
.portalScene{position:absolute;inset:0;background-image:var(--portal-image),linear-gradient(135deg,#18334a,#091019);background-size:cover;background-position:center;transform:scale(1.01);transition:transform .65s ease,filter .4s ease}
.worldPortal:hover .portalScene{transform:scale(1.07);filter:saturate(1.12) brightness(1.05)}
.portalFrame:before{content:'';position:absolute;z-index:2;inset:14px;border:2px solid #d5a45188;border-radius:120px 120px 18px 18px;box-shadow:inset 0 0 28px #e7b35a30,0 0 22px #e7b35a18;pointer-events:none}
.portalGlow{position:absolute;z-index:2;inset:auto 12% -12px;height:60px;background:radial-gradient(ellipse,#e5ad5366,transparent 65%);filter:blur(8px)}
.portalCopy{position:absolute;z-index:3;left:0;right:0;bottom:0;min-height:165px;padding:20px;background:linear-gradient(180deg,#071019dd,#050a0fff);border-top:1px solid #314657}
.portalCopy h2{margin:4px 0 7px;font-size:22px}.portalCopy p{font-size:13px;line-height:1.45;color:#a9bac7;min-height:38px;margin:0 0 10px}.portalCopy .meta{display:flex;gap:7px;margin-bottom:12px}.portalEnter{width:100%;padding:10px 12px;border-color:#d5a451;color:#f4d59a;background:#c8953420}.worldPortal:hover .portalEnter{background:#c8953433}
.worldPortal.sportFootball .portalFrame:after{content:'FFU';position:absolute;z-index:2;top:28px;left:50%;transform:translateX(-50%);padding:6px 14px;border:1px solid #fff4;border-radius:8px;background:#071019aa;color:#fff;font-weight:800;letter-spacing:.14em}
.worldPortal.sportCourts .portalFrame:before{border-color:#9a7cff99;box-shadow:inset 0 0 30px #9a7cff33,0 0 24px #9a7cff22}.worldPortal.bookGlass .portalFrame:before{border-color:#8ee4e899}.worldPortal.bookEmbers .portalFrame:before{border-color:#ee8e4799}
@media(max-width:1150px){.universeGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.universeGrid{grid-template-columns:1fr}.worldPortal{min-height:500px}.portalFrame{inset:0 0 150px}}
/* v0.5 — Adaptive Universe Immersion */
.shell{position:relative;isolation:isolate;overflow-x:hidden}.shell>.side,.shell>.main{position:relative;z-index:2}.universeBackdrop{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .4s ease}
.ffuImmersed .universeBackdrop{opacity:.42;background-image:linear-gradient(180deg,#03101bcf 0%,#07111ce8 42%,#07111c 92%),linear-gradient(90deg,#10060888,#07111c33),url('assets/portal-ffu.jpg');background-size:cover;background-position:center 35%;filter:saturate(1.15) contrast(1.05);transform:scale(1.08)}
.ffuImmersed .side{backdrop-filter:blur(18px);background:linear-gradient(180deg,#09080ce8,#07111be0);border-right-color:#5d3d35}.ffuImmersed .uBadge{background:linear-gradient(145deg,#bb2028,#281014);color:#ffd36f;box-shadow:0 0 24px #d92d3560}.ffuImmersed .nav.active,.ffuImmersed .nav:hover{background:linear-gradient(90deg,#631c2a88,#172634cc);border-color:#9b4a52}.ffuImmersed .main{background:linear-gradient(180deg,#050b1199,#07111cd9 520px,#07111cf5)}
.ffuHero{position:relative;min-height:280px;border:1px solid #624143;border-radius:22px;overflow:hidden;background-image:linear-gradient(90deg,#09070b 0%,#0d1118aa 55%,#07111c44),url('assets/portal-ffu.jpg');background-size:cover;background-position:center 48%;box-shadow:0 24px 70px #0009;margin-bottom:18px}.ffuHero:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 25%,#e7b35a24,transparent 30%),linear-gradient(180deg,transparent,#05090ed8)}.ffuHeroShade{position:absolute;inset:0;background:linear-gradient(90deg,#14070dbb,#07111c2b 68%,#07111c99)}.ffuHeroContent{position:absolute;z-index:2;left:28px;right:28px;bottom:25px}.teamHeroRow{display:flex;justify-content:space-between;gap:18px;align-items:end}.teamHeroRow h1{font-size:36px;margin:4px 0 4px;letter-spacing:.01em}.teamHeroRow p{margin:0;color:#d3dde4}.teamMonogram{display:inline-block;border:1px solid #c45c61;background:#2a0e16cc;color:#f4c56d;padding:6px 10px;border-radius:8px;font-size:12px;font-weight:900;letter-spacing:.16em}.heroStatus{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.immersionGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.immersiveTile{position:relative;min-height:230px;border:1px solid #394858;border-radius:18px;overflow:hidden;cursor:pointer;background-size:cover;background-position:center;box-shadow:0 18px 45px #0007;transition:.25s ease}.immersiveTile:hover{transform:translateY(-4px);border-color:#c5965b;box-shadow:0 24px 55px #000b,0 0 0 1px #d7aa6230}.tileShade{position:absolute;inset:0;background:linear-gradient(180deg,#00000005 25%,#05080de8 91%),linear-gradient(90deg,#14070b66,transparent 70%)}.tileContent{position:absolute;z-index:2;left:18px;right:18px;bottom:17px}.tileContent h2{margin:4px 0 5px;font-size:21px}.tileContent p{margin:0;color:#bdc9d1;font-size:13px;line-height:1.4}.teamTileArt{background-image:radial-gradient(circle at 28% 23%,#df344f66,transparent 27%),linear-gradient(135deg,#3b101b,#07121d 58%),url('assets/world-portals-reference.png');background-position:center 38%}.matchupTileArt{background-image:linear-gradient(90deg,#50131fb2 0 43%,#0e637099 58% 100%),url('assets/portal-ffu.jpg');background-position:center}.stadiumTileArt{background-image:linear-gradient(180deg,#10233033,#06101be8),url('assets/portal-ffu.jpg');background-position:center 28%}.createTileArt{background-image:radial-gradient(circle at 72% 28%,#e5ac5b55,transparent 28%),linear-gradient(135deg,#13121f,#07101a),url('assets/portal-master.png');background-position:center 48%}.historyTileArt{background-image:linear-gradient(180deg,#07111c44,#07111cec),url('assets/world-portals-reference.png');background-position:35% center}.trashTileArt{background-image:radial-gradient(circle at 40% 30%,#c7294366,transparent 25%),linear-gradient(125deg,#42111d,#09131e 65%);}
@media(max-width:1050px){.immersionGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.ffuHero{min-height:330px}.teamHeroRow{align-items:flex-start;flex-direction:column}.teamHeroRow h1{font-size:30px}.immersionGrid{grid-template-columns:1fr}.immersiveTile{min-height:220px}.heroStatus{justify-content:flex-start}}

/* v0.6 authoritative FFU/DDD asset integration test */
.ffuHero{background-image:linear-gradient(90deg,#09070be8 0%,#0d111899 46%,#07111c33),url('assets/stadium/05_Field_Reveal.png');background-position:center 48%}
.teamTileArt{background-image:linear-gradient(180deg,#0002 15%,#05080dea 92%),url('assets/ddd/breed-roster-locked.png');background-position:center 43%}
.matchupTileArt{background-image:linear-gradient(90deg,#3510188c 0 55%,#07111c8c 100%),url('assets/ddd/victory-water-bucket-locked.png');background-position:center 34%}
.stadiumTileArt{background-image:linear-gradient(180deg,#10233022,#06101bdc),url('assets/stadium/01_Exterior_Establishing.png');background-position:center 42%}
.createTileArt{background-image:linear-gradient(180deg,#16090a33,#05080de8),url('assets/ddd/opening-ceremony-locked.png');background-position:center 42%}
.historyTileArt{background-image:linear-gradient(180deg,#07111c22,#07111cea),url('assets/ddd/truth77-liberty11-locked.png');background-position:center 32%}
.trashTileArt{background-image:linear-gradient(180deg,#00000005 20%,#05080de8 91%),url('assets/ddd/ddd-spray.png');background-position:center 47%}
.ffuHero,.immersiveTile{background-repeat:no-repeat}

/* v0.7 — Architecture-driven Adaptive Theme Adapter */
.ffuImmersed .universeBackdrop{background-image:linear-gradient(180deg,#03101bd6 0%,#07111ce6 42%,#07111cf5 92%),linear-gradient(90deg,#10060888,#07111c33),url('assets/stadium/11_Final_Aerial_Departure.png');}
.ffuHero{background-image:linear-gradient(90deg,#09070be8 0%,#0d111899 46%,#07111c33),var(--hero-image);background-position:center 48%;}
.immersiveTile{background-image:linear-gradient(180deg,#00000008 16%,#05080deb 92%),var(--tile-image);background-size:cover;background-position:center;}
.teamTileArt,.matchupTileArt,.stadiumTileArt,.createTileArt,.historyTileArt,.trashTileArt{background-image:linear-gradient(180deg,#00000008 16%,#05080deb 92%),var(--tile-image);}
.teamTileArt{background-position:center 43%}.matchupTileArt{background-position:center 34%}.stadiumTileArt{background-position:center 42%}.createTileArt{background-position:center 42%}.historyTileArt{background-position:center 32%}.trashTileArt{background-position:center 47%}
.teamMonogram{border-color:color-mix(in srgb,var(--team-accent,#d22630) 75%,white 25%);background:color-mix(in srgb,var(--team-accent,#d22630) 24%,#09080c 76%);color:var(--team-accent2,#d8a94a)}
.sectionTitleRow{align-items:center;margin-top:16px}.sectionTitleRow .sectionTitle{margin:0}.contextChip{font-size:11px;letter-spacing:.05em;color:#d9c59e;border:1px solid #6f5939;background:#171109b8;padding:6px 9px;border-radius:999px}
@media(max-width:700px){.sectionTitleRow{align-items:flex-start;flex-direction:column;gap:8px}.contextChip{white-space:normal}}

/* v0.8 Geographic / Stadium Environment Hub */
.environmentHero{position:relative;min-height:430px;border:1px solid var(--universe-line);border-radius:22px;overflow:hidden;background:var(--environment-image) center/cover no-repeat;box-shadow:0 24px 70px rgba(0,0,0,.34)}
.environmentShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,10,.86) 0%,rgba(5,8,10,.48) 48%,rgba(5,8,10,.12) 75%),linear-gradient(0deg,rgba(5,8,10,.68),transparent 50%)}
.environmentHeroCopy{position:absolute;z-index:2;left:34px;bottom:32px;max-width:700px}.environmentHeroCopy h1{font-size:clamp(34px,5vw,62px);line-height:.95;margin:7px 0 12px}.environmentHeroCopy p{font-size:16px;color:#d7e1e7;max-width:640px}
.geoGrid{display:grid;grid-template-columns:1.4fr .8fr;gap:14px}.geoIdentity h2{margin:5px 0 14px}.geoPath{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:13px 0 16px}.geoPath span{border:1px solid var(--universe-line);background:rgba(5,10,14,.55);padding:8px 10px;border-radius:999px;font-size:12px}.geoPath b{color:var(--universe-accent)}
.environmentZoneGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.environmentZone{position:relative;min-height:155px;border:1px solid var(--universe-line);border-radius:14px;overflow:hidden;cursor:pointer;background:var(--zone-image) center/cover no-repeat;color:#fff;padding:0;text-align:left;transition:.18s}.environmentZone:hover,.environmentZone.active{transform:translateY(-2px);border-color:var(--universe-accent);box-shadow:0 12px 35px rgba(0,0,0,.32)}.environmentZone.active:after{content:'ACTIVE';position:absolute;right:8px;top:8px;background:var(--universe-accent);color:#121212;font-weight:900;font-size:9px;letter-spacing:.11em;padding:5px 7px;border-radius:999px}.zoneShade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.86),rgba(0,0,0,.08) 70%)}.zoneCopy{position:absolute;left:12px;right:12px;bottom:11px;z-index:2}.zoneCopy small{display:block;color:#f2cf88;font-size:9px;letter-spacing:.13em}.zoneCopy strong{display:block;font-size:15px;margin-top:2px}.environmentRule{display:flex;justify-content:space-between;align-items:center;gap:20px}.environmentRule p{max-width:850px}
@media(max-width:1000px){.environmentZoneGrid{grid-template-columns:repeat(2,1fr)}.geoGrid{grid-template-columns:1fr}}
@media(max-width:680px){.environmentHero{min-height:390px}.environmentHeroCopy{left:20px;right:20px;bottom:20px}.environmentZoneGrid{grid-template-columns:1fr 1fr}.environmentRule{display:block}.environmentRule .btn{margin-top:10px}}

/* v0.9 — Neutral environment ingestion + presentation layering */
.neutralEnvironment{border-color:#516474}
.dddEnvironment{border-color:#9d4a4f;box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 0 1px rgba(210,38,48,.18)}
.dddEnvironment:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 78% 30%,rgba(210,38,48,.14),transparent 28%),linear-gradient(110deg,rgba(20,4,8,.08),rgba(210,38,48,.05) 48%,rgba(216,169,74,.07));mix-blend-mode:screen}
.dddPresentationBadge{position:absolute;right:24px;top:24px;z-index:3;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #9d4a4f;background:#12090dd9;border-radius:14px;backdrop-filter:blur(10px)}
.dddPresentationBadge strong{display:block;color:#fff}.dddPresentationBadge small{display:block;color:#d8a94a;margin-top:2px;text-transform:uppercase;letter-spacing:.1em;font-size:9px}
.presentationToggle{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 12px}.presentationToggle .btn{flex:1;min-width:145px}
@media(max-width:680px){.dddPresentationBadge{right:14px;top:14px;transform:scale(.92);transform-origin:top right}.presentationToggle{display:grid;grid-template-columns:1fr}.presentationToggle .btn{width:100%}}
/* v1.0 architecture-driven object registry */
.archTag{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#f2cf88;border:1px solid #6f5939;padding:5px 8px;border-radius:999px;background:#171109b8}

/* v1.1 — human-first League Health + Team workflow */
.healthHero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:26px 28px;border:1px solid var(--universe-line);border-radius:18px;background:linear-gradient(125deg,rgba(12,29,42,.96),rgba(24,13,16,.94));box-shadow:0 22px 60px rgba(0,0,0,.24)}
.healthHero h1{margin:5px 0;font-size:38px}.healthHero p{max-width:720px;color:var(--universe-muted);margin-bottom:0}.healthOverall{padding:11px 15px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.12em}.healthOverall.good{background:#173f31;color:#9ef2ca;border:1px solid #2b6c53}.healthOverall.warn{background:#4a3517;color:#ffd790;border:1px solid #805d29}
.healthGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.healthCard{border:1px solid var(--universe-line);border-radius:16px;padding:18px;background:linear-gradient(145deg,var(--universe-panel),var(--universe-panel2));min-height:170px}.healthCard.good{box-shadow:inset 0 3px 0 rgba(61,188,126,.42)}.healthCard.warn{box-shadow:inset 0 3px 0 rgba(244,193,109,.62)}.healthIcon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffffff0c;border:1px solid #ffffff18;margin-bottom:14px}.healthLabel{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--universe-muted)}.healthValue{font-size:25px;font-weight:900;margin:5px 0 8px}.healthCard p{font-size:13px;color:var(--universe-muted);margin:0 0 8px;line-height:1.45}.textAction{border:0;background:none;color:var(--universe-accent);padding:0;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.healthChecks{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.healthChecks span{padding:8px 10px;border-radius:10px;border:1px solid #2e5a48;background:#102c22;color:#a8e6c9;font-size:12px}.healthChecks.vertical{display:grid}.advancedPanel{background:linear-gradient(145deg,var(--universe-panel),#071019)}.techDrawer{margin-top:18px;padding-top:18px;border-top:1px solid var(--universe-line)}.compactManifest{max-height:210px;overflow:auto}
.teamProfileHero{position:relative;min-height:355px;border-radius:20px;overflow:hidden;border:1px solid var(--universe-line);background:var(--profile-image) center 38%/cover no-repeat}.teamProfileShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,10,.95) 0%,rgba(7,8,11,.72) 38%,rgba(7,8,11,.16) 76%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 50%)}.teamProfileCopy{position:absolute;left:28px;bottom:28px;z-index:2;max-width:640px}.teamProfileCopy h1{font-size:44px;margin:6px 0}.teamProfileCopy p{font-size:18px;color:#f0d5c2}.bigMonogram{display:inline-grid;width:58px;height:58px;font-size:17px;margin-top:12px}.humanFacts{display:grid;gap:1px;margin-top:14px;border:1px solid var(--universe-line);border-radius:12px;overflow:hidden}.humanFacts>div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:12px 14px;background:#ffffff05}.humanFacts span{font-size:11px;color:var(--universe-muted);text-transform:uppercase;letter-spacing:.08em}.humanFacts strong{font-size:13px}.swatch{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:3px}.swatch.red{background:#d22630}.swatch.black{background:#111}.swatch.gold{background:#d8a94a}.teamAssetGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.teamAssetCard{overflow:hidden;border:1px solid var(--universe-line);border-radius:15px;background:var(--universe-panel)}.teamAssetImage{height:190px;background-position:center;background-size:cover}.teamAssetCopy{padding:12px}.teamAssetCopy strong,.teamAssetCopy small{display:block}.teamAssetCopy small{margin-top:5px;color:var(--universe-muted);font-size:10px}.textarea{min-height:105px;resize:vertical}.preservationBox{margin-top:14px;padding:13px 14px;border:1px solid #4b5f3f;background:#111c10;border-radius:12px}.preservationBox strong,.preservationBox span{display:block}.preservationBox span{color:#a7baa1;font-size:12px;margin-top:5px;line-height:1.5}.reviewCard{padding:22px}.deltaBlock{margin-top:16px}.compareRow{display:grid;grid-template-columns:1fr 38px 1fr;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--universe-line)}.compareRow>div:not(.arrow){padding:12px;border-radius:10px;background:#ffffff05}.compareRow span,.compareRow strong{display:block}.compareRow span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--universe-muted);margin-bottom:5px}.arrow{text-align:center;color:var(--universe-accent);font-weight:900}.reviewActions{display:flex;gap:9px;margin-top:16px}.dangerBtn{background:#47191c!important;border-color:#7a2c32!important;color:#ffd5d8!important}.successText{color:#9fe2bd;font-weight:800}
@media(max-width:1000px){.healthGrid,.teamAssetGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.healthHero{display:block}.healthOverall{display:inline-block;margin-top:16px}.healthGrid,.teamAssetGrid{grid-template-columns:1fr}.teamProfileHero{min-height:420px}.teamProfileCopy{left:18px;right:18px;bottom:20px}.teamProfileCopy h1{font-size:34px}.humanFacts>div{grid-template-columns:1fr}.compareRow{grid-template-columns:1fr}.arrow{transform:rotate(90deg)}.reviewActions{display:grid}}

/* v1.2 — Web-native Game Day Context + AI Create Studio */
.providerChip{font-size:10px;letter-spacing:.11em;font-weight:900;color:#bfe8db;border:1px solid #2e6855;background:#102a22;padding:8px 10px;border-radius:999px}.createStudio{border:1px solid var(--universe-line);border-radius:18px;padding:22px;background:linear-gradient(145deg,var(--universe-panel),#08131d)}.createGrid{display:grid;grid-template-columns:1fr 1.15fr;gap:14px;margin-top:18px}.generationStatus{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.manifestDetails{margin-top:12px}.manifestDetails summary{cursor:pointer;color:var(--universe-accent);font-size:12px;font-weight:800}.translationGrid{display:grid;grid-template-columns:1fr 42px 1fr;gap:9px;align-items:center;margin-top:17px}.translationGrid>div{border:1px solid var(--universe-line);border-radius:12px;padding:13px;background:#ffffff05}.translationGrid strong,.translationGrid span{display:block}.translationGrid span{font-size:11px;color:var(--universe-muted);margin-top:4px}.translationGrid>b{text-align:center;color:var(--universe-accent);font-size:18px}.input select,select.input{appearance:auto}.outputbox{white-space:pre-wrap;min-height:150px}
@media(max-width:850px){.createGrid{grid-template-columns:1fr}.translationGrid{grid-template-columns:1fr}.translationGrid>b{transform:rotate(90deg)}}

/* v1.3.3 entrance correction: preserve v1.2 app; use locked master artwork */
.masterEntrance{
  min-height:100vh;
  background:
    linear-gradient(180deg,rgba(3,8,14,.08),rgba(3,8,14,.28)),
    var(--fu-brand-primary-url) center center / contain no-repeat,
    #050b12;
  position:relative;
}
.masterEntrance .platformNav{background:linear-gradient(180deg,rgba(3,8,14,.72),rgba(3,8,14,0));}
.portalBanner{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);width:min(560px,calc(100% - 36px));display:flex;justify-content:center;z-index:3}
.portalBannerButton{width:100%;padding:15px 22px;border:1px solid rgba(244,193,109,.55);border-radius:16px;background:rgba(5,12,19,.82);backdrop-filter:blur(14px);color:#f5f3ee;box-shadow:0 18px 44px rgba(0,0,0,.35);cursor:pointer;text-align:center}
.portalBannerButton:hover{border-color:#f4c16d;transform:translateY(-1px)}
.portalBannerButton strong{display:block;color:#f4c16d;letter-spacing:.12em;font-size:14px}
.portalBannerEyebrow{display:block;font-size:10px;letter-spacing:.2em;color:#aeb9c4;margin-bottom:4px}
.masterAuth .authArt{background:
  linear-gradient(90deg,rgba(4,10,16,.04),rgba(4,10,16,.16)),
  var(--fu-brand-primary-url) center center / contain no-repeat,
  #050b12;
}
@media(max-width:900px){
  .masterEntrance{background-size:cover;background-position:center top}
  .portalBanner{bottom:20px}
  .masterAuth .authArt{min-height:48vh;background-size:cover;background-position:center top}
}
.portalBannerSub{display:block;margin-top:7px;font-size:10px;letter-spacing:.18em;color:#aeb9c4}
/* v1.3.8 — text-only rotating Portal quotations; locked entrance otherwise unchanged */
#portalQuote{display:contents}.portalQuoteCredit{display:block;margin-top:5px;font-size:10px;letter-spacing:.08em;color:#9fb0bc;font-weight:500}

/* v1.4.3 Quick Start + two-team approval loop */
.teamDirectory{display:grid;gap:14px}.teamDirectoryCard{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.teamDirectoryCard .teamBadge{width:62px;height:62px;display:grid;place-items:center;border-radius:16px;font-weight:900;background:#351016;border:1px solid #7f2933}.teamDirectoryCard .teamBadge.bpf{background:linear-gradient(135deg,#87CEEB,#0a1118);border-color:#87CEEB;color:white}.emptyVisual{padding:28px;text-align:center;border-style:dashed}.quickStartHero{display:flex;justify-content:space-between;gap:18px;align-items:center}.visualCandidate{min-height:260px;border-radius:18px;background:#09121a center/contain no-repeat;border:1px solid var(--universe-line)}
@media(max-width:760px){.teamDirectoryCard{grid-template-columns:auto 1fr}.teamDirectoryCard>button{grid-column:1/-1}.quickStartHero{align-items:flex-start;flex-direction:column}}

/* v1.6 live image result */
.generatedImageWrap{position:relative;margin:14px 0;border:1px solid var(--line,#29465b);border-radius:18px;overflow:hidden;background:#050b10}.generatedImage{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;background:#050b10}.imageDraftBadge{position:absolute;left:14px;bottom:14px;padding:8px 11px;border-radius:999px;background:rgba(4,10,15,.86);border:1px solid rgba(244,193,109,.55);color:#f4c16d;font-size:12px;letter-spacing:.08em;font-weight:700}

/* v1.7 Content Library + distribution approval lifecycle */
.contentHero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:26px;border:1px solid var(--universe-line);border-radius:18px;background:linear-gradient(135deg,var(--universe-panel2),var(--universe-panel));}
.contentHero h1{margin:5px 0 8px;max-width:820px}.contentHero p{color:var(--universe-muted);max-width:850px;margin:0}.contentList{display:grid;gap:18px}.contentCard{display:grid;grid-template-columns:minmax(240px,34%) 1fr;border:1px solid var(--universe-line);border-radius:18px;overflow:hidden;background:var(--universe-panel)}.contentMedia{position:relative;min-height:240px;background:#050b10;display:flex;align-items:center;justify-content:center}.contentThumb{width:100%;height:100%;min-height:240px;object-fit:cover}.contentTextPreview{padding:28px;white-space:pre-wrap;color:var(--universe-text);line-height:1.55}.contentTypeBadge{position:absolute;left:14px;top:14px;padding:6px 9px;border-radius:999px;background:#07111bd9;border:1px solid var(--universe-line);font-size:11px;letter-spacing:.08em}.contentBody{padding:22px}.canonBoundary{padding:11px 13px;margin:14px 0;border:1px solid #486346;border-radius:10px;background:#112317;color:#bfe9c7;font-size:13px}.targetRow{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}.targetPill{appearance:none;border:1px solid var(--universe-line);background:transparent;color:var(--universe-muted);border-radius:999px;padding:8px 11px;cursor:pointer}.targetPill.selected{border-color:var(--universe-accent);color:var(--universe-text);background:color-mix(in srgb,var(--universe-accent) 12%,transparent)}
@media(max-width:850px){.contentCard{grid-template-columns:1fr}.contentHero{align-items:flex-start;flex-direction:column}.contentMedia{min-height:200px}}

.targetPill.published{border-color:#4f8b5b;background:#10291a;color:#c9f4d2}.publishedStrip,.reviewStrip{padding:10px 12px;border-radius:10px;margin:10px 0 14px;font-size:13px}.publishedStrip{border:1px solid #416b49;background:#0d2113;color:#bce8c4}.reviewStrip{border:1px solid #8b6b32;background:#241b0d;color:#f2d39b}.surfaceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.surfaceCard{border:1px solid var(--universe-line);background:var(--universe-panel);border-radius:16px;padding:18px}.surfaceCard h3{margin:4px 0}.surfaceItem{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--universe-line);font-size:13px}.surfaceItem span{color:var(--universe-muted);text-align:right}.surfaceItem:first-of-type{margin-top:10px}@media(max-width:850px){.surfaceGrid{grid-template-columns:1fr}.surfaceItem{flex-direction:column}.surfaceItem span{text-align:left}}

/* v1.8.1 distribution chooser: make publishing destinations explicit */
.distributionChooser{margin:16px 0;padding:16px;border:1px solid var(--universe-line);border-radius:14px;background:color-mix(in srgb,var(--universe-panel) 84%,#000 16%)}
.distributionStep{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.distributionStep>span{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:var(--universe-accent);color:#071018;font-weight:900}.distributionStep strong{display:block}.distributionStep small{display:block;color:var(--universe-muted);margin-top:2px;line-height:1.35}.distributionStep.actionStep{margin-top:16px;margin-bottom:10px}
.distributionTargets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.distributionTarget{width:100%;min-height:76px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;border:1px solid var(--universe-line);border-radius:12px;padding:11px 12px;background:transparent;color:var(--universe-text);cursor:pointer}.distributionTarget:hover{border-color:color-mix(in srgb,var(--universe-accent) 55%,var(--universe-line))}.distributionTarget.selected{border-color:var(--universe-accent);background:color-mix(in srgb,var(--universe-accent) 12%,transparent)}.distributionTarget.published{border-color:#4f8b5b;background:#10291a}.targetCheck{display:grid;place-items:center;width:24px;height:24px;border:2px solid var(--universe-muted);border-radius:6px;font-weight:900}.distributionTarget.selected .targetCheck{border-color:var(--universe-accent);background:var(--universe-accent);color:#071018}.distributionTarget.published .targetCheck{border-color:#71b37f;background:#71b37f;color:#071018}.targetCopy{min-width:0}.targetCopy strong{display:block}.targetCopy small{display:block;color:var(--universe-muted);font-size:11px;margin-top:3px;line-height:1.3}.targetPolicy{white-space:nowrap;font-size:10px;letter-spacing:.05em;text-transform:uppercase;border:1px solid #4f8b5b;border-radius:999px;padding:4px 7px;color:#bce8c4}.targetPolicy.review{border-color:#8b6b32;color:#f2d39b}.distributionAction{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.selectionSummary{font-size:12px;color:#f2d39b}.selectionSummary.ready{color:#bce8c4}
@media(max-width:850px){.distributionTargets{grid-template-columns:1fr}.distributionTarget{grid-template-columns:28px minmax(0,1fr)}.targetPolicy{grid-column:2;justify-self:start}.distributionAction{align-items:stretch;flex-direction:column}.distributionAction .btn{width:100%}}

/* v1.9.0 — FFU mobile-first share */
.mobileSharePanel{border:1px solid color-mix(in srgb,var(--universe-accent) 45%,var(--universe-line));background:linear-gradient(135deg,color-mix(in srgb,var(--universe-accent) 9%,transparent),transparent);border-radius:14px;padding:16px;margin:14px 0}.mobileShareHead{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.mobileShareHead h4{font-size:20px;margin:3px 0 4px}.mobileShareHead p{margin:0;color:var(--universe-muted);font-size:13px;max-width:620px}.mobileFirstBadge{white-space:nowrap;border:1px solid var(--universe-accent);color:var(--universe-accent);border-radius:999px;padding:5px 8px;font-size:10px;letter-spacing:.08em}.mobileShareActions{display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:9px;margin-top:14px}.mobileShareActions .btn{width:100%;min-height:48px}.shareHint{font-size:11px;color:var(--universe-muted);margin:10px 0 0}.internalDistribution{margin-top:12px;border-top:1px solid var(--universe-line);padding-top:12px}.internalDistribution>summary{cursor:pointer;color:var(--universe-accent);font-weight:800}.internalDistribution .distributionChooser{margin-top:12px}.sharePrimary{font-weight:900}
@media(max-width:700px){.contentBody{padding:16px}.mobileShareHead{display:block}.mobileFirstBadge{display:inline-block;margin-top:10px}.mobileShareActions{grid-template-columns:1fr 1fr}.mobileShareActions .sharePrimary{grid-column:1/-1;min-height:56px;font-size:16px}.contentCard{border-radius:14px}.contentHero h1{font-size:30px}.contentHero p{font-size:14px}.distributionTargets{grid-template-columns:1fr}}

/* v1.10.0 — Mobile-first FFU responsive pass */
.mobileUniverseExit{display:none}
@media(max-width:700px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  body{font-size:14px}
  button,input,select,textarea{font-size:16px}
  .shell{display:block;min-width:0;padding-bottom:78px}
  .side{position:sticky;top:0;z-index:40;height:auto;border-right:0;border-bottom:1px solid var(--universe-line);padding:10px 12px;background:color-mix(in srgb,var(--universe-side) 94%,#000 6%);backdrop-filter:blur(18px)}
  .universeBrand{gap:8px;min-width:0}
  .uBadge{width:36px;height:36px;border-radius:10px;font-size:13px;flex:0 0 36px}
  .uTitle{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
  .uSub{display:none}
  .mobileUniverseExit{display:inline-flex;margin-left:auto;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--universe-line);border-radius:10px;background:transparent;color:var(--universe-text);font-size:18px}
  .rolepill{margin:8px 0 0;padding:7px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
  .rolepill .eyebrow{display:none}
  .rolepill>strong{font-size:12px}
  .rolepill>div{margin-top:0!important}
  .rolepill .btn.smallbtn{padding:6px 8px;font-size:11px;min-height:34px}
  .navlist{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;gap:4px;overflow-x:auto;padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:#07111cf5;border-top:1px solid var(--universe-line);box-shadow:0 -8px 24px rgba(0,0,0,.28);scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .navlist::-webkit-scrollbar{display:none}
  .nav{flex:0 0 76px;min-height:58px;padding:6px 4px;border-radius:9px;text-align:center;white-space:normal;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;line-height:1.08}
  .nav .nicon{width:auto;font-size:17px;line-height:1}
  .sidebottom{display:none}
  .main{min-width:0;width:100%;max-width:none;padding:14px 12px 24px}
  .topbar{margin-bottom:12px;align-items:flex-start}
  .topbar h1{font-size:22px;line-height:1.1;margin-top:2px}
  .topbar>.row{gap:6px}.topbar .circle{display:none}.topbar .status{font-size:9px;padding:4px 7px}
  .panel,.card,.kpi{border-radius:12px}.panel{padding:14px}.card{padding:13px}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.kpi{padding:12px}.kpi .num{font-size:22px}
  .grid2,.grid3,.charGrid,.actionGrid,.surfaceGrid,.environmentZoneGrid,.healthGrid,.teamAssetGrid{grid-template-columns:1fr!important}
  .row,.between{min-width:0}.between{align-items:flex-start;flex-wrap:wrap}
  .matchup{grid-template-columns:1fr;padding:14px;gap:10px}.matchup .versus{font-size:16px}
  .teamHeader{display:block}.teamBadge{margin-bottom:10px}
  .ffuHero{min-height:220px;border-radius:14px}.teamHeroRow h1{font-size:27px}.heroStatus{gap:6px}
  .environmentHero{min-height:260px}.environmentHeroCopy{left:14px;right:14px;bottom:14px}.environmentHeroCopy h1{font-size:27px}
  .teamProfileHero{min-height:300px}.teamProfileCopy{left:14px;right:14px;bottom:14px}.teamProfileCopy h1{font-size:28px}
  .contentHero{padding:15px!important}.contentHero h1{font-size:25px!important;line-height:1.08}.contentHero p{font-size:13px!important}
  .contentList{gap:14px}.contentCard{grid-template-columns:1fr;border-radius:13px}.contentMedia{min-height:0;aspect-ratio:4/3}.contentThumb{min-height:0;height:100%;object-fit:cover}.contentTextPreview{padding:16px;font-size:14px}.contentBody{padding:14px}
  .canonBoundary{font-size:12px;padding:9px 10px}
  .mobileSharePanel{padding:14px;margin:12px 0}.mobileShareHead h4{font-size:18px}.mobileShareHead p{font-size:12px}.mobileFirstBadge{margin-top:8px}
  .mobileShareActions{grid-template-columns:1fr;gap:8px}.mobileShareActions .sharePrimary{grid-column:auto;min-height:54px;font-size:16px}.mobileShareActions .btn{min-height:50px}
  .shareHint{font-size:10px;line-height:1.35}
  .distributionChooser{padding:12px}.distributionTargets{grid-template-columns:1fr}.distributionTarget{min-height:68px;padding:10px}.distributionAction{display:grid;grid-template-columns:1fr}.distributionAction .btn{min-height:48px}
  .surfaceItem{flex-direction:column}.surfaceItem span{text-align:left}
  .createGrid,.translationGrid{grid-template-columns:1fr}.translationGrid>b{transform:rotate(90deg)}
  .createGrid textarea{min-height:118px}
  .btn{min-height:44px;padding:10px 12px}
  .btn.smallbtn{min-height:36px}
  .manifest{font-size:10px;max-height:260px;overflow:auto}
  .libraryTop{padding:12px 14px}.libraryMain{padding:18px 12px 40px}.libraryIntro h1{font-size:27px}.universeGrid{grid-template-columns:1fr}.universeCard{min-height:220px}
  .authPane{padding:16px}.authCard{padding:20px}.authArt{min-height:30vh}
  .landingCopy{width:calc(100% - 24px)}.landingCopy h1{font-size:34px}.landingCopy p{font-size:14px}.landingFooter{padding:0 12px 16px}
}
@media(max-width:390px){
  .uTitle{max-width:175px}
  .nav{flex-basis:70px;font-size:9.5px}
  .kpis{grid-template-columns:1fr 1fr}
  .main{padding-left:10px;padding-right:10px}
  .contentHero h1{font-size:23px!important}
}

/* v1.10.1 — Genuine FFU mobile presentation adapter */
.mobileAppShell{display:none}
@media(max-width:700px){
  /* The mobile adapter is a separate presentation shell. Desktop .shell never renders in JS at this width. */
  .mobileAppShell{display:block;position:relative;min-height:100%;background:var(--universe-bg);color:var(--universe-text);padding-bottom:84px}
  .mobileAppShell .universeBackdrop{position:fixed;inset:0;pointer-events:none;opacity:.22;z-index:0}
  .mobileAppHeader{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;padding:10px 12px;background:color-mix(in srgb,var(--universe-side) 96%,#000 4%);border-bottom:1px solid var(--universe-line);backdrop-filter:blur(20px)}
  .mobileIconButton{width:44px;height:44px;border-radius:12px;border:1px solid var(--universe-line);background:var(--universe-panel);color:var(--universe-text);font-size:19px;font-weight:800}
  .mobileHeaderIdentity{display:flex;align-items:center;gap:9px;min-width:0}
  .mobileHeaderIdentity>div:last-child{min-width:0}.mobileHeaderIdentity strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobileHeaderIdentity span{display:block;color:var(--universe-muted);font-size:10px;margin-top:2px}
  .mobileTeamMark{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:var(--universe-accent);color:#071018;font-size:11px;font-weight:950;letter-spacing:.04em;box-shadow:0 0 0 1px color-mix(in srgb,var(--universe-accent) 65%,transparent)}
  .mobileTeamMark.large{width:50px;height:50px;flex-basis:50px;border-radius:14px;font-size:14px}
  .mobileAppMain{position:relative;z-index:1;padding:12px 12px 26px;max-width:none}
  .mobilePageHeading{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin:2px 2px 12px}.mobilePageHeading h1{margin:2px 0 0;font-size:24px;line-height:1.05}.mobilePageHeading .eyebrow{font-size:8px}
  .mobileBottomNav{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:repeat(5,1fr);padding:7px 6px calc(7px + env(safe-area-inset-bottom));background:#07111cf7;border-top:1px solid var(--universe-line);box-shadow:0 -10px 28px rgba(0,0,0,.35)}
  .mobileBottomItem{min-width:0;min-height:58px;border:0;background:transparent;color:var(--universe-muted);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.mobileBottomItem span{font-size:19px;line-height:1}.mobileBottomItem small{font-size:9px;font-weight:750}.mobileBottomItem.active{background:color-mix(in srgb,var(--universe-accent) 13%,transparent);color:var(--universe-accent)}
  .mobileHeroCard{position:relative;min-height:210px;border:1px solid var(--universe-line);border-radius:18px;overflow:hidden;background-image:var(--mobile-hero);background-size:cover;background-position:center;margin-bottom:10px}.mobileHeroShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,10,16,.12),rgba(4,10,16,.92))}.mobileHeroCopy{position:absolute;left:15px;right:15px;bottom:15px}.mobileHeroCopy .mobileTeamMark{margin-bottom:10px}.mobileHeroCopy h2{font-size:25px;line-height:1.02;margin:3px 0}.mobileHeroCopy p{margin:5px 0 0;color:#d2dde4;font-size:12px}
  .mobileStatusStrip{display:grid;grid-template-columns:.7fr 1.3fr 1.15fr;border:1px solid var(--universe-line);background:var(--universe-panel);border-radius:14px;overflow:hidden;margin-bottom:12px}.mobileStatusStrip>div{padding:10px 9px;border-right:1px solid var(--universe-line);min-width:0}.mobileStatusStrip>div:last-child{border-right:0}.mobileStatusStrip span{display:block;color:var(--universe-muted);font-size:8px;font-weight:800;letter-spacing:.08em}.mobileStatusStrip strong{display:block;margin-top:4px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.goodText{color:#9ee7ab}.warnText{color:#f2d39b}
  .mobilePrimaryActions{display:grid;gap:9px;margin-bottom:12px}.mobileAction{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:10px;text-align:left;border:1px solid var(--universe-line);border-radius:14px;background:var(--universe-panel);color:var(--universe-text);padding:11px 12px;min-height:70px}.mobileAction>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--universe-panel2);font-size:20px}.mobileAction strong{display:block;font-size:14px}.mobileAction small{display:block;color:var(--universe-muted);font-size:10px;margin-top:3px}.mobileAction>b{font-size:24px;color:var(--universe-muted)}.mobileAction.primaryAction{border-color:color-mix(in srgb,var(--universe-accent) 65%,var(--universe-line));background:linear-gradient(135deg,color-mix(in srgb,var(--universe-accent) 14%,var(--universe-panel)),var(--universe-panel))}.mobileAction.primaryAction>span{background:var(--universe-accent);color:#071018}
  .mobileMatchupCard,.mobileProfileCard{border:1px solid var(--universe-line);background:var(--universe-panel);border-radius:15px;padding:14px}.mobileMatchupRow{display:grid;grid-template-columns:1fr 34px 1fr;align-items:center;text-align:center;margin:12px 0}.mobileMatchupRow>div{background:var(--universe-panel2);border-radius:12px;padding:12px 8px}.mobileMatchupRow strong{display:block;font-size:18px}.mobileMatchupRow span{display:block;font-size:8px;color:var(--universe-muted);margin-top:3px}.mobileMatchupRow>b{color:var(--universe-muted);font-size:11px}
  .mobileProfileCard{display:flex;align-items:center;gap:12px}.mobileProfileCard h2{font-size:19px;margin:3px 0}.mobileProfileCard p{font-size:11px;color:var(--universe-muted);margin:0}.mobileMoreActions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.mobileMoreActions .btn.ghost:last-child{grid-column:1/-1}
  .mobileMenuList{display:grid;gap:8px}.mobileMenuRow{display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;text-align:left;border:1px solid var(--universe-line);border-radius:13px;background:var(--universe-panel);color:var(--universe-text);padding:10px 11px;min-height:64px}.mobileMenuIcon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--universe-panel2);font-size:17px}.mobileMenuRow strong{display:block;font-size:13px}.mobileMenuRow small{display:block;font-size:9.5px;color:var(--universe-muted);margin-top:3px}.mobileMenuRow>b{font-size:22px;color:var(--universe-muted)}
  /* Existing content is now placed inside a phone-native shell and simplified further. */
  .mobileAppMain .topbar{display:none}.mobileAppMain .ffuHero{display:none}.mobileAppMain .sectionTitleRow .contextChip{display:none}.mobileAppMain .immersionGrid{grid-template-columns:1fr!important}.mobileAppMain .immersiveTile{min-height:150px}.mobileAppMain .kpis{grid-template-columns:repeat(2,1fr)}
  .mobileAppMain .contentHero{display:block}.mobileAppMain .contentHero>.btn{width:100%;margin-top:10px}.mobileAppMain .contentCard{grid-template-columns:1fr}.mobileAppMain .mobileSharePanel{border-color:var(--universe-accent)}
  .mobileAppMain .packageHero,.mobileAppMain .healthHero{display:block}.mobileAppMain .healthOverall{display:inline-flex;margin-top:10px}.mobileAppMain .healthGrid{grid-template-columns:1fr!important}
  .mobileAppMain .environmentZoneGrid,.mobileAppMain .teamAssetGrid,.mobileAppMain .grid2,.mobileAppMain .grid3{grid-template-columns:1fr!important}
  .mobileAppMain .manifest{font-size:9px}
}


/* v1.10.2 — forced mobile adapter activation + visible proof */
.mobileModeProof{display:none}
@media(max-width:900px){
  .mobileModeProof{display:block;position:relative;z-index:80;background:#f0b957;color:#111;padding:5px 10px;text-align:center;font-size:10px;font-weight:950;letter-spacing:.08em}
}


/* v1.10.5 — full mobile entry flow: landing -> sign in -> universes -> FFU */
.mobileGlobalProof{position:relative;z-index:20;background:#f4c16d;color:#0a0d10;text-align:center;font-size:10px;font-weight:900;letter-spacing:.11em;padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.2)}
.mobilePlatformLanding{min-height:100svh;background:#050b12;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}
.mobileLandingArt{min-height:0;background:var(--fu-brand-primary-url) center center/contain no-repeat #050b12;margin:6px 10px 0}
.mobileLandingAction{padding:12px 16px 24px;text-align:center;background:linear-gradient(180deg,rgba(5,11,18,0),#050b12 24%)}
.mobilePortalButton{width:100%;min-height:76px;border:1px solid rgba(244,193,109,.65);border-radius:16px;background:#09151f;color:#fff;padding:14px 16px;display:grid;gap:7px;text-align:center}
.mobilePortalButton strong{color:#f4c16d;font-size:17px;letter-spacing:.07em}.mobilePortalButton span{font-size:11px;letter-spacing:.15em;color:#c8d4dd}
.mobileAuthScreen{min-height:100svh;background:#050b12;display:flex;flex-direction:column}
.mobileAuthLogo{height:31svh;min-height:210px;background:var(--fu-brand-primary-url) center/contain no-repeat #050b12;border-bottom:1px solid #1c3140}
.mobileAuthBody{padding:20px 18px 34px;display:block}.mobileAuthBody h1{font-size:32px;margin:6px 0}.mobileBackLink{border:0;background:transparent;color:#b9c8d2;padding:0 0 18px;font:inherit}.mobileFullButton{width:100%;min-height:48px;margin-top:10px}
.mobileLibraryShell{min-height:100svh;background:radial-gradient(circle at 50% 0,#14283a 0,#07111a 35%,#04090e 100%)}
.mobileLibraryHeader{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;background:rgba(5,13,20,.94);backdrop-filter:blur(12px);border-bottom:1px solid #203649}.mobileLibraryHeader strong{display:block;font-size:18px}
.mobileLibraryBody{padding:20px 14px 36px}.mobileLibraryBody h1{font-size:31px;margin:2px 0 5px}.mobileUniverseStack{display:grid;gap:14px;margin-top:18px}
.mobileUniverseCard{position:relative;display:grid;grid-template-columns:132px 1fr;min-height:144px;width:100%;overflow:hidden;border:1px solid #2e4b60;border-radius:17px;background:#09141f;color:#fff;padding:0;text-align:left}
.mobileUniverseImage{min-height:144px;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.28)),var(--portal-image) center/cover no-repeat;border-right:1px solid #29465b}
.mobileUniverseCopy{min-width:0;padding:14px 14px 12px;display:flex;flex-direction:column;align-items:flex-start}.mobileUniverseCopy small{color:#f4c16d;font-size:9px;letter-spacing:.13em}.mobileUniverseCopy strong{font-size:18px;line-height:1.1;margin-top:5px}.mobileUniverseCopy em{font-style:normal;color:#9eb0bd;font-size:12px;line-height:1.35;margin-top:8px}.mobileUniverseCopy b{margin-top:auto;color:#e7c47f;font-size:11px;letter-spacing:.08em}
@media(max-width:520px){.mobileUniverseCard{grid-template-columns:118px 1fr}.mobileUniverseImage{min-height:142px}.mobileLibraryBody{padding-left:12px;padding-right:12px}}

/* v1.14.0 — GUI / UX consolidation */
.navGroupLabel{margin:14px 9px 4px;color:var(--universe-muted,#91a6b7);font-size:9px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;opacity:.72}
.navGroupLabel:first-child{margin-top:2px}
.topbar{padding-bottom:4px;border-bottom:1px solid color-mix(in srgb,var(--universe-line,#29465b) 55%,transparent)}
.topbar h1{font-size:25px}
.rolepill{padding:12px}.rolepill strong{font-size:13px}
.createHero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:24px;border:1px solid var(--universe-line,#29465b);border-radius:18px;background:linear-gradient(120deg,color-mix(in srgb,var(--universe-accent,#f4c16d) 9%,var(--universe-panel,#0b1824)),var(--universe-panel2,#102231));box-shadow:0 12px 34px rgba(0,0,0,.18)}
.createHero h1{font-size:34px;margin:5px 0 7px}.createHero p{max-width:720px;color:var(--universe-muted,#91a6b7);margin:0}
.createStudio{border:0;background:transparent;box-shadow:none;padding:0}.createStudioHead{margin-bottom:12px}.createStudioHead h2{margin:4px 0 0}
.createInputPanel{padding:20px}.createPrimary{width:100%;min-height:50px;margin-top:6px;font-size:14px;letter-spacing:.08em}
.resultPanel{min-height:430px}.emptyResult{min-height:300px;display:grid;place-items:center;text-align:center;color:var(--universe-muted,#91a6b7)}.emptyResult strong{display:block;color:var(--universe-text,#edf3f7);font-size:19px}.emptyResult span{display:block;font-size:12px;margin-top:-118px}
.createProgress{margin-top:12px;min-height:44px}.progressStage{display:flex;gap:10px;align-items:center;border:1px solid var(--universe-line,#29465b);border-radius:10px;background:color-mix(in srgb,var(--universe-panel2,#102231) 72%,transparent);padding:10px 12px}.progressStage strong{display:block;font-size:12px}.progressStage small{display:block;color:var(--universe-muted,#91a6b7);font-size:10px;margin-top:2px}.progressSpinner{width:18px;height:18px;border:2px solid color-mix(in srgb,var(--universe-accent,#f4c16d) 35%,transparent);border-top-color:var(--universe-accent,#f4c16d);border-radius:50%;animation:fuSpin .85s linear infinite;flex:0 0 auto}.progressError{border:1px solid #8c4949;border-radius:10px;padding:10px;color:#ffb1b1}.progressError strong,.progressError span{display:block}.progressError span{font-size:10px;margin-top:3px}@keyframes fuSpin{to{transform:rotate(360deg)}}
.resultActions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--universe-line,#29465b)}
.manifestDetails{margin-top:12px}.manifestDetails summary{cursor:pointer;color:var(--universe-muted,#91a6b7);font-size:12px}
@media(max-width:900px){
  .createHero{display:block;padding:15px}.createHero h1{font-size:26px}.createHero .status{margin-top:12px}
  .createStudioHead{align-items:center}.createStudioHead .btn{min-height:40px}
  .resultPanel{min-height:0}.emptyResult{min-height:160px}.emptyResult span{margin-top:-55px}
  .createPrimary{position:sticky;bottom:76px;z-index:25;box-shadow:0 10px 26px rgba(0,0,0,.35)}
  .mobileAppMain .createGrid{display:grid;grid-template-columns:1fr!important}
  .resultActions{display:grid;grid-template-columns:1fr}.resultActions .btn{width:100%}
}

/* v1.14.2 compact Game Day readiness */
.compactHealthHero{align-items:center}.compactHealthHero p{max-width:560px}.compactReadinessPanel{padding:20px}.readySummary{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}.readySummary h2{margin:0 0 4px;font-size:24px}.readySummary p{margin:0;color:var(--universe-muted)}.readyIcon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:950;font-size:20px;border:1px solid var(--universe-line)}.readySummaryGood .readyIcon{color:#bfe8db;background:#102a22;border-color:#2e6855}.readySummaryWarn .readyIcon{color:#f4d58a;background:#30260f;border-color:#715c20}.readySummaryDanger .readyIcon{color:#ffc7c7;background:#321313;border-color:#783333}.readyIssue{margin-top:10px;padding:10px 12px;border:1px solid var(--universe-line);border-radius:10px;background:#ffffff04}.readyIssue strong,.readyIssue span{display:block}.readyIssue span{margin-top:3px;color:var(--universe-muted);font-size:12px}.compactReadyActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.readinessDetails{margin-top:14px;border-top:1px solid var(--universe-line);padding-top:12px}.readinessDetails summary{cursor:pointer;color:var(--universe-muted);font-size:12px;font-weight:800}.readinessDetailList{margin-top:12px}.advancedPanel{opacity:.92}
@media(max-width:700px){.compactReadinessPanel{padding:16px}.readySummary{grid-template-columns:36px 1fr;gap:10px}.readyIcon{width:34px;height:34px}.readySummary h2{font-size:20px}.compactReadyActions{display:grid;grid-template-columns:1fr}.compactReadyActions .btn{width:100%}.compactHealthHero{gap:12px}.compactHealthHero .healthOverall{align-self:flex-start}}

/* v1.14.4 — responsive entrance: desktop logo click -> Sign In; mobile -> Sign In directly */
.landingEnterSurface{cursor:pointer;outline:none}
.landingEnterSurface:focus-visible{box-shadow:inset 0 0 0 2px rgba(244,193,109,.72)}

/* v1.14.6 — My Universes portal cleanup */
.libraryIntroClean{grid-template-columns:1fr;margin-bottom:22px}
.libraryIntroClean h1{margin-bottom:0}
.universeGridClean{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px}
.createUniversePortal{cursor:pointer}
.createPortalFrame{background:radial-gradient(circle at 50% 52%,#20394a 0,#0a141d 38%,#050a0f 78%)}
.createPortalFrame:before{border-color:#d5a45170;box-shadow:inset 0 0 28px #e7b35a22,0 0 22px #e7b35a12}
.createDoorScene,.mobileCreateDoorScene{position:absolute;inset:0;overflow:hidden;background:#03070a url('assets/create-universe-portal-master.png') center center/cover no-repeat}
.createDoorLight{display:none}
.createDoorFrame{display:none}
.createDoorPanel{display:none}
.createDoorPanel:after{display:none}
.createUniversePortal:hover .createDoorScene{filter:brightness(1.06)}
.mobileCreateUniverseCard{cursor:pointer}
.mobileCreateDoorScene{position:relative;min-height:144px;border-right:1px solid #29465b}
.mobileCreateDoorScene .createDoorFrame{width:42%;height:64%;top:18%}
.mobileCreateDoorScene .createDoorLight{width:40%;height:58%;top:21%}
@media(max-width:1150px){.universeGridClean{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.universeGridClean{grid-template-columns:1fr}}

/* v1.14.8 — locked My Universes visual system */
.myUniversesShell{
  min-height:100vh; color:#f6f3ec; overflow-x:hidden;
  background:
    radial-gradient(circle at 50% 32%,rgba(18,72,112,.30),transparent 31%),
    radial-gradient(circle at 25% 18%,rgba(38,76,128,.15),transparent 28%),
    linear-gradient(180deg,#02070d 0%,#071522 46%,#03080d 100%);
  position:relative; isolation:isolate;
}
.myUniversesShell:before{
  content:''; position:fixed; inset:0; z-index:-2; pointer-events:none; opacity:.55;
  background:
    radial-gradient(circle at 20% 24%,#5ea2d320 0 1px,transparent 1.5px),
    radial-gradient(circle at 78% 17%,#e9f6ff28 0 1px,transparent 1.6px),
    radial-gradient(circle at 61% 29%,#ffffff20 0 1px,transparent 1.6px),
    linear-gradient(180deg,transparent 49%,rgba(53,105,143,.18) 49.5%,rgba(12,36,54,.35) 53%,transparent 58%);
  background-size:180px 160px,240px 220px,310px 270px,100% 100%;
}
.myUniversesShell:after{
  content:''; position:fixed; left:0; right:0; bottom:0; height:34vh; z-index:-1; pointer-events:none;
  background:
    linear-gradient(180deg,transparent 0%,rgba(0,0,0,.16) 20%,rgba(0,0,0,.6) 100%),
    repeating-linear-gradient(90deg,transparent 0 115px,rgba(231,178,86,.06) 116px 118px),
    linear-gradient(180deg,rgba(19,33,43,.18),#020407 70%);
  border-top:1px solid rgba(169,204,225,.09); transform:perspective(650px) rotateX(55deg); transform-origin:bottom;
}
.universeSelectorTop{
  height:118px; display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:20px 4.2vw 18px; border-bottom:1px solid rgba(168,201,221,.25); box-sizing:border-box;
}
.fuShellMark{position:relative; width:max-content; padding:0 18px 4px 2px; filter:drop-shadow(0 0 10px rgba(255,161,32,.38))}
.fuShellMark:before{
  content:''; position:absolute; width:72px; height:72px; right:4px; top:-15px; border:2px solid #ff9d15; border-left-color:transparent; border-bottom-color:#ffcf63; border-radius:50%;
  box-shadow:0 0 9px #ff9f26,0 0 24px #ffb42a88,inset 0 0 8px #ffb52a55; opacity:.95;
}
.fuShellMark:after{content:''; position:absolute; right:-2px; top:15px; width:7px; height:7px; border-radius:50%; background:#ffd36d; box-shadow:0 0 7px 3px #ff9818,0 0 18px 7px #ffb22b66}
.fuShellMark span,.fuShellMark small{position:relative; z-index:2; display:block; font-family:Georgia,'Times New Roman',serif; font-weight:400; text-shadow:0 0 3px #fff9d8,0 0 10px #ffad22,0 0 21px #ff9b0f88}
.fuShellMark span{font-size:clamp(30px,3vw,46px); letter-spacing:.16em; line-height:.85; color:#fff4dc}
.fuShellMark small{margin-top:10px; padding-left:44px; font-size:clamp(12px,1.2vw,18px); letter-spacing:.42em; color:#ffe2a5}
.selectorUser{display:flex;align-items:center;gap:10px;color:#f7f7f3;font-size:14px}.selectorAvatar{width:32px;height:32px;border:2px solid #f4f4ed;border-radius:50%;display:grid;place-items:center;font-size:20px}.selectorChevron,.selectorMenuBtn{border:0;background:transparent;color:#f3f4f4;cursor:pointer}.selectorChevron{font-size:18px}.selectorMenuBtn{font-size:28px;line-height:1}
.universeSelectorMain{width:min(1000px,calc(100% - 42px));margin:0 auto;padding:29px 0 72px}.universeSelectorMain>h1{text-align:center;font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,3vw,43px);font-weight:400;letter-spacing:.19em;margin:0 0 42px;color:#f4f2ef;text-shadow:0 0 12px rgba(255,255,255,.14)}
.universeSelectorGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px;align-items:stretch}
.selectorPortalCard{position:relative;min-height:555px;border:1px solid rgba(86,134,166,.55);border-radius:17px;overflow:hidden;background:rgba(2,9,14,.91);box-shadow:0 25px 70px #000b;cursor:pointer;transition:.25s ease}
.selectorPortalCard:hover{transform:translateY(-4px);border-color:#d9a957;box-shadow:0 32px 78px #000d,0 0 0 1px #d8a95524}
.selectorPortalVisual{position:absolute;inset:0 0 160px;background-color:#02070b;background-repeat:no-repeat;background-position:center;background-size:contain;overflow:hidden}
.ffuPortalVisual{background-image:linear-gradient(180deg,rgba(3,9,14,.03),rgba(2,7,10,.16)),url('assets/stadium/05_Field_Reveal.png');background-size:cover;background-position:center 47%}
.createPortalVisual{background-image:url('assets/create-universe-portal-master.png');background-size:contain;background-position:center 52%}
.selectorPortalVisual:before{content:'';position:absolute;z-index:3;left:11%;right:11%;top:3%;bottom:0;border:4px solid rgba(54,49,43,.92);border-bottom:0;border-radius:48% 48% 0 0;box-shadow:inset 0 0 0 2px rgba(209,162,79,.28),inset 0 0 32px #000a,0 0 16px #0008;pointer-events:none}
.selectorPortalVisual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,6,10,.02),rgba(1,5,8,.13) 70%,#03080d 100%);pointer-events:none}
.createSelectorPortal .selectorPortalVisual:before{border-color:rgba(66,58,48,.98);box-shadow:inset 0 0 0 2px rgba(219,170,74,.38),inset 0 0 35px #000b,0 0 18px #0008}
.ffuPortalBadge{position:absolute;z-index:5;top:62px;left:50%;transform:translateX(-50%);font-family:Georgia,'Times New Roman',serif;font-size:31px;font-weight:800;letter-spacing:.03em;color:#f5c36c;text-shadow:0 2px 0 #3a1f09,0 0 12px #d98922;background:rgba(4,8,10,.34);padding:2px 7px;border-radius:5px}
.selectorPortalCopy{position:absolute;left:0;right:0;bottom:0;min-height:160px;padding:16px 20px 20px;background:linear-gradient(180deg,rgba(4,9,13,.73),#02060a 35%);text-align:center;border-top:1px solid rgba(72,104,125,.32);box-sizing:border-box}
.selectorPortalCopy h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:.08em;font-size:25px;margin:0 0 6px;color:#f6f3ec}.selectorPortalCopy p{margin:0 0 16px;font-size:12px;letter-spacing:.28em;color:#d8d8d2}.selectorPortalButton{width:72%;min-width:240px;padding:13px 18px;border:1px solid #e1af53;border-radius:6px;background:#030609;color:#f8d28b;font-family:Georgia,'Times New Roman',serif;font-size:15px;letter-spacing:.13em;cursor:pointer;box-shadow:inset 0 0 16px #c8872018}.selectorPortalButton:hover{background:#d2952a16}
.mobileUniversesShell .universeSelectorTop{height:auto;min-height:86px;padding:14px 16px}.mobileUniversesShell .fuShellMark span{font-size:26px}.mobileUniversesShell .fuShellMark small{font-size:10px;padding-left:28px}.mobileUniversesShell .fuShellMark:before{width:54px;height:54px;top:-10px}.mobileUniversesShell .selectorUser strong,.mobileUniversesShell .selectorChevron{display:none}.mobileUniversesShell .universeSelectorMain{width:calc(100% - 24px);padding:25px 0 42px}.mobileUniversesShell .universeSelectorMain>h1{font-size:21px;letter-spacing:.12em;margin-bottom:24px}.mobileSelectorGrid{grid-template-columns:1fr;gap:18px}.mobileUniversesShell .selectorPortalCard{display:block;width:100%;min-height:430px;border:1px solid rgba(86,134,166,.55);padding:0}.mobileUniversesShell .selectorPortalVisual{inset:0 0 128px}.mobileUniversesShell .selectorPortalCopy{min-height:128px;padding:12px 12px 14px}.mobileUniversesShell .selectorPortalCopy strong,.mobileUniversesShell .selectorPortalCopy small,.mobileUniversesShell .selectorPortalCopy b{display:block}.mobileUniversesShell .selectorPortalCopy strong{font-family:Georgia,'Times New Roman',serif;font-size:21px;letter-spacing:.08em;color:#f6f3ec}.mobileUniversesShell .selectorPortalCopy small{margin:5px 0 12px;font-size:10px;letter-spacing:.17em;color:#cfd5d8}.mobileUniversesShell .selectorPortalCopy b{width:72%;margin:0 auto;padding:10px;border:1px solid #e1af53;border-radius:5px;color:#f8d28b;font-family:Georgia,'Times New Roman',serif;font-size:12px;letter-spacing:.1em}.mobileUniversesShell .createSelectorPortal .selectorPortalCopy small{display:none}.mobileUniversesShell .createSelectorPortal .selectorPortalCopy strong{margin-bottom:12px}
@media(max-width:820px){.universeSelectorGrid{gap:22px}.selectorPortalCard{min-height:500px}.selectorPortalVisual{inset:0 0 150px}.selectorPortalCopy{min-height:150px}.universeSelectorMain{width:calc(100% - 28px)}}
@media(max-width:680px){.universeSelectorGrid{grid-template-columns:1fr}.universeSelectorTop{padding-left:16px;padding-right:16px}.selectorPortalCard{min-height:450px}.selectorPortalVisual{inset:0 0 135px}.selectorPortalCopy{min-height:135px}.selectorPortalButton{min-width:0;width:82%}}

/* v1.14.10 — explicit Commissioner / Team Manager context switching */
.contextSwitcher{display:grid;gap:8px}.contextButtons{display:grid;gap:6px}.contextChoice{appearance:none;width:100%;border:1px solid var(--universe-line,#29465b);background:color-mix(in srgb,var(--universe-panel,#0b1824) 88%,transparent);color:var(--universe-text,#edf3f7);border-radius:9px;padding:9px 10px;text-align:left;cursor:pointer;min-height:44px}.contextChoice strong,.contextChoice small{display:block}.contextChoice strong{font-size:12px}.contextChoice small{font-size:10px;color:var(--universe-muted,#91a6b7);margin-top:2px;line-height:1.25}.contextChoice:hover{border-color:color-mix(in srgb,var(--universe-accent,#f4c16d) 65%,var(--universe-line,#29465b))}.contextChoice.active{border-color:var(--universe-accent,#f4c16d);background:color-mix(in srgb,var(--universe-accent,#f4c16d) 12%,var(--universe-panel2,#102231));box-shadow:inset 3px 0 0 var(--universe-accent,#f4c16d)}
.mobileContextPanel{margin:10px 0}.mobileContextPanel .contextSwitcher{border:1px solid var(--universe-line);background:var(--universe-panel);border-radius:15px;padding:12px}.mobileContextPanel .contextButtons{display:grid;grid-template-columns:1fr;gap:8px}.mobileContextPanel .contextChoice{font-size:13px}.mobileMoreActions{grid-template-columns:1fr}
@media(max-width:900px){.rolepill .contextSwitcher{width:100%}.rolepill .contextButtons{grid-template-columns:1fr}.contextChoice{padding:8px 9px}.contextChoice small{display:none}}

/* v1.14.11 - exact requested adjustments only */
.fuShellMark:before,.fuShellMark:after{display:none!important}
.universeSelectorGrid{grid-template-columns:repeat(2,236px);justify-content:center;gap:28px}
.selectorPortalCard{min-height:278px;border-radius:9px}
.selectorPortalVisual{inset:0 0 80px}
.selectorPortalVisual:before{border-width:2px}
.ffuPortalBadge{top:31px;font-size:16px;padding:1px 4px}
.selectorPortalCopy{min-height:80px;padding:8px 10px 10px}
.selectorPortalCopy h2{font-size:13px;margin:0 0 3px}.selectorPortalCopy p{margin:0 0 8px;font-size:6px}
.selectorPortalButton{width:72%;min-width:120px;padding:7px 9px;border-radius:3px;font-size:8px}
@media(max-width:680px){
.mobileUniversesShell .universeSelectorGrid{grid-template-columns:236px;justify-content:center;gap:18px}
.mobileUniversesShell .selectorPortalCard{width:236px;min-height:215px;border-radius:9px}
.mobileUniversesShell .selectorPortalVisual{inset:0 0 64px}
.mobileUniversesShell .selectorPortalCopy{min-height:64px;padding:6px 6px 7px}
.mobileUniversesShell .selectorPortalCopy strong{font-size:11px}
.mobileUniversesShell .selectorPortalCopy small{margin:2px 0 6px;font-size:6px}
.mobileUniversesShell .selectorPortalCopy b{width:72%;padding:5px;font-size:6px}
}

/* v1.14.13 - exact requested My Universes refinements only */
.myUniversesShell{
  background:
    linear-gradient(180deg,rgba(1,5,9,.04),rgba(1,5,9,.14)),
    url('assets/my-universes-environment.png') center center/cover fixed no-repeat;
}
.myUniversesShell:before,.myUniversesShell:after{display:none!important}
.universeSelectorGrid{grid-template-columns:repeat(2,292px);justify-content:center;gap:36px}
.selectorPortalCard{min-height:344px;border-radius:11px}
.selectorPortalVisual{inset:0 0 99px}
.selectorPortalVisual:before{border-width:2px}
.ffuPortalBadge{top:38px;font-size:19px;padding:1px 5px}
.selectorPortalCopy{min-height:99px;padding:10px 12px 12px}
.selectorPortalCopy h2{font-size:16px;margin:0 0 4px}.selectorPortalCopy p{margin:0 0 10px;font-size:7px}
.selectorPortalButton{width:72%;min-width:149px;padding:8px 11px;border-radius:4px;font-size:10px}
@media(max-width:680px){
  .mobileUniversesShell .universeSelectorGrid{grid-template-columns:292px;justify-content:center;gap:18px}
  .mobileUniversesShell .selectorPortalCard{width:292px;min-height:267px;border-radius:11px}
  .mobileUniversesShell .selectorPortalVisual{inset:0 0 80px}
  .mobileUniversesShell .selectorPortalCopy{min-height:80px;padding:8px 8px 9px}
  .mobileUniversesShell .selectorPortalCopy strong{font-size:14px}
  .mobileUniversesShell .selectorPortalCopy small{margin:3px 0 7px;font-size:7px}
  .mobileUniversesShell .selectorPortalCopy b{width:72%;padding:6px;font-size:8px}
}

/* v1.14.15 — FFU shell back navigation: reserve space in shell; never overlay page controls */
.desktopUniverseExit{width:100%;margin:14px 0 0;padding:9px 11px;border:1px solid var(--universe-line,#29465b);border-radius:9px;background:transparent;color:var(--universe-muted,#91a6b7);text-align:left;cursor:pointer;font-weight:750;transition:.16s}
.desktopUniverseExit:hover{color:var(--universe-text,#edf3f7);border-color:var(--universe-accent,#f4c16d);background:color-mix(in srgb,var(--universe-accent,#f4c16d) 8%,transparent)}
@media(max-width:700px){.desktopUniverseExit{display:none}}


/* v1.14.16 — Commissioner-controlled neutral Drive Green VI Location Canon */
.locationBrandingCard{border-color:color-mix(in srgb,var(--accent,#efc36f) 40%,var(--line));}
.locationBrandingGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:22px;margin-top:18px;align-items:start}
.locationRefStrip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:18px}
.locationRefThumb{display:grid;grid-template-columns:88px 1fr;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);cursor:pointer}
.locationRefImage{width:88px;height:64px;border-radius:10px;background-size:cover;background-position:center;background-color:#071018}
.locationRefThumb small{display:block;margin-top:4px;color:var(--muted);line-height:1.35}
@media(max-width:850px){.locationBrandingGrid{grid-template-columns:1fr}.locationRefStrip{grid-template-columns:1fr}}

.locationRefActions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.locationRefActions .btn{padding:6px 8px;font-size:10px}.dangerButton{border-color:#8f3d43!important;color:#ffb3b8!important}.locationRefThumb.archived{opacity:.72}.archivedLocationRefs summary{cursor:pointer;color:var(--muted);font-weight:700}
.smartUploadBox{border:1px solid rgba(231,187,92,.45);border-radius:16px;padding:16px;background:rgba(231,187,92,.05)}
.smartUploadBox h3,.smartReview h3{margin:5px 0 8px}.smartUploadBox .input{margin:10px 0}.manualUpload{margin-top:12px}.manualUpload summary{cursor:pointer;font-weight:700}.smartReview{margin-top:18px;border-top:1px solid rgba(255,255,255,.12);padding-top:18px}.smartReviewGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:14px}.smartReviewCard{border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:10px;background:rgba(0,0,0,.22)}.smartReviewCard img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:9px;margin-bottom:8px}.smartReviewCard .input{width:100%;margin:4px 0}.smartReviewCard[draggable=true]{cursor:grab}

/* v1.14.26 — minimal Create preview workflow */
.resultPanel{display:flex;flex-direction:column;min-height:430px}
.generatedPreviewEmpty,.generatedPreviewRetry{min-height:330px;border:1px solid var(--universe-line,#29465b);border-radius:18px;background:
  radial-gradient(circle at 50% 46%,rgba(244,193,109,.08),transparent 28%),
  linear-gradient(145deg,rgba(15,34,49,.82),rgba(5,13,20,.92));display:grid;place-items:center;overflow:hidden}
.previewRing{width:72px;height:72px;border:2px solid rgba(244,193,109,.5);border-left-color:transparent;border-bottom-color:rgba(244,193,109,.18);border-radius:50%;box-shadow:0 0 28px rgba(244,193,109,.12)}
.generatedPreviewRetry{background:linear-gradient(145deg,rgba(15,34,49,.72),rgba(5,13,20,.94))}
.retryCreateButton{min-width:170px}
.simpleResultActions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.simpleResultActions .btn{min-height:50px}
.createStudioHead h2{font-size:28px;margin:3px 0 0}
@media(max-width:760px){.simpleResultActions{grid-template-columns:1fr}.generatedPreviewEmpty,.generatedPreviewRetry{min-height:220px}}

/* v1.14.33: text generations occupy the same preview surface as image generations. */
.generatedTextPreview{min-height:330px;border:1px solid var(--universe-line,#29465b);border-radius:18px;background:linear-gradient(145deg,rgba(15,34,49,.72),rgba(5,13,20,.94));padding:28px;overflow:auto;color:var(--universe-text,#edf3f7);font-size:18px;line-height:1.6}.generatedTextPreview p{margin:0 0 1.15em}.generatedTextPreview p:last-child{margin-bottom:0}.generatedTextPreview strong{font-weight:800;color:var(--universe-text,#edf3f7)}
@media(max-width:760px){.generatedTextPreview{min-height:220px;padding:20px;font-size:16px}}
.fuVideoWindow{width:100%;aspect-ratio:16/9;background:#000;display:block;border-radius:12px}
.mobileBottomNav{overflow-x:auto;justify-content:flex-start}.mobileBottomItem{min-width:88px;flex:0 0 auto}
