.auth-shell{min-height:100vh;align-content:start;gap:1.5rem;min-block-size:100dvh;padding:1.2rem;animation:.5s ease-out both auth-fade-up;display:grid}.auth-local-header,.auth-card{width:min(100%,720px);margin:0 auto}.auth-local-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.auth-brand{color:var(--auth-text-strong,var(--color-text-primary));align-items:start;gap:.25rem;text-decoration:none;display:grid}.auth-brand__logo{width:8.5rem;height:auto}.auth-brand__caption{font-family:var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--auth-text-muted,var(--color-text-secondary));font-size:.72rem}.auth-back-link{font-family:var(--font-ui);color:var(--auth-link-color,var(--color-text-secondary));text-underline-offset:.2rem;font-size:.8rem;font-weight:600}.auth-card{background:var(--auth-surface-card,var(--color-surface-primary));border:1px solid var(--auth-border,var(--color-border-subtle));box-shadow:var(--auth-shadow-card,var(--shadow-subtle));border-radius:1.15rem;gap:1.25rem;padding:1.45rem;animation:.6s ease-out both auth-fade-up;display:grid;position:relative;overflow:hidden}.auth-card:before{content:"";background:radial-gradient(circle, rgb(var(--color-action-accent-rgb)/20%) 0%, transparent 68%);pointer-events:none;height:160%;animation:8s ease-in-out infinite auth-orb-drift;position:absolute;inset:-120% 35% auto -35%;transform:translate(0,0)}.auth-card--narrow{max-width:500px}.auth-kicker{font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--auth-text-muted,var(--color-text-secondary));margin:0;font-size:.68rem;font-weight:600}.auth-copy h1{letter-spacing:-.01em;color:var(--auth-text-heading,var(--color-text-primary));margin:0;font-size:clamp(1.95rem,3.2vw,2.7rem);line-height:1.08}.auth-copy p{color:var(--auth-text-body,var(--color-text-secondary));font-family:var(--font-ui);max-width:40ch;margin:.35rem 0 0;font-size:.9rem;line-height:1.45}.auth-tabs{border:1px solid var(--auth-tabs-border,var(--color-border-subtle));background:var(--auth-tabs-bg,#ffffffb8);border-radius:.9rem;grid-template-columns:1fr 1fr;gap:.35rem;padding:.35rem;display:grid}.auth-tabs button{font-family:var(--font-ui);color:var(--auth-tab-text,var(--color-text-secondary));cursor:pointer;background:0 0;border:none;border-radius:.62rem;padding:.68rem .7rem;font-size:.9rem;font-weight:700;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s}.auth-tabs button.is-active{background:var(--auth-tab-active-bg,var(--color-action-primary));color:var(--auth-tab-active-text,var(--color-text-on-dark));box-shadow:var(--auth-tab-active-shadow,none)}.auth-tabs button:hover:not(.is-active){transform:translateY(-1px)}.auth-panel{display:block}.auth-panel--hidden{display:none}.auth-form{gap:.9rem;display:grid}.auth-field{gap:.45rem;display:grid}.auth-field label{font-family:var(--font-ui);color:var(--auth-label-color,var(--color-text-primary));letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;font-weight:700}.auth-field input,.auth-field select{border:1px solid var(--auth-input-border,var(--color-border-subtle));font-family:var(--font-ui);color:var(--auth-input-text,var(--color-text-primary));background:var(--auth-input-bg,var(--color-surface-primary));border-radius:.62rem;padding:.76rem .82rem;font-size:1rem;line-height:1.3;transition:border-color .2s,box-shadow .2s}.auth-field input[aria-invalid=true],.auth-field select[aria-invalid=true]{border-color:var(--auth-error,var(--color-state-danger));box-shadow:0 0 0 3px color-mix(in srgb, var(--auth-error,var(--color-state-danger)) 13%, transparent)}.auth-hint{font-family:var(--font-ui);color:var(--auth-text-muted,var(--color-text-secondary));margin:0;font-size:.74rem;line-height:1.35}.field-error{min-height:1rem;font-family:var(--font-ui);color:var(--auth-error,var(--color-state-danger));margin:0;font-size:.74rem;font-weight:600;line-height:1.3}.auth-submit{background:var(--auth-button-bg,var(--color-action-primary));color:var(--auth-button-text,var(--color-text-on-dark));font-family:var(--font-ui);letter-spacing:.01em;cursor:pointer;box-shadow:var(--auth-button-shadow,none);border:none;border-radius:.72rem;margin-top:.5rem;padding:.9rem 1rem;font-size:.95rem;font-weight:700;transition:transform .2s,box-shadow .2s,filter .2s}.auth-submit:hover:not(:disabled){box-shadow:var(--auth-button-shadow-hover,var(--auth-button-shadow,none));filter:saturate(1.06);transform:translateY(-1px)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.auth-actions{gap:.75rem;display:grid}.auth-secondary{border:1px solid var(--auth-border,var(--color-border-subtle));color:var(--auth-link-color,var(--color-text-secondary));font-family:var(--font-ui);cursor:pointer;background:0 0;border-radius:.72rem;padding:.88rem 1rem;font-size:.92rem;font-weight:700;transition:border-color .2s,color .2s,background-color .2s}.auth-secondary:hover:not(:disabled){border-color:color-mix(in srgb, var(--auth-link-color,white) 52%, transparent);background:color-mix(in srgb, var(--auth-link-color,white) 7%, transparent)}.auth-secondary:disabled{opacity:.6;cursor:not-allowed}.auth-status{min-height:1.3rem;font-family:var(--font-ui);border:1px solid #0000;border-radius:.72rem;margin:0;padding:.78rem .9rem;font-size:.83rem;line-height:1.45;animation:.35s ease-out both auth-fade-up}.auth-status[data-tone=info]{color:var(--auth-status-info-text,var(--color-text-secondary));background:var(--auth-status-info-bg,#ffffff9e);border-color:var(--auth-status-info-border,var(--auth-border,var(--color-border-subtle)))}.auth-status[data-tone=success]{color:color-mix(in srgb, var(--color-state-success), black 40%);background:color-mix(in srgb, var(--color-state-success) 8%, white);border-color:color-mix(in srgb, var(--color-state-success) 15%, transparent)}.auth-status[data-tone=error]{color:color-mix(in srgb, var(--color-state-danger), black 30%);background:color-mix(in srgb, var(--color-state-danger) 8%, white);border-color:color-mix(in srgb, var(--color-state-danger) 15%, transparent)}.auth-back-link:focus-visible,.auth-brand:focus-visible,.auth-tabs button:focus-visible,.auth-field input:focus-visible,.auth-field select:focus-visible,.auth-submit:focus-visible,.auth-secondary:focus-visible{outline:2px solid var(--auth-focus-ring,rgb(var(--color-action-accent-rgb)));outline-offset:2px}.auth-field input:focus-visible,.auth-field select:focus-visible{border-color:var(--auth-focus-ring,rgb(var(--color-action-accent-rgb)));box-shadow:0 0 0 3px color-mix(in srgb, var(--auth-focus-ring,white) 22%, transparent)}@media (width>=768px){.auth-shell{align-content:center;padding:2.5rem 2.25rem}.auth-brand__logo{width:10rem}.auth-card{gap:1.35rem;padding:1.9rem}.auth-tabs button{font-size:.94rem}}@media (prefers-reduced-motion:reduce){.auth-shell,.auth-card,.auth-status,.auth-card:before{animation:none}.auth-tabs button,.auth-submit,.auth-secondary{transition:none}}@keyframes auth-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-orb-drift{0%{opacity:.35;transform:translate(-2%)}50%{opacity:.75;transform:translate(4%,6%)}to{opacity:.35;transform:translate(-2%)}}.qr-placeholder{min-height:250px;color:var(--color-surface-dark);text-align:center;background:#fff;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;margin:1.5rem 0;padding:2rem;display:flex}.loader{border-top:3px solid var(--color-action-accent);border-radius:50%;width:30px;height:30px;margin-bottom:1rem;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
