.student-dashboard{--student-header-height:57px;--dashboard-gap:12px;--dashboard-padding:20px;--dashboard-surface-primary:#110a25;--dashboard-surface-secondary:#1b1135;--dashboard-cyan:#00ddfa;min-height:100vh;background:#050308;color:#f8f5ff}.student-dashboard h1,.student-dashboard h2,.student-dashboard h3{margin:0;font-family:var(--vt323-regular),monospace;font-weight:400;letter-spacing:.02em}.dashboard-header{position:sticky;top:0;z-index:40;background:#22144a;border-bottom:1px solid #3c286c}.dashboard-header nav{justify-content:space-between;min-height:calc(var(--student-header-height) - 1px);padding:2px 24px}.dashboard-brand,.dashboard-header nav,.dashboard-header-actions{display:flex;align-items:center;gap:12px}.dashboard-brand,.dashboard-brand>a{min-width:0}.dashboard-header-actions{flex-shrink:0}.dashboard-brand img{width:224px;max-width:100%;height:auto}.dashboard-icon-button{color:#fff}.dashboard-icon-button:hover{background:#3e2486;color:#fff}.dashboard-icon-button svg{width:22px;height:22px}.dashboard-settings{width:240px;padding:8px;border-color:#59417d;background:#22144a;color:#fff}.dashboard-settings [role=menuitem]{min-height:44px;padding:10px;font-size:14px;cursor:pointer}.dashboard-settings [role=menuitem]:focus,.dashboard-settings [role=menuitem][data-state=open]{background:#3e2486;color:#fff}.dashboard-settings .dashboard-menu-unavailable{color:#aaa2ba;cursor:not-allowed;padding-bottom:22px}.dashboard-settings .dashboard-menu-unavailable:focus{color:#aaa2ba}.dashboard-menu-tooltip{position:absolute;left:34px;bottom:3px;visibility:hidden;font-size:12px;color:#ded6ed}.dashboard-menu-unavailable:focus .dashboard-menu-tooltip,.dashboard-menu-unavailable:hover .dashboard-menu-tooltip{visibility:visible}.dashboard-main{max-width:1920px;margin:0 auto;padding:48px 24px 32px}.dashboard-main:has(.dashboard-grid){padding:var(--dashboard-gap)}.dashboard-grid{display:grid;grid-template-columns:repeat(var(--dashboard-columns),minmax(0,1fr));grid-auto-rows:minmax(44px,auto);gap:var(--dashboard-gap)}.dashboard-widget{grid-column:var(--widget-column);grid-row:var(--widget-row);display:flex;flex-direction:column;min-width:0;border:1px solid #312346;border-radius:8px;color:inherit;box-shadow:none;overflow:hidden}.dashboard-widget--primary{background:var(--dashboard-surface-primary)}.dashboard-widget--secondary{background:var(--dashboard-surface-secondary)}.dashboard-widget-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:69px;padding:14px var(--dashboard-padding);border-bottom:1px dashed #00ddfa80;text-align:left}.dashboard-streak-heading h2,.dashboard-widget-heading h2{font-size:28px;color:var(--dashboard-cyan);text-transform:uppercase}.dashboard-widget-body{flex:1;min-height:0;min-width:0;padding:var(--dashboard-padding)}.dashboard-widget[data-overflow=scale-down] .dashboard-widget-body{display:flex;overflow:hidden}.dashboard-widget-viewport{position:relative;flex:1;min-width:0;min-height:0}.dashboard-widget-content{display:grid;width:100%;min-width:min-content;min-height:100%;transform-origin:top left}.dashboard-career .dashboard-widget-body,.dashboard-greeting .dashboard-widget-body{display:grid;place-items:center;padding:12px}.dashboard-greeting{min-height:72px}.dashboard-greeting h2{font-size:30px;line-height:1.1;text-align:center;overflow-wrap:anywhere;max-width:100%}.dashboard-greeting-loading{display:grid;place-items:center;width:100%;min-height:48px}.dashboard-greeting-error{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;font-size:13px;min-height:48px;color:#c8bedb}.dashboard-greeting-error button{gap:6px;color:#fff}.dashboard-career{border:2px dashed #d6cbe9}.dashboard-career h2{color:#b786ff;font-size:24px;text-align:center;text-transform:uppercase}.dashboard-learning-paths .dashboard-widget-body{flex-basis:0;padding:8px;overflow:hidden;container-type:size}.dashboard-paths{--path-label-size:clamp(12px,6cqw,20px);--path-gap:clamp(2px,5cqh,8px);--path-details-size:14px;--path-details-gap:var(--path-gap);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:100%;width:100%;gap:8px;align-items:center;text-align:center}.dashboard-paths>div{display:grid;justify-items:center;gap:var(--path-gap);min-width:0}.dashboard-progress-ring{display:grid;place-items:center;width:min(96px,calc((100cqw - 16px) / 3),calc(100cqh - var(--path-label-size) - var(--path-gap) - var(--path-details-size) - var(--path-details-gap)));aspect-ratio:1;min-height:0;min-width:0;container-type:inline-size;border:clamp(2px,1.5cqw,4px) solid;border-radius:50%}.dashboard-progress-ring span{font:clamp(0px,32cqw,24px) /1 var(--vt323-regular),monospace;color:#fff}.dashboard-paths h2{font-size:var(--path-label-size);line-height:1;text-transform:uppercase}.student-weekly-streak{display:inline-flex;align-items:center;gap:4px;flex:none;padding:6px 8px;color:#fb923c;border-radius:8px}.student-weekly-streak:hover{background:#fb923c15}.student-weekly-streak:focus-visible{outline:2px solid var(--dashboard-cyan);outline-offset:2px}.student-weekly-streak-value{font:28px/1 var(--vt323-regular),monospace;font-variant-numeric:tabular-nums}.dashboard-stats .dashboard-widget-heading{border:0}.dashboard-stats .dashboard-widget-body{display:grid;place-items:center;padding-top:0}.dashboard-radar{display:block;width:min(100%,240px)}.dashboard-quests{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:24px;max-height:306px;overflow-y:auto;padding:8px 12px;scrollbar-color:#c9bddf transparent;scrollbar-width:thin}.dashboard-quest-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:132px;min-width:min(100%,140px);max-width:140px;width:100%;justify-self:center;border:3px dashed #b0a7c5;border-radius:14px;color:#aaa1bd;font:20px/1.05 var(--vt323-regular),monospace;text-align:center;text-transform:uppercase}.dashboard-quest-tile svg{width:20px;height:20px}.student-quest-card{--quest-color:#1ad69c;--quest-base:#172d38;--quest-fill:#195344;border-color:var(--quest-color);color:var(--quest-color);background:linear-gradient(to right,var(--quest-fill) 0 var(--quest-progress),var(--quest-base) var(--quest-progress) 100%);text-transform:uppercase;cursor:pointer}.student-quest-card[data-group=adventurer]{--quest-color:#f3c449;--quest-base:#302936;--quest-fill:#5d462c}.student-quest-card[data-group=pioneer]{--quest-color:#f34b7f;--quest-base:#301d3a;--quest-fill:#5a2544}.student-quest-card:hover{filter:brightness(1.12)}.student-quest-card:focus-visible{outline:2px solid var(--dashboard-cyan);outline-offset:3px}.dashboard-quest-number{font-size:30px}.dashboard-skills{display:flex;flex-direction:column;justify-content:space-between;gap:30px;height:100%;padding:8px 8px 2px}.dashboard-skill-track{height:16px;border-radius:2px;overflow:hidden;background:#d2d4de}.dashboard-skill-track>span{display:block;height:100%;border-radius:0 0 16px 0;background:#2f54df}.dashboard-skill-label{display:flex;justify-content:space-between;gap:8px;margin-top:5px;font:18px var(--vt323-regular),monospace}.dashboard-skill-label>span:last-child{color:#aaa1bd}.dashboard-shortcut{display:flex;flex-direction:column;justify-content:space-between;height:100%;gap:30px}.dashboard-shortcut-details{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;min-width:0}.dashboard-shortcut-details>button:first-child,.dashboard-shortcut-details>button:last-child{flex:none;width:28px;color:#c4b8dd}.dashboard-shortcut-details>button:first-child:hover,.dashboard-shortcut-details>button:last-child:hover{background:#3e2486;color:#fff}.student-shortcut-position{text-align:center;color:#c4b8dd;font:18px var(--vt323-regular),monospace}.dashboard-carousel-arrow{width:16px;flex:none;color:#c4b8dd}.dashboard-shortcut-cover{display:grid;place-items:center;flex:none;width:140px;min-width:140px;min-height:120px;height:auto;padding:8px;border:3px dashed var(--quest-color);border-radius:14px;font:22px/1.1 var(--vt323-regular),monospace;text-align:center;overflow-wrap:anywhere;white-space:normal}.dashboard-shortcut-cover:focus-visible{outline:2px solid var(--dashboard-cyan);outline-offset:3px}.dashboard-shortcut-description{flex:1;min-width:0;overflow-wrap:anywhere;text-align:center;font:22px/1.2 var(--vt323-regular),monospace}.dashboard-shortcut-description h3{color:#f3c449;font-size:28px;text-transform:uppercase}.dashboard-shortcut-description p{margin:16px 0}.dashboard-shortcut-subtitle{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dashboard-shortcut-subtitle-trigger{display:block;width:100%;height:auto;padding:0;white-space:normal;color:inherit;font:inherit;text-align:inherit}.dashboard-shortcut-subtitle-trigger:hover{background:#ffffff08;color:inherit}.dashboard-shortcut-subtitle-trigger:focus-visible{outline:2px solid var(--dashboard-cyan);outline-offset:3px}.dashboard-shortcut-tooltip{max-width:min(40ch,calc(100vw - 32px),var(--radix-tooltip-trigger-width));max-height:min(calc(100dvh - 32px),var(--radix-tooltip-content-available-height));overflow-y:auto;overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px;line-height:1.5}.dashboard-widget[data-widget=shortcut] .dashboard-widget-body{container-type:inline-size}.dashboard-shortcut-description>span{color:#ff6573}.dashboard-play{width:100%;height:32px;background:#1ad69c;color:#050308;font-weight:400;text-transform:uppercase}.dashboard-play:disabled{opacity:.65}.dashboard-account{margin-top:var(--dashboard-gap);padding:16px 20px;border:1px solid #312346;border-radius:8px;background:var(--dashboard-surface-primary)}.dashboard-account-content{padding:16px 0}.dashboard-account-content p{overflow-wrap:anywhere}.dashboard-account-content input{color:inherit}.dashboard-account-content button{color:#201a35}@media (max-width:1199px){.student-dashboard{--dashboard-gap:10px;--dashboard-padding:16px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}.dashboard-widget{grid-column:auto;grid-row:auto}.dashboard-career,.dashboard-greeting{min-height:72px}.dashboard-widget[data-widget=paths]{min-height:180px}.dashboard-widget[data-widget=badges],.dashboard-widget[data-widget=quests]{min-height:380px}.dashboard-widget:last-child:nth-child(odd){grid-column:1/-1}.dashboard-widget[data-widget=shortcut],.dashboard-widget[data-widget=skills]{min-height:340px}.dashboard-honeycomb{--hex-width:clamp(36px,4.5vw,52px)}.dashboard-shortcut-details{gap:8px}}@media (max-width:699px){.dashboard-header nav{padding:2px 12px}.dashboard-brand{gap:8px}.dashboard-brand img{width:168px}.dashboard-header-actions{gap:0}.dashboard-main{padding:24px 16px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-widget[data-widget]{grid-column:auto}.dashboard-widget[data-widget=paths]{min-height:160px}.dashboard-honeycomb{--hex-width:clamp(32px,8.5vw,48px)}.dashboard-shortcut-description{font-size:20px}.dashboard-skills{gap:24px;padding:8px 0}.dashboard-quests{gap:12px;padding:4px}.dashboard-quest-tile{min-height:120px;font-size:18px}}@container (max-width: 420px){.dashboard-shortcut-details{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;gap:12px}.dashboard-shortcut-cover{grid-column:2;grid-row:1;justify-self:center}.dashboard-shortcut-description{grid-column:2;grid-row:2}.dashboard-shortcut-details>button:first-child{grid-column:1;grid-row:1/3}.dashboard-shortcut-details>button:last-child{grid-column:3;grid-row:1/3}}.dashboard-career .dashboard-widget-body,.dashboard-greeting .dashboard-widget-body{padding:0;align-items:stretch}.dashboard-career .dashboard-widget-content,.dashboard-greeting .dashboard-widget-content{padding:12px;place-items:center}.dashboard-career h2{width:100%}.dashboard-widget-link{cursor:pointer}.dashboard-widget-link:focus-visible{outline:2px solid var(--dashboard-cyan);outline-offset:-4px}.dashboard-career-link:hover{color:#dac3ff;text-decoration:underline}.dashboard-greeting-link:hover{background:#ffffff08;color:#dac3ff}.student-progress-empty{display:grid;place-items:center;min-height:100px;height:100%;color:#c8bedb;text-align:center;font-size:14px}.student-progress-content{display:flex;flex-direction:column;height:100%;gap:16px}.student-progress-pages{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;font-size:14px}.student-map-button,.student-progress-pages button{color:inherit}.student-progress-pages button:hover{color:#fff;background:#3e2486}.student-skill-acquisitions{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));flex:1;list-style:none;padding:0;margin:0;gap:16px}.student-skill-button{display:flex;width:100%;align-items:center;gap:12px;text-align:left;border-radius:6px}.student-skill-value{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.student-skill-value .dashboard-skill-label{margin-top:0;gap:8px}.student-skill-value .dashboard-skill-label>span:first-child{overflow-wrap:anywhere}.student-skill-value .dashboard-skill-label>span:last-child{flex:none}.student-reward-acquisitions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px 8px;padding:0;margin:0;list-style:none}.student-reward-acquisitions button{display:flex;flex-direction:column;align-items:center;width:100%;gap:6px;border-radius:6px}.student-reward-hex{display:block;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.student-reward-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:13px}.student-map-button{flex-direction:column;align-items:center;width:100%;height:100%;border-radius:6px;font-size:13px}.student-map-button,.student-map-legend{display:flex;justify-content:center;gap:12px}.student-map-legend{flex-wrap:wrap}.student-map-legend>span:first-child{color:#1ad69c}.student-map-legend>span:last-child{color:#b786ff}.student-map-button:focus-visible,.student-reward-acquisitions button:focus-visible,.student-skill-button:focus-visible{outline:2px solid #00ddfa;outline-offset:4px}@media (max-width:699px){.student-reward-acquisitions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1200px){.student-dashboard:has(.dashboard-grid){display:flex;flex-direction:column;height:100dvh;min-height:0}.student-dashboard:has(.dashboard-grid)>.dashboard-header{flex:none}.dashboard-main:has(.dashboard-grid){flex:1;min-height:0;width:100%;display:flex;flex-direction:column}.dashboard-main>:has(.dashboard-grid){flex:1;min-height:0}.dashboard-grid{height:100%;min-height:0;grid-auto-rows:minmax(0,1fr)}.dashboard-widget{min-height:0}.dashboard-widget-body{flex-basis:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:#c9bddf transparent;scrollbar-width:thin}.dashboard-paths,.dashboard-stats .dashboard-widget-body{align-items:safe center}.student-map-button{justify-content:safe center}.dashboard-quests{max-height:none;overflow:visible}.student-skill-acquisitions{grid-template-rows:repeat(4,minmax(min-content,1fr))}.dashboard-shortcut>*,.student-progress-content>*{flex-shrink:0}}@media (max-width:1199px){.dashboard-widget[data-widget=shortcut]{order:-1}}.dashboard-paths small{font:11px/1.2 sans-serif;color:#c8bedb}.dashboard-learning-paths [data-query-skeleton=paths],.dashboard-learning-paths [data-query-skeleton=paths]>div{height:100%;width:100%}@media (min-width:1200px) and (max-height:650px){.dashboard-paths{--path-details-size:0px;--path-details-gap:0px}.dashboard-paths small{display:none}}.career-page{background:#22144a}.career-gallery-heading{position:sticky;top:var(--student-header-height);z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:16px 24px;background:#22144a}.career-gallery-heading h2{font:700 32px/1.2 var(--nunito-regular),sans-serif;letter-spacing:-.02em}.career-back{justify-self:start;color:#f3c449;font:500 16px var(--roboto),sans-serif}.career-back:hover{color:#f3c449;background:#3e2486}.career-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1200px;margin:auto;padding:24px 48px 64px}.career-card{display:flex;flex-direction:column;align-items:center;width:100%;min-width:0;padding:20px 16px 16px;border-color:#ffffff20;background:#2b2050;box-shadow:none;border-radius:20px;color:#f8f5ff;font:600 18px/1.35 var(--nunito-regular),sans-serif}.career-card:focus-visible{outline:2px solid #00ddfa;outline-offset:4px}.career-robot{position:relative;display:block;width:min(100%,220px);height:260px;margin-bottom:16px}.career-robot-background{position:absolute;inset:32px 4% 12px;border-radius:50%;background:#16cfa1}.career-card[data-chosen=true]{color:#f3c449}.career-card[data-chosen=true] .career-robot-background{background:#f3c449;outline:3px dashed #f3c449;outline-offset:8px}.career-card[data-available=false]{color:#b8afc8}.career-card[data-available=false] .career-robot-background{background:#a79eaf}.career-name{max-width:280px}.career-card-state{display:flex;align-items:center;gap:6px;min-height:28px;margin-top:8px;font:14px var(--roboto),sans-serif;text-shadow:none}.career-card-state svg{width:16px;height:16px}.career-details{display:flex;flex-direction:column;gap:0;width:calc(100% - 32px);max-width:1000px;max-height:calc(100dvh - 32px);padding:24px;border:1px solid #ffffff30;border-radius:20px;background:var(--brand-purple-dark);color:#f8f5ff;font:16px/1.6 var(--roboto),sans-serif}.career-details>h2{flex:none;padding:0 40px 18px 0;font:700 28px/1.2 var(--nunito-regular),sans-serif;letter-spacing:-.02em}.career-detail-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:8px}.career-detail-intro{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:24px;margin-bottom:24px}.career-detail-art{position:relative;height:180px}.career-detail-story{min-width:0}.career-detail-story blockquote{margin:0 0 16px;padding:8px 16px;border-left:3px solid var(--brand-green);color:#75edc9;font-size:20px;line-height:1.4}.career-detail-story p{margin-top:8px;color:#e5dff1}.career-details h3{font:700 18px/1.35 var(--nunito-regular),sans-serif;letter-spacing:0}.career-detail-columns{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;padding-bottom:4px}.career-detail-content{min-width:0;padding:20px;border-radius:16px;box-shadow:none}.career-detail-section+.career-detail-section{margin-top:24px}.career-detail-section h3{margin-bottom:12px;color:#f8f5ff}.career-traits{display:grid;gap:10px;padding-left:20px;list-style:disc;color:#e5dff1}.career-traits li::marker{color:var(--brand-green)}.career-tags{display:flex;flex-wrap:wrap;gap:8px}.career-tags li{max-width:100%;padding:5px 10px;border:1px solid #ffffff24;border-radius:8px;background:#ffffff08;color:#e5dff1;overflow-wrap:anywhere}.career-statistics{width:100%;font-size:16px}.career-statistics tr{border-color:#ffffff15}.career-statistics tr:hover{background:transparent}.career-statistics th{width:48%;padding:8px 8px 8px 0;color:#e5dff1;font-weight:400}.career-statistics td{padding:8px 0}.career-stat-track{display:inline-block;width:calc(100% - 44px);height:8px;vertical-align:middle;overflow:hidden;border-radius:4px;background:#ffffff24}.career-stat-track>span{display:block;height:100%;border-radius:inherit;background:var(--brand-green)}.career-stat-score{display:inline-block;width:44px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:#f8f5ff}.career-detail-action{flex:none;display:flex;justify-content:center;margin-top:16px;padding-top:16px;border-top:1px solid #ffffff20}.career-detail-action button{width:min(100%,400px)}@media (max-width:1000px){.career-gallery{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 24px 48px;gap:24px}}@media (max-width:700px){.career-gallery{grid-template-columns:minmax(0,1fr);padding:8px 24px 40px;gap:20px}.career-gallery-heading{padding:12px;gap:4px}.career-gallery-heading h2{font-size:24px}.career-back{padding:8px}.career-robot{width:200px;height:240px}.career-details{width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:16px;border-radius:16px}.career-details>h2{font-size:24px;padding-bottom:16px}.career-detail-intro{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:16px}.career-detail-art{width:80px;height:100px;justify-self:center}.career-detail-story blockquote{font-size:18px}.career-detail-columns{grid-template-columns:minmax(0,1fr)}.career-detail-content{padding:16px}}.career-details>button:last-child{color:#f8f5ff}.career-details>button:last-child:hover{color:hsl(var(--accent-foreground))}