:root{--color-primary: #1b274c;--color-primary-2: #2a3a6a;--color-accent: #2f7bfd;--color-bg: #f5f7fb;--color-card: #ffffff;--color-text: #1b274c;--color-muted: #8088a2;--color-border: #e5e9f2;--shadow-soft: 0 24px 60px rgba(17, 26, 46, .08);--radius-card: 18px;--radius-input: 12px}*{box-sizing:border-box}body{margin:0;font-family:SF Pro Text,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;color:var(--color-text);background:radial-gradient(1200px 600px at 10% -10%,rgba(47,123,253,.14),transparent 60%),radial-gradient(900px 500px at 110% 0%,rgba(27,39,76,.12),transparent 55%),var(--color-bg)}a{color:inherit;text-decoration:none}button{font-family:inherit}.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 16px}.card{width:100%;max-width:520px;min-width:320px;background:var(--color-card);border-radius:var(--radius-card);padding:clamp(22px,4vw,36px);box-shadow:var(--shadow-soft);border:1px solid var(--color-border);max-height:88vh;overflow:auto}.card>*{max-width:420px;margin-left:auto;margin-right:auto}.card-title{font-size:24px;font-weight:720;margin:0 0 6px;letter-spacing:.1px}.brand{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--color-muted);margin-bottom:10px}.card-subtitle{font-size:13px;color:var(--color-muted);margin:0 0 24px;line-height:1.5}.divider{display:flex;align-items:center;gap:12px;color:var(--color-muted);font-size:12px;margin:22px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.input{width:100%;height:40px;border-radius:var(--radius-input);border:1px solid var(--color-border);padding:0 14px;font-size:14px;outline:none;transition:border-color .2s ease}.input:focus{border-color:var(--color-primary)}.label{font-size:13px;font-weight:600;margin-bottom:6px;display:block}.button{width:100%;height:40px;border-radius:12px;border:none;cursor:pointer;font-weight:600;font-size:14px;transition:transform .12s ease,box-shadow .2s ease}.button:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.button-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-2) 100%);color:#fff;box-shadow:0 10px 22px #1b274c38}.button-primary:hover{transform:translateY(-1px)}.button-ghost{background:#f5f7ff;color:var(--color-primary);border:1px solid #e7ebf4}.button-ghost:hover{background:#eef2ff}.row{display:flex;gap:12px}.row .button{flex:1}.notice{background:#f1f4ff;border-radius:var(--radius-input);padding:12px 14px;color:var(--color-primary);font-size:13px}.small{font-size:12px;color:var(--color-muted)}.skeleton-title{width:60%;height:20px;border-radius:10px;background:linear-gradient(90deg,#f0f2f8 25%,#e6ebf7,#f0f2f8 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;margin-bottom:16px}.skeleton-line{width:100%;height:12px;border-radius:8px;background:linear-gradient(90deg,#f0f2f8 25%,#e6ebf7,#f0f2f8 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;margin-bottom:10px}.skeleton-line.short{width:70%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 520px){.card{padding:20px;min-width:0}}
