:root{--ink:#0f1530;--ink-soft:#3a4163;--muted:#6b7390;--line:#e6e8f2;--brand:#4659e6;--brand-700:#3a48c4;--violet:#7a3fd9;--grad:linear-gradient(135deg,#4659e6,#7a3fd9);--bg:#f5f6fc;--ok:#1f8a55;--danger:#d23b46;--ring:0 0 0 4px rgba(70,89,230,.16);--shadow:0 24px 60px -32px rgba(20,28,72,.45)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}.auth-split{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.auth-brand{position:relative;overflow:hidden;color:#fff;padding:48px 56px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(120% 90% at 15% 0%,#5a4ff0 0%,transparent 55%),radial-gradient(120% 120% at 95% 100%,#8a3fe0 0%,transparent 50%),linear-gradient(135deg,#2b2f80,#4659e6 55%,#6b3fd0)}.auth-brand:after{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 80% 20%,rgba(255,255,255,.12),transparent 60%);pointer-events:none}.auth-logo{color:#fff;font-weight:800;font-size:1.25rem;letter-spacing:-.02em;position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px}.auth-logo .dot{width:10px;height:10px;border-radius:3px;background:#fff;box-shadow:0 0 0 4px #ffffff2e}.auth-brand-mid{position:relative;z-index:1;max-width:420px}.auth-brand-mid h2{font-size:2rem;line-height:1.15;letter-spacing:-.025em;margin:0 0 14px;font-weight:800}.auth-brand-mid p{color:#ffffffd1;font-size:1.02rem;line-height:1.6;margin:0 0 26px}.auth-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px}.auth-points li{display:flex;align-items:center;gap:11px;color:#ffffffeb;font-size:.96rem}.auth-points li .ck{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#ffffff29;display:grid;place-items:center;font-size:.72rem}.auth-brand-foot{position:relative;z-index:1;color:#fff9;font-size:.82rem;margin:0}.auth-main{display:flex;align-items:center;justify-content:center;padding:40px 28px}.auth-card{width:100%;max-width:400px}.auth-card h1{font-size:1.65rem;letter-spacing:-.02em;margin:0 0 6px}.auth-sub{color:var(--muted);margin:0 0 26px;font-size:.96rem}.field{margin-bottom:15px}.field label{display:block;font-size:.85rem;font-weight:600;color:var(--ink-soft);margin-bottom:7px}.field input{width:100%;height:46px;padding:0 14px;border:1px solid var(--line);border-radius:11px;font:inherit;font-size:.96rem;background:#fff;transition:border-color .15s,box-shadow .15s}.field input:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}.field input::placeholder{color:#aab0c6}.btn-primary{width:100%;height:48px;border:none;border-radius:11px;background:var(--grad);color:#fff;font-weight:650;font-size:1rem;cursor:pointer;transition:filter .15s,transform .04s;box-shadow:0 12px 26px -14px #4659e6b3}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:active{transform:translateY(1px)}.btn-primary[disabled]{opacity:.6;cursor:default}.sso-btn{width:100%;height:46px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font-weight:600;font-size:.94rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .15s,border-color .15s}.sso-btn:hover{background:#fafbff;border-color:#d6d9ea}.sso-stack{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.8rem;margin:18px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-alt{margin:22px 0 0;font-size:.92rem;color:var(--muted);text-align:center}.auth-alt a{font-weight:600}.auth-err{background:#fdecee;border:1px solid #f6cdd2;color:var(--danger);border-radius:10px;padding:10px 13px;font-size:.88rem;margin-bottom:16px}.auth-back{display:inline-block;margin-bottom:22px;color:var(--muted);font-size:.85rem}@media(max-width:860px){.auth-split{grid-template-columns:1fr}.auth-brand{display:none}.auth-main{min-height:100vh}}
