/* 登录与注册页：与宣传页共用蓝紫品牌色，移动端单列 */
.auth-page { position:relative; min-height:100vh; overflow:hidden; background:#f4f7fd; color:#1a2641; }.auth-orb { position:absolute; border-radius:50%; filter:blur(1px); pointer-events:none; }.auth-orb-a { width:650px;height:650px;left:-270px;top:-220px;background:radial-gradient(circle,#d5e6ff 0%,rgba(213,230,255,.35) 45%,transparent 72%); }.auth-orb-b { width:760px;height:760px;right:-330px;bottom:-370px;background:radial-gradient(circle,#e5d9ff 0%,rgba(229,217,255,.34) 44%,transparent 72%); }.auth-grid { position:relative;z-index:1;display:grid;grid-template-columns:minmax(380px,1.02fr) minmax(420px,.98fr);min-height:100vh;max-width:1370px;margin:0 auto; }.auth-intro { position:relative;display:flex;flex-direction:column;padding:44px 7vw 38px 7vw;background:linear-gradient(145deg,rgba(255,255,255,.35),rgba(235,243,255,.26)); }.auth-intro-brand { display:flex;align-items:center;gap:14px; }.auth-logo { display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;border-radius:16px;color:#fff;font-size:19px;font-weight:800;background:linear-gradient(145deg,#1b7bf5,#5155eb 58%,#7b40dc);box-shadow:0 12px 24px rgba(54,91,217,.22); }.auth-intro-brand b { display:block;color:#202c48;font-size:20px; }.auth-intro-brand small { display:block;margin-top:5px;color:#98a3b8;font-size:11px;letter-spacing:.16em; }.auth-intro-copy { margin:auto 0;max-width:550px;padding:80px 0 74px; }.auth-eyebrow { color:#4d7be3;font-size:11px;font-weight:750;letter-spacing:.2em; }.auth-intro-copy h1 { margin:18px 0 22px;color:#132143;font-size:49px;line-height:1.23;letter-spacing:-.055em; }.auth-intro-copy h1 em { font-style:normal;background:linear-gradient(105deg,#1c6eea,#6752eb);-webkit-background-clip:text;background-clip:text;color:transparent; }.auth-intro-copy p { max-width:475px;margin:0;color:#65748f;font-size:16px;line-height:1.9; }.auth-points { display:flex;flex-wrap:wrap;gap:13px 22px;margin-top:30px;color:#5c6b84;font-size:13px; }.auth-points i { display:inline-flex;width:19px;height:19px;align-items:center;justify-content:center;margin-right:6px;border-radius:50%;color:#fff;background:#377aeb;font-style:normal;font-size:11px; }.auth-intro-footer { margin-top:auto;color:#8997ac;font-size:11px; }.auth-shield { display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;margin-right:7px;border-radius:8px;color:#289a78;background:#e3f7ef;font-size:17px;vertical-align:middle; }.auth-panel { display:flex;flex-direction:column;justify-content:center;align-items:center;padding:45px 7vw 25px;background:rgba(255,255,255,.42); }.auth-card { width:100%;max-width:430px;padding:34px 38px 28px;border:1px solid rgba(255,255,255,.9);border-radius:24px;background:rgba(255,255,255,.79);box-shadow:0 23px 68px rgba(50,75,143,.13);backdrop-filter:blur(20px); }.auth-card-head { display:flex;align-items:center;gap:14px; }.auth-card-icon { display:inline-flex;width:45px;height:45px;align-items:center;justify-content:center;border-radius:14px;color:#fff;font-weight:800;background:linear-gradient(145deg,#2179f1,#6751e8);box-shadow:0 8px 16px rgba(48,105,230,.22); }.auth-card h2 { margin:0;color:#1e2a46;font-size:23px;letter-spacing:-.03em; }.auth-card-head p { margin-top:5px;color:#97a1b3;font-size:12px; }.auth-tabs { display:flex;gap:24px;margin:28px 0 20px;border-bottom:1px solid #e8ecf3; }.auth-tabs button { position:relative;padding:0 2px 12px;border:0;background:transparent;color:#9ba5b8;cursor:pointer;font-size:14px; }.auth-tabs button.on { color:#236be3;font-weight:650; }.auth-tabs button.on:after { content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;border-radius:2px;background:#236be3; }.auth-field { display:block;margin-top:15px; }.auth-field>span { display:block;margin:0 0 7px;color:#596983;font-size:12px;font-weight:600; }.auth-field>span small { margin-left:5px;color:#a8b0be;font-weight:400; }.auth-field>div { display:flex;align-items:center;height:47px;padding:0 13px;border:1px solid #e5eaf2;border-radius:11px;background:#f7f9fc;transition:.16s; }.auth-field>div:focus-within { border-color:#6c9cf0;background:#fff;box-shadow:0 0 0 4px rgba(55,122,235,.11); }.auth-field i { width:23px;color:#8ea1c0;font-style:normal;font-size:15px;text-align:center; }.auth-field input { width:100%;height:100%;padding:0 5px;border:0;outline:0;background:transparent;color:#273550;font:inherit;font-size:14px; }.auth-field input::placeholder { color:#b0b8c5; }.auth-error,.auth-notice { margin-top:13px;padding:9px 11px;border-radius:9px;font-size:12px;line-height:1.5; }.auth-error { color:#c5535b;background:#fff1f2; }.auth-notice { color:#217e62;background:#eaf8f2; }.auth-submit { display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:49px;margin-top:19px;border:0;border-radius:12px;color:#fff;background:linear-gradient(105deg,#1c75ef,#4e55e7);box-shadow:0 11px 22px rgba(48,104,229,.25);cursor:pointer;font-size:15px;font-weight:650;transition:.16s; }.auth-submit b { font-size:20px;font-weight:400; }.auth-submit:hover { transform:translateY(-1px);box-shadow:0 14px 25px rgba(48,104,229,.31); }.auth-submit:disabled { opacity:.58;cursor:not-allowed;transform:none; }.auth-hint { margin-top:18px;color:#a3adbc;text-align:center;font-size:11px;line-height:1.6; }.auth-foot { margin-top:21px;color:#a5adba;font-size:11px;letter-spacing:.08em; }
/* 工作台移动统计卡对齐参考图：两列、大数字、柔和阴影 */
@media (max-width:900px) { .stat-cards { gap:10px; }.stat-card { min-height:145px; padding:15px 13px; border-radius:18px; }.stat-card .value { margin-top:15px; font-size:22px; letter-spacing:-.04em; }.stat-card .sub { font-size:12px; }.dash-hello .dh-title { font-size:28px; letter-spacing:-.06em; }.dash-hello .dh-sub { margin-top:7px; }.warn-banner { border-radius:17px; line-height:1.55; }.quick-grid { gap:9px; }.qg-item { border-radius:16px; } }
@media (max-width:760px) { .auth-grid { display:block;min-height:100vh; }.auth-intro { min-height:270px;padding:24px 22px 28px; }.auth-intro-copy { margin:42px 0 0;padding:0; }.auth-intro-copy h1 { margin:12px 0 10px;font-size:30px; }.auth-intro-copy p { font-size:13px;line-height:1.65; }.auth-points { margin-top:15px;gap:8px 14px;font-size:11px; }.auth-intro-footer { display:none; }.auth-panel { min-height:calc(100vh - 270px);padding:28px 18px 22px;background:rgba(255,255,255,.5); }.auth-card { max-width:470px;padding:27px 22px 22px;border-radius:20px; }.auth-card h2 { font-size:20px; }.auth-foot { margin-top:15px; }.auth-logo { width:43px;height:43px;flex-basis:43px;border-radius:13px;font-size:16px; }.auth-intro-brand b { font-size:17px; }.auth-intro-brand small { font-size:9px; }.auth-eyebrow { font-size:9px; } }
.auth-back { display:block;margin:18px auto 0;padding:0;border:0;background:transparent;color:#6e86b3;cursor:pointer;font-size:12px; }.auth-back:hover { color:#236be3; }
.auth-platform-link { display:block; margin:10px auto 0; padding:0; border:0; background:transparent; color:#9aa5b8; cursor:pointer; font-size:11px; }.auth-platform-link:hover { color:#4d6eb5; }
.dash { position:relative; max-width:1320px; margin:0 auto; padding-bottom:34px; }.dash:before { content:""; position:absolute; z-index:-1; width:520px; height:340px; right:-130px; top:-95px; border-radius:50%; background:radial-gradient(circle,rgba(150,183,255,.17),transparent 70%); filter:blur(10px); pointer-events:none; }
.dash-hero { position:relative; display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:146px; margin:2px 0 18px; padding:28px 30px; overflow:hidden; border-radius:22px; color:#fff; background:linear-gradient(115deg,#236fe5 0%,#4d61e9 58%,#7654dc 100%); box-shadow:0 19px 38px rgba(56,93,205,.2); }.dash-hero-copy,.dash-hero-actions { position:relative; z-index:2; }.dash-eyebrow { display:block; margin-bottom:10px; color:rgba(255,255,255,.67); font-size:10px; font-weight:700; letter-spacing:.2em; }.dash-hero .dh-title { margin:0; color:#fff; font-size:30px; font-weight:760; letter-spacing:-.06em; }.dash-hero .dh-sub { margin-top:8px; color:rgba(255,255,255,.76); font-size:12px; }.dash-hero-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.dash-hero-actions button { min-height:38px; padding:0 13px; border:1px solid rgba(255,255,255,.23); border-radius:10px; color:#fff; background:rgba(255,255,255,.14); cursor:pointer; font-size:12px; backdrop-filter:blur(8px); }.dash-hero-actions button:hover { background:rgba(255,255,255,.24); }.dash-hero-actions button.ghost { background:rgba(17,41,120,.18); }.dash-hero-actions i { margin-right:5px; font-style:normal; font-size:15px; }.dash-hero-orb { position:absolute; width:270px; height:270px; right:110px; top:-150px; border-radius:50%; border:1px solid rgba(255,255,255,.14); box-shadow:0 0 0 25px rgba(255,255,255,.04),0 0 0 52px rgba(255,255,255,.03); }
.dash-section-label { display:flex; align-items:baseline; gap:10px; margin:21px 2px 11px; }.dash-section-label span { color:#273654; font-size:15px; font-weight:700; }.dash-section-label small { color:#9aa6b9; font-size:11px; }.dash-stat-grid { grid-template-columns:repeat(4,1fr); gap:13px; }.dash-stat-grid .stat-card { position:relative; min-height:132px; overflow:hidden; border:1px solid rgba(65,92,150,.07); border-radius:17px; box-shadow:0 8px 24px rgba(44,69,122,.07); }.dash-stat-grid .stat-card:before { content:""; position:absolute; left:0; top:0; right:0; height:3px; background:linear-gradient(90deg,#3c88f4,#6258e6); }.dash-stat-grid .stat-card:nth-child(2):before { background:linear-gradient(90deg,#35b9c3,#467be8); }.dash-stat-grid .stat-card:nth-child(3):before { background:linear-gradient(90deg,#f0a14d,#ef6b75); }.dash-stat-grid .stat-card:nth-child(4):before { background:linear-gradient(90deg,#6b62ea,#a34ed5); }.dash-stat-grid .stat-card:nth-child(5):before { background:linear-gradient(90deg,#30b88c,#3d87e9); }.dash-stat-grid .stat-card:nth-child(6):before { background:linear-gradient(90deg,#4c83f2,#37b5c4); }.dash-stat-grid .stat-card:nth-child(7):before { background:linear-gradient(90deg,#f1a044,#ed6d71); }.dash-stat-grid .stat-card:nth-child(8):before { background:linear-gradient(90deg,#7a66e9,#5b75ee); }.dash-stat-grid .stat-card:hover { transform:translateY(-3px); box-shadow:0 16px 30px rgba(44,69,122,.12); transition:.18s; }.dash-stat-grid .sc-head .label { font-size:12px; }.dash-stat-grid .value { margin-top:15px; font-size:24px; letter-spacing:-.05em; }.dash-stat-grid .sub { margin-top:6px; color:#9aa5b7; font-size:11px; }.dash-todo-row { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin:14px 0 19px; }.dash-todo-card { display:flex; align-items:center; gap:11px; padding:14px 15px; border:1px solid #e9edf5; border-radius:15px; background:rgba(255,255,255,.82); box-shadow:0 6px 18px rgba(44,69,122,.05); }.dash-todo-icon { display:inline-flex; width:31px; height:31px; flex:0 0 31px; align-items:center; justify-content:center; border-radius:10px; color:#fff; font-size:16px; font-weight:700; }.dash-todo-icon.warn { background:linear-gradient(145deg,#f3b44b,#ec7a63); }.dash-todo-icon.blue { background:linear-gradient(145deg,#377ff0,#5c5be6); }.dash-todo-card b { display:block; color:#33415f; font-size:13px; }.dash-todo-card small { display:block; margin-top:4px; color:#95a0b2; font-size:10px; }.dash-todo-card button { margin-left:auto; border:0; color:#4d77d5; background:transparent; cursor:pointer; font-size:11px; white-space:nowrap; }
@media (max-width:1100px) { .dash-stat-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:700px) { .dash { padding-bottom:20px; }.dash-hero { display:block; min-height:0; padding:22px 20px; border-radius:19px; }.dash-hero .dh-title { font-size:25px; }.dash-hero-actions { justify-content:flex-start; margin-top:18px; }.dash-hero-actions button { min-height:35px; font-size:11px; }.dash-hero-orb { right:-80px; top:-110px; }.dash-section-label { margin-top:18px; }.dash-stat-grid { grid-template-columns:repeat(2,1fr); gap:10px; }.dash-stat-grid .stat-card { min-height:132px; }.dash-stat-grid .value { font-size:20px; }.dash-todo-row { grid-template-columns:1fr; gap:9px; }.dash-todo-card { padding:12px; }.dash .section-title { font-size:14px; }.dash .trend-chart { min-height:168px; } }
