:root{
  --bg:#fafaf8;--bg-soft:#f2f2f0;--surface:#fff;--ink:#16140f;--ink-2:#3d362f;--ink-3:#6b6259;--ink-4:#948c84;
  --rule:#d8cfb9;--rule-soft:#e6dfca;--accent:#471954;--accent-deep:#32113d;--accent-tint:#f7eff9;
  --green:#15803d;--green-bg:#dcfce7;--amber:#b45309;--amber-bg:#fef3c7;--red:#991b1b;--red-bg:#fee2e2;
  --font-display:'IBM Plex Serif',Georgia,serif;--font-body:'IBM Plex Sans',system-ui,sans-serif;--font-mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font-body);background:var(--bg);color:var(--ink-2);font-size:15px;line-height:1.5;visibility:hidden}
body.ready{visibility:visible}
button,input{font:inherit}
button{cursor:pointer}
.container{max-width:1280px;margin:0 auto;padding:0 32px}
.page-head{padding:52px 0 28px;border-bottom:3px solid var(--ink)}
.kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.page-head h1{font-family:var(--font-display);font-weight:400;font-size:clamp(34px,4vw,54px);line-height:1.04;color:var(--ink)}
.page-head p{max-width:760px;margin-top:12px;color:var(--ink-3);font-size:16px}
.readiness{padding:22px 0 8px}
.readiness-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px}
.readiness-card{background:var(--surface);border:1px solid var(--rule);border-radius:6px;padding:18px}
.readiness-card span{display:block;font-family:var(--font-display);font-size:34px;line-height:1;color:var(--ink)}
.readiness-card label{display:block;margin-top:7px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.readiness-card.accent{border-color:var(--accent);background:var(--accent-tint)}
.readiness-card.accent span{color:var(--accent-deep);font-family:var(--font-mono);font-size:20px;font-weight:600;text-transform:uppercase}
.training-section,.scenario-section,.lead-section{padding:20px 0}
.lead-section{padding-bottom:70px}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.section-head h2,.lead-panel h2{font-family:var(--font-display);font-size:28px;font-weight:400;color:var(--ink)}
.section-head p,.lead-panel p{color:var(--ink-3);max-width:760px;margin-top:4px}
.primary-btn,.secondary-btn{border-radius:5px;padding:10px 14px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.primary-btn{border:1px solid var(--accent);background:var(--accent);color:#fff}
.primary-btn:hover{background:var(--accent-deep);border-color:var(--accent-deep)}
.secondary-btn{border:1px solid var(--rule);background:#fff;color:var(--ink-2)}
.secondary-btn:hover{border-color:var(--ink);background:var(--ink);color:#fff}
.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.module-card,.scenario-card,.lead-panel{background:var(--surface);border:1px solid var(--rule);border-radius:6px;overflow:hidden}
.module-card.complete{border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}
.module-toggle{width:100%;border:0;background:var(--surface);display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;text-align:left;color:var(--ink)}
.module-toggle:hover{background:var(--bg-soft)}
.module-toggle span{font-weight:600}
.module-toggle strong{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}
.module-card.complete .module-toggle strong{color:var(--green)}
.module-body{display:none;padding:0 18px 18px;border-top:1px solid var(--rule-soft)}
.module-card.open .module-body{display:block}
.module-body p{color:var(--ink-3);font-size:13px;margin:12px 0}
.module-body label{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--rule-soft);background:var(--bg);border-radius:5px;padding:10px 11px;margin-top:8px}
.module-body input{width:16px;height:16px;accent-color:var(--accent);margin-top:2px;flex:0 0 auto}
.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.scenario-card{padding:16px}
.scenario-card h3{font-size:17px;line-height:1.25;color:var(--ink);margin-bottom:12px}
.scenario-card button{width:100%;border:1px solid var(--rule-soft);background:#fff;border-radius:5px;text-align:left;padding:10px 11px;margin-top:8px;color:var(--ink-2)}
.scenario-card button:hover{border-color:var(--accent);background:var(--accent-tint)}
.scenario-card button.correct{border-color:var(--green);background:var(--green-bg);color:var(--green)}
.scenario-card button.incorrect{border-color:var(--red);background:var(--red-bg);color:var(--red)}
.scenario-result{min-height:21px;margin-top:10px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}
.lead-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}
.lead-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
#ready-note{font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--ink);color:#fff;border-radius:5px;padding:11px 18px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;z-index:1500;opacity:0;transition:.2s}
.toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:900px){
  .readiness-grid,.module-grid,.scenario-grid{grid-template-columns:1fr 1fr}
  .section-head,.lead-panel{align-items:flex-start;flex-direction:column}
  .lead-actions{justify-content:flex-start}
}
@media(max-width:640px){
  .container{padding:0 18px}
  .readiness-grid,.module-grid,.scenario-grid{grid-template-columns:1fr}
}
