:root{--ink:#142f37;--muted:#5c6f73;--paper:#f7f8f5;--line:#dfe5df;--orange:#b94525;--green:#245d4d;--nav:#122f37}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.55}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d27b22;outline-offset:4px}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:42px;line-height:1.15;letter-spacing:-1.8px;font-weight:600;margin-bottom:14px}h2{font-size:25px;line-height:1.3;letter-spacing:-.6px;font-weight:600}h3{font-size:17px;line-height:1.4}p{margin-bottom:12px}.shell{display:flex;min-height:100vh}aside{position:fixed;width:244px;inset:0 auto 0 0;background:var(--nav);color:#f2f7f2;padding:35px 23px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-size:29px;font-weight:650;letter-spacing:-1.4px;text-decoration:none}.brand-mark{display:grid;place-items:center;background:#d8e7d0;color:#183a3e;width:34px;height:34px;font-size:29px;border-radius:8px}.brand-dot{color:#e69367;margin-left:-10px}.workspace,.tiny-label,.eyebrow,.breadcrumb,.tag,.section-kicker{font-size:10px;letter-spacing:1.7px;font-weight:700}.workspace{color:#aac0c1;margin:53px 12px 20px}.nav{display:flex;gap:14px;align-items:center;width:100%;background:none;border:0;color:#bdd0d0;padding:13px;border-radius:7px;margin:5px 0;text-align:left}.nav span{font-size:20px;width:22px}.nav.active{color:#fff;background:#29454b}.nav:hover{background:#29454b}.sidebar-bottom{margin-top:auto;padding:65px 12px 0}.tiny-label{font-size:8px;letter-spacing:1.2px;color:#b0c6c6}.sidebar-bottom p{font-family:Georgia,serif;font-size:25px;line-height:1.3;margin:17px 0 24px}.private-label{border-top:1px solid #355057;padding-top:18px;font-size:12px;color:#bacdcd}.status-dot{display:inline-block;width:7px;height:7px;background:#abd0ae;border-radius:50%;margin-right:7px}.content{margin-left:244px;width:calc(100% - 244px)}header{height:89px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:#fff9}.breadcrumb{color:var(--muted);font-size:9px;letter-spacing:1.5px}.breadcrumb strong{color:var(--ink);margin-left:9px}main{max-width:1350px;margin:auto;padding:42px 48px 55px;min-height:calc(100vh - 160px)}.eyebrow{color:var(--orange);margin-bottom:13px}.muted{color:var(--muted)}.small,small{font-size:12px}.heading-row,.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.heading-row{margin-bottom:31px}.heading-row p{margin-bottom:0}.date-tag{border:1px solid var(--line);border-radius:20px;padding:8px 14px;font-size:11px;white-space:nowrap;color:var(--muted)}.hero{display:grid;grid-template-columns:1.5fr 1fr;min-height:255px;background:#e5ecdF;border:1px solid #d7e0d1;border-radius:12px;overflow:hidden;margin-bottom:25px}.hero-copy{padding:34px}.hero h2{font-family:Georgia,serif;font-size:35px;font-weight:400;line-height:1.18;max-width:440px;margin-bottom:14px}.hero p{max-width:400px;color:#415b54;font-size:13px}.hero .eyebrow{color:var(--green)}.hero-art{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:repeating-linear-gradient(0deg,transparent,transparent 29px,#b5c7af50 30px),repeating-linear-gradient(90deg,transparent,transparent 29px,#b5c7af50 30px)}.compass{width:190px;height:190px;border:1px solid #76947e;border-radius:50%;position:relative;display:grid;place-items:center;box-shadow:0 0 0 25px #76947e12,0 0 0 50px #76947e10}.compass:before,.compass:after{content:"";position:absolute;background:#76947e60}.compass:before{width:240px;height:1px}.compass:after{height:240px;width:1px}.compass .plane{font-size:84px;transform:rotate(-35deg);z-index:1;color:#254f44;line-height:1}.compass .north{position:absolute;top:8px;font-size:10px}.compass .degree{position:absolute;bottom:10px;font-size:9px;letter-spacing:2px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:11px 18px;border-radius:6px;border:1px solid var(--ink);font-size:12px;font-weight:650;background:var(--ink);color:#fff;text-decoration:none}.primary:hover{background:#2d5056}.secondary{background:transparent;color:var(--ink);border-color:#cad5cd}.secondary:hover{background:#e8eee7}.text-button{border:0;background:none;color:var(--ink);font-size:12px;padding:5px 0;text-decoration:underline;text-underline-offset:3px}.hero .primary{margin-top:7px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin:25px 0 34px}.stat{padding:20px 23px;background:#fff;border:1px solid var(--line);border-radius:9px}.stat-label{font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.stat-value{font-size:30px;line-height:1.3;margin:10px 0 3px;font-weight:550;letter-spacing:-1px}.stat small{color:var(--muted);font-size:10px}.section-head{margin:30px 0 18px}.section-head h2{font-size:20px;margin:0}.tag{font-size:8px;letter-spacing:1px;background:#eef2ed;border:1px solid #dbe3d9;padding:5px 8px;border-radius:4px;color:#4c6658;white-space:nowrap}.tag.pending{background:#faf0df;color:#765419;border-color:#eddcbd}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:24px;display:flex;flex-direction:column}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:22px}.subject-icon{font-family:monospace;font-size:14px;background:#edf2eb;color:#3b5d4b;border:1px solid #dfe7dc;border-radius:6px;width:43px;height:41px;display:grid;place-items:center}.card h3{margin-bottom:7px}.card p{font-size:12px;color:var(--muted)}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:14px;margin-top:auto;font-size:11px;color:var(--muted)}.card .text-button{font-size:11px}.notice{padding:17px 20px;border:1px solid #d7e0d1;background:#eff3eb;border-radius:8px;font-size:12px;margin:20px 0;color:#3c5548}.notice.warning{background:#fcf3e5;border-color:#e9d9ba;color:#6b501e}.panel{background:#fff;border:1px solid var(--line);border-radius:9px;padding:28px;margin-bottom:20px}.panel h2{font-size:21px}.panel p{max-width:800px}.privacy-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.privacy-grid .panel{margin-bottom:0}label{display:block;font-size:12px;font-weight:600;margin:15px 0}input:not([type=checkbox]):not([type=radio]),select{display:block;width:100%;border:1px solid #bac9c2;border-radius:5px;padding:11px 12px;color:var(--ink);background:white;margin-top:6px}input[type=checkbox],input[type=radio]{accent-color:var(--green);width:18px;height:18px;flex-shrink:0}.check{display:flex;align-items:center;gap:10px;font-weight:400}.check[hidden]{display:none}.row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.row label{flex:1;min-width:100px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}td,th{padding:14px 9px;border-bottom:1px solid var(--line)}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.empty{text-align:center;padding:40px;color:var(--muted)}.empty h3{color:var(--ink)}.question{font-size:22px;line-height:1.5;margin:25px 0}.option{display:flex;align-items:flex-start;gap:14px;font-size:14px;font-weight:400;border:1px solid var(--line);border-radius:8px;padding:17px}.option:has(input:checked){background:#eaf1e6;border-color:#49715a}.option input{margin-top:2px}.option.good{border-color:#477457;background:#edf5ea}.option.bad{border-color:#ac523e;background:#fcf0ec}.session-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}progress{width:100%;height:6px;accent-color:var(--green);border:0;border-radius:4px}footer{display:flex;align-items:center;justify-content:space-between;padding:20px 48px;border-top:1px solid var(--line);font-size:8px;letter-spacing:1.2px;color:var(--muted)}footer .text-button{font-size:10px;letter-spacing:0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#142f37;color:white;border-radius:8px;max-width:90vw;padding:13px 22px;font-size:13px;box-shadow:0 5px 20px #0002;z-index:10}.toast:empty{display:none}dialog{border:1px solid var(--line);border-radius:13px;padding:35px;width:450px;max-width:94vw;color:var(--ink)}dialog::backdrop{background:#0d252c90;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:13px;top:6px;background:none;border:0;font-size:26px;color:var(--muted)}dialog h2{font-size:29px;margin-bottom:12px}dialog .primary{width:100%}.switch-auth{display:block;margin:16px auto 0}#auth-error{font-size:12px;color:#a13624}.skip{position:fixed;top:-80px;left:10px;padding:10px;background:#fff;z-index:20}.skip:focus{top:10px}.review-question{padding:24px 0;border-bottom:1px solid var(--line)}.review-question:last-child{border:0}.review-question h3{font-size:16px}.review-question p{font-size:13px}.review-question li{font-size:13px;padding:5px}.right{color:#245d4d;font-weight:600}.wrong{color:#9d3825}.result-score{font-size:60px;line-height:1;letter-spacing:-3px;margin:20px 0}details{margin:20px 0}summary{cursor:pointer;font-weight:600}.notice-copy{font-size:13px;color:var(--muted)}.notice-copy h3{color:var(--ink);margin-top:25px}.legal-value{overflow-wrap:anywhere}.chip{display:inline-block;background:#e9efe6;padding:5px 10px;border-radius:20px;font-size:10px;color:#44614b}.account-email{display:inline-block;max-width:180px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;margin-right:15px;font-size:11px;color:var(--muted)}@media(min-width:1600px){main{padding-top:55px}}@media(max-width:1100px){aside{width:205px;padding:30px 17px}.content{margin-left:205px;width:calc(100% - 205px)}main{padding:30px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}header,footer{padding-left:30px;padding-right:30px}.hero-art{min-width:200px}.hero-copy{padding:27px}h1{font-size:35px}.hero h2{font-size:30px}.date-tag{display:none}}@media(max-width:720px){.shell{display:block}aside{position:static;width:100%;padding:16px 20px}.brand{font-size:24px}.brand-mark{width:27px;height:27px}.workspace,.sidebar-bottom{display:none}nav{display:flex;gap:4px;margin-top:16px}.nav{font-size:10px;justify-content:center;padding:8px 4px;gap:5px;margin:0}.nav span{display:none}.content{margin:0;width:100%}header{height:62px;padding:0 20px}.breadcrumb{font-size:8px}main{padding:28px 20px}h1{font-size:32px}.hero{grid-template-columns:1fr}.hero-art{display:none}.hero-copy{padding:25px}.hero h2{font-size:29px}.stats{gap:8px}.stat{padding:14px 12px}.stat-label{font-size:9px}.stat-value{font-size:25px}.stat small{font-size:9px}.grid,.privacy-grid{grid-template-columns:1fr}.card{padding:21px}.card-top{margin-bottom:15px}.heading-row{margin-bottom:24px}.panel{padding:22px}.account-email{display:none}footer{padding:20px;gap:20px}.question{font-size:18px}.option{font-size:13px}.session-top{gap:20px}}
.brand-name{display:flex;flex-direction:column;line-height:1.1;font-size:24px;letter-spacing:-.8px}.brand-name span{font-size:13px;font-weight:500;letter-spacing:.1px;margin-top:5px}.social-login{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:20px}.social-login .secondary{display:flex;width:100%;margin:10px 0}.social-login .check{font-size:12px}.provider-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.provider-row:last-child{border:0}
.brand-name{font-size:16px;letter-spacing:-.5px}.brand-name span{font-size:12px;letter-spacing:.5px}.brand{gap:8px}.brand-mark{flex-shrink:0;width:30px;height:30px}

/* Locally drawn European identity: no external image or font requests. */
.eu-flag,.lux-flag{display:block;flex-shrink:0;overflow:hidden;border-radius:2px}
.eu-flag{width:30px;height:20px}.lux-flag{width:23px;height:14px}
.brand-mark.eu-brand{width:36px;height:24px;background:none;border-radius:2px;box-shadow:0 0 0 1px #ffffff24}
.eu-brand .eu-flag{width:36px;height:24px}
.regional-identity{display:flex;align-items:center;gap:8px;margin:18px 0 0;color:#c0d3d9;font-size:9px;line-height:1.5}
.workspace{margin-top:34px}
.hero{background:#e9eff8;border-color:#d3deee}
.hero .eyebrow{color:#274c86}.hero p{color:#435c7b}
.hero-region{display:flex;align-items:center;gap:9px;letter-spacing:1.4px}
.hero-region .eu-flag{width:27px;height:18px}
.hero-art{background:repeating-linear-gradient(0deg,transparent,transparent 29px,#8ca6cd30 30px),repeating-linear-gradient(90deg,transparent,transparent 29px,#8ca6cd30 30px)}
.compass{border-color:#7693bf;box-shadow:0 0 0 25px #5277b00a,0 0 0 50px #5277b008}
.compass:before,.compass:after{background:#7693bf55}.compass .plane{color:#163b76}.compass .north{color:#163b76}.compass .degree{color:#435c7b}
.footer-identity{display:flex;align-items:center;gap:10px}.footer-identity .eu-flag{width:21px;height:14px}
@media(max-width:1100px) and (min-width:721px){.brand-name{font-size:13px}.brand-name span{font-size:11px}.regional-identity{font-size:8px;gap:6px}}
@media(max-width:720px){.regional-identity{margin-top:12px;font-size:10px}.hero-region{font-size:9px}.footer-identity{max-width:65%;line-height:1.6}}
.europe-banner{margin:22px 48px 0;padding:17px 22px;display:flex;gap:18px;align-items:center;background:#003399;color:#fff;border-radius:9px;border-bottom:3px solid #ffcc00}.europe-banner .eu-flag{width:66px;height:44px}.europe-banner strong{display:block;font-size:17px;letter-spacing:-.3px}.europe-banner span{display:block;font-size:11px;color:#e0e8ff;margin-top:3px}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.admin-tabs button{font-size:11px;padding:9px 12px}.admin-search{display:flex;gap:12px;align-items:flex-end;margin-bottom:18px}.admin-search label{flex:1;margin:0}.admin-search button{margin-bottom:0}.admin-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;margin-top:22px}.admin-id{font-size:10px;overflow-wrap:anywhere;max-width:150px}.admin-action-form{margin-top:25px;padding-top:25px;border-top:1px solid var(--line)}.admin-question-list{max-height:680px;overflow-y:auto;padding-right:6px}.admin-action-form .check{font-size:12px}.cookie-category{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.cookie-details{overflow-wrap:anywhere;font-size:11px;color:var(--muted);margin-top:15px}.cookie-banner{position:fixed;bottom:20px;right:20px;width:540px;max-width:calc(100vw - 40px);padding:22px;background:#fff;border:1px solid #cedbce;border-top:3px solid #003399;border-radius:10px;box-shadow:0 7px 30px #142f3729;z-index:9}.cookie-banner strong{font-size:17px}.cookie-banner p{font-size:12px;color:var(--muted);margin:7px 0 15px}.cookie-banner .row{gap:10px}.cookie-banner-visible .toast{bottom:210px}#cookie-dialog{width:500px}.nav{padding-top:11px;padding-bottom:11px}@media(max-width:1100px){.europe-banner{margin:20px 30px 0}}@media(max-width:720px){.europe-banner{margin:18px 20px 0;padding:15px;gap:12px}.europe-banner .eu-flag{width:51px;height:34px}.europe-banner strong{font-size:14px}.europe-banner span{font-size:9px}.admin-tabs{display:flex;overflow-x:auto;flex-wrap:nowrap}.admin-tabs button{white-space:nowrap}.admin-pagination .secondary{padding:8px}.cookie-banner{bottom:12px;right:12px;max-width:calc(100vw - 24px);padding:18px}.cookie-banner-visible .toast{bottom:240px}.footer-links{gap:8px;justify-content:flex-end}nav[aria-label="Main navigation"] .nav{font-size:9px;padding-left:3px;padding-right:3px}}

/* Reserved placements only: no network scripts, tracking pixels or ad requests. */
.ad-placeholder{position:relative;width:min(100%,850px);min-height:118px;margin:28px auto;padding:12px 18px 18px;background:#f1f4f7;border:1px dashed #aab9cb;border-radius:8px;text-align:center;clear:both}
.ad-placeholder>span{display:block;color:#65768a;font-size:8px;font-weight:600;letter-spacing:2px;text-align:left}
.ad-placeholder-outline{display:grid;place-items:center;min-height:65px;color:#7d8a9b;font-size:12px;letter-spacing:.3px}
@media(max-width:720px){.ad-placeholder{min-height:104px;padding:10px 14px}.ad-placeholder-outline{min-height:55px}}

/* Planned responsive inventory. Space is reserved before any future ad loads. */
.learning-layout,.review-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
.learning-main,.review-main{min-width:0}.learning-rail,.review-rail{display:none}
.ad-placeholder{box-sizing:border-box;max-width:100%;border:1px solid #d6dee8;border-radius:4px;background:#f5f7fa;padding:0;overflow:visible;margin:32px auto}
.ad-placeholder>span{height:22px;line-height:22px;padding:0 10px;background:#eef2f7;border-bottom:1px solid #e0e6ef;letter-spacing:1.7px}
.ad-leaderboard{width:728px;min-height:112px}.ad-leaderboard .ad-placeholder-outline{height:90px;min-height:90px}
.ad-rectangle{width:300px;min-height:272px}.ad-rectangle .ad-placeholder-outline{height:250px;min-height:250px}
.learning-rail .ad-placeholder,.review-rail .ad-placeholder{margin:0 0 28px}
.study-routine{padding:25px 22px;background:#edf2e9;border:1px solid #dce5d7;border-radius:9px}.study-routine .eyebrow{font-size:8px;letter-spacing:1.2px;color:#4a684e}.study-routine h2{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.25;letter-spacing:-.5px}.study-routine ol{list-style:none;counter-reset:study-step;margin:0;padding:0}.study-routine li{counter-increment:study-step;padding:16px 0;border-top:1px solid #d6e0d0;font-size:12px}.study-routine li strong{display:block;color:#294b35;margin-bottom:5px}.study-routine li strong:before{content:'0' counter(study-step) ' / ';font-size:9px;color:#66805f}.study-routine li span{color:#53684e;font-size:11px;line-height:1.6;display:block}.study-routine .text-button{margin-top:5px;font-size:11px}
.next-study{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:52px}.next-study h2{font-size:22px;margin-bottom:7px}.next-study p{margin-bottom:0}.next-study .row{flex-shrink:0}
.review-main{margin-bottom:0}.review-rail{padding-top:0}.review-layout+.ad-placeholder{margin-top:52px;margin-bottom:72px}
@media(min-width:1280px){.learning-layout,.review-layout:has(.review-rail){grid-template-columns:minmax(0,1fr) 300px;gap:28px}.learning-rail,.review-rail{display:block}.learning-main .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-main .hero{grid-template-columns:minmax(0,1fr) 190px}.learning-main .hero-copy{padding:28px}.learning-main .hero h2{font-size:30px}.learning-main .hero-region{font-size:8px;gap:7px}.learning-main .stats{gap:10px}.learning-main .stat{padding:17px 15px}.learning-main .stat-label{font-size:9px}.learning-main .stat small{font-size:9px}.learning-main .compass{width:145px;height:145px}.learning-main .compass:before{width:180px}.learning-main .compass:after{height:180px}.learning-main .compass .plane{font-size:65px}}
@media(min-width:1650px){.ad-leaderboard[data-ad-placement="dashboard-banner"]{width:970px}.learning-main .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.next-study{align-items:flex-start;flex-direction:column}.next-study .row{flex-shrink:1}}
@media(max-width:767px){.ad-leaderboard{width:100%;min-height:122px;margin-top:26px;margin-bottom:34px}.ad-leaderboard .ad-placeholder-outline{height:100px;min-height:100px}.next-study{margin-top:40px}.review-layout+.ad-placeholder{margin-top:44px;margin-bottom:56px}}

.ad-placeholder[data-ad-placement="question-banner"]{margin-top:24px;margin-bottom:64px}

[hidden]{display:none!important}
.launch-notice{padding:20px 24px;margin:0 0 24px;border:1px solid #cad5e4;border-radius:16px;background:#f0f5fc;color:#193958}.launch-notice p{margin:6px 0 0}

.question-figure{margin:24px 0;padding:16px;background:#fff;border:1px solid var(--line,#ddd);border-radius:12px}.question-figure img{display:block;max-width:100%;height:auto;max-height:850px;object-fit:contain;margin:auto}.question-figure figcaption{margin-top:12px;font-size:.8rem;color:#576474}

/* Separate answer checking from question navigation, including wrapped mobile rows. */
#check-public-answer{margin-top:16px}
#public-feedback:not(:empty){margin-top:24px}
.question-navigation{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);gap:16px 20px;align-items:center;flex-wrap:wrap}
.question-navigation a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;text-decoration:none}
.question-navigation .text-button{padding:12px 8px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:540px){.question-navigation{gap:16px}.question-navigation .primary,.question-navigation .secondary{flex:1 1 130px}.question-navigation .text-button{flex-basis:100%}}

.sign-in-recommendation{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:20px 24px;margin:0 0 24px;border:1px solid var(--line);border-radius:14px;background:#edf4ee}.sign-in-recommendation p{margin:4px 0 0}.sign-in-recommendation button{flex-shrink:0}@media(max-width:650px){.sign-in-recommendation{align-items:flex-start;flex-direction:column;gap:16px}}
