:root{--color-blue-500: #2f7cf6;--color-teal-500: #00c9b7;--color-gray-900: #0b1220;--color-gray-800: #0f1726;--color-gray-700: #131d34;--color-gray-600: #1c2843;--color-gray-100: #f9fafb;--color-gray-200: #d0d6e0;--color-gray-300: #9aa8c7;--color-green-500: #2ec27e;--color-red-500: #ef6a6a;--color-bg: var(--color-gray-900);--color-surface: var(--color-gray-800);--color-panel: var(--color-gray-700);--color-line: var(--color-gray-600);--color-primary: var(--color-blue-500);--color-accent: var(--color-teal-500);--color-text: var(--color-gray-100);--color-text-muted: var(--color-gray-200);--color-text-subtle: var(--color-gray-300);--color-success: var(--color-green-500);--color-danger: var(--color-red-500);--color-warning: #f59e0b;--color-info: var(--color-primary);--font-family-base: "Work Sans", system-ui, -apple-system, "Segoe UI", "Roboto", "Helvetica", "Arial", sans-serif;--font-family-mono: ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", monospace;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-base: .9375rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.55;--line-height-relaxed: 1.75;--space-0: 0;--space-1: .5rem;--space-2: .75rem;--space-3: 1rem;--space-4: 1.25rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--space-10: 4rem;--space-12: 6rem;--space-form-group: var(--space-4);--space-card-padding: var(--space-5);--space-card-padding-sm: var(--space-4);--space-button-padding-x: 1.6rem;--space-button-padding-y: 1.1rem;--space-input-padding-x: 1rem;--space-input-padding-y: .85rem;--radius-none: 0;--radius-sm: .75rem;--radius-md: 1rem;--radius-lg: 1.25rem;--radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 8px 22px rgba(0, 0, 0, .35);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .45);--shadow-focus: 0 0 0 3px color-mix(in oklab, var(--color-primary) 20%, transparent 80%);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1200px;--container-auth-card: 420px;--z-index-base: 0;--z-index-dropdown: 10;--z-index-sticky: 100;--z-index-modal-backdrop: 900;--z-index-modal: 1000;--z-index-toast: 1100;--duration-instant: 0ms;--duration-fast: .1s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--transition-colors: color var(--duration-normal) var(--ease-in-out), background-color var(--duration-normal) var(--ease-in-out), border-color var(--duration-normal) var(--ease-in-out);--transition-transform: transform var(--duration-fast) var(--ease-out);--transition-opacity: opacity var(--duration-normal) var(--ease-in-out);--transition-all: all var(--duration-normal) var(--ease-in-out);--opacity-disabled: .6;--opacity-hover: .8;--opacity-muted: .7;--button-radius: var(--radius-full);--button-font-weight: var(--font-weight-bold);--button-transition: transform .06s var(--ease-out), background var(--duration-normal) var(--ease-in-out), border-color var(--duration-normal) var(--ease-in-out);--input-radius: var(--radius-sm);--input-border-width: 1px;--input-transition: border-color var(--duration-normal) var(--ease-in-out), box-shadow var(--duration-normal) var(--ease-in-out);--card-radius: var(--radius-md);--card-shadow: var(--shadow-md);--card-border-width: 1px;--header-height: 70px;--header-backdrop-blur: blur(10px) saturate(120%);--bg: var(--color-bg);--surface: var(--color-surface);--panel: var(--color-panel);--line: var(--color-line);--primary: var(--color-primary);--accent: var(--color-accent);--text: var(--color-text);--muted: var(--color-text-muted);--subtle: var(--color-text-subtle);--success: var(--color-success);--danger: var(--color-danger);--radius-sm: var(--radius-sm);--radius-md: var(--radius-md);--shadow-1: var(--shadow-md)}:root{--bg: #0b1220;--surface: #0f1726;--panel: #131d34;--line: #1c2843;--primary: #2f7cf6;--accent: #00c9b7;--text: #f9fafb;--muted: #d0d6e0;--subtle: #9aa8c7;--success: #2ec27e;--danger: #ef6a6a;--radius-sm: 12px;--radius-md: 16px;--shadow-1: 0 8px 22px rgba(0, 0, 0, .35)}*{box-sizing:border-box}body{margin:0;font-family:Work Sans,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;font-size:15px;line-height:1.55;color:var(--muted);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3{color:var(--text)}h1{font-size:clamp(2.4rem,3.8vw,3.4rem);font-weight:800}h2{font-size:clamp(1.8rem,2.4vw,2.3rem);font-weight:700}a{color:var(--primary);text-decoration:none}a:hover{color:color-mix(in oklab,var(--accent) 70%,white 30%)}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:420px;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:var(--radius-md);box-shadow:0 10px 25px #0000004d,0 4px 10px #0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;animation:slideIn .3s ease-out;border:1px solid;min-width:320px}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast--success{background:color-mix(in oklab,var(--success) 15%,var(--panel) 85%);border-color:color-mix(in oklab,var(--success) 40%,var(--line) 60%);color:var(--success)}.toast--error{background:color-mix(in oklab,var(--danger) 15%,var(--panel) 85%);border-color:color-mix(in oklab,var(--danger) 40%,var(--line) 60%);color:var(--danger)}.toast--info{background:color-mix(in oklab,var(--primary) 10%,var(--panel) 90%);border-color:color-mix(in oklab,var(--primary) 30%,var(--line) 70%);color:var(--primary)}.toast--warning{background:color-mix(in oklab,#f59e0b 15%,var(--panel) 85%);border-color:color-mix(in oklab,#f59e0b 40%,var(--line) 60%);color:#f59e0b}.toast__icon{font-size:20px;font-weight:700;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.toast__content{flex:1;min-width:0}.toast__title{font-weight:600;font-size:15px;margin-bottom:4px;color:var(--text)}.toast__message{font-size:14px;line-height:1.5;color:var(--muted)}.toast__action{margin-top:8px;padding:6px 12px;background:color-mix(in oklab,currentColor 15%,transparent 85%);border:1px solid currentColor;border-radius:4px;color:currentColor;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.toast__action:hover{background:color-mix(in oklab,currentColor 25%,transparent 75%);transform:translateY(-1px)}.toast__action:active{transform:translateY(0)}.toast__close{background:none;border:none;color:var(--muted);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s,color .2s;flex-shrink:0;font-size:16px}.toast__close:hover{background:color-mix(in oklab,var(--line) 50%,transparent 50%);color:var(--text)}@media (max-width: 640px){.toast-container{top:10px;right:10px;left:10px;max-width:none}.toast{min-width:0}}.nav-item{position:relative;display:flex;align-items:center;padding:12px 16px;margin:4px 8px;border-radius:8px;cursor:pointer;transition:background-color var(--transition-duration, .2s) ease-in-out,color var(--transition-duration, .2s) ease-in-out,transform .15s ease-in-out;color:var(--sidebar-text-secondary, #e0e0e0);-webkit-user-select:none;user-select:none}.nav-item:hover{background-color:var(--sidebar-hover, #2a2a2a);color:var(--sidebar-text, #ffffff)}.nav-item:active{transform:scale(.98)}.nav-item:focus{outline:2px solid var(--focus-color, #4a9eff);outline-offset:2px}.nav-item:focus-visible{outline:2px solid var(--focus-color, #4a9eff);outline-offset:2px;box-shadow:0 0 0 4px #4a9eff33}.nav-item:focus:not(:focus-visible){outline:none;box-shadow:none}.nav-item--active{background-color:var(--sidebar-active, #3a3a3a);color:var(--sidebar-text, #ffffff);font-weight:500;position:relative}.nav-item--active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background-color:var(--focus-color, #4a9eff);border-radius:0 2px 2px 0;transition:height var(--transition-duration, .2s) ease-in-out}.nav-item--active:hover{background-color:var(--sidebar-active, #3a3a3a)}.nav-item--active:hover:before{height:80%}.nav-item--collapsed{justify-content:center;padding:12px}.nav-item__content{display:flex;align-items:center;gap:12px;width:100%;transition:gap var(--transition-duration, .2s) ease-in-out}.nav-item--collapsed .nav-item__content{justify-content:center;gap:0}.nav-item__icon{flex-shrink:0;transition:transform .15s ease-in-out}.nav-item:hover .nav-item__icon{transform:scale(1.1)}.nav-item__label{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:1;transition:opacity var(--transition-duration, .2s) ease-in-out}.nav-item--collapsed .nav-item__label{opacity:0;width:0}.nav-item__tooltip{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%) scale(.95);background-color:var(--sidebar-hover, #2a2a2a);color:var(--sidebar-text, #ffffff);padding:8px 12px;border-radius:6px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 4px 16px #0006;z-index:1000;pointer-events:none;opacity:0;animation:tooltipFadeIn .15s ease-in-out forwards}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-50%) scale(.95)}to{opacity:1;transform:translateY(-50%) scale(1)}}.nav-item__tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--sidebar-hover, #2a2a2a)}@media (prefers-reduced-motion: reduce){.nav-item,.nav-item__content,.nav-item__icon,.nav-item__label,.nav-item--active:before{transition:none}.nav-item__tooltip{animation:none;opacity:1;transform:translateY(-50%) scale(1)}}:root{--sidebar-width-expanded: 240px;--sidebar-width-collapsed: 64px;--sidebar-bg: var(--surface);--sidebar-text: var(--text);--sidebar-text-secondary: var(--muted);--sidebar-border: var(--line);--sidebar-hover: var(--panel);--sidebar-active: color-mix(in oklab, var(--primary) 15%, var(--panel) 85%);--scrollbar-thumb: var(--line);--scrollbar-thumb-hover: var(--subtle);--focus-color: var(--primary);--transition-duration: .2s}.navigation-sidebar{position:fixed;left:0;top:0;height:100vh;width:var(--sidebar-width-expanded);background-color:var(--sidebar-bg);display:flex;flex-direction:column;transition:width var(--transition-duration) ease-in-out,box-shadow var(--transition-duration) ease-in-out;z-index:100;border-right:1px solid var(--sidebar-border);box-shadow:2px 0 8px #0000001a}.navigation-sidebar--collapsed{width:var(--sidebar-width-collapsed)}.navigation-sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--sidebar-border, #2a2a2a);min-height:64px;transition:padding var(--transition-duration, .2s) ease-in-out}.navigation-sidebar--collapsed .navigation-sidebar__header{justify-content:center;padding:16px 12px}.navigation-sidebar__logo{display:flex;align-items:center;gap:12px;opacity:1;transition:opacity var(--transition-duration, .2s) ease-in-out}.navigation-sidebar--collapsed .navigation-sidebar__logo{opacity:0;pointer-events:none}.navigation-sidebar__logo-text{font-size:18px;font-weight:600;color:var(--sidebar-text, #ffffff);white-space:nowrap}.navigation-sidebar__toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background-color:transparent;color:var(--sidebar-text-secondary, #e0e0e0);cursor:pointer;border-radius:6px;transition:background-color var(--transition-duration, .2s) ease-in-out,color var(--transition-duration, .2s) ease-in-out,transform .15s ease-in-out;flex-shrink:0}.navigation-sidebar__toggle:hover{background-color:var(--sidebar-hover, #2a2a2a);color:var(--sidebar-text, #ffffff)}.navigation-sidebar__toggle:active{transform:scale(.95)}.navigation-sidebar__toggle:focus{outline:2px solid var(--focus-color, #4a9eff);outline-offset:2px}.navigation-sidebar__toggle:focus-visible{outline:2px solid var(--focus-color, #4a9eff);outline-offset:2px;box-shadow:0 0 0 4px #4a9eff33}.navigation-sidebar__toggle:focus:not(:focus-visible){outline:none;box-shadow:none}.navigation-sidebar__nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 0;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, #3a3a3a) transparent}.navigation-sidebar__nav::-webkit-scrollbar{width:6px}.navigation-sidebar__nav::-webkit-scrollbar-track{background:transparent}.navigation-sidebar__nav::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #3a3a3a);border-radius:3px;transition:background var(--transition-duration, .2s) ease-in-out}.navigation-sidebar__nav::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #4a4a4a)}@media (prefers-reduced-motion: reduce){.navigation-sidebar,.navigation-sidebar__header,.navigation-sidebar__logo,.navigation-sidebar__toggle,.navigation-sidebar__nav::-webkit-scrollbar-thumb{transition:none}}@media (max-width: 768px){.navigation-sidebar{transform:translate(-100%);transition:transform var(--transition-duration) ease-in-out;box-shadow:4px 0 16px #0003;width:var(--sidebar-width-expanded);z-index:100}.navigation-sidebar--mobile-open{transform:translate(0)}.navigation-sidebar--collapsed{width:var(--sidebar-width-expanded)}.navigation-sidebar__toggle{display:none}.navigation-sidebar--mobile-open .navigation-sidebar__toggle{display:flex}}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--button-font-weight);line-height:var(--line-height-tight);text-align:center;text-decoration:none;white-space:nowrap;padding:var(--space-button-padding-y) var(--space-button-padding-x);border:none;border-radius:var(--button-radius);cursor:pointer;outline:none;transition:var(--button-transition);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.button:focus-visible{box-shadow:var(--shadow-focus);outline:none}.button:active:not(:disabled){transform:scale(.98)}.button:disabled{cursor:not-allowed;opacity:.5}.button--primary{background:var(--color-primary);color:var(--color-text)}.button--primary:hover:not(:disabled){background:color-mix(in oklab,var(--color-primary) 85%,white 15%)}.button--primary:active:not(:disabled){background:color-mix(in oklab,var(--color-primary) 90%,black 10%)}.button--secondary{background:var(--color-surface);color:var(--color-text);border:var(--input-border-width) solid var(--color-line)}.button--secondary:hover:not(:disabled){background:var(--color-panel);border-color:color-mix(in oklab,var(--color-line) 80%,white 20%)}.button--secondary:active:not(:disabled){background:color-mix(in oklab,var(--color-panel) 95%,black 5%)}.button--danger{background:var(--color-danger);color:var(--color-text)}.button--danger:hover:not(:disabled){background:color-mix(in oklab,var(--color-danger) 85%,white 15%)}.button--danger:active:not(:disabled){background:color-mix(in oklab,var(--color-danger) 90%,black 10%)}.button--small{font-size:var(--font-size-sm);padding:var(--space-2) var(--space-4);gap:var(--space-1)}.button--medium{font-size:var(--font-size-base);padding:var(--space-button-padding-y) var(--space-button-padding-x);gap:var(--space-2)}.button--large{font-size:var(--font-size-lg);padding:var(--space-4) var(--space-6);gap:var(--space-3)}.button--loading{position:relative;cursor:wait}.button-content--loading{opacity:0}.button-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.button-spinner-icon{width:1.25rem;height:1.25rem;animation:button-spin var(--duration-slower) var(--ease-linear) infinite}.button--small .button-spinner-icon{width:1rem;height:1rem}.button--large .button-spinner-icon{width:1.5rem;height:1.5rem}.button-spinner-track{opacity:.25}.button-spinner-path{opacity:.75}@keyframes button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: var(--breakpoint-sm)){.button{min-height:2.75rem}.button--small{min-height:2.25rem}.button--large{min-height:3.25rem}}@media (prefers-contrast: high){.button{border:calc(var(--input-border-width) * 2) solid currentColor}}@media (prefers-reduced-motion: reduce){.button{transition:none}.button:active:not(:disabled){transform:none}.button-spinner-icon{animation:none}}:root{--sidebar-width-expanded: 240px;--sidebar-width-collapsed: 64px;--content-padding: 24px;--content-max-width: 1400px;--transition-duration: .2s}.app-layout{display:flex;min-height:100vh;width:100%;background-color:var(--bg)}.app-layout__main{flex:1;margin-left:var(--sidebar-width-expanded);transition:margin-left var(--transition-duration) ease-in-out;min-width:0;width:100%;box-sizing:border-box;display:flex;flex-direction:column}.app-layout__main--expanded{margin-left:var(--sidebar-width-collapsed)}.app-layout__header{position:sticky;top:0;z-index:100;background:color-mix(in oklab,var(--bg) 82%,black 18%);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-layout__header-content{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 var(--content-padding)}.app-layout__header-left{display:flex;align-items:center}.app-layout__logo{height:32px;width:auto}.app-layout__header-right{display:flex;align-items:center;gap:16px}.app-layout__user-info{color:var(--muted);font-size:14px;display:none}@media (min-width: 640px){.app-layout__user-info{display:inline}}.app-layout__content{flex:1;padding:var(--content-padding);min-width:0;width:100%;box-sizing:border-box;overflow-y:auto;overflow-x:hidden}.app-layout__content>*{max-width:var(--content-max-width);margin:0 auto;width:100%}.app-layout__content{scroll-behavior:smooth}.app-layout__content::-webkit-scrollbar{width:8px}.app-layout__content::-webkit-scrollbar-track{background:transparent}.app-layout__content::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px;transition:background var(--transition-duration) ease-in-out}.app-layout__content::-webkit-scrollbar-thumb:hover{background:var(--subtle)}@media (prefers-reduced-motion: reduce){.app-layout__content,.app-layout__content::-webkit-scrollbar-thumb{transition:none}.app-layout__content{scroll-behavior:auto}}@media (max-width: 1024px){.app-layout__content{padding:16px}}.app-layout__mobile-menu-button{position:fixed;top:16px;left:16px;z-index:150;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);background-color:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;box-shadow:var(--shadow-1);transition:background-color var(--transition-duration) ease-in-out,transform .15s ease-in-out}.app-layout__mobile-menu-button:hover{background-color:var(--panel)}.app-layout__mobile-menu-button:active{transform:scale(.95)}.app-layout__mobile-menu-button:focus{outline:2px solid var(--primary);outline-offset:2px}.app-layout__mobile-menu-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in oklab,var(--primary) 20%,transparent 80%),var(--shadow-1)}.app-layout__mobile-menu-button:focus:not(:focus-visible){outline:none}.app-layout__backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:90;animation:fadeIn var(--transition-duration) ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.app-layout__main,.app-layout__main--expanded{margin-left:0}.app-layout__header-content{padding-left:72px}.app-layout__content{padding:16px}}.input-container{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.input-label{font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text);display:block;margin-bottom:var(--space-1);cursor:pointer}.input-required{color:var(--color-danger);margin-left:var(--space-1);font-weight:var(--font-weight-bold)}.input{display:block;width:100%;font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text);padding:var(--space-input-padding-y) var(--space-input-padding-x);background:var(--color-surface);border:var(--input-border-width) solid var(--color-line);border-radius:var(--input-radius);outline:none;transition:var(--input-transition);-webkit-appearance:none;-moz-appearance:none;appearance:none}.input::placeholder{color:var(--color-text-subtle);opacity:1}.input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);background:var(--color-panel)}.input:hover:not(:disabled):not(:focus){border-color:color-mix(in oklab,var(--color-line) 80%,white 20%);background:var(--color-panel)}.input--error{border-color:var(--color-danger);background:color-mix(in oklab,var(--color-danger) 5%,var(--color-surface) 95%)}.input--error:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px color-mix(in oklab,var(--color-danger) 20%,transparent 80%)}.input--disabled,.input:disabled{cursor:not-allowed;opacity:.5;background:var(--color-surface);border-color:var(--color-line)}.input:disabled::placeholder{color:var(--color-text-subtle)}.input-error{font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--color-danger);display:flex;align-items:flex-start;gap:var(--space-1);margin-top:calc(var(--space-1) * -1)}.input-helper{font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--color-text-muted);margin-top:calc(var(--space-1) * -1)}.input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.input[type=number]::-webkit-inner-spin-button,.input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.input[type=password]{letter-spacing:.05em}@media (max-width: var(--breakpoint-sm)){.input{font-size:var(--font-size-base);min-height:2.75rem}}@media (prefers-contrast: high){.input{border-width:calc(var(--input-border-width) * 2)}.input:focus{outline:calc(var(--input-border-width) * 2) solid currentColor;outline-offset:2px}}@media (prefers-reduced-motion: reduce){.input{transition:none}}.input:focus:not(:focus-visible){box-shadow:none}.input:focus-visible{box-shadow:var(--shadow-focus)}.input:-webkit-autofill,.input:-webkit-autofill:hover,.input:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-text);-webkit-box-shadow:0 0 0 1000px var(--color-surface) inset;box-shadow:0 0 0 1000px var(--color-surface) inset;border-color:var(--color-line);transition:background-color 5000s ease-in-out 0s}.input:-webkit-autofill:focus{border-color:var(--color-primary)}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);border-width:1px;border-style:solid;font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);transition:var(--transition-opacity);position:relative}.alert-icon-wrapper{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:1.5rem;height:1.5rem}.alert-icon{width:100%;height:100%}.alert-content{flex:1;min-width:0}.alert-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin-bottom:var(--space-1)}.alert-message{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);word-wrap:break-word}.alert-message a{text-decoration:underline;font-weight:var(--font-weight-semibold)}.alert-message a:hover{opacity:.8}.alert-dismiss{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:1.5rem;height:1.5rem;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-opacity);padding:0;margin:0}.alert-dismiss:hover{opacity:.7}.alert-dismiss:focus-visible{outline:2px solid currentColor;outline-offset:2px}.alert-dismiss:active{opacity:.5}.alert-dismiss-icon{width:100%;height:100%}.alert--success{background:color-mix(in oklab,var(--color-success) 10%,var(--color-surface) 90%);border-color:color-mix(in oklab,var(--color-success) 30%,transparent 70%);color:var(--color-text)}.alert--success .alert-icon-wrapper,.alert--success .alert-title,.alert--success .alert-dismiss{color:var(--color-success)}.alert--error{background:color-mix(in oklab,var(--color-danger) 10%,var(--color-surface) 90%);border-color:color-mix(in oklab,var(--color-danger) 30%,transparent 70%);color:var(--color-text)}.alert--error .alert-icon-wrapper,.alert--error .alert-title,.alert--error .alert-dismiss{color:var(--color-danger)}.alert--warning{background:color-mix(in oklab,var(--color-warning) 10%,var(--color-surface) 90%);border-color:color-mix(in oklab,var(--color-warning) 30%,transparent 70%);color:var(--color-text)}.alert--warning .alert-icon-wrapper,.alert--warning .alert-title,.alert--warning .alert-dismiss{color:var(--color-warning)}.alert--info{background:color-mix(in oklab,var(--color-info) 10%,var(--color-surface) 90%);border-color:color-mix(in oklab,var(--color-info) 30%,transparent 70%);color:var(--color-text)}.alert--info .alert-icon-wrapper,.alert--info .alert-title,.alert--info .alert-dismiss{color:var(--color-info)}@media (max-width: var(--breakpoint-sm)){.alert{padding:var(--space-3);gap:var(--space-2)}.alert-icon-wrapper,.alert-dismiss{width:1.25rem;height:1.25rem}}@media (prefers-contrast: high){.alert{border-width:2px}.alert-dismiss:focus-visible{outline-width:3px}}@media (prefers-reduced-motion: reduce){.alert,.alert-dismiss{transition:none}}@media print{.alert{border:1px solid currentColor;page-break-inside:avoid}.alert-dismiss{display:none}}.form{display:flex;flex-direction:column;gap:var(--space-form-group);width:100%;margin:0;padding:0}.form--compact{gap:var(--space-3)}.form--spacious{gap:var(--space-6)}.form-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-line)}.form-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-3) 0}.form-section-description{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 var(--space-4) 0;line-height:var(--line-height-normal)}.form-actions{display:flex;gap:var(--space-3);align-items:center;justify-content:flex-start;margin-top:var(--space-2)}.form-actions--end{justify-content:flex-end}.form-actions--center{justify-content:center}.form-actions--space-between{justify-content:space-between}.form-row{display:flex;gap:var(--space-3);align-items:flex-start}.form-row>*{flex:1;min-width:0}@media (max-width: 640px){.form-row{flex-direction:column}.form-row>*{width:100%}}.card{background-color:var(--color-surface);border:var(--card-border-width) solid var(--color-line);border-radius:var(--card-radius);box-shadow:var(--card-shadow);display:flex;flex-direction:column;min-width:0;transition:var(--transition-all)}.card--compact .card-body{padding:var(--space-card-padding-sm)}@media (max-width: 640px){.card-body,.card-header,.card-footer{padding:var(--space-card-padding-sm)}}.card-header{padding:var(--space-card-padding);border-bottom:1px solid var(--color-line);color:var(--color-text);font-weight:var(--font-weight-semibold);overflow-wrap:break-word;word-wrap:break-word}.card-body{padding:var(--space-card-padding);flex:1 1 auto;color:var(--color-text-muted);font-size:var(--font-size-base);line-height:var(--line-height-normal);overflow-wrap:break-word;word-wrap:break-word}.card-header+.card-body{padding-top:var(--space-card-padding)}.card-body:has(+.card-footer){padding-bottom:var(--space-card-padding)}.card-footer{padding:var(--space-card-padding);border-top:1px solid var(--color-line);color:var(--color-text-muted);font-size:var(--font-size-sm);overflow-wrap:break-word;word-wrap:break-word}.card:focus-within{outline:none}@media print{.card{box-shadow:none;border:1px solid var(--color-line);page-break-inside:avoid}}.file-upload-zone-container{width:100%;padding:1rem}.file-upload-zone{border:2px dashed #cbd5e0;border-radius:8px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .2s ease;background-color:#f7fafc}.file-upload-zone:hover:not(.disabled){border-color:#4299e1;background-color:#ebf8ff}.file-upload-zone.dragging{border-color:#4299e1;background-color:#ebf8ff;border-style:solid}.file-upload-zone.disabled{opacity:.5;cursor:not-allowed;background-color:#edf2f7}.upload-icon{color:#4299e1;margin-bottom:1rem;display:flex;justify-content:center}.upload-text{color:#2d3748}.upload-primary{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.upload-secondary{font-size:.875rem;color:#718096;margin-bottom:.5rem}.upload-hint{font-size:.75rem;color:#a0aec0;margin-top:.5rem}.file-upload-manager{width:100%}.upload-progress-container{margin-top:2rem;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;background-color:#fff}.upload-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.upload-progress-header h3{font-size:1.125rem;font-weight:600;color:#2d3748;margin:0}.retry-button,.clear-button{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button{background-color:#4299e1;color:#fff}.retry-button:hover{background-color:#3182ce}.clear-button{background-color:#edf2f7;color:#2d3748}.clear-button:hover{background-color:#e2e8f0}.upload-progress-list{display:flex;flex-direction:column;gap:.75rem}.upload-file-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e2e8f0;border-radius:6px;background-color:#f7fafc}.upload-file-item.completed{border-color:#48bb78;background-color:#f0fff4}.upload-file-item.error{border-color:#f56565;background-color:#fff5f5}.file-info{display:flex;align-items:center;gap:.75rem;flex:1}.file-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:#edf2f7}.upload-file-item.completed .file-icon{background-color:#c6f6d5;color:#22543d}.upload-file-item.error .file-icon{background-color:#fed7d7;color:#742a2a}.upload-file-item.uploading .file-icon,.upload-file-item.pending .file-icon{background-color:#bee3f8;color:#2c5282}.file-details{display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.875rem;font-weight:500;color:#2d3748}.file-size{font-size:.75rem;color:#718096}.file-status{min-width:150px;text-align:right}.status-text{font-size:.875rem;font-weight:500}.status-text.success{color:#22543d}.status-text.error{color:#742a2a;font-size:.75rem}.progress-bar{width:150px;height:8px;background-color:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background-color:#4299e1;transition:width .3s ease}.upload-info-message{margin-top:1rem;padding:1rem;background-color:#ebf8ff;border-left:4px solid #4299e1;border-radius:4px}.upload-info-message p{margin:0;font-size:.875rem;color:#2c5282}.fai-page{padding:2rem;max-width:1400px;margin:0 auto}.fai-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.fai-header h1{margin:0;font-size:2rem;color:#1a1a1a}.btn-new-inspection{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.btn-new-inspection:hover{background-color:#0056b3}.fai-upload-section{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}.upload-instructions{padding:2rem;background-color:#f8f9fa;border-radius:8px}.upload-instructions h2{margin-top:0;margin-bottom:1rem;color:#1a1a1a}.upload-instructions p{color:#666;line-height:1.6;margin-bottom:1.5rem}.supported-formats{list-style:none;padding:0;margin:1.5rem 0}.supported-formats li{padding:.5rem 0;color:#28a745;font-weight:500}.file-limit{font-size:.875rem;color:#999;margin-top:1.5rem}.fai-workspace{margin-top:2rem}.inspection-info{display:flex;gap:2rem;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;margin-bottom:2rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.875rem;color:#666;font-weight:500}.info-value{font-size:1.125rem;color:#1a1a1a;font-weight:600}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.status-processing{background-color:#fff3cd;color:#856404}.status-complete{background-color:#d4edda;color:#155724}.drawing-status-list{text-align:left;max-width:600px;margin:0 auto}.drawing-status-list h4{margin:0 0 1rem;color:#1a1a1a;font-size:1.125rem}.drawing-status-item{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#f8f9fa;border-radius:8px;margin-bottom:.75rem}.status-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;border-radius:50%;flex-shrink:0}.drawing-status-item .status-icon{background-color:#e9ecef}.status-details{flex:1}.status-name{font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.status-info{font-size:.875rem}.status-success{color:#28a745;font-weight:500}.status-error{color:#dc3545;font-weight:500}.status-uploading{color:#6c757d;font-weight:500}.drawing-viewer{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.viewer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0;background-color:#f8f9fa}.viewer-header h2{margin:0;font-size:1.25rem;color:#1a1a1a}.canvas-container{height:600px;background-color:#f5f5f5}.processing-placeholder{text-align:center;padding:4rem 2rem;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px}.processing-animation{margin-bottom:2rem}.spinner{width:60px;height:60px;margin:0 auto;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-placeholder h3{margin:0 0 1rem;color:#1a1a1a;font-size:1.5rem}.processing-placeholder p{color:#666;line-height:1.6;max-width:600px;margin:0 auto 1rem}.processing-note{font-size:.875rem;color:#999;font-style:italic}@media (max-width: 768px){.fai-page{padding:1rem}.fai-header{flex-direction:column;align-items:flex-start;gap:1rem}.fai-upload-section{grid-template-columns:1fr}.inspection-info{flex-direction:column;gap:1rem}.canvas-container{height:400px}}.zoom-controls{display:flex;align-items:center;gap:8px;padding:8px;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px #0000001a}.zoom-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;color:#333}.zoom-button:hover:not(:disabled){background-color:#f5f5f5;border-color:#999}.zoom-button:active:not(:disabled){background-color:#e5e5e5}.zoom-button:disabled{opacity:.4;cursor:not-allowed}.zoom-level{min-width:60px;height:32px;padding:0 12px;background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;color:#333;transition:all .2s}.zoom-level:hover{background-color:#f5f5f5;border-color:#999}.zoom-level:active{background-color:#e5e5e5}.drawing-canvas-container{width:100%;height:100%;position:relative;overflow:hidden;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px}.drawing-canvas{display:block;width:100%;height:100%;cursor:default;touch-action:none}.drawing-canvas:active{cursor:grabbing}.drawing-canvas:hover{cursor:grab}.canvas-controls{position:absolute;bottom:16px;right:16px;z-index:10}.drawing-results-page{padding:var(--space-4);max-width:1600px;margin:0 auto}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.results-header h1{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.results-layout{display:grid;grid-template-columns:350px 1fr;gap:var(--space-4);align-items:start}.drawing-list-sidebar{position:sticky;top:var(--space-4)}.drawing-list-sidebar h2{margin:0 0 var(--space-3) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.drawing-list{display:flex;flex-direction:column;gap:var(--space-2)}.drawing-list-item{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;background:var(--surface-primary)}.drawing-list-item:hover{border-color:var(--color-primary);background:var(--surface-secondary)}.drawing-list-item.selected{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 2px var(--color-primary-light)}.drawing-item-header{display:flex;align-items:flex-start;gap:var(--space-2)}.drawing-status-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.drawing-status-icon:has(+.drawing-item-info .status-success){color:var(--color-success)}.drawing-status-icon:has(+.drawing-item-info .status-processing){color:var(--color-info);animation:spin 2s linear infinite}.drawing-status-icon:has(+.drawing-item-info .status-pending){color:var(--text-muted)}.drawing-status-icon:has(+.drawing-item-info .status-error){color:var(--color-danger)}.drawing-item-info{flex:1;min-width:0}.drawing-filename{font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawing-status-text{font-size:var(--font-size-sm)}.status-success{color:var(--color-success)}.status-processing{color:var(--color-info)}.status-pending{color:var(--text-muted)}.status-error{color:var(--color-danger)}.drawing-werk24-status{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-color);font-size:var(--font-size-sm);color:var(--text-muted)}.werk24-info{display:flex;gap:var(--space-2)}.werk24-warnings{margin-top:var(--space-1);color:var(--color-warning)}.drawing-viewer-main{min-height:600px}.viewer-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.viewer-header h2{margin:0 0 var(--space-1) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.viewer-metadata{display:flex;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-muted)}.sheet-images-container{display:flex;flex-direction:column;gap:var(--space-4)}.sheet-image-section h3{margin:0 0 var(--space-2) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-primary)}.canvas-wrapper{width:100%;height:600px;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-secondary)}.processing-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center}.processing-animation{margin-bottom:var(--space-4)}.processing-placeholder h3{margin:0 0 var(--space-2) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.processing-placeholder p{margin:0;color:var(--text-muted)}.no-selection-placeholder{display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center;color:var(--text-muted)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center}.loading-state .spinner{margin-bottom:var(--space-3)}.loading-state p{margin:0;color:var(--text-muted)}.payload-summary{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-color)}.payload-summary h3{margin:0 0 var(--space-3) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-primary)}.payload-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2)}.payload-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);background:var(--surface-secondary);border-radius:var(--radius-sm)}.payload-type{font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.payload-count{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1024px){.results-layout{grid-template-columns:1fr}.drawing-list-sidebar{position:static}}@media (max-width: 768px){.drawing-results-page{padding:var(--space-3)}.results-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.canvas-wrapper{height:400px}.payload-list{grid-template-columns:1fr}}.container{max-width:var(--container-xl);margin:0 auto;padding:0 var(--space-5)}.page{min-height:100vh;display:flex;flex-direction:column}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-6) var(--space-3)}.auth-card{background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 85%,black 15%),var(--panel));border:var(--card-border-width) solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-1);padding:var(--space-7);width:100%;max-width:var(--container-auth-card)}.auth-card h1{margin:0 0 var(--space-1);font-size:var(--font-size-2xl);text-align:center}.auth-card p{text-align:center;margin:0 0 var(--space-6);color:var(--muted)}.form-group{margin-bottom:var(--space-form-group)}.form-group label{display:block;margin-bottom:var(--space-1);color:var(--text);font-weight:var(--font-weight-semibold)}.form-group input{width:100%;padding:var(--space-input-padding-y) var(--space-input-padding-x);background:color-mix(in oklab,var(--surface) 85%,black 15%);color:var(--text);border:var(--input-border-width) solid var(--line);border-radius:var(--input-radius);font-size:var(--font-size-base);font-family:var(--font-family-base);transition:var(--input-transition)}.form-group input:focus{outline:none;border-color:var(--primary);box-shadow:var(--shadow-focus)}.form-group input::placeholder{color:var(--subtle)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-button-padding-y) var(--space-button-padding-x);border-radius:var(--button-radius);font-weight:var(--button-font-weight);border:var(--card-border-width) solid transparent;font-size:var(--font-size-base);font-family:var(--font-family-base);cursor:pointer;transition:var(--button-transition);text-decoration:none}.btn--primary{color:var(--color-gray-900);background:linear-gradient(180deg,var(--primary),color-mix(in oklab,var(--primary) 45%,var(--accent) 55%));border-color:color-mix(in oklab,var(--primary) 60%,white 40%)}.btn--primary:hover{transform:translateY(-1px)}.btn--primary:disabled{opacity:var(--opacity-disabled);cursor:not-allowed;transform:none}.btn--secondary{color:var(--text);background:color-mix(in oklab,var(--panel) 80%,var(--primary) 20%);border-color:color-mix(in oklab,var(--primary) 35%,var(--line) 65%)}.btn--secondary:hover{background:color-mix(in oklab,var(--panel) 70%,var(--primary) 30%)}.btn--full{width:100%}.error-message{background:color-mix(in oklab,var(--danger) 15%,var(--panel) 85%);border:var(--card-border-width) solid color-mix(in oklab,var(--danger) 40%,var(--line) 60%);border-radius:var(--radius-sm);padding:var(--space-input-padding-y) var(--space-input-padding-x);color:var(--danger);margin-bottom:var(--space-form-group);font-size:var(--font-size-sm)}.success-message{background:color-mix(in oklab,var(--success) 15%,var(--panel) 85%);border:var(--card-border-width) solid color-mix(in oklab,var(--success) 40%,var(--line) 60%);border-radius:var(--radius-sm);padding:var(--space-input-padding-y) var(--space-input-padding-x);color:var(--success);margin-bottom:var(--space-form-group);font-size:var(--font-size-sm)}.info-message{background:color-mix(in oklab,var(--primary) 10%,var(--panel) 90%);border:var(--card-border-width) solid color-mix(in oklab,var(--primary) 30%,var(--line) 70%);border-radius:var(--radius-sm);padding:var(--space-input-padding-y) var(--space-input-padding-x);color:var(--text);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.auth-footer{text-align:center;margin-top:var(--space-5);padding-top:var(--space-5);border-top:var(--card-border-width) solid var(--line);color:var(--muted)}.auth-footer a{color:var(--primary);font-weight:var(--font-weight-semibold)}.auth-footer a:hover{color:var(--accent)}.header{position:sticky;top:0;z-index:var(--z-index-sticky);-webkit-backdrop-filter:var(--header-backdrop-blur);backdrop-filter:var(--header-backdrop-blur);background:color-mix(in oklab,var(--bg) 82%,black 18%);border-bottom:var(--card-border-width) solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;height:var(--header-height)}.logo{display:inline-flex;align-items:center;text-decoration:none;transition:var(--transition-opacity)}.logo:hover{opacity:var(--opacity-hover)}.auth-logo{text-align:center;margin-bottom:var(--space-6)}.auth-logo img{height:var(--space-8);display:inline-block}.nav-actions{display:flex;gap:var(--space-3);align-items:center}.user-info{color:var(--muted);font-size:var(--font-size-sm)}.main-content{flex:1;padding:var(--space-8) 0}.card{background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 85%,black 15%),var(--panel));border:var(--card-border-width) solid var(--line);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--space-card-padding)}.loading{display:flex;align-items:center;justify-content:center;min-height:var(--space-12);color:var(--muted)}@media (max-width: var(--breakpoint-sm)){.auth-card{padding:var(--space-6) var(--space-5)}.btn{padding:var(--space-2) var(--space-4)}}
