/* catalog-navigation */
/* Native navigation stays immediate; the browser blends the ready pages. */
html{background-color:var(--theme-bg,#0f172a)}
@media (prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto}
  ::view-transition-old(root){animation:academy-page-out .18s ease-out both}
  ::view-transition-new(root){animation:academy-page-in .18s ease-out both}
  .catalog-page{animation:academy-catalog-enter .22s ease-out both}
}
@media (prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  .catalog-page{animation:none}
}
@keyframes academy-page-out{to{opacity:0}}
@keyframes academy-page-in{from{opacity:0}}
@keyframes academy-catalog-enter{from{opacity:.8;transform:translateY(4px)}to{opacity:1;transform:none}}

/* student-experience */
:root{--se-accent:var(--accent,#8874ef);--se-panel:var(--card-bg,var(--bg-secondary,#1b2138));--se-text:var(--text-primary,#ecedff);--se-muted:var(--text-secondary,#aeb9ce);--se-line:var(--border-color,#464865)}
.se-panel{background:var(--se-panel);color:var(--se-text);border:1px solid var(--se-line);border-radius:22px;padding:24px;margin:20px 0}.se-panel p,.se-panel small{color:var(--se-muted)}.se-panel h1,.se-panel h2,.se-panel b{color:var(--se-text)}.se-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:0;border-radius:12px;padding:11px 18px;background:var(--se-accent);color:#fff!important;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.se-actions{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.se-actions label{display:grid;gap:6px}.se-actions select,.se-admin input{font:inherit;font-size:16px;padding:12px;border:1px solid var(--se-line);border-radius:10px;background:var(--se-panel);color:var(--se-text);max-width:100%}.se-actions a:not(.se-button){color:var(--se-text)}.se-eyebrow{font-size:12px;letter-spacing:.12em;font-weight:800}.se-case-page,.se-admin{max-width:1040px;margin:30px auto;padding:0 20px}.se-homework{max-width:940px;margin:30px auto}.se-collection>summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;font-weight:750;font-size:17px;align-items:center;min-height:36px}.se-collection>summary strong{font-size:14px;color:var(--se-muted)}.se-collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.se-collect-item{padding:18px 10px;text-align:center;background:var(--bg-primary,#13192b);border:1px solid var(--se-line);border-radius:16px;display:grid;justify-items:center;gap:8px}.se-collect-item>span{font-size:34px}.se-collect-item>b{font-size:12px;line-height:1.4}.se-collect-item small{font-size:11px}.se-collect-item.is-locked>span{filter:grayscale(.8);opacity:.6}.se-collect-item.is-owned{border-color:var(--se-accent)}.se-collect-item.legendary{border-color:#d39f33}.se-quote{padding:20px;background:rgba(235,179,66,.1);border:1px solid #b59139;border-radius:14px;margin-bottom:18px}.se-quote p{font-size:19px;color:var(--se-text)}.se-quote small{display:block;margin-top:12px}.se-case-reveal{animation:se-reveal .6s ease-out;text-align:center;padding:25px;margin:20px 0;border:1px solid var(--se-accent);border-radius:20px;background:radial-gradient(ellipse at top,rgba(137,112,239,.25),transparent)}.se-case-reveal>span{font-size:80px;display:block}.se-case-reveal.legendary{border-color:#d6ac36;background:radial-gradient(ellipse at top,rgba(226,182,64,.3),transparent)}@keyframes se-reveal{from{transform:translateY(15px) scale(.94);opacity:0}to{transform:none;opacity:1}}.se-question-coins{display:block;margin:.65rem 0;font-size:13px;font-weight:700;color:var(--text-secondary,#b2bdd1)}.se-question-coins.se-won{color:var(--se-text);padding:9px 12px;background:rgba(220,171,44,.18);border:1px solid #caa23e;border-radius:10px;animation:se-reveal .5s}.se-logout{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;border:1px solid var(--se-line);border-radius:10px;padding:9px 12px;min-height:42px;font-size:13px;font-weight:700;color:var(--se-text)!important;text-decoration:none;white-space:nowrap;background:var(--se-panel)}.se-logout:hover{border-color:var(--se-accent)}.se-homework-strip{max-width:1100px;margin:18px auto;padding:16px 20px;border:1px solid var(--se-accent);border-radius:16px;color:var(--se-text);background:var(--se-panel);display:flex;align-items:center;justify-content:space-between;gap:16px}.se-homework-strip a{color:var(--se-text);font-weight:700}.se-homework-progress{font-weight:700}.se-start .hero-content{display:block!important}.se-start{padding:54px 0 32px!important}.se-start h1{max-width:840px;font-size:clamp(30px,4vw,48px)!important;line-height:1.15;margin:12px 0 14px}.se-start .se-intro{font-size:17px;color:var(--se-muted);margin-bottom:25px}.se-start-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.se-start-card{position:relative;text-decoration:none;padding:24px;border-radius:22px;border:1px solid var(--se-line);background:var(--se-panel);color:var(--se-text)!important;transition:transform .18s,border-color .18s}.se-start-card:hover{transform:translateY(-4px);border-color:var(--se-accent)}.se-start-card>span{display:inline-grid;place-items:center;width:50px;height:50px;font-size:25px;background:rgba(136,116,239,.17);border-radius:15px;margin-bottom:24px}.se-start-card h2{font-size:23px;color:var(--se-text)!important;margin:0 0 8px}.se-start-card p{font-size:14px;color:var(--se-muted)!important;margin:0 0 22px;line-height:1.6}.se-start-card b{font-size:14px;color:var(--se-accent)}.se-start-card:nth-child(2)>span{background:rgba(46,181,164,.14)}.se-start-card:nth-child(3)>span{background:rgba(236,172,53,.14)}.se-start-bottom{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:22px;font-size:14px}.se-start-bottom a{color:var(--se-text)}
@media(max-width:720px){.se-start-grid{grid-template-columns:1fr}.se-start{padding:30px 0!important}.se-start-card{padding:18px;display:grid;grid-template-columns:48px 1fr;column-gap:15px}.se-start-card>span{grid-row:1/4;margin:0;width:45px;height:45px}.se-start-card h2{font-size:20px}.se-start-card p{margin-bottom:9px}.se-start-card b{grid-column:2}.se-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.se-panel{padding:17px}.se-case-page,.se-admin{padding:0 12px}.se-homework-strip{margin:12px;flex-wrap:wrap}.se-logout{padding:8px;font-size:12px}.se-actions label{width:100%}.se-actions select{width:100%}.header-content{gap:9px!important}}
@media(prefers-reduced-motion:reduce){.se-case-reveal,.se-question-coins.se-won{animation:none}.se-start-card{transition:none}}

.se-exam-condition{font-size:17px;line-height:1.65;overflow-wrap:anywhere;min-width:0}
.se-exam-condition p{margin:.35em 0}.se-exam-condition figure{margin:20px auto;text-align:center}.se-exam-condition img{display:block;margin:auto;max-width:100%;height:auto;background:white}.se-exam-condition figcaption{font-size:13px;color:var(--text-secondary,#9caec8)}
.se-exam-table{overflow-x:auto;max-width:100%;margin:18px auto}.se-exam-condition table{border-collapse:collapse;margin:0 auto;table-layout:auto;font-size:15px;color:inherit}.se-exam-condition td,.se-exam-condition th{border:1px solid var(--border-color,#8795aa);padding:7px 9px;text-align:center;vertical-align:middle;min-width:24px}.se-exam-condition pre{white-space:pre;text-align:left;overflow:auto;font-size:14px;line-height:1.5}.se-formula{white-space:normal}.se-exam-condition sup,.se-exam-condition sub{font-size:.75em}@media(max-width:600px){.se-exam-condition{font-size:16px}.se-exam-condition td,.se-exam-condition th{padding:5px;font-size:13px}}

/* academy-responsive */
.academy-teacher{max-width:1140px;margin:0 auto 32px;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border-color,#39425a);color:var(--text-primary,#edf0fa);text-align:left}.academy-teacher-label{font-size:14px;font-weight:650}.academy-teacher p{margin:6px 0 0;font-size:13px;color:var(--text-secondary,#aeb8cd);line-height:1.5}.academy-teacher nav{display:flex;gap:12px 24px;flex-wrap:wrap}.academy-teacher a{font-size:13px;color:var(--text-primary,#edf0fa);text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}.footer>.academy-teacher{width:calc(100% - 32px)}
.footer-social{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important}.footer-social a{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex:0 0 44px!important;padding:10px!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-radius:12px!important}.footer-social img,.footer-social svg{width:23px!important;height:23px!important;max-width:23px!important;object-fit:contain!important;margin:0!important;display:block!important}.footer-social a:before,.footer-social a:after{display:none!important}.header .logo img{object-fit:contain!important}.header .nav-link i{flex:none;width:18px;text-align:center}.mobile-menu-toggle{touch-action:manipulation}.mobile-menu-toggle svg{width:22px;height:22px;display:block}.academy-responsive-menu[aria-expanded=true]{border-color:var(--accent,#9d90ec)}
.pb-content img,.lesson-content img,.task-description img{max-width:100%;height:auto}.pb-content iframe,.lesson-content iframe{max-width:100%}.pb-content,.lesson-content,.task-description{overflow-wrap:break-word}.pb-content pre,.lesson-content pre{max-width:100%;overflow:auto}.tr-card,.se-start-card{touch-action:manipulation}
@media(max-width:1100px){.header .header-content{gap:12px!important}.header .nav{gap:8px!important}.header .nav-link{font-size:13px!important}}
@media(max-width:900px){.header{padding:8px 0!important;min-height:64px!important;height:auto!important;animation:none!important;transform:none!important;backdrop-filter:none!important}.header>.container{width:100%!important;max-width:100%!important;padding:0 16px!important;box-sizing:border-box}.header .header-content{display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;min-height:48px}.header .logo{margin:0!important;flex:1;min-width:0}.header .logo img{width:94px!important;height:48px!important;max-width:100%!important}.header .mobile-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-height:44px;padding:0!important;z-index:1102!important;color:var(--text-primary,#edf0fa)!important;border:1px solid var(--border-color,#39425a);border-radius:10px;background:var(--card-bg,#20253b)!important}.header .nav{display:none!important;position:fixed!important;top:64px!important;left:12px!important;right:12px!important;bottom:auto!important;width:auto!important;margin:0!important;max-height:calc(100vh - 82px);max-height:calc(100dvh - 82px);overflow-y:auto!important;overscroll-behavior:contain;flex-direction:column!important;align-items:stretch!important;gap:3px!important;padding:12px!important;border:1px solid var(--border-color,#39425a)!important;border-radius:14px!important;background:var(--card-bg,#20253b)!important;box-shadow:0 16px 50px #0005;z-index:1101!important}.header .nav.mobile-open{display:flex!important}.header .nav-link{width:100%!important;min-height:44px!important;padding:10px 12px!important;box-sizing:border-box;display:flex!important;align-items:center!important;gap:10px!important;white-space:normal!important;font-size:15px!important}.header #authSection{display:block!important;width:100%}.header .se-logout{font-size:12px!important;min-height:44px!important;max-width:80px;flex:none}.header .nav-link:after{display:none!important}body{padding-top:64px!important}.main-content{padding-top:20px!important}.container{max-width:100%;box-sizing:border-box}.footer{padding:32px 0!important}.footer-content{grid-template-columns:1fr!important;gap:24px!important}.footer-section{min-width:0}.footer-section a{overflow-wrap:anywhere;line-height:1.6}.academy-teacher{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:24px;padding-bottom:18px}.academy-teacher nav{gap:4px 22px}.theme-dialog-card{max-height:calc(100dvh - 32px);overflow:auto}.theme-dialog{padding:16px!important}.theme-choices{grid-template-columns:repeat(2,minmax(0,1fr))!important}.theme-choice{min-width:0!important}.theme-section{padding:24px 16px!important}.theme-section-inner{padding:20px!important}.tr-row{flex-wrap:wrap}.tr-row>a,.tr-row>button{min-height:44px;display:inline-flex;align-items:center}.pb-actions{flex-wrap:wrap}.pb-actions button,.pb-section-nav button{min-height:44px}.pb-section-nav{display:flex;flex-wrap:wrap;position:static!important;gap:6px}.pb-section-nav button{white-space:normal;flex:1 1 120px}.pb-content table,.lesson-content table{max-width:100%}.pb-content td,.pb-content th{overflow-wrap:anywhere}.tr-card-wrap,.tr-card,.pb-main,.pb-layout>*,.course-card,.task-card,.lesson-row>*{min-width:0}.lesson-row{flex-wrap:wrap}.lesson-title{flex:1 1 160px}.lesson-meta{white-space:normal}.se-start-bottom{gap:12px 20px}.se-start-bottom a{min-height:44px;display:inline-flex;align-items:center}input,select,textarea{font-size:16px!important}.pb-video-frame iframe{width:100%!important;aspect-ratio:16/9;height:auto!important}}
@media(max-width:380px){.header>.container{padding:0 12px!important}.tr-hero h1{font-size:30px!important}.pb-section-nav button{font-size:13px;padding:8px}.theme-choices{gap:8px!important}.theme-choice{padding:10px!important}.theme-caption{font-size:11px!important}.footer-content{gap:20px!important}}
@media(prefers-reduced-motion:reduce){.header,.nav,.tr-card,.se-start-card{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:900px){body{padding-top:0!important}.header{position:sticky!important;top:0!important;height:65px!important;min-height:65px!important;box-sizing:border-box!important;z-index:1100!important}.header .header-content{padding:0!important;height:48px!important}.header .nav{top:65px!important}.academy-home>main{margin-top:0!important}.header .container{height:48px!important}}

@media(max-width:900px){.review-filter-bar{position:static!important;flex-wrap:wrap!important;overflow:visible!important}.review-filter{flex:1 1 auto!important;min-height:44px!important;font-size:13px!important;padding:9px 12px!important}.tr-controls{background:transparent!important}}
/* The arena is a main destination; signing out is a separate account action. */
.header .se-duel-nav{color:var(--accent-hover,#c2b8ff)!important;border:1px solid #a394ef60;border-radius:9px;background:#a394ef13}.se-account-actions{display:flex;align-items:center;margin-left:12px}.header .se-account-actions .se-logout{white-space:nowrap;font-size:12px}.se-duel-arena{display:flex;align-items:center;gap:24px;margin-top:22px;padding:23px 28px;border:1px solid #9686dd70;border-radius:20px;background:radial-gradient(ellipse at 0 50%,#7361c927,transparent 60%),var(--card-bg,#1d2037);text-decoration:none!important;color:var(--text-primary,#f1f2ff)!important;transition:border-color .2s,transform .2s}.se-duel-arena:hover{border-color:var(--accent,#b3a4ff);transform:translateY(-2px)}.se-duel-arena:focus-visible{outline:3px solid var(--accent,#b3a4ff);outline-offset:4px}.se-duel-art{position:relative;flex:0 0 76px;width:76px;height:76px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(140deg,#8c78d94d,#537ead33);color:#d4c8ff;border:1px solid #af9bec4f}.se-duel-art i{font-size:30px;transform:translate(-8px,-5px)}.se-duel-art>span{position:absolute;right:8px;bottom:7px;font-size:16px;font-weight:800}.se-duel-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:8px}.se-duel-copy small{font-size:10px;letter-spacing:1.7px;color:var(--text-secondary,#c3c5da);font-weight:700}.se-duel-copy strong{font-size:24px;line-height:1.3}.se-duel-copy>span{font-size:13px;line-height:1.7;color:var(--text-secondary,#c3c5da);max-width:650px}.se-duel-cta{display:inline-flex;gap:18px;align-items:center;justify-content:center;flex:none;padding:15px 20px;border-radius:12px;background:var(--accent,#7967d9);color:white;font-size:14px;font-weight:700}
@media(max-width:900px){.header .header-content{gap:16px!important}.header .se-account-actions{margin:20px 0 0;padding:16px 0 2px;border-top:1px solid var(--border-color,#454867);display:block}.header .se-account-actions .se-logout{display:flex!important;align-items:center;justify-content:center;width:100%;max-width:none;min-height:48px!important;box-sizing:border-box;font-size:14px!important;padding:12px!important;color:var(--text-secondary,#c3c5da);background:transparent!important}.header .se-duel-nav{margin:3px 0}.se-duel-arena{padding:22px;gap:18px}.se-duel-copy strong{font-size:21px}}
@media(max-width:600px){.se-duel-arena{display:grid;grid-template-columns:54px minmax(0,1fr);padding:20px;gap:16px;margin-top:18px}.se-duel-art{width:54px;height:62px;border-radius:17px}.se-duel-art i{font-size:23px}.se-duel-art>span{font-size:12px}.se-duel-copy strong{font-size:20px}.se-duel-copy>span{font-size:12px}.se-duel-copy small{font-size:8px;letter-spacing:1.1px}.se-duel-cta{grid-column:1/-1;min-height:48px;padding:12px;box-sizing:border-box}}
@media(prefers-reduced-motion:reduce){.se-duel-arena{transition:none}.se-duel-arena:hover{transform:none}}

.se-duel-arena{text-align:left}.se-duel-copy{text-align:left}

/* Public social destinations, October 2026. */
.academy-teacher{flex-wrap:wrap}.academy-teacher nav{gap:6px 22px}.academy-teacher nav a{white-space:normal}.contact-icons{flex-wrap:wrap}.social-icon:focus-visible,.contact-icon:focus-visible,.academy-teacher a:focus-visible,.academy-community-links a:focus-visible{outline:3px solid var(--accent,#a99ae8);outline-offset:4px}.academy-community-links{max-width:920px;margin:0 auto 32px;text-align:center}.academy-community-links>p{margin:0 0 14px;color:var(--text-secondary,#bdc2d9);font-size:14px;line-height:1.6}.academy-community-links>div{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.academy-community-links a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 16px;border:1px solid var(--border-color,#464965);border-radius:12px;color:var(--text-primary,#f2f1ff);background:var(--card-bg,#24263d);text-decoration:none;font-size:14px;box-sizing:border-box}.academy-community-links a:hover{border-color:var(--accent,#a99ae8)}.academy-community-links img{width:22px;height:22px;object-fit:contain;flex:none}@media(max-width:480px){.academy-community-links a{flex:1 1 180px}.academy-teacher nav{flex-direction:column;gap:0}.academy-teacher nav a{min-height:44px}}
