@layer components{.hourtrace-auth-shell{box-sizing:border-box;width:100%;min-height:100dvh;padding-top:max(24px, env(safe-area-inset-top));padding-right:max(24px, env(safe-area-inset-right));padding-bottom:max(24px, env(safe-area-inset-bottom));padding-left:max(24px, env(safe-area-inset-left));background:linear-gradient(90deg, transparent 0 49.95%, var(--border-subtle) 50%, transparent 50.05%), var(--background);place-items:safe center;display:grid}.hourtrace-signin{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);width:min(100%,980px);box-shadow:var(--elevation-raised);grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);display:grid;overflow:hidden}.hourtrace-signin__context,.hourtrace-signin__access{min-width:0;padding:clamp(30px,5vw,54px)}.hourtrace-signin__context{border-right:1px solid var(--border-subtle);background:color-mix(in srgb, var(--surface-elevated) 38%, var(--surface));align-content:space-between;gap:48px;display:grid}.hourtrace-signin__brand{width:fit-content;color:var(--fg);align-items:center;gap:10px;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.hourtrace-signin__intro{max-width:410px}.hourtrace-signin__eyebrow{color:var(--fg-faint);letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:.6875rem;font-weight:700}.hourtrace-signin h1{max-width:11ch;color:var(--fg);letter-spacing:0;margin:0;font-size:clamp(2rem,5vw,3.5rem);font-weight:680;line-height:.98}.hourtrace-signin__intro>p:last-child{max-width:38ch;color:var(--fg-muted);margin:18px 0 0;font-size:.9375rem;line-height:1.65}.hourtrace-signin__trace{border-top:1px solid var(--border-subtle);gap:11px;padding-top:18px;display:grid}.hourtrace-signin__trace-copy{color:var(--fg-faint);justify-content:space-between;gap:16px;font-size:.6875rem;display:flex}.hourtrace-signin__trace-copy strong{color:var(--fg-muted);font-weight:650}.hourtrace-signin__trace-row{color:var(--fg-faint);grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;font-size:.6875rem;display:grid}.hourtrace-signin__trace-lane{background:color-mix(in srgb, var(--fg) 6%, transparent);border-radius:999px;height:5px;overflow:hidden}.hourtrace-signin__trace-lane>span{width:var(--trace-width);border-radius:inherit;background:var(--trace-color);height:100%;display:block}.hourtrace-signin__access{flex-direction:column;justify-content:center;display:flex}.hourtrace-signin__access h2{color:var(--fg);letter-spacing:0;margin:0;font-size:1.25rem;font-weight:680}.hourtrace-signin__access>p{color:var(--fg-muted);margin:7px 0 0;font-size:.8125rem;line-height:1.55}.hourtrace-signin__error{border-left:2px solid var(--danger);background:color-mix(in srgb, var(--danger) 7%, transparent);color:var(--fg);margin:18px 0 0;padding:10px 12px;font-size:.75rem;line-height:1.55}.hourtrace-signin__status{border-left:2px solid var(--success);background:color-mix(in srgb, var(--success) 7%, transparent);padding:10px 12px;color:var(--fg)!important;margin:18px 0 0!important}.hourtrace-signin__google,.hourtrace-signin__fixture-button,.hourtrace-signin__email-submit{border-radius:var(--radius-control);width:100%;min-height:46px;font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:10px;font-size:.8125rem;font-weight:650;display:inline-flex}.hourtrace-signin__google{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border));background:color-mix(in srgb, var(--accent) 12%, var(--surface-elevated));color:var(--fg);margin-top:22px}.hourtrace-signin__google:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 17%, var(--surface-elevated))}.hourtrace-signin__google:disabled,.hourtrace-signin__fixture-button:disabled,.hourtrace-signin__email-submit:disabled,.hourtrace-signin__modes button:disabled,.hourtrace-signin__email-actions button:disabled{cursor:wait;opacity:.64}.hourtrace-signin__divider{color:var(--fg-faint);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:20px 0;font-size:.6875rem;display:grid}.hourtrace-signin__divider>span:first-child,.hourtrace-signin__divider>span:last-child{background:var(--border-subtle);height:1px}.hourtrace-signin__modes{border-radius:var(--radius-control);background:var(--surface-elevated);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.hourtrace-signin__modes button{border-radius:var(--radius-compact);min-height:36px;color:var(--fg-muted);font:inherit;cursor:pointer;background:0 0;border:0;font-size:.75rem;font-weight:650}.hourtrace-signin__modes button[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:inset 0 0 0 1px var(--border)}.hourtrace-signin__email-form{gap:13px;margin-top:16px;display:grid}.hourtrace-signin__email-form label{color:var(--fg-muted);gap:6px;font-size:.75rem;font-weight:620;display:grid}.hourtrace-signin__email-form input{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);width:100%;min-width:0;min-height:42px;color:var(--fg);font:inherit;outline:0;padding:0 11px;font-size:.8125rem}.hourtrace-signin__email-form input:focus-visible{border-color:var(--focus-ring);box-shadow:0 0 0 2px color-mix(in srgb, var(--focus-ring) 24%, transparent)}.hourtrace-signin__email-submit{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent)}.hourtrace-signin__email-submit:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, white)}.hourtrace-signin__email-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 18px;min-height:40px;margin-top:5px;display:flex}.hourtrace-signin__email-actions button{min-height:36px;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;font-weight:620}.hourtrace-signin__fixture{border-top:1px solid var(--border-subtle);gap:8px;margin-top:22px;padding-top:18px;display:grid}.hourtrace-signin__fixture-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.hourtrace-signin__fixture-header strong{color:var(--fg-muted);letter-spacing:0;text-transform:uppercase;font-size:.6875rem}.hourtrace-signin__fixture-header span{color:var(--fg-faint);font-size:.6875rem}.hourtrace-signin__fixture-button{border:1px solid var(--border);color:var(--fg);background:0 0}.hourtrace-signin__fixture>p{color:var(--fg-faint);margin:0;font-size:.6875rem;line-height:1.55}.hourtrace-signin__legal{border-top:1px solid var(--border-subtle);color:var(--fg-faint);margin:24px 0 0;padding-top:18px;font-size:.6875rem;line-height:1.65}.hourtrace-signin__legal a{color:var(--fg-muted);text-underline-offset:3px;font-weight:650}.hourtrace-signin :where(a,button):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.hourtrace-recovery{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);width:min(100%,520px);box-shadow:var(--elevation-raised);padding:clamp(28px,6vw,48px)}.hourtrace-recovery>section{margin-top:52px}.hourtrace-recovery__eyebrow{color:var(--fg-faint);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.6875rem;font-weight:700}.hourtrace-recovery h1{color:var(--fg);letter-spacing:0;margin:0;font-size:1.75rem;font-weight:680;line-height:1.15}.hourtrace-recovery section>p:not(.hourtrace-recovery__eyebrow){color:var(--fg-muted);overflow-wrap:anywhere;margin:10px 0 0;font-size:.8125rem;line-height:1.6}.hourtrace-recovery form{gap:16px;margin-top:26px;display:grid}.hourtrace-recovery label{color:var(--fg-muted);gap:7px;font-size:.75rem;font-weight:620;display:grid}.hourtrace-recovery input{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);min-height:44px;color:var(--fg);font:inherit;outline:0;padding:0 11px;font-size:.8125rem}.hourtrace-recovery input:focus-visible{border-color:var(--focus-ring);box-shadow:0 0 0 2px color-mix(in srgb, var(--focus-ring) 24%, transparent)}.hourtrace-recovery button{border:1px solid var(--accent);border-radius:var(--radius-control);background:var(--accent);min-height:44px;color:var(--on-accent);font:inherit;cursor:pointer;padding:0 14px;font-size:.8125rem;font-weight:650}.hourtrace-recovery section>button{width:100%;margin-top:26px}.hourtrace-recovery button:disabled{cursor:wait;opacity:.64}.hourtrace-recovery .hourtrace-recovery__error{border-left:2px solid var(--danger);background:color-mix(in srgb, var(--danger) 7%, transparent);color:var(--fg);margin:0;padding:9px 11px;font-size:.75rem;line-height:1.55}@media (max-width:720px){.hourtrace-auth-shell{padding-top:max(16px, env(safe-area-inset-top));padding-right:max(16px, env(safe-area-inset-right));padding-bottom:max(16px, env(safe-area-inset-bottom));padding-left:max(16px, env(safe-area-inset-left));background:var(--background);place-items:stretch stretch}.hourtrace-signin{grid-template-columns:1fr;align-self:center}.hourtrace-signin__context,.hourtrace-signin__access{padding:28px 24px}.hourtrace-signin__context{border-right:0;border-bottom:1px solid var(--border-subtle);gap:30px}.hourtrace-signin h1{max-width:13ch;font-size:clamp(2rem,11vw,2.75rem)}}@media (max-width:420px){.hourtrace-auth-shell{padding:0}.hourtrace-signin{min-height:100dvh;box-shadow:none;border:0;border-radius:0}.hourtrace-signin__context,.hourtrace-signin__access{padding-right:max(20px, env(safe-area-inset-right));padding-left:max(20px, env(safe-area-inset-left))}.hourtrace-signin__context{padding-top:max(24px, env(safe-area-inset-top));padding-bottom:24px}.hourtrace-signin__access{padding-top:24px;padding-bottom:max(24px, env(safe-area-inset-bottom))}.hourtrace-signin__trace{display:none}.hourtrace-recovery{min-height:100dvh;padding-top:max(28px, env(safe-area-inset-top));padding-right:max(20px, env(safe-area-inset-right));padding-bottom:max(28px, env(safe-area-inset-bottom));padding-left:max(20px, env(safe-area-inset-left));box-shadow:none;border:0;border-radius:0}}@media (prefers-reduced-motion:reduce){.hourtrace-signin *,.hourtrace-signin :before,.hourtrace-signin :after{scroll-behavior:auto!important;transition-duration:.001ms!important}}@media (forced-colors:active){.hourtrace-signin :where(a,button):focus-visible{outline:2px solid highlight}}}
