
/* 校级专属登录页：仅在子域名 Host 下由 Nginx 映射到 /，不放置平台运营入口。 */
.school-login{--ink:#101a2f;--sub:#5c6a80;--line:#dfe5ee;--gold:#b8893e;--gold-deep:#96702f;--danger:#b34233}
.school-login,.school-login body{height:100%;margin:0}
.school-login body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#08101f}
.school-login .sl-bg{position:fixed;inset:0;z-index:-2;background:var(--login-bg) center/cover no-repeat;transform:scale(1.02)}
.school-login .sl-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,24,.88) 0%,rgba(5,10,24,.58) 46%,rgba(5,10,24,.30) 100%)}
.school-login .sl-shell{min-height:100%;display:flex;align-items:center;justify-content:center;padding:28px}
.school-login .sl-card{width:min(100%,450px);padding:32px 34px 24px;border-radius:20px;background:rgba(255,255,255,.95);box-shadow:0 28px 80px rgba(3,8,20,.45);backdrop-filter:blur(10px);box-sizing:border-box}
.school-login .sl-mark{display:grid;place-items:center;width:52px;height:52px;margin-bottom:16px;border-radius:15px;background:linear-gradient(145deg,#c99a4e,#a97b30);color:#fff;font-size:22px;font-weight:800;letter-spacing:.06em}
.school-login .sl-eyebrow{display:block;color:var(--gold-deep);font-size:11px;font-weight:700;letter-spacing:.14em}
.school-login h1{margin:7px 0 7px;font-size:26px;line-height:1.25;color:var(--ink)}
.school-login .sl-subtitle{margin:0;color:var(--sub);font-size:13px;line-height:1.65}
.school-login .sl-roles{display:grid;grid-template-columns:1fr;gap:9px;margin:22px 0 6px}
.school-login .sl-role{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer;text-align:left;font:inherit;transition:border-color .15s,background .15s,box-shadow .15s}
.school-login .sl-role:hover{border-color:var(--gold)}
.school-login .sl-role.on{border-color:var(--gold);background:#fdf8ee;box-shadow:0 8px 20px -14px rgba(184,137,62,.65)}
.school-login .sl-role b{font-size:14px}
.school-login .sl-role span{font-size:12px;color:var(--sub)}
.school-login .sl-status{min-height:18px;margin:8px 0 12px;color:var(--gold-deep);font-size:12px}
.school-login .sl-form label{display:block;margin:12px 0 6px;font-size:12px;font-weight:600;color:var(--ink)}
.school-login .sl-form input{width:100%;height:44px;padding:0 13px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:14px;color:var(--ink);background:#fff;outline:none;box-sizing:border-box}
.school-login .sl-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,137,62,.16)}
.school-login .sl-error{margin-top:12px;padding:10px 12px;border-radius:9px;background:#fff2ef;color:var(--danger);font-size:12.5px;line-height:1.5}
.school-login .sl-submit{width:100%;height:46px;margin-top:18px;border:0;border-radius:10px;background:linear-gradient(135deg,#c99a4e,#a97b30);color:#fff;font-size:15px;font-weight:700;letter-spacing:.08em;cursor:pointer;font-family:inherit;transition:filter .16s,opacity .16s}
.school-login .sl-submit:hover:not(:disabled){filter:brightness(1.06)}
.school-login .sl-submit:disabled{opacity:.7;cursor:wait}
.school-login .sl-foot{margin:16px 0 0;text-align:center;color:#8b95a6;font-size:11.5px;line-height:1.6}
.school-login .sl-foot a{color:var(--gold-deep);text-decoration:none}
.school-login button:focus-visible,.school-login input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media (max-width:520px){.school-login .sl-shell{padding:16px}.school-login .sl-card{padding:26px 20px 20px;border-radius:16px}.school-login h1{font-size:22px}}
