@import"https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono);font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.collapse{visibility:collapse}.static{position:static}.flex{display:flex}.table{display:table}.border-collapse{border-collapse:collapse}.uppercase{text-transform:uppercase}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--font-sans: "Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-md: 15px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 22px;--text-3xl: 28px;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed:1.625;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-wider: .08em;--space-0: 0px;--space-px: 1px;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-3-5: 14px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-2xl: 12px;--radius-3xl: 16px;--radius-full: 9999px;--duration-fast: .1s;--duration-base: .15s;--duration-slow: .25s;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-raised: 10;--z-dropdown:50;--z-sticky: 100;--z-overlay: 200;--z-modal: 300;--z-toast: 400;--neutral-0: #ffffff;--neutral-50: #fafafa;--neutral-100: #f5f5f5;--neutral-200: #e5e5e5;--neutral-300: #d4d4d4;--neutral-400: #a3a3a3;--neutral-500: #737373;--neutral-600: #525252;--neutral-700: #404040;--neutral-800: #262626;--neutral-900: #171717;--neutral-950: #0a0a0a;--orange-50: #fff7ed;--orange-100: #ffedd5;--orange-200: #fed7aa;--orange-300: #fdba74;--orange-400: #fb923c;--orange-500: #f97316;--orange-600: #f55036;--orange-700: #c2410c;--orange-800: #9a3412;--orange-900: #7c2d12;--green-500: #22c55e;--green-600: #16a34a;--green-100: #dcfce7;--green-800: #166534;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-100: #dbeafe;--blue-800: #1e40af;--red-500: #ef4444;--red-600: #dc2626;--red-100: #fee2e2;--red-800: #991b1b;--amber-400: #fbbf24;--amber-500: #f59e0b;--amber-100: #fef3c7;--amber-800: #92400e;--color-bg: var(--neutral-0);--color-surface-0: var(--neutral-0);--color-surface-1: var(--neutral-50);--color-surface-2: var(--neutral-100);--color-surface-3: var(--neutral-200);--color-border-subtle: var(--neutral-100);--color-border: var(--neutral-200);--color-border-strong: var(--neutral-300);--color-text-primary: var(--neutral-900);--color-text-secondary: var(--neutral-600);--color-text-muted: var(--neutral-400);--color-text-disabled: var(--neutral-300);--color-text-inverse: var(--neutral-0);--color-text-on-accent: var(--neutral-0);--color-accent: var(--orange-600);--color-accent-hover: var(--orange-500);--color-accent-muted: var(--orange-50);--color-accent-border: var(--orange-200);--color-accent-text: var(--orange-600);--color-success: var(--green-500);--color-success-bg: var(--green-100);--color-success-text: var(--green-800);--color-success-border: #bbf7d0;--color-warning: var(--amber-500);--color-warning-bg: var(--amber-100);--color-warning-text: var(--amber-800);--color-warning-border: #fde68a;--color-error: var(--red-500);--color-error-bg: var(--red-100);--color-error-text: var(--red-800);--color-error-border: #fecaca;--color-info: var(--blue-500);--color-info-bg: var(--blue-100);--color-info-text: var(--blue-800);--color-info-border: #bfdbfe;--color-focus-ring: rgba(245, 80, 54, .35);--shadow-xs: 0 1px 2px 0 rgba(0,0,0,.05);--shadow-sm: 0 1px 3px 0 rgba(0,0,0,.08), 0 1px 2px -1px rgba(0,0,0,.06);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.08), 0 2px 4px -2px rgba(0,0,0,.06);--shadow-lg: 0 8px 24px -4px rgba(0,0,0,.1), 0 2px 8px -2px rgba(0,0,0,.06);--shadow-xl: 0 20px 40px -8px rgba(0,0,0,.14), 0 4px 12px -2px rgba(0,0,0,.08);--shadow-focus: 0 0 0 3px var(--color-focus-ring);--sidebar-width: 240px;--topbar-height: 56px;--panel-width: 380px}[data-theme=dark],.dark{--color-bg: #0d0d0f;--color-surface-0: #0d0d0f;--color-surface-1: #141416;--color-surface-2: #1c1c20;--color-surface-3: #242428;--color-border-subtle: #1e1e22;--color-border: #27272c;--color-border-strong: #36363e;--color-text-primary: #f4f4f5;--color-text-secondary: #a1a1aa;--color-text-muted: #71717a;--color-text-disabled: #3f3f46;--color-text-inverse: #0d0d0f;--color-text-on-accent: #ffffff;--color-accent: #f55036;--color-accent-hover: #ff6b52;--color-accent-muted: rgba(245, 80, 54, .12);--color-accent-border: rgba(245, 80, 54, .3);--color-accent-text: #ff7a62;--color-success: #22c55e;--color-success-bg: rgba(34, 197, 94, .1);--color-success-text: #4ade80;--color-success-border: rgba(34, 197, 94, .25);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .1);--color-warning-text: #fbbf24;--color-warning-border: rgba(245, 158, 11, .25);--color-error: #ef4444;--color-error-bg: rgba(239, 68, 68, .1);--color-error-text: #f87171;--color-error-border: rgba(239, 68, 68, .25);--color-info: #3b82f6;--color-info-bg: rgba(59, 130, 246, .1);--color-info-text: #60a5fa;--color-info-border: rgba(59, 130, 246, .25);--shadow-xs: 0 1px 2px 0 rgba(0,0,0,.2);--shadow-sm: 0 1px 3px 0 rgba(0,0,0,.3), 0 1px 2px -1px rgba(0,0,0,.2);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.4), 0 2px 4px -2px rgba(0,0,0,.3);--shadow-lg: 0 8px 24px -4px rgba(0,0,0,.5), 0 2px 8px -2px rgba(0,0,0,.3);--shadow-xl: 0 20px 40px -8px rgba(0,0,0,.6), 0 4px 12px -2px rgba(0,0,0,.4)}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;background-color:var(--color-bg);color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);margin:0}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg);font-weight:var(--weight-medium)}h5{font-size:var(--text-md);font-weight:var(--weight-medium)}h6{font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}code,kbd,samp,pre{font-family:var(--font-mono);font-size:var(--text-sm)}code{background:var(--color-surface-2);color:var(--color-text-primary);padding:2px 5px;border-radius:var(--radius-sm);border:1px solid var(--color-border)}pre{background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);overflow-x:auto;line-height:var(--leading-relaxed)}pre code{background:none;border:none;padding:0;font-size:var(--text-sm)}:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1;border-radius:var(--radius-lg);border:1px solid transparent;cursor:pointer;transition:background var(--duration-base) var(--ease-default),border-color var(--duration-base) var(--ease-default),color var(--duration-base) var(--ease-default),box-shadow var(--duration-base) var(--ease-default);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-decoration:none}.btn:focus-visible{box-shadow:var(--shadow-focus)}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-xs{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-md)}.btn-sm{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.btn-md{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.btn-lg{padding:var(--space-2-5) var(--space-5);font-size:var(--text-md)}.btn-primary{background:var(--color-accent);color:var(--color-text-on-accent);border-color:var(--color-accent)}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn-secondary{background:var(--color-surface-1);color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--color-surface-2);color:var(--color-text-primary)}.btn-danger{background:transparent;color:var(--color-error-text);border-color:transparent}.btn-danger:hover{background:var(--color-error-bg);border-color:var(--color-error-border)}.input{display:block;width:100%;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-surface-0);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);transition:border-color var(--duration-base) var(--ease-default),box-shadow var(--duration-base) var(--ease-default);outline:none;box-sizing:border-box}.input::-moz-placeholder{color:var(--color-text-muted)}.input::placeholder{color:var(--color-text-muted)}.input:hover{border-color:var(--color-border-strong)}.input:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.input:disabled{opacity:.5;cursor:not-allowed;background:var(--color-surface-2)}.input-sm{padding:var(--space-1-5) var(--space-2-5);font-size:var(--text-xs);border-radius:var(--radius-md)}.input-lg{padding:var(--space-3) var(--space-4);font-size:var(--text-md);border-radius:var(--radius-xl)}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23737373' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-8)}.label{display:block;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-1-5)}.field{display:flex;flex-direction:column;gap:var(--space-1-5);margin-bottom:var(--space-4)}.card{background:var(--color-surface-0);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm)}.card-sm{border-radius:var(--radius-xl);padding:var(--space-3)}.card-md{border-radius:var(--radius-2xl);padding:var(--space-4)}.card-lg{border-radius:var(--radius-3xl);padding:var(--space-6)}.card-interactive{cursor:pointer;transition:border-color var(--duration-base) var(--ease-default),box-shadow var(--duration-base) var(--ease-default),transform var(--duration-base) var(--ease-default)}.card-interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.4;border-radius:var(--radius-full);border:1px solid transparent;white-space:nowrap}.badge-default{background:var(--color-surface-2);color:var(--color-text-secondary);border-color:var(--color-border)}.badge-accent{background:var(--color-accent-muted);color:var(--color-accent-text);border-color:var(--color-accent-border)}.badge-success{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.badge-error{background:var(--color-error-bg);color:var(--color-error-text);border-color:var(--color-error-border)}.badge-info{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.divider{height:1px;background:var(--color-border);border:none;margin:0}.divider-v{width:1px;align-self:stretch;background:var(--color-border)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.toast{position:fixed;bottom:var(--space-6);right:var(--space-6);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl);font-size:var(--text-sm);font-weight:var(--weight-medium);box-shadow:var(--shadow-lg);border:1px solid transparent;z-index:var(--z-toast);animation:toast-slide-in var(--duration-slow) var(--ease-spring)}.toast-success{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.toast-error{background:var(--color-error-bg);color:var(--color-error-text);border-color:var(--color-error-border)}.toast-info{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(var(--space-3))}to{opacity:1;transform:translateY(0)}}.text-primary{color:var(--color-text-primary)!important}.text-secondary{color:var(--color-text-secondary)!important}.text-muted{color:var(--color-text-muted)!important}.text-accent{color:var(--color-accent-text)!important}.text-success{color:var(--color-success-text)!important}.text-warning{color:var(--color-warning-text)!important}.text-error{color:var(--color-error-text)!important}.text-xs{font-size:var(--text-xs)!important}.text-sm{font-size:var(--text-sm)!important}.text-base{font-size:var(--text-base)!important}.text-lg{font-size:var(--text-lg)!important}.text-xl{font-size:var(--text-xl)!important}.font-mono{font-family:var(--font-mono)!important}.font-medium{font-weight:var(--weight-medium)!important}.font-semibold{font-weight:var(--weight-semibold)!important}.font-bold{font-weight:var(--weight-bold)!important}.uppercase{text-transform:uppercase!important;letter-spacing:var(--tracking-wider)!important}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bg-blue-600,.bg-blue-500{background-color:var(--color-accent)!important}.bg-blue-50,.bg-blue-100,.bg-blue-200{background-color:var(--color-accent-muted)!important}.text-blue-600,.text-blue-700,.text-blue-500,.text-blue-800{color:var(--color-accent-text)!important}.border-blue-200{border-color:var(--color-accent-border)!important}.hover\:bg-blue-100:hover{background-color:var(--color-accent-muted)!important}.hover\:bg-blue-700:hover,.hover\:bg-blue-600:hover{background-color:var(--color-accent-hover)!important}.peer-checked\:bg-blue-600:is(:checked~*),[class*="peer-checked:bg-blue-6"]{background-color:var(--color-accent)!important}.focus\:ring-blue-500:focus,.focus\:ring-blue-400:focus,.focus\:ring-blue-300:focus{--tw-ring-color: var(--color-focus-ring) !important;box-shadow:0 0 0 2px var(--color-focus-ring)!important}.focus\:border-blue-400:focus,.focus\:border-blue-500:focus{border-color:var(--color-accent)!important}.hover\:text-blue-600:hover,.hover\:text-blue-700:hover,.hover\:text-blue-800:hover{color:var(--color-accent-text)!important}.hover\:border-blue-400:hover{border-color:var(--color-accent)!important}.peer:checked~.peer-checked\:bg-blue-600{background-color:var(--color-accent)!important}.peer:focus~.peer-focus\:ring-blue-300,.peer:focus-visible~.peer-focus\:ring-blue-300{--tw-ring-color: var(--color-focus-ring) !important}.text-blue-900,.text-blue-800{color:var(--color-accent-text)!important}input[type=checkbox],input[type=radio],input[type=range],.accent-checkbox{accent-color:var(--color-accent)}[data-theme=dark] body{background:var(--color-bg);color:var(--color-text-primary)}[data-theme=dark] .bg-white{background-color:var(--color-surface-0)!important}[data-theme=dark] .bg-gray-50{background-color:var(--color-surface-1)!important}[data-theme=dark] .bg-gray-100{background-color:var(--color-surface-2)!important}[data-theme=dark] .bg-gray-200{background-color:var(--color-surface-3)!important}[data-theme=dark] .border-gray-200{border-color:var(--color-border)!important}[data-theme=dark] .border-gray-300{border-color:var(--color-border-strong)!important}[data-theme=dark] .border{border-color:var(--color-border)!important}[data-theme=dark] .text-gray-900,[data-theme=dark] .text-gray-800,[data-theme=dark] .text-gray-700{color:var(--color-text-primary)!important}[data-theme=dark] .text-gray-600,[data-theme=dark] .text-gray-500{color:var(--color-text-secondary)!important}[data-theme=dark] .text-gray-400{color:var(--color-text-muted)!important}[data-theme=dark] .text-blue-600,[data-theme=dark] .text-blue-700{color:var(--color-accent-text)!important}[data-theme=dark] .hover\:bg-gray-100:hover{background-color:var(--color-surface-2)!important}[data-theme=dark] .hover\:bg-gray-200:hover{background-color:var(--color-surface-3)!important}[data-theme=dark] .hover\:text-gray-700:hover{color:var(--color-text-primary)!important}[data-theme=dark] .hover\:text-blue-700:hover{color:var(--color-accent-text)!important}[data-theme=dark] .bg-blue-600{background-color:var(--color-accent)!important}[data-theme=dark] .hover\:bg-blue-700:hover{background-color:var(--color-accent-hover)!important}[data-theme=dark] input:not([type=range]):not([type=checkbox]):not([type=radio]),[data-theme=dark] textarea,[data-theme=dark] select{background-color:var(--color-surface-2);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] input::-moz-placeholder,[data-theme=dark] textarea::-moz-placeholder{color:var(--color-text-muted)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--color-text-muted)}.btn--accent{background:var(--color-accent);color:var(--color-text-on-accent);border-color:var(--color-accent)}.btn--accent:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn--ghost:hover{background:var(--color-surface-2);color:var(--color-text-primary)}.btn--sm{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.badge--accent,.badge--pro{background:var(--color-accent-muted);color:var(--color-accent-text);border-color:var(--color-accent-border)}.auth-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:auth-overlay-in var(--duration-slow) var(--ease-out)}@keyframes auth-overlay-in{0%{opacity:0}to{opacity:1}}.auth-modal{position:relative;width:100%;max-width:400px;background:var(--color-surface-0);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--space-8);animation:auth-modal-up var(--duration-slow) var(--ease-spring)}@keyframes auth-modal-up{0%{opacity:0;transform:translateY(var(--space-4))}to{opacity:1;transform:translateY(0)}}.auth-modal__close{position:absolute;top:var(--space-4);right:var(--space-4);width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-lg);line-height:1;cursor:pointer;transition:background var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.auth-modal__close:hover{background:var(--color-surface-2);color:var(--color-text-primary)}.auth-modal__close:focus-visible{box-shadow:var(--shadow-focus);outline:none}.auth-modal__title{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);margin:0 0 var(--space-6)}.auth-modal__oauth{display:flex;flex-direction:column;gap:var(--space-3)}.btn--oauth{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-2-5) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-primary);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--duration-base) var(--ease-default),border-color var(--duration-base) var(--ease-default)}.btn--oauth:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.btn--oauth:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn--oauth svg{flex-shrink:0}.auth-modal__divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0;color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.auth-modal__divider:before,.auth-modal__divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth-modal__form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-modal__label{display:flex;flex-direction:column;gap:var(--space-1-5);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);letter-spacing:var(--tracking-wide)}.auth-modal__input{display:block;width:100%;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2-5) var(--space-3);outline:none;box-sizing:border-box;transition:border-color var(--duration-base) var(--ease-default),box-shadow var(--duration-base) var(--ease-default)}.auth-modal__input::-moz-placeholder{color:var(--color-text-muted)}.auth-modal__input::placeholder{color:var(--color-text-muted)}.auth-modal__input:hover{border-color:var(--color-border-strong)}.auth-modal__input:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.auth-modal__error{font-size:var(--text-xs);color:var(--color-error-text);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);line-height:var(--leading-relaxed)}.auth-modal__submit{width:100%;padding:var(--space-2-5) var(--space-4);margin-top:var(--space-1)}.auth-modal__toggle{margin:var(--space-5) 0 0;text-align:center;font-size:var(--text-xs);color:var(--color-text-secondary)}.auth-modal__link{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;font-weight:var(--weight-medium);color:var(--color-accent-text);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.auth-modal__link:hover{color:var(--color-accent)}.auth-modal__link:focus-visible{box-shadow:var(--shadow-focus);outline:none;border-radius:var(--radius-sm)}.account-info{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);min-width:0}.account-email{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.account-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.account-prompt{font-size:var(--text-xs);color:var(--color-text-muted);margin:0 0 var(--space-3);line-height:var(--leading-relaxed)}html{scroll-behavior:smooth}.container{width:100%;max-width:1120px;margin-inline:auto;padding-inline:var(--space-6)}.section{padding-block:var(--space-20)}
