*{box-sizing:border-box}body{margin:0;background:#f4f6fa;color:#172033;font:16px/1.55 Arial,sans-serif}header{background:#101d35;color:white;padding:16px max(5%,calc((100% - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.brand{font-weight:800;font-size:21px;color:#fff;text-decoration:none;letter-spacing:.4px}nav{display:flex;gap:16px;flex-wrap:wrap}nav a{color:#e7edf8;text-decoration:none;font-size:14px}main{max-width:1100px;margin:34px auto;padding:0 20px;min-height:70vh}footer{text-align:center;padding:24px;color:#68758b;font-size:13px}.hero{background:linear-gradient(120deg,#122747,#176c83);color:white;padding:54px 42px;border-radius:18px}.hero h1{font-size:clamp(30px,5vw,48px);line-height:1.1;margin:0 0 16px}.hero p{max-width:650px;color:#e3f3f7}.btn,button{display:inline-block;background:#087f8c;color:#fff;padding:11px 17px;border:0;border-radius:8px;text-decoration:none;cursor:pointer;font-weight:700}.btn.secondary{background:#243a5b}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.card,.panel{background:white;border:1px solid #e2e7ef;border-radius:13px;padding:22px;box-shadow:0 5px 18px #14243a0a}.card h3{margin-top:0}.muted{color:#69778c}.notice{padding:12px 16px;background:#e6f5ef;border-left:4px solid #16845d;margin:0 0 18px;border-radius:5px}label{display:block;font-weight:700;margin:12px 0 5px}input,textarea,select{width:100%;padding:11px;border:1px solid #cbd4e1;border-radius:7px;font:inherit;background:#fff}textarea{min-height:100px}form{max-width:620px}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:11px;border-bottom:1px solid #e4e9f0;text-align:left}.pill{display:inline-block;padding:3px 9px;border-radius:20px;background:#eaf0f8;font-size:12px}.locked{color:#a33;font-weight:bold}.lesson{padding:15px;background:white;border:1px solid #e3e8ef;border-radius:9px;margin:10px 0}.danger{color:#a22}@media(max-width:650px){header{align-items:flex-start}.hero{padding:34px 24px}.table{font-size:13px}}