:root{--sso-background:var(--background,#fff);--sso-foreground:var(--foreground,#0a0a0a);--sso-card:var(--card,#fff);--sso-card-foreground:var(--card-foreground,#0a0a0a);--sso-primary:var(--primary,#171717);--sso-primary-foreground:var(--primary-foreground,#fafafa);--sso-muted:var(--muted,#f5f5f5);--sso-muted-foreground:var(--muted-foreground,#737373);--sso-border:var(--border,#e5e5e5);--sso-destructive:var(--destructive,#dc2626);--sso-success:#15803d;--sso-danger-text:#b91c1c;--sso-danger-surface:#fef2f2;--sso-danger-hover:#fee2e2;--sso-ring:var(--ring,#a3a3a3);--sso-radius:var(--radius,.625rem)}.dark,[data-theme=dark]{--sso-background:var(--background,#0a0a0a);--sso-foreground:var(--foreground,#fafafa);--sso-card:var(--card,#171717);--sso-card-foreground:var(--card-foreground,#fafafa);--sso-primary:var(--primary,#fafafa);--sso-primary-foreground:var(--primary-foreground,#171717);--sso-muted:var(--muted,#262626);--sso-muted-foreground:var(--muted-foreground,#a3a3a3);--sso-border:var(--border,#333);--sso-destructive:var(--destructive,#f87171);--sso-success:#4ade80;--sso-danger-text:#fca5a5;--sso-danger-surface:#450a0a;--sso-danger-hover:#7f1d1d;--sso-ring:var(--ring,#737373)}.sso-button,.sso-user-trigger,.sso-icon-button,.sso-menu-item{font:inherit}.sso-button{border:1px solid var(--sso-primary);border-radius:var(--sso-radius);background:var(--sso-primary);min-height:2.5rem;color:var(--sso-primary-foreground);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.sso-button:hover{opacity:.9}.sso-button:disabled{cursor:not-allowed;opacity:.55}.sso-button:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-user-trigger:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-icon-button:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-menu-item:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-user-trigger,.sso-icon-button{color:var(--sso-foreground);cursor:pointer;background:0 0;border:0;border-radius:9999px;place-items:center;padding:0;display:inline-grid}.sso-avatar{border:1px solid var(--sso-border);background:var(--sso-muted);width:2.25rem;height:2.25rem;color:var(--sso-foreground);border-radius:9999px;flex:none;place-items:center;font-size:.75rem;font-weight:600;display:inline-grid;overflow:hidden}.sso-avatar-large{width:4rem;height:4rem;font-size:1.125rem}.sso-avatar img{object-fit:cover;width:100%;height:100%}.sso-menu-positioner{z-index:50;outline:none}.sso-menu-content{border:1px solid var(--sso-border);border-radius:var(--sso-radius);background:var(--sso-card);width:15rem;color:var(--sso-card-foreground);transform-origin:var(--transform-origin);outline:none;padding:.375rem;animation:.12s ease-out sso-enter;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.14)}.sso-menu-header,.sso-profile-summary{align-items:center;gap:.75rem;display:flex}.sso-menu-header{padding:.5rem}.sso-menu-identity,.sso-profile-summary>div{gap:.125rem;min-width:0;display:grid}.sso-menu-identity strong,.sso-menu-identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sso-menu-identity strong{font-size:.875rem}.sso-menu-identity span,.sso-profile-summary span{color:var(--sso-muted-foreground);font-size:.75rem}.sso-menu-item{box-sizing:border-box;border-radius:calc(var(--sso-radius) - .2rem);width:100%;min-height:2.25rem;color:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none;align-items:center;gap:.625rem;padding:.45rem .55rem;font-size:.875rem;text-decoration:none;display:flex}.sso-menu-item[data-highlighted],.sso-menu-item:focus{background:var(--sso-muted)}.sso-menu-item[data-disabled]{pointer-events:none;opacity:.5}.sso-menu-item svg,.sso-button svg,.sso-icon-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.sso-menu-item-danger{background:var(--sso-danger-surface);color:var(--sso-danger-text)}.sso-menu-item-danger[data-highlighted],.sso-menu-item-danger:focus{background:var(--sso-danger-hover);color:var(--sso-danger-text)}.sso-menu-separator{background:var(--sso-border);height:1px;margin:.375rem -.375rem}.sso-dialog-overlay{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:rgba(0,0,0,.55);animation:.15s ease-out sso-fade;position:fixed;top:0;bottom:0;left:0;right:0}.sso-dialog-content{z-index:61;box-sizing:border-box;border:1px solid var(--sso-border);border-radius:calc(var(--sso-radius) + .25rem);background:var(--sso-card);width:min(100vw - 2rem,28rem);color:var(--sso-card-foreground);padding:1.5rem;animation:.15s ease-out sso-dialog-enter;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 80px rgba(0,0,0,.28)}.sso-dialog-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.sso-dialog-title{margin:0;font-size:1.125rem;font-weight:600}.sso-dialog-description{color:var(--sso-muted-foreground);margin:.375rem 0 0;font-size:.875rem;line-height:1.4}.sso-icon-button{width:2rem;height:2rem}.sso-icon-button:hover{background:var(--sso-muted)}.sso-profile-summary{margin-top:1.5rem}.sso-profile-summary strong{font-size:1rem}.sso-profile-fields{gap:.75rem;margin:1.5rem 0 0;display:grid}.sso-profile-fields>div{border:1px solid var(--sso-border);border-radius:var(--sso-radius);background:var(--sso-background);gap:.25rem;padding:.75rem;display:grid}.sso-profile-fields dt{color:var(--sso-muted-foreground);font-size:.75rem;font-weight:500}.sso-profile-fields dd{overflow-wrap:anywhere;margin:0;font-size:.875rem}.sso-spin{animation:.7s linear infinite sso-spin}.sso-auth-card{box-sizing:border-box;border:1px solid var(--sso-border);border-radius:calc(var(--sso-radius) + .25rem);background:var(--sso-card);width:100%;max-width:26rem;color:var(--sso-card-foreground);padding:1.5rem;box-shadow:0 10px 30px rgba(0,0,0,.08)}.sso-auth-heading{text-align:center;margin-bottom:1.5rem}.sso-auth-heading h2{letter-spacing:-.025em;margin:0;font-size:1.5rem;font-weight:650;line-height:1.2}.sso-auth-heading p{color:var(--sso-muted-foreground);margin:.5rem 0 0;font-size:.875rem}.sso-auth-loading{color:var(--sso-muted-foreground);text-align:center;margin:.25rem 0 0;font-size:.8125rem}.sso-auth-socials,.sso-auth-form{gap:.75rem;display:grid}.sso-auth-provider{box-sizing:border-box;border:1px solid var(--sso-border);border-radius:var(--sso-radius);background:var(--sso-background);width:100%;min-height:2.75rem;color:var(--sso-foreground);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.625rem;padding:.5rem .875rem;font-size:.875rem;font-weight:550;transition:background-color .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}.sso-auth-provider:hover:not(:disabled){border-color:color-mix(in srgb,var(--sso-foreground)24%,var(--sso-border));background:var(--sso-muted);box-shadow:0 1px 2px rgba(0,0,0,.06)}.sso-auth-provider:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-auth-field input:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-auth-switch button:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-auth-provider:disabled{cursor:not-allowed;opacity:.55}.sso-provider-icon{flex:none;width:1.25rem;height:1.25rem}.sso-provider-icon-github{fill:currentColor}.sso-auth-divider{color:var(--sso-muted-foreground);white-space:nowrap;align-items:center;gap:.75rem;margin:1.25rem 0;font-size:.75rem;display:flex}.sso-auth-divider:before,.sso-auth-divider:after{content:"";background:var(--sso-border);flex:1;height:1px}.sso-auth-field{gap:.375rem;font-size:.875rem;font-weight:500;display:grid}.sso-auth-field input{box-sizing:border-box;border:1px solid var(--sso-border);border-radius:var(--sso-radius);background:var(--sso-background);width:100%;height:2.75rem;color:var(--sso-foreground);font:inherit;padding:0 .75rem;font-weight:400;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 2px rgba(0,0,0,.04)}.sso-auth-field input:focus{border-color:var(--sso-ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--sso-ring)18%,transparent);outline:0}.sso-auth-field input::placeholder{color:var(--sso-muted-foreground)}.sso-auth-submit{width:100%;margin-top:.25rem}.sso-auth-form+.sso-auth-provider{margin-top:.75rem}.sso-auth-message{border-radius:var(--sso-radius);background:var(--sso-danger-surface);color:var(--sso-danger-text);margin:1rem 0 0;padding:.625rem .75rem;font-size:.8125rem;line-height:1.4}.sso-auth-message-success{background:color-mix(in srgb,#16a34a 12%,var(--sso-card));color:color-mix(in srgb,#15803d 88%,var(--sso-foreground))}.sso-auth-spinner{border:2px solid;border-right-color:transparent;border-radius:9999px;flex:none;width:.9rem;height:.9rem;animation:.65s linear infinite sso-auth-spin}.sso-auth-skeleton{align-content:center;gap:.75rem;min-height:16.25rem;display:grid}.sso-auth-skeleton-line,.sso-auth-skeleton-divider{border-radius:var(--sso-radius);background:linear-gradient(90deg,var(--sso-muted)20%,color-mix(in srgb,var(--sso-muted)65%,var(--sso-card))42%,var(--sso-muted)64%);background-size:220% 100%;animation:1.25s ease-in-out infinite sso-auth-shimmer;display:block}.sso-auth-skeleton-provider,.sso-auth-skeleton-submit{height:2.75rem}.sso-auth-skeleton-input{height:3.75rem}.sso-auth-skeleton-divider{height:1px;margin:.5rem 0}@keyframes sso-auth-spin{to{transform:rotate(360deg)}}@keyframes sso-auth-shimmer{to{background-position:-220% 0}}@media (prefers-reduced-motion:reduce){.sso-auth-spinner,.sso-auth-skeleton-line,.sso-auth-skeleton-divider{animation:none}}.sso-auth-switch{color:var(--sso-muted-foreground);text-align:center;margin:1.25rem 0 0;font-size:.8125rem}.sso-auth-switch button{color:var(--sso-foreground);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.sso-auth-text-button{color:var(--sso-muted-foreground);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:.8125rem;text-decoration:underline}.sso-auth-text-button:hover:not(:disabled){color:var(--sso-foreground)}.sso-profile-password{border-top:1px solid var(--sso-border);gap:.75rem;margin-top:1rem;padding-top:1rem;display:grid}.sso-profile-password>div{gap:.2rem;display:grid}.sso-profile-password strong{font-size:.875rem}.sso-profile-password span,.sso-profile-password-message{color:var(--sso-muted-foreground);margin:0;font-size:.8125rem;line-height:1.4}.sso-profile-trigger{border:1px solid var(--sso-border);border-radius:var(--sso-radius);background:var(--sso-background);min-height:2.5rem;color:var(--sso-foreground);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.55rem .9rem;font-weight:500;display:inline-flex}.sso-profile-trigger:focus-visible{outline:2px solid var(--sso-ring);outline-offset:2px}.sso-profile-dialog{width:min(100vw - 2rem,42rem);max-height:min(88vh,52rem);overflow:auto}.sso-profile{color:var(--sso-card-foreground);gap:1rem;display:grid}.sso-profile-dialog .sso-profile{margin-top:1.25rem}.sso-profile-loading{min-height:12rem;color:var(--sso-muted-foreground);justify-content:center;align-items:center;gap:.6rem;font-size:.875rem;display:flex}.sso-profile-section{border:1px solid var(--sso-border);border-radius:var(--sso-radius);background:var(--sso-background);gap:.85rem;padding:1rem;display:grid}.sso-profile-section .sso-profile-summary{margin:0}.sso-profile-section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.sso-profile-section-heading h3{margin:0;font-size:.9375rem}.sso-profile-section-heading p,.sso-profile-empty{color:var(--sso-muted-foreground);margin:.25rem 0 0;font-size:.8125rem;line-height:1.45}.sso-profile-form{gap:.4rem;display:grid}.sso-profile-form>label,.sso-profile-email>div>span{color:var(--sso-muted-foreground);font-size:.75rem;font-weight:500}.sso-profile-inline{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.sso-profile-inline .sso-button{min-width:5rem}.sso-profile-email{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.sso-profile-email>div{gap:.2rem;min-width:0;display:grid}.sso-profile-email strong{overflow-wrap:anywhere;font-size:.875rem}.sso-profile-badge{border:1px solid color-mix(in srgb,var(--sso-success)40%,transparent);background:color-mix(in srgb,var(--sso-success)10%,transparent);color:var(--sso-success);border-radius:9999px;flex:none;align-items:center;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.sso-profile-badge-warning{color:#b45309;background:rgba(217,119,6,.1);border-color:rgba(217,119,6,.4)}.sso-profile-warning{border-radius:var(--sso-radius);color:var(--sso-foreground);background:rgba(217,119,6,.08);border:1px solid rgba(217,119,6,.35);padding:.75rem;font-size:.8rem;line-height:1.45}.sso-profile-list{gap:.5rem;display:grid}.sso-profile-row{border-top:1px solid var(--sso-border);justify-content:space-between;align-items:center;gap:.75rem;padding-top:.65rem;display:flex}.sso-profile-row:first-child{border-top:0;padding-top:0}.sso-profile-row>div{gap:.2rem;min-width:0;display:grid}.sso-profile-row strong{font-size:.8125rem}.sso-profile-row span{color:var(--sso-muted-foreground);overflow-wrap:anywhere;font-size:.72rem}@media (max-width:520px){.sso-profile-inline{grid-template-columns:1fr}.sso-profile-section-heading{display:grid}.sso-profile-row{align-items:flex-start}}.sso-auth-dialog{box-shadow:none;background:0 0;border:0;padding:0}.sso-auth-dialog .sso-auth-card{max-width:none}.sso-auth-close{z-index:1;font-size:1.25rem;position:absolute;top:.75rem;right:.75rem}.sso-visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes sso-spin{to{transform:rotate(360deg)}}@keyframes sso-fade{0%{opacity:0}}@keyframes sso-enter{0%{opacity:0;transform:scale(.98)}}@keyframes sso-dialog-enter{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}}@media (prefers-reduced-motion:reduce){.sso-menu-content,.sso-dialog-overlay,.sso-dialog-content,.sso-spin{animation-duration:1ms}}
