/* Formler och återkallning är en tydlig egen del av läsvyn. */
[hidden]{display:none!important}.key-term{font-weight:700;color:#f0f5e9;text-decoration:underline;text-decoration-color:#b2d67b88;text-underline-offset:5px;text-decoration-thickness:2px}.formula-card{border:1px solid #687e4c;background:#171f1d;border-radius:15px;padding:25px;margin:24px 0}.formula-card>.kicker{font-size:11px;color:#c6f36a}.formula-expression{font-family:'Sora';font-size:clamp(27px,3vw,42px);line-height:1.4;color:#c6f36a;padding:16px 0;letter-spacing:-1px}.formula-card h3{font-size:20px;line-height:1.4;margin:0 0 18px}.formula-card dl{display:grid;gap:12px;margin:0}.formula-card dl>div{display:grid;grid-template-columns:minmax(42px,auto) 1fr;gap:18px}.formula-card dt{font-family:'Sora';font-size:17px;color:#d4e7b8}.formula-card dd{font-size:15px;line-height:1.7;color:#bdc9d5;margin:0}.formula-check{border-top:1px solid #3d4b3c;margin-top:20px;padding-top:10px}.formula-check summary{font-size:15px;min-height:48px;padding:12px 0;color:#c6f36a;cursor:pointer}.formula-check p{font-size:16px;line-height:1.8}.formula-check>details>summary{color:#d0d8e5}.recall-prompt{padding:22px;background:#242532;border:1px solid #4e4a65;border-radius:13px;margin:22px 0}.recall-prompt>.kicker{color:#c6b9ed;font-size:11px}.recall-prompt p{font-size:16px;line-height:1.8;color:#c7c9da}.recall-prompt .button{font-size:14px;padding:13px 16px;min-height:48px}
/* Pengapotten har en egen grafisk identitet, utan stora färgade bakgrunder. */
.cash-panel.cash-vault,.play-page>[data-cash-course]>.cash-panel.cash-vault{display:grid;grid-template-columns:100px minmax(0,1fr) 170px;gap:20px 26px;background:linear-gradient(120deg,#232932,#191e25);padding:25px 28px;border:1px solid #4e5b69;border-radius:18px;box-shadow:none;align-items:center;margin:24px 0}.vault-ring{height:96px;width:96px;display:grid;place-items:center;padding:5px;border-radius:50%;background:conic-gradient(#c6f36a var(--fill),#3c4652 0);position:relative}.vault-ring::before{content:'';position:absolute;inset:-7px;border:1px dashed #59654e;border-radius:50%}.vault-ring>div{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1e252d;height:100%;width:100%;border-radius:50%}.vault-ring>div>span{font-size:23px;color:#c6f36a;line-height:1.1}.vault-ring strong{font-family:'Sora';font-weight:500;font-size:25px;line-height:1.3;color:#edf2e8}.vault-ring small{font-size:13px;margin-left:2px}.vault-main>.kicker{font-size:11px;color:#b6c3d1}.vault-amount{display:flex;align-items:baseline;gap:13px;margin:9px 0 18px;flex-wrap:wrap}.vault-amount>strong{font-family:'Sora';font-size:37px;letter-spacing:-1.5px;font-weight:500;color:#eef2f4;line-height:1.2}.vault-amount>span{font-size:17px;color:#a8b7c6}.vault-amount b{color:#cad8b5;font-weight:500}.vault-milestones{position:relative;display:flex;justify-content:space-between;align-items:center;height:10px;background:#3b4550;border-radius:10px;margin:0 0 10px}.vault-milestones>div{position:absolute;top:0;left:0;height:100%;border-radius:10px;background:#c6f36a;transition:width .5s}.vault-milestones>i{position:relative;z-index:1;width:15px;height:15px;background:#35404a;border:2px solid #737c83;border-radius:50%;display:grid;place-items:center}.vault-milestones>i>span{font-style:normal;color:transparent;font-size:0}.vault-milestones>.reached{background:#c6f36a;border-color:#e0ffb7}.vault-labels{display:flex;justify-content:space-between;gap:15px;font-size:12px;line-height:1.7;color:#abb9c9}.vault-side{border-left:1px solid #455160;padding-left:24px;display:grid;gap:15px}.vault-xp{font-family:'Sora';font-size:21px;color:#c6f36a;white-space:nowrap}.vault-next{font-size:12px;line-height:1.8;color:#abb9c9}.vault-next b{font-size:17px;color:#e6f4cc;font-family:'Sora';font-weight:500}.vault-terms{grid-column:1/-1;border-top:1px solid #3d4855;padding-top:5px}.vault-terms summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:35px;font-size:12px;color:#a7b4c4}.vault-terms p{font-size:13px;line-height:1.9;color:#bfc9d5;margin:10px 0 0}.vault-terms summary>span{font-size:18px;color:#c6f36a}.cash-panel.cash-vault>div:first-child{flex:initial}
@media(max-width:650px){.cash-panel.cash-vault,.play-page>[data-cash-course]>.cash-panel.cash-vault{grid-template-columns:72px minmax(0,1fr);gap:20px;padding:23px 20px}.vault-ring{height:67px;width:67px;padding:4px}.vault-ring strong{font-size:21px}.vault-ring>div>span{font-size:18px}.vault-ring::before{inset:-5px}.vault-amount{gap:7px;margin:7px 0 16px}.vault-amount>strong{font-size:31px}.vault-amount>span{font-size:14px}.vault-main>.kicker{font-size:9px;letter-spacing:1px}.vault-labels{font-size:10px;gap:9px}.vault-side{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-left:0;border-top:1px solid #414c59;padding:14px 0 0;gap:18px}.vault-xp{font-size:20px}.vault-next{text-align:right;font-size:11px;line-height:1.7}.vault-next br{display:none}.vault-next b{font-size:15px}.vault-terms summary{font-size:11px;min-height:40px}.vault-terms p{font-size:13px}.formula-card{padding:21px}.formula-card dd{font-size:15px}.formula-card dl>div{gap:13px}.recall-prompt{padding:20px}.recall-prompt .button{width:100%;font-size:14px}}
/* Uppdragsscen: tydlig spelstruktur, lugn läsyta och synliga vägval. */
.mission-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:25px 0 22px}.mission-heading h2{font-size:30px;line-height:1.25;margin:8px 0}.mission-stage{display:flex;align-items:center;gap:12px;font-size:13px;color:#929aa8;white-space:nowrap}.mission-stage>span{border:1px solid #3b424d;border-radius:30px;padding:10px 15px}.mission-stage>.current{border-color:#a1c55a;background:#c6f36a;color:#1b2411;font-weight:700}.mission-stage>.done{color:#c6f36a;border-color:#66764f}.mission-stage i{font-style:normal}.mission-stepper{display:flex;gap:10px;margin-bottom:25px;overflow-x:auto;padding-bottom:9px}.mission-stepper>span{display:flex;align-items:center;gap:9px;flex:1;min-width:90px;border-top:2px solid #363d49;padding:13px 8px 0;color:#858f9e}.mission-stepper b{display:grid;place-items:center;width:29px;height:29px;border:1px solid #4a5361;border-radius:50%;font-size:13px;flex-shrink:0}.mission-stepper>span>span{font-size:12px;line-height:1.5}.mission-stepper>.current{border-color:#c6f36a;color:#eaf1df}.mission-stepper>.current b{background:#c6f36a;border-color:#c6f36a;color:#1b2411}.mission-stepper>.done{border-color:#738b51;color:#b7c99d}.mission-stepper>.done b{color:#c6f36a}.task-identity{display:flex;gap:17px;align-items:center;margin-bottom:28px;padding-bottom:23px;border-bottom:1px solid #363e4a}.task-symbol{width:62px;height:62px;display:grid;place-items:center;font:38px 'Sora';border:1px solid #576446;background:#252c25;border-radius:17px;color:#c6f36a;flex-shrink:0}.task-identity .kicker{color:#c6f36a;font-size:12px;letter-spacing:1.5px}.task-identity p{font-size:14px;color:#aab5c5;margin:5px 0 0;line-height:1.7}.play-layout>.panel{border-radius:20px;padding:34px 38px;background:linear-gradient(145deg,#20242a,#191d23);border-color:#434d5c;box-shadow:0 16px 40px #0002}.play-layout>.panel>.kicker{font-size:11px;color:#9eabbc}.play-layout>.panel h1{font-size:32px;line-height:1.4;margin:16px 0 24px;letter-spacing:-.6px}.lesson-text>span{display:block;margin-bottom:20px}.lesson-text>span:last-child{margin-bottom:0}.play-layout>.reading>.button,.play-layout>.challenge>.button{width:100%;justify-content:space-between;padding:19px 24px;margin-top:15px;font-size:17px}.play-layout>.reading>.button::after{content:'02 / DIN TUR';font-size:11px;font-weight:500}.play-layout .focus-line{border-radius:0 12px 12px 0;background:#272e36}.play-layout .focus-line>span{font-size:12px}.play-layout .lab{border-radius:18px;background:#191e25;border-color:#3e4a59}.play-layout .lab h3{line-height:1.35}.play-layout .lab-badge{font-size:11px;color:#b9cf9d}.play-layout .lab-display,.play-layout .particle-box,.play-layout .water-model{margin-top:23px;margin-bottom:24px}.play-layout .particle-box,.play-layout .water-model{height:195px}.play-layout .aside-note{padding:24px;background:#191e25;border:1px solid #394553;border-radius:17px}.play-layout .aside-note>.kicker{font-size:11px}.play-layout .aside-note h3{font-size:25px;line-height:1.35}.play-layout .aside-note p{font-size:15px}.challenge .option{border-radius:13px;transition:border-color .2s,background .2s,transform .2s}.challenge .option:hover:enabled{transform:translateX(3px);border-color:#a6c477}.challenge .option.selected{box-shadow:inset 4px 0 0 #c6f36a;background:#29352a}.challenge .option.revealed-correct{border-color:#b3d982;background:#26372b;color:#edf6e6;opacity:1}.challenge .option.revealed-correct>span{background:#c6f36a;color:#17200f;border-color:#c6f36a}.challenge .option.revealed-wrong{border-color:#c18b75;background:#332926;box-shadow:inset 4px 0 0 #c18b75}.challenge.answered-correct{border-color:#7e9c5d}.challenge.answered-retry{border-color:#9c7a62}.challenge[data-kind=number] .number-field{border-radius:14px}.challenge[data-kind=number] .number-field input{font-size:36px!important;padding:22px!important;padding-right:100px!important;min-height:88px;background:#111820;border-color:#637083}.challenge[data-kind=number] .number-field>span{top:34px;font-size:18px}.challenge textarea{background:#121820}.order-item{background:#262d38;border-color:#536277;border-radius:12px}.ordered{background:#131b25;border-style:dashed;border-color:#7d9464;padding:22px;border-radius:14px}.ordered>div{padding:12px;border-radius:8px;background:#263128}.ordered b{width:25px}.matching label{padding:21px;border-radius:12px}.matching select{margin-top:13px;min-height:55px}.play-page>[data-cash-course]>.cash-panel{padding:18px 23px;gap:10px 20px;border-radius:13px;background:#191e25;border-color:#424e5e;box-shadow:inset 3px 0 0 #c6f36a}.play-page>[data-cash-course]>.cash-panel h3{font-size:27px}.play-page>[data-cash-course]>.cash-panel .kicker{font-size:10px}.play-page>[data-cash-course]>.cash-panel>p{font-size:12px;margin:0;line-height:1.65}.play-page .run-progress{margin-bottom:25px;height:6px}.play-page .step-coach{font-size:15px;color:#b7c2d1;margin-bottom:20px}.play-page #feedback>.button{width:100%;font-size:17px;min-height:58px;margin-top:5px}.feedback{border-radius:14px}.session-stat{border-radius:15px}.session-stat strong{font-size:43px}.session-stat span{font-size:14px}
@media(max-width:850px){.mission-heading{align-items:flex-start}.mission-heading h2{font-size:27px}.mission-stage{font-size:11px;gap:7px}.mission-stage>span{padding:9px 12px}.play-layout{gap:24px}.play-aside{display:grid;grid-template-columns:1fr}.play-layout>.panel{padding:32px}.play-layout .lab-display{height:130px}}
@media(max-width:580px){.mission-heading{display:block;margin-top:22px}.mission-heading h2{font-size:26px}.mission-stage{margin-top:18px;font-size:12px}.mission-stage>span{padding:10px 14px}.mission-stepper{gap:7px;margin-bottom:21px}.mission-stepper>span{min-width:38px;padding:12px 0 0;justify-content:center}.mission-stepper>span>span{display:none}.mission-stepper b{height:32px;width:32px}.play-layout>.panel{padding:27px 22px;border-radius:17px}.task-identity{gap:13px;margin-bottom:22px;padding-bottom:20px}.task-symbol{width:49px;height:51px;border-radius:13px;font-size:32px}.task-identity .kicker{font-size:10px;letter-spacing:1px}.task-identity p{font-size:13px;line-height:1.6}.play-layout>.panel h1{font-size:28px;line-height:1.4;letter-spacing:-.6px}.play-layout>.reading>.button{font-size:16px;padding:18px}.play-layout>.reading>.button::after{display:none}.challenge[data-kind=number] .number-field input{font-size:31px!important;padding:19px!important;padding-right:85px!important;min-height:80px}.challenge[data-kind=number] .number-field>span{top:29px;font-size:16px}.play-page>[data-cash-course]>.cash-panel{padding:18px;gap:13px}.play-page>[data-cash-course]>.cash-panel>p{font-size:11px}.play-page>[data-cash-course]>.cash-panel h3{font-size:26px}.play-layout .aside-note{padding:22px}.play-layout .aside-note p{font-size:15px}.play-layout .lab{padding:24px}.play-page .step-coach{font-size:14px;line-height:1.8}.matching label{padding:18px}.order-item{font-size:16px;line-height:1.8}.ordered{padding:17px}.challenge .option{min-height:76px;font-size:17px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){.challenge .option{transition:none}.challenge .option:hover:enabled{transform:none}}
