/* Shared SimATC interface. Operational radar symbols keep their own styling. */
@font-face{font-family:Manrope;src:url('/site-manrope.ttf?v=3ae11c49db04') format('truetype');font-weight:200 800;font-display:swap}
:root{--site-bg:#0d121d;--site-panel:#151e2c;--site-raised:#1b273b;--site-line:#2d3b53;--site-text:#edf2fc;--site-muted:#a0b0ca;--site-accent:#b9d2ff;--site-purple:#c4b3f1}
body.site-account,body.site-legal{background:var(--site-bg);color:var(--site-text);font:15px/1.65 Manrope,system-ui,sans-serif;margin:0}
.site-account *, .site-legal *{box-sizing:border-box}
.site-account main{max-width:1720px;padding:0 32px;margin:auto}
.site-account main>header{height:88px;border-bottom:1px solid var(--site-line);gap:24px}
.site-account .brand{font-size:25px;letter-spacing:-1px;color:var(--site-text)}
.site-account .brand span{color:var(--site-accent)}
.site-account .brand-mark{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;background:#243653;border:1px solid #49658e;border-radius:12px;padding:8px}
.site-account main>header nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.site-account #aboutLink{display:inline-flex!important}
.site-account h1{font-size:36px;line-height:1.2;letter-spacing:-1.1px}
.site-account h2{font-size:24px;line-height:1.35;letter-spacing:-.55px}
.site-account h3{font-size:18px;line-height:1.45;letter-spacing:-.3px}
.site-account p,.site-account .muted,.site-account small{color:var(--site-muted);line-height:1.65}
.site-account small{font-size:12px}
.site-account .eyebrow{color:#a7bde0;letter-spacing:1.8px;font-size:11px}
.site-account a,.site-legal a{color:var(--site-accent)}
.site-account button,.site-account a.button{font:600 14px/1.4 Manrope,system-ui,sans-serif;border:1px solid #3a4b68;border-radius:10px;background:#1d2b41;color:#e7eefc;padding:11px 16px;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.site-account button:hover:not(:disabled),.site-account a.button:hover{background:#293d5a;border-color:#7093c7}
.site-account button:disabled{opacity:.5;cursor:not-allowed}
.site-account button.primary,.site-account a.primary{background:var(--site-accent);border-color:var(--site-accent);color:#142039}
.site-account button.primary:hover:not(:disabled){background:#d5e4ff;border-color:#d5e4ff}
.site-account .danger{color:#ffc0c4;border-color:#805363;background:#352330}
.site-account :focus-visible,.site-legal :focus-visible{outline:2px solid #b9d2ff!important;outline-offset:3px}
.site-account label{font-size:14px;color:#c6d3e9;line-height:1.5}
.site-account input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.site-account select,.site-account textarea{font:15px/1.5 Manrope,system-ui,sans-serif;background:#101827!important;color:#edf2fc!important;border:1px solid #41516e!important;border-radius:9px;padding:11px 13px;max-width:100%;min-width:0}
.site-account textarea{width:100%;resize:vertical;min-height:90px}
.site-account input::placeholder,.site-account textarea::placeholder{color:#879ab7}
.site-account select option{background:#18243a;color:#edf2fc}
.site-account input[type=checkbox],.site-account input[type=radio]{width:18px;height:18px;accent-color:#a9c7fc;flex-shrink:0}
.site-account .actions{gap:10px;flex-wrap:wrap}
.site-account .card{background:var(--site-panel);border:1px solid var(--site-line);border-radius:16px;padding:26px;box-shadow:0 8px 28px #00000012}
.site-account .card .card{box-shadow:none;background:#121b2b}
.site-account details{border-color:var(--site-line)}
.site-account summary{cursor:pointer;color:#d8e5fa;line-height:1.5}
.site-account .badge{background:#202e46;color:#c3d8fc;border-color:#3e5578}
.site-account table{font-size:14px}
.site-account th{color:#a8bddc!important;background:#172238}
.site-account td,.site-account th{border-color:var(--site-line)!important}
.site-account tbody tr:hover{background:#1b2940!important}
.site-account .student-note,.site-account footer{border-color:var(--site-line);color:var(--site-muted)}
.site-account #notice{border-radius:10px;color:#ffd1a7;background:#352b22;padding:12px 16px}
.site-account:not(.signed-in) main{max-width:1240px}
.site-account:not(.signed-in) .access-layout{gap:56px;border:0;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);padding-bottom:48px}
.site-account:not(.signed-in) #login{max-width:none;margin-top:0;padding:32px}
.site-account:not(.signed-in) #accessInfo{padding:30px;border:1px solid #304464;border-radius:18px;background:linear-gradient(135deg,#1f3453,#171d31)}
.site-account:not(.signed-in) #accessInfo h2{font-size:29px}
.site-account:not(.signed-in) .tab{background:transparent;border:0;border-radius:0;border-bottom:2px solid transparent;color:#a0b0ca}
.site-account:not(.signed-in) .tab.active{border-color:#b9d2ff;color:#d2e2ff}
.site-account .legal-check{align-items:flex-start;gap:12px;font-size:14px}
.site-account .legal-check input{margin-top:4px}
/* Both dashboards use the same navigation and content rhythm. */
.site-account.founder-dashboard #founderDashboard,.site-account.player-dashboard #playerDashboard{display:grid;grid-template-columns:232px minmax(0,1fr);gap:30px;padding:26px 0 48px;min-height:calc(100dvh - 160px)}
.site-account .founder-sidebar,.site-account .player-nav{position:sticky;top:22px;align-self:start;border-right:1px solid #243149;padding-right:18px}
.site-account.player-dashboard #welcome{display:none}
.site-account .player-nav{display:flex;flex-direction:column;gap:6px;margin:0}
.site-account #playerDashboard>section{grid-column:2;grid-row:1;min-width:0}
.site-account #playerDashboard>section>.card{margin:20px 0}
.site-account .player-page-heading{margin:8px 0 28px}
.site-account .player-page-heading h1{margin:10px 0}
.site-account .player-page-heading p{margin:0}
.site-account .player-plan-badge{display:inline-block;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#c6b7ef;background:#2a2541;border:1px solid #494062;padding:5px 10px;border-radius:20px}
.site-account #founderNav button,.site-account .player-nav .player-menu-tile{display:flex;align-items:center;text-align:left;gap:10px;min-height:48px;padding:11px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:#a7b7d0;transform:none;box-shadow:none;width:100%}
.site-account #founderNav button:hover,.site-account .player-nav .player-menu-tile:hover{background:#19263a;color:#edf2fc}
.site-account #founderNav button[aria-current=page],.site-account .player-nav .player-menu-tile[aria-current=page]{background:#24344f;border-color:#405779;color:#d6e5ff;box-shadow:inset 3px 0 #b9d2ff}
.site-account .player-menu-copy strong{font-size:14px;font-weight:600}
.site-account .player-menu-copy small,.site-account .player-menu-arrow{display:none}
.site-account .player-menu-icon{width:24px;height:24px;padding:0;flex:0 0 24px;color:#a9c7fc;background:transparent;border:0;border-radius:0}
.site-account .player-menu-icon svg{width:23px;height:23px}
.site-account .founder-avatar{background:#263853;border-color:#496084;color:#c6daff}
.site-account .founder-access{color:#c6b7ef;border-color:#494062;background:#2a2541}
.site-account .founder-welcome,.site-account #playerWelcome{background:linear-gradient(120deg,#233b61,#211f35);border:1px solid #3e5173;border-radius:18px;padding:30px}
.site-account #playerWelcome>h2{font-size:28px;margin:0 0 12px;max-width:670px}
.site-account #playerWelcome>p{max-width:730px;color:#b8c9e3}
.site-account .founder-radar{border-color:#6e90be66;background:none}
.site-account .founder-radar i{border-color:#6e90be55}
.site-account .founder-radar b{background:#24344f;color:#b9d2ff}
.site-account .founder-metrics button,.site-account .founder-choice,.site-account .player-tile{background:#172236;border:1px solid #35445e;border-radius:14px;padding:22px;text-align:left}
.site-account .founder-metrics strong{color:#e6eeff;font-variant-numeric:tabular-nums}
.site-account .founder-choice:hover,.site-account .player-tile:hover{border-color:#809ccd;transform:translateY(-2px)}
.site-account .founder-choice-icon{color:#b8d1fc;background:#263955;border-color:#426087}
.site-account .founder-choice-description{color:#a4b5cf;font-size:13px}
.site-account .founder-choice-arrow{color:#a9c7fc}
.site-account .founder-task strong{background:#283b59;color:#cbdeff}
.site-account .founder-task{border-color:var(--site-line)}
.site-account .player-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:16px;margin-top:20px}
.site-account .player-grid h3{margin:0 0 10px}
.site-account .player-grid .player-tile{align-items:flex-start;justify-content:flex-start}
.site-account .player-grid p{font-size:14px}
.site-account #createForm{background:#121c2e;border-color:#334661}
.site-account .user-row{border-color:#33445d}
.site-account.player-dashboard main>footer,.site-account.founder-dashboard main>footer{margin-left:262px;font-size:12px;flex-wrap:wrap}
/* Dynamic module cards, forms, learning and chat. */
.site-account #instructorDirectory .instructor-profile,.site-account #instructorDirectory .training-request-form{background:linear-gradient(120deg,#1b2b43,#1c2033);border-color:#3a4b68}
.site-account #instructorDirectory .profile-switch{background:#18253b;border-color:#3a4b68}
.site-account #instructorDirectory .profile-field small,.site-account #instructorDirectory .profile-switch small{color:#a0b0ca}
.site-account #exerciseCatalog .catalog-item{background:#162135;border-color:#34455f;border-radius:16px}
.site-account #exerciseCatalog .market-cover{background:linear-gradient(130deg,#213e5d,#322b4b);color:#c2d8fa;border-color:#405371}
.site-account #exerciseCatalog .market-price{color:#d2c5f5}
.site-account #learningLibrary [data-learning-category]{border-radius:12px}
.site-account .quiz-numbers button{min-width:38px;min-height:38px}
.site-account .quiz-answer-card{border-radius:12px}
.site-account #trainingChat{background:#151e2e;border-color:#536b92;border-radius:18px;box-shadow:0 20px 70px #0009;width:360px;max-width:calc(100vw - 32px);right:16px;top:100px;padding:20px}
.site-account #trainingChatMessages article{background:#1b2940;border:1px solid #30435f;border-radius:10px;margin:10px 0;padding:13px}
.site-account #trainingChatToggle{background:#b9d2ff;color:#152139;border-color:#b9d2ff;border-radius:30px;box-shadow:0 6px 25px #0006;padding:13px 22px}
.site-account #trainingRequestNotice{background:#263650;color:#e4eeff;border-color:#7299cd}
.site-account dialog{background:#182237;color:#edf2fc;border:1px solid #536b92;border-radius:18px;padding:28px;max-width:calc(100vw - 40px)}
.site-account dialog::backdrop{background:#060b16c9}
/* Legal pages share branding without modifying document text. */
.site-legal .legal-document{max-width:960px;margin:40px auto;padding:36px 42px;background:#151e2c;border:1px solid #33445e;border-radius:18px;font:15px/1.8 Manrope,system-ui,sans-serif;color:#d8e2f3}
.site-legal .legal-document h1{font-size:32px;line-height:1.3;letter-spacing:-.7px;color:#edf2fc}
.site-legal .legal-document nav{display:flex;gap:12px;flex-wrap:wrap;border-block:1px solid #33445e;margin:24px 0;padding:18px 0;font-size:13px}
/* Scope every workspace rule to UI panels, never to SVG aircraft or labels. */
.site-workspace #workspaceMenu,.site-workspace .workspace-menu-panel,.site-workspace #trainingDock,.site-observer>header,.site-observer #observerVoice{font-family:Manrope,system-ui,sans-serif;background:#151e2c;border-color:#3b4e6e;color:#e2eafb}
.site-workspace #workspaceMenu>a{color:#b9d2ff;letter-spacing:-.25px}
.site-workspace #workspaceMenu>button{border-radius:8px;color:#b4c5e0}
.site-workspace #workspaceMenu>button:hover,.site-workspace #workspaceMenu>button[aria-expanded=true]{background:#283b59;border-color:#4b6286;color:#edf2fc}
.site-workspace .workspace-menu-panel{border-radius:14px;box-shadow:0 16px 50px #0009}
.site-workspace .workspace-menu-panel .panel{background:#19253a;border-color:#344863;border-radius:11px}
.site-workspace .workspace-menu-panel summary{color:#c6d9f8}
.site-workspace .workspace-menu-panel button:not(.active):not([aria-pressed=true]):not(#run):not(#pause){background:#24344c;border-color:#415573;color:#e1eafb}
.site-workspace .workspace-menu-panel input,.site-workspace .workspace-menu-panel select,.site-workspace .workspace-menu-panel textarea{border-color:#4d6282;color:#e2eafb}
.site-workspace .workspace-menu-panel .small{color:#a7b8d1}
.site-workspace #gameHud,.site-workspace #gameTutorial,.site-workspace #gameRadio,.site-workspace #gameInfo{font-family:Manrope,system-ui,sans-serif;background:#151e2cf5;border-color:#415779;color:#edf2fc;border-radius:14px;box-shadow:0 12px 32px #0005}
.site-workspace #gameTutorial p,.site-workspace #gameRadio p{line-height:1.6}
.site-workspace #gameInfo::backdrop{background:#070d18c9}
.site-workspace #gameInfo a{color:#b9d2ff}
.site-workspace #gameTutorial button,.site-workspace #radioAnswers button,.site-workspace #gameInfo button{background:#233752;border-color:#49658b;color:#e3edff;border-radius:9px;font-family:inherit}
.site-observer{background:#0d121d;color:#edf2fc;font-family:Manrope,system-ui,sans-serif}
.site-observer>header a{color:#b9d2ff}
.site-observer button,.site-observer select{background:#24344c;color:#edf2fc;border:1px solid #496181;border-radius:8px;padding:7px 10px;font:inherit}
.site-observer #views h2{background:#18243a;border-color:#344863;color:#b5cbea;font:600 12px/1.5 Manrope,system-ui,sans-serif}
@media(max-width:1100px){.site-account main{padding-inline:22px}.site-account.founder-dashboard #founderDashboard,.site-account.player-dashboard #playerDashboard{grid-template-columns:200px minmax(0,1fr);gap:22px}.site-account .founder-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.site-account .founder-radar{display:none}.site-account .card{padding:22px}.site-account.player-dashboard main>footer,.site-account.founder-dashboard main>footer{margin-left:222px}}
@media(max-width:850px){.site-account main{padding-inline:18px}.site-account.founder-dashboard #founderDashboard,.site-account.player-dashboard #playerDashboard{grid-template-columns:174px minmax(0,1fr);gap:18px}.site-account .founder-sidebar,.site-account .player-nav{position:sticky;top:12px;max-height:calc(100dvh - 24px);overflow:auto;padding-right:10px}.site-account #founderNav{display:flex;flex-direction:column}.site-account #founderNav button,.site-account .player-nav .player-menu-tile{font-size:12px;padding:9px;min-height:44px;white-space:normal}.site-account .player-menu-copy strong{font-size:12px}.site-account .player-menu-icon{width:20px;flex-basis:20px}.site-account .founder-metrics{gap:9px}.site-account .founder-metrics button{padding:15px}.site-account .founder-overview-grid{grid-template-columns:1fr}.site-account h1{font-size:29px}.site-account h2{font-size:22px}.site-account .founder-welcome,.site-account #playerWelcome{padding:22px}.site-account #playerWelcome>h2{font-size:24px}.site-account .founder-choices{grid-template-columns:1fr 1fr}.site-account .founder-choice{padding:16px}.site-account.player-dashboard main>footer,.site-account.founder-dashboard main>footer{margin-left:192px}.site-account:not(.signed-in) .access-layout{gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,.8fr)}.site-account:not(.signed-in) #accessInfo{padding:22px}.site-account:not(.signed-in) #accessInfo h2{font-size:24px}.site-legal .legal-document{margin:20px;padding:26px}}
@media(max-width:650px){.site-account.founder-dashboard #founderDashboard,.site-account.player-dashboard #playerDashboard{grid-template-columns:1fr}.site-account .founder-sidebar,.site-account .player-nav{position:static;max-height:none;border:0}.site-account .player-nav{display:grid;grid-template-columns:1fr 1fr}.site-account #playerDashboard>section{grid-column:1;grid-row:auto}.site-account:not(.signed-in) .access-layout{grid-template-columns:1fr}.site-account.player-dashboard main>footer,.site-account.founder-dashboard main>footer{margin-left:0}}
@media(prefers-reduced-motion:reduce){.site-account button{transition:none}.site-account .founder-choice:hover,.site-account .player-tile:hover{transform:none}}

/* Student navigation: fixed icon column and a shared text baseline. */
.site-account #playerDashboard:is([data-plan="free"],[data-plan="student"],[data-plan="instructor"]) .player-nav .player-menu-tile{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;justify-content:start;gap:12px;padding:12px;min-height:56px;text-align:left}
.site-account #playerDashboard:is([data-plan="free"],[data-plan="student"],[data-plan="instructor"]) .player-menu-icon{width:24px;height:24px;min-width:24px;margin:0;display:grid;place-items:center}
.site-account #playerDashboard:is([data-plan="free"],[data-plan="student"],[data-plan="instructor"]) .player-menu-icon svg{display:block;width:22px;height:22px}
.site-account #playerDashboard:is([data-plan="free"],[data-plan="student"],[data-plan="instructor"]) .player-menu-copy{margin:0;align-items:flex-start;text-align:left;min-width:0}
.site-account #playerDashboard:is([data-plan="free"],[data-plan="student"],[data-plan="instructor"]) .player-menu-copy strong{margin:0;font-size:14px;line-height:20px;text-align:left}

.site-account #playerDashboard:is([data-plan="student"],[data-plan="instructor"]) #playerWelcome>.player-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.site-account #playerDashboard:is([data-plan="student"],[data-plan="instructor"]) #playerWelcome [data-player-go]{min-height:104px;padding:24px;text-align:left;white-space:normal}
.site-account #playerDashboard:is([data-plan="student"],[data-plan="instructor"]) #playerWelcome [data-player-go] h3{margin:0;font-size:22px;line-height:1.35}

.site-account #playerDashboard:is([data-plan="student"],[data-plan="instructor"]) #playerWelcome [data-player-go] p{margin:12px 0 0;font-size:14px;line-height:1.6;font-weight:400;color:#b9c9df}

.site-account #instructorDirectory>h2 .instructor-section-hint{font-size:14px;line-height:1.5;font-weight:400;color:#b9c9df}

#instructorDirectory .instructor-info-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:20px 0}#instructorDirectory .instructor-info-actions>button{width:auto;margin:0}

/* Compact exercise storefront cards; a short last row never stretches. */
.site-account #catalogGrid{grid-template-columns:repeat(auto-fill,minmax(230px,280px));justify-content:start;align-items:start;gap:20px}
.site-account #catalogGrid .catalog-item{padding:16px;border:1px solid #354763;border-radius:18px;background:linear-gradient(145deg,#1b2c43,#131d2e);gap:10px;box-shadow:0 6px 20px #0002;transition:border-color .15s,box-shadow .15s}
.site-account #catalogGrid .catalog-item:hover{border-color:#7899c5;box-shadow:0 8px 24px #0003}
.site-account #catalogGrid .market-cover{height:100px;border-radius:11px;background:radial-gradient(ellipse at 70% 20%,#345779,#18283f 75%);font-size:42px;color:#b9d2ff}
.site-account #catalogGrid .market-cover img{display:block;object-fit:cover}
.site-account #catalogGrid .catalog-item h3{font-size:18px;line-height:1.35;min-height:2.7em;margin:0}
.site-account #catalogGrid .market-price{font-size:21px;color:#c3e6d6;line-height:1.3}
.site-account #catalogGrid .badge{font-size:11px;padding:4px 7px}
.site-account #catalogGrid .catalog-item p{font-size:13px;line-height:1.5}
.site-account #catalogGrid .catalog-description{margin:0;padding:0;border:0;background:none;font-size:13px}
.site-account #catalogGrid .catalog-description summary{cursor:pointer;color:#afc8ec}
.site-account #catalogGrid .catalog-description p{margin-top:10px}
.site-account #catalogGrid .catalog-item .actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}
.site-account #catalogGrid .catalog-item .actions button{font-size:13px;padding:9px 10px;margin:0;white-space:normal;max-width:100%}
@media(max-width:650px){.site-account #catalogGrid{grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),280px))}}
@media(prefers-reduced-motion:reduce){.site-account #catalogGrid .catalog-item{transition:none}}

#exerciseCatalog .market-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}#exerciseCatalog .market-heading h2{margin:0;min-width:0}#exerciseCatalog #marketBalance{font-size:16px;font-weight:600;color:#c3e6d6;text-align:right;flex-shrink:0}

.site-account :is(#freeHome,#studentHome,#instructorHome) #playerWelcome{padding:0;border:0;background:none;margin:24px 0}
.site-account :is(#freeHome,#studentHome,#instructorHome)>#learningLibrary,.site-account :is(#freeHome,#studentHome,#instructorHome)>#instructorDirectory{margin:24px 0}
.site-account :is(#freeHome,#studentHome,#instructorHome) #learningLibrary [data-library-content]>.eyebrow,.site-account :is(#freeHome,#studentHome,#instructorHome) #learningLibrary [data-library-content]>h2+p,.site-account :is(#freeHome,#studentHome,#instructorHome) #learningLibrary [data-library-content]>label,.site-account :is(#freeHome,#studentHome,#instructorHome) #learningLibrary [data-all],.site-account :is(#freeHome,#studentHome,#instructorHome) #learningLibrary [data-materials],.site-account :is(#freeHome,#studentHome,#instructorHome) #learningLibrary [data-reader]{display:none}

/* Game character progression */
.site-account .game-character{padding:24px;border:1px solid #405473;border-radius:18px;background:linear-gradient(145deg,#1b2c45,#111e32);text-align:center;min-width:0}
.site-account .game-character-figure{height:184px;display:flex;align-items:center;justify-content:center}
.site-account .game-character-skin{width:176px;height:176px;background-image:url('/character-male.png');background-size:500% 200%;background-repeat:no-repeat}
.site-account .game-character[data-variant=female] .game-character-skin{width:140px;height:175px;background-image:url('/character-female.png')}
.site-account .game-character h3{margin:10px 0 16px;font-size:22px}
.site-account .game-character progress{display:block;width:100%;height:12px;border:0;border-radius:10px;overflow:hidden;background:#283950;accent-color:#8ec5ff}
.site-account .game-character progress::-webkit-progress-bar{background:#283950;border-radius:10px}
.site-account .game-character progress::-webkit-progress-value{background:linear-gradient(90deg,#629cff,#8de4c2);border-radius:10px;transition:width .4s}
.site-account .game-character progress::-moz-progress-bar{background:#8de4c2}
.site-account .game-character p{margin:12px 0;font-size:15px}.site-account .game-character small{color:#aebdd2;line-height:1.5;display:block}
.site-account .game-character details{text-align:left;margin-top:18px}.site-account .game-character li{margin:8px 0;font-size:14px}
@media(prefers-reduced-motion:reduce){.site-account .game-character progress::-webkit-progress-value{transition:none}}

.site-account .game-level-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:10px;margin-top:22px}
.site-account button.game-level-square{position:relative;aspect-ratio:1;padding:0;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:3px;border-radius:10px;font-size:18px;font-weight:700;background:#234d83;border:1px solid #77b6ff;color:#fff}
.site-account button.game-level-square[data-state=passed]{background:#18543f;border-color:#55b98a;color:#c4ffe1}
.site-account button.game-level-square[data-state=locked]{background:#283140;border-color:#485363;color:#9faaba;opacity:1;cursor:not-allowed}
.site-account .game-level-square svg{width:13px;height:15px;flex-shrink:0}
.site-account .game-level-square:focus-visible{outline:3px solid #cce5ff;outline-offset:3px}
.site-account .game-level-dialog{width:min(560px,90vw);max-height:85vh;overflow:auto;padding:26px;border:1px solid #49617f;border-radius:20px;background:#142137;color:#e9f1ff}
.site-account .game-level-dialog::backdrop{background:#040b16bb}.site-account .game-level-dialog p{line-height:1.6}.site-account .game-level-dialog>button{margin-top:16px}
/* Instructor directory remains one live component across views. */
.site-account #playerDashboard[data-plan="instructor"]:not([data-section="profile"]) #instructorDirectory [data-profile]{display:none}
.site-account #playerDashboard[data-plan="instructor"]:not([data-section="requests"]) #instructorDirectory>details{display:none}
.site-account #playerDashboard[data-plan="instructor"]:is([data-section="profile"],[data-section="requests"]) #instructorDirectory>h2,
.site-account #playerDashboard[data-plan="instructor"]:is([data-section="profile"],[data-section="requests"]) #instructorDirectory>[data-directory],
.site-account #playerDashboard[data-plan="instructor"]:is([data-section="profile"],[data-section="requests"]) #instructorDirectory>[data-summary]{display:none}
.site-account #playerDashboard[data-plan="instructor"][data-section="profile"] #instructorDirectory>[data-refresh]{display:none}

#founderPlanNotice{border:1px solid #ecba65;background:#49371f;color:#ffe0a8;border-radius:12px;padding:12px 16px;font:600 14px inherit}#founderPlanNotice[hidden]{display:none}

.site-account #playerDashboard[data-plan="instructor"] .player-nav [data-player-section="requests"]{grid-template-columns:24px minmax(0,1fr) auto}
.training-menu-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:12px;background:#f4bd64;color:#211704;font-size:12px;font-weight:700}.training-menu-count[hidden]{display:none}

.site-account #instructorHero{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:28px;margin:24px 0;padding:24px;background:linear-gradient(125deg,#1c3047,#142133);border:1px solid #405977;border-radius:20px}
.instructor-hero-skin{width:220px;height:220px;background:url('/instructor-skins.png') no-repeat 0% 50%;background-size:200% 100%}
#instructorHero[data-variant=female] .instructor-hero-skin{background-position-x:100%}
#instructorHero h2{font-size:26px;margin:0 0 14px}#instructorHero .instructor-hero-description{display:flex;align-items:flex-start;gap:16px}#instructorHero [data-hero-bio]{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;flex:1;line-height:1.6}#instructorHero [data-hero-edit]{flex-shrink:0;font-size:24px;padding:4px 12px}
.instructor-hero-status{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;align-items:center}.instructor-hero-status>span{color:#8de5b3}.instructor-hero-status label{display:flex;gap:8px;align-items:center;margin:0}.instructor-hero-status input{width:18px;height:18px}
#instructorHero [data-hero-feedback]:empty{display:none}
.site-account #instructorProfileDialog{width:min(760px,90vw);max-height:85vh;overflow:auto;padding:24px;border-radius:18px;border:1px solid #49617f;background:#142137;color:#e9f1ff}
#instructorProfileDialog::backdrop{background:#040b16bb}
.site-account #playerDashboard[data-plan="instructor"] #instructorDirectory #instructorProfileDialog [data-profile]{display:block}
@media(max-width:850px){.site-account #instructorHero{grid-template-columns:150px minmax(0,1fr);gap:16px}.instructor-hero-skin{width:150px;height:150px}}

#instructorHero button.instructor-hero-skin{border:0;background-color:transparent;cursor:pointer;padding:0;border-radius:16px}#instructorHero button.instructor-hero-skin:hover{outline:2px solid #8fbbe8}#instructorSkinDialog{width:min(800px,90vw);max-height:85vh;overflow:auto;padding:24px;background:#121e30;color:#e0edff;border:1px solid #536985;border-radius:18px}.instructor-skin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.instructor-skin-grid>button{display:flex;flex-direction:column;align-items:center;padding:10px;background:#1b2b41;border:1px solid #50617b;border-radius:14px;color:inherit}.instructor-skin-grid>button[aria-pressed=true]{border:2px solid #7bcdb8}.instructor-skin-grid .instructor-hero-skin{display:block;width:180px;height:180px;background-repeat:no-repeat;background-size:200% 100%}.instructor-hero-skin[data-skin=male-classic]{background-image:url('/instructor-skins.png');background-position:0 0}.instructor-hero-skin[data-skin=female-classic]{background-image:url('/instructor-skins.png');background-position:100% 0}#instructorHero .instructor-hero-skin[data-skin=male-shirt],#instructorHero .instructor-hero-skin[data-skin=male-cardigan],#instructorHero .instructor-hero-skin[data-skin=female-skirt],#instructorHero .instructor-hero-skin[data-skin=female-trousers],.instructor-skin-grid .instructor-hero-skin:not([data-skin$=classic]){background-image:url('/instructor-skins-options.png');background-size:200% 200%}.instructor-hero-skin[data-skin=male-shirt]{background-position:0 0!important}.instructor-hero-skin[data-skin=male-cardigan]{background-position:100% 0!important}.instructor-hero-skin[data-skin=female-skirt]{background-position:0 100%!important}.instructor-hero-skin[data-skin=female-trousers]{background-position:100% 100%!important}@media(max-width:850px){.instructor-skin-grid{grid-template-columns:repeat(2,1fr)}.instructor-skin-grid .instructor-hero-skin{width:160px;height:160px}}

#instructorHero .instructor-hero-skin[data-skin=male-classic]{background-position:0 0!important}#instructorHero .instructor-hero-skin[data-skin=female-classic]{background-position:100% 0!important}

#instructorHero .instructor-hero-skin[data-skin=male-shirt],#instructorHero .instructor-hero-skin[data-skin=male-cardigan],.instructor-hero-skin[data-skin=male-shirt],.instructor-hero-skin[data-skin=male-cardigan]{background-size:200% 188%!important}
#instructorHero .instructor-hero-skin[data-skin=female-skirt],#instructorHero .instructor-hero-skin[data-skin=female-trousers],.instructor-hero-skin[data-skin=female-skirt],.instructor-hero-skin[data-skin=female-trousers]{background-size:200% 214%!important}
#instructorDirectory .instructor-avatar.instructor-hero-skin{display:block;width:110px;height:110px;border:0;border-radius:0;background-color:transparent;background-repeat:no-repeat;background-size:200% 100%}
#instructorDirectory .instructor-avatar.instructor-hero-skin:not([data-skin$=classic]){background-image:url('/instructor-skins-options.png')}

.instructor-hero-skin.has-custom-avatar{position:relative;background-image:none!important;overflow:hidden}.instructor-hero-skin [data-custom-avatar]{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}#instructorDirectory .instructor-avatar.has-custom-avatar{background-image:none!important}.wardrobe-disclosure{margin:18px 0;padding:16px;border:1px solid #526b8b;border-radius:14px;background:#172940}.wardrobe-disclosure>summary{font-size:18px;font-weight:600;cursor:pointer}.wardrobe-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1fr);gap:20px;align-items:start}.wardrobe-preview{position:sticky;top:0;border-radius:14px;background:radial-gradient(ellipse,#2e4a65,#162438);overflow:hidden}.wardrobe-preview img{display:block;width:100%;height:auto}.wardrobe-controls{display:grid;gap:12px}.wardrobe-controls>label{display:grid;gap:6px}.wardrobe-controls select{width:100%;background:#111f32;color:#eef4ff;border:1px solid #61728a;border-radius:8px;padding:10px}.wardrobe-controls fieldset{border:1px solid #61728a;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px}.wardrobe-controls fieldset label{display:flex;align-items:center;gap:8px}.wardrobe-controls input{width:18px;height:18px}.wardrobe-editor .actions{display:flex;flex-wrap:wrap;gap:12px}.wardrobe-editor h3{margin:16px 0}.wardrobe-editor [role=status]:empty{display:none}
#instructorSkinDialog .wardrobe-controls label{margin:0;font-size:14px}#instructorSkinDialog .wardrobe-controls select{margin:0}#instructorSkinDialog .wardrobe-controls input{margin:0}#instructorSkinDialog .wardrobe-controls{gap:14px}#instructorSkinDialog .wardrobe-editor .actions{margin-top:16px}
#instructorHero .instructor-hero-skin.has-outfit,#instructorDirectory .instructor-avatar.has-outfit{background-image:none!important;display:block;padding:0}.outfit-picture{display:block;width:100%;height:100%;background-repeat:no-repeat;pointer-events:none}#instructorSkinDialog.outfit-dialog{width:min(1080px,94vw);padding:24px}.outfit-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.outfit-heading h2{margin:0}.outfit-filters{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.outfit-filters label{display:grid;gap:6px;margin:0}.outfit-filters select{width:100%;background:#142338;color:#edf4ff;border-color:#546b87}.outfit-accessories{display:flex;align-items:center;flex-wrap:wrap;gap:16px;border:1px solid #405673;border-radius:12px;margin:16px 0;padding:12px}.outfit-accessories label{display:flex;gap:8px;align-items:center;margin:0}.outfit-accessories input{width:18px;height:18px;margin:0}.outfit-accessories button{margin-left:auto;padding:8px 12px}.outfit-body{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px}.outfit-preview{position:sticky;top:0;align-self:start;border:1px solid #405673;border-radius:16px;padding:16px;background:radial-gradient(ellipse at top,#304762,#142238)}[data-outfit-preview]{width:100%;aspect-ratio:1}.outfit-preview strong{display:block;margin-top:10px;font-size:17px}.outfit-preview p{font-size:13px}.outfit-preview button{width:100%}.outfit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.outfit-grid>button{display:flex;flex-direction:column;gap:6px;padding:8px;min-width:0;background:#1a2b42;border:1px solid #425b7c;border-radius:12px}.outfit-grid>button>.outfit-picture{width:100%;height:auto;aspect-ratio:1}.outfit-grid>button>span:last-child{font-size:12px}.outfit-grid>button[aria-pressed=true]{border-color:#80d9be;box-shadow:0 0 0 1px #80d9be}.outfit-grid>button:hover{background:#253e5c}.outfit-legacy{margin-top:22px}.outfit-legacy>summary{cursor:pointer;margin-bottom:12px}[data-outfit-status]:empty{display:none}@media(max-width:850px){.outfit-body{grid-template-columns:210px minmax(0,1fr)}.outfit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.outfit-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.outfit-pages button{padding:8px 16px}.outfit-picture{border-radius:12px}.outfit-preview{overflow:hidden}

#instructorHero .instructor-hero-skin.has-placeholder,#instructorDirectory .instructor-avatar.has-placeholder{background-image:none!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background-color:#1d2d43;border:1px dashed #6b819d;border-radius:18px;color:#93a6bf;padding:14px}.outfit-placeholder{display:block;width:65%;max-width:120px;aspect-ratio:1}.outfit-placeholder svg{display:block;width:100%;height:100%}.outfit-placeholder-hint{display:block;color:#d4e4fc;font-size:14px;line-height:1.4;text-align:center;max-width:180px}#instructorHero .has-placeholder:hover{background-color:#293f59;color:#b2c9e5}#instructorDirectory .instructor-avatar.has-placeholder{padding:10px}

.free-plan-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.free-plan-row>.card{margin:0;min-width:0}.free-plan-row:empty{display:none}
.free-plan-row>#accountPlan{order:0}.free-plan-row>#planRequestStatus{order:1}
