/* 云澜登录页 — 与 ds.css 同一套设计令牌（登录页不加载 ds.css，故在此内联同值） */
:root{--ds-canvas:#f4f6f6;--ds-surface:#fff;--ds-ink:#1d1d1f;--ds-ink-2:#5c6670;--ds-line-2:#d2dadb;--ds-head:#0a3f47;--ds-accent:#0b6b73;--ds-accent-hover:#08575e;--ds-ring:rgba(11,107,115,.28);--ds-bad:#c2372b;--ds-warn:#b45309;--ds-warn-tint:#fdf3e7;--ds-ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--ds-canvas);font:15px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro","PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",sans-serif;color:var(--ds-ink);-webkit-font-smoothing:antialiased}
.login-card{width:min(100%,380px);background:var(--ds-surface);border-radius:16px;padding:36px 32px 28px;border:1px solid rgba(10,63,71,.06);box-shadow:0 1px 2px rgba(16,24,40,.04),0 12px 40px rgba(10,63,71,.08)}
h1{margin:0 0 24px;font-size:24px;font-weight:700;letter-spacing:.02em;color:var(--ds-head)}
.login-sub,.login-foot{color:var(--ds-ink-2);font-size:13px;margin:0 0 20px}.login-foot{margin:18px 0 0;font-size:12px}
label{display:block;font-size:13px;font-weight:600;color:var(--ds-ink-2);margin-bottom:16px}
input{display:block;width:100%;margin-top:6px;min-height:46px;padding:10px 14px;font:inherit;font-size:16px;color:var(--ds-ink);background:#fff;border:1px solid var(--ds-line-2);border-radius:10px;transition:border-color .15s var(--ds-ease),box-shadow .15s var(--ds-ease)}
input:focus{outline:none;border-color:var(--ds-accent);box-shadow:0 0 0 4px var(--ds-ring)}
button{width:100%;min-height:46px;padding:11px;font:inherit;font-size:16px;font-weight:600;border:0;border-radius:10px;background:var(--ds-accent);color:#fff;cursor:pointer;transition:background .15s var(--ds-ease),transform .15s var(--ds-ease)}
button:hover{background:var(--ds-accent-hover)}button:active{transform:scale(.985)}button:focus-visible{outline:none;box-shadow:0 0 0 4px var(--ds-ring)}button:disabled{opacity:.55;cursor:default}
.login-error{color:var(--ds-bad);min-height:1.4em;margin:0 0 10px;font-size:14px}
.login-notice{background:var(--ds-warn-tint);color:var(--ds-warn);padding:10px 12px;border-radius:10px;font-size:13px;margin:0 0 16px}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
