/* 梦想家 · 统一登录（慧眼 v5.2.0 token；卡片 10 / 控件 6；无左侧色条；动效只有很慢的光场漂移，减少动态效果时静止） */

:root{--bg0:#03070F;--bd:rgba(120,200,235,.16);--bdHi:rgba(120,220,245,.38);--cyan:#3DDCE8;--green:#2EE6A6;--amber:#E7B04F;--red:#F06B76;
--t0:#F3F7FC;--t1:#CDD8E5;--t2:#8C9DB2;--t3:#5B6C82;--sans:'PingFang SC','Microsoft YaHei','Noto Sans SC','Noto Sans CJK SC',sans-serif;--num:'SVMono',ui-monospace,monospace}
*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg0);color:var(--t0);font:14px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.num{font-family:var(--num);font-variant-numeric:tabular-nums;letter-spacing:-.02em}[hidden]{display:none!important}
/* —— 背景：光场 + 星点 + 透视网格 + 仪表弧线 —— */
.scene{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(120% 90% at 50% 120%,#071A2C 0%,#040A15 55%,#03070F 100%)}
.field{position:absolute;inset:-20%;opacity:.75;background:
 radial-gradient(38% 42% at 24% 62%,rgba(40,190,220,.20),transparent 70%),
 radial-gradient(34% 40% at 82% 18%,rgba(98,110,240,.16),transparent 70%),
 radial-gradient(30% 30% at 70% 88%,rgba(46,230,166,.07),transparent 70%);animation:drift 48s ease-in-out infinite alternate}
@keyframes drift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(2.5%,-2%,0) scale(1.06)}}
.stars{position:absolute;inset:0;opacity:.55;background-image:
 radial-gradient(1px 1px at 12% 18%,rgba(255,255,255,.55),transparent 60%),radial-gradient(1px 1px at 72% 12%,rgba(255,255,255,.4),transparent 60%),
 radial-gradient(1px 1px at 38% 42%,rgba(180,240,255,.35),transparent 60%),radial-gradient(1px 1px at 88% 56%,rgba(255,255,255,.35),transparent 60%),
 radial-gradient(1px 1px at 58% 78%,rgba(180,240,255,.3),transparent 60%),radial-gradient(1px 1px at 22% 86%,rgba(255,255,255,.3),transparent 60%);background-size:620px 620px}
.floor{position:absolute;left:-25%;right:-25%;bottom:-8%;height:52%;transform:perspective(700px) rotateX(62deg);transform-origin:50% 100%;
 background-image:linear-gradient(rgba(120,200,235,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(120,200,235,.08) 1px,transparent 1px);background-size:64px 64px;
 -webkit-mask-image:linear-gradient(to top,#000 0%,transparent 85%);mask-image:linear-gradient(to top,#000 0%,transparent 85%)}
.rings{position:absolute;left:30%;top:50%;width:1100px;height:1100px;transform:translate(-50%,-50%);border-radius:50%;
 background:radial-gradient(circle,transparent 31%,rgba(120,210,240,.07) 31.1%,transparent 31.3%,transparent 45%,rgba(120,210,240,.05) 45.1%,transparent 45.3%,transparent 61%,rgba(120,210,240,.035) 61.1%,transparent 61.3%)}
.cv{position:absolute;inset:0;width:100%;height:100%}
@font-face{font-family:MXJ-Serif;src:url(fonts/brand-serif-bold.woff) format("woff");font-weight:700;font-display:swap}
@font-face{font-family:MXJ-Serif;src:url(fonts/brand-serif-regular.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:MXJ-Cinzel;src:url(fonts/brand-cinzel.woff) format("woff");font-weight:400 900;font-display:swap}
.rings{left:50%;top:46%}
.wrap{position:relative;z-index:1;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
header{display:flex;justify-content:space-between;align-items:center;padding:28px clamp(20px,5vw,72px)}
.logo{font:600 13px/1 MXJ-Cinzel,serif;letter-spacing:.42em;color:rgba(200,235,245,.82);text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:40px;padding:0 22px;border-radius:6px;border:1px solid var(--bdHi);color:var(--t0);text-decoration:none;font:500 14px/1 var(--sans);letter-spacing:.2em;background:rgba(10,24,40,.45);backdrop-filter:blur(8px);transition:border-color .25s,background .25s,box-shadow .25s}
.btn:hover,.btn:focus-visible{border-color:rgba(61,220,232,.75);background:rgba(20,60,80,.5);box-shadow:0 0 24px rgba(61,220,232,.18);outline:none}
.btn.big{height:54px;padding:0 44px;font-size:16px;background:linear-gradient(135deg,rgba(61,220,232,.92),rgba(46,230,166,.88));color:#03121A;border:0;font-weight:600;box-shadow:0 10px 40px rgba(61,220,232,.22)}
.btn.big:hover,.btn.big:focus-visible{box-shadow:0 12px 48px rgba(61,220,232,.38);background:linear-gradient(135deg,#5BE6F0,#4CF0B6)}
.btn.big i{font-style:normal;transition:transform .25s}.btn.big:hover i{transform:translateX(4px)}
main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 20px 40px}
.en{font:600 11px/1 MXJ-Cinzel,serif;letter-spacing:.5em;color:rgba(160,225,240,.66);text-transform:uppercase;display:flex;align-items:center;gap:18px;padding-left:.5em}
.en::before,.en::after{content:"";width:56px;height:1px;background:linear-gradient(90deg,transparent,rgba(61,220,232,.8))}.en::after{transform:scaleX(-1)}
h1{margin:18px 0 0;font:700 clamp(36px,3vw,52px)/1.05 MXJ-Serif,'Noto Serif CJK SC','Source Han Serif SC','Songti SC',serif;letter-spacing:.14em;padding-left:.14em;
 background:linear-gradient(180deg,#FFFFFF 10%,#CFE9F2 60%,#7FB9CC 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 8px 40px rgba(61,220,232,.18))}
.slogan{margin:14px 0 0;font:400 clamp(15px,1.2vw,18px)/1.6 MXJ-Serif,'Noto Serif CJK SC','Songti SC',serif;letter-spacing:.32em;padding-left:.32em;color:var(--t1)}
.cta{margin-top:36px}
footer{padding:22px;text-align:center;color:var(--t3);font-size:12px;letter-spacing:.12em}
.fade{opacity:0;animation:in 1.2s cubic-bezier(.2,.7,.2,1) forwards}.d1{animation-delay:.2s}.d2{animation-delay:.45s}.d3{animation-delay:.7s}
@keyframes in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (max-width:640px){header{padding:20px}.logo{font-size:11px;letter-spacing:.3em}.btn{height:36px;padding:0 16px}
 h1{font-size:34px;margin-top:14px}.slogan{font-size:13px;letter-spacing:.16em;padding-left:.16em;max-width:300px}.en{font-size:10px;letter-spacing:.34em;gap:12px}.en::before,.en::after{width:28px}
 .cta{margin-top:32px}.btn.big{height:50px;padding:0 36px;font-size:15px}.rings{width:760px;height:760px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.fade{opacity:1}}
