@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url("/theme/fonts/figtree/figtree-latin-ext-wght-normal.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url("/theme/fonts/figtree/figtree-latin-wght-normal.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/theme/fonts/jetbrains-mono/jetbrains-mono-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/theme/fonts/jetbrains-mono/jetbrains-mono-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url("/theme/fonts/jetbrains-mono/jetbrains-mono-latin-ext-500-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500;font-display:swap;src:url("/theme/fonts/jetbrains-mono/jetbrains-mono-latin-500-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:700;font-display:swap;src:url("/theme/fonts/jetbrains-mono/jetbrains-mono-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:700;font-display:swap;src:url("/theme/fonts/jetbrains-mono/jetbrains-mono-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*::before,*::after{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--surface-app);color:var(--text-primary);font:var(--type-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}h1,h2,h3,h4,p{margin:0}a{color:var(--text-link)}a:hover{color:var(--text-link-hover)}button{font-family:inherit}:focus-visible{outline:none;box-shadow:var(--ring-focus)}::selection{background:var(--blue-200);color:var(--ink-900)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}:root{--ink-900: #0e1526;--ink-800: #1a2239;--ink-700: #29334f;--ink-600: #3d4966;--slate-500: #64708c;--slate-400: #8d97ae;--slate-300: #b8c0d1;--slate-200: #d9dee8;--slate-100: #eceff5;--slate-50: #f5f7fb;--white: #fff;--blue-700: #1552c9;--blue-600: #1f6bef;--blue-500: #3680fc;--blue-400: #6ba3fd;--blue-200: #c3dafe;--blue-100: #e4eefe;--violet-700: #5a49d8;--violet-600: #7263f0;--violet-500: #8f80fa;--violet-400: #a890fc;--violet-200: #d8d0fe;--violet-100: #ece8fe;--green-700: #12894a;--green-600: #1aa85a;--green-500: #4ee677;--green-200: #bdf5cf;--green-100: #e2fbea;--amber-700: #96560a;--amber-600: #c8790f;--amber-500: #f5a623;--amber-200: #fbe2b4;--amber-100: #fdf3e0;--red-700: #a8202e;--red-600: #cf2f40;--red-500: #e8465a;--red-200: #f9ccd2;--red-100: #fdeaed;--surface-app: var(--slate-50);--surface-card: var(--white);--surface-sunken: var(--slate-100);--surface-raised: var(--white);--surface-highlight: #fbfcfe;--surface-inverse: var(--ink-900);--surface-inverse-soft: var(--ink-800);--surface-accent-soft: var(--blue-100);--surface-violet-soft: var(--violet-100);--surface-overlay: rgb(14 21 38 / 48%);--chrome-fill: rgb(255 255 255 / 12%);--chrome-fill-hover: rgb(255 255 255 / 18%);--chrome-fill-press: rgb(255 255 255 / 20%);--chrome-hover: rgb(255 255 255 / 10%);--chrome-border: rgb(255 255 255 / 14%);--chrome-text-muted: rgb(255 255 255 / 72%);--border-subtle: var(--slate-200);--border-strong: var(--slate-300);--border-inverse: rgb(255 255 255 / 14%);--border-accent: var(--blue-500);--border-danger: var(--red-500);--text-primary: var(--ink-900);--text-secondary: var(--ink-600);--text-muted: var(--slate-500);--text-disabled: var(--slate-400);--text-inverse: var(--white);--text-inverse-muted: rgb(255 255 255 / 64%);--text-link: var(--blue-600);--text-link-hover: var(--blue-700);--text-accent: var(--blue-600);--text-on-accent: var(--white);--accent: var(--blue-500);--accent-hover: var(--blue-600);--accent-press: var(--blue-700);--accent-quiet: var(--blue-100);--focus-ring: rgb(54 128 252 / 32%);--status-new: var(--blue-600);--status-new-soft: var(--blue-100);--status-review: var(--amber-600);--status-review-soft: var(--amber-100);--status-confirmed: var(--violet-600);--status-confirmed-soft: var(--violet-100);--status-progress: var(--ink-600);--status-progress-soft: var(--slate-100);--status-paid: var(--green-700);--status-paid-soft: var(--green-100);--status-overdue: var(--red-600);--status-overdue-soft: var(--red-100);--shadow-xs: 0 1px 2px rgb(14 21 38 / 6%);--shadow-sm: 0 1px 2px rgb(14 21 38 / 5%), 0 2px 6px rgb(14 21 38 / 5%);--shadow-md: 0 2px 4px rgb(14 21 38 / 4%), 0 8px 20px rgb(14 21 38 / 8%);--shadow-lg: 0 12px 40px rgb(14 21 38 / 14%);--ring-focus: 0 0 0 3px var(--focus-ring);--ring-danger: 0 0 0 3px rgb(232 70 90 / 28%);--font-display: 'Figtree', 'Helvetica Neue', arial, sans-serif;--font-sans: 'Figtree', 'Helvetica Neue', arial, sans-serif;--font-mono: 'JetBrains Mono', ui-monospace, sfmono-regular, menlo, monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 15px;--text-md: 17px;--text-lg: 20px;--text-xl: 24px;--text-2xl: 30px;--text-3xl: 38px;--text-4xl: 48px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--weight-black: 900;--leading-tight: 1.08;--leading-snug: 1.25;--leading-normal: 1.45;--leading-relaxed: 1.6;--tracking-tight: -0.022em;--tracking-snug: -0.012em;--tracking-normal: 0;--tracking-wide: 0.04em;--tracking-caps: 0.08em;--type-display: var(--weight-extrabold) var(--text-4xl) / var(--leading-tight) var(--font-display);--type-h1: var(--weight-extrabold) var(--text-2xl) / var(--leading-snug) var(--font-display);--type-h2: var(--weight-bold) var(--text-xl) / var(--leading-snug) var(--font-display);--type-h3: var(--weight-bold) var(--text-md) / var(--leading-snug) var(--font-sans);--type-body: var(--weight-regular) var(--text-base) / var(--leading-normal) var(--font-sans);--type-body-strong: var(--weight-semibold) var(--text-base) / var(--leading-normal) var(--font-sans);--type-label: var(--weight-semibold) var(--text-sm) / var(--leading-snug) var(--font-sans);--type-caption: var(--weight-medium) var(--text-xs) / var(--leading-snug) var(--font-sans);--type-mono: var(--weight-medium) var(--text-sm) / var(--leading-snug) var(--font-mono);--space-0: 0;--space-05: 2px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--gutter-card: 20px;--gutter-page: 28px;--gutter-page-compact: 16px;--row-height: 44px;--row-height-compact: 36px;--control-height-sm: 30px;--control-height: 38px;--control-height-lg: 46px;--content-max: 1180px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-pill: 999px;--radius-control: 10px;--radius-card: 14px;--duration-instant: 80ms;--duration-fast: 140ms;--duration-normal: 220ms;--duration-slow: 360ms;--ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);--ease-entrance: cubic-bezier(0.16, 1, 0.3, 1);--transition-control: background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);--press-scale: 0.985}.skip{position:absolute;top:-100px;left:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-card)}.skip:focus{top:var(--space-4)}.auth{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}@media(width < 1100px){.auth{grid-template-columns:minmax(0, 1fr)}}.auth__main{display:flex;flex-direction:column;min-width:0;padding:var(--gutter-page) var(--space-8);background:var(--surface-card)}@media(width < 760px){.auth__main{padding:var(--space-6) var(--gutter-page-compact)}}.auth__brand{display:flex;align-items:center;color:var(--text-primary);font-size:var(--text-md);font-weight:var(--weight-extrabold);letter-spacing:-0.02em;text-decoration:none;gap:10px}.auth__brand:hover{color:var(--text-primary)}.auth__content{display:flex;flex:1;flex-direction:column;justify-content:center;width:100%;max-width:320px;padding-block:var(--space-8)}.auth__footer{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;color:var(--text-muted);font-size:14px;gap:var(--space-3) var(--space-6)}.auth__links{display:flex;gap:var(--space-5)}.auth__panel{display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-8);background:var(--surface-inverse);color:var(--text-inverse);gap:var(--space-6)}@media(width < 1100px){.auth__panel{display:none}}.auth__pitch{max-width:34ch;color:var(--text-inverse-muted);font-size:var(--text-md);line-height:var(--leading-relaxed)}.auth__stats{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));margin:0;gap:var(--space-2)}.auth__stat{display:flex;flex-direction:column-reverse;padding:var(--space-3) 12px;border:1px solid var(--border-inverse);border-radius:var(--radius-card);background:var(--surface-inverse-soft);gap:var(--space-1)}.auth__stat-label{color:var(--text-inverse-muted);font-size:var(--text-sm)}.auth__stat-value{margin:0;color:var(--text-inverse);font-size:var(--text-lg);font-weight:var(--weight-semibold);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.narrow,.card{margin:0;padding:0;border:0;background:none}h1{font:var(--type-h1);letter-spacing:var(--tracking-tight)}.lead{margin-top:6px;color:var(--text-secondary)}form{display:flex;flex-direction:column;margin-top:var(--space-6);gap:var(--space-2)}label{color:var(--text-primary);font:var(--type-label)}label:not(:first-of-type),.auth__label-row{margin-top:var(--space-2)}.auth__label-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.auth__label-row label{margin-top:0}.hint{color:var(--text-muted);font:var(--type-caption)}a{text-decoration:none}a:hover{text-decoration:underline}input[type=text],input[type=email],input[type=password]{width:100%;height:var(--control-height);padding:0 11px;transition:var(--transition-control);border:1px solid var(--border-subtle);border-radius:var(--radius-control);outline:none;background:var(--surface-card) no-repeat 11px center/16px 16px;box-shadow:var(--shadow-xs);color:var(--text-primary);font:inherit}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus{border-color:var(--border-accent);box-shadow:var(--ring-focus)}input[type=text][aria-invalid=true],input[type=email][aria-invalid=true],input[type=password][aria-invalid=true]{border-color:var(--border-danger)}input.auth__input--email,input.auth__input--password{padding-left:35px}input.auth__input--email{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364708c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E")}input.auth__input--password{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364708c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='11' x='3' y='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E")}.check,.auth__check{display:flex;align-items:center;margin-top:var(--space-3);color:var(--text-primary);font:var(--type-body);cursor:pointer;gap:10px}input[type=checkbox],input[type=radio]{flex:none;width:16px;height:16px;margin:0;accent-color:var(--accent)}input[type=checkbox]{border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface-card);appearance:none}input[type=checkbox]:checked{border-color:var(--accent);background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat center/12px 12px}input[type=checkbox]:focus-visible{box-shadow:var(--ring-focus)}fieldset{display:flex;flex-direction:column;margin:0;padding:0;border:0;gap:var(--space-2)}legend{margin-bottom:var(--space-2);font:var(--type-label)}.actions{display:flex;flex-wrap:wrap;align-items:center;margin-top:var(--space-4);gap:var(--space-3)}button,.button{display:inline-flex;align-items:center;justify-content:center;height:var(--control-height);padding:0 14px;transition:var(--transition-control);border:1px solid rgba(0,0,0,0);border-radius:var(--radius-control);background:var(--accent);box-shadow:var(--shadow-xs);color:var(--text-on-accent);font:var(--weight-semibold) var(--text-base)/1 var(--font-sans);letter-spacing:var(--tracking-snug);text-decoration:none;cursor:pointer;gap:var(--space-2)}button:hover,.button:hover{background:var(--accent-hover);color:var(--text-on-accent);text-decoration:none}button.full{width:100%}button.secondary,.button.secondary{border-color:var(--border-subtle);background:var(--surface-card);color:var(--text-primary)}button.secondary:hover,.button.secondary:hover{background:var(--slate-50);color:var(--text-primary)}button.link{height:auto;padding:0;border:0;background:none;box-shadow:none;color:var(--text-link);font-weight:var(--weight-regular)}.links{display:flex;flex-direction:column;margin-top:var(--space-6);font-size:14px;gap:var(--space-2)}.divider{display:flex;align-items:center;margin-block:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);gap:var(--space-4)}.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--border-subtle)}.providers{display:flex;flex-direction:column;gap:var(--space-2)}.alert{margin-top:var(--space-4);padding:var(--space-3) 14px;border-radius:var(--radius-control);font:var(--type-label)}.alert ul{margin:0;padding-left:var(--space-4)}.alert.error{background:var(--red-100);color:var(--red-700)}.alert.notice{background:var(--green-100);color:var(--green-700)}.muted{color:var(--text-muted)}.inline{display:inline;margin:0}
