.student-xp-layout{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:26px;align-items:start}.student-page-content{min-width:0}.xp-panel{position:sticky;top:112px;text-align:center;padding:24px 18px}.xp-panel .eyebrow{justify-content:center;font-size:11px}.xp-panel h3{font-size:28px;margin:8px 0}.fighter-scene{border-bottom:3px solid #101317;background:linear-gradient(#f5f6f8,#e8ebf0);margin:14px -2px;padding:10px}.pixel-fighter{width:100%;max-width:155px;height:auto;image-rendering:pixelated}.xp-value{font:700 34px 'Barlow Condensed',sans-serif;margin:7px 0 12px}.xp-panel .btn{margin:10px 0;justify-content:center}.xp-panel .link-arrow{justify-content:center;font-size:13px}.pixel-fighter .pixel-body{transform-origin:48px 85px;animation:pixel-breathe 2s steps(2,end) infinite}.pixel-fighter.lift .pixel-arms{animation:pixel-lift 1.2s steps(3,end) infinite}.pixel-fighter.practice .pixel-body{animation:pixel-stance 1.8s steps(3,end) infinite}.pixel-fighter.victory .pixel-body{animation:pixel-victory 1.8s steps(2,end) infinite}.pause-pixels .pixel-fighter *{animation:none!important}@keyframes pixel-breathe{50%{transform:translateY(-2px)}}@keyframes pixel-lift{50%{transform:translateY(-9px)}}@keyframes pixel-stance{50%{transform:translateX(4px) rotate(3deg)}}@keyframes pixel-victory{50%{transform:translateY(-5px)}}.upgrade-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}.upgrade-stats .panel{margin:0;padding:23px}.upgrade-stats strong{display:block;font:700 44px 'Barlow Condensed',sans-serif}.upgrade-stats span{color:var(--ink-3);font-size:14px}.pending-box{background:#fff;border:1px solid #d8dde4;border-top:3px solid #d0102b;padding:20px;margin:14px 0 25px;font-size:15px}.course-grid .pending-box{margin-top:-1px}.pending-box details{margin:12px 0}.pending-box summary{cursor:pointer;font-weight:600}.pending-box ol{padding-left:20px;line-height:1.6}.pending-box li{margin:5px 0}.pending-box a{color:#bc0925}.pending-box .btn{color:#fff}.pending-box p{margin:7px 0}.pixel-explanation{margin:25px 0 35px;background:#eff1f5;border:1px solid #d6dce4;border-bottom:5px solid #111;padding:20px}.pixel-explanation>figcaption{font:700 23px 'Barlow Condensed';text-transform:uppercase}.pixel-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:15px}.pixel-steps>div{text-align:center;border-right:1px solid #d0d5dc}.pixel-steps>div:last-child{border:0}.pixel-steps span{display:block;font-size:14px;line-height:1.5}.pixel-steps b{color:#d0102b;margin-right:4px}.pixel-steps .pixel-fighter{max-width:115px}.lesson-media{margin:30px 0}.lesson-media img,.lesson-media video{display:block;max-width:100%;max-height:550px;margin:auto}.lesson-media iframe{width:100%;aspect-ratio:16/9;border:0}.lesson-media figcaption{margin-top:10px;text-align:center;color:var(--ink-3);font-size:14px}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.calendar-heading h3{text-transform:capitalize;font-size:25px;margin:0}.calendar-heading a{padding:6px 12px;font-size:24px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:18px}.calendar-grid>b{text-align:center;font-size:12px;text-transform:uppercase}.calendar-day{min-height:72px;background:#f4f5f7;border:1px solid #e0e3e7;padding:6px;color:#252933;text-align:left;cursor:pointer}.calendar-day strong{font-size:16px}.calendar-day span{display:block;font-size:10px;line-height:1.35;margin-top:3px}.calendar-day.scheduled{background:#fce8ec;border-color:#e9b5bf;color:#b10926}.calendar-day.today{outline:2px solid #111;outline-offset:-2px}.calendar-day:hover{border-color:#111}.weekday-picker{border:0;padding:0;display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.weekday-picker legend{font-weight:600;margin-bottom:10px}.weekday-picker label{font-size:14px;display:flex;gap:5px;align-items:center}.schedule-list{padding-left:20px}.schedule-list li{padding:10px 0;border-bottom:1px solid #e2e5e9}.schedule-list span{display:block;margin-top:5px;color:var(--ink-3)}.note-prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.ticket-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}.ticket-reply{background:#f1f3f6;border-left:3px solid #8c97a9;padding:16px;margin:18px 0}.ticket-reply.admin{background:#fff1f3;border-color:#d0102b}.ticket-reply p{margin:7px 0}.ticket-reply small{color:var(--ink-3)}.privacy-controls .actions-row{margin:15px 0}.privacy-controls .btn{margin:6px 6px 12px 0}.privacy-controls>a{display:block;margin-top:15px}.cookie-banner{position:fixed;z-index:45;bottom:18px;left:20px;right:20px;max-width:1120px;margin:auto;background:#fff;border:1px solid #c7cdd7;border-top:5px solid #111;box-shadow:0 8px 45px #0003;padding:22px 26px;display:flex;align-items:center;gap:28px}.cookie-banner>div:first-child{flex:1}.cookie-banner p{font-size:14px;line-height:1.5;margin:8px 0}.cookie-banner strong{font:700 24px 'Barlow Condensed'}.cookie-banner .actions-row{flex-wrap:wrap;max-width:420px;gap:9px}.cookie-banner .btn{border:1px solid #111}.cookie-banner a{font-size:13px;text-decoration:underline}.policy-copy{max-width:850px;margin-top:35px;line-height:1.8}.policy-copy h2{margin-top:35px;font-size:30px}.policy-copy a{overflow-wrap:anywhere;color:#bf0b28}.verification-card{max-width:650px;margin:40px auto}.verified-certificate{position:relative;border:1px solid #c8cdd5;box-shadow:0 8px 35px #0001;padding:80px 50px 40px}.verified-certificate>.eyebrow{justify-content:center}.certificate-seal{position:absolute;right:28px;top:25px;width:110px;height:110px;border:3px double #242b34;outline:1px solid #242b34;outline-offset:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(12deg);color:#242b34;background:#fff}.certificate-seal span{font:800 25px 'Barlow Condensed'}.certificate-seal strong{font-size:10px;letter-spacing:.3px}.certificate-seal small{font-size:11px;font-weight:700}.certificate-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;text-align:left;margin-top:35px}.certificate-bottom>div:first-child{max-width:70%}.certificate-qr{width:115px;flex-shrink:0;text-align:center}.certificate-qr svg{width:115px;height:115px;display:block}.certificate-qr small{font-size:10px}.certificate-sharing{margin-bottom:25px}.victory-banner{display:flex;align-items:center;gap:20px;background:#f3f5f8;padding:20px;margin-top:20px}.victory-banner svg{width:90px}.assessment-editor{border:1px solid #d6dbe3;background:#f8f9fb;padding:20px;margin-top:25px}.assessment-editor h3{margin:22px 0 12px;font-size:24px}.assessment-editor h3:first-child{margin-top:0}.question-editor{border:1px solid #d6dbe3;background:white;padding:13px;margin:12px 0}.question-editor summary{font-weight:600;cursor:pointer}.question-editor[open] summary{margin-bottom:18px}.assessment-editor .actions-row{flex-wrap:wrap;margin:15px 0}.privacy-request{border-top:1px solid #ddd;padding:12px 0}.success{border-color:#29845c;background:#effaf3}.completion-bar .btn:disabled{opacity:.45;cursor:not-allowed}.footer-bottom .btn-text{color:inherit;padding:0;display:inline;font-size:inherit}
@media(min-width:1500px){.student-xp-layout{grid-template-columns:minmax(0,1fr) 255px}.xp-panel{padding:28px 24px}}@media(max-width:1150px){.student-xp-layout{grid-template-columns:minmax(0,1fr) 190px;gap:18px}.student-page-content .dash-grid{grid-template-columns:1fr}.student-page-content .my-grid{grid-template-columns:1fr}.cookie-banner{flex-direction:column;align-items:stretch;gap:14px}.cookie-banner .actions-row{max-width:none}}@media(max-width:850px){.student-xp-layout{display:flex;flex-direction:column}.student-page-content{width:100%}.xp-panel{position:static;width:100%;display:grid;grid-template-columns:110px 1fr;column-gap:15px;text-align:left}.xp-panel .fighter-scene{grid-row:1/8;margin:0}.xp-panel .eyebrow{justify-content:flex-start}.xp-panel .btn{grid-column:2}.xp-panel .link-arrow{justify-content:flex-start}.upgrade-stats{gap:9px}.upgrade-stats .panel{padding:16px 12px}.upgrade-stats strong{font-size:34px}.upgrade-stats span{font-size:12px}.cookie-banner{bottom:9px;left:9px;right:9px;padding:15px}.cookie-banner .btn{font-size:12px;padding:9px 12px}.verified-certificate{padding:135px 20px 25px}.certificate-seal{right:20px;top:20px;width:95px;height:95px}.certificate-bottom{gap:10px}.certificate-bottom>div:first-child{max-width:60%}.pixel-explanation{padding:14px}.pixel-steps{gap:8px}.pixel-steps span{font-size:12px}.calendar-day{min-height:57px}.calendar-day span{font-size:9px}.ticket-heading{align-items:flex-start}.ticket-heading h3{font-size:24px}}@media(prefers-reduced-motion:reduce){.pixel-fighter *{animation:none!important}}@media print{.certificate-sharing,.cookie-banner,.xp-panel,.dash-heading,.privacy-controls{display:none!important}.student-xp-layout{display:block}.verified-certificate{box-shadow:none;padding:80px 35px 30px;break-inside:avoid}.certificate-seal{print-color-adjust:exact}.certificate-qr svg{display:block}.certificate-bottom{display:flex}.pixel-fighter *{animation:none!important}}

.pending-box>strong{display:block;margin-bottom:12px}.pending-box>.btn,.pending-box>.link-arrow{margin-top:8px}.student-page-content .learning-layout{grid-template-columns:minmax(0,1fr) 270px}@media(max-width:1250px){.student-page-content .learning-layout{grid-template-columns:1fr}.student-page-content .learning-sidebar{position:static}}

.locked-lesson{display:flex;align-items:center;gap:8px;padding:12px 8px;color:#8a929e;font-size:13px;border-bottom:1px solid #e3e7ed;cursor:not-allowed}.verified-certificate .certificate-title{font-size:45px;margin:25px 0 30px}.calendar-day:disabled{cursor:default;opacity:.45}

.header-actions .header-access{border:1px solid #74767d;background:transparent;color:#fff;font-size:13px;min-height:37px;padding:8px 13px;border-radius:2px;font-weight:600;white-space:nowrap}.header-actions .header-access:hover,.header-actions .header-access:focus-visible{background:#fff;color:#111;border-color:#fff}.header-actions{gap:10px}.language-switcher{position:relative;margin-left:5px}.language-trigger{display:flex;align-items:center;justify-content:center;gap:7px;width:61px;height:37px;border:1px solid #555861;background:#17191d;border-radius:3px;cursor:pointer;color:#fff;padding:6px}.language-flag{width:27px;height:18px;display:block;border-radius:2px;box-shadow:0 0 0 1px #ffffff24}.language-menu{position:absolute;z-index:60;right:0;top:calc(100% + 9px);background:#17191d;border:1px solid #51545b;border-radius:4px;padding:8px;box-shadow:0 10px 30px #0004;display:flex;gap:8px}.language-menu[hidden]{display:none}.language-menu button{width:46px;height:36px;display:grid;place-items:center;background:transparent;border:1px solid #626773;border-radius:3px;cursor:pointer}.language-menu button:hover,.language-menu button[aria-pressed="true"]{border-color:#fff;background:#363a43}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.returning-account{border:1px solid #d0d5df;background:#f2f4f7;padding:18px;font-size:16px;font-weight:500;color:#16191f}.returning-account a{display:inline-block;background:#111;color:#fff;padding:9px 17px;margin-left:9px;font-weight:700;font-size:14px;border-radius:2px}.returning-account a:hover{background:#d0102b}.topbar-in{gap:22px}@media(max-width:720px){.header-actions .header-access{display:flex;font-size:11px;padding:7px 9px;min-height:34px}.header-actions{gap:6px}.language-trigger{width:47px;height:34px;gap:4px}.language-flag{width:23px;height:16px}.language-switcher{margin-left:1px}.brand-name{font-size:17px}.brand svg{width:28px;height:28px}.topbar-in{gap:8px}.header-actions .menu-btn{width:29px}.brand-sub{font-size:7px}.returning-account a{display:block;margin:12px auto 0;max-width:170px}}@media(max-width:460px){.header-actions .header-access{font-size:10px;padding:6px 7px}.brand-name{font-size:14px}.brand-sub{font-size:6px}.brand svg{width:22px;height:22px}.brand{gap:6px}.language-trigger{width:38px;border:0;padding:2px}.language-trigger>span{font-size:10px}.header-actions .menu-btn{width:24px}.topbar-in{padding-inline:12px;gap:5px}.header-actions{gap:4px}}@media(max-width:360px){.header-actions .header-access{font-size:9px;padding:6px}.brand-name{font-size:12px}.brand-sub{letter-spacing:.12em}.brand svg{width:19px;height:19px}.language-flag{width:20px}.language-trigger{width:33px}}
.header-actions .menu-btn{padding:0;flex-shrink:0}.header-actions .language-switcher{flex-shrink:0}@media(max-width:460px){.header-actions .header-access{width:66px;max-width:66px;white-space:normal;line-height:1.15;text-align:center;justify-content:center;padding:5px 4px;font-size:10px}.header-actions{flex-shrink:0}.topbar-in{padding-inline:10px}.language-trigger{width:34px}.header-actions .menu-btn{width:22px}.topbar-in .brand{flex-shrink:0}}@media(max-width:360px){.header-actions .header-access{width:56px;max-width:56px;font-size:9px}.topbar-in{padding-inline:8px}.topbar-in .brand-name{font-size:11px}.topbar-in .brand-sub{font-size:5px;letter-spacing:.1em}.topbar-in .brand svg{width:18px;height:18px}.topbar-in .brand{gap:4px}.language-trigger{width:31px}.header-actions .menu-btn{width:20px}}
@media(max-width:360px){.audience-grid{grid-template-columns:1fr}.audience-card{min-width:0}.hero-copy h1{font-size:48px}}

/* Student library: a single card holds the summary, pending lessons and progress. */
.student-page-content .my-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.student-course-card{height:100%;min-width:0}
.student-course-card .course-body{padding:22px;gap:0}
.student-course-card .course-body h3{font-size:28px;line-height:1.12;margin-bottom:12px;overflow-wrap:anywhere}
.student-course-card .course-description{line-height:1.55;margin-bottom:16px}
.student-course-card .course-meta{flex-wrap:wrap;row-gap:6px;margin-bottom:22px}
.student-course-card .course-status{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;min-height:151px;margin-bottom:18px;font-size:15px}
.course-status-title{display:flex;align-items:center;gap:9px;margin:0 0 9px}
.course-status-dot{width:8px;height:8px;flex-shrink:0;background:var(--accent);border-radius:50%}
.course-status.is-complete .course-status-dot{background:#237b54}
.course-status p.small{margin:0 0 10px;line-height:1.5}
.course-status .course-next-lesson{overflow-wrap:anywhere}
.course-status details{margin-top:10px}
.course-status summary{font-weight:600;cursor:pointer;line-height:1.4}
.course-status ol{padding-left:20px;line-height:1.6;margin:12px 0 0}
.course-status li{margin-bottom:8px;overflow-wrap:anywhere}
.course-status a{color:var(--accent)}
.course-status .link-arrow{font-size:14px;margin-top:12px}
.student-course-card .course-foot{display:block;border-top:0;padding-top:0}
.student-course-card .course-foot .btn{width:100%;margin-top:15px;white-space:normal}
.student-page-content .courses-empty{grid-column:1/-1}
@media(min-width:851px) and (max-width:1100px){.student-page-content .my-grid{grid-template-columns:1fr}}
@media(max-width:620px){.student-page-content .my-grid{grid-template-columns:1fr;gap:20px}.student-course-card .course-body{padding:20px}.student-course-card .course-status{min-height:0}.student-course-card .course-body h3{font-size:27px}}

.pace-reminder{border-left-color:var(--accent);color:var(--ink);font-size:14px;margin:12px 0}.pace-reminder p{margin:0 0 6px}.pace-reminder .pace-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.pace-reminder .btn{margin-top:6px}
