:root{--blue:#0b6ff3;--blue2:#0756c9;--navy:#081b3d;--ink:#0b1f3a;--muted:#3c526d;--line:#cfe0f6;--soft:#f5f9ff;--red:#df2428;--green:#13a365}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{min-height:100svh;background:radial-gradient(circle at 78% 16%,rgba(11,111,243,.13),transparent 30%),radial-gradient(circle at 10% 84%,rgba(53,184,255,.10),transparent 31%),#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow:auto}
#loginCanvas{position:fixed;inset:0;width:100%;height:100%;opacity:.38;pointer-events:none}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(11,111,243,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(11,111,243,.045) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 88%);pointer-events:none}.orb{position:fixed;border-radius:50%;filter:blur(120px);opacity:.11;pointer-events:none}.orb.a{width:430px;height:430px;background:#0b6ff3;left:-170px;top:-90px}.orb.b{width:380px;height:380px;background:#35b8ff;right:-140px;bottom:-110px}
.shell{position:relative;z-index:2;min-height:100svh;display:grid;place-items:center;padding:84px 20px}.back{position:absolute;left:28px;top:25px;color:#0d2d61;font-size:13px;font-weight:800;text-decoration:none}.back:hover{color:var(--blue)}
.login-card{width:min(100%,520px);padding:42px 44px 34px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 28px 80px rgba(8,27,61,.13);backdrop-filter:blur(14px)}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.redac-code-logo{display:flex;align-items:center;gap:10px}.redac-logo-icon{width:49px;height:53px;flex:0 0 auto}.redac-logo-wordmark{display:flex;align-items:baseline;line-height:1;font-family:Arial,Helvetica,sans-serif;font-size:27px;font-weight:800;letter-spacing:-1.5px;white-space:nowrap}.redac-logo-red{color:var(--red)}.redac-logo-gray{color:#182b45}.brand-sub{margin-left:59px;color:#59708e;font-size:9px;font-weight:900;letter-spacing:.15em}
.copy{margin-top:38px}.copy>small{color:var(--blue);font-size:10px;font-weight:950;letter-spacing:.16em}.copy h1{margin:9px 0 0;color:var(--navy);font-size:40px;line-height:1.06;letter-spacing:-.048em}.copy p{margin:13px 0 0;color:#344d6d;font-size:16px;line-height:1.7;font-weight:500}
form{display:grid;gap:17px;margin-top:32px}label{display:grid;gap:8px;color:#17365f;font-size:12px;font-weight:900}input{width:100%;height:54px;border:1px solid #b7cff1;border-radius:12px;outline:0;padding:0 15px;color:var(--navy);background:#fff;font:inherit;font-size:16px;transition:.18s}input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(11,111,243,.11)}button{height:54px;margin-top:4px;border:0;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--blue);color:#fff;font-weight:950;font-size:15px;cursor:pointer;box-shadow:0 14px 32px rgba(11,111,243,.22);transition:.18s}button:hover{transform:translateY(-1px);background:var(--blue2)}button:disabled{opacity:.6;cursor:wait}.error{min-height:18px;margin:0;color:#bd3342;font-size:12px;text-align:center}.note{margin-top:25px;padding-top:18px;border-top:1px solid #e0ebf9;color:#48617f;font-size:11px;text-align:center}.note span{color:var(--green)}.legal{position:absolute;bottom:22px;color:#667d98;font-size:10px}
@media(max-width:560px){.login-card{padding:31px 23px}.copy h1{font-size:34px}.copy p{font-size:15px}.back{left:18px}.shell{padding:72px 14px}.redac-logo-wordmark{font-size:22px}.redac-logo-icon{width:42px;height:46px}.brand-sub{margin-left:52px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
