:root{font-family:Arial,Helvetica,sans-serif;color:#172c3e;background:#f4f7fa}*{box-sizing:border-box}body{margin:0}main{max-width:1120px;margin:auto;padding:28px 28px 16px}header{justify-content:space-between;gap:16px}.identity,header{display:flex;align-items:center}.identity{gap:12px}.identity strong{display:block;font-size:20px}.identity span:not(.mark){display:block;font-size:13px;color:#4e6579;margin-top:4px}.mark{display:grid;place-items:center;width:44px;height:44px;background:var(--school-color);color:var(--school-text);border-radius:12px;font-size:28px;font-weight:700}.badge{font-size:12px;border:1px solid #c9d7e1;border-radius:20px;padding:7px 12px}.intro{padding:56px 0 24px}.eyebrow{font-size:12px;letter-spacing:1.7px;color:#416078;font-weight:700}h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1px;margin:12px 0}p{color:#4d6478;line-height:1.6}.grid{display:grid;align-items:start;grid-template-columns:1fr 1fr;gap:24px}.card{background:white;border:1px solid #d7e1e9;border-radius:16px;padding:28px}h2{font-size:22px;margin:0 0 12px}form{gap:18px;margin-top:24px}form,label{display:grid}label{font-size:14px;font-weight:600;gap:8px}input{width:100%;min-width:0;padding:12px;border:1px solid #8196a8;border-radius:7px;font:inherit}input[type=color]{height:46px;padding:4px}button{background:var(--school-color);color:var(--school-text);border:0;border-radius:7px;padding:13px 18px;font:inherit;font-weight:600;cursor:pointer}button:disabled{opacity:.6;cursor:wait}.secondary{background:#e8eff5;color:#003B6D}:focus-visible{outline:3px solid #1b85bf;outline-offset:3px}dl{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:26px 0}dt{color:#4e6579}dd{margin:0;font-weight:600}.notice{background:#e6eef6;padding:14px 18px;border-radius:8px}.muted{font-size:13px;margin-top:30px}li{padding:10px 0}summary{cursor:pointer;font-weight:600}.secret{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:#edf3f7;padding:12px;font-size:15px}footer{margin-top:36px;font-size:12px;color:#526d82;padding:16px 0}img{object-fit:contain}@media(max-width:650px){main{padding:20px 16px}.grid{grid-template-columns:1fr}.card{padding:22px}.intro{padding-top:40px}.badge{max-width:100px;text-align:center}dl{gap:14px}}