
:root{
  --bg:#fffaf0;--paper:#ffffff;--ink:#243031;--muted:#657173;--line:#e7ded0;
  --green:#4e9f6e;--green2:#e9f7ee;--pink:#f3a6b6;--blue:#4e8bc4;--yellow:#ffe299;--danger:#ffefef;
  --shadow:0 16px 40px rgba(43,49,52,.10);--radius:24px;--sidebar:285px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at top left,#fff1bd 0,#fffaf0 28%,#f7fbff 100%);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.6}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem 1rem;border-radius:10px;z-index:99}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);background:rgba(255,255,255,.84);backdrop-filter:blur(10px);border-right:1px solid var(--line);padding:22px;overflow:auto}.brand{display:flex;gap:12px;align-items:center;margin-bottom:20px}.logo{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--green2),#fff4c2);box-shadow:var(--shadow);font-size:26px}.brand strong{display:block}.brand small{color:var(--muted)}nav{display:grid;gap:6px}nav a{color:#284143;text-decoration:none;padding:9px 10px;border-radius:12px;font-weight:650;font-size:.95rem}nav a:hover,nav a.active{background:var(--green2);color:#145a34}.content{margin-left:var(--sidebar);padding:32px;max-width:1240px}.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:24px;align-items:stretch;padding:38px;border-radius:32px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(232,248,237,.95));box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8)}h1{font-size:clamp(2.1rem,5vw,4.6rem);line-height:1.02;margin:.4rem 0 1rem;letter-spacing:-.045em}h2{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.1;margin:.1rem 0 1rem;letter-spacing:-.025em}h3{margin-top:0;font-size:1.15rem}.lead{font-size:1.1rem;color:#475254}.pill{display:inline-flex;align-items:center;gap:8px;background:#fff4ce;color:#614608;border:1px solid #f4da8c;border-radius:999px;padding:.38rem .75rem;font-weight:800;font-size:.86rem}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:var(--green);color:white;padding:.8rem 1rem;border-radius:16px;text-decoration:none;font-weight:850;cursor:pointer;box-shadow:0 8px 20px rgba(78,159,110,.25)}.button:hover{transform:translateY(-1px)}.button.secondary{background:var(--blue)}.button.ghost{background:#fff;color:#244;border:1px solid var(--line);box-shadow:none}.button.small{font-size:.9rem;padding:.55rem .75rem}.status-card,.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius);padding:22px}.progress{height:14px;background:#ecf0ed;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),#91c84e);transition:width .25s}.section,.lesson{padding:36px 0;border-bottom:1px solid rgba(231,222,208,.8)}.section.compact{padding-bottom:12px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card.accent{background:#f6fbff}.card.dont{background:#fff7f3;border-color:#f3cfbe}.card.check{background:#f3fff4}.danger-lite{background:var(--danger);border-color:#ffd1d1}.subtle{background:#fbfcfd}.lesson-header{margin-bottom:18px}.takeaway{font-weight:760;background:var(--green2);padding:12px 14px;border-radius:14px}.mini{width:100%;border-collapse:collapse}.mini td{border-bottom:1px solid var(--line);padding:9px 6px;vertical-align:top}.mini td:first-child{font-weight:850;width:92px;color:#2b7349}.script-block{border-left:8px solid var(--green)}.script-list li{margin:.6rem 0;font-size:1.04rem}.callout{padding:12px 14px;border-radius:16px;margin-top:14px}.teacher{background:#fff5c7}.response{background:#f8fafb;border:1px solid #e7edf0;border-radius:16px;padding:12px;margin:.6rem 0}.workshop{background:#fffdf5}.done{display:flex;gap:10px;align-items:center;margin-top:12px;font-weight:800}.toplink{text-align:right}.lesson-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.lesson-map a{display:flex;align-items:center;gap:10px;background:#fff;color:#243031;text-decoration:none;border:1px solid var(--line);border-radius:18px;padding:13px;box-shadow:0 10px 24px rgba(0,0,0,.05);font-weight:850}.lesson-map span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--green2);color:#1b6b3d}.print-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.print-card{border:2px dashed #d7cdbd;border-radius:18px;padding:14px;background:#fff}.print-card h4{margin:.2rem 0;color:#527}.contract,.email-box{background:#fbf7ec;border:1px dashed #c9b98b;border-radius:18px;padding:16px}.certificate{background:linear-gradient(135deg,#fff9d7,#ecfff4);padding:24px;border-radius:30px;border:1px solid #eedc94;max-width:850px}.cert-inner{text-align:center;background:#fff;border:6px double #e5c65a;border-radius:24px;padding:42px}.cert-label{text-transform:uppercase;letter-spacing:.2em;color:#8a6c00;font-weight:900}.cert-name{font-size:1.6rem;margin:20px auto;border-bottom:2px solid #333;max-width:520px;min-height:50px}.cert-footer{display:flex;justify-content:space-between;margin-top:34px}.flash-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.flashcard{min-height:150px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.flashcard b{font-size:1.3rem;color:#245c3a}.flashcard span{font-weight:900}.flashcard small{color:var(--muted)}.resource-list{display:grid;gap:12px;padding-left:0;list-style:none}.resource-list li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}.resource-list a{font-weight:900;color:#1f6a95}footer{padding:34px 0;color:var(--muted)}code{background:#fff;border:1px solid var(--line);border-radius:8px;padding:.15rem .35rem}
@media (max-width:980px){.sidebar{position:static;width:auto}.content{margin-left:0;padding:18px}.hero,.grid.two,.grid.three{grid-template-columns:1fr}.lesson-map,.flash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.print-grid{grid-template-columns:1fr}nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.lesson-map,.flash-grid,nav{grid-template-columns:1fr}.hero{padding:24px}.cert-inner{padding:22px}.cert-footer{display:grid;gap:12px}}
@media print{.sidebar,.hero-actions,.button,.toplink,.skip{display:none!important}.content{margin:0;padding:0}.hero,.card,.status-card{box-shadow:none}.section,.lesson{break-inside:avoid}.certificate{break-inside:avoid}a{color:inherit;text-decoration:none}body{background:#fff}}
