*,*::before,*::after{box-sizing:border-box}
html,body.auth-page{margin:0;min-height:100%;background:#050506;color:#ffffff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
.auth-page{background:radial-gradient(120% 80% at 10% -10%,rgba(232,185,35,.12),transparent 55%),radial-gradient(90% 60% at 100% 100%,rgba(60,121,200,.08),transparent 50%),#050506}

.auth-shell{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1rem}
@media(min-width:1024px){.auth-shell{padding:2rem 2.5rem}}

.auth-layout{display:grid;width:100%;max-width:1120px;min-height:min(720px,calc(100dvh - 2rem));border-radius:28px;overflow:hidden;background:#0c0c0f;border:1px solid rgba(255,255,255,.06);box-shadow:0 40px 100px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.03) inset}
@media(max-width:1023px){.auth-layout{max-width:440px;min-height:0;grid-template-columns:1fr}}
@media(min-width:1024px){.auth-layout{grid-template-columns:1.15fr 1fr;min-height:620px}}

.auth-visual{display:none;position:relative;min-height:280px;overflow:hidden}
@media(min-width:1024px){.auth-visual{display:flex;align-items:center;justify-content:center}}
.auth-visual-banner{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;padding:0 1.25rem 4.5rem;opacity:.55}
.auth-visual::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 85% 70% at 50% 45%,rgba(5,5,8,.25) 0%,rgba(5,5,8,.92) 100%);pointer-events:none}
.auth-visual-center{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:1.5rem;pointer-events:none}
.auth-visual-logo{position:static;transform:none;height:3rem;width:auto;max-width:min(300px,82%);object-fit:contain;filter:drop-shadow(0 8px 28px rgba(0,0,0,.7))}
.auth-visual-trust{position:absolute;bottom:1.75rem;left:50%;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;width:calc(100% - 2rem);transform:translateX(-50%)}
.auth-trust{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:999px;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.9);background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}
.auth-trust::before{content:"";width:5px;height:5px;border-radius:50%;background:#e8b923;box-shadow:0 0 8px rgba(232,185,35,.8)}

.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem 2.25rem;background:linear-gradient(180deg,#0e0e12 0%,#0a0a0d 100%)}
@media(min-width:1024px){.auth-main{padding:2.5rem 2.75rem}}
.auth-main-logo{display:block;height:2.85rem;width:auto;max-width:min(240px,78vw);margin:0 auto 1.75rem;object-fit:contain;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}
@media(min-width:1024px){.auth-main-logo{display:none}}

.auth-card{width:100%;max-width:380px}
.auth-card-head{margin-bottom:1.5rem}
.auth-card-title{margin:0;font-size:1.75rem;font-weight:800;letter-spacing:-.04em;line-height:1.1}
.auth-card-lead{margin:.65rem 0 0;font-size:.875rem;line-height:1.5;color:rgba(255,255,255,.45);font-weight:500}

.auth-form{display:flex;flex-direction:column;gap:1rem}
.auth-field{display:flex;flex-direction:column;gap:.4rem}
.auth-label{font-size:.75rem;font-weight:600;color:rgba(255,255,255,.65);letter-spacing:.02em}
.auth-input-wrap{position:relative;display:flex;align-items:center}
.auth-input-icon{position:absolute;left:14px;width:18px;height:18px;opacity:.85;pointer-events:none;background:center/contain no-repeat}
.auth-input-wrap:has(input[name="name"]) .auth-input-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8b923' stroke-width='1.8'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E")}
.auth-input-wrap:has(input[name="email"]) .auth-input-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8b923' stroke-width='1.8'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2.5'/%3E%3Cpath d='m3.5 7 8.5 6 8.5-6'/%3E%3C/svg%3E")}
.auth-input-wrap:has(input[name="phone"]) .auth-input-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8b923' stroke-width='1.8'%3E%3Crect x='6' y='2' width='12' height='20' rx='2'/%3E%3Cpath d='M10 18h4'/%3E%3C/svg%3E")}
.auth-input-wrap:has(input[type="password"]) .auth-input-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8b923' stroke-width='1.8'%3E%3Crect x='4' y='10.5' width='16' height='10.5' rx='2.5'/%3E%3Cpath d='M7.75 10.5V7.4a4.25 4.25 0 0 1 8.5 0v3.1'/%3E%3C/svg%3E")}
.auth-input{width:100%;height:48px;padding:0 14px 0 44px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#ffffff;font-size:.9375rem;outline:none;transition:border-color .2s,background .2s,box-shadow .2s}
.auth-input::placeholder{color:rgba(255,255,255,.28)}
.auth-input:focus{border-color:rgba(232,185,35,.45);background:rgba(255,255,255,.06);box-shadow:0 0 0 3px rgba(232,185,35,.1)}
.auth-input:-webkit-autofill{-webkit-text-fill-color:#ffffff!important;box-shadow:0 0 0 1000px #141418 inset!important;border-color:rgba(232,185,35,.25)!important}

.auth-btn{display:flex;align-items:center;justify-content:center;gap:.65rem;width:100%;height:50px;margin-top:.35rem;border:0;border-radius:14px;cursor:pointer;font-size:.9375rem;font-weight:700;color:#1a1200;background:linear-gradient(135deg,#f5d565 0%,#e8b923 45%,#c9970f 100%);box-shadow:0 8px 28px rgba(232,185,35,.25),inset 0 1px 0 rgba(255,255,255,.35);transition:transform .15s,box-shadow .15s}
.auth-btn:hover{transform:translateY(-1px);box-shadow:0 12px 32px rgba(232,185,35,.32),inset 0 1px 0 rgba(255,255,255,.4)}
.auth-btn:active{transform:translateY(0)}
.auth-btn-arrow{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:rgba(26,18,0,.15);font-size:.85rem}

.auth-error{margin-bottom:1rem;padding:.75rem .9rem;border-radius:12px;font-size:.8125rem;line-height:1.4;color:#3c79c8;background:rgba(28,57,94,.35);border:1px solid rgba(60,121,200,.25)}
.auth-switch{margin:1.35rem 0 0;text-align:center;font-size:.8125rem;color:rgba(255,255,255,.45)}
.auth-switch a{color:#e8b923;font-weight:700;text-decoration:none}
.auth-switch a:hover{text-decoration:underline}
