:root{--wine:#630404;--wine-dark:#260101;--ink:#20242a;--muted:#68707b;--line:#d9dde3;--white:#fff;--danger:#8b1a1a;--shadow:0 18px 50px rgba(31,25,28,.12);font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f0f1f3 0,#fafafa 100%)}*{box-sizing:border-box}body{margin:0;min-height:100vh}.auth-shell{width:min(620px,calc(100% - 32px));margin:0 auto;padding:32px 0}.brand-hero{background:linear-gradient(135deg,#7a0a0a 0%,#630404 52%,#260101 100%);color:#fff;border-radius:22px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow)}.brand-mark{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;background:#fff;color:var(--wine);font-size:20px;font-weight:800}.brand-hero p{margin:0 0 4px;font-weight:800;letter-spacing:.08em;font-size:12px}.brand-hero h1{margin:0;font-size:clamp(24px,4vw,34px)}.auth-card{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.auth-card h2{margin:0 0 8px;font-size:24px}.auth-card>p{margin:0 0 22px;color:var(--muted);line-height:1.55}label{display:grid;gap:7px;margin-top:16px}label>span:first-child{font-weight:700}input{width:100%;height:50px;border:1px solid #bfc5cd;border-radius:13px;padding:0 14px;background:#fff;font:inherit}.password-field{position:relative;display:block}.password-field input{padding-right:84px}.password-field button{position:absolute;right:8px;top:8px;height:34px;border:0;background:transparent;color:var(--wine);font-weight:700;cursor:pointer}.submit-button{width:100%;min-height:46px;margin-top:22px;border:1px solid var(--wine);border-radius:14px;padding:10px 16px;background:var(--wine);color:#fff;font-weight:700;cursor:pointer}.submit-button:hover{background:var(--wine-dark)}.submit-button:disabled{opacity:.55;cursor:wait}input:focus-visible,button:focus-visible{outline:3px solid rgba(99,4,4,.28);outline-offset:2px}.feedback{min-height:22px;margin-top:16px;color:var(--danger)}@media(max-width:600px){.auth-shell{width:min(100% - 20px,620px);padding-top:10px}.brand-hero{border-radius:18px;padding:18px}.auth-card{padding:18px;border-radius:18px}}
