*{box-sizing:border-box}html{background:#dff2fb}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#16384d;background:linear-gradient(#c8ecff,#eef9fd 30%,#f3ead7);min-height:100vh}button,input,select{font:inherit}.topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px clamp(14px,3vw,34px);background:rgba(5,54,91,.97);border-bottom:3px solid #e5b84e;box-shadow:0 4px 18px #08304b55}.brand{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none}.brand span{font-size:28px}.brand b{font-size:24px}.brand small{color:#cdeafa}.topbar nav{display:flex;gap:8px}.topbar nav a{color:#fff;text-decoration:none;border:1px solid #77a8c4;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:900;letter-spacing:.05em}main{max-width:1480px;margin:auto;padding:18px}.hero{min-height:245px;display:flex;justify-content:space-between;align-items:center;gap:22px;padding:26px clamp(22px,4vw,58px);border:4px solid #70502e;border-radius:28px;background:linear-gradient(110deg,#fff0c9 0 56%,#b5e5f7);box-shadow:0 12px 28px #17354f2d,inset 0 0 0 4px #fff8;overflow:hidden}.hero>div{max-width:860px}.eyebrow{font-size:12px;font-weight:1000;letter-spacing:.14em;color:#9b5c18}.hero h1{font-size:clamp(38px,6vw,78px);line-height:.95;margin:8px 0;color:#073d66}.hero p{font-size:clamp(17px,2vw,24px);font-weight:760;line-height:1.35}.hero img{width:min(31vw,390px);filter:drop-shadow(0 14px 18px #1235)}.rule{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:#073e68;color:#fff;padding:11px 14px;border-radius:14px;width:max-content;max-width:100%}.rule b{color:#ffe58c}.rule span{font-weight:800}.experience-strip{margin:16px 0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}.experience-strip article{min-width:0;background:#fff9e7;border:2px solid #8f7048;border-radius:17px;padding:10px;text-align:center;box-shadow:0 5px 12px #17354f1d}.experience-strip img{height:72px;max-width:100%;object-fit:contain;display:block;margin:0 auto 5px}.experience-strip b{display:block;color:#073f67;font-size:12px;line-height:1.1}.experience-strip span{display:block;font-size:10px;font-weight:750;color:#60717c;line-height:1.25;margin-top:3px}.filters{display:grid;grid-template-columns:1fr 1fr 1.5fr auto;gap:10px;align-items:end;background:#073e68;border:3px solid #6da7c8;border-radius:20px;padding:15px;color:#fff}.filters label{display:block;font-size:11px;font-weight:1000;letter-spacing:.07em}.filters label small{color:#cdeafa}.filters select,.filters input{width:100%;margin-top:5px;padding:11px 12px;border:2px solid #9dc1d5;border-radius:11px;background:#fff;color:#17354f;font-weight:800}.filters button{border:0;border-radius:11px;padding:12px 16px;background:#ffe399;color:#65440b;font-weight:1000;cursor:pointer}.summary-bar{display:grid;grid-template-columns:auto auto 1fr;gap:12px;align-items:center;margin:12px 0;background:#fff;border:2px solid #9ab2bf;border-radius:16px;padding:12px 15px}.summary-bar div{min-width:150px}.summary-bar small{display:block;font-size:9px;font-weight:1000;letter-spacing:.08em;color:#61737e}.summary-bar strong{font-size:26px;color:#0b6849}.summary-bar p{margin:0;text-align:right;font-weight:780;color:#516874}.catalog{display:grid;gap:18px}.area-section{background:rgba(255,255,255,.76);border:3px solid #7e9eae;border-radius:24px;padding:16px;box-shadow:0 8px 18px #17354f1b}.area-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:12px}.area-head h2{margin:0;color:#073f67;font-size:clamp(24px,3vw,36px)}.area-head p{margin:4px 0 0;font-weight:720;color:#60727d}.area-count{white-space:nowrap;background:#073e68;color:#fff;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900}.topic-block+.topic-block{margin-top:18px;padding-top:18px;border-top:1px solid #b8c9d2}.topic-block h3{margin:0 0 9px;color:#835114;font-size:20px}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.skill-card{display:flex;flex-direction:column;background:#fff;border:2px solid #b1c3cc;border-radius:17px;padding:14px;min-height:230px}.skill-card.live{border-color:#6cb68d;box-shadow:inset 0 4px #5bd394}.skill-card h4{font-size:18px;margin:4px 0;color:#123f5b}.skill-card p{font-size:13px;font-weight:700;color:#5f727d;line-height:1.4;margin:0 0 9px}.badge-row{display:flex;gap:6px;flex-wrap:wrap}.badge{font-size:9px;font-weight:1000;letter-spacing:.04em;border-radius:999px;padding:5px 7px;background:#e9f3f8;color:#35586b}.badge.ready{background:#dff8e9;color:#176843}.course-tags{font-size:10px;line-height:1.35;color:#71808a;margin:8px 0}.modes{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto}.mode-pill{border:1px solid #aebfc8;border-radius:999px;background:#f7fbfd;padding:5px 7px;font-size:9px;font-weight:900;color:#35586b}.actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.actions a,.actions button{display:flex;align-items:center;justify-content:center;min-height:38px;text-decoration:none;border-radius:10px;border:0;padding:8px;font-size:10px;font-weight:1000;cursor:pointer;text-align:center}.start{background:#0c9660;color:#fff}.teacher{background:#ffe3a1;color:#69480d}.interactive{grid-column:1/-1;background:#dceffa!important;color:#174f72!important;border:1px solid #75a9c4!important}.empty{background:#fff;border:3px dashed #9fb3be;border-radius:20px;padding:40px;text-align:center;font-weight:850;color:#60717d}footer{max-width:1480px;margin:auto;padding:15px 20px 28px;display:flex;justify-content:space-between;gap:12px;font-weight:850;color:#345568}@media(max-width:1150px){.experience-strip{grid-template-columns:repeat(4,1fr)}.skill-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}.search-wrap{grid-column:1/-1}}@media(max-width:720px){main{padding:8px}.hero{padding:18px;min-height:210px}.hero img{width:145px;margin-right:-28px}.experience-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.experience-strip article{min-width:150px;scroll-snap-align:start}.filters{grid-template-columns:1fr}.search-wrap{grid-column:auto}.summary-bar{grid-template-columns:1fr 1fr}.summary-bar p{grid-column:1/-1;text-align:left}.skill-grid{grid-template-columns:1fr}.topbar nav a:last-child{display:none}.brand small{display:none}.area-head{align-items:flex-start;flex-direction:column}.hero h1{font-size:42px}}@media(max-width:460px){.hero img{display:none}.actions{grid-template-columns:1fr}.interactive{grid-column:auto}.topbar nav{display:none}}

/* v25.7 Training Ground portals: fun skins over the shared topic library. */
.world-portals{margin:16px 0;background:#082f4c;border:3px solid #d0a84a;border-radius:22px;padding:15px;box-shadow:0 9px 20px #17354f30}.world-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:11px}.world-head h2{color:#fff;margin:3px 0 0;font-size:clamp(21px,2.7vw,34px)}.world-head .eyebrow{color:#ffd975}.world-head>a{color:#fff;text-decoration:none;border:1px solid #75aac7;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:1000}.world-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.world{min-height:142px;display:flex;flex-direction:column;position:relative;overflow:hidden;text-decoration:none;padding:12px;border:2px solid #ffffff4f;border-radius:14px;color:#fff;box-shadow:inset 0 0 24px #0005,0 5px 12px #0003;transition:transform .15s ease,filter .15s ease}.world:hover{transform:translateY(-4px);filter:brightness(1.12)}.world>span{font-size:22px;font-weight:1000;opacity:.85}.world strong{font-size:14px;line-height:1.05;margin-top:4px}.world small{font-size:10px;font-weight:750;line-height:1.3;opacity:.9;margin-top:5px}.world b{margin-top:auto;align-self:flex-start;font-size:10px;background:#fff;color:#123c58;border-radius:999px;padding:5px 8px}.world.integer{background:linear-gradient(145deg,#073b24,#12a253)}.world.fraction{background:linear-gradient(145deg,#073459,#1185d5)}.world.equation{background:linear-gradient(145deg,#693a02,#db8c12)}.world.exponent{background:linear-gradient(145deg,#3b1761,#9a32d2)}.world.factoring{background:linear-gradient(145deg,#621717,#d1392e)}.world.function{background:linear-gradient(145deg,#063c54,#08a6b8)}.fluency-card{box-shadow:inset 0 3px #f3c84b,0 5px 12px #17354f1d!important}.actions .fluency{grid-column:1/-1;background:#092f4d;color:#fff;border:2px solid #f3c84b}.actions .fluency:hover{filter:brightness(1.12)}.mode-pill.fluency{border-color:#e2b33d;background:#fff2b9;color:#604500}.world-filter-note{display:inline-flex;margin-left:8px;background:#fff0bd;color:#704d0d;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:1000}
@media(max-width:1250px){.world-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.world-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.world{min-width:190px;scroll-snap-align:start}.world-head{align-items:flex-start;flex-direction:column}.experience-strip{grid-template-columns:repeat(4,1fr)}}

/* v25.8 Headquarters World pass */
body.training-world{color:#17384e;background:#072c48}
body.training-world main{position:relative}
body.training-world .hero{background:linear-gradient(105deg,rgba(255,239,193,.97),rgba(241,211,139,.92) 45%,rgba(119,209,242,.86));border-color:#8b6430!important;box-shadow:0 18px 40px #001a2e55,inset 0 0 0 3px #fff7}.training-world .hero::before{content:"TRAINING COMMAND DECK";position:absolute;right:20px;top:14px;font-size:9px;font-weight:1000;letter-spacing:.14em;color:#0b527d;background:#e9f9ffcc;border:1px solid #83bdd8;padding:5px 9px;border-radius:999px}.training-world .hero img{transform:scale(1.06);filter:drop-shadow(0 18px 22px #05243e55)}
.training-world .world-portals{margin:18px 0;padding:16px;border-radius:24px;background:linear-gradient(180deg,rgba(5,49,82,.96),rgba(3,38,65,.95));color:#fff}.training-world .world-head h2{color:#fff}.training-world .world-head .eyebrow{color:#ffd76e}.training-world .world-head a{color:#ffe58c;border-color:#8bbbd2;background:#0c527d}.training-world .world-grid{gap:12px}.training-world .world{position:relative;overflow:hidden;min-height:146px;border-width:2px;box-shadow:inset 0 0 26px rgba(255,255,255,.05),0 7px 17px rgba(0,15,30,.34);transform:translateZ(0);transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.training-world .world::after{content:"";position:absolute;inset:auto -20% -55% -20%;height:80%;background:radial-gradient(ellipse,rgba(255,255,255,.22),transparent 62%);pointer-events:none}.training-world .world:hover{transform:translateY(-4px) scale(1.012);filter:saturate(1.16);box-shadow:0 12px 24px rgba(0,15,30,.42),0 0 18px rgba(98,211,255,.24)}.training-world .world strong{font-size:18px;letter-spacing:.04em}.training-world .world b{font-size:10px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.28);padding:6px 8px;border-radius:8px;width:max-content}.training-world .world.active-world{outline:3px solid #ffe275;outline-offset:3px;box-shadow:0 0 25px #ffe27555}
.training-world .experience-strip{padding:12px;border-radius:21px;background:rgba(4,42,69,.9);border:2px solid #5f8daa;box-shadow:0 12px 24px #001a2f45}.training-world .experience-strip article{background:linear-gradient(#fff8dc,#eaf4f8);border-color:#8aa3ad;min-height:142px}.training-world .experience-strip article:hover{transform:translateY(-3px);box-shadow:0 9px 18px #001c3038}.training-world .experience-strip img{height:76px;filter:drop-shadow(0 7px 7px #00243b38)}
.training-world .filters{background:linear-gradient(180deg,#063d65,#052f50);border-color:#77b5d4!important;box-shadow:0 12px 25px #001a2f42!important}.training-world .summary-bar{background:rgba(244,251,255,.94);border-color:#86a9ba!important}.training-world .area-section{background:linear-gradient(180deg,rgba(247,252,255,.96),rgba(235,246,250,.96));border-color:#81a5b7;box-shadow:0 12px 28px #001c3038}.training-world .area-head{padding:3px 5px 12px;border-bottom:1px solid #bdd1db}.training-world .area-head h2{letter-spacing:-.02em}.training-world .topic-block h3{display:inline-flex;align-items:center;gap:7px;background:#073e68;color:#fff;padding:7px 11px;border-radius:10px;box-shadow:0 4px 10px #073e6830}.training-world .skill-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#f7fbfd);border-color:#9db7c4;box-shadow:0 6px 14px #17354f17;transition:transform .15s ease,box-shadow .15s ease}.training-world .skill-card::after{content:"";position:absolute;inset:auto 0 0;height:4px;background:linear-gradient(90deg,#0d9e66,#63d9ff,#ffd45a);opacity:.65}.training-world .skill-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #0b2f471f}.training-world .skill-card.live::before{content:"LIVE";position:absolute;right:-23px;top:13px;transform:rotate(38deg);background:#10a767;color:#fff;width:95px;text-align:center;font-size:8px;font-weight:1000;letter-spacing:.1em;padding:4px 0}.training-world footer{color:#d9ebf4}
@media(max-width:700px){.training-world .hero::before{display:none}.training-world .world{min-height:120px}.training-world .world strong{font-size:15px}}

/* v26.0 — THE 81 */
.experience-strip .the81-card{position:relative;overflow:hidden}.experience-strip .the81-card::after{content:'81';position:absolute;right:-4px;bottom:-26px;font-size:86px;font-weight:1000;opacity:.07;letter-spacing:-.08em}.mode-pill.the81{border-color:rgba(255,210,75,.55);background:rgba(255,210,75,.10)}.actions a.the81{background:#ffd24b!important;color:#06233a!important;border-color:#ffd24b!important;font-weight:1000!important}


/* v26.1 Solo Ram Race */
.mode-pill.solo-race{border-color:rgba(255,208,77,.55);background:rgba(70,45,5,.38);color:#ffe39a}
.actions a.solo-race{background:linear-gradient(135deg,#9a6500,#efb41b);color:#fff;border-color:#ffd86a;box-shadow:0 10px 24px rgba(223,154,12,.18)}
.solo-race-card{outline:1px solid rgba(255,210,83,.22)}

.actions a.repair-bay{background:linear-gradient(135deg,#0c7a5d,#56d69a);color:#fff;border:1px solid #8aebc0;box-shadow:0 8px 18px rgba(29,170,119,.18)}

/* v27.0 — Experience Engine / Graph Target */
.experience-strip{grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}
.experience-strip .graph-target-card{outline:1px solid rgba(255,215,91,.34);box-shadow:inset 0 3px #ffd75b,0 5px 12px #17354f1d!important}
.actions a.graph-target{grid-column:1/-1;background:linear-gradient(135deg,#56347d,#1287a7);color:#fff;border:2px solid #ffd75b;box-shadow:0 9px 20px rgba(43,91,139,.18)}
.actions a.graph-target:hover{filter:brightness(1.12)}
