*{box-sizing:border-box}:root{--ink:#254b3c;--muted:#5b6b60;--line:#d6dfcf;--cream:#faf7ef;--soft:#e9efdf;--peach:#fae8d7}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.6 system-ui,sans-serif}button,input{font:inherit;color:inherit}a{color:inherit;text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid #976013;outline-offset:4px}.skip{position:absolute;top:-90px;left:16px;padding:10px;background:white;z-index:30}.skip:focus{top:8px}.private{text-align:center;background:var(--ink);color:white;padding:8px 16px;font-size:11px;letter-spacing:.08em}header,main{max-width:1320px;margin:auto;padding:22px 28px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{font:28px Georgia,serif;text-decoration:none}.brand small{display:block;font:9px system-ui;letter-spacing:.25em}details{position:relative}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:'⌄';float:right;margin-left:15px}#language-label,#area-value{background:white;border:1px solid var(--line);border-radius:12px;padding:10px 15px;min-width:145px}.dropdown{position:absolute;right:0;min-width:100%;background:#fffef9;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 28px #203c291f;padding:7px;z-index:15}.dropdown a,.dropdown button{display:block;padding:10px 12px;text-align:left;background:transparent;border:0;border-radius:8px;width:100%;text-decoration:none;white-space:nowrap}.dropdown a:hover,.dropdown button:hover{background:var(--soft)}.hero{padding:32px 0 24px;max-width:880px}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:700}h1{font:clamp(37px,4.5vw,57px)/1.13 Georgia,serif;margin:14px 0 20px}h2{font:29px/1.2 Georgia,serif;margin:0 0 16px}h3{font:23px/1.25 Georgia,serif;margin:10px 0}.lead{font-size:18px;color:var(--muted)}.temporary{font-size:13px;border-left:3px solid #a6b59a;padding-left:14px;color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:30px;align-items:start}.plan{grid-column:2;grid-row:1;background:#eef2e6;border:1px solid var(--line);border-radius:22px;padding:23px;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}.plan-top{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.plan-top h2{font-size:27px}.counter{background:white;border-radius:20px;font-size:12px;white-space:nowrap;padding:5px 10px}.plan-note,.print-note{font-size:12px;color:var(--muted)}.empty{font:21px/1.5 Georgia,serif;background:white;border:1px dashed #b3c1a6;border-radius:12px;padding:22px}#plan-items{padding:0;list-style:none;margin:16px 0}.plan-item{padding:15px 0;border-bottom:1px solid #cfdbc4}.item-top{display:flex;gap:12px;align-items:flex-start}.item-top img{width:48px;height:60px;object-fit:contain;background:white;border-radius:7px}.item-title{font-size:16px;line-height:1.35;font-weight:650;margin:0}.item-number{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-bottom:4px}.item-goal{font-size:12px;margin:9px 0}.item-controls{display:flex;flex-wrap:wrap;gap:6px}.item-controls button{border:1px solid #bdcbb2;background:#fffef9;padding:6px 9px;border-radius:9px;font-size:12px}.item-links{display:flex;flex-wrap:wrap;gap:6px 15px;font-size:12px;margin-top:10px}.status{font-size:12px;min-height:22px}.plan-actions{display:grid;gap:9px}.primary,.secondary{border-radius:11px;padding:11px 13px;border:1px solid var(--ink);font-size:14px;font-weight:600}.primary{background:var(--ink);color:white}.secondary{background:transparent}.primary:not(:disabled):hover{background:#3b644c}.plan-actions>a{font-size:13px;text-align:center}#catalog{grid-column:1;grid-row:1;min-width:0;scroll-margin-top:18px}.filters{display:flex;gap:14px;align-items:end}.search{flex:1;min-width:120px}label,.area-filter>span{display:block;font-size:12px;font-weight:650;margin-bottom:6px}.search input{width:100%;padding:11px 13px;background:white;border:1px solid var(--line);border-radius:12px;min-width:0}.area-filter{min-width:185px}#area-options{left:0}.results{font-size:12px;color:var(--muted);margin:14px 0}.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lesson-card{background:white;border:1px solid var(--line);border-radius:19px;padding:20px;display:flex;flex-direction:column;min-width:0}.lesson-card h3{font-size:23px}.subject{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:650}.lesson-card figure{margin:10px 0 15px}.lesson-card img{height:130px;width:100%;object-fit:contain;background:#fcfbf7;border-radius:10px}.lesson-card figcaption{font-size:10px;color:var(--muted);margin-top:5px}.lesson-card .goal{font-size:13px;margin-top:0}.badge{display:inline-block;align-self:flex-start;background:var(--soft);font-size:10px;padding:3px 8px;border-radius:15px;margin-bottom:14px}.badge.related{background:var(--peach)}.lesson-card button{margin-top:auto}.catalog-links{font-size:12px;display:flex;gap:8px 14px;flex-wrap:wrap;margin-bottom:15px}.lesson-card [data-add][aria-label]{width:100%}footer{margin-top:40px;padding:30px 0;border-top:1px solid var(--line)}footer nav{display:flex;flex-wrap:wrap;gap:14px 22px;font-size:14px}footer p{font-size:12px;color:var(--muted);max-width:950px}#printable-plan{display:none}@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) 320px;gap:20px}.lesson-grid{grid-template-columns:1fr}.filters{flex-direction:column;align-items:stretch}.area-filter{min-width:0}}@media(max-width:700px){header,main{padding:18px}.brand{font-size:22px}#language-label{min-width:125px}.layout{display:flex;flex-direction:column;gap:28px}.plan{position:static;max-height:none;width:100%;overflow:visible}#catalog{width:100%}.hero{padding-top:22px}h1{font-size:37px}.lesson-grid{grid-template-columns:1fr 1fr;gap:12px}.lesson-card{padding:15px}.lesson-card h3{font-size:21px}.filters{flex-direction:row;align-items:end}.area-filter{min-width:140px;width:45%}}@media(max-width:460px){.lesson-grid{grid-template-columns:1fr}.filters{flex-direction:column;align-items:stretch}.area-filter{width:100%}.hero .lead{font-size:17px}}@media print{@page{margin:14mm}body{background:white;color:#172f25;font:10pt/1.4 system-ui,sans-serif}body>header,body>main,body>.private,.skip{display:none!important}#printable-plan{display:block}#printable-plan h1{font-size:23pt;margin:0 0 8pt}#printable-plan .print-intro{font-size:10pt}#printable-plan ol{list-style:none;padding:0}#printable-plan li{break-inside:avoid;border-top:1px solid #bdc8b9;padding:10pt 0;display:grid;grid-template-columns:48pt 1fr;gap:12pt}#printable-plan img{width:48pt;height:64pt;object-fit:contain}#printable-plan h2{font-size:14pt;margin:0 0 5pt}#printable-plan p{margin:4pt 0}#printable-plan .print-url{font-size:8pt;overflow-wrap:anywhere}#printable-plan .print-note{font-size:9pt;color:#172f25}#printable-plan a{color:inherit;text-decoration:none}.print-private{font-size:9pt;letter-spacing:.06em}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

[hidden]{display:none!important}#print-preview-toolbar{position:sticky;top:0;z-index:20;display:flex;justify-content:center;gap:20px;padding:14px;background:#254b3c}#print-preview-toolbar button{background:white;border:0;border-radius:10px;padding:9px 15px;color:#254b3c}body.print-preview{background:#e9eddf}body.print-preview>header,body.print-preview>main,body.print-preview>.private,body.print-preview>.skip{display:none}body.print-preview #printable-plan{display:block;background:white;max-width:794px;margin:24px auto;padding:44px;box-shadow:0 3px 24px #233d2522;font:10pt/1.4 system-ui,sans-serif;color:#172f25}body.print-preview #printable-plan h1{font-size:23pt;margin:0 0 8pt}body.print-preview #printable-plan .print-intro{font-size:10pt}body.print-preview #printable-plan ol{list-style:none;padding:0}body.print-preview #printable-plan li{break-inside:avoid;border-top:1px solid #bdc8b9;padding:10pt 0;display:grid;grid-template-columns:48pt 1fr;gap:12pt}body.print-preview #printable-plan img{width:48pt;height:64pt;object-fit:contain}body.print-preview #printable-plan h2{font-size:14pt;margin:0 0 5pt}body.print-preview #printable-plan p{margin:4pt 0}body.print-preview #printable-plan .print-url{font-size:8pt;overflow-wrap:anywhere}body.print-preview #printable-plan .print-note{font-size:9pt;color:#172f25}body.print-preview #printable-plan a{color:inherit;text-decoration:none}@media print{#print-preview-toolbar{display:none!important}body.print-preview{background:white}body.print-preview #printable-plan{max-width:none;padding:0;margin:0;box-shadow:none}}@media(max-width:600px){body.print-preview #printable-plan{margin:12px;padding:22px}#print-preview-toolbar{gap:10px}#print-preview-toolbar button{font-size:12px;padding:8px 10px}}

/* Keep the planner on one page scroll, including when five lessons are selected. */
.plan{position:static;max-height:none;overflow:visible}
