.learning-intro,.learning-session{max-width:1100px;margin-inline:auto;padding:clamp(12px,2vw,28px)}
.learning-intro h2,.learning-heading h2{margin:8px 0 12px;font-size:clamp(24px,3vw,34px);line-height:1.2}
.learning-intro p,.learning-step p,.learning-brief p,.learning-next p{line-height:1.6;max-width:82ch}
.learning-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.learning-mode-grid article,.learning-brief,.learning-evidence,.learning-next{padding:18px;border:1px solid var(--outline-variant,#d8dce4);border-radius:14px;background:var(--surface,#fff);margin-block:16px}
.learning-mode-grid h3{margin-top:0}
.learning-mode{display:grid;gap:6px;min-width:180px;max-width:260px}
.learning-mode select{font:inherit;padding:10px;border:1px solid var(--outline-variant,#d8dce4);border-radius:8px;background:var(--surface,#fff);color:inherit}
.learning-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-block:16px}
.learning-actions button{min-height:42px;white-space:normal;text-align:start}
.learning-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.learning-progress{display:block;width:100%;height:10px;accent-color:var(--primary,#3566be);margin-block:12px 22px}
.learning-route{display:grid;gap:10px}
.learning-step{border:1px solid var(--outline-variant,#d8dce4);border-radius:12px;background:var(--surface,#fff);padding:0 16px}
.learning-step summary{cursor:pointer;display:flex;align-items:center;gap:12px;min-height:64px;list-style:none}
.learning-step summary::-webkit-details-marker{display:none}
.learning-step summary:focus-visible,.learning-restart summary:focus-visible{outline:3px solid var(--primary,#3566be);outline-offset:3px}
.learning-step summary strong{flex:1}
.learning-step-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;height:30px;border:1px solid var(--outline-variant,#d8dce4);border-radius:50%;font-weight:600}
.learning-step.is-complete .learning-step-number{background:var(--primary-container,#dbe7ff);border-color:transparent}
.learning-step-state{font-size:12px;color:var(--on-surface-variant,#556071)}
.learning-step[open]{border-color:var(--primary,#3566be)}
.learning-step[open] summary{border-bottom:1px solid var(--outline-variant,#d8dce4)}
.learning-notice{padding:20px;border-radius:12px;border:1px solid var(--outline-variant,#d8dce4);background:var(--surface-container,#f4f6fa)}
.learning-notice.is-error{color:var(--error,#a92727)}
.learning-evidence-list{padding-inline-start:22px;line-height:1.7}
.learning-evidence-list li{margin-block:8px}
.learning-evidence-list p{margin:2px 0;color:var(--on-surface-variant,#556071)}
.learning-restart{margin-inline-start:auto;max-width:350px}
.learning-restart summary{cursor:pointer;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.learning-restart[open]{flex-basis:100%;padding:16px;border:1px solid var(--outline-variant,#d8dce4);border-radius:10px}
.learning-context-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 16px;margin:0 0 12px;border:1px solid var(--primary,#3566be);border-radius:10px;background:var(--primary-container,#dbe7ff);color:var(--on-primary-container,#172c52)}
.learning-context-bar span{font-size:13px;flex:1}
.learning-context-bar button{min-height:36px;font-size:13px;padding:6px 10px}
@media(max-width:650px){.learning-mode-grid{grid-template-columns:1fr}.learning-step-state{display:none}.learning-heading .learning-mode{width:100%;max-width:none}.learning-restart{margin-inline-start:0}.learning-context-bar>span{flex-basis:100%}.learning-brief,.learning-evidence,.learning-next{padding:14px}.learning-step{padding-inline:12px}}
