/* Holographic legal knowledge space; decorative streams contain no live metrics. */
.brand strong{font-size:13px;line-height:1.6;letter-spacing:0}.brand-mark{flex-shrink:0}
.auth-gate{background:#030c1c;grid-template-columns:minmax(0,1.4fr) minmax(360px,1fr);isolation:isolate;overflow:auto}
.auth-gate::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 36% 45%,#0b446366,transparent 55%),linear-gradient(transparent 97%,#3dadd60c 97%),linear-gradient(90deg,transparent 97%,#3dadd60c 97%);background-size:auto,48px 48px,48px 48px;pointer-events:none}
.law-streams{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;mask-image:linear-gradient(90deg,#000e, #0009 60%,#0002)}
.law-stream{position:absolute;left:calc(var(--column)*15%);top:-150px;width:200px;transform:rotate(-12deg);opacity:.44;color:#83ddff;font:12px/2.7 ui-monospace,monospace;white-space:nowrap}
.law-stream>div{animation:law-drift calc(55s + var(--column)*9s) linear infinite;animation-delay:calc(var(--column)*-9s)}
.law-stream span,.law-stream b{display:block;font-weight:400}.law-stream span{font-weight:500;text-shadow:0 0 8px #42bdff55}.law-stream b{color:#897ffc;letter-spacing:2px;opacity:.55;font-size:10px}
@keyframes law-drift{to{transform:translateY(-50%)}}
.auth-visual{padding:40px 6vw;min-height:720px;background:none;overflow:hidden;justify-content:space-between}
.auth-visual::after{display:none}.system-signature{display:flex;align-items:center;gap:15px;color:#e8f9ff;font-size:16px;font-weight:600;z-index:2}.system-signature small{display:block;margin-top:7px;font-size:10px;letter-spacing:1.5px;font-weight:400;color:#6e9ab2}
.auth-seal{width:44px;height:44px;font-size:21px;flex-shrink:0;border-radius:12px;color:#87e8ff;border-color:#4796b580;background:#11364d66;box-shadow:0 0 24px #3bd7ff18}
.hologram{position:absolute;width:370px;height:370px;top:19%;left:26%;perspective:700px;opacity:.9}
.orbit{position:absolute;border:1px solid #39d6ff66;border-radius:50%;inset:0;box-shadow:0 0 22px #22d9ff15,inset 0 0 22px #22d9ff15}
.orbit::before,.orbit::after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:#8bedff;box-shadow:0 0 14px #48daff;left:50%;top:-3px}.orbit::after{top:auto;bottom:-3px;background:#9b91ff}
.orbit-one{animation:orbit-spin 35s linear infinite;border-style:dashed}.orbit-two{inset:28px;transform:rotateX(62deg) rotateZ(-25deg);border-width:2px}.orbit-three{inset:58px;transform:rotateY(62deg) rotateZ(35deg);border-color:#9e90ff88;animation:orbit-tilt 24s linear infinite}
@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes orbit-tilt{to{transform:rotateY(422deg) rotateZ(35deg)}}
.holo-core{position:absolute;inset:100px;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;font-size:66px;font-family:"Songti SC",serif;color:#c2f3ff;text-shadow:0 0 25px #45d9ff;background:radial-gradient(circle,#14608480,transparent 72%)}
.holo-core span{font-family:"PingFang SC",sans-serif;font-size:10px;letter-spacing:5px;margin-top:7px;color:#79bdd3;text-shadow:none}
.node{position:absolute;padding:8px 12px;border:1px solid #3787a877;background:#071b2ee6;color:#a2dded;font-size:10px;letter-spacing:2px;animation:node-glow 5s ease-in-out infinite}.node-a{top:15%;left:-15%}.node-b{right:-10%;top:45%;animation-delay:-2s}.node-c{bottom:8%;left:9%;animation-delay:-4s}
@keyframes node-glow{50%{border-color:#8cdefb;box-shadow:0 0 20px #42cfff30;transform:translateY(-5px)}}
.scan-beam{position:absolute;left:5%;right:5%;height:1px;top:10%;background:linear-gradient(90deg,transparent,#91f1ff,transparent);box-shadow:0 0 20px #28dcff;animation:scan-pass 7s ease-in-out infinite}
@keyframes scan-pass{50%{top:90%;opacity:.2}}
.hero-caption{position:relative;margin-top:350px;z-index:2}.auth-visual .hero-caption p{margin:0 0 14px;color:#85b5c8;font-size:12px;letter-spacing:4px}.auth-visual h2{font-size:clamp(42px,4vw,64px);line-height:1.16;color:#eefaff;letter-spacing:.02em;font-weight:500}.capabilities{display:flex;gap:22px;margin-top:24px;color:#86b4c9;font-size:11px}.capabilities span::before{content:"+";color:#5edaff;margin-right:7px}.visual-note{font-size:9px;color:#54788a;margin-top:24px}
.login-panel{position:relative;z-index:2;width:min(420px,calc(100% - 64px));padding:40px 34px;margin:auto;border:1px solid #4f88b14d;border-radius:18px;background:linear-gradient(135deg,#13283dce,#071322eb);backdrop-filter:blur(22px);color:#eaf5ff;box-shadow:0 30px 100px #0008,inset 0 1px 0 #92d2ff14}
.login-panel::before{content:"";position:absolute;left:28px;right:28px;top:-1px;height:1px;background:linear-gradient(90deg,transparent,#6dddff,transparent)}
.login-heading span{color:#80c1dc;font:10px ui-monospace,monospace;letter-spacing:2px}.login-heading span i{display:inline-block;width:5px;height:5px;background:#72dfff;border-radius:50%;margin-right:6px;box-shadow:0 0 10px #72dfff}.login-heading h1{font-size:29px;margin:22px 0 12px;color:#eefaff}.login-heading p{font-size:11px;line-height:1.8;color:#8aabc0;margin-bottom:32px}
.login-panel label{font-size:12px;color:#afc8d7;gap:10px;margin-bottom:22px}.login-panel input{background:#04101fc9;border:1px solid #42627c88;color:#e8faff;padding:14px;border-radius:7px;font-size:16px}.login-panel input:focus{border-color:#68d9ff;box-shadow:0 0 0 3px #43bce914}.login-panel .primary-action{padding:15px;background:linear-gradient(105deg,#3da4df,#5374d5);color:#fff;border:1px solid #91c8ff55;box-shadow:0 8px 28px #326fd533}.login-panel .login-note{font-size:11px;color:#7492a7}.login-panel .form-error{color:#ffa9a9}
@media(max-width:820px){.auth-gate{display:block}.auth-visual{padding:26px 24px 25px;min-height:360px}.system-signature{font-size:13px;gap:10px}.system-signature small{font-size:8px}.hologram{width:245px;height:245px;left:auto;right:-35px;top:110px;opacity:.55}.holo-core{inset:65px;font-size:48px}.orbit-two{inset:20px}.orbit-three{inset:35px}.hero-caption{margin-top:70px}.auth-visual .hero-caption p{font-size:10px;letter-spacing:1px}.auth-visual h2{font-size:39px}.capabilities{margin-top:17px;font-size:10px;gap:16px}.visual-note{display:none}.login-panel{width:calc(100% - 36px);max-width:460px;margin:0 auto 28px;padding:28px 25px}.login-heading h1{margin-top:15px;font-size:25px}.login-heading p{margin-bottom:22px}.law-stream{opacity:.16}.node{font-size:8px}.node-a{left:0}}
@media(max-width:820px){.law-stream{opacity:.34;font-size:11px}}
@media(prefers-reduced-motion:reduce){.law-stream>div,.orbit,.node,.scan-beam{animation:none!important}}
