.header[data-astro-cid-3ef6ksr2]{background:var(--bg-2);border-bottom:1px solid var(--ui);position:sticky;top:0;z-index:var(--z-sticky)}.header-content[data-astro-cid-3ef6ksr2]{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4);height:var(--header-height);display:flex;align-items:center;justify-content:space-between}.logo[data-astro-cid-3ef6ksr2]{font-family:var(--font-mono);font-size:var(--text-title-md);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wider);color:var(--tx)}.logo[data-astro-cid-3ef6ksr2]:hover{text-decoration:none;color:var(--primary)}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-4)}.nav-link[data-astro-cid-3ef6ksr2]{font-family:var(--font-mono);font-size:var(--text-ui);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide);color:var(--tx-2);display:flex;align-items:center;gap:var(--space-1);transition:color var(--transition-fast) ease}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--primary);text-decoration:none}.external-icon[data-astro-cid-3ef6ksr2]{font-size:var(--text-badge)}.theme-toggle[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;width:var(--size-avatar-sm);height:var(--size-avatar-sm);border-radius:var(--radius-sm);border:1px solid var(--ui);background:var(--bg);color:var(--tx-2);cursor:pointer;transition:all var(--transition-fast) ease}.theme-toggle[data-astro-cid-3ef6ksr2]:hover{border-color:var(--ui-2);color:var(--tx)}.sun-icon[data-astro-cid-3ef6ksr2]{display:block}.moon-icon[data-astro-cid-3ef6ksr2],.contrast-icon[data-astro-cid-3ef6ksr2],[data-theme=light] .sun-icon[data-astro-cid-3ef6ksr2]{display:none}[data-theme=light] .moon-icon[data-astro-cid-3ef6ksr2]{display:block}[data-theme=light] .contrast-icon[data-astro-cid-3ef6ksr2],[data-theme=high-contrast] .sun-icon[data-astro-cid-3ef6ksr2],[data-theme=high-contrast] .moon-icon[data-astro-cid-3ef6ksr2]{display:none}[data-theme=high-contrast] .contrast-icon[data-astro-cid-3ef6ksr2]{display:block}.footer[data-astro-cid-sz7xmlte]{background:var(--bg-2);border-top:1px solid var(--ui);margin-top:auto}.footer-content[data-astro-cid-sz7xmlte]{max-width:var(--max-width);margin:0 auto;padding:var(--space-4) var(--space-4);display:flex;align-items:center;justify-content:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--text-ui);color:var(--tx-3);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide)}.separator[data-astro-cid-sz7xmlte]{color:var(--ui)}.footer-content[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--tx-3);transition:color var(--transition-fast) ease}.footer-content[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--primary)}:root{--border-width-0: 0;--border-width-1: 1px;--border-width-2: 2px;--border-width-3: 3px;--border-width-4: 4px;--border-width-6: 6px;--border-style-none: none;--border-style-solid: solid;--border-style-dashed: dashed;--border-style-dotted: dotted;--color-base-50: oklch(.965 .008 90);--color-base-100: oklch(.94 .008 90);--color-base-150: oklch(.91 .008 90);--color-base-200: oklch(.875 .008 90);--color-base-300: oklch(.79 .008 90);--color-base-400: oklch(.7 .008 90);--color-base-500: oklch(.62 .008 90);--color-base-600: oklch(.53 .008 90);--color-base-700: oklch(.44 .008 90);--color-base-800: oklch(.35 .008 90);--color-base-850: oklch(.3 .008 90);--color-base-900: oklch(.25 .008 90);--color-base-950: oklch(.2 .008 90);--color-base-paper: oklch(.988 .008 90);--color-base-black: oklch(.145 .008 90);--color-red-50: oklch(.965 .04 25);--color-red-100: oklch(.92 .08 25);--color-red-200: oklch(.85 .12 25);--color-red-300: oklch(.75 .16 25);--color-red-400: oklch(.65 .18 25);--color-red-500: oklch(.58 .18 25);--color-red-600: oklch(.5 .16 25);--color-red-700: oklch(.42 .14 25);--color-red-800: oklch(.35 .1 25);--color-red-900: oklch(.28 .07 25);--color-red-950: oklch(.22 .05 25);--color-orange-50: oklch(.965 .045 55);--color-orange-100: oklch(.92 .09 55);--color-orange-200: oklch(.86 .13 55);--color-orange-300: oklch(.78 .16 55);--color-orange-400: oklch(.7 .17 55);--color-orange-500: oklch(.63 .16 55);--color-orange-600: oklch(.55 .14 55);--color-orange-700: oklch(.46 .11 55);--color-orange-800: oklch(.38 .08 55);--color-orange-900: oklch(.3 .055 55);--color-orange-950: oklch(.24 .04 55);--color-yellow-50: oklch(.97 .04 95);--color-yellow-100: oklch(.94 .08 95);--color-yellow-200: oklch(.9 .12 95);--color-yellow-300: oklch(.85 .15 95);--color-yellow-400: oklch(.8 .16 95);--color-yellow-500: oklch(.75 .15 95);--color-yellow-600: oklch(.68 .13 95);--color-yellow-700: oklch(.58 .1 95);--color-yellow-800: oklch(.48 .07 95);--color-yellow-900: oklch(.38 .05 95);--color-yellow-950: oklch(.3 .035 95);--color-green-50: oklch(.965 .035 145);--color-green-100: oklch(.92 .07 145);--color-green-200: oklch(.86 .11 145);--color-green-300: oklch(.78 .14 145);--color-green-400: oklch(.7 .15 145);--color-green-500: oklch(.62 .14 145);--color-green-600: oklch(.54 .12 145);--color-green-700: oklch(.46 .095 145);--color-green-800: oklch(.38 .07 145);--color-green-900: oklch(.3 .05 145);--color-green-950: oklch(.24 .035 145);--color-cyan-50: oklch(.965 .035 195);--color-cyan-100: oklch(.92 .07 195);--color-cyan-200: oklch(.86 .105 195);--color-cyan-300: oklch(.78 .13 195);--color-cyan-400: oklch(.7 .135 195);--color-cyan-500: oklch(.62 .125 195);--color-cyan-600: oklch(.54 .11 195);--color-cyan-700: oklch(.46 .09 195);--color-cyan-800: oklch(.38 .065 195);--color-cyan-900: oklch(.3 .045 195);--color-cyan-950: oklch(.24 .03 195);--color-blue-50: oklch(.965 .03 250);--color-blue-100: oklch(.92 .06 250);--color-blue-200: oklch(.86 .1 250);--color-blue-300: oklch(.78 .135 250);--color-blue-400: oklch(.68 .15 250);--color-blue-500: oklch(.6 .15 250);--color-blue-600: oklch(.52 .135 250);--color-blue-700: oklch(.44 .11 250);--color-blue-800: oklch(.36 .08 250);--color-blue-900: oklch(.28 .055 250);--color-blue-950: oklch(.22 .04 250);--color-purple-50: oklch(.965 .03 300);--color-purple-100: oklch(.92 .06 300);--color-purple-200: oklch(.86 .1 300);--color-purple-300: oklch(.78 .13 300);--color-purple-400: oklch(.68 .15 300);--color-purple-500: oklch(.6 .15 300);--color-purple-600: oklch(.52 .14 300);--color-purple-700: oklch(.44 .115 300);--color-purple-800: oklch(.36 .085 300);--color-purple-900: oklch(.28 .06 300);--color-purple-950: oklch(.22 .045 300);--color-magenta-50: oklch(.965 .035 345);--color-magenta-100: oklch(.92 .07 345);--color-magenta-200: oklch(.86 .11 345);--color-magenta-300: oklch(.78 .145 345);--color-magenta-400: oklch(.68 .165 345);--color-magenta-500: oklch(.6 .165 345);--color-magenta-600: oklch(.52 .15 345);--color-magenta-700: oklch(.44 .12 345);--color-magenta-800: oklch(.36 .09 345);--color-magenta-900: oklch(.28 .06 345);--color-magenta-950: oklch(.22 .045 345);--color-wri-green: oklch(.52 .15 160);--color-wri-green-light: oklch(.65 .12 160);--color-wri-green-dark: oklch(.4 .12 160);--color-wri-yellow: oklch(.8 .17 85);--color-wri-yellow-light: oklch(.88 .13 85);--color-wri-yellow-dark: oklch(.7 .15 85);--duration-instant: 0ms;--duration-fast: .1s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--duration-slowest: .7s;--easing-linear: 0,0,1,1;--easing-ease: .25,.1,.25,1;--easing-ease-in: .42,0,1,1;--easing-ease-out: 0,0,.58,1;--easing-ease-in-out: .42,0,.58,1;--easing-bounce: .68,-.55,.265,1.55;--radius-none: 0;--radius-sm: .125rem;--radius-default: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 2px 0 oklch(.15 .008 90 / .05);--shadow-default: 0 1px 3px 0 oklch(.15 .008 90 / .1), 0 1px 2px -1px oklch(.15 .008 90 / .1);--shadow-md: 0 4px 6px -1px oklch(.15 .008 90 / .1), 0 2px 4px -2px oklch(.15 .008 90 / .1);--shadow-lg: 0 10px 15px -3px oklch(.15 .008 90 / .1), 0 4px 6px -4px oklch(.15 .008 90 / .1);--shadow-xl: 0 20px 25px -5px oklch(.15 .008 90 / .1), 0 8px 10px -6px oklch(.15 .008 90 / .1);--shadow-2xl: 0 25px 50px -12px oklch(.15 .008 90 / .25);--shadow-inner: inset 0 2px 4px 0 oklch(.15 .008 90 / .05);--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--space-36: 9rem;--space-40: 10rem;--space-44: 11rem;--space-48: 12rem;--space-52: 13rem;--space-56: 14rem;--space-60: 15rem;--space-64: 16rem;--space-72: 18rem;--space-80: 20rem;--space-96: 24rem;--space-px: 1px;--space-0-5: .125rem;--space-1-5: .375rem;--space-2-5: .625rem;--space-3-5: .875rem;--font-family-sans: "Inter", "Proxima Nova", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-serif: "Freight Display Pro", "Tiempos Headline", ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-family-mono: "IBM Plex Mono", "JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-family-display: "Freight Display Pro", "Tiempos Headline", ui-serif, Georgia, serif;--font-family-ui: ui-sans-serif, system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-weight-thin: 100;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--font-lineHeight-none: 1;--font-lineHeight-tight: 1.25;--font-lineHeight-snug: 1.375;--font-lineHeight-normal: 1.5;--font-lineHeight-relaxed: 1.625;--font-lineHeight-loose: 2;--font-letterSpacing-tighter: -.05em;--font-letterSpacing-tight: -.025em;--font-letterSpacing-normal: 0;--font-letterSpacing-wide: .025em;--font-letterSpacing-wider: .05em;--font-letterSpacing-widest: .1em;--z-hide: -1;--z-base: 0;--z-raised: 1;--z-dropdown: 1000;--z-sticky: 1100;--z-fixed: 1200;--z-modal-backdrop: 1300;--z-modal: 1400;--z-popover: 1500;--z-tooltip: 1600;--z-toast: 1700}[data-variant=prototype]{--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 oklch(0 0 0 / .15);--shadow-default: 0 1px 3px 0 oklch(0 0 0 / .2);--font-ui: "IBM Plex Mono", ui-monospace, monospace;--font-heading: "IBM Plex Mono", ui-monospace, monospace;--font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--bg: #1c1a18;--bg-2: #282523;--bg-3: #36322e;--tx: #ece8e4;--tx-2: #a8a29e;--tx-3: #706a64;--ui: #433d38;--ui-2: #534d47;--ui-3: #635d56;--primary: oklch(.8 .17 85);--primary-hover: oklch(.7 .15 85);--primary-content: #1c1a18;--secondary: #534d47;--secondary-hover: #635d56;--secondary-content: #ece8e4;--accent: oklch(.8 .17 85);--accent-hover: oklch(.7 .15 85);--accent-content: #1c1a18;--success: #16a34a;--success-subtle: #1a2e1a;--success-text: #4ade80;--warning: #d97706;--warning-subtle: #2e2a1a;--warning-text: #fbbf24;--error: #dc2626;--error-subtle: #2e1a1a;--error-text: #f87171;--info: #0284c7;--info-subtle: #1a2a2e;--info-text: #38bdf8;--component-button-border-radius: .25rem;--component-button-font-family: "IBM Plex Mono", ui-monospace, monospace;--component-button-padding-x: 1rem;--component-button-padding-y: .5rem;--component-button-font-weight: 500;--component-button-font-size: .8125rem;--component-button-line-height: 1.5;--component-button-border-width: 1px;--component-button-min-height: 2.5rem;--component-button-gap: .5rem;--component-input-border-radius: .25rem;--component-input-font-family: "IBM Plex Mono", ui-monospace, monospace;--component-input-padding-x: .75rem;--component-input-padding-y: .5rem;--component-input-font-size: 1rem;--component-input-line-height: 1.5;--component-input-border-width: 1px;--component-input-min-height: 2.5rem;--component-input-background: #1c1a18;--component-card-padding: 1rem;--component-card-padding-sm: .75rem;--component-card-padding-lg: 1.5rem;--component-card-border-radius: .375rem;--component-card-border-width: 1px;--component-card-shadow: 0 1px 2px 0 oklch(0 0 0 / .15);--component-panel-header-background: #36322e;--component-panel-header-padding: .75rem 1rem;--component-panel-body-padding: 1rem;--component-table-header-background: #36322e;--component-table-cell-padding-x: .75rem;--component-table-cell-padding-y: .5rem;--component-table-font-family: "IBM Plex Mono", ui-monospace, monospace;--text-body-font-family: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--text-body-font-size: .8125rem;--text-body-line-height: 1.5;--text-body-font-weight: 400;--text-label-font-family: "IBM Plex Mono", ui-monospace, monospace;--text-label-font-size: .7rem;--text-label-line-height: 1.25;--text-label-font-weight: 500;--text-label-text-transform: uppercase;--text-label-letter-spacing: .05em;--text-label-color: #706a64;--text-panel-title-font-family: "IBM Plex Mono", ui-monospace, monospace;--text-panel-title-font-size: .875rem;--text-panel-title-font-weight: 500;--text-panel-title-text-transform: uppercase;--text-value-font-family: "IBM Plex Mono", ui-monospace, monospace;--text-value-font-size: .8125rem;--transition-instant: 0ms;--transition-fast: .1s;--transition-normal: .2s;--transition-slow: .3s;--focus-ring: oklch(.8 .17 85);--focus-ring-color: oklch(.8 .17 85);--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-offset-color: #1c1a18;--interactive-primary-default: oklch(.8 .17 85);--interactive-primary-hover: oklch(.7 .15 85);--interactive-primary-active: oklch(.65 .13 85);--interactive-destructive-default: oklch(.5 .16 25);--interactive-destructive-hover: oklch(.42 .14 25);--interactive-destructive-active: oklch(.35 .1 25);--foreground: #ece8e4;--foreground-muted: #a8a29e;--foreground-faint: #706a64;--background: #1c1a18;--background-alt: #282523;--surface-default: #1c1a18;--surface-raised: #282523;--text-primary: #ece8e4;--text-secondary: #a8a29e;--text-tertiary: #706a64;--card-background: #282523;--card-border-color: #433d38;--divider-color: #433d38;--divider-width: 1px;--divider-style: solid}[data-variant=prototype][data-theme=light]{--bg: #faf8f6;--bg-2: #f2efe9;--bg-3: #e8e4de;--tx: #2c2a28;--tx-2: #5c5a58;--tx-3: #8c8a88;--ui: #d8d4ce;--ui-2: #c8c4be;--ui-3: #b8b4ae;--component-input-background: #ffffff;--component-panel-header-background: #f2efe9;--component-table-header-background: #e8e4de;--foreground: #2c2a28;--foreground-muted: #5c5a58;--foreground-faint: #8c8a88;--background: #faf8f6;--background-alt: #f2efe9;--surface-default: #faf8f6;--surface-raised: #f2efe9;--text-primary: #2c2a28;--text-secondary: #5c5a58;--text-tertiary: #8c8a88;--text-label-color: #8c8a88;--card-background: #f2efe9;--card-border-color: #d8d4ce;--divider-color: #d8d4ce;--focus-ring: oklch(.7 .15 85);--focus-ring-color: oklch(.7 .15 85);--focus-ring-offset-color: #faf8f6;--primary-content: #1c1a18;--secondary-content: #faf8f6}[data-variant=prototype][data-theme=high-contrast]{--bg: #000000;--bg-2: #0a0a0a;--bg-3: #1a1a1a;--tx: #ffffff;--tx-2: #ffffff;--tx-3: #cccccc;--ui: #ffffff;--ui-2: #ffffff;--ui-3: #ffffff;--primary: #ffaa00;--primary-hover: #ffcc00;--primary-content: #000000;--accent: #ffaa00;--component-input-background: #0a0a0a;--component-panel-header-background: #1a1a1a;--component-table-header-background: #1a1a1a;--foreground: #ffffff;--foreground-muted: #ffffff;--foreground-faint: #cccccc;--background: #000000;--background-alt: #0a0a0a;--surface-default: #000000;--surface-raised: #0a0a0a;--text-primary: #ffffff;--text-secondary: #ffffff;--text-tertiary: #cccccc;--text-label-color: #cccccc;--card-background: #0a0a0a;--card-border-color: #ffffff;--divider-color: #ffffff;--focus-ring: #ffcc00;--focus-ring-color: #ffcc00;--focus-ring-offset-color: #000000;--interactive-primary-default: #ffcc00;--interactive-primary-hover: #ffdd33;--interactive-primary-active: #e6b800}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}:root{--max-width: 1200px;--header-height: 56px;--spacing-page: var(--space-6);--size-icon-sm: 1rem;--size-icon-md: 1.25rem;--size-icon-lg: 1.5rem;--size-avatar-sm: 2rem;--size-avatar-md: 2.5rem;--text-label: .7rem;--text-body: .8125rem;--text-ui: .75rem;--text-badge: .65rem;--text-title-sm: .8rem;--text-title-md: .875rem;--padding-panel-header: .75rem 1rem;--padding-panel-body: 1rem;--padding-badge: .125rem .5rem;--padding-btn: .5rem 1rem;--padding-btn-sm: .375rem .75rem;--padding-input: .5rem .75rem;--padding-filter-tag: .25rem .5rem;--color-re: var(--color-red-500);--color-or: var(--color-orange-500);--color-ye: var(--color-yellow-500);--color-gr: var(--color-green-500);--color-cy: var(--color-cyan-500);--color-bl: var(--color-blue-500);--color-pu: var(--color-purple-500);--color-ma: var(--color-magenta-500)}html{font-family:var(--font-body);font-size:var(--text-body-font-size);line-height:var(--font-lineHeight-normal);color:var(--tx);background:var(--bg)}body{min-height:100vh;display:flex;flex-direction:column}main{flex:1;width:100%;max-width:var(--max-width);margin:0 auto;padding:var(--spacing-page) var(--space-4)}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast) ease}a:hover{color:var(--primary-hover);text-decoration:underline}h1,h2,h3,h4{font-family:var(--font-mono);line-height:var(--font-lineHeight-tight);font-weight:var(--font-weight-medium);color:var(--tx)}h1{font-size:var(--font-size-xl);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wider);margin-bottom:var(--space-2)}h2{font-size:var(--font-size-lg);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide);margin-bottom:var(--space-2)}h3{font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4)}.subtitle{font-family:var(--font-body);color:var(--tx-2);font-size:var(--font-size-sm);margin-bottom:var(--space-6)}.label{font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide);color:var(--tx-3)}.badge{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-badge);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide);padding:var(--padding-badge);border-radius:var(--radius-sm);color:var(--tx-2);background:var(--bg-3)}.badge-status{background:var(--status-color, var(--bg-3));color:#fff}.badge-type{background:var(--type-color, var(--bg-3));color:#fff}.badge-primary{background:var(--primary);color:var(--primary-content)}.badge-success{background:var(--color-gr);color:#fff}.experiments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-body);font-weight:var(--font-weight-medium);padding:var(--padding-btn);background:var(--bg-2);border:1px solid var(--ui);border-radius:var(--radius-sm);color:var(--tx);cursor:pointer;transition:all var(--transition-fast) ease}.btn:hover{background:var(--bg-3);text-decoration:none}.btn-sm{font-size:var(--text-ui);padding:var(--padding-btn-sm)}.btn-primary{background:var(--primary);color:var(--primary-content);border-color:transparent}.btn-primary:hover{background:var(--primary-hover);color:var(--primary-content);text-decoration:none}.btn-secondary{background:var(--bg-2);color:var(--tx);border-color:var(--ui)}.btn-secondary:hover{background:var(--bg-3);color:var(--tx);border-color:var(--ui-2);text-decoration:none}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed}.panel{background:var(--bg-2);border:1px solid var(--ui);border-radius:var(--radius-md);overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--padding-panel-header);background:var(--bg-3);border-bottom:1px solid var(--ui)}.panel-title{font-family:var(--font-mono);font-size:var(--text-title-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide);color:var(--tx-2)}.panel-body{padding:var(--padding-panel-body)}.input{font-family:var(--font-mono);font-size:var(--text-body);padding:var(--padding-input);background:var(--bg);border:1px solid var(--ui);border-radius:var(--radius-sm);color:var(--tx);width:100%;transition:border-color var(--transition-fast) ease}.input:focus{outline:none;border-color:var(--primary)}.input::placeholder{color:var(--tx-3)}.filter-tag{padding:var(--padding-filter-tag);border:1px solid var(--ui);border-radius:var(--radius-sm);background:var(--bg);font-family:var(--font-mono);font-size:var(--text-label);cursor:pointer;text-transform:capitalize;transition:all var(--transition-fast) ease;color:var(--tx-2)}.filter-tag:hover{border-color:var(--primary);color:var(--primary)}.filter-tag.active{background:var(--primary);border-color:var(--primary);color:var(--primary-content)}.card{background:var(--bg-2);border:1px solid var(--ui);border-radius:var(--radius-md);overflow:hidden}.card-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--padding-panel-header);background:var(--bg-3);border-bottom:1px solid var(--ui)}.card-body{padding:var(--padding-panel-body)}.card-footer{padding:var(--padding-panel-header);border-top:1px solid var(--ui)}.avatar{display:flex;align-items:center;justify-content:center;width:var(--size-avatar-md);height:var(--size-avatar-md);border-radius:var(--radius-md);background:var(--primary);font-size:var(--text-title-md)}.avatar-sm{width:var(--size-avatar-sm);height:var(--size-avatar-sm)}.badge-type-prototype{background:var(--color-pu);color:#fff}.badge-type-evaluation{background:var(--color-gr);color:#fff}.badge-type-benchmark{background:var(--color-or);color:var(--bg)}.badge-type-spike{background:var(--color-re);color:#fff}.badge-type-research{background:var(--color-bl);color:#fff}.badge-type-notebook{background:var(--color-ma);color:#fff}.badge-type-micro{background:var(--color-cy);color:#fff}.alert{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid;margin-bottom:var(--space-4)}.alert-error{background:var(--error-subtle);border-color:var(--error);color:var(--error-text)}.alert-warning{background:var(--warning-subtle);border-color:var(--warning);color:var(--warning-text)}.alert-info{background:var(--info-subtle);border-color:var(--info);color:var(--info-text)}.alert-success{background:var(--success-subtle);border-color:var(--success);color:var(--success-text)}.icon-sm{width:var(--size-icon-sm);height:var(--size-icon-sm)}.icon-md{width:var(--size-icon-md);height:var(--size-icon-md)}.icon-lg{width:var(--size-icon-lg);height:var(--size-icon-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-2)}.gap-2{gap:var(--space-4)}.gap-3{gap:var(--space-6)}.grid{display:grid;gap:var(--space-4)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.divider{height:1px;background:var(--ui);border:none;margin:var(--space-4) 0}.spinner{width:1rem;height:1rem;border:2px solid var(--ui);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.section-title{font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--font-letterSpacing-wide);color:var(--tx-3);margin-bottom:var(--space-3)}
