:root{font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:#173550;background:#eef4f6;line-height:1.8}*{box-sizing:border-box}body{margin:0}main{max-width:820px;margin:48px auto;padding:48px;background:#fff;border-radius:20px}.badge{font-size:12px;letter-spacing:.15em;color:#39756c}h1{font-size:38px;line-height:1.4}h1 small{font-size:17px;font-weight:500}.lead{font-size:25px;font-weight:600}aside{background:#fff6dc;border-left:3px solid #dbac3b;padding:14px 20px;font-size:14px}section{margin:30px 0;padding-top:12px}h2{font-size:21px}button{font:inherit;background:#163b58;color:#fff;padding:12px 20px;border:0;border-radius:8px;cursor:pointer}button:disabled{background:#d4dfe4;color:#526878;cursor:not-allowed}button:focus-visible{outline:3px solid #dbac3b;outline-offset:4px}.secondary{background:#fff;color:#173550;border:1px solid #8ca6b4}.notice,article{padding:18px;background:#edf6f3;border-radius:8px}article{margin-bottom:20px}dt{font-size:13px;color:#657d8c}dd{margin:0 0 12px}.muted,footer{font-size:12px;color:#657d8c}footer{margin-top:40px;border-top:1px solid #dce6e9;padding-top:20px}@media(max-width:600px){main{margin:0;padding:28px 20px;border-radius:0}.lead{font-size:22px}button{width:100%}}select{display:block;max-width:100%;padding:.7rem;margin:.5rem 0 1rem;border:1px solid #829398;border-radius:.4rem;background:#fff;color:#203c4a;font:inherit}.workspace{border-top:1px solid #dce6e9;margin-top:40px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.eyebrow{font-size:11px;letter-spacing:.16em;color:#39756c;margin-bottom:0}.section-title h2{margin-top:0}details{border:1px solid #dce6e9;padding:18px;border-radius:10px;margin:20px 0}summary{cursor:pointer;font-weight:600}label{display:block;font-size:14px;font-weight:600;margin:16px 0}input,textarea{display:block;width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #8ca6b4;border-radius:6px;padding:10px;margin-top:6px}textarea{resize:vertical}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #dbac3b;outline-offset:2px}.course-list{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.course-detail{padding:20px;background:#f6f9fa;border-radius:12px}.team-panel{border-top:3px solid #39756c}.log-body{white-space:pre-wrap;overflow-wrap:anywhere}.empty{color:#657d8c;padding:20px 0}.error{background:#fff0eb;color:#852e23;padding:16px;border-radius:8px}.inline-form{display:flex;gap:14px;align-items:end}.inline-form label{flex:1;margin:0}.inline-form button{white-space:nowrap}small{font-weight:400}.workspace button:disabled{opacity:.6}@media(max-width:600px){.section-title,.inline-form{display:block}.inline-form button{margin-top:12px}.section-title button{width:auto}}.inquiry-panel{margin:24px 0;padding:20px;background:#f6f9fa;border-radius:12px}.inquiry-panel h3{margin-top:0}.theme-bank article h4{margin-top:0}.inquiry-panel select{width:100%}@media(max-width:600px){.inquiry-panel{padding:14px}}.private-panel{border-left:4px solid #997437;background:#fffcf5}.private-panel article{background:#f5f0e5}.teacher-dashboard{border-top:2px solid #39756c}.dashboard-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.dashboard-metrics>div{padding:14px;background:#fff;border:1px solid #dce6e9;border-radius:8px}.dashboard-metrics strong{display:block;font-size:28px;line-height:1.4}.dashboard-metrics span{font-size:12px}.dashboard-filter{display:flex;gap:10px;align-items:center}.dashboard-filter input{width:20px;height:20px;margin:0;flex-shrink:0}.dashboard-flags{display:flex;flex-wrap:wrap;gap:6px}.dashboard-flags span{background:#fff0ce;border-radius:4px;padding:2px 8px;font-size:12px}.dashboard-team h3{margin:0}.dashboard-dates{display:flex;flex-wrap:wrap;gap:8px 24px}.team-panel:focus{outline:2px solid #39756c;outline-offset:8px}@media(max-width:600px){.dashboard-metrics{gap:6px}.dashboard-metrics>div{padding:8px}.dashboard-metrics strong{font-size:23px}}.sharing{margin-block:2rem;padding:1.2rem;border:1px solid #cad9d3;border-radius:12px}.sharing h4{margin-top:1rem}.check-label{display:flex;align-items:center;gap:.6rem}.check-label input{width:auto;flex:0 0 auto}fieldset{border:1px solid #cad9d3;border-radius:8px}blockquote{margin:1rem 0;padding:.8rem 1rem;border-left:3px solid #37796b;background:#f4f8f6}.theme-reference{border-left:3px solid #9bbdb3;padding:8px 14px;margin:10px 0}
