/* Neurobio — общие стили для страниц входа, регистрации и согласия */
*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#080d20;--card:#111827;--border:#1e3a5f;--t1:#E8ECF1;--t2:#8A94A6;--t3:#5A6A7A;--a1:#00E5FF;--a2:#00FFD8;--grad:linear-gradient(135deg,#00E5FF,#00FFD8);--red:#ff4d6d}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--t1);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
body::before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 25% 0%,rgba(0,229,255,.07) 0%,transparent 55%),radial-gradient(ellipse at 80% 100%,rgba(0,255,216,.05) 0%,transparent 50%);pointer-events:none;z-index:0}
.wrap{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:32px 20px}
.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:36px 32px;width:100%;max-width:440px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.card.wide{max-width:820px}
.logo{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:24px;color:var(--a1);letter-spacing:-.5px;text-decoration:none;display:inline-block;margin-bottom:8px}
.logo span{color:var(--a2)}
h1{font-size:24px;font-weight:800;margin:12px 0 6px}
.sub{font-size:14px;color:var(--t2);margin-bottom:24px}
label{display:block;font-size:13px;font-weight:600;color:var(--t2);margin:16px 0 6px}
input[type=email],input[type=password],input[type=text]{width:100%;padding:13px 16px;font-size:15px;font-family:'Inter',sans-serif;color:var(--t1);background:rgba(0,0,0,.25);border:1px solid var(--border);border-radius:12px;outline:none;transition:border-color .2s}
input:focus{border-color:var(--a1)}
.check{display:flex;gap:10px;align-items:flex-start;margin:18px 0 4px;font-size:13px;color:var(--t2);line-height:1.5}
.check input{width:18px;height:18px;margin-top:2px;accent-color:#00E5FF;flex-shrink:0}
.check a{color:var(--a1);text-decoration:none}
.check a:hover{text-decoration:underline}
.btn{display:block;width:100%;padding:14px;margin-top:22px;font-weight:700;font-size:15px;font-family:'Inter',sans-serif;color:#080d20;background:var(--grad);border:none;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .3s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,229,255,.28)}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.6;cursor:default;transform:none;box-shadow:none}
.btn-s{display:inline-block;padding:10px 22px;font-size:13px;font-weight:700;color:var(--a1);background:transparent;border:2px solid var(--a1);border-radius:50px;cursor:pointer;text-decoration:none;font-family:'Inter',sans-serif;transition:background .2s,color .2s}
.btn-s:hover{background:var(--a1);color:#080d20}
.msg{display:none;margin-top:18px;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5}
.msg.err{display:block;background:rgba(255,77,109,.12);border:1px solid rgba(255,77,109,.45);color:#ffb3c1}
.msg.ok{display:block;background:rgba(0,255,216,.1);border:1px solid rgba(0,255,216,.4);color:var(--a2)}
.alt{margin-top:22px;font-size:14px;color:var(--t2);text-align:center}
.alt a{color:var(--a1);text-decoration:none}
.alt a:hover{text-decoration:underline}
.note{margin-top:20px;font-size:12px;color:var(--t3);line-height:1.6}
.legal{position:relative;z-index:1;text-align:center;font-size:12px;color:var(--t3);padding:20px}
.legal a{color:var(--t3);text-decoration:none}
.legal a:hover{color:var(--t2)}
