.auth-modal{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:20px 16px}.auth-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.auth-modal__backdrop:after{content:"";position:absolute;inset:0;background:radial-gradient(800px 400px at 20% 20%,rgba(179,23,42,.18),transparent 55%),radial-gradient(700px 380px at 85% 70%,rgba(216,184,120,.12),transparent 50%);pointer-events:none}.auth-modal__panel{position:relative;z-index:1;width:min(440px,100%);max-height:min(90vh,640px);overflow:auto;border-radius:22px;border:1px solid rgba(216,184,120,.38);background:linear-gradient(165deg,rgba(14,15,22,.96),rgba(7,8,13,.98));box-shadow:0 0 0 1px rgba(0,0,0,.4),0 0 40px rgba(216,184,120,.12),0 0 80px rgba(179,23,42,.08),0 28px 80px rgba(0,0,0,.65)}.auth-modal__panel:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:22px 22px 0 0;background:linear-gradient(90deg,transparent,rgba(216,184,120,.85) 25%,rgba(179,23,42,.75) 50%,rgba(216,184,120,.85) 75%,transparent);pointer-events:none}.auth-modal__panel:after{content:"";position:absolute;inset:0;border-radius:22px;pointer-events:none;opacity:.35;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 4px,transparent 4px 12px);mix-blend-mode:overlay}.auth-modal__inner{position:relative;z-index:1;padding:22px 22px 24px}.auth-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}.auth-modal__kicker{font-size:11px;letter-spacing:.14em;color:rgba(216,184,120,.95);text-shadow:0 0 18px rgba(216,184,120,.25)}.auth-modal__kicker,.auth-modal__title{font-weight:800;text-transform:uppercase}.auth-modal__title{margin:6px 0 0;font-family:var(--serif);font-size:clamp(20px,4vw,26px);letter-spacing:.12em;color:rgba(239,230,210,.98);line-height:1.2}.auth-modal__subtitle{margin:8px 0 0;font-size:13px;line-height:1.45;color:rgba(239,230,210,.62)}.auth-modal__close{flex-shrink:0;width:40px;height:40px;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.35);color:rgba(239,230,210,.88);cursor:pointer;font-size:22px;line-height:1;transition:border-color .18s ease,box-shadow .18s ease,transform .15s ease}.auth-modal__close:hover{border-color:rgba(216,184,120,.45);box-shadow:0 0 22px rgba(216,184,120,.22);transform:translateY(-1px)}.auth-modal__close:focus-visible{outline:2px solid rgba(216,184,120,.6);outline-offset:2px}.auth-modal__tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.auth-modal__tab{border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.22);color:rgba(239,230,210,.75);padding:10px 16px;cursor:pointer;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-family:var(--sans);transition:border-color .18s ease,box-shadow .18s ease,color .18s ease,transform .15s ease}.auth-modal__tab:hover{color:rgba(239,230,210,.95);border-color:rgba(216,184,120,.35)}.auth-modal__tab.is-active{border-color:rgba(179,23,42,.55);box-shadow:0 0 22px rgba(179,23,42,.2),0 0 18px rgba(216,184,120,.12);color:rgba(239,230,210,.98);background:linear-gradient(180deg,rgba(216,184,120,.12),rgba(0,0,0,.2))}.auth-modal__form{display:flex;flex-direction:column;gap:14px}.auth-modal__label{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(239,230,210,.68);margin-bottom:6px}.auth-modal__input{width:100%;box-sizing:border-box;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.35);color:rgba(239,230,210,.96);padding:12px 14px;font-size:14px;font-family:var(--sans);outline:none;transition:border-color .18s ease,box-shadow .18s ease}.auth-modal__input::placeholder{color:rgba(239,230,210,.4)}.auth-modal__input:focus{border-color:rgba(216,184,120,.5);box-shadow:0 0 0 1px rgba(216,184,120,.15),0 0 22px rgba(216,184,120,.12)}.auth-modal__error{border-radius:14px;border:1px solid rgba(255,122,143,.35);background:rgba(179,23,42,.12);color:rgba(255,200,210,.95)}.auth-modal__error,.auth-modal__success{padding:12px 14px;font-size:13px;line-height:1.45}.auth-modal__success{border-radius:14px;border:1px solid rgba(216,184,120,.35);background:rgba(216,184,120,.08);color:rgba(239,230,210,.88)}.auth-modal__submit{margin-top:4px;width:100%;border-radius:999px;border:1px solid rgba(216,184,120,.42);background:linear-gradient(180deg,rgba(216,184,120,.18),rgba(0,0,0,.25));color:rgba(239,230,210,.98);padding:14px 20px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-family:var(--sans);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .15s ease}.auth-modal__submit:hover:not(:disabled){border-color:rgba(216,184,120,.65);box-shadow:0 0 28px rgba(216,184,120,.22);transform:translateY(-1px)}.auth-modal__submit:disabled{opacity:.55;cursor:not-allowed}.auth-modal__hint{margin:0;font-size:11px;line-height:1.5;color:rgba(239,230,210,.48);text-align:center}.auth-modal__label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.auth-modal__link{appearance:none;border:none;background:transparent;padding:0;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-family:var(--sans);color:rgba(216,184,120,.92);text-decoration:underline;text-underline-offset:3px}.auth-modal__link:hover{color:rgba(239,230,210,.98)}.auth-modal__link:focus-visible{outline:2px solid rgba(216,184,120,.55);outline-offset:2px;border-radius:4px}.auth-modal__link-back{appearance:none;border:none;background:transparent;padding:8px 0;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.06em;color:rgba(216,184,120,.9);font-family:var(--sans)}.auth-modal__link-back:hover{color:rgba(239,230,210,.95);text-decoration:underline}@media (prefers-reduced-motion:reduce){.auth-modal__close,.auth-modal__submit,.auth-modal__tab{transition:none}.auth-modal__submit:hover:not(:disabled){transform:none}}