*{box-sizing:border-box}body{margin:0;background:#f3f5fb;color:#1b2b4c;font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #cbd5e9;border-radius:12px;padding:11px 15px;background:#e9edf8;color:#23345e;font-weight:650}button:hover{filter:brightness(.97)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #6e60ce;outline-offset:2px}.primary{background:#4e3ba6;color:#fff;border-color:#4e3ba6}.secondary{background:#edf0f9}.top{background:#131d42;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:18px max(22px,calc((100vw - 1400px)/2));gap:15px}.top a{color:#d9e3ff;text-decoration:none;font-size:14px}.top strong{font-size:23px}.top span{color:#81e6db}.shell{max-width:1440px;margin:auto;padding:24px}.hero{border-radius:26px;background:linear-gradient(110deg,#141d43,#393078 65%,#2d617b);color:#fff;padding:34px 40px;margin-bottom:25px}.hero h1{font-size:clamp(30px,4vw,46px);line-height:1.15;margin:8px 0}.hero p{color:#e5eaff}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:800;color:#6950b7}.hero .eyebrow{color:#98e9dc}.stats{display:flex;gap:10px;flex-wrap:wrap}.stats span{background:#ffffff20;padding:7px 13px;border-radius:30px;font-size:13px}.layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:22px;align-items:start}.sidebar,.library,.practice{background:#fff;border:1px solid #d8e1f2;border-radius:24px;box-shadow:0 10px 30px #14264c0b}.sidebar{padding:25px;position:sticky;top:15px}.sidebar h2{margin-top:0}.sidebar label:not(.check){display:block;font-size:14px;font-weight:650;margin:18px 0 7px}.sidebar input:not([type=checkbox]),.sidebar select{width:100%;border:1px solid #c7d2e9;border-radius:12px;padding:12px;background:white;color:#182b4c}.check{display:flex;align-items:center;gap:8px;margin:15px 0}.tiny{font-size:13px}.muted{color:#61728d}.library{padding:28px}.library h2{margin:0}.quick{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}.quick button{font-size:13px}.quick button[aria-pressed=true]{background:#4e3ba6;color:white}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.card{border:1px solid #d9e2f1;border-radius:17px;padding:18px;display:flex;flex-direction:column;gap:8px}.card h3{font-size:21px;margin:0;color:#1a2b51}.card p{margin:0;color:#63728b}.card .example{font-style:italic;font-size:14px;color:#344e70}.tag{display:inline-block;background:#eeeafd;color:#5641a6;border-radius:20px;font-size:12px;padding:4px 9px;margin-right:6px}.tag.due{background:#fbeed9;color:#81530e}.card-actions{display:flex;gap:8px;margin-top:auto;padding-top:12px}.pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:24px}.practice{padding:clamp(22px,4vw,42px)}.practice-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.practice h2{font-size:clamp(26px,3vw,36px);margin:15px 0}.modes{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.modes button[aria-pressed=true]{background:#45339e;color:white}.progress{height:8px;background:#e8ecf5;border-radius:10px;margin:22px 0;overflow:hidden}.progress>div{height:100%;background:linear-gradient(90deg,#5542b6,#2d9b9e);transition:width .2s}.question{max-width:850px;margin:auto;border:1px solid #dbe2f1;border-radius:20px;padding:clamp(20px,3vw,35px);min-height:290px}.question h3{font-size:clamp(22px,3vw,31px);margin:10px 0}.question .hint{color:#5e6e87}.choices{display:grid;gap:9px;margin:20px 0}.choices button{text-align:left}.correct{background:#e0f4e8;border:1px solid #95cdae;padding:15px;border-radius:13px;color:#21563c;margin-top:14px}.wrong{background:#fff0ed;border:1px solid #e9b8b0;padding:15px;border-radius:13px;color:#853f38;margin-top:14px}.text-answer{width:100%;border:1px solid #cbd5e9;border-radius:12px;padding:14px;margin:12px 0}.actions{display:flex;justify-content:space-between;margin-top:20px}.word-bank{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.target{padding:15px;border:2px dashed #c0b6e5;border-radius:12px;min-height:58px;background:#f5f3ff}.pill{border-radius:25px}.speech{font-size:14px}.review-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}footer{text-align:center;color:#73809a;padding:32px;font-size:13px}[hidden]{display:none!important}@media(max-width:850px){.layout{grid-template-columns:1fr}.sidebar{position:static}}@media(max-width:570px){.cards{grid-template-columns:1fr}.shell{padding:13px}.hero{padding:24px}.library,.sidebar,.practice{padding:20px}.card-actions{flex-wrap:wrap}}
.adaptive-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#f1effb;border:1px solid #d6cff3;padding:18px;border-radius:17px;margin:18px 0}.adaptive-banner strong{color:#34277d}.adaptive-banner p{margin:4px 0 0;font-size:13px;color:#52617c}.adaptive-banner button{white-space:nowrap}@media(max-width:650px){.adaptive-banner{flex-direction:column;align-items:stretch}}
/* Phase 12C Immersive Situations */
.immersive-entry{background:#eeebfb;border:1px solid #d3c9f1;border-radius:18px;padding:18px;margin:15px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}.immersive-entry strong{font-size:18px;color:#30266e}.immersive-entry p{margin:5px 0 0;color:#5b6382;font-size:14px}.immersive{background:white;border:1px solid #d8e1f2;border-radius:24px;padding:clamp(20px,4vw,38px)}.immersive-head,.immersive-session-head{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.immersive h2{font-size:clamp(27px,3vw,38px);color:#17274c}.immersive-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:20px 0}.immersive-tools label{font-weight:650}.immersive-tools select{padding:11px;border:1px solid #c6d2e9;border-radius:10px;background:white;color:#213357}.immersive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.immersive-card{padding:22px;border:1px solid #dce3f2;border-radius:18px;display:flex;flex-direction:column;gap:8px}.immersive-card h3{font-size:20px;margin:4px 0;color:#172b53}.immersive-card p{margin:0;color:#5d6e88}.immersive-card button{margin-top:auto}.dialogue-prompt{padding:24px;background:#f1effc;border-left:5px solid #6654bd;border-radius:15px;font-size:21px;font-weight:600;margin:16px 0}.immersive-choices{display:grid;gap:10px;margin:20px 0}.immersive-choice{text-align:left;padding:16px;background:#f6f7fc;border:1px solid #cbd5e9;color:#243556}.immersive-choice.is-correct{background:#e1f5ea;border-color:#60aa83}.immersive-choice.is-incorrect{background:#fff0ec;border-color:#df928d}.immersive-controls{display:flex;gap:12px;justify-content:space-between;margin-top:18px}.immersive-score{font-size:32px;color:#4934a1;font-weight:800}.immersive-review{border-bottom:1px solid #e1e5f1;padding:12px 0}.immersive-review p{margin:5px 0}.immersive-mastery{border-top:1px solid #e3e7f1;margin-top:30px;padding-top:20px}.immersive-mastery>div{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mastery-tile{display:flex;flex-direction:column;gap:3px;background:#f3f2fa;border-radius:14px;padding:16px}.mastery-tile strong{font-size:25px;color:#4934a1}.mastery-tile span{font-size:13px;color:#5d6d87}@media(max-width:950px){.immersive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.immersive-grid{grid-template-columns:1fr}.immersive-entry{flex-direction:column;align-items:stretch}.immersive-mastery>div{grid-template-columns:repeat(2,1fr)}}
