
:root{--bg1:#050816;--bg2:#0b1632;--sheet:#0b1733;--sheet2:#0f2249;--line:rgba(122,196,255,.25);--glow:rgba(0,0,0,.26);--accent:#70e8ff;--accent2:#8fffb3;--text:#eaf3ff;--muted:#c2d6ee;--ink:#152238;--print-accent:#0f6d88}
*{box-sizing:border-box}
body.learning-map-doc{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top left, rgba(41,79,144,.35), transparent 42%),linear-gradient(180deg,var(--bg2),var(--bg1));color:var(--text)}
.lm-toolbar{position:sticky;top:0;z-index:20;background:rgba(3,8,20,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(122,196,255,.18)}
.lm-toolbar .inner{max-width:1180px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.lm-brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:800;letter-spacing:.05em}
.lm-brand .dot{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#5093ff);box-shadow:0 0 20px rgba(112,232,255,.45)}
.lm-toolbar-actions{display:flex;flex-wrap:wrap;gap:10px}
.lm-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;text-decoration:none;color:var(--text);border:1px solid rgba(122,196,255,.25);background:linear-gradient(180deg,rgba(19,39,80,.95),rgba(10,18,39,.95));font-weight:700;font-size:.95rem;cursor:pointer}
.lm-btn.primary{background:linear-gradient(180deg,rgba(58,124,255,.95),rgba(22,73,166,.95));border-color:rgba(142,188,255,.45)}
.lm-shell{max-width:1180px;margin:0 auto;padding:26px 20px 44px}
.lm-sheet{position:relative;background:linear-gradient(180deg,rgba(15,29,60,.98),rgba(7,15,32,.98));border:1px solid var(--line);border-radius:30px;box-shadow:0 22px 60px var(--glow);padding:28px;overflow:hidden}
.lm-sheet:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right, rgba(112,232,255,.16), transparent 30%),radial-gradient(circle at bottom left, rgba(111,255,179,.10), transparent 28%);pointer-events:none}
.lm-top{display:grid;grid-template-columns:1.4fr .9fr;gap:20px;position:relative;z-index:1}
.lm-hero{padding-right:8px}
.lm-kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:rgba(10,24,50,.65);border:1px solid rgba(122,196,255,.2);font-size:.85rem;font-weight:800;letter-spacing:.14em;color:var(--accent);text-transform:uppercase}
.lm-hero h1{margin:14px 0 10px;font-size:clamp(2.15rem,4vw,3.2rem);line-height:.98}
.lm-hero p{margin:0;color:var(--muted);font-size:1.04rem;max-width:62ch}
.lm-hero .brandline{margin-top:14px;font-size:.92rem;color:#9ec6f2}
.lm-meta{display:grid;grid-template-columns:1fr;gap:12px}
.lm-pill{padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,rgba(12,24,53,.82),rgba(8,16,36,.88));border:1px solid rgba(122,196,255,.18)}
.lm-pill .label{font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.lm-pill p{margin:.4rem 0 0;color:var(--text);font-size:.96rem}
.lm-main{margin-top:18px;display:grid;grid-template-columns:1.18fr .82fr;gap:18px;position:relative;z-index:1}
.lm-column{display:grid;gap:16px}
.lm-panel{padding:16px 18px;border-radius:22px;background:linear-gradient(180deg,rgba(9,20,46,.9),rgba(8,15,32,.88));border:1px solid rgba(122,196,255,.18)}
.lm-panel h2{margin:0 0 10px;font-size:1.05rem;display:flex;align-items:center;gap:8px}
.lm-panel h2 .num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(180deg,rgba(54,137,255,.95),rgba(20,69,161,.95));font-size:.9rem}
.lm-route{display:grid;gap:10px}
.lm-step{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.02);border:1px dashed rgba(122,196,255,.14)}
.lm-step .n{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:rgba(112,232,255,.12);border:1px solid rgba(112,232,255,.28);font-weight:800;color:var(--accent)}
.lm-step p{margin:0;color:var(--text);font-size:.96rem;line-height:1.35}
.lm-list{margin:0;padding-left:1.08rem}
.lm-list li{margin:.36rem 0;color:var(--muted);line-height:1.35}
.lm-prompt{padding:10px 12px;border-radius:14px;border:1px solid rgba(122,196,255,.18);background:rgba(5,10,24,.44);font-size:.92rem;color:var(--text);margin-top:8px}
.lm-mission{font-size:1rem;color:var(--text);line-height:1.4}
.lm-banner{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:16px 18px;border-radius:22px;margin-top:16px;background:linear-gradient(180deg,rgba(9,18,40,.88),rgba(7,13,29,.88));border:1px dashed rgba(143,255,179,.28);position:relative;z-index:1}
.lm-banner strong{display:block;color:var(--accent2);font-size:1rem}
.lm-banner p{margin:.3rem 0 0;color:var(--muted)}
.lm-nextlinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lm-nextlinks a{display:block;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.02);border:1px solid rgba(122,196,255,.14);color:var(--text);text-decoration:none;font-size:.95rem}
.lm-footer-note{margin-top:12px;color:#8fb0d8;font-size:.9rem}
@media (max-width:960px){.lm-top,.lm-main,.lm-banner{grid-template-columns:1fr}.lm-nextlinks{grid-template-columns:1fr}.lm-toolbar .inner{padding:12px 14px}.lm-sheet{padding:22px}}
@media print{
 @page{size:letter;margin:.22in}
 body.learning-map-doc{background:#fff !important;color:#111 !important}
 .lm-toolbar{display:none !important}
 .lm-shell{padding:0 !important;max-width:none !important}
 .lm-sheet{box-shadow:none !important;border:1px solid #bfd1e3 !important;background:#fff !important;border-radius:12px !important;padding:10px !important;font-size:11px !important}
 .lm-sheet:before,.lm-brandline{display:none !important}
 .lm-hero h1{font-size:24px !important;margin:8px 0 6px;color:#122033 !important}
 .lm-hero p,.lm-step p,.lm-pill p,.lm-list li,.lm-mission,.lm-banner p,.lm-footer-note{color:#1f2c40 !important}
 .lm-kicker,.lm-pill .label{color:var(--print-accent) !important;background:#eef8fb !important;border-color:#c8e7ee !important}
 .lm-btn,.no-print{display:none !important}
 .lm-top{grid-template-columns:1.35fr .88fr;gap:8px}
 .lm-main{grid-template-columns:1.06fr .94fr;gap:8px;margin-top:8px}
 .lm-column{gap:8px}
 .lm-panel,.lm-pill,.lm-step,.lm-nextlinks a,.lm-banner{background:#fff !important;border-color:#cdd9e8 !important;box-shadow:none !important}
 .lm-panel{padding:8px 9px;border-radius:10px}
 .lm-panel h2{font-size:13px;margin-bottom:5px;color:#122033 !important}
 .lm-panel h2 .num{background:#e9f2ff !important;color:#1f4d88 !important;border:1px solid #b7ccec !important;width:22px;height:22px;font-size:11px}
 .lm-route{gap:5px}
 .lm-step{padding:5px 6px;border-radius:8px;grid-template-columns:26px 1fr;gap:6px}
 .lm-step .n{background:#eef8fb !important;border-color:#c8e7ee !important;color:#0f6d88 !important;width:22px;height:22px;border-radius:7px;font-size:10px}
 .lm-step p,.lm-list li,.lm-pill p,.lm-nextlinks a{font-size:10.25px !important;line-height:1.18 !important}
 .lm-kicker{font-size:10px !important;padding:4px 8px}
 .lm-hero p{font-size:11px !important;line-height:1.18 !important}
 .lm-pill{padding:6px 8px;border-radius:8px}
 .lm-pill .label{font-size:9px !important}
 .lm-prompt{font-size:10px !important;line-height:1.18 !important;padding:5px 6px;border-radius:8px;margin-top:5px}
 .lm-banner{padding:7px 9px;border-radius:10px;grid-template-columns:1fr;margin-top:8px}
 .lm-banner strong{font-size:12px !important;color:#176743 !important}
 .lm-banner p{font-size:10.25px !important;line-height:1.18 !important}
 .lm-nextlinks{gap:5px}
 .lm-nextlinks a{padding:5px 6px;border-radius:7px;text-decoration:none !important;color:#17324b !important}
 a{text-decoration:none;color:#17324b !important}
 .lm-footer-note{font-size:10px !important;margin-top:6px;line-height:1.16 !important}
 }
