*{box-sizing:border-box}
:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#253149;background:#f5f6fa;font-synthesis:none}
body{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:36px 24px;background:radial-gradient(ellipse at 5% 10%,#fce6e9 0,transparent 42%),radial-gradient(ellipse at 96% 90%,#e8edf7 0,transparent 40%),#f5f6fa}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.auth-shell{display:grid;grid-template-columns:1.05fr 1fr;width:100%;max-width:1080px;min-height:650px;background:white;border:1px solid #eceef3;border-radius:26px;overflow:hidden;box-shadow:0 24px 80px #27334614}
.auth-story{position:relative;overflow:hidden;padding:36px 40px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(145deg,#a81731,#d53042 62%,#e85759)}
.auth-story:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:40px 40px;pointer-events:none}
.auth-brand{display:inline-flex;align-items:center;gap:12px;position:relative;font-size:21px;letter-spacing:.04em;font-weight:650;align-self:flex-start}
.auth-mark{display:grid;place-items:center;width:40px;height:40px;background:#fff;color:#c1253a;border-radius:12px;font-size:35px;line-height:1;font-weight:800}
.auth-story-content{position:relative;padding-top:35px}
.auth-eyebrow{font-size:11px;letter-spacing:.16em;color:#ffe3e6;font-weight:700}
.auth-story h1{font-size:43px;letter-spacing:-.04em;line-height:1.16;margin:16px 0}
.auth-story p{font-size:14px;line-height:1.8;color:#ffe7eb;max-width:335px;margin:0}
.auth-emblem{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;height:205px;margin-top:17px}
.auth-orbit{position:absolute;width:200px;height:200px;border:1px solid #ffffff30;border-radius:50%;box-shadow:0 0 0 24px #ffffff08,0 0 0 48px #ffffff05}
.auth-emblem-number{font-size:88px;letter-spacing:-.07em;font-weight:800;line-height:1;position:relative}
.auth-pulse{font-size:26px;letter-spacing:.05em;opacity:.75;position:relative;margin-top:9px}
.auth-story-footer{position:relative;display:flex;align-items:center;gap:9px;font-size:12px;color:#ffe7eb;margin-top:28px}
.auth-status-dot{width:7px;height:7px;border-radius:50%;background:#ffe9b5;box-shadow:0 0 0 4px #ffffff12}
.auth-form-panel{display:flex;align-items:center;padding:54px 52px}
.auth-form-content{width:100%;min-width:0}
.auth-label{font-size:10px;font-weight:750;letter-spacing:.15em;color:#9a6470}
.auth-form-panel h2{font-size:36px;letter-spacing:-.04em;margin:12px 0 8px;color:#202b40}
.auth-subtitle{font-size:14px;color:#7a8496;line-height:1.6;margin:0 0 32px}
.auth-field{margin-bottom:21px}
.auth-field label{display:block;font-size:13px;font-weight:650;margin-bottom:9px}
.auth-field input{width:100%;min-width:0;padding:14px 15px;border:1px solid #dfe3eb;border-radius:10px;background:#fafbfe;color:#253149;outline:none;transition:border-color .15s,box-shadow .15s}
.auth-field input::placeholder{color:#a0a7b5;font-size:13px}
.auth-field input:focus{border-color:#c52b41;box-shadow:0 0 0 3px #c52b4112;background:#fff}
.auth-password{position:relative}
.auth-password input{padding-right:110px}
.auth-password button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;border-radius:6px;padding:8px;background:transparent;color:#9d2940;font-size:11px;font-weight:700;cursor:pointer}
.auth-submit{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:30px;padding:15px 18px;background:linear-gradient(100deg,#b91f38,#d13747);color:#fff;border:0;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 7px 16px #c52b4120;transition:transform .15s,box-shadow .15s}
.auth-submit:hover{transform:translateY(-1px);box-shadow:0 9px 20px #c52b4130}
.auth-submit span{font-size:20px;line-height:1}
.auth-back{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#7a8496;margin:24px 0}
.auth-back:hover{color:#b91f38}
.auth-footer{text-align:center;border-top:1px solid #eef0f5;padding-top:22px;margin-top:32px;font-size:11px;color:#9ba3b2}
.auth-footer span{padding:0 7px}
.auth-error{padding:12px 14px;margin-bottom:20px;border:1px solid #f3cdd3;background:#fff2f4;border-radius:10px;color:#a51e35;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
button:focus-visible,a:focus-visible{outline:3px solid #e5a7b2;outline-offset:4px}
@media(max-width:800px){body{padding:24px 16px}.auth-shell{max-width:540px;grid-template-columns:1fr;min-height:0;border-radius:20px}.auth-story{padding:25px 28px}.auth-story-content{padding-top:22px}.auth-story h1{font-size:29px;margin:10px 0}.auth-story h1 br{display:none}.auth-story p,.auth-emblem,.auth-story-footer{display:none}.auth-eyebrow{font-size:9px}.auth-form-panel{padding:32px 28px}.auth-subtitle{margin-bottom:25px}}
@media(max-width:380px){body{padding:12px}.auth-story{padding:22px}.auth-form-panel{padding:28px 22px}.auth-story h1{font-size:26px}.auth-brand{font-size:19px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}
