/* Gemensamma layoutregler: innehåll ska kunna krympa utan horisontell scroll. */
.landing.minimal-landing{max-width:1040px;min-height:calc(100svh - 195px);gap:70px;align-items:center;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding:50px 30px}.minimal-landing h1{font-size:clamp(42px,4.4vw,61px);line-height:1.12;letter-spacing:-2px;margin:0 0 22px}.minimal-landing .landing-copy>p{font-size:18px;color:#acb8c9;margin:0;line-height:1.8}.minimal-landing .auth-panel{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.minimal-landing .auth-tabs{margin-bottom:25px}.minimal-landing #auth-form label{font-size:16px;margin-bottom:20px}.minimal-landing #auth-form input{font-size:17px;min-height:55px;padding:13px 15px}.minimal-landing #auth-form .button{min-height:55px;font-size:16px}.minimal-landing .form-error:empty{display:none}
@media(max-width:760px){.landing.minimal-landing{grid-template-columns:minmax(0,1fr);gap:30px;min-height:auto;padding:35px 24px 45px;max-width:520px}.minimal-landing h1{font-size:clamp(36px,7vw,49px);letter-spacing:-1.6px;margin:0 0 15px}.minimal-landing .landing-copy>p{font-size:16px}.minimal-landing .auth-panel{padding:0}.minimal-landing #auth-form label{margin-bottom:18px}.minimal-landing .auth-tabs{margin-bottom:22px}.minimal-landing #auth-form input{min-height:53px}.minimal-landing .auth-tabs button{min-height:47px;font-size:16px}.minimal-landing .password-wrap button{top:3px}}
@media(max-width:380px){.landing.minimal-landing{padding:28px 19px 35px;gap:25px}.minimal-landing h1{font-size:35px}.minimal-landing .landing-copy>p{font-size:16px}.minimal-landing #auth-form label{font-size:16px}.minimal-landing .auth-tabs button{font-size:16px;padding:11px}}
.user-menu .xp{display:inline-flex!important;align-items:center;gap:9px!important}.study-reward-line>span:first-child,.vault-xp,.quiet-rewards>div:first-child>span{gap:10px!important}
@media(max-width:680px){
  .course-overview{padding-top:13px!important}.course-overview>.back{min-height:35px;font-size:12px;padding:5px 0}
  .course-overview .course-hero{display:block;padding:12px 0 23px}.course-overview .course-hero h1{font-size:34px;line-height:1.15;letter-spacing:-1px;margin:13px 0 17px}.course-overview .course-hero h1 br{display:none}
  .course-overview .course-hero>div>p{font-size:15px;line-height:1.8;margin:0 0 19px}
  .course-overview .course-hero .kicker{font-size:10px;letter-spacing:1.2px}
  .course-overview .course-hero .hero-actions{margin:0;gap:9px;align-items:center;flex-wrap:wrap}.course-overview .course-hero .hero-actions>.button{font-size:15px;padding:15px 19px;min-height:52px;width:100%}.course-overview .course-hero .hero-actions>span{font-size:12px;line-height:1.7;margin:0}
  .course-overview .mastery-panel{display:none}.course-overview>[data-cash-course]{display:none}
  .course-overview .mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-block:1px solid #37414f;padding:16px 0}
  .course-overview .mode-card{display:block;background:none;border:0;border-radius:0;padding:5px 4px;text-align:left}
  .course-overview .mode-card .mode-icon,.course-overview .mode-card>span:last-child{display:none}
  .course-overview .mode-card h3{font-size:18px;line-height:1.35;margin:7px 0}.course-overview .mode-card p{font-size:12px;line-height:1.7}.course-overview .mode-card .kicker{font-size:9px;letter-spacing:.8px}
  .course-overview .section-title{margin-top:24px;margin-bottom:16px}.course-overview .section-title h2{font-size:25px}.course-overview .section-title .kicker{font-size:9px}.course-overview .section-title .text-button{font-size:11px;min-height:35px}
  .course-overview .case-grid{gap:14px}.course-overview .case-card{padding:23px}.course-overview .case-card h3{font-size:25px}.course-overview .case-card p{font-size:15px}.course-overview .case-top{margin-bottom:16px}
  .user-menu .xp .reward-heart{margin-right:2px}
}
.top-cash-text{display:flex;flex-direction:column;gap:2px}.top-cash-text>small{font-size:10px;color:#b7c0cf;line-height:1.3}.top-cash-text>span{font-size:14px;line-height:1.5}.top-cash-total{font-size:12px;color:#aebaca}
@media(max-width:680px){
  body.has-mobile-nav #header{flex-wrap:wrap!important;position:sticky;min-height:108px!important;padding:13px 20px 12px!important;gap:7px!important;align-content:center}
  body.has-mobile-nav #header .logo{min-height:34px!important;font-size:27px!important;max-width:calc(100% - 48px)}
  body.has-mobile-nav #header .user-menu{width:100%;flex-basis:100%;display:flex;align-items:center;justify-content:flex-start;gap:24px!important;margin:0;padding-top:9px;border-top:1px solid #323d4a}
  body.has-mobile-nav #header .user-menu>.xp{font-size:14px!important;gap:7px;min-width:80px;line-height:1.6}
  body.has-mobile-nav #header .top-cash{padding:0 0 0 20px!important;gap:9px!important;border-left:1px solid #465367;min-width:0}
  body.has-mobile-nav #header .top-cash-text{flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap}
  body.has-mobile-nav #header .top-cash-text>small{display:inline!important;font-size:11px;line-height:1.5;color:#b6c3d4}
  body.has-mobile-nav #header .top-cash-text>span{font-size:15px;line-height:1.6;color:#fff}
  body.has-mobile-nav #header .top-cash-total{font-size:13px;color:#b9c7d8}
  body.has-mobile-nav #header .logout{position:absolute;right:20px;top:14px;width:33px;height:33px}
  body.has-mobile-nav #header .reward-heart{width:18px;height:18px}
  .has-mobile-nav [tabindex],.has-mobile-nav input,.has-mobile-nav textarea,.has-mobile-nav button,.has-mobile-nav summary{scroll-margin-top:130px}
}
@media(max-width:380px){body.has-mobile-nav #header{padding-inline:17px!important}.has-mobile-nav #header .user-menu{gap:17px!important}.has-mobile-nav #header .top-cash{padding-left:14px!important;gap:7px!important}.has-mobile-nav #header .top-cash-text{gap:7px!important}.has-mobile-nav #header .top-cash-text>span{font-size:13px!important}.has-mobile-nav #header .top-cash-total{font-size:12px!important}.has-mobile-nav #header .top-cash-text>small{font-size:10px!important}}
#mobile-navigation{display:none}.scene-enter{animation:scene-in .2s ease-out}@keyframes scene-in{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:680px){
  #header{position:sticky;top:0;z-index:30;background:#111419f5;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:10px 18px!important;min-height:70px!important;margin:0;width:100%;border-bottom:1px solid #3a424f;flex-wrap:nowrap!important;box-shadow:0 5px 20px #0002}
  #header nav{display:none!important}
  #header .logo{font-size:26px!important;min-height:45px}
  #header .user-menu{gap:9px!important;min-width:0}
  #header .top-cash{font-size:13px}.has-mobile-nav #header .logout{width:30px;height:30px;min-width:30px}
  #mobile-navigation{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;align-items:stretch;justify-content:space-around;gap:4px;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));margin:0;border-top:1px solid #414b59;background:#171d25f5;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 -8px 30px #0003}
  #mobile-navigation>button{border:0;background:none;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#aab6c6;min-height:53px;min-width:56px;flex:1;padding:6px 5px}
  #mobile-navigation svg{height:22px;width:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  #mobile-navigation>button>span{font-size:11px;line-height:1.5}
  #mobile-navigation>button[aria-current]{color:#c6f36a;background:#c6f36a0d}
  #mobile-navigation>button:active{background:#c6f36a18;transform:scale(.96)}
  body.has-mobile-nav{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
  .has-mobile-nav #toast{bottom:calc(92px + env(safe-area-inset-bottom,0px));max-height:50svh}
  .has-mobile-nav .play-page{margin-top:16px;margin-bottom:35px}
  .coach-play .mission-heading{margin-top:22px}.coach-play .mission-heading h2{font-size:23px}.coach-play .mission-stepper{margin:13px 0 20px}
  .coach-play .play-aside .aside-note{padding:17px 0 0;border-left:0;border-top:1px solid #36424f;margin:0 0 10px}
  .coach-play .aside-note h3{font-size:20px}.coach-play .aside-note p{font-size:14px}.coach-play .aside-note>.kicker{display:none}
  .coach-play .task-identity{padding-bottom:16px;margin-bottom:19px}.coach-play .play-layout>.panel h1{margin-top:18px}
  .coach-play .study-reward-line{margin-bottom:0}.coach-play .step-coach{margin-top:-10px;margin-bottom:15px;font-size:12px}
  .has-mobile-nav [tabindex],.has-mobile-nav input,.has-mobile-nav textarea,.has-mobile-nav button,.has-mobile-nav summary{scroll-margin-top:88px;scroll-margin-bottom:95px}
}
@media(max-width:380px){#header{padding-inline:14px!important}#header .logo{font-size:24px!important}#header .top-cash small{display:none}#header .user-menu{gap:7px!important}#header .top-cash{font-size:12px;padding-left:6px}#header .xp{font-size:11px}.has-mobile-nav #header .logout{width:29px;min-width:29px;height:29px}#mobile-navigation{padding-inline:8px}#mobile-navigation>button>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.scene-enter{animation:none}#mobile-navigation>button:active{transform:none}}
.course-hero .hero-actions>span{font-size:14px;line-height:1.8}.mastery-panel{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none}.course-hero .hero-actions>.button{font-size:16px}.course-knowledge>p{max-width:440px}
.page,.play-page,.panel,.play-layout,.play-aside,.coach-feature-copy,.course-body,.level-info,.vault-main,.default-reward-form,.reward-form,.auth-panel{min-width:0}
img,svg,video{max-width:100%}
.top-cash{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#f3e8ed;border-left:1px solid #42454e;padding-left:14px;font-size:14px}.top-cash b{font-weight:600}.top-cash small{font-size:10px;color:#a8b0bd}.top-cash .reward-heart{width:17px;height:17px}.user-menu{gap:13px}.user-menu .xp{white-space:nowrap}.user-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.formula-expression{overflow-wrap:anywhere;word-break:normal}.formula-card dl>div{grid-template-columns:minmax(35px,auto) minmax(0,1fr)}
.coach-home .student-subject>div,.document-row>div{min-width:0}.option{overflow-wrap:anywhere}.option>span{flex-shrink:0}
@media(max-width:1050px){#header{gap:16px;padding-inline:25px}.nav-button{padding-inline:11px}.user-menu{gap:10px}.user-name{display:none}.top-cash{padding-left:10px}.default-reward-form{grid-template-columns:minmax(0,1fr) 150px auto;gap:16px}.cash-vault .vault-side{min-width:0}}
@media(max-width:760px){.page{padding-inline:24px}.play-page{padding-inline:24px}.course-hero{grid-template-columns:minmax(0,1fr)}.course-hero h1{font-size:clamp(36px,7vw,52px)}.mastery-panel{width:100%;text-align:left}.course-knowledge{padding-block:5px}.course-knowledge>strong{font-size:45px;margin:10px 0}.mode-grid{grid-template-columns:1fr}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-meta{flex-wrap:wrap}.study-reward-line{flex-wrap:wrap}.summary{margin:25px auto}.reward-form input{max-width:none}.default-reward-form{grid-template-columns:minmax(0,1fr) auto}.default-reward-form>div:first-child{grid-column:1/-1}.default-reward-form>.field-note{grid-column:1/-1}.matching select{max-width:100%}.vault-milestones{min-width:0}.vault-labels{flex-wrap:wrap}}
@media(max-width:680px){#header{display:flex;flex-wrap:wrap;gap:12px;min-height:80px;height:auto;padding:14px 20px 0}#header .logo{order:0;min-height:42px}#header>.header-note{margin-left:auto}#header nav{order:2;flex-basis:100%;border-top:1px solid #333b46;display:flex;gap:8px;overflow-x:auto;white-space:nowrap;padding:10px 0;margin:0}#header .nav-button{font-size:13px;padding:10px 13px;flex:0 0 auto}#header .user-menu{order:1;margin-left:auto;gap:10px}#header .user-menu .xp{font-size:13px;display:inline}#header .top-cash{font-size:13px;padding-left:10px;gap:5px}#header .top-cash small{font-size:9px}#header .logout{height:34px;width:34px;font-size:21px}.coach-feature .hero-actions{align-items:stretch}.coach-feature .hero-actions>.button{width:100%}.coach-feature .hero-actions>span{display:block}.coach-greeting h1{font-size:37px}.case-grid{grid-template-columns:1fr}.case-card{min-height:0}.case-card>p{margin-bottom:25px}.section-title{align-items:flex-start;gap:12px}.section-title>.text-button{max-width:none;text-align:left}.today-flow ol{grid-template-columns:1fr}.coach-feature{grid-template-columns:1fr}.discovery-art{position:absolute;right:-30px;top:-10px;width:170px;opacity:.12;z-index:-1}.coach-feature{overflow:hidden}.knowledge-counts{gap:12px}.knowledge-counts dd{font-size:12px}.hero-actions .button{max-width:100%;white-space:normal}.summary .hero-actions{display:flex;flex-direction:column;align-items:stretch}.summary .hero-actions>.button{width:100%}.summary-items>div{flex-wrap:wrap}.summary-items>div>span:nth-child(2){flex:1;min-width:0}.summary-items>div>small{width:100%;padding-left:25px;white-space:normal}.first-step-note{padding:15px 0;gap:20px;border:0}.first-step-note>p{font-size:16px}.mission-heading{max-width:100%}.play-top>span{max-width:135px;font-size:10px}.mission-stepper{max-width:100%}.play-page .mission-stepper>span{min-width:32px}.mission-stage{flex-wrap:wrap}.mission-stage>span{white-space:normal}.play-layout .task-identity{min-width:0}.coach-play .play-layout>.panel h1{font-size:27px}.coach-play .lesson-text{font-size:18px;line-height:1.9}.coach-play .formula-expression{font-size:clamp(23px,6vw,31px);letter-spacing:-.6px}.formula-card dl>div{gap:12px}.formula-card dd{font-size:14px}.formula-card dt{font-size:15px}.formula-check summary{font-size:14px}.formula-check p{font-size:15px}.coach-play .play-aside .lab{padding:22px}.lab .force-model{flex-wrap:wrap}.phase-controls{flex-wrap:wrap}.coach-tools .help-choices{display:flex;gap:9px}.help-choice{min-height:48px;max-width:100%;white-space:normal}.model-review{padding:21px}.rubric label{font-size:15px}.rubric input{min-width:22px}.number-field>span{max-width:85px;overflow-wrap:anywhere;text-align:right}.number-field input{padding-right:100px!important}.default-reward-form{grid-template-columns:minmax(0,1fr) auto;padding:22px 20px}.default-reward-form>label{min-width:0}.default-reward-form .number-field>span{top:24px}.default-reward-form .number-field input{padding:15px 45px 15px 13px!important}.default-reward-form>.button{padding:15px 19px;font-size:14px}.reward-setting{padding:23px 20px}.reward-form .button{width:100%;margin:6px 0}.reward-form h4{font-size:18px;line-height:1.6}.upload-panel{padding:25px 20px}.upload-panel input[type=file]{padding:14px!important;font-size:13px!important}.document-row{flex-wrap:wrap;padding:21px}.document-row p{word-break:break-word}.auth-panel{max-width:100%}.preview-card{display:flex;flex-direction:column;align-items:flex-start}.preview-card .button{width:100%}}
@media(max-width:380px){#header{padding-inline:16px}#header .logo{font-size:25px;gap:3px}#header .user-menu{gap:7px}#header .top-cash{padding-left:7px;font-size:12px;gap:4px}#header .top-cash small{display:none}#header .xp{font-size:12px}#header .logout{width:31px;height:31px}#header .reward-heart{width:15px;height:15px}.page,.play-page{padding-inline:18px}.landing{padding-inline:18px}.coach-greeting h1{font-size:33px}.coach-feature h2{font-size:30px}.panel{padding:24px 18px}.coach-play .play-layout>.panel h1{font-size:25px}.knowledge-counts{gap:8px}.knowledge-counts>div{padding-left:9px}.knowledge-counts dd{font-size:11px}.knowledge-counts dt{font-size:28px}.quiet-rewards{gap:18px}.default-reward-form{gap:14px;padding:21px 17px}.default-reward-form h3{font-size:23px}.cash-panel.cash-vault{gap:16px;padding:20px 17px}.vault-amount>strong{font-size:28px}.vault-amount>span{font-size:13px}.vault-labels{font-size:10px}.coach-tools .help-choice{font-size:12px;padding:12px}.row>.button{width:100%}.model-review .button{font-size:13px;padding:15px}.course-body h3{font-size:27px}.study-reward-line{font-size:11px;gap:6px 12px}.study-reward-line .text-button{font-size:11px}}
