@import url('https://fonts.googleapis.com/css2?family=Prompt:wght@400;500;600;700&display=swap');
:root{font-family:Prompt,sans-serif;color:#172b48;background:#f3f6fa;line-height:1.7}*{box-sizing:border-box}body{margin:0}header{background:white;border-bottom:1px solid #dce4ee;padding:16px 5%;display:flex;align-items:center;gap:22px;flex-wrap:wrap}a{color:#155ab9}button,.button{font:inherit;background:#145ac1;color:white;border:0;border-radius:10px;padding:11px 19px;cursor:pointer;text-decoration:none;display:inline-block}button.secondary{background:#e5edf8;color:#174373}button:disabled{opacity:.45;cursor:default}main{max-width:1180px;margin:auto;padding:32px 24px}h1{font-size:clamp(28px,4vw,48px);line-height:1.3}h2{line-height:1.4}.hero{background:#102d55;color:white;padding:40px;border-radius:24px;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center}.hero small{color:#9bc9ff}.hero p{color:#d3e1f4}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:24px 0}.card,.panel{background:white;border:1px solid #dce4ee;border-radius:18px;padding:24px}.card img{width:100%;height:150px;object-fit:contain;background:#edf4fc;border-radius:12px}.card h2{font-size:19px}.muted{color:#5a6e87}.tag{display:inline-block;background:#eaf2ff;color:#245aa2;border-radius:20px;padding:3px 12px;font-size:13px}.notice{background:#fff4dc;color:#745116;padding:16px;border-radius:12px;margin:18px 0}.filters{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}input,select,textarea{font:inherit;border:1px solid #bac9dc;border-radius:8px;padding:10px;background:white;max-width:100%}textarea{width:100%;min-height:110px}label{display:block;margin:18px 0 8px}pre{white-space:pre-wrap;font:inherit}.flow{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}.flow span{padding:20px;background:#e9f3ff;border-radius:12px;color:#14509c}.steps{border-left:3px solid #3681df;padding-left:24px}.steps p{padding:8px 0}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:10px;text-align:left;border-bottom:1px solid #dce4ee}footer{padding:30px;text-align:center;color:#5a6e87}.slide{min-height:75vh;background:white;border-radius:24px;padding:6%;display:flex;flex-direction:column;justify-content:center}.slide h1{font-size:clamp(32px,5vw,64px)}.slide p,.slide li{font-size:clamp(20px,2.3vw,30px)}.slide.cover{background:#102d55;color:white}.slide.cover .flow span{background:#214678;color:white}.slide small{font-size:16px}.slide img{max-height:260px}.hidden{display:none!important}@media(max-width:800px){.grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;padding:26px}}@media(max-width:550px){.grid{grid-template-columns:1fr}main{padding:20px 16px}header{gap:12px}.panel{padding:18px}}@media print{header,button,.filters,footer{display:none}.panel,.slide{border:0;break-inside:avoid}body{background:white}}

/* Illustrated teaching layouts */
.slide-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.slide-columns figure{margin:0}.scene{width:100%;aspect-ratio:3/2;background-image:url('illustrations.png');background-size:200% 200%;background-repeat:no-repeat;border-radius:18px;background-color:#eaf3ff}.scene.door{background-position:left top}.scene.board{background-position:right top}.scene.counter{background-position:left bottom}.scene.safety{background-position:right bottom}figcaption{font-size:13px!important;color:#56718c;margin-top:8px}.cover figcaption{color:#d7e7fc}.lesson-figure{max-width:650px;margin:24px auto}.reading h2{margin-top:32px}.reading p{max-width:88ch}.table-wrap{overflow-x:auto}.slide{padding:4%;min-height:76vh}.slide-columns p,.slide-columns li{font-size:clamp(18px,1.8vw,26px)}.slide-columns .flow span{padding:12px;font-size:20px}.slide h1{font-size:clamp(30px,4.2vw,56px)}@media(max-width:800px){.slide-columns{grid-template-columns:1fr}.slide-columns figure{max-width:600px}.slide{min-height:70vh}}

.cover-art{width:100%;aspect-ratio:1;background-image:url('lesson-covers.png');background-size:300% 300%;background-repeat:no-repeat;border-radius:16px;background-color:#eaf3ff}.cover-1{background-position:0% 0%}.cover-2{background-position:50% 0%}.cover-3{background-position:100% 0%}.cover-4{background-position:0% 50%}.cover-5{background-position:50% 50%}.cover-6{background-position:100% 50%}.cover-7{background-position:0% 100%}.cover-8{background-position:50% 100%}.cover-9{background-position:100% 100%}.lesson-cover{max-width:460px;margin:24px auto}.card .cover-art{aspect-ratio:1}.code{font-family:Consolas,monospace;background:#102a47;color:#e7f2ff;padding:22px;border-radius:12px;font-size:15px;line-height:1.65;overflow:auto;white-space:pre}.slide .code{font-size:clamp(16px,1.7vw,24px)}.print-sheet{break-after:page}@media print{.print-sheet:last-child{break-after:auto}}

.attachment-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin:20px 0}.attachment-card{margin:0;padding:16px;border:1px solid #dce4ee;border-radius:12px;background:#f7faff}.attachment-card img{display:block;width:100%;height:220px;object-fit:contain;margin:12px 0;background:white}.attachment-card input{width:100%}.attachment-card button{margin-top:12px}.upload-panel{padding:18px;background:#edf4ff;border-radius:12px;margin:20px 0}

.wiring-panel{margin:24px 0}.wiring-figure{margin:22px 0}.wiring-figure img{display:block;width:100%;height:auto;max-height:none}.wiring-slide h1{font-size:clamp(28px,3vw,42px);margin:10px 0}.wiring-slide .wiring-figure{margin:8px 0}.wiring-slide img{max-height:62vh;object-fit:contain}
