@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@layer reset{*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-base);font-size:var(--font-size-200);line-height:var(--line-height-normal);color:var(--color-foreground);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{text-wrap:balance;margin:0}p,li,dd,blockquote,figcaption{text-wrap:pretty}ul,ol,figure,blockquote,dl{margin:0}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none;padding:0}a{color:var(--color-brand);text-decoration:none}a:hover{text-decoration:underline}img,svg{max-width:100%;display:block}input,textarea,select{font:inherit}}@layer tokens{:root{--breakpoint-lg:1024px;--breakpoint-md:768px;--breakpoint-sm:640px;--breakpoint-xl:1280px;--color-accent:oklch(61% .24 355);--color-background:oklch(97% 0 0);--color-border:oklch(92% 0 0);--color-border-strong:oklch(86% 0 0);--color-brand:oklch(54% .3 265);--color-brand-foreground:oklch(100% 0 0);--color-brand-hovered:oklch(43% .24 265);--color-brand-pressed:oklch(36% .2 265);--color-brand-subtle:oklch(54% .3 265/.12);--color-destructive:oklch(57% .22 27);--color-destructive-foreground:oklch(100% 0 0);--color-destructive-hovered:oklch(52% .22 27);--color-destructive-pressed:oklch(47% .22 27);--color-destructive-subtle:oklch(46% .14 27);--color-destructive-surface:oklch(97% .02 17);--color-foreground:oklch(35% 0 0);--color-foreground-disabled:oklch(79% 0 0);--color-foreground-muted:oklch(52% 0 0);--color-foreground-subtle:oklch(70% 0 0);--color-overlay:oklch(0% 0 0/.4);--color-ring:oklch(54% .3 265);--color-success:oklch(51% .16 148);--color-success-surface:oklch(97% .04 148);--color-surface:oklch(100% 0 0);--color-surface-hover:oklch(93% 0 0);--color-surface-sunken:oklch(95% 0 0);--color-warning:oklch(75% .16 73);--color-warning-surface:oklch(99% .03 95);--font-base:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Consolas", "SF Mono", Menlo, monospace;--font-size-50:.65rem;--font-size-100:.75rem;--font-size-200:.875rem;--font-size-300:1rem;--font-size-400:clamp(1rem, .95rem + .3vw, 1.125rem);--font-size-500:clamp(1.125rem, 1rem + .5vw, 1.375rem);--font-size-600:clamp(1.25rem, 1rem + 1vw, 1.75rem);--font-size-700:clamp(1.5rem, 1.1rem + 1.5vw, 2.25rem);--font-size-800:clamp(1.75rem, 1.2rem + 2vw, 2.75rem);--font-size-900:clamp(2rem, 1.2rem + 2.5vw, 3rem);--font-weight-bold:700;--font-weight-medium:500;--font-weight-regular:400;--font-weight-semibold:600;--line-height-loose:1.75;--line-height-normal:1.5;--line-height-snug:1.25;--line-height-tight:1.1;--gradient-brand:linear-gradient(135deg, var(--color-accent) 0%, var(--color-brand) 100%);--duration-base:.2s;--duration-fast:.12s;--duration-slow:.32s;--ease:cubic-bezier(.4, 0, .2, 1);--radius-full:9999px;--radius-lg:.75rem;--radius-md:.5rem;--radius-none:0;--radius-sm:.35rem;--radius-xl:1rem;--shadow-focus-ring:0 0 0 3px var(--color-brand-subtle);--shadow-lg:0 1rem 3rem oklch(0% 0 0/.1);--shadow-sm:0 1px 2px oklch(0% 0 0/.08);--space-0:0;--space-1:.125rem;--space-2:.25rem;--space-3:.375rem;--space-4:.5rem;--space-5:.75rem;--space-6:1rem;--space-7:1.25rem;--space-8:clamp(1.25rem, 1rem + 1vw, 1.75rem);--space-9:clamp(1.5rem, 1.2rem + 1.2vw, 2.25rem);--space-10:clamp(2rem, 1.5rem + 1.2vw, 2.75rem);--space-11:clamp(2.25rem, 1.7rem + 1.5vw, 3.5rem);--space-12:clamp(3rem, 2rem + 2vw, 4.5rem);--stroke-thick:2px;--stroke-thin:1px}}@layer base{:focus{outline:none}:focus-visible{outline:var(--stroke-thick) solid var(--color-ring);outline-offset:var(--stroke-thick)}[data-rac]:not([data-focus-visible]){outline:none}@media (forced-colors:active){:focus-visible{outline-color:highlight}}:root{font-family:var(--font-base);color:var(--color-foreground);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}body{background:var(--color-background);min-height:100vh;color:var(--color-foreground)}h1,h2,h3,h4,h5,h6{color:var(--color-foreground);font-weight:500}h1{letter-spacing:-.01em;font-size:2.5rem;font-weight:300}h2{font-size:1.5rem;font-weight:500}h3{font-size:1.1rem;font-weight:500}button{cursor:pointer;font-family:inherit}a{color:var(--color-brand);text-decoration:none}a:hover{text-decoration:underline}}@layer components{.app-header{align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-8);background-color:var(--color-surface);border-bottom:var(--stroke-thin) solid var(--color-border);display:flex}.app-header .mark{-webkit-user-select:none;user-select:none;background:var(--gradient-brand);width:var(--space-10);height:var(--space-10);border-radius:var(--radius-md);color:var(--color-brand-foreground);font-weight:var(--font-weight-bold);font-size:var(--font-size-500);justify-content:center;align-items:center;display:flex}.app-header .text{gap:var(--space-1);flex-direction:column;display:flex}.app-header .title{font-size:var(--font-size-300);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);display:inline-block}.app-header .title:first-letter{text-transform:uppercase}.app-header .title{color:var(--color-foreground)}.app-header .subtitle{font-size:var(--font-size-100);line-height:var(--line-height-normal);font-weight:var(--font-weight-regular);color:var(--color-foreground-subtle)}.app-header .action{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.loading{align-items:center;gap:var(--space-4);color:var(--color-foreground-muted);display:inline-flex}.loading.fill{flex:1;justify-content:center;inline-size:100%;display:flex}.loading .spinner{width:var(--space-6);height:var(--space-6);border:var(--stroke-thick) solid var(--color-border-strong);border-top-color:var(--color-brand);border-radius:var(--radius-full);animation:.8s linear infinite loading-spin}.loading .label{font-size:var(--font-size-200);line-height:var(--line-height-normal);font-weight:var(--font-weight-regular)}@keyframes loading-spin{to{transform:rotate(360deg)}}.message{gap:var(--space-2);padding:var(--space-5) var(--space-6);border-radius:var(--radius-md);border-left:var(--stroke-thick) solid transparent;flex-direction:column;display:flex}.message .title{font-size:var(--font-size-200);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);display:inline-block}.message .title:first-letter{text-transform:uppercase}.message .body{font-size:var(--font-size-200);line-height:var(--line-height-normal);font-weight:var(--font-weight-regular)}.message .action{margin-top:var(--space-3);justify-content:flex-end;display:flex}.message.success{background-color:var(--color-success-surface);color:var(--color-success);border-left-color:var(--color-success)}.message.error{background-color:var(--color-destructive-surface);color:var(--color-destructive-subtle);border-left-color:var(--color-destructive)}.message.warning{background-color:var(--color-warning-surface);color:var(--color-warning);border-left-color:var(--color-warning)}.message.info{background-color:var(--color-brand-subtle);color:var(--color-brand-pressed);border-left-color:var(--color-brand)}.spinner{border:var(--stroke-thick) solid currentColor;border-radius:var(--radius-full);border-top-color:#0000;width:1em;height:1em;animation:.8s linear infinite spinner-rotate;display:inline-block}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.tooltip{font-size:var(--font-size-200);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);display:inline-block}.tooltip:first-letter{text-transform:uppercase}.tooltip{background-color:var(--color-foreground);color:var(--color-surface);padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);pointer-events:none;max-inline-size:20rem;box-shadow:var(--shadow-sm)}.tooltip[data-entering]{animation:tooltip-enter var(--duration-fast) var(--ease)}.tooltip[data-exiting]{animation:tooltip-enter var(--duration-fast) var(--ease) reverse}@keyframes tooltip-enter{0%{opacity:0;scale:.95}to{opacity:1;scale:1}}.button:focus-visible:not([data-rac]),.button[data-focus-visible]{box-shadow:var(--shadow-focus-ring);outline:none}.button{cursor:pointer}.button.filled,.button.outlined,.button.transparent,.button.destructive{font-size:var(--font-size-200);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);display:inline-block}.button.filled:first-letter,.button.outlined:first-letter,.button.transparent:first-letter,.button.destructive:first-letter{text-transform:uppercase}.button.filled,.button.outlined,.button.transparent,.button.destructive{justify-content:center;align-items:center;gap:var(--space-4);border-radius:var(--radius-md);border:var(--stroke-thin) solid transparent;max-inline-size:100%;text-decoration:none;display:inline-flex}.button.filled[data-pending],.button.outlined[data-pending],.button.transparent[data-pending],.button.destructive[data-pending]{cursor:progress}.button.filled.icon-right,.button.outlined.icon-right,.button.transparent.icon-right,.button.destructive.icon-right{flex-direction:row-reverse}.button.filled.icon-only,.button.outlined.icon-only,.button.transparent.icon-only,.button.destructive.icon-only{aspect-ratio:1;padding:var(--space-3)}.button.filled.sm,.button.outlined.sm,.button.transparent.sm,.button.destructive.sm{padding:var(--space-3) var(--space-5);font-size:var(--font-size-100)}.button.filled.md,.button.outlined.md,.button.transparent.md,.button.destructive.md{padding:var(--space-4) var(--space-6)}.button.filled.lg,.button.outlined.lg,.button.transparent.lg,.button.destructive.lg{padding:var(--space-5) var(--space-8);font-size:var(--font-size-300)}.button.filled{transition:background-color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), color var(--duration-base) var(--ease)}.button.filled:disabled:not([data-rac]),.button.filled[data-disabled]{cursor:not-allowed;pointer-events:none}.button.filled{background-color:var(--color-brand);color:var(--color-brand-foreground)}@media (hover:hover){.button.filled:hover:not([data-rac]){background-color:var(--color-brand-hovered)}}.button.filled[data-hovered]{background-color:var(--color-brand-hovered)}.button.filled:active:not([data-rac]),.button.filled[data-pressed]{background-color:var(--color-brand-pressed)}.button.filled:disabled:not([data-rac]),.button.filled[data-disabled]{background-color:var(--color-surface-sunken);color:var(--color-foreground-disabled)}.button.outlined{transition:background-color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), color var(--duration-base) var(--ease)}.button.outlined:disabled:not([data-rac]),.button.outlined[data-disabled]{cursor:not-allowed;pointer-events:none}.button.outlined{border:var(--stroke-thin) solid var(--color-brand);color:var(--color-brand);background-color:#0000}@media (hover:hover){.button.outlined:hover:not([data-rac]){background-color:var(--color-brand-subtle)}}.button.outlined[data-hovered]{background-color:var(--color-brand-subtle)}.button.outlined:active:not([data-rac]),.button.outlined[data-pressed]{background-color:var(--color-brand-subtle);border-color:var(--color-brand-hovered)}.button.outlined:disabled:not([data-rac]),.button.outlined[data-disabled]{border-color:var(--color-border-strong);color:var(--color-foreground-disabled);background-color:#0000}.button.transparent{transition:background-color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), color var(--duration-base) var(--ease)}.button.transparent:disabled:not([data-rac]),.button.transparent[data-disabled]{cursor:not-allowed;pointer-events:none}.button.transparent{color:var(--color-foreground);background-color:#0000}@media (hover:hover){.button.transparent:hover:not([data-rac]){background-color:var(--color-surface-hover)}}.button.transparent[data-hovered]{background-color:var(--color-surface-hover)}.button.transparent:active:not([data-rac]),.button.transparent[data-pressed]{background-color:var(--color-surface-sunken)}.button.transparent:disabled:not([data-rac]),.button.transparent[data-disabled]{color:var(--color-foreground-disabled);background-color:#0000}.button.destructive{transition:background-color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), color var(--duration-base) var(--ease)}.button.destructive:disabled:not([data-rac]),.button.destructive[data-disabled]{cursor:not-allowed;pointer-events:none}.button.destructive{background-color:var(--color-destructive);color:var(--color-destructive-foreground)}@media (hover:hover){.button.destructive:hover:not([data-rac]){background-color:var(--color-destructive-hovered)}}.button.destructive[data-hovered]{background-color:var(--color-destructive-hovered)}.button.destructive:active:not([data-rac]),.button.destructive[data-pressed]{background-color:var(--color-destructive-pressed)}.button.destructive:disabled:not([data-rac]),.button.destructive[data-disabled]{background-color:var(--color-surface-sunken);color:var(--color-foreground-disabled)}.button.underlined{font-size:var(--font-size-200);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);display:inline-block}.button.underlined:first-letter{text-transform:uppercase}.button.underlined{transition:background-color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), color var(--duration-base) var(--ease)}.button.underlined:disabled:not([data-rac]),.button.underlined[data-disabled]{cursor:not-allowed;pointer-events:none}.button.underlined{color:var(--color-foreground);background-color:#0000;text-decoration:none}@media (hover:hover){.button.underlined:hover:not([data-rac]){text-decoration:underline}}.button.underlined[data-hovered],.button.underlined:active:not([data-rac]),.button.underlined[data-pressed]{text-decoration:underline}.button.underlined:disabled:not([data-rac]),.button.underlined[data-disabled]{color:var(--color-foreground-disabled);text-decoration:none}.button .icon{flex-shrink:0;justify-content:center;align-items:center;width:1em;height:1em;display:inline-flex}.button .icon>svg{width:100%;height:100%}.button .label{text-overflow:ellipsis;white-space:nowrap;min-inline-size:0;overflow:hidden}.card{background-color:var(--color-surface);border:var(--stroke-thin) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.card.elevated{box-shadow:var(--shadow-lg)}}#root{width:100%}.app{background:var(--color-background);flex-direction:column;min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;justify-content:flex-start;width:100%;max-width:36rem;margin:0 auto;padding:2.5rem 1.5rem 3rem;display:flex}.card.auth-screen{width:100%;max-width:26rem;margin:4rem auto 0}.login-section,.authenticated-section{text-align:center;flex-direction:column;align-items:stretch;gap:1.25rem;display:flex}.login-section h2,.authenticated-section h2{color:var(--color-foreground);font-size:1.25rem;font-weight:500}
