:root{--auth-wash:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--brand-accent) 8%, transparent), transparent 52%);--auth-card-surface:color-mix(in srgb, var(--card) 96%, transparent);--auth-card-border:var(--border-hairline-soft);--auth-card-shadow:var(--brand-shadow-soft);--auth-card-radius:var(--radius-panel);--auth-panel-surface:var(--brand-surface-dark);--auth-panel-foreground:var(--foreground-inverse);--auth-panel-muted:var(--foreground-inverse-muted);--auth-panel-border:color-mix(in srgb, var(--brand-accent) 22%, transparent);--auth-success-surface:var(--surface-status-success);--auth-success-border:color-mix(in srgb, var(--semantic-success) 30%, transparent);--auth-success-foreground:var(--semantic-success-strong);--auth-warning-surface:var(--surface-status-warning);--auth-warning-border:color-mix(in srgb, var(--semantic-warning) 34%, transparent);--auth-warning-foreground:var(--semantic-warning-strong);--auth-info-surface:color-mix(in srgb, var(--semantic-info) 12%, transparent);--auth-info-border:color-mix(in srgb, var(--semantic-info) 30%, transparent);--auth-info-foreground:var(--semantic-info-strong);--auth-error-surface:var(--surface-danger-subtle);--auth-error-border:color-mix(in srgb, var(--destructive) 28%, transparent);--auth-error-foreground:var(--destructive);--auth-skeleton-surface:var(--elevate-2);--auth-skeleton-highlight:color-mix(in srgb, var(--card) 72%, transparent);--account-identity-surface:var(--brand-surface-dark);--account-identity-shadow:var(--brand-shadow-lift);--account-identity-accent:var(--brand-accent);--account-identity-foreground:var(--foreground-inverse);--account-identity-muted:color-mix(in srgb, var(--foreground-inverse) 40%, transparent);--account-identity-glow-strong:radial-gradient(circle, color-mix(in srgb, var(--brand-accent) 14%, transparent) 0%, transparent 70%);--account-identity-glow-soft:radial-gradient(circle, color-mix(in srgb, var(--brand-accent) 7%, transparent) 0%, transparent 70%);--account-avatar-ring-client:0 0 0 3px color-mix(in srgb, var(--role-client) 24%, transparent);--account-avatar-ring-team:0 0 0 3px color-mix(in srgb, var(--role-team) 24%, transparent);--account-role-surface:color-mix(in srgb, var(--brand-accent) 15%, transparent);--account-role-border:color-mix(in srgb, var(--brand-accent) 25%, transparent)}@layer components{.auth-layout{background:var(--page-background);min-height:100dvh;color:var(--foreground);display:grid;position:relative;overflow:hidden auto}.auth-layout:before{pointer-events:none;content:"";background:var(--auth-wash);position:fixed;inset:0}.auth-skip-link{z-index:100;border-radius:var(--radius-control);background:var(--foreground);color:var(--background);font-weight:var(--font-weight-bold);padding:.65rem .9rem;transition:transform .12s;position:fixed;top:.75rem;left:.75rem;transform:translateY(calc(-100% - 1rem))}.auth-skip-link:focus{transform:translateY(0)}.auth-layout__form-side{min-width:0;min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));align-content:center;justify-items:center;display:grid;position:relative}.auth-layout__stack{justify-items:center;gap:1.5rem;width:min(100%,27.5rem);display:grid}.auth-layout__brand-logo{place-items:center;min-height:2.75rem;display:grid}.auth-layout__brand-logo img,.auth-layout__brand-logo svg{max-width:min(11rem,58vw);max-height:3rem;display:block}.auth-layout__brand-logo--mobile{display:grid}.auth-layout__footer{color:var(--muted-foreground);font-size:var(--text-meta);flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.auth-layout__footer a{text-underline-offset:.2em}.auth-layout__footer a:hover{text-decoration:underline}.auth-layout__brand-panel{margin:var(--shell-frame-offset);border:1px solid var(--auth-panel-border);border-radius:var(--auth-card-radius);background:var(--auth-panel-surface);color:var(--auth-panel-foreground);display:none;position:relative;overflow:hidden}.auth-layout__brand-panel:after{content:"";background:var(--auth-wash);opacity:.65;position:absolute;inset:0}.auth-layout__brand-panel-inner{z-index:1;flex-direction:column;justify-content:space-between;min-height:100%;padding:clamp(2rem,6vw,5.5rem);display:flex;position:relative}.auth-layout__brand-panel .auth-layout__brand-logo{justify-content:start}.auth-layout__brand-copy{max-width:30rem}.auth-layout__brand-copy h2{font-family:var(--font-display);font-size:var(--text-ui-auth-title);font-weight:var(--font-weight-heavy);line-height:var(--type-leading-095);letter-spacing:var(--type-tracking-n045);margin:0}.auth-layout__brand-copy p{max-width:34rem;color:var(--auth-panel-muted);font-size:var(--type-paragraph-large);line-height:var(--type-leading-165);margin:1.5rem 0 0}.auth-vessel{border:1px solid var(--auth-card-border);border-radius:var(--auth-card-radius);background:var(--auth-card-surface);box-shadow:var(--auth-card-shadow);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);position:relative}.auth-vessel__wash{background:var(--auth-wash);pointer-events:none;height:10rem;position:absolute;inset:0 0 auto}.auth-vessel__content{z-index:1;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex;position:relative}.auth-name-grid{gap:var(--space-sm);grid-template-columns:1fr;display:grid}.auth-state-panel{flex-direction:column;gap:1.5rem;display:flex}.auth-invitation-context{gap:.25rem var(--space-sm);border-block:1px solid var(--hairline-strong);padding-block:var(--space-sm);color:var(--muted-foreground);font-family:var(--font-body);font-size:var(--text-meta);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.auth-invitation-context strong{overflow-wrap:anywhere;min-width:0;color:var(--foreground);font-size:var(--text-body);font-weight:var(--font-weight-semibold);grid-column:1}.auth-invitation-context>span:last-child{border:1px solid var(--hairline-strong);border-radius:var(--radius-control);padding:.25rem var(--space-xs);background:var(--elevate-1);color:var(--foreground);font-weight:var(--font-weight-semibold);grid-area:1/2/span 2;align-self:center}.auth-layout .auth-heading{font-family:var(--font-display);font-size:var(--type-heading-2);font-weight:var(--font-weight-heavy);line-height:var(--type-leading-110);letter-spacing:var(--type-tracking-n025);margin:0}.auth-layout .auth-paragraph-small,.auth-layout .auth-paragraph-mini{font-family:var(--font-body);letter-spacing:var(--type-tracking-010);margin:0}.auth-layout .auth-paragraph-small{font-size:var(--type-paragraph-small);line-height:var(--type-leading-160)}.auth-layout .auth-paragraph-mini{font-size:var(--type-paragraph-mini);line-height:var(--type-leading-normal)}.auth-layout .eyebrow{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--accent) 12%, transparent);width:fit-content;color:var(--accent);font-size:var(--text-meta);font-weight:var(--font-weight-semibold);letter-spacing:var(--type-tracking-normal);text-transform:none;padding:.375rem .625rem;display:inline-flex}.auth-divider-line{background:var(--hairline-strong);flex:1;height:1px}.auth-divider-dot{border-radius:var(--radius-pill);background:var(--accent);flex:none;width:.375rem;height:.375rem}.auth-step{align-items:center;gap:var(--space-xs);color:var(--muted-foreground);font-family:var(--font-body);font-size:var(--text-meta);font-weight:var(--font-weight-semibold);display:flex}.auth-step__count{border:1px solid var(--hairline-strong);border-radius:var(--radius-control);min-height:1.5rem;padding-inline:var(--space-xs);background:var(--elevate-1);color:var(--foreground);font-variant-numeric:tabular-nums;align-items:center;display:inline-flex}.auth-step__label{overflow-wrap:anywhere}.auth-state-mark{border:1px solid var(--hairline-strong);border-radius:var(--radius-card);background:var(--elevate-1);width:2.75rem;height:2.75rem;color:var(--muted-foreground);place-items:center;display:grid}.auth-state-mark span{background:currentColor;width:1rem;height:1px;transform:translateY(-.125rem);box-shadow:0 .25rem}.auth-state-mark--success{border-color:var(--auth-success-border);background:var(--auth-success-surface);color:var(--auth-success-foreground)}.auth-state-mark--warning{border-color:var(--auth-warning-border);background:var(--auth-warning-surface);color:var(--auth-warning-foreground)}.auth-state-mark--error{border-color:var(--auth-error-border);background:var(--auth-error-surface);color:var(--auth-error-foreground)}.auth-loading-state{gap:var(--space-sm);flex-direction:column;min-height:17rem;display:flex}.auth-loading-state>span:not(.sr-only){border-radius:var(--radius-control);background:var(--auth-skeleton-surface);position:relative;overflow:hidden}.auth-loading-state>span:not(.sr-only):after{content:"";background:linear-gradient(90deg, transparent, var(--auth-skeleton-highlight), transparent);animation:1.2s infinite auth-shimmer;position:absolute;inset:0;transform:translate(-100%)}.auth-loading-state__eyebrow{width:4.25rem;height:1.5rem}.auth-loading-state__heading{width:74%;height:1.75rem;margin-top:var(--space-xs)}.auth-loading-state__copy{width:100%;height:.75rem}.auth-loading-state__copy--short{width:68%}.auth-loading-state__action{width:100%;height:2.75rem;margin-top:auto}.auth-notice{border-radius:var(--radius-xl);padding:.875rem}.auth-notice--error{border:1px solid var(--auth-error-border);background:var(--auth-error-surface);color:var(--auth-error-foreground)}.auth-notice--success{border:1px solid var(--auth-success-border);background:var(--auth-success-surface);color:var(--auth-success-foreground)}.auth-notice--warning{border:1px solid var(--auth-warning-border);background:var(--auth-warning-surface);color:var(--auth-warning-foreground)}.auth-notice--info{border:1px solid var(--auth-info-border);background:var(--auth-info-surface);color:var(--auth-info-foreground)}.auth-post-login{background:var(--page-background);place-items:center;min-height:100svh;padding:1.5rem;display:grid}.auth-post-login__content{text-align:center;justify-items:center;gap:1rem;width:min(100%,25rem);display:grid}.auth-spinner{border:2px solid var(--hairline-strong);border-top-color:var(--accent);border-radius:var(--radius-pill);width:1.125rem;height:1.125rem;animation:.72s linear infinite auth-spin}.auth-skeleton-line{border-radius:var(--radius-pill);background:var(--auth-skeleton-surface);width:min(17rem,72vw);height:.4rem;position:relative;overflow:hidden}.auth-skeleton-line:after{content:"";background:linear-gradient(90deg, transparent, var(--auth-skeleton-highlight), transparent);animation:1.2s infinite auth-shimmer;position:absolute;inset:0;transform:translate(-100%)}@media (min-width:64rem){.auth-layout[data-variant=split]{grid-template-columns:minmax(24rem,.9fr) minmax(30rem,1.1fr)}.auth-layout[data-variant=split] .auth-layout__form-side{grid-column:2}.auth-layout[data-variant=split] .auth-layout__brand-panel{grid-area:1/1;display:block}.auth-layout[data-variant=split] .auth-layout__brand-logo--mobile{display:none}.auth-vessel__content{padding:2.5rem}.auth-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.auth-spinner{animation:none;transform:none}.auth-skeleton-line:after,.auth-loading-state>span:not(.sr-only):after{display:none}}}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-shimmer{to{transform:translate(100%)}}
