.auth-story { overflow:hidden; position:relative; }
.neural-scene { position:relative; height:280px; width:100%; max-width:500px; margin:12px auto 0; isolation:isolate; }
.neural-grid { position:absolute; inset:0; background-image:linear-gradient(#74e6db0c 1px,transparent 1px),linear-gradient(90deg,#74e6db0c 1px,transparent 1px); background-size:28px 28px; mask-image:radial-gradient(ellipse,black,transparent 70%); transform:perspective(500px) rotateX(35deg); }
.neural-halo { position:absolute; inset:25px 60px; background:radial-gradient(ellipse,#29dcb63d,transparent 65%); filter:blur(15px); animation:neural-breathe 6s ease-in-out infinite; }
.neural-ring { position:absolute; width:250px; height:180px; left:50%; top:50%; margin:-90px 0 0 -125px; border:1px solid #65e5db40; border-radius:50%; }
.neural-ring:after { content:''; position:absolute; top:17px; left:32px; width:7px; height:7px; background:#8dffe2; border-radius:50%; box-shadow:0 0 16px #68f9cf; }
.ring-one { animation:neural-orbit 24s linear infinite; }
.ring-two { width:300px; height:215px; margin:-107px 0 0 -150px; border-color:#7d9dff40; animation:neural-orbit 32s linear infinite reverse; }
.ring-three { width:180px; height:235px; margin:-117px 0 0 -90px; border-color:#65e5db25; animation:neural-orbit 40s linear infinite; }
.neural-links { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.neural-links path { stroke:#75ecd94a; fill:none; stroke-width:1; stroke-dasharray:5 12; animation:neural-flow 12s linear infinite; }
.neural-links circle { fill:#9cf7e3; filter:drop-shadow(0 0 5px #80f5dd); animation:neural-breathe 5s ease-in-out infinite; }
.neural-core { position:absolute; top:50%; left:50%; width:94px; height:108px; margin:-54px 0 0 -47px; border:1px solid #92f4df80; border-radius:24px; background:linear-gradient(145deg,#286574ee,#123447ee); box-shadow:0 0 40px #50dbb82b,inset 0 0 25px #9cffed0a; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.neural-core>span { color:#9bffe4; font-size:27px; line-height:1; }
.neural-core strong { color:#e2fff9; font-size:25px; letter-spacing:3px; margin-top:5px; }
.neural-core small { color:#85d5c8; font-size:8px; letter-spacing:2px; margin-top:5px; }
.neural-chip { position:absolute; padding:9px 13px; border:1px solid #7edacb33; border-radius:8px; background:#12364de8; color:#c9efe7; font-size:10px; letter-spacing:.5px; box-shadow:0 8px 25px #00182433; animation:neural-float 7s ease-in-out infinite; }
.chip-campus { left:3%; top:24%; }
.chip-career { right:0; top:18%; animation-delay:-2s; }
.chip-visitors { right:3%; bottom:22%; animation-delay:-4s; }
.neural-caption { position:absolute; bottom:0; width:100%; text-align:center; color:#93c5c5; font-size:10px; letter-spacing:1px; }
.motion-toggle { display:block; margin:12px auto 0; padding:6px 12px; background:transparent; border:1px solid #73bcb942; color:#aacacb; font-size:10px; border-radius:20px; }
.motion-paused *, .auth[hidden] .neural-scene * { animation-play-state:paused!important; }
.account-card summary { cursor:pointer; font-size:13px; font-weight:600; }
.account-card details[open] summary { margin-bottom:20px; }
.account-card form { max-width:420px; }
.account-card label { display:block; font-size:12px; margin:15px 0; }
.account-card input { display:block; width:100%; margin-top:7px; border:1px solid #d7dfe6; border-radius:7px; padding:12px; }
#password-message { margin-top:12px; color:#b43b42; }
@keyframes neural-orbit { from { transform:rotate(0); } to { transform:rotate(360deg); } }
@keyframes neural-flow { to { stroke-dashoffset:-170; } }
@keyframes neural-breathe { 0%,100% { opacity:.5; } 50% { opacity:1; } }
@keyframes neural-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-9px); } }
@media(max-width:650px) { .auth-story .neural-scene { height:170px; max-width:300px; } }
