:root{font-family:Helvetica Neue,Arial,sans-serif;--text-primary:#0f172a;--text-secondary:#475569;--surface:rgba(255,255,255,0.9);--surface-border:rgba(148,163,184,0.24);--shadow:0 24px 60px rgba(15,23,42,0.14);--action:#0f172a;--action-hover:#020617;--success-soft:#dcfce7;--success-ink:#166534;--warning-soft:#ffedd5;--warning-ink:#9a3412;--error-soft:#fee2e2;--error-ink:#b91c1c;--info-soft:#e0ecff;--info-ink:#1d4ed8}*{box-sizing:border-box}body{margin:0;color:var(--text-primary);background:linear-gradient(145deg,#f7f8fc,#edf1f8);min-height:100vh}a{color:inherit}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px 16px 40px}.auth-shell--plain{background:radial-gradient(75% 70% at 12% 5%,rgba(59,130,246,.1),transparent 64%),radial-gradient(68% 74% at 92% 98%,rgba(15,23,42,.08),transparent 64%),linear-gradient(160deg,#f4f7fc,#eef2f8 58%,#ecf0f6)}.auth-shell--warm{background:radial-gradient(120% 90% at 90% 0,rgba(56,189,248,.14),transparent 55%),radial-gradient(100% 80% at 0 100%,rgba(251,191,36,.14),transparent 60%)}.auth-shell--transition{background:transparent}.auth-shell--callback{display:block;min-height:calc(100vh - 56px);padding:clamp(42px,8vh,92px) 0 44px;background:radial-gradient(120% 90% at 84% 0,rgba(59,130,246,.12),transparent 56%),radial-gradient(90% 70% at 0 100%,rgba(15,23,42,.08),transparent 64%),linear-gradient(160deg,#f5f7fc,#ecf2fb)}.auth-card{width:min(680px,95vw);background:var(--surface);border:1px solid var(--surface-border);border-radius:20px;padding:clamp(20px,3vw,32px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-card--compact{width:min(560px,94vw)}.auth-card--clerk{width:min(980px,96vw)}.auth-status-card{width:min(380px,92vw);padding:26px 24px 22px;border-radius:22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;border:1px solid rgba(15,23,42,.09);background:rgba(255,255,255,.94);box-shadow:0 24px 50px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth-status-card__logo{width:clamp(56px,14vw,70px);aspect-ratio:1/1;border-radius:16px;overflow:hidden;border:0;box-shadow:none}.auth-status-card__logo img{display:block;width:100%;height:100%;object-fit:cover}.auth-entry-logo{margin:0 auto 14px}.auth-status-card__title{margin:2px 0 0;font-size:clamp(1.68rem,3.7vw,1.95rem);line-height:1.08;letter-spacing:-.026em;font-weight:700}.auth-status-card__description{margin:0;color:var(--text-secondary);font-size:.94rem;line-height:1.45;max-width:30ch}.auth-status-card__status{margin:4px 0 0;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:1.02rem;line-height:1.35;font-weight:610;color:var(--text-primary);text-align:center;min-height:2.7em}.auth-status-card__status--neutral{color:#27364e}.auth-status-card__status--success{color:#0e7a46}.auth-status-card__status--error{color:#b42318}.auth-status-card__actions{margin-top:8px;width:100%;display:flex;flex-direction:column;align-items:center;gap:12px;min-height:96px}.auth-status-card__actions-placeholder{display:block;width:100%;min-height:1px}.auth-status-card__actions .auth-button{width:100%}.auth-heading{display:grid;grid-gap:10px;gap:10px;justify-items:center;text-align:center;margin-bottom:4px}.auth-title{margin:10px 0 0;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.2;letter-spacing:-.02em}.auth-title--compact{margin-top:0;font-size:clamp(1.45rem,2.2vw,1.9rem)}.auth-subtitle{margin:10px 0 0;color:var(--text-secondary);line-height:1.5}.auth-subtitle--content{margin-top:2px}.status-pill{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;letter-spacing:.02em}.status-pill--success{background:var(--success-soft);color:var(--success-ink)}.status-pill--warning{background:var(--warning-soft);color:var(--warning-ink)}.status-pill--error{background:var(--error-soft);color:var(--error-ink)}.status-pill--info{background:var(--info-soft);color:var(--info-ink)}.auth-panel{margin-top:18px;padding-top:16px;border-top:1px solid rgba(148,163,184,.22)}.auth-inline-message{margin-top:14px;display:inline-flex;align-items:center;gap:10px;color:var(--text-secondary)}.auth-spinner{width:16px;height:16px;border-radius:999px;border:2px solid rgba(30,41,59,.18);border-top-color:#1d4ed8;animation:auth-spin .85s linear infinite}@keyframes auth-spin{to{transform:rotate(1turn)}}.auth-success{margin:0;color:var(--success-ink);font-weight:600}.auth-meta{margin:10px 0 0;color:var(--text-secondary);font-size:.92rem}.auth-error{margin:0;color:var(--error-ink);font-weight:600}.auth-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}.auth-actions--stack{flex-direction:column;align-items:flex-start}.auth-actions--center{justify-content:center;align-items:center}.auth-actions--column{flex-direction:column;align-items:flex-start}.auth-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:10px;border:1px solid var(--action);background:var(--action);color:#fff;cursor:pointer;text-decoration:none;font-size:.92rem;font-weight:600;padding:10px 14px;line-height:1.2;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.auth-button:hover{background:var(--action-hover);border-color:var(--action-hover);transform:translateY(-1px)}.auth-button:active{transform:translateY(0)}.auth-button--wide{min-width:230px;justify-content:center;display:inline-flex}.auth-button--ghost{background:transparent;color:var(--text-primary);border-color:rgba(15,23,42,.2)}.auth-button--ghost:hover{background:rgba(148,163,184,.16);border-color:rgba(15,23,42,.28)}.auth-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.9rem;padding:0;text-decoration:none}.auth-link:hover{color:var(--text-primary)}.auth-stack{width:min(680px,94vw);min-height:clamp(380px,64vh,700px);margin-inline:auto;padding:clamp(30px,7vh,84px) 16px;display:flex;flex-direction:column;text-align:center;gap:clamp(30px,6vh,64px)}.auth-stack,.auth-stack__logo{align-items:center;justify-content:center}.auth-stack__logo{display:inline-flex;width:clamp(58px,6vw,72px);height:clamp(58px,6vw,72px);border-radius:16px;border:1px solid rgba(15,23,42,.16);background:rgba(255,255,255,.76);color:#0f172a;font-size:clamp(.76rem,1.3vw,.9rem);font-weight:800;letter-spacing:.12em}.auth-stack__title{margin:0;font-size:clamp(2.7rem,5.8vw,5.4rem);line-height:1.01;letter-spacing:-.034em}.auth-stack__status{margin:0;color:var(--text-secondary);font-size:clamp(1.05rem,2vw,1.4rem);line-height:1.35;min-height:1.35em}.auth-stack__status--loading{display:inline-flex;align-items:center;gap:12px}.auth-stack__status--success{color:var(--success-ink);font-weight:650}.auth-stack__status--error{color:var(--error-ink);font-weight:650}.auth-stack__actions{display:flex;flex-direction:column;align-items:center;gap:20px;min-height:92px}.auth-stack__button{min-width:min(320px,88vw)}.auth-stack__link{font-size:1rem;line-height:1.2}.auth-callback{width:100%;max-width:1440px;margin:0 auto;padding-inline:clamp(32px,8vw,156px);display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(320px,.85fr);grid-gap:clamp(36px,6vw,120px);gap:clamp(36px,6vw,120px);align-items:start}.auth-callback-main,.auth-callback-panel{display:flex;flex-direction:column;align-items:flex-start}.auth-callback-panel{gap:0;padding-top:14px;padding-left:18px;border-left:2px solid rgba(15,23,42,.12)}.auth-callback-kicker{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(15,23,42,.58);font-weight:700}.auth-callback-title{margin:8px 0 0;font-size:clamp(2.4rem,4.8vw,4.4rem);line-height:1.04;letter-spacing:-.03em;max-width:9ch}.auth-callback-subtitle{margin:14px 0 0;color:var(--text-secondary);font-size:1.12rem;line-height:1.5;max-width:40ch}.auth-callback-state{margin-top:8px;display:inline-flex;align-items:center;gap:10px;color:var(--text-secondary)}.auth-callback-note{margin:2px 0 0;color:var(--text-secondary);font-size:1.02rem}.auth-callback-success{color:var(--success-ink);font-size:1.05rem}.auth-callback-error,.auth-callback-success{margin:2px 0 0;font-weight:600;max-width:26ch}.auth-callback-error{color:var(--error-ink);font-size:1.02rem}.callback-link{display:block;margin-top:14px;padding:8px 10px;border-radius:8px;border:1px solid rgba(148,163,184,.32);background:rgba(248,250,252,.82);color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.4;white-space:nowrap;overflow-x:auto}.auth-clerk-wrap{width:100%;display:flex;justify-content:center;margin-top:8px}@media (max-width:680px){.auth-shell{min-height:100vh;padding:18px 12px 32px}.auth-shell--callback{padding:28px 0 26px}.auth-card{border-radius:16px;padding:20px 16px}.auth-status-card{width:min(380px,94vw);border-radius:18px;padding:22px 16px 18px}.auth-status-card__title{font-size:1.56rem}.auth-status-card__description{font-size:.9rem}.auth-status-card__actions{min-height:88px}.auth-actions{flex-direction:column}.auth-button{width:100%;text-align:center}.auth-button--wide{min-width:0;width:min(320px,100%)}.auth-stack{width:min(520px,94vw);min-height:calc(100vh - 150px);padding:22px 8px 34px;gap:24px}.auth-stack__title{font-size:clamp(2.2rem,11.2vw,3.5rem)}.auth-stack__status{font-size:1rem}.auth-stack__button{min-width:min(290px,88vw)}.auth-stack__actions{min-height:76px}.auth-callback{grid-template-columns:1fr;gap:18px;width:100%;padding-inline:16px}.auth-callback-main,.auth-callback-panel{align-items:flex-start;text-align:left}.auth-callback-panel{padding-top:0;padding-left:0;border-left:0}.auth-actions--column{align-items:flex-start}.auth-callback-title{max-width:100%;font-size:clamp(2rem,12vw,2.8rem)}.auth-callback-subtitle{max-width:100%;font-size:1rem}}@media (max-width:1040px) and (min-width:681px){.auth-callback{grid-template-columns:1fr;gap:20px;padding-inline:clamp(24px,6vw,64px)}.auth-callback-main{max-width:760px}.auth-callback-panel{border-left:0;padding-left:0;padding-top:0}}