*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.55}
button,input{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.58}
a{color:inherit}
.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}
.rail{background:var(--navy-deep);color:#f3fbf8;display:flex;flex-direction:column;min-height:100vh;padding:30px 24px 24px;position:sticky;top:0;height:100vh;overflow:hidden}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;width:max-content}
.brand-mark{width:38px;height:38px;border:1px solid rgba(217,244,235,.5);border-radius:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:7px;transform:rotate(-7deg);background:linear-gradient(145deg,rgba(25,169,154,.26),rgba(212,243,106,.09))}
.brand-mark span{background:var(--teal-bright);border-radius:3px}.brand-mark span:nth-child(2){background:var(--lime);grid-row:span 2}.brand-mark span:nth-child(3){background:#f0b95b}
.brand-words{display:flex;flex-direction:column;letter-spacing:.1em;font-size:11px;line-height:1.25}.brand-words strong{font-size:11px}.brand-words small{font-size:10px;color:#9bcfc5;letter-spacing:.24em;margin-top:4px}
.rail-caption{font-size:10px;letter-spacing:.19em;color:#83a3b1;margin-top:57px;font-weight:800}
.rail-bottom{margin-top:auto;display:flex;gap:9px;align-items:center;color:#adc2c8;font-size:12px;padding-bottom:20px}.status-dot{width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px rgba(212,243,106,.12)}
.parak{border-top:1px solid rgba(255,255,255,.12);padding-top:17px;color:#76909e;font-size:10px;letter-spacing:.05em}
.main-shell{min-width:0;display:flex;flex-direction:column;max-width:1600px;width:100%;margin:0 auto;padding:0 clamp(20px,4.2vw,70px)}
.topbar{min-height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.topbar-brand{display:none;align-items:center;gap:9px;font-size:10px;letter-spacing:.14em;font-weight:850}.brand-mark.compact{width:28px;height:28px;border-radius:9px;padding:5px;gap:3px}
.session-actions{display:flex;justify-content:flex-end;flex:1}.mock-badge{font-size:10px;letter-spacing:.13em;font-weight:850;color:var(--teal);background:#e2f4ee;border:1px solid #bfdfd2;border-radius:999px;padding:7px 11px}
.user-chip{display:flex;align-items:center;gap:10px;color:var(--ink-soft);font-size:13px}.user-avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#d9eee8;color:#145d57;font-size:11px;font-weight:800}.text-button{border:0;background:transparent;color:var(--teal);font-size:12px;font-weight:750;text-decoration:underline;text-underline-offset:3px;margin-left:5px;padding:8px 4px;min-height:44px}
.app-content{flex:1;width:100%;max-width:var(--content-width);margin:0 auto;padding:26px 0 52px}.page-intro{display:flex;justify-content:space-between;align-items:center;min-height:24px;margin-bottom:15px}.eyebrow{font-size:10px;line-height:1.3;letter-spacing:.17em;font-weight:850;color:var(--teal);text-transform:uppercase}.eyebrow-light{color:#a8e5d6}.version-tag{color:#60798a;font-size:10px;font-weight:800;letter-spacing:.12em}
.layout-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:23px;align-items:start}.layout-grid.with-journey{grid-template-columns:minmax(0,1fr) 260px}.content-column{min-width:0}
.hero-card{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:#f6fbfa;border-radius:var(--radius-lg);padding:clamp(27px,4vw,48px);min-height:315px;box-shadow:var(--shadow)}.hero-card:before{content:"";position:absolute;z-index:-1;right:-135px;top:-250px;width:570px;height:570px;border-radius:50%;border:1px solid rgba(114,211,192,.14);box-shadow:0 0 0 36px rgba(114,211,192,.035),0 0 0 82px rgba(114,211,192,.025)}.hero-card:after{content:"";position:absolute;z-index:-1;inset:auto 0 0 0;height:90px;background:linear-gradient(0deg,rgba(6,23,34,.3),transparent)}
.hero-copy{position:relative;z-index:1;max-width:600px}.hero-copy h1{font-size:clamp(31px,4.4vw,48px);line-height:1.08;letter-spacing:-.045em;margin:17px 0 14px;max-width:560px}.hero-copy>p{font-size:15px;color:#c5d7dd;max-width:495px;line-height:1.65;margin:0}.hero-proof{display:flex;gap:13px;align-items:center;margin-top:30px;color:#d5e7e7;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.hero-proof b{color:var(--lime);margin-right:5px}.proof-line{width:25px;height:1px;background:rgba(255,255,255,.25)}
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin-top:28px}.micro-note{display:flex;gap:7px;align-items:center;color:#b8cbd0;font-size:11px}.micro-shield{color:var(--lime);font-weight:900}
.hero-symbol{position:absolute;width:205px;height:205px;border-radius:50%;right:45px;top:50%;transform:translateY(-50%);display:grid;place-items:center;opacity:.9}.orbit{position:absolute;border-radius:50%;border:1px solid rgba(143,227,209,.29)}.orbit-one{inset:0}.orbit-two{inset:24px;border-style:dashed;transform:rotate(35deg)}.core{display:grid;place-items:center;width:91px;height:91px;border-radius:30px;transform:rotate(45deg);background:linear-gradient(140deg,#16877b,#0e544f);border:1px solid rgba(212,243,106,.65);box-shadow:0 0 50px rgba(25,169,154,.3);color:var(--lime);font-weight:900;font-size:20px;letter-spacing:.05em}.core::first-letter{transform:rotate(-45deg)}.hero-symbol .core{transform:none}.spark{position:absolute;width:10px;height:10px;background:var(--lime);border-radius:3px;box-shadow:0 0 18px rgba(212,243,106,.55)}.spark-one{top:20px;right:46px}.spark-two{bottom:13px;left:46px;background:var(--amber)}
.home-hero{min-height:325px}.home-hero .hero-copy{max-width:575px}.home-hero .hero-copy h1{max-width:500px}.home-symbol{right:24px;width:195px;height:195px}.home-lower{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-top:17px}.surface-card,.quote-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:22px 24px;box-shadow:0 7px 22px rgba(16,43,63,.035)}.next-card h2{font-size:19px;margin:9px 0 7px;letter-spacing:-.02em}.next-card p{color:var(--muted);font-size:13px;margin:0 0 12px}.inline-link{border:0;background:none;color:var(--teal);font-weight:800;padding:8px 0;font-size:12px}.inline-link span{margin-left:5px}.quote-card{background:#e7f3ee;position:relative;display:flex;flex-direction:column;justify-content:center;min-height:150px}.quote-mark{font-family:Georgia,serif;font-size:42px;line-height:.8;color:var(--teal);opacity:.65}.quote-card p{font-size:15px;font-weight:750;line-height:1.45;margin:8px 0;color:#1c4954}.quote-line{height:2px;width:35px;background:var(--coral);margin:6px 0 8px}.quote-card small{font-size:9px;letter-spacing:.14em;color:#5a7376;font-weight:800}
.journey-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);padding:19px 17px 17px;box-shadow:0 7px 22px rgba(16,43,63,.035)}.panel-heading{display:flex;justify-content:space-between;align-items:center}.panel-heading h2{margin:5px 0 0;font-size:16px;letter-spacing:-.025em}.progress-fraction{font-size:24px;color:var(--teal);font-weight:850;letter-spacing:-.06em}.progress-fraction small{font-size:11px;color:#7b919b;letter-spacing:0}.journey-list{list-style:none;padding:12px 0 0;margin:0;position:relative}.journey-list:before{content:"";position:absolute;left:14px;top:26px;bottom:22px;width:1px;background:#dfe9e8}.journey-step{display:flex;gap:11px;position:relative;align-items:center;min-height:49px;color:#657985}.step-number{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#f1f5f5;border:1px solid #dce6e5;font-size:9px;font-weight:850;flex:none;z-index:1}.step-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.step-copy strong{font-size:10px;line-height:1.25;font-weight:750}.step-copy small{font-size:8px;line-height:1.2;color:#748995;letter-spacing:.08em;font-weight:750}.journey-step.is-done .step-number{background:#dff5e8;border-color:#9dcfb9;color:#145d57}.journey-step.is-current .step-number{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:0 0 0 4px #d9f1eb}.journey-step.is-current .step-copy strong{color:var(--teal)}.panel-note{display:flex;gap:8px;border-top:1px solid #edf1f1;margin-top:8px;padding-top:13px;font-size:9px;color:#6b808b;line-height:1.45}.note-mark{width:16px;height:16px;display:grid;place-items:center;flex:none;border-radius:50%;background:#e8f3ee;color:var(--teal);font-weight:900;font-size:10px}
.button{border:0;min-height:48px;border-radius:13px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:17px;font-size:13px;font-weight:800;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.button span{font-size:18px;line-height:1;font-weight:500}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--lime);color:#163544;box-shadow:0 8px 20px rgba(179,224,90,.15)}.button-primary:hover:not(:disabled){background:#e0ff83;box-shadow:0 9px 24px rgba(179,224,90,.23)}.button-secondary{background:#e4f1ec;color:#125b55;border:1px solid #c3ded3}.button-quiet{background:#f1f5f5;color:#536c79}.button-full{width:100%;margin-top:5px}.button:focus-visible,.text-button:focus-visible,.inline-link:focus-visible,.icon-button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.page-footer{min-height:53px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;color:#718691;font-size:9px;letter-spacing:.04em}
.login-hero{min-height:244px;padding:30px 34px}.login-hero .hero-copy h1{font-size:clamp(28px,3.4vw,38px);max-width:470px;margin:12px 0 10px}.login-hero .hero-copy>p{max-width:450px;font-size:13px}.login-hero .hero-symbol{width:144px;height:144px;right:31px}.login-hero .hero-symbol .core{width:70px;height:70px;font-size:16px;border-radius:23px}.login-hero .orbit-two{inset:18px}.login-card{margin-top:17px;max-width:640px;padding:25px 28px}.card-heading h2{font-size:20px;margin:6px 0 1px;letter-spacing:-.03em}.card-heading p{color:var(--muted);font-size:12px;margin:3px 0 0}.stack-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin-top:20px}.stack-form label{font-size:11px;color:#3e5968;font-weight:750;display:flex;flex-direction:column;gap:6px}.stack-form label:first-child{grid-column:1/-1}.stack-form input{width:100%;min-height:46px;border:1px solid #cfdddf;border-radius:10px;background:#fbfdfd;padding:0 12px;color:var(--ink);font-size:13px}.stack-form input::placeholder{color:#8498a2}.stack-form input:focus{border-color:var(--teal);outline:3px solid rgba(25,169,154,.17)}.stack-form button{grid-column:1/-1;margin-top:3px}.mock-details{margin-top:15px;color:#526d78;border-top:1px solid #e7eded;padding-top:12px;font-size:11px}.mock-details summary{cursor:pointer;font-weight:750;color:#38676b}.mock-details p{margin:9px 0 3px}.mock-details small{color:#6b818b}
.intro-card{padding:30px 33px;position:relative}.intro-card h1,.assessment-heading h1,.module-shell h1,.completion-card h1,.feedback-card h1,.challenge-card h1,.empty-card h1{font-size:clamp(29px,4vw,40px);line-height:1.12;letter-spacing:-.045em;margin:11px 0}.intro-card .lead{font-size:15px;color:#516c7b;max-width:540px;margin:0 0 23px}.intro-icon{position:absolute;right:29px;top:26px;border-radius:15px;background:#e2f2ed;color:var(--teal);font-size:24px;font-weight:900;letter-spacing:-.05em;padding:13px 15px}.info-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #edf1f1}.info-icon{width:38px;height:38px;border-radius:12px;background:#edf5f1;color:var(--teal);display:grid;place-items:center;font-weight:850}.timer-icon{font-size:21px}.info-row div{display:flex;flex-direction:column}.info-row strong{font-size:12px}.info-row small{font-size:11px;color:#748994}.privacy-note{display:flex;gap:10px;align-items:flex-start;background:#f0f6f2;border-radius:12px;padding:12px 14px;margin-top:17px;color:#315c5b}.privacy-note>span{font-size:11px;color:var(--teal);margin-top:3px}.privacy-note p{margin:0;font-size:11px;line-height:1.5}.card-actions{display:flex;gap:10px;align-items:center;margin-top:21px;flex-wrap:wrap}
.assessment-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:21px 24px;background:#e8f2ee;border-radius:var(--radius-md);margin-bottom:14px}.assessment-heading h1{font-size:28px;margin:7px 0}.assessment-heading p{color:#58717c;margin:0;font-size:13px}.question-count{display:flex;align-items:baseline;gap:4px;white-space:nowrap;color:#69808b;font-size:10px}.question-count strong{font-size:26px;color:var(--teal);letter-spacing:-.05em}.question-list{display:flex;flex-direction:column;gap:12px}.question-card{margin:0;min-width:0;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;padding:18px 19px;box-shadow:0 5px 17px rgba(16,43,63,.025)}.question-card legend{padding:0;width:100%;display:flex;align-items:flex-start;gap:11px;font-size:14px;line-height:1.55;font-weight:750;color:#17384d}.question-number{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#e8f2ee;color:var(--teal);font-size:10px;flex:none}.answer-options{display:grid;gap:7px;margin:13px 0 0 39px}.answer-option,.practice-option{position:relative;display:flex;align-items:center;gap:10px;min-height:50px;border:1px solid #dce6e7;border-radius:11px;background:#fff;padding:9px 13px;cursor:pointer;transition:border .15s ease,background .15s ease;user-select:none}.answer-option:hover,.practice-option:hover{border-color:#88bcb0;background:#f8fcfa}.answer-option.selected,.practice-option.selected{border-color:#23877d;background:#eff8f4;box-shadow:inset 0 0 0 1px #23877d}.answer-option input,.practice-option input{position:absolute;opacity:0;width:1px;height:1px}.option-letter{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#f0f4f4;color:#526b77;font-size:10px;font-weight:850;flex:none}.selected .option-letter{background:var(--teal);color:#fff}.option-text{font-size:12px;color:#344f60;line-height:1.45;flex:1}.radio-mark{width:17px;height:17px;border:1.5px solid #a5b8bd;border-radius:50%;flex:none;display:grid;place-items:center}.selected .radio-mark{border-color:var(--teal)}.selected .radio-mark:after{content:"";width:8px;height:8px;background:var(--teal);border-radius:50%}.answer-option:focus-within,.practice-option:focus-within{outline:3px solid var(--focus);outline-offset:2px}.submit-bar{position:sticky;bottom:10px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:14px;padding:11px 13px 11px 17px;display:flex;align-items:center;justify-content:space-between;gap:13px;margin-top:12px;box-shadow:0 9px 28px rgba(16,43,63,.1);backdrop-filter:blur(9px)}.submit-bar p{font-size:11px;color:#586f7b;margin:0}
.completion-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:34px;box-shadow:var(--shadow)}.completion-card:before{content:"";position:absolute;right:-85px;top:-100px;width:250px;height:250px;border-radius:50%;border:1px solid rgba(14,118,110,.13);box-shadow:0 0 0 27px rgba(14,118,110,.035),0 0 0 56px rgba(14,118,110,.025)}.completion-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:20px;background:#ddf4e8;color:#0f6b60;font-size:26px;font-weight:900;margin-bottom:22px}.completion-card h1{max-width:590px;font-size:37px}.completion-card>p{max-width:555px;font-size:14px;color:#5c7380;line-height:1.65}.completion-card .privacy-note{max-width:520px;margin:22px 0}.challenge-card{position:relative;overflow:hidden;border-radius:var(--radius-lg);background:linear-gradient(135deg,#113d52,#105b61 58%,#15716a);color:#f6fbf9;padding:clamp(27px,4vw,42px);box-shadow:var(--shadow)}.challenge-card:after{content:"";position:absolute;width:310px;height:310px;right:-112px;top:100px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 29px rgba(255,255,255,.04),0 0 0 65px rgba(255,255,255,.025)}.challenge-top{display:flex;justify-content:space-between;gap:10px;align-items:center;position:relative;z-index:1}.challenge-badge{border:1px solid rgba(218,244,235,.35);background:rgba(9,31,47,.15);border-radius:999px;color:#d5f4e9;padding:7px 10px;font-size:9px;font-weight:800;letter-spacing:.08em}.challenge-card h1{position:relative;z-index:1;color:#fff;max-width:550px;margin-top:30px}.challenge-card>p{position:relative;z-index:1;max-width:550px;color:#d2e4e3;font-size:14px}.challenge-rules{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:28px 0 17px}.challenge-rules>div{display:flex;align-items:center;gap:9px;padding:12px 9px;border-top:1px solid rgba(220,246,236,.32);font-size:10px;color:#effaf6}.rule-icon{color:var(--lime);font-size:10px;font-weight:850}.challenge-card .challenge-footnote{font-size:10px;color:#b9d8d5}.challenge-card .button{position:relative;z-index:1;margin-top:4px}
.module-shell{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(22px,3vw,32px);box-shadow:var(--shadow)}.module-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.module-header .eyebrow{font-size:9px}.module-state{font-size:9px;font-weight:850;color:#176c60;letter-spacing:.1em;background:#e2f3ec;border-radius:999px;padding:7px 10px}.module-shell h1{font-size:34px;margin:14px 0 5px}.module-objective{font-size:13px;color:#617883;margin:0 0 19px}.principle-card{display:grid;grid-template-columns:1fr;gap:6px;border-radius:15px;padding:17px 19px;background:#eaf5ee;border-left:4px solid var(--teal)}.principle-card strong{font-size:21px;line-height:1.3;letter-spacing:-.02em;color:#15564f}.principle-card>span:last-child{font-size:11px;color:#58756f;letter-spacing:.03em}.lesson-grid{display:grid;grid-template-columns:155px minmax(0,1fr);gap:16px;margin:22px 0}.lesson-heading h2{font-size:15px;margin:5px 0}.lesson-grid ul{margin:0;padding-left:18px;color:#4d6673;font-size:12px}.lesson-grid li{padding:0 0 6px 3px}.lesson-grid li::marker{color:var(--teal)}.scenario-card{border-radius:16px;background:#102b3f;color:#fff;padding:18px 20px}.scenario-label{display:flex;align-items:center;gap:8px}.scenario-label .eyebrow{color:#a8e5d6}.scenario-icon{width:24px;height:24px;border:1px solid rgba(212,243,106,.65);color:var(--lime);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:850}.scenario-card p{font-size:14px;line-height:1.65;color:#e4eff0;margin:12px 0 9px}.scenario-card>strong{font-size:12px;color:#c3dbd9}.practice-options{margin:20px 0 0;padding:0;border:0}.practice-options legend{font-size:13px;font-weight:800;margin-bottom:10px}.practice-option{min-height:55px;margin-bottom:8px}.practice-option .option-letter{border-radius:50%;width:27px;height:27px}.practice-submit{position:static;margin-top:13px}
.feedback-card{padding:33px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}.feedback-card:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(16,43,63,.08);border-radius:50%;right:-96px;top:-100px;box-shadow:0 0 0 30px rgba(16,43,63,.025)}.feedback-symbol{width:55px;height:55px;border-radius:18px;display:grid;place-items:center;font-size:26px;font-weight:900;margin-bottom:19px}.feedback-strong .feedback-symbol{background:#dff5e8;color:#126451}.feedback-steady .feedback-symbol{background:#e4f2fb;color:#225e83}.feedback-caution .feedback-symbol{background:#fff0cf;color:#805316}.feedback-risk .feedback-symbol{background:#fbe7e2;color:#903b31}.feedback-card h1{font-size:35px;max-width:520px}.feedback-card>p{max-width:540px;color:#566e79;font-size:14px;line-height:1.7}.feedback-principle{display:flex;flex-direction:column;gap:5px;border-top:1px solid var(--line);padding-top:16px;margin-top:21px;color:#3f5a65;font-size:12px}.feedback-card .button{margin-top:23px;position:relative;z-index:1}.intervention-completion .quiet-copy{font-size:11px;margin:7px 0 0}.schedule-card{display:flex;gap:12px;align-items:center;background:#edf5f1;padding:14px 16px;border-radius:13px;max-width:450px;margin:20px 0 12px}.schedule-icon{width:37px;height:37px;border-radius:11px;background:#d5eae0;display:grid;place-items:center;color:#155f55;font-size:21px}.schedule-card div{display:flex;flex-direction:column}.schedule-card strong{font-size:12px}.schedule-card small{font-size:11px;color:#607a83;margin-top:2px}.final-completion{background:linear-gradient(135deg,#fff,#eff7f3)}.final-icon{background:#f4efd5;color:#836a23}.thank-you-card{display:flex;flex-direction:column;gap:9px;max-width:510px;padding:17px 19px;border-radius:15px;background:#e8f3ee;margin:22px 0;color:#244b51}.thank-you-card .quote-mark{line-height:.4}.thank-you-card strong{font-size:13px}.thank-you-card small{font-size:9px;letter-spacing:.12em;color:#527174;font-weight:850}
.alert{display:flex;gap:12px;align-items:flex-start;border:1px solid;border-radius:13px;padding:12px 13px;margin-bottom:13px}.alert-error{background:#fff5f2;border-color:#eac9c0;color:#80392e}.alert-icon{width:22px;height:22px;border-radius:50%;background:#f1d9d2;display:grid;place-items:center;font-weight:900;flex:none}.alert div{flex:1}.alert strong{font-size:12px}.alert p{font-size:11px;margin:2px 0 0;line-height:1.45}.icon-button{border:0;background:transparent;color:inherit;font-size:20px;line-height:1;padding:2px 5px}.loading-card{min-height:260px;display:flex;gap:13px;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);color:#617983}.loading-card p{font-size:13px}.spinner{width:22px;height:22px;border:2px solid #d3e9e2;border-top-color:var(--teal);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1120px){.app-shell{grid-template-columns:205px minmax(0,1fr)}.rail{padding-left:20px;padding-right:19px}.layout-grid.with-journey{grid-template-columns:minmax(0,1fr) 230px}.journey-panel{padding:16px 13px}.journey-step{min-height:46px}.step-copy strong{font-size:9px}}
@media(max-width:860px){.app-shell{grid-template-columns:1fr}.rail{display:none}.topbar{min-height:65px}.topbar-brand{display:flex}.main-shell{padding:0 24px}.layout-grid.with-journey{grid-template-columns:minmax(0,1fr)}.journey-panel{order:2}.journey-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 7px}.journey-list:before{display:none}.panel-note{margin-top:4px}.hero-symbol{right:7px;opacity:.45}.home-symbol{right:0}.hero-copy{max-width:620px}.page-footer{font-size:8px}}
@media(max-width:600px){body{font-size:15px}.main-shell{padding:0 15px}.topbar{min-height:59px}.topbar-brand{font-size:9px;letter-spacing:.1em}.user-chip{font-size:0;gap:7px}.user-avatar{font-size:10px}.text-button{font-size:11px;margin-left:3px}.app-content{padding:18px 0 28px}.page-intro{margin-bottom:11px}.eyebrow{font-size:9px}.version-tag{font-size:8px}.layout-grid{gap:13px}.hero-card{border-radius:21px;padding:23px 21px;min-height:310px}.hero-card:before{right:-230px;top:-200px}.hero-copy h1{font-size:34px;max-width:460px}.hero-copy>p{font-size:13px;max-width:400px}.hero-proof{font-size:8px;gap:7px;margin-top:23px}.proof-line{width:13px}.hero-symbol{width:145px;height:145px;right:-55px;top:auto;bottom:-56px;transform:none;opacity:.3}.home-hero{min-height:320px}.home-hero .hero-copy h1{font-size:34px;max-width:380px}.home-actions{gap:10px}.home-lower{grid-template-columns:1fr;gap:10px;margin-top:11px}.surface-card,.quote-card{padding:18px}.quote-card{min-height:125px}.journey-panel{padding:14px}.panel-heading h2{font-size:14px}.journey-list{grid-template-columns:1fr 1fr}.journey-step{gap:7px;min-height:42px}.step-number{width:25px;height:25px;font-size:8px}.step-copy strong{font-size:8px}.step-copy small{font-size:7px}.panel-note{font-size:8px}.login-hero{min-height:235px;padding:22px 20px}.login-hero .hero-copy h1{font-size:29px;max-width:365px}.login-hero .hero-copy>p{font-size:12px;max-width:350px}.login-hero .hero-symbol{right:-37px;opacity:.26}.login-card{padding:20px;margin-top:11px}.card-heading h2{font-size:18px}.stack-form{grid-template-columns:1fr;gap:10px;margin-top:16px}.stack-form label:first-child,.stack-form button{grid-column:auto}.stack-form input{min-height:48px}.mock-details{font-size:10px}.intro-card{padding:23px 19px}.intro-card h1,.completion-card h1,.feedback-card h1,.challenge-card h1{font-size:30px}.intro-icon{right:16px;top:17px;padding:9px 11px;font-size:19px}.intro-card .lead{font-size:13px;max-width:calc(100% - 30px)}.info-row{padding:11px 0}.privacy-note{padding:10px 11px}.card-actions{align-items:stretch;flex-direction:column}.card-actions .button{width:100%}.assessment-heading{padding:17px 15px;border-radius:15px}.assessment-heading h1{font-size:24px}.assessment-heading p{font-size:11px}.question-count strong{font-size:22px}.question-card{padding:15px 12px;border-radius:14px}.question-card legend{gap:8px;font-size:12px}.question-number{width:25px;height:25px}.answer-options{margin-left:0;gap:6px}.answer-option{min-height:55px;padding:9px 10px;gap:8px}.option-text{font-size:11px}.option-letter{width:23px;height:23px}.submit-bar{align-items:stretch;flex-direction:column;padding:12px;position:static}.submit-bar p{font-size:10px}.submit-bar .button{width:100%}.completion-card,.feedback-card{padding:24px 19px}.completion-icon{width:52px;height:52px}.completion-card h1{font-size:30px}.completion-card>p,.feedback-card>p{font-size:13px}.challenge-card{padding:23px 19px;border-radius:21px}.challenge-top{align-items:flex-start;flex-direction:column}.challenge-badge{font-size:8px}.challenge-card h1{margin-top:23px}.challenge-card>p{font-size:12px}.challenge-rules{grid-template-columns:1fr;gap:0;margin:19px 0}.challenge-rules>div{padding:9px 2px}.challenge-card .button{width:100%}.module-shell{padding:19px 14px;border-radius:19px}.module-header .eyebrow{font-size:8px;letter-spacing:.12em}.module-state{font-size:8px;padding:6px 8px}.module-shell h1{font-size:28px}.module-objective{font-size:12px}.principle-card{padding:14px}.principle-card strong{font-size:18px}.lesson-grid{grid-template-columns:1fr;gap:8px;margin:18px 0}.lesson-grid ul{font-size:11px}.scenario-card{padding:15px}.scenario-card p{font-size:12px}.practice-options legend{font-size:12px}.practice-option{padding:9px;gap:8px;min-height:60px}.practice-option .option-text{font-size:14px}.practice-submit{padding:11px}.practice-submit .button{width:100%}.feedback-principle{font-size:11px}.schedule-card{padding:11px}.page-footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:1px;min-height:54px}.journey-list{gap:0 4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Keep participant prompts comfortable to read at normal viewing distance. */
.question-card legend{font-size:16px}
.option-text{font-size:14px;line-height:1.5}
.submit-bar p{font-size:12px}
@media(max-width:600px){
  .question-card legend{font-size:15px}
  .option-text,.practice-option .option-text{font-size:14px}
  .assessment-heading p,.module-objective,.scenario-card p,.lesson-grid ul{font-size:13px}
  .practice-options legend{font-size:14px}
  .step-copy strong{font-size:9px}
  .step-copy small,.panel-note{font-size:8px}
}

/* Commercial learning screens: presentation only, shared by future learning modules. */
.commercial-learning-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(22px,4vw,38px);box-shadow:var(--shadow);max-width:900px;margin-inline:auto}
.commercial-learning-card>h1{font-size:clamp(28px,4vw,40px);line-height:1.15;letter-spacing:-.035em;margin:18px 0 10px;color:var(--ink)}
.learning-progress{height:7px;background:#e7efed;border-radius:999px;overflow:hidden;margin:21px 0 6px}.learning-progress span{display:block;height:100%;background:var(--teal);border-radius:inherit;transition:width .2s ease}
.learning-step-count{font-size:12px;color:#617883;margin:0}.learning-body{font-size:16px;line-height:1.7;color:#425d6b;max-width:720px;margin:14px 0 24px}
.learning-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:22px 0}.learning-card{border:1px solid #e2eae8;border-radius:13px;padding:15px;background:#f8fbfa}.learning-card h3{font-size:15px;margin:0 0 7px;color:#15564f}.learning-card p{font-size:14px;line-height:1.55;color:#526b77;margin:0}
.learning-takeaway,.completion-principle{padding:16px 18px;border-radius:12px;background:#eaf5ee;border-left:4px solid var(--teal);font-size:clamp(18px,2vw,23px);line-height:1.35;font-weight:850;color:#15564f;margin:20px 0}
.learning-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.learning-actions .button{min-height:48px}.instructional-choices{padding:0;border:0;margin:20px 0}.instructional-choices legend{font-size:17px;line-height:1.45;font-weight:800;margin-bottom:12px}.instructional-choice{display:flex;align-items:flex-start;gap:12px;border:1px solid #d9e5e3;border-radius:12px;padding:14px;margin:9px 0;min-height:50px;cursor:pointer;color:#294554}.instructional-choice:focus-within{outline:3px solid #0e766e;outline-offset:2px}.instructional-choice input{width:19px;height:19px;margin:2px 0 0;accent-color:#0e766e;flex:none}.instructional-choice span{font-size:15px;line-height:1.5}.instructional-reveal,.scenario-feedback{margin:17px 0;padding:15px 17px;border-radius:12px;background:#f0f6f2;color:#315c5b}.instructional-reveal strong{font-size:14px}.instructional-reveal p,.scenario-feedback p{font-size:15px;line-height:1.6;margin:6px 0 0}
.decision-list{list-style:none;padding:0;margin:20px 0;display:grid;gap:9px}.decision-list li{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid #e2eae8;border-radius:11px}.decision-list li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eaf5ee;color:#15564f;font-weight:850;flex:none}.decision-list strong{font-size:15px;line-height:1.4}
.learning-video{margin:20px 0}.learning-video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#102b3f;border-radius:14px;overflow:hidden}.learning-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.learning-video-placeholder{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;padding:24px;background:#102b3f;color:#fff;border-radius:14px}.learning-video-placeholder p{font-size:14px;line-height:1.55;color:#e4eff0;margin:0;max-width:520px}.video-placeholder-icon{width:42px;height:42px;border:1px solid #a8e5d6;color:#d4f36a;border-radius:50%;display:grid;place-items:center}.video-caption-note{font-size:12px;color:#526b77;margin:9px 0}.video-transcript{border:1px solid #d9e5e3;border-radius:11px;padding:12px 15px}.video-transcript summary{font-weight:800;color:#15564f;cursor:pointer;min-height:28px}.video-transcript p{font-size:14px;line-height:1.65;color:#425d6b;margin:12px 0 2px}.scenario-counter{font-size:11px;font-weight:800;color:#176c60;letter-spacing:.04em}.phish-completion .scenario-feedback{margin:20px 0}.phish-completion .completion-principle{margin-top:22px}
.module-shell .scenario-counter{white-space:nowrap}.module-shell h1{max-width:760px}
@media(max-width:600px){.commercial-learning-card{padding:20px 15px;border-radius:18px}.commercial-learning-card>h1{font-size:29px}.learning-body{font-size:15px}.learning-card-grid{grid-template-columns:1fr}.learning-actions{flex-direction:column}.learning-actions .button{width:100%}.instructional-choices legend{font-size:16px}.instructional-choice{padding:12px;min-height:54px}.instructional-choice span{font-size:14px}.learning-video-placeholder{min-height:160px;padding:18px}.decision-list strong{font-size:14px}.scenario-counter{font-size:9px}}
@media(prefers-reduced-motion:reduce){.learning-progress span{transition:none}}
.learning-video-placeholder{position:relative}.learning-video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32}.learning-video-placeholder>*:not(.learning-video-poster){position:relative;z-index:1}
