@import"https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;600;700;800&display=swap";.concept-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.concept-grid section{align-items:center;background:#fff;border:1px solid #c7d8e6;border-radius:14px;display:grid;gap:10px;grid-template-columns:34px 1fr;padding:16px}.concept-grid section>span{align-items:center;background:var(--primary);border-radius:50%;color:#fff;display:flex;font-weight:800;height:30px;justify-content:center;width:30px}.process-flow{align-items:stretch;display:flex;gap:8px}.process-flow>div{align-items:center;display:flex;flex:1;gap:8px}.process-flow section{align-items:center;background:#fff;border:1px solid #c7d8e6;border-radius:14px;display:grid;flex:1;gap:8px;justify-items:center;padding:16px;text-align:center}.process-flow small{align-items:center;background:var(--navy);border-radius:50%;color:#fff;display:flex;font-weight:800;height:28px;justify-content:center;width:28px}.process-flow>div>span{color:var(--primary);font-size:24px;font-weight:900}.relationship{align-items:center;display:grid;gap:14px;grid-template-columns:1fr auto 1fr}.relationship section{background:#fff;border:1px solid #c7d8e6;border-radius:14px;display:grid;gap:8px;padding:18px;text-align:center}.relationship>b{color:var(--primary);font-size:30px}.relationship>p{grid-column:1/-1;text-align:center}.sapmi>div{display:grid;grid-template-columns:repeat(4,1fr);min-height:220px;position:relative}.sapmi>div span{align-items:flex-end;background:#dce8f2;border:2px solid #fff;display:flex;font-weight:700;justify-content:center;padding:14px}.sapmi>div b{align-items:center;background:#e6b24acc;border:3px solid #8a6716;border-radius:55% 45% 52% 48%;display:flex;inset:22% 11% 18% 6%;justify-content:center;position:absolute;transform:rotate(-5deg)}.cooperation{grid-template-columns:repeat(3,1fr)}.cooperation section{grid-template-columns:34px 1fr}.cooperation small{grid-column:2}.annual-cycle{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.annual-cycle section{background:#fff;border:1px solid #c7d8e6;border-radius:50%;display:grid;min-height:150px;padding:26px;place-content:center;text-align:center}.annual-cycle section:nth-child(1){border-top:8px solid #71af76}.annual-cycle section:nth-child(2){border-right:8px solid #e5b83b}.annual-cycle section:nth-child(3){border-bottom:8px solid #b96e3c}.annual-cycle section:nth-child(4){border-left:8px solid #78a8ce}html[dir=rtl] .process-flow>div>span{transform:rotate(180deg)}@media(max-width:520px){.concept-grid,.cooperation,.annual-cycle{grid-template-columns:1fr}.process-flow{display:grid}.process-flow>div>span,html[dir=rtl] .process-flow>div>span{transform:rotate(90deg)}.relationship{grid-template-columns:1fr}.relationship>b{transform:rotate(90deg)}.relationship>p{grid-column:auto}.sapmi>div{min-height:180px}}:root{font-family:Hanken Grotesk,system-ui,sans-serif;color:#141d23;background:#f6faff;font-synthesis:none;--primary: #02458b;--navy: #2b5da4;--gold: #fdd355;--muted: #5b6470;--surface: #fff;--soft: #ecf5fe;--border: #dbe4ed;--danger: #ba1a1a}*{box-sizing:border-box}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}body{margin:0}a{color:var(--primary);font-weight:700;text-decoration:none}button,input{font:inherit}button,a{outline-offset:3px}:focus-visible{outline:3px solid #ebc246}.brand{align-items:center;color:var(--primary);display:inline-flex;font-size:24px;font-weight:800;gap:8px;letter-spacing:-.04em}.brand img{border-radius:7px;flex:0 0 auto;height:32px;object-fit:cover;width:32px}.brand.large{font-size:30px}.brand.large img{border-radius:9px;height:40px;width:40px}.brand.inverse{color:#fff}.button{align-items:center;border-radius:12px;border:1.5px solid transparent;cursor:pointer;display:inline-flex;font-weight:700;justify-content:center;min-height:46px;padding:10px 20px}.button.primary,.button:not(.secondary):not(.danger):not(.accent){background:var(--primary);border-bottom-color:#001b3e;color:#fff}.button.secondary{background:#fff;border-color:var(--primary);color:var(--primary)}.button.accent{background:var(--gold);color:#27364a}.button.danger{background:var(--danger);color:#fff}.button:disabled{cursor:not-allowed;opacity:.55}.card{background:#fff;border:1px solid #e9ecef;border-radius:16px;box-shadow:0 4px 12px #2b5da40a;padding:24px}.grid{display:grid;gap:24px}.grid.three{grid-template-columns:repeat(3,1fr)}.page{margin:0 auto;max-width:1200px;padding:56px 36px 100px;width:100%}.page-title{margin-bottom:36px}.page-title h1,h1,h2,h3{color:var(--primary);line-height:1.15}.page-title h1{font-size:38px;margin:0 0 8px}.page-title p,.card p{color:var(--muted)}.eyebrow{color:#745b00;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.progress{background:var(--border);border-radius:99px;height:8px;overflow:hidden}.progress span{background:var(--gold);border-radius:99px;display:block;height:100%;transition:width .3s}.state{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:180px;text-align:center}.spinner{animation:spin .8s linear infinite;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;height:28px;width:28px}@keyframes spin{to{transform:rotate(360deg)}}.error h2,.danger-zone h2{color:var(--danger)}.landing header,.landing footer,.public-header,.public-footer{align-items:center;display:flex;justify-content:space-between;margin:auto;max-width:1200px;padding:22px 24px}.landing nav{align-items:center;display:flex;gap:24px}.landing footer,.public-footer{color:var(--muted);font-size:14px}.public-footer nav{display:flex;flex-wrap:wrap;gap:20px}.public-header{border-bottom:1px solid var(--border)}.legal-page main{padding:48px 24px 80px}.legal-document{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:0 10px 32px #02458b0d;margin:0 auto;max-width:780px;overflow-wrap:anywhere;padding:48px clamp(24px,6vw,64px)}.legal-heading{border-bottom:1px solid var(--border);margin-bottom:32px;padding-bottom:28px}.legal-heading h1{font-size:clamp(38px,7vw,52px);letter-spacing:-.035em;margin:12px 0 8px}.legal-updated{color:var(--muted);font-size:14px}.legal-intro{font-size:19px;line-height:1.6;margin:24px 0 0}.legal-review-note{background:#fff8df;border:1px solid #ead17d;border-radius:12px;color:#4b3c08;line-height:1.55;margin-bottom:36px;padding:16px 18px}.legal-document section{scroll-margin-top:24px}.legal-document section+section{margin-top:34px}.legal-document h2{font-size:24px;margin:0 0 12px}.legal-document p,.legal-document li{line-height:1.72}.legal-document ul,.legal-document ol{padding-left:24px}.hero{align-items:center;display:grid;gap:64px;grid-template-columns:1.1fr .9fr;margin:auto;max-width:1200px;min-height:560px;padding:64px 24px}.hero h1{font-size:54px;letter-spacing:-.035em;margin:14px 0}.hero p{font-size:20px;line-height:1.6;max-width:600px}.hero-art{background:linear-gradient(160deg,#d6e3ff,#7c9fc5);border-radius:24px;box-shadow:0 20px 60px #02458b25;height:400px;overflow:hidden;position:relative}.hero-art span{color:#fff9;font-size:72px;font-weight:800;left:32px;position:absolute;top:32px}.hero-art:after{background:linear-gradient(170deg,transparent 45%,#fff 46%,#dbe4ed 58%,#7e9abe 59%);bottom:0;content:"";height:75%;position:absolute;width:100%}.sun{background:var(--gold);border-radius:50%;height:90px;position:absolute;right:65px;top:90px;width:90px}.features{background:var(--soft);padding:70px max(24px,calc((100% - 1152px)/2))}.product-family{margin:0 auto;max-width:1200px;padding:80px 24px}.product-family-heading{margin-bottom:34px;max-width:650px}.product-family-heading h2{font-size:36px;letter-spacing:-.025em;margin:10px 0}.product-family-heading p{color:var(--muted);font-size:18px;line-height:1.55;margin:0}.product-grid{display:grid;gap:24px;grid-template-columns:minmax(280px,.82fr) 1.6fr}.upcoming-grid{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;min-width:0;padding:24px}.product-card.featured{background:linear-gradient(145deg,var(--primary),var(--navy));border:0;box-shadow:0 18px 42px #02458b24;color:#fff;padding:30px}.product-card-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.product-icon-wrap{align-items:center;background:var(--soft);border-radius:12px;color:var(--primary);display:inline-flex;height:48px;justify-content:center;width:48px}.featured .product-icon-wrap{background:#ffffff1f;color:var(--gold)}.product-icon{height:25px;width:25px}.product-card h3{font-size:22px;margin:24px 0 8px}.product-card p{color:var(--muted);line-height:1.55;margin:0}.product-card.featured h3{color:#fff;font-size:28px}.product-card.featured p{color:#eaf3ff}.product-card.featured .button{align-self:flex-start;margin-top:auto;transform:translateY(4px)}.status{border-radius:99px;display:inline-flex;font-size:11px;font-weight:800;letter-spacing:.06em;padding:7px 10px;text-transform:uppercase;white-space:nowrap}.status.available{background:var(--gold);color:#27364a}.status.coming{background:var(--soft);color:var(--primary)}.product-family.compact{margin-top:54px;padding:32px 0 0}.product-family.compact .product-family-heading{margin-bottom:18px}.product-family.compact .product-family-heading h2{font-size:24px;margin:0 0 6px}.product-family.compact .product-family-heading p{font-size:15px}.upcoming-strip{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.upcoming-item{align-items:center;background:#fff;border:1px solid var(--border);border-radius:14px;display:flex;gap:12px;min-width:0;padding:16px}.upcoming-item .product-icon{color:var(--primary);flex:0 0 auto;height:22px;width:22px}.upcoming-item h3{font-size:16px;margin:0 0 5px;overflow-wrap:anywhere}.upcoming-item .status{background:none;color:var(--muted);padding:0}.features>h2{text-align:center;margin-bottom:36px}.mobile-app-availability{align-items:center;background:linear-gradient(145deg,var(--primary),var(--navy));border-radius:20px;box-shadow:0 18px 42px #02458b24;color:#fff;display:grid;gap:48px;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);margin:70px auto;max-width:1152px;overflow:hidden;padding:48px}.mobile-app-copy{min-width:0}.mobile-app-copy .eyebrow{color:var(--gold)}.mobile-app-copy h2{color:#fff;font-size:34px;letter-spacing:-.025em;margin:10px 0 14px}.mobile-app-copy p{color:#eaf3ff;font-size:18px;line-height:1.55;margin:0 0 24px;max-width:580px}.store-platforms{display:grid;gap:14px}.store-platform-card{align-items:center;background:var(--surface);border:1px solid #ffffff38;border-radius:16px;color:#141d23;display:flex;gap:18px;justify-content:space-between;min-height:92px;padding:18px 20px}.store-platform-card.coming-soon{cursor:default}.store-platform-card.available{cursor:pointer;transition:box-shadow .2s ease,transform .2s ease}.store-platform-card.available:hover{box-shadow:0 8px 24px #001b3e2e;transform:translateY(-2px)}.store-platform{align-items:center;display:flex;gap:14px;min-width:0}.store-platform-icon{align-items:center;background:var(--soft);border-radius:12px;color:var(--primary);display:inline-flex;flex:0 0 auto;height:50px;justify-content:center;width:50px}.store-platform-icon svg{fill:currentColor;height:27px;width:27px}.store-platform small{color:var(--muted);display:block;font-size:12px;font-weight:600;margin-bottom:3px}.store-platform strong{color:#141d23;display:block;font-size:20px}.store-platform-card .status.coming{background:var(--soft);color:var(--primary)}.cta{background:var(--navy);border-radius:20px;margin:70px auto;max-width:1152px;padding:44px}.cta h2{color:#fff}.auth-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;min-height:100dvh}.auth-art{background:linear-gradient(145deg,#02458b,#4f7bb5);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:48px}.auth-art h1{color:#fff;font-size:48px}.auth-panel{align-items:center;display:flex;justify-content:center;padding:32px}.auth-box{display:flex;flex-direction:column;gap:14px;max-width:420px;width:100%}.auth-box h1{font-size:38px;margin-bottom:0}.or{align-items:center;color:var(--muted);display:flex;gap:14px}.or:before,.or:after{background:var(--border);content:"";height:1px;flex:1}.fine{color:var(--muted);font-size:13px;text-align:center}.app-header{display:none}.app-body{display:grid;grid-template-columns:240px 1fr;min-height:100vh;min-height:100dvh}.app.focus-mode .app-body{display:block}.app-body aside{background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:40px;padding:38px 28px;position:sticky;top:0;height:100vh;height:100dvh}.app-body aside nav{display:flex;flex-direction:column;gap:8px}.app-body aside nav a{border-radius:10px;color:var(--muted);padding:13px}.app-body aside nav a.active{background:var(--soft);color:var(--primary)}.text-button{background:none;border:0;color:var(--muted);cursor:pointer;margin-top:auto;text-align:left}.mobile-nav{display:none}.dashboard-grid,.settings-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:24px;margin-bottom:42px}.big-metric{color:var(--primary);font-size:48px;font-weight:800}.section-heading{align-items:center;display:flex;justify-content:space-between;margin:42px 0 20px}.resume .button{margin-top:20px}.chips{display:flex;gap:10px;margin-bottom:28px;overflow:auto}.chips a{background:#fff;border:1px solid var(--border);border-radius:99px;padding:9px 15px;white-space:nowrap}.chips a.active{background:var(--primary);color:#fff}.curriculum{display:grid;gap:18px}.page-language-selector{margin-bottom:24px}.curriculum-subject{background:var(--surface, #f6faff);border:1px solid #cbd9e8;border-radius:18px;overflow:hidden}.subject-toggle{align-items:center;background:#edf4fb;border:0;color:inherit;cursor:pointer;display:grid;font:inherit;gap:16px;grid-template-columns:auto minmax(220px,1fr) minmax(180px,.7fr);padding:24px 28px;text-align:left;width:100%}.subject-toggle:hover{background:#e3eef9}.subject-toggle:focus-visible,.topic-main:focus-visible,.topic-practice:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:-3px}.subject-copy strong,.subject-copy small{display:block}.subject-copy strong{font-size:22px}.subject-copy small{color:var(--muted);margin-top:5px}.subject-copy .subject-label{color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.09em;margin:0 0 3px;text-transform:uppercase}.subject-chevron{color:var(--primary);font-size:32px;line-height:1;transform:rotate(0);transition:transform .16s ease}.curriculum-subject.open .subject-chevron{transform:rotate(90deg)}.subject-progress{align-items:center;display:grid;gap:14px;grid-template-columns:1fr auto}.subject-progress>strong{color:var(--primary);min-width:3ch;text-align:right}.topic-list{border-left:4px solid #aac7e8;margin:10px 18px 18px 32px}.topic-row{align-items:center;background:#fff;border-bottom:1px solid var(--border);display:grid;gap:24px;grid-template-columns:1fr auto;padding:0 18px;transition:background .16s ease}.topic-row:hover{background:#f8fbff}.topic-row:last-child{border-bottom:0}.topic-main{color:inherit;display:grid;gap:7px;padding:22px 0;position:relative}.topic-title{color:var(--text);font-size:18px;font-weight:750}.topic-meta{color:var(--muted);font-size:14px}.topic-main .progress{max-width:420px}.topic-destination{color:var(--primary);font-size:13px;font-weight:750;margin-top:2px}.topic-practice{font-size:14px;font-weight:700}.breadcrumb{color:var(--muted);display:inline-block;font-size:14px;margin-bottom:18px}.lesson-summary{align-items:center;display:grid;gap:28px;grid-template-columns:1fr auto}.lesson-summary .progress{margin-top:14px}.section-nav{display:flex;gap:10px;margin:20px 0;overflow-x:auto;padding-bottom:4px}.section-nav a{background:#fff;border:1px solid var(--border);border-radius:999px;color:var(--muted);flex:0 0 auto;font-size:13px;padding:8px 12px}.section-nav a.active{background:var(--primary);border-color:var(--primary);color:#fff}.lesson-finish{height:48px}.lesson-outline{display:grid;gap:12px;margin-top:26px}.lesson-outline .card{align-items:center;display:flex;gap:20px}.lesson{background:#fff;border-radius:16px;margin:30px auto;max-width:800px;padding:24px 50px}.lesson section{border-bottom:1px solid var(--border);padding:28px 0;scroll-margin-top:104px}.lesson p{font-size:18px;line-height:1.75}.lesson-end{text-align:center}.lesson-practice-cta{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto 24px;max-width:800px}.lesson-practice-cta h2{margin:0 0 6px}.lesson-practice-cta p{margin:0}.practice-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.practice-page>header,.practice-page>footer{align-items:center;background:#fff;display:flex;justify-content:space-between;padding:20px 5vw}.practice-page>.progress{border-radius:0}.question{margin:auto;max-width:780px;padding:50px 24px;width:100%}.question h1{font-size:34px;line-height:1.25}.answers{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:36px 0}.answers button{align-items:start;background:#fff;border:2px solid transparent;border-radius:16px;box-shadow:0 4px 12px #2b5da412;color:#141d23;cursor:pointer;display:grid;gap:16px;grid-template-columns:44px minmax(0,1fr);padding:18px;text-align:left;width:100%}.answers button .answer-letter{align-items:center;background:var(--soft);border-radius:50%;display:flex;font-weight:700;height:44px;justify-content:center;width:44px}.answers .answer-text{min-width:0}.answers button.selected{border-color:var(--primary)}.answers button.correct{border-color:#16815b;background:#ecfff7}.answers button.wrong{border-color:var(--danger);background:#fff4f3}.feedback.success h2{color:#16815b}.result-page{align-items:center;display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom))}.result-page>.card{text-align:center;max-width:600px}.result-primary-actions{justify-content:center}.result-tertiary-link{display:inline-block;margin-top:18px}.guest-continuity{color:var(--muted)}.result-icon{align-items:center;background:#e8fff5;border-radius:50%;color:#16815b;display:inline-flex;font-size:32px;height:72px;justify-content:center;width:72px}.ring{align-items:center;background:conic-gradient(var(--gold) var(--value),var(--border) 0);border-radius:50%;display:flex;height:150px;justify-content:center;margin:20px auto;position:relative;width:150px}.ring:after{background:#fff;border-radius:50%;content:"";inset:14px;position:absolute}.ring b{font-size:30px;z-index:1}.progress-list{display:grid;gap:12px}.progress-list .card{display:grid;grid-template-columns:1fr auto;gap:8px}.progress-list .progress{grid-column:1/-1}.settings-grid{grid-template-columns:1fr 1fr}.settings-grid h2,.account-management>h2{font-size:19px}.settings-grid .card{display:flex;flex-direction:column;gap:20px}label{color:var(--primary);display:flex;flex-direction:column;font-weight:700;gap:7px}input{background:#fff;border:1.5px solid var(--border);border-radius:10px;color:#141d23;min-height:48px;padding:10px 13px}input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #aac7ff55;outline:none}.account-management{margin-top:54px}.account-row{align-items:center;display:flex;gap:20px;justify-content:space-between;padding:8px 0}.account-row+.account-row{border-top:1px solid var(--border);margin-top:14px;padding-top:22px}.account-row p{margin:6px 0}.account-row.quiet{font-size:14px}.danger-zone{margin:auto;max-width:700px}.center{align-items:center;display:flex;min-height:100vh;min-height:100dvh;justify-content:center}@media(max-width:900px){.grid.three{grid-template-columns:1fr 1fr}.app-body{display:block}.app-body aside{display:none}.app-header{align-items:center;background:#fff;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 22px}.app-header nav{display:flex;gap:20px}.avatar{align-items:center;background:var(--primary);border:0;border-radius:50%;color:#fff;display:flex;height:38px;justify-content:center;text-decoration:none;width:38px}.hero{grid-template-columns:1fr}.hero-art{height:300px}.product-grid{grid-template-columns:1fr}.upcoming-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.page-language-selector{margin-bottom:20px}.dashboard-grid{grid-template-columns:1fr}.auth-art{display:none}.auth-page{grid-template-columns:1fr}}@media(max-width:640px){.page{padding:32px 16px calc(90px + env(safe-area-inset-bottom))}.page-title h1{font-size:30px}.grid.three,.settings-grid,.answers{grid-template-columns:1fr}.hero{gap:30px;min-height:0;padding-top:40px}.landing header{display:grid;gap:12px;grid-template-columns:1fr}.landing nav{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.landing nav .language-selector{grid-column:1 / -1}.landing nav>a{align-items:center;display:flex;justify-content:center;min-height:44px;text-align:center}.landing nav .button{padding-inline:12px}.hero h1{font-size:38px}.hero-art{height:220px}.features{padding:50px 16px}.mobile-app-availability{border-radius:0;gap:30px;grid-template-columns:1fr;margin:0;padding:42px 16px}.mobile-app-copy h2{font-size:30px}.mobile-app-copy p{font-size:16px}.store-platform-card{padding:16px}.product-family{padding:56px 16px}.product-family-heading h2{font-size:30px}.product-family-heading p{font-size:16px}.upcoming-grid,.upcoming-strip{grid-template-columns:1fr}.product-card.featured,.product-card{padding:22px}.product-card.featured .button{margin-top:24px}.page-language-selector{margin-bottom:16px}.cta{border-radius:0;margin:0;padding:42px 20px}.app-header nav{display:none}.app-header{display:grid;gap:10px 12px;grid-template-columns:auto minmax(0,1fr) auto;padding:12px 16px}.app-header>.language-selector{min-width:0}.app-header>.language-selector select{width:100%}.app-header .guest-auth{display:grid;gap:10px;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.app-header .guest-auth>a{align-items:center;display:flex;justify-content:center;min-height:44px;min-width:0;padding-inline:10px;text-align:center;white-space:normal}.mobile-nav{background:#fff;border-top:1px solid var(--border);bottom:0;display:flex;justify-content:space-around;left:0;padding:13px 6px calc(13px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:10}.mobile-nav a{color:var(--muted);font-size:13px}.mobile-nav a.active{color:var(--primary)}.lesson{border-radius:0;margin-left:-16px;margin-right:-16px;padding:20px 24px}.subject-toggle{gap:10px;grid-template-columns:auto minmax(0,1fr);padding:20px}.subject-progress{grid-column:2;margin-top:4px}.topic-list{margin:8px 8px 12px 16px}.topic-row{gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:0 18px}.topic-main{min-width:0}.topic-title,.topic-meta{overflow-wrap:anywhere}.lesson-summary{grid-template-columns:1fr}.lesson-summary .button{justify-self:start}.lesson-practice-cta{align-items:stretch;flex-direction:column;padding:22px}.lesson-practice-cta .button{width:100%}.question{padding:30px 16px 32px}.question h1{font-size:clamp(26px,7.2vw,30px);line-height:1.28}.practice-page>footer{position:sticky;bottom:0;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));z-index:10}.practice-page>footer .button{min-height:48px}.answers{gap:12px;margin:28px 0}.answers button{gap:12px;grid-template-columns:44px minmax(0,1fr);padding:16px}.answers .answer-text .bilingual-primary{font-size:19px;line-height:1.35}.answers .answer-text .bilingual-swedish{font-size:16px;line-height:1.4}.account-row{align-items:flex-start;flex-direction:column}.auth-panel{padding:24px}.auth-box h1{font-size:32px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation:none}}.exam-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.exam-facts div{background:var(--soft);border-radius:12px;padding:16px}.exam-facts dt{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.exam-facts dd{color:var(--primary);font-size:24px;font-weight:800;margin:6px 0 0}.mock-focus{background:var(--surface);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.mock-focus>header,.mock-focus>footer{align-items:center;display:flex;gap:24px;justify-content:space-between;padding:18px 5vw}.mock-focus>.progress{border-radius:0}.mock-focus .timer{background:var(--soft);border-radius:99px;color:#745b00;font-size:18px;font-weight:800;padding:8px 14px}.mock-focus .timer-warning{background:#fff3cd;color:#6b5100}.mock-focus .timer-critical{background:#ffebe8;color:var(--danger)}.mock-focus .untimed{color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.08em}.question-nav{display:flex;flex-wrap:wrap;gap:8px;margin:28px auto 0;max-width:900px;padding:0 24px;width:100%}.question-nav button{background:#fff;border:1px solid var(--border);border-radius:8px;cursor:pointer;height:40px;width:40px}.question-nav button.answered{background:#e8fff5}.question-nav button.flagged{border:2px solid #a66b00}.question-nav button.current{border:3px solid var(--primary)}.mock-question{margin:0 auto;max-width:900px;padding:42px 24px;width:100%}.mock-question h1{color:var(--on-surface, #141d23);font-size:34px}.mock-actions{display:grid;gap:12px;grid-template-columns:1fr 2fr 1fr;margin:20px 0 12px}.answer-save-state{align-self:center;color:var(--muted);font-size:14px;min-width:7rem;text-align:center}.answer-save-state.saved{color:#16815b}.answer-save-state.error{color:var(--danger)}.mock-focus>footer{border-top:1px solid var(--border);margin-top:auto;position:sticky;bottom:0;background:#fff;padding-bottom:max(18px,env(safe-area-inset-bottom))}.score-trend{align-items:flex-end;display:flex;gap:8px;height:120px;margin-top:24px}.score-trend span{background:var(--gold);border-radius:6px 6px 0 0;flex:1;min-height:8px}.review-list{display:grid;gap:16px}.review-list>a{color:inherit}.correct-text{color:#16815b!important;font-weight:700}.cta-card{align-items:center;background:var(--navy);display:flex;justify-content:space-between;margin-top:32px}.cta-card h2,.cta-card p{color:#fff}@media(max-width:640px){.cta-card{align-items:flex-start;flex-direction:column}.exam-facts{grid-template-columns:1fr}.mock-focus>header{align-items:flex-start;flex-wrap:wrap}.mock-focus>header .brand{width:100%}.mock-focus .timer{font-size:16px;padding:7px 11px}.mock-focus .timer-suffix{display:none}.question-nav{max-height:104px;overflow:auto}.mock-question h1{font-size:27px}.mock-actions{grid-template-columns:1fr 1fr}.answer-save-state{grid-column:1/-1;grid-row:1}.answer-save-retry{grid-column:1/-1}.mock-focus>footer{align-items:stretch;flex-direction:column;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.mock-focus>footer .button{width:100%}}.guest-auth{align-items:center;display:flex;gap:1rem}.exam-mode-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:1.5rem 0}.exam-mode-card{align-content:start;display:grid;gap:.75rem}.exam-mode-card h2,.exam-mode-card p{margin:0}.exam-mode-card .button{justify-self:start}@media(max-width:640px){.exam-mode-grid{grid-template-columns:1fr}.exam-mode-card .button{justify-self:stretch;width:100%}}.guest-save-prompt{border-color:color-mix(in srgb,var(--accent, #e29b45) 45%,transparent);margin-top:1.5rem}.language-selector select{background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;color:inherit;min-height:38px;padding:6px 30px 6px 10px}.bilingual{display:flex;flex-direction:column;gap:.375rem}.bilingual-primary{line-height:1.55}.bilingual-swedish{color:var(--muted);font-size:.9em;line-height:1.5;text-align:start;unicode-bidi:isolate}.topic-title.bilingual{display:flex}.answers .bilingual{align-items:flex-start;text-align:start}html[dir=rtl] body{font-family:system-ui,-apple-system,Segoe UI,Tahoma,Arial,sans-serif;line-height:1.6}html[dir=rtl] .app-body aside,html[dir=rtl] .app-header,html[dir=rtl] .page{direction:rtl}html[dir=rtl] .subject-chevron{transform:scaleX(-1)}html[dir=rtl] .mock-focus,html[dir=rtl] .mock-focus *{direction:ltr}html[lang=hi] body{font-family:system-ui,Noto Sans Devanagari,Mangal,sans-serif;line-height:1.65}html[lang=bn] body{font-family:system-ui,Noto Sans Bengali,Nirmala UI,sans-serif;line-height:1.65}.diagram-canvas{background:linear-gradient(145deg,#f5f9fd,#eaf3fa);border:1px solid #b9cee0;border-radius:18px;color:var(--navy);cursor:zoom-in;overflow:hidden;padding:clamp(14px,3vw,28px);width:100%}.diagram-canvas p{color:var(--navy);margin:.75rem 0 0}.diagram-map svg{display:block;height:auto;max-height:430px;width:100%}.diagram-map rect{fill:#dce8f2;stroke:#4e6e8b;stroke-width:2}.diagram-map rect.sweden{fill:#ffd45a;stroke:#856713;stroke-width:4}.diagram-map text{fill:#102f4f;font-size:15px;font-weight:700;text-anchor:middle}.diagram-map .arctic{fill:none;stroke:#b24b4b;stroke-dasharray:9 7;stroke-width:3}.diagram-map .arctic+text{fill:#8a2e2e;font-size:14px;text-anchor:start}.landsdelar{align-items:center;display:grid;gap:clamp(18px,5vw,48px);grid-template-columns:minmax(150px,240px) 1fr}.sweden-shape{display:grid;filter:drop-shadow(0 8px 12px #0b2f5030);grid-template-rows:3fr 1.1fr 1.2fr;min-height:360px;transform:skew(-3deg);width:100%}.sweden-shape span{align-items:center;border:2px solid #fff;color:#102f4f;display:flex;font-weight:800;justify-content:center;padding:8px;transform:skew(3deg)}.sweden-shape .norrland{background:#9bc9e8;border-radius:50% 48% 12% 10%}.sweden-shape .svealand{background:#ffd45a}.sweden-shape .gotaland{background:#92d1ad;border-radius:8% 8% 48% 50%}.landsdelar ul{display:grid;gap:14px;list-style:none;margin:0;padding:0}.landsdelar li{background:#fff;border-inline-start:5px solid var(--primary);border-radius:10px;padding:12px}.responsibility{display:grid;gap:12px}.responsibility .level{align-items:center;background:#fff;border:1px solid #c7d8e6;border-radius:14px;display:grid;gap:14px;grid-template-columns:42px 1fr;padding:14px}.responsibility .level>span{align-items:center;background:var(--navy);border-radius:50%;color:#fff;display:flex;font-size:18px;font-weight:800;height:38px;justify-content:center;width:38px}.responsibility h3,.responsibility p{margin:0}.responsibility p{margin-top:4px}.hierarchy{text-align:center}.hierarchy>div>span{color:var(--primary);display:block;font-size:28px;font-weight:900;line-height:1}.hierarchy section{background:#fff;border:2px solid #5f7c96;border-radius:14px;display:grid;margin:auto;max-width:480px;padding:12px}.hierarchy section small{color:var(--muted)}.hierarchy section strong{font-size:clamp(18px,3vw,24px)}.election-cycle{display:grid;gap:14px;grid-template-columns:2fr 1fr}.election-cycle section{background:#fff;border:1px solid #c7d8e6;border-radius:14px;padding:18px}.election-cycle strong{color:var(--primary);font-size:20px}.election-cycle ul{margin-bottom:0;padding-inline-start:20px}.timeline{overflow-x:auto}.timeline ol{direction:ltr;display:grid;gap:0;grid-template-columns:repeat(9,minmax(132px,1fr));list-style:none;margin:0;min-width:1188px;padding:18px 0 8px}.timeline li{border-top:4px solid var(--primary);display:grid;gap:8px;padding:20px 10px 0;position:relative;text-align:start}.timeline li:before{background:#fff;border:4px solid var(--primary);border-radius:50%;content:"";height:18px;left:10px;position:absolute;top:-11px;width:18px}.timeline time{color:var(--primary);font-size:18px;font-weight:900}.timeline span{font-size:14px;line-height:1.35}.media-lightbox-content{background:#fff;border-radius:18px;max-height:calc(100dvh - 2rem);max-width:min(960px,100%);overflow:auto;width:100%}.media-lightbox-content .diagram-canvas{cursor:default;max-height:none}.media-lightbox-content>img{margin:auto}html[dir=rtl] .diagram-map,html[dir=rtl] .sweden-shape{transform:none}html[dir=rtl] .timeline{direction:ltr}@media(max-width:520px){.diagram-canvas{border-radius:14px;padding:12px}.diagram-map text{font-size:13px}.landsdelar{grid-template-columns:1fr}.sweden-shape{justify-self:center;max-width:190px;min-height:280px}.election-cycle{grid-template-columns:1fr}.timeline ol{grid-template-columns:repeat(9,126px);min-width:1134px}.responsibility .level{grid-template-columns:36px 1fr;padding:12px}.responsibility .level>span{height:34px;width:34px}}.lesson-media,.lesson-audio{margin:1.5rem 0;max-width:760px}.lesson-media img{border-radius:16px;display:block;height:auto;max-height:min(68dvh,680px);object-fit:contain;width:100%}.lesson-media figcaption,.media-caption{color:var(--muted);font-size:.875rem;line-height:1.45;margin:.625rem .25rem 0;text-align:start}.lesson-media figcaption small{font-size:inherit}.media-enlarge{background:transparent;border:0;color:var(--primary);cursor:zoom-in;display:grid;font:inherit;gap:.5rem;padding:0;text-align:start;width:100%}.media-enlarge:focus-visible,.audio-toggle:focus-visible{outline:3px solid #ebc246;outline-offset:3px}.media-lightbox{align-items:center;background:#06172ee8;display:flex;inset:0;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));position:fixed;z-index:110}.media-lightbox img{border-radius:8px;height:auto;max-height:calc(100dvh - 2rem);max-width:100%;object-fit:contain;width:auto}.media-lightbox>button{background:#fff;border:0;border-radius:999px;color:var(--navy);cursor:pointer;font-size:1.6rem;height:44px;inset-block-start:max(1rem,env(safe-area-inset-top));inset-inline-end:max(1rem,env(safe-area-inset-right));position:absolute;width:44px;z-index:1}.lesson-audio{background:var(--soft);border:1px solid var(--border);border-radius:16px;padding:1rem}.lesson-audio>figcaption{font-weight:700;margin-bottom:.75rem}.lesson-audio-controls{align-items:center;display:grid;gap:.75rem;grid-template-columns:44px minmax(80px,1fr) auto}.audio-toggle{background:var(--primary);border:0;border-radius:999px;color:#fff;cursor:pointer;font-size:1rem;height:44px;width:44px}.lesson-audio-controls input{accent-color:var(--primary);min-width:0;width:100%}.lesson-audio-controls output{font-variant-numeric:tabular-nums;white-space:nowrap}html[dir=rtl] .lesson-media img{transform:none}@media(max-width:430px){.lesson-media,.lesson-audio{margin-inline:0}.lesson-audio-controls{grid-template-columns:44px 1fr}.lesson-audio-controls output{grid-column:2;text-align:end}.lesson-media img{max-height:60dvh}}@media(max-width:640px){.bilingual-primary,.bilingual-swedish{overflow-wrap:anywhere}.practice-question-text{gap:8px}.practice-question-text .bilingual-primary{line-height:1.28}.practice-question-text .bilingual-swedish{font-size:.62em;line-height:1.4}}.report-content>.report-link{color:var(--muted);font-size:.875rem;font-weight:500;text-decoration-color:transparent}.report-content>.report-link:hover,.report-content>.report-link:focus-visible{color:var(--primary);text-decoration-color:currentColor}.report-link{background:none;border:0;color:var(--primary);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;padding:.5rem 0;cursor:pointer}.modal-backdrop{position:fixed;inset:0;background:#0b1f36a8;display:grid;place-items:center;padding:1rem;z-index:100}.report-dialog{background:var(--surface);border:1px solid #ffffff80;border-radius:24px;box-shadow:0 24px 72px #001b3e59;max-height:calc(100dvh - 2rem);overflow:auto;padding:28px;width:min(600px,100%)}.report-dialog-header h2{font-size:26px;margin:0 0 8px}.report-dialog-header p{color:var(--muted);line-height:1.5;margin:0}.report-reasons{border:0;display:grid;gap:10px;margin:24px 0;padding:0}.report-reasons label{align-items:center;background:#fff;border:1.5px solid var(--border);border-radius:14px;cursor:pointer;display:flex;gap:12px;min-height:52px;padding:12px 14px;transition:background .15s,border-color .15s,box-shadow .15s}.report-reasons label:hover{background:var(--soft);border-color:#8cb7df}.report-reasons label.selected{background:#ecf5fe;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.report-reasons input{height:1px;opacity:0;position:absolute;width:1px}.report-radio{background:#fff;border:2px solid #7890a8;border-radius:50%;display:grid;flex:0 0 20px;height:20px;place-items:center;width:20px}.report-reasons label.selected .report-radio{border:6px solid var(--primary)}.report-reasons label:has(input:focus-visible){outline:3px solid #ebc246;outline-offset:2px}.report-comment{display:grid;gap:6px}.report-comment>span{color:var(--muted);font-size:14px}.report-dialog textarea{border:1.5px solid var(--border);border-radius:12px;display:block;font:inherit;line-height:1.45;min-height:110px;padding:12px 14px;resize:vertical;width:100%}.report-dialog textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #8cb7df66;outline:0}.report-dialog small{color:var(--muted);display:block;text-align:end}.report-actions{border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:12px;margin-top:22px;padding-top:20px}.report-content>.success{color:#246b47}@media(max-width:600px){.modal-backdrop{align-items:end;padding:0}.report-dialog{border-radius:24px 24px 0 0;max-height:94dvh;padding:24px 18px max(18px,env(safe-area-inset-bottom));width:100%}.report-dialog-header h2{font-size:24px}.report-reasons{margin:20px 0}.report-actions{background:var(--surface);bottom:calc(-1*max(18px,env(safe-area-inset-bottom)));margin-inline:-18px;padding:16px 18px max(18px,env(safe-area-inset-bottom));position:sticky}.report-actions .button{flex:1;padding-inline:12px}}
