@charset "UTF-8";:root{--primitive-white: #ffffff;--primitive-gray-50: #f8f9fc;--primitive-gray-100: #f4f5f7;--primitive-gray-200: #ebeef2;--primitive-gray-300: #dce1e9;--primitive-gray-500: #6b7280;--primitive-gray-700: #374151;--primitive-gray-900: #1f2937;--primitive-purple-50: #f3f0ff;--primitive-purple-100: #ede9fe;--primitive-purple-500: #7c5cfc;--primitive-purple-600: #6d4ef0;--primitive-blue-500: #3b82f6;--primitive-teal-500: #10b981;--primitive-amber-500: #f59e0b;--primitive-red-500: #ef4444;--background: var(--primitive-gray-100);--foreground: var(--primitive-gray-900);--card: var(--primitive-white);--card-foreground: var(--foreground);--popover: var(--primitive-white);--popover-foreground: var(--foreground);--primary: var(--primitive-purple-500);--primary-hover: var(--primitive-purple-600);--primary-foreground: var(--primitive-white);--secondary: var(--primitive-gray-100);--secondary-foreground: var(--foreground);--muted: var(--primitive-gray-50);--muted-foreground: var(--primitive-gray-500);--accent: var(--primitive-gray-100);--accent-foreground: var(--foreground);--destructive: var(--primitive-red-500);--destructive-foreground: var(--primitive-white);--success: var(--primitive-teal-500);--success-foreground: var(--primitive-white);--warning: var(--primitive-amber-500);--warning-foreground: var(--primitive-gray-900);--border: var(--primitive-gray-200);--border-strong: var(--primitive-gray-300);--input: var(--primitive-gray-300);--ring: var(--primary);--ink-secondary: var(--primitive-gray-700);--radius: .5rem;--color-bg: var(--background);--color-surface: var(--card);--color-surface-2: var(--muted);--color-border: var(--border);--color-border-strong: var(--border-strong);--color-ink: var(--foreground);--color-muted: var(--muted-foreground);--color-ink-secondary: var(--ink-secondary);--color-primary: var(--primary);--color-primary-hover: var(--primary-hover);--color-primary-dim: color-mix(in srgb, var(--color-primary) 12%, transparent);--color-primary-muted: var(--primitive-purple-100);--color-success: var(--success);--color-success-dim: color-mix(in srgb, var(--color-success) 12%, transparent);--color-warning: var(--warning);--color-warning-dim: color-mix(in srgb, var(--color-warning) 14%, transparent);--color-danger: var(--destructive);--color-danger-dim: color-mix(in srgb, var(--color-danger) 12%, transparent);--color-ch1: var(--primitive-blue-500);--color-ch1-dim: color-mix(in srgb, var(--color-ch1) 12%, transparent);--color-ch2: var(--primitive-purple-500);--color-ch2-dim: var(--color-primary-dim);--color-ch3: var(--primitive-teal-500);--color-ch3-dim: color-mix(in srgb, var(--color-ch3) 12%, transparent);--color-ch4: var(--primitive-amber-500);--color-ch4-dim: color-mix(in srgb, var(--color-ch4) 14%, transparent);--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 9999px;--shadow-card: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-card-hover: 0 4px 14px rgba(15, 23, 42, .08);--shadow-sidebar: 1px 0 0 var(--color-border);--sidebar-width: 15rem;--gradient-brand: linear-gradient( 90deg, var(--color-ch1) 0%, var(--color-primary) 50%, var(--color-ch3) 100% );--gradient-chapter-hero: radial-gradient( ellipse 80% 50% at 90% -10%, var(--ch-glow), transparent 60% );--ch-accent: var(--color-ch1);--ch-dim: var(--color-ch1-dim);--ch-glow: color-mix(in srgb, var(--color-ch1) 14%, transparent);--worksheet-bg: var(--primitive-white);--worksheet-panel: var(--primitive-gray-50);--worksheet-border: var(--primitive-gray-200);--worksheet-border-strong: var(--primitive-gray-300);--worksheet-ink: var(--primitive-gray-900);--worksheet-muted: var(--primitive-gray-700);--worksheet-hint: var(--primitive-gray-500);--worksheet-input-bg: var(--primitive-white);--worksheet-row-alt: color-mix(in srgb, var(--primitive-gray-50) 80%, transparent);--worksheet-row-label: color-mix(in srgb, var(--primitive-gray-50) 90%, transparent);--worksheet-header-from: var(--color-ch1);--worksheet-header-to: #1d4ed8;--worksheet-table-th-summary: linear-gradient( 135deg, #5b9fd4 0%, #6b8fd4 50%, #8b7fd4 100% );--worksheet-table-th-eval-main: #1e40af;--worksheet-table-th-eval-blog: linear-gradient(180deg, #7eb8e8 0%, #a8b8e8 100%);--worksheet-on-accent: var(--primitive-white);--worksheet-eval-hover: color-mix(in srgb, var(--color-ch1) 8%, transparent);--overlay-backdrop: rgba(15, 23, 42, .72);--overlay-ink: var(--primitive-white);--overlay-muted: #d1d5db;--overlay-btn-border: rgba(255, 255, 255, .2);--overlay-btn-bg: rgba(255, 255, 255, .1);--overlay-btn-bg-hover: rgba(255, 255, 255, .2);--font-sans: "IBM Plex Sans Thai", system-ui, sans-serif;--font-slide: var(--font-sans);--font-code: "Fira Code", "IBM Plex Sans Thai", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-mono: var(--font-code);--terminal-bg: #0f172a;--terminal-titlebar: #1e293b;--terminal-border: #1e293b;--terminal-fg: #e2e8f0;--terminal-muted: #94a3b8;--terminal-gutter: #64748b;--terminal-gutter-bg: #0b1222;--terminal-accent: #4ade80;--terminal-error: #fca5a5;--terminal-selection: rgba(124, 92, 252, .45);--terminal-dot-red: #f87171;--terminal-dot-amber: #fbbf24;--terminal-dot-green: #4ade80;--sim-canvas: var(--primitive-gray-50);--sim-grid: var(--primitive-gray-300);--sim-board: #f6f3ec;--sim-board-edge: #ddd6c8;--sim-board-gap: #e8e2d4;--sim-board-label: #8a8170;--sim-hole: #4b4b4b;--sim-hole-hot: var(--primary);--sim-rail-plus: #e04848;--sim-rail-minus: #3a6fd8;--sim-leg: #a3abb5;--sim-select: var(--primary);--sim-wire-red: #e5383b;--sim-wire-black: #2b2d31;--sim-wire-yellow: #f2b705;--sim-wire-blue: #2f6fe4;--sim-wire-green: #2e9d4f;--sim-wire-orange: #f07a1a;--sim-resistor: #e2cf9f;--sim-band-0: #1f1f1f;--sim-band-1: #7a4a1f;--sim-band-2: #d32f2f;--sim-band-3: #f57c00;--sim-band-4: #fbc02d;--sim-band-5: #2e7d32;--sim-band-6: #1565c0;--sim-band-7: #6a1b9a;--sim-band-8: #8a8a8a;--sim-band-9: #f5f5f5;--sim-band-gold: #c9a227;--sim-led-red: #f0473f;--sim-led-green: #3cc46a;--sim-led-yellow: #f7cf2b;--sim-led-blue: #3d7cf0;--sim-led-off-alpha: .55;--sim-ir-lens: #8fb8e8;--sim-ir-detector: #15171b;--sim-ir-glow: #b98cff;--sim-dark-plastic: #262a30;--sim-ic-text: #e7e7e7;--sim-pot: #2f62c8;--sim-pot-rotor: #f2f2f2;--sim-metal: #b6bcc4;--sim-diode: #262626;--sim-diode-band: #d9d9d9;--sim-cap-ceramic: #e8963a;--sim-cap-electro: #2f4fa0;--sim-cap-stripe: #d7deee;--sim-battery: #2d3036;--sim-battery-cell: #3f7d3a;--sim-battery-cap: #c9c9c9;--sim-switch-on: #3cc46a;--sim-switch-off: #8a8f98;--sim-motor: #f4c430;--sim-motor-dark: #c99a10;--sim-tire: #2b2b2b;--sim-hub: #e4e4e4;--sim-meter: #f5b81c;--sim-meter-lcd: #c9d6b8;--sim-meter-ink: #1e2a14;--sim-probe-red: #e5383b;--sim-probe-black: #2b2d31;--sim-field: #ffffff;--sim-field-line: #161616;--sim-robot: #ffcf33;--sim-robot-edge: #8a6d00;--sim-sensor-white: #ffffff;--sim-sensor-black: #161616;--sim-label: #6b7280;--sim-diagram-paper: #fbfaf6;--sim-diagram-ink: #2b2d31;--sim-diagram-muted: #5f6672;--sim-water: #2f8fe0;--sim-water-glint: #e8f4ff;--sim-tank: #e9eef4;--sim-pipe: #7d8794;--sim-current: #f7c51e}[data-theme=dark]{--sim-canvas: #111821;--sim-grid: #253041;--sim-board: #e9e4d8;--sim-board-edge: #bfb7a6;--sim-label: #94a3b8;--sim-field: #e9edf2;--background: #0f1419;--foreground: #f1f5f9;--card: #1a2332;--popover: #1a2332;--primary: #8b7cf8;--primary-hover: #9d8ffa;--secondary: #222d3f;--muted: #151d2b;--muted-foreground: #94a3b8;--accent: #222d3f;--border: #2d3a4d;--border-strong: #3d4f66;--input: #3d4f66;--ink-secondary: #cbd5e1;--color-primary-dim: color-mix(in srgb, var(--color-primary) 18%, transparent);--color-primary-muted: color-mix(in srgb, var(--color-primary) 22%, #1a2332);--shadow-card: 0 1px 3px rgba(0, 0, 0, .35), 0 1px 2px rgba(0, 0, 0, .25);--shadow-card-hover: 0 4px 14px rgba(0, 0, 0, .45);--shadow-sidebar: 1px 0 0 var(--color-border);--worksheet-bg: #1e293b;--worksheet-panel: #0f172a;--worksheet-border: #334155;--worksheet-border-strong: #475569;--worksheet-ink: #f1f5f9;--worksheet-muted: #cbd5e1;--worksheet-hint: #94a3b8;--worksheet-input-bg: #1e293b;--worksheet-row-alt: color-mix(in srgb, #0f172a 80%, transparent);--worksheet-row-label: color-mix(in srgb, #0f172a 90%, transparent);--worksheet-header-from: #2563eb;--worksheet-header-to: #1e3a8a;--worksheet-table-th-summary: linear-gradient( 135deg, #1e4a6e 0%, #2d4a7a 50%, #3d3d6e 100% );--worksheet-table-th-eval-main: #1e3a6e;--worksheet-table-th-eval-blog: linear-gradient(180deg, #2d5a8a 0%, #3d4a7a 100%);--overlay-backdrop: rgba(0, 0, 0, .78);--terminal-bg: #0b1120;--terminal-titlebar: #151d2b;--terminal-border: #2d3a4d;--terminal-gutter-bg: #080d19}.theme-ch1{--ch-accent: var(--color-ch1);--ch-dim: var(--color-ch1-dim);--ch-glow: color-mix(in srgb, var(--color-ch1) 14%, transparent)}.theme-ch2{--ch-accent: var(--color-ch2);--ch-dim: var(--color-ch2-dim);--ch-glow: color-mix(in srgb, var(--color-ch2) 14%, transparent)}.theme-ch3{--ch-accent: var(--color-ch3);--ch-dim: var(--color-ch3-dim);--ch-glow: color-mix(in srgb, var(--color-ch3) 14%, transparent)}.theme-ch4{--ch-accent: var(--color-ch4);--ch-dim: var(--color-ch4-dim);--ch-glow: color-mix(in srgb, var(--color-ch4) 14%, transparent)}.app-shell{display:flex;min-height:100vh;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.app-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:50;display:flex;height:100vh;width:min(100vw,var(--sidebar-width));--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));flex-direction:column;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);animation-duration:.2s;animation-timing-function:cubic-bezier(0,0,.2,1)}@media (min-width: 768px){.app-sidebar{position:sticky;top:0;z-index:auto;--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}@media print{.app-sidebar{display:none}}.app-sidebar{background:var(--color-surface);box-shadow:var(--shadow-sidebar)}.app-sidebar--open{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.app-sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background-color:#00000073}@media (min-width: 768px){.app-sidebar-backdrop{display:none}}@media print{.app-sidebar-backdrop{display:none}}.sidebar-menu-btn{display:flex;height:2.5rem;width:2.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface-2)}.sidebar-menu-btn:hover{border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border));color:var(--color-primary)}.sidebar-close-btn{display:flex;height:2.25rem;width:2.25rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:var(--radius-md);--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sidebar-close-btn:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.app-sidebar__brand{border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:1.25rem}.app-sidebar__nav{display:flex;flex:1 1 0%;flex-direction:column;gap:.125rem;overflow-y:auto;padding:.75rem}.app-sidebar__footer{border-top-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:1rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.app-main{min-height:100vh;min-width:0px;flex:1 1 0%}.app-topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:.5rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.75rem 1rem}@media (min-width: 768px){.app-topbar{display:none}}@media print{.app-topbar{display:none}}.app-topbar{background:var(--color-surface);box-shadow:var(--shadow-card)}.app-content{margin-left:auto;margin-right:auto;max-width:64rem;padding:1.5rem 1rem 4rem}@media (min-width: 768px){.app-content{padding-left:2rem;padding-right:2rem;padding-top:2rem}}@media (min-width: 1024px){.app-content{padding-left:2.5rem;padding-right:2.5rem}}.teacher-shell{display:flex;min-height:100vh;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);background:var(--color-bg)}.teacher-sidebar{--sidebar-width: 16.5rem;box-shadow:1px 0 0 var(--color-border),12px 0 28px #0f172a0a}.teacher-brand-mark{display:flex;height:2.75rem;width:2.75rem;flex-shrink:0;align-items:center;justify-content:center;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));border-radius:var(--radius-lg);background:var(--gradient-brand);box-shadow:var(--shadow-card)}.teacher-sidebar__nav-link{min-height:3rem;font-weight:500}.teacher-main{display:flex;min-height:100vh;min-width:0px;flex:1 1 0%;flex-direction:column}.teacher-topbar{position:sticky;top:.75rem;z-index:30;margin-left:.75rem;margin-right:.75rem;margin-top:.75rem;display:flex;min-height:4.25rem;align-items:center;gap:.75rem;border-radius:var(--radius-lg);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.75rem 1rem}@media (min-width: 768px){.teacher-topbar{top:1.25rem;margin-left:1.25rem;margin-right:1.25rem;margin-top:1.25rem;padding-left:1.25rem;padding-right:1.25rem}}@media (min-width: 1024px){.teacher-topbar{margin-left:2rem;margin-right:2rem;padding-left:1.5rem;padding-right:1.5rem}}@media print{.teacher-topbar{display:none}}.teacher-topbar{background:color-mix(in srgb,var(--color-surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 28px #0f172a14}.teacher-topbar-mark{display:none;height:2.75rem;width:2.75rem;flex-shrink:0;align-items:center;justify-content:center;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.teacher-topbar-mark{display:flex}}.teacher-topbar-mark{border-radius:var(--radius-pill);background:var(--gradient-brand);box-shadow:var(--shadow-card)}.teacher-content{width:100%;flex:1 1 0%;padding:1.25rem 1rem 4rem}@media (min-width: 768px){.teacher-content{padding-left:1.25rem;padding-right:1.25rem;padding-top:1.5rem}}@media (min-width: 1024px){.teacher-content{padding-left:2rem;padding-right:2rem}}.teacher-review-table thead th{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--color-surface-2) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.teacher-review-table tbody tr:hover{background:color-mix(in srgb,var(--color-surface-2) 45%,transparent)}.gradebook-scroll{width:100%;overflow-x:auto;overflow-y:auto;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);max-height:min(70vh,42rem);background:var(--color-surface)}.gradebook-table{width:-moz-max-content;width:max-content;min-width:100%;border-collapse:collapse;font-size:.875rem;line-height:1.25rem}.gradebook-table thead th{position:sticky;top:0;z-index:20;padding:.75rem;text-align:center;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);background:color-mix(in srgb,var(--color-surface-2) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border)}.gradebook-th-student{position:sticky;left:0;z-index:30;min-width:14rem;max-width:18rem;text-align:left;box-shadow:1px 0 0 var(--color-border)}.gradebook-th-score{min-width:6.5rem;max-width:8.5rem;vertical-align:bottom}.gradebook-th-title{display:block;line-height:1.375}.gradebook-th-max{margin-top:.125rem;display:block;font-size:.6875rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.gradebook-th-group{margin-top:.25rem;display:inline-block;border-radius:var(--radius-sm);padding:.125rem .375rem;font-size:.625rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface-2))}.gradebook-table tbody tr{border-bottom:1px solid var(--color-border)}.gradebook-table tbody tr:hover{background:color-mix(in srgb,var(--color-surface-2) 45%,transparent)}.gradebook-td-student{position:sticky;left:0;z-index:10;padding:.625rem .75rem;text-align:left;vertical-align:middle;background:var(--color-surface);box-shadow:1px 0 0 var(--color-border)}.gradebook-table tbody tr:hover .gradebook-td-student{background:color-mix(in srgb,var(--color-surface) 70%,var(--color-surface-2))}.gradebook-td-score{padding:.5rem;text-align:center;vertical-align:middle}.gradebook-student{display:flex;min-width:0px;align-items:center;gap:.625rem}.gradebook-student-text{display:flex;min-width:0px;flex-direction:column}.gradebook-student-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.gradebook-student-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.gradebook-avatar{display:inline-flex;height:2.25rem;width:2.25rem;flex-shrink:0;align-items:center;justify-content:center;font-size:.75rem;line-height:1rem;font-weight:600;border-radius:var(--radius-pill);color:var(--color-ink)}.gradebook-avatar--0{background:color-mix(in srgb,var(--color-ch1) 22%,var(--color-surface-2))}.gradebook-avatar--1{background:color-mix(in srgb,var(--color-ch2) 22%,var(--color-surface-2))}.gradebook-avatar--2{background:color-mix(in srgb,var(--color-ch3) 22%,var(--color-surface-2))}.gradebook-avatar--3{background:color-mix(in srgb,var(--color-ch4) 22%,var(--color-surface-2))}.gradebook-avatar--4{background:color-mix(in srgb,var(--color-success) 20%,var(--color-surface-2))}.gradebook-avatar--5{background:color-mix(in srgb,var(--color-warning) 22%,var(--color-surface-2))}.gradebook-score-wrap{position:relative;margin-left:auto;margin-right:auto;display:inline-flex;width:100%;max-width:5.5rem;flex-direction:column;align-items:center;gap:.125rem}.gradebook-score-input{height:2.25rem;width:100%;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding-left:.375rem;padding-right:.375rem;text-align:center;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);outline:2px solid transparent;outline-offset:2px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface-2)}.gradebook-score-input:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border))}.gradebook-score-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-dim);background:var(--color-surface)}.gradebook-score-input--saving{opacity:.6}.gradebook-score-input:disabled{cursor:not-allowed;opacity:.6}.gradebook-group-hint{font-size:.625rem;font-weight:500;line-height:1;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.classroom-chip{display:inline-flex;max-width:7.5rem;align-items:center;justify-content:center;border-radius:var(--radius-pill);border-width:1px;padding:.25rem .625rem;text-align:center;font-size:.75rem;line-height:1rem;font-weight:600;line-height:1.25;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface-2));border-color:color-mix(in srgb,var(--color-primary) 28%,var(--color-border))}.icon-tooltip-btn{position:relative;display:inline-flex;height:2.25rem;width:2.25rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.icon-tooltip-btn:disabled{cursor:not-allowed;opacity:.5}.icon-tooltip-btn{background:var(--color-surface-2)}.icon-tooltip-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border));color:var(--color-primary)}.icon-tooltip-btn--danger:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger) 45%,var(--color-border));color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface-2))}.icon-tooltip-btn:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + .4rem);left:50%;z-index:30;pointer-events:none;white-space:nowrap;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);padding:.25rem .5rem;font-size:.6875rem;font-weight:500;color:var(--color-ink);opacity:0;transform:translate(-50%) translateY(2px);transition:opacity .15s ease,transform .15s ease;box-shadow:var(--shadow-card)}.icon-tooltip-btn:hover:after,.icon-tooltip-btn:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.teacher-search{display:none;height:2.75rem;min-width:0px;align-items:center;gap:.5rem;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding-left:.75rem;padding-right:.75rem}@media (min-width: 1024px){.teacher-search{display:flex;width:16rem}}.teacher-search{background:var(--color-surface-2)}.teacher-icon-btn{display:none;height:2.75rem;width:2.75rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 640px){.teacher-icon-btn{display:flex}}.teacher-icon-btn{background:var(--color-surface-2)}.teacher-icon-btn:hover{border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border));color:var(--color-primary)}.sidebar-nav__section{padding:1rem .75rem .25rem;font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.14em;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.sidebar-nav__item{display:flex;align-items:center;gap:.75rem;border-radius:var(--radius-md);padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.sidebar-nav__item:hover{background:var(--color-surface-2);color:var(--color-ink)}.sidebar-nav__item--active{background:var(--color-primary-dim);color:var(--color-primary);font-weight:500}.sidebar-nav__item--active:hover{background:var(--color-primary-dim);color:var(--color-primary)}.page-eyebrow{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.14em;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.page-title{font-size:1.5rem;line-height:2rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.page-title{font-size:1.875rem;line-height:2.25rem}}.page-lead{margin-top:.5rem;max-width:42rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.page-lead{font-size:1rem;line-height:1.5rem}}.brand-accent-line{margin-top:.75rem;height:.25rem;width:7rem;border-radius:var(--radius-pill);background:var(--gradient-brand)}.chapter-hero-glow{pointer-events:none;position:absolute;left:0;right:0;top:0;height:10rem;background:var(--gradient-chapter-hero)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.card--padded,.card--padded-lg{padding:1.5rem}@media (min-width: 768px){.card--padded-lg{padding:2rem}}.chapter-card{display:block;padding:1.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.chapter-card:hover{border-color:var(--ch-accent);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.chapter-card__badge{border-radius:var(--radius-sm);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.25rem .5rem;font-family:var(--font-mono);font-size:10px;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.chapter-card:hover .chapter-card__badge{border-color:var(--ch-accent);color:var(--ch-accent)}.subject-card{display:block;padding:1.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.subject-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.subject-card__icon{display:flex;height:3rem;width:3rem;flex-shrink:0;align-items:center;justify-content:center;font-size:.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));border-radius:var(--radius-lg)}.landing-page{position:relative;min-height:100vh}.landing-page__glow{pointer-events:none;position:absolute;left:0;right:0;top:0;height:min(52vh,28rem);background:radial-gradient(ellipse 75% 55% at 88% 8%,var(--color-primary-dim),transparent 62%)}.landing-header{position:sticky;top:0;z-index:50;border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent)}@media print{.landing-header{display:none}}.landing-header{background:color-mix(in srgb,var(--color-surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-header__inner{margin-left:auto;margin-right:auto;display:flex;max-width:72rem;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem}@media (min-width: 768px){.landing-header__inner{padding-left:2rem;padding-right:2rem}}.landing-brand{display:inline-flex;min-width:0px;align-items:center;gap:.75rem}.landing-brand__mark{position:relative;display:block;flex-shrink:0;width:2.1rem;height:2.1rem}.landing-brand__shape{position:absolute;display:block;box-shadow:0 1px 2px #0f172a1a}.landing-brand__shape--1{left:0;top:0;width:.64rem;height:2.1rem;border-radius:.45rem;background:var(--color-ch1)}.landing-brand__shape--2{left:.86rem;top:0;width:1.14rem;height:.58rem;border-radius:.22rem .7rem .22rem .22rem;background:var(--color-ch3)}.landing-brand__shape--3{left:.86rem;top:.76rem;width:1.14rem;height:.58rem;border-radius:.22rem .22rem .7rem;background:var(--color-ch2)}.landing-brand__shape--4{left:.86rem;top:1.52rem;width:.64rem;height:.58rem;border-radius:.22rem .22rem .5rem;background:var(--color-ch4)}.landing-brand__text{display:flex;min-width:0px;flex-direction:column;gap:0px}.landing-brand__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.125rem;line-height:1.75rem;font-weight:700;line-height:1;letter-spacing:-.025em;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.landing-brand__title{font-size:1.25rem;line-height:1.75rem}}.landing-brand__tagline{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;font-weight:400;line-height:1;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.landing-hero{position:relative;margin-left:auto;margin-right:auto;display:grid;max-width:72rem;gap:2.5rem;padding:2rem 1rem 2.5rem}@media (min-width: 768px){.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);align-items:center;gap:3rem;padding-bottom:3.5rem;padding-top:3rem}}@media (min-width: 1024px){.landing-hero{gap:4rem;padding-left:2rem;padding-right:2rem;padding-top:4rem}}.landing-hero__title{font-size:1.875rem;line-height:2.25rem;font-weight:700;line-height:1.25;letter-spacing:-.025em;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 640px){.landing-hero__title{font-size:2.25rem;line-height:2.5rem}}@media (min-width: 1024px){.landing-hero__title{font-size:2.75rem;line-height:1.12}}.landing-hero__actions{margin-top:2rem;display:flex;flex-direction:column;gap:.75rem}@media (min-width: 640px){.landing-hero__actions{flex-direction:row;flex-wrap:wrap}}.landing-preview{position:relative;margin-left:auto;margin-right:auto;width:100%;max-width:28rem}@media (min-width: 768px){.landing-preview{max-width:none}}.landing-preview{min-height:17.5rem}.landing-preview__card{position:absolute;left:50%;width:min(100%,20rem);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:1rem;--tw-shadow: var(--shadow-card);--tw-shadow-colored: var(--shadow-card);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: color-mix(in srgb, var(--card) 100% , transparent);--tw-shadow: var(--tw-shadow-colored);border-radius:var(--radius-xl);background:var(--color-surface)}.landing-preview__card--back{top:1.5rem;z-index:0;opacity:.8;transform:translate(calc(-50% - 1.25rem)) rotate(-7deg) scale(.94)}.landing-preview__card--front{top:0;z-index:10;transform:translate(calc(-50% + .75rem)) rotate(4deg);box-shadow:var(--shadow-card-hover)}.landing-preview__bar{height:.5rem;border-radius:var(--radius-pill);background:var(--color-border)}.landing-preview__bar-fill{height:100%;border-radius:var(--radius-pill);width:var(--progress-pct, 0%);background:var(--gradient-brand)}.landing-feature-strip{margin-left:auto;margin-right:auto;display:grid;max-width:72rem;grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem;padding-left:1rem;padding-right:1rem;padding-bottom:2.5rem}@media (min-width: 640px){.landing-feature-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 768px){.landing-feature-strip{padding-left:2rem;padding-right:2rem}}.landing-feature-strip__item{display:flex;align-items:flex-start;gap:.75rem;border-radius:var(--radius-lg);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:1rem;background:var(--color-surface);box-shadow:var(--shadow-card)}.landing-section{position:relative;margin-left:auto;margin-right:auto;max-width:72rem;padding-left:1rem;padding-right:1rem;padding-bottom:4rem}@media (min-width: 768px){.landing-section{padding-left:2rem;padding-right:2rem}}.landing-subject-grid{display:grid;gap:1rem}@media (min-width: 640px){.landing-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.landing-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.landing-subject-card{position:relative;display:flex;height:100%;flex-direction:column;padding:1.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.landing-subject-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.landing-subject-card--soon{opacity:.65;pointer-events:none}.landing-subject-card__icon{display:flex;height:3.5rem;width:3.5rem;align-items:center;justify-content:center;font-size:1rem;line-height:1.5rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));border-radius:var(--radius-lg)}.landing-subject-card__arrow{margin-left:auto;flex-shrink:0;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.group:hover .landing-subject-card__arrow{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.stat-cell{border-radius:var(--radius-md);padding:.625rem;text-align:center;font-size:.75rem;line-height:1rem;background:var(--color-surface-2)}.link-card{display:block;text-align:left;font-size:.875rem;line-height:1.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.link-card:hover{border-color:var(--ch-accent);box-shadow:var(--shadow-card-hover)}.link-card--row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem}.link-inline{display:inline-flex;align-items:center;border-radius:var(--radius-lg);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface);box-shadow:var(--shadow-card)}.link-inline:hover{border-color:var(--ch-accent);color:var(--ch-accent)}.text-ch-accent{color:var(--ch-accent)}.bg-ch-accent{background-color:var(--ch-accent)}.border-ch-accent{border-color:var(--ch-accent)}.text-ch1{color:var(--color-ch1)}.text-ch2{color:var(--color-ch2)}.text-ch3{color:var(--color-ch3)}.text-ch4{color:var(--color-ch4)}.bg-ch1{background-color:var(--color-ch1)}.bg-ch2{background-color:var(--color-ch2)}.bg-ch3{background-color:var(--color-ch3)}.bg-ch4{background-color:var(--color-ch4)}.ch-dot{height:.5rem;width:.5rem;flex-shrink:0;border-radius:9999px}.text-primary{color:var(--color-primary)}.nav-pill{white-space:nowrap;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-pill);background:var(--color-surface)}.nav-pill:hover{border-color:var(--ch-accent);color:var(--color-ink);background:var(--color-surface-2)}.nav-pill--active{border-color:var(--ch-accent);background:var(--ch-dim);color:var(--ch-accent);font-weight:600}.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-md);background:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;border-width:2px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.btn-secondary:hover{border-color:var(--ch-accent);color:var(--ch-accent)}.btn-secondary-sm{display:inline-flex;align-items:center;justify-content:center;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-md);background:var(--color-surface)}.btn-secondary-sm:hover{border-color:var(--ch-accent);color:var(--ch-accent)}.btn-ch-primary{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-md);background:var(--ch-accent)}.btn-ch-primary:hover{filter:brightness(1.05)}.progress-track{height:.5rem;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-border)}.progress-fill{height:100%;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;width:var(--progress-pct, 0%);border-radius:var(--radius-pill);background:var(--ch-accent)}.progress-fill--brand{background:var(--gradient-brand);transition-duration:.5s;animation-duration:.5s}.field-input{width:100%;resize:vertical;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-md);background:var(--color-surface)}.field-input:focus{border-color:var(--ch-accent);box-shadow:0 0 0 3px var(--ch-dim)}.ui-select{position:relative;width:100%}.ui-select__trigger{display:flex;width:100%;min-width:0px;align-items:center;justify-content:space-between;gap:.5rem;border-width:1px;text-align:left;font-size:.875rem;line-height:1.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink)}.ui-select__trigger:disabled{cursor:not-allowed;opacity:.6}.ui-select__trigger:not(:disabled):hover{border-color:color-mix(in srgb,var(--ch-accent) 45%,var(--color-border))}.ui-select--open .ui-select__trigger,.ui-select__trigger:focus-visible{border-color:var(--ch-accent);box-shadow:0 0 0 3px var(--ch-dim);outline:none}.ui-select--default .ui-select__trigger{padding:.5rem .75rem}.ui-select--compact .ui-select__trigger{min-height:2.25rem;padding:.375rem .75rem;font-size:.875rem;line-height:1.25rem;border-radius:var(--radius-pill, 9999px);background:var(--worksheet-field-bg, var(--color-surface2))}.ui-select__value{min-width:0px;flex:1 1 0%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.ui-select__placeholder{min-width:0px;flex:1 1 0%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.ui-select__chevron{height:1rem;width:1rem;flex-shrink:0;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.ui-select--open .ui-select__chevron{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:color-mix(in srgb,var(--ch-accent) calc(var(--tw-text-opacity, 1) * 100%),transparent);color:var(--ch-accent)}.ui-select__menu{z-index:50;overflow:hidden;border-width:1px;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);border-color:var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);animation:ui-select-in .15s ease-out}.ui-select__menu--fixed{position:fixed;z-index:200}@keyframes ui-select-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ui-select__search-wrap{position:relative;border-bottom-width:1px;padding:.5rem;border-color:var(--color-border)}.ui-select__search-icon{pointer-events:none;position:absolute;left:1rem;top:50%;height:1rem;width:1rem;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.ui-select__search{width:100%;border-width:0px;background-color:transparent;padding:.375rem .5rem .375rem 2rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);outline:2px solid transparent;outline-offset:2px}.ui-select__list{max-height:14rem;overflow-y:auto;padding-top:.25rem;padding-bottom:.25rem}.ui-select__option{display:flex;width:100%;align-items:center;gap:.5rem;padding:.5rem .75rem;text-align:left;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ui-select__option:hover{background:var(--color-surface2)}.ui-select__option--selected{background:var(--ch-dim);color:var(--ch-accent);font-weight:600}.ui-select__check{height:1rem;width:1rem;flex-shrink:0}.ui-select__empty{padding:.75rem;text-align:center;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.quiz-option{width:100%;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.75rem 1rem;text-align:left;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.quiz-option:hover{border-color:var(--ch-accent)}.presentation-fs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media print{.presentation-fs{display:none}}.presentation-fs{background:var(--color-bg)}.presentation-fs__chrome,.presentation-fs__footer{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:.75rem;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding-left:1rem;padding-right:1rem;--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background:var(--color-surface);box-shadow:var(--shadow-card)}.presentation-fs__chrome{flex-wrap:wrap;border-bottom-width:1px;padding-top:.75rem;padding-bottom:.75rem}.presentation-fs__footer{border-top-width:1px;padding-top:1rem;padding-bottom:1rem}.theme-toggle{display:inline-flex;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.125rem;background:var(--color-surface-2)}.theme-toggle__btn{border-radius:6px;padding:.25rem .5rem;font-size:11px;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 640px){.theme-toggle__btn{padding-left:.625rem;padding-right:.625rem;font-size:.75rem;line-height:1rem}}.theme-toggle__btn:hover{color:var(--color-ink);background:var(--color-surface)}.theme-toggle__btn--active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-card);font-weight:600}.theme-dropdown{position:relative}.theme-dropdown__trigger{display:flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:var(--color-surface-2);color:var(--color-ink)}.theme-dropdown__trigger:hover{border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border));color:var(--color-primary)}.theme-dropdown__menu{position:absolute;right:0;top:100%;z-index:50;margin-top:.5rem;min-width:10.5rem;overflow:hidden;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding-top:.25rem;padding-bottom:.25rem;background:var(--color-surface);box-shadow:var(--shadow-card-hover)}.theme-dropdown__item{display:flex;width:100%;align-items:center;gap:.625rem;padding:.625rem .75rem;text-align:left;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.theme-dropdown__item:hover{background:var(--color-surface-2)}.theme-dropdown__item--active{background:var(--color-primary-dim);color:var(--color-primary);font-weight:600}.theme-dropdown__item--active:hover{background:var(--color-primary-dim)}.header-account-bar{display:flex;align-items:center;gap:.5rem}.header-account-bar--sidebar{width:100%;flex-direction:column;align-items:stretch;gap:.75rem}.header-account-bar--sidebar .theme-toggle{display:flex;width:100%}.header-account-bar--sidebar .theme-toggle__btn{min-height:2.25rem;flex:1 1 0%;justify-content:center;padding-left:.25rem;padding-right:.25rem}.user-chip{display:inline-flex;min-height:2.5rem;max-width:100%;align-items:center;gap:.5rem;border-radius:var(--radius-md);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;background:var(--color-surface-2)}.user-chip--block{width:100%;justify-content:center}.user-chip--guest{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.user-chip--guest:hover{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--primary) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.user-chip--guest.user-chip--block{font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.user-chip__action{margin-right:-.125rem;border-radius:.25rem;padding:.125rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.user-chip__action:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;padding:.75rem}@media (min-width: 640px){.modal-overlay{padding:1.5rem}}@media print{.modal-overlay{display:none}}.modal-overlay{background:var(--overlay-backdrop)}.modal-chrome{margin-bottom:.75rem;display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:.75rem}.modal-title{font-size:.875rem;line-height:1.25rem;font-weight:600;color:var(--overlay-ink)}.modal-subtitle{margin-top:.125rem;font-size:.75rem;line-height:1rem;color:var(--overlay-muted)}.modal-close-btn{border-radius:var(--radius);border-width:1px;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:var(--overlay-btn-border);background:var(--overlay-btn-bg);color:var(--overlay-ink)}.modal-close-btn:hover{background:var(--overlay-btn-bg-hover)}.confirm-dialog{margin:auto;display:grid;width:100%;max-width:32rem;gap:1rem;border-radius:calc(var(--radius) + 8px);border-width:1px;padding:1.25rem;--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media (min-width: 640px){.confirm-dialog{grid-template-columns:3rem minmax(0,1fr);padding:1.5rem}}.confirm-dialog{border-color:var(--color-border);background:var(--color-surface);color:var(--color-ink)}.confirm-dialog__icon{display:flex;height:3rem;width:3rem;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;font-size:1.125rem;line-height:1.75rem;font-weight:700;border-color:color-mix(in srgb,var(--color-primary) 35%,transparent);background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.confirm-dialog__icon--danger{border-color:color-mix(in srgb,var(--color-danger) 35%,transparent);background:var(--color-danger-dim);color:var(--color-danger)}.confirm-dialog__body{min-width:0px}.confirm-dialog__title{font-size:1.125rem;line-height:1.75rem;font-weight:600;line-height:1.375;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.confirm-dialog__message{margin-top:.5rem;white-space:pre-line;font-size:.875rem;line-height:1.5rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.confirm-dialog__actions{display:flex;flex-direction:column-reverse;gap:.5rem}@media (min-width: 640px){.confirm-dialog__actions{grid-column:span 2 / span 2;flex-direction:row;justify-content:flex-end}}.confirm-dialog__cancel,.confirm-dialog__confirm{min-height:2.75rem;border-radius:calc(var(--radius) + 4px);border-width:1px;padding:.5rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.confirm-dialog__cancel:disabled,.confirm-dialog__confirm:disabled{cursor:not-allowed;opacity:.6}.confirm-dialog__cancel{border-color:var(--color-border);background:var(--color-surface-2);color:var(--color-ink)}.confirm-dialog__cancel:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border))}.confirm-dialog__confirm{border-color:transparent;background:var(--color-primary);color:var(--primitive-white)}.confirm-dialog__confirm:hover:not(:disabled){filter:brightness(1.05)}.confirm-dialog__confirm--danger{background:var(--color-danger);color:#fff}.activity-sheet{overflow:hidden;border-radius:calc(var(--radius) + 4px);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media print{.activity-sheet{border-width:0px;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}.activity-sheet{border:1px solid var(--worksheet-border);background:var(--worksheet-bg);color:var(--worksheet-ink)}.activity-sheet__header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(90deg,var(--worksheet-header-from) 0%,var(--worksheet-header-to) 100%);color:var(--worksheet-on-accent)}.activity-sheet__students{display:grid;gap:1rem;border-bottom-width:1px;padding:1rem}@media (min-width: 640px){.activity-sheet__students{grid-template-columns:repeat(2,minmax(0,1fr))}}.activity-sheet__students{border-color:var(--worksheet-border);background:var(--worksheet-panel)}.activity-sheet__section{border-bottom-width:1px;padding:1rem;border-color:var(--worksheet-border)}.activity-sheet__body{font-size:.875rem;line-height:1.25rem;line-height:1.625}@media (min-width: 768px){.activity-sheet__body{font-size:1rem;line-height:1.5rem}}.activity-sheet__body{color:var(--worksheet-muted)}.activity-sheet__step-badge{display:inline-flex;height:1.75rem;width:1.75rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;border-width:2px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--destructive) calc(var(--tw-border-opacity, 1) * 100%),transparent);font-size:.875rem;line-height:1.25rem;font-weight:700;background:var(--worksheet-bg);color:var(--color-danger)}.activity-sheet__index{display:flex;height:1.75rem;width:1.75rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;font-size:.875rem;line-height:1.25rem;font-weight:700;background:var(--ch-accent);color:var(--worksheet-on-accent)}.activity-sheet__label{flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--worksheet-muted)}.activity-sheet__field-pill{height:2rem;border-radius:9999px;border-width:1px;text-align:center;font-size:.875rem;line-height:1.25rem;border-color:var(--worksheet-border-strong);background:var(--worksheet-input-bg);color:var(--worksheet-ink)}.activity-sheet__field-name{display:flex;min-width:140px;flex:1 1 0%;align-items:center;gap:.5rem;border-radius:9999px;border-width:1px;padding:.375rem .75rem;border-color:var(--worksheet-border-strong);background:var(--worksheet-input-bg)}.activity-sheet__field-name input{min-width:0px;flex:1 1 0%;border-width:0px;background-color:transparent;font-size:.875rem;line-height:1.25rem;outline:2px solid transparent;outline-offset:2px;color:var(--worksheet-ink)}.activity-sheet__field-name input::-moz-placeholder{color:var(--worksheet-hint)}.activity-sheet__field-name input::placeholder{color:var(--worksheet-hint)}.activity-sheet__cell{width:100%;resize:none;border-width:0px;background-color:transparent;padding:.5rem;font-size:.875rem;line-height:1.25rem;outline:2px solid transparent;outline-offset:2px}@media print{.activity-sheet__cell{min-height:2.5rem}}.activity-sheet__cell{color:var(--worksheet-ink)}.activity-sheet__cell::-moz-placeholder{color:var(--worksheet-hint)}.activity-sheet__cell::placeholder{color:var(--worksheet-hint)}.activity-sheet__th-summary{border-width:1px;padding:.625rem .5rem;text-align:center;font-size:.75rem;line-height:1rem;font-weight:600;line-height:1.375}@media (min-width: 768px){.activity-sheet__th-summary{font-size:.875rem;line-height:1.25rem}}.activity-sheet__th-summary{border-color:var(--worksheet-border-strong);background:var(--worksheet-table-th-summary);color:var(--worksheet-on-accent)}.activity-sheet__th-eval-main{width:38%;border-top-left-radius:var(--radius);border-width:1px;padding:.5rem;text-align:left;font-size:.75rem;line-height:1rem;font-weight:600}@media (min-width: 768px){.activity-sheet__th-eval-main{font-size:.875rem;line-height:1.25rem}}.activity-sheet__th-eval-main{border-color:var(--worksheet-border-strong);background:var(--worksheet-table-th-eval-main);color:var(--worksheet-on-accent)}.activity-sheet__th-eval-blog{border-width:1px;padding:.5rem .25rem;text-align:center;font-size:.75rem;line-height:1rem;font-weight:600;border-color:var(--worksheet-border-strong);background:var(--worksheet-table-th-eval-blog);color:var(--worksheet-on-accent)}.activity-sheet__td{border-width:1px;vertical-align:top;border-color:var(--worksheet-border-strong)}.activity-sheet__row{background:var(--worksheet-bg)}.activity-sheet__row:nth-child(2n){background:var(--worksheet-row-alt)}.activity-sheet__row-label{border-width:1px;padding:.5rem;vertical-align:top;font-size:.75rem;line-height:1rem;line-height:1.375}@media (min-width: 768px){.activity-sheet__row-label{font-size:.875rem;line-height:1.25rem}}.activity-sheet__row-label{border-color:var(--worksheet-border-strong);background:var(--worksheet-row-label);color:var(--worksheet-muted)}.activity-sheet__eval-cell{display:flex;height:100%;min-height:44px;width:100%;align-items:center;justify-content:center;font-size:1.25rem;line-height:1.75rem;font-weight:700;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media print{.activity-sheet__eval-cell{pointer-events:none}}.activity-sheet__eval-cell:hover{background:var(--worksheet-eval-hover)}.activity-sheet__hint{margin-top:.5rem;font-size:.75rem;line-height:1rem}@media print{.activity-sheet__hint{display:none}}.activity-sheet__hint{color:var(--worksheet-hint)}.activity-sheet__blog-input{width:100%;border-width:0px;border-top-width:1px;border-style:dashed;background-color:transparent;padding-top:.25rem;text-align:center;font-size:.75rem;line-height:1rem;font-weight:400;outline:2px solid transparent;outline-offset:2px;border-color:color-mix(in srgb,var(--worksheet-on-accent) 50%,transparent);color:var(--worksheet-on-accent)}.activity-sheet__blog-input::-moz-placeholder{color:color-mix(in srgb,var(--worksheet-on-accent) 70%,transparent)}.activity-sheet__blog-input::placeholder{color:color-mix(in srgb,var(--worksheet-on-accent) 70%,transparent)}.activity-sheet__mark-sample{display:inline-flex;height:1.25rem;width:1.25rem;align-items:center;justify-content:center;border-radius:.25rem;border-width:1px;font-size:.75rem;line-height:1rem;font-weight:700;border-color:var(--worksheet-border-strong)}.activity-sheet__input-line{width:100%;border-radius:9999px;border-width:1px;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;outline:2px solid transparent;outline-offset:2px}@media print{.activity-sheet__input-line{min-height:2.5rem}}.activity-sheet__input-line{border-color:var(--worksheet-border-strong);background:var(--worksheet-input-bg);color:var(--worksheet-ink)}.activity-sheet__input-line::-moz-placeholder{color:var(--worksheet-hint)}.activity-sheet__input-line::placeholder{color:var(--worksheet-hint)}.activity-sheet__outline-box{overflow:hidden;border-radius:calc(var(--radius) + 8px);border-width:1px;border-color:var(--worksheet-border-strong);background:var(--worksheet-input-bg)}.activity-sheet__sub-index{display:inline-flex;min-width:2.25rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;line-height:1rem;font-weight:700;background:var(--ch-accent);color:var(--worksheet-on-accent)}.worksheet-group-list{margin-top:.375rem;list-style-type:none}.worksheet-group-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.worksheet-group-list{padding:0;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.worksheet-group-list li{display:flex;flex-wrap:wrap;align-items:baseline;-moz-column-gap:.5rem;column-gap:.5rem;row-gap:.125rem}.python-sandbox__hint{margin-bottom:.75rem}.python-sandbox__window{overflow:hidden;border-radius:var(--radius);font-family:var(--font-code);font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0;border:1px solid var(--terminal-border);background:var(--terminal-bg);color:var(--terminal-fg)}.python-sandbox__window:focus-within{box-shadow:0 0 0 2px var(--color-primary)}.python-sandbox__titlebar{display:flex;min-width:0px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.75rem;line-height:1rem;background:var(--terminal-titlebar);color:var(--terminal-muted)}.python-sandbox__dots{display:flex;flex-shrink:0;gap:.375rem}.python-sandbox__dots span{display:block;height:.625rem;width:.625rem;border-radius:9999px}.python-sandbox__dots span:nth-child(1){background:var(--terminal-dot-red)}.python-sandbox__dots span:nth-child(2){background:var(--terminal-dot-amber)}.python-sandbox__dots span:nth-child(3){background:var(--terminal-dot-green)}.python-sandbox__title{min-width:0px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--terminal-fg)}.python-sandbox__title-meta{margin-left:auto;flex-shrink:0}.python-sandbox__code{display:flex}.python-sandbox__gutter,.python-sandbox__editor{padding-top:.75rem;padding-bottom:.75rem;font-size:.875rem;line-height:1.5rem}.python-sandbox__gutter{flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;padding-left:.75rem;padding-right:.5rem;text-align:right;min-width:2.75rem;background:var(--terminal-gutter-bg);color:var(--terminal-gutter)}.python-sandbox__gutter span{display:block}.python-sandbox__gutter .is-error{font-weight:700;color:var(--terminal-error)}.python-sandbox__editor{display:block;min-width:0px;flex:1 1 0%;resize:vertical;overflow:auto;border-width:0px;background-color:transparent;padding-left:.75rem;padding-right:.75rem;min-height:10rem;-moz-tab-size:4;-o-tab-size:4;tab-size:4;white-space:pre;color:var(--terminal-fg);caret-color:var(--terminal-accent);outline:none}.python-sandbox__editor::-moz-selection,.python-sandbox__stdout::-moz-selection{background:var(--terminal-selection)}.python-sandbox__editor::selection,.python-sandbox__stdout::selection{background:var(--terminal-selection)}.python-sandbox__actions{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.5rem}.python-sandbox__output{margin-top:1rem}.python-sandbox__screen{max-height:16rem;overflow:auto;padding:.75rem;font-size:.875rem;line-height:1.5rem}.python-sandbox__stdout,.python-sandbox__stderr,.python-sandbox__editor,.python-sandbox__stdin{font-family:inherit;font-variant-ligatures:inherit;font-feature-settings:inherit}.python-sandbox__stdout,.python-sandbox__stderr{margin:0;white-space:pre-wrap}.python-sandbox__stdout{color:var(--terminal-fg)}.python-sandbox__stderr{color:var(--terminal-error)}.python-sandbox__muted{color:var(--terminal-muted)}.python-sandbox__stdin{display:inline-block;max-width:100%;border-width:0px;background-color:transparent;padding:0;font-size:.875rem;line-height:1.25rem;width:18ch;color:var(--terminal-accent);caret-color:var(--terminal-accent);border-bottom:2px solid var(--terminal-accent);outline:none}.python-sandbox__stdin-bar{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}@media (min-width: 640px){.python-sandbox__stdin-bar{flex-direction:row;align-items:center;justify-content:space-between}}.python-sandbox__error-hint{border:1px solid color-mix(in srgb,var(--color-warning) 45%,transparent);background:var(--color-warning-dim);margin-top:.75rem;border-radius:var(--radius);padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem}@media print{.python-sandbox{--terminal-bg: #ffffff;--terminal-titlebar: #f1f5f9;--terminal-border: #cbd5e1;--terminal-fg: #111827;--terminal-muted: #4b5563;--terminal-gutter: #6b7280;--terminal-gutter-bg: #f8fafc;--terminal-error: #b91c1c;--terminal-accent: #15803d}.python-sandbox__editor{resize:none}}.slide-extras{margin-top:1.5rem}.slide-extras>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.slide-extras--lg{margin-top:2rem}.slide-extras--lg>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.slide-code-inline{white-space:nowrap;border-radius:calc(var(--radius) - 2px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.125rem .375rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);font-family:var(--font-code);font-size:.88em;font-variant-ligatures:none}.slide-points>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.slide-points{font-size:1rem;line-height:1.5rem;line-height:1.625;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-points{font-size:1.125rem;line-height:1.75rem}}.slide-points--lg>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.slide-points--lg{font-size:1.125rem;line-height:1.75rem}@media (min-width: 768px){.slide-points--lg{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1024px){.slide-points--lg{font-size:1.5rem;line-height:2rem}}.slide-points li{display:flex;align-items:flex-start;gap:.75rem}.slide-points__icon{width:2rem;flex-shrink:0;text-align:center;font-size:1.25rem;line-height:1.75rem;line-height:1.375}@media (min-width: 768px){.slide-points__icon{font-size:1.5rem;line-height:2rem}}.slide-table{max-width:100%;overflow-x:auto;border-radius:calc(var(--radius) + 4px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.slide-table table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.375}@media (min-width: 640px){.slide-table table{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.slide-table table{font-size:1rem;line-height:1.5rem}}.slide-table table.slide-table--lg{font-size:1rem;line-height:1.5rem}@media (min-width: 768px){.slide-table table.slide-table--lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width: 1024px){.slide-table table.slide-table--lg{font-size:1.25rem;line-height:1.75rem}}.slide-table th{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.5rem .75rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.slide-table td{border-top-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);padding:.5rem .75rem;vertical-align:top;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.slide-table th,.slide-table td{padding-left:.5rem;padding-right:.5rem}@media (min-width: 640px){.slide-table th,.slide-table td{padding-left:.75rem;padding-right:.75rem}}.slide-flow{display:flex;flex-direction:column;align-items:stretch;gap:.25rem}@media (min-width: 768px){.slide-flow{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.5rem}}.slide-flow__item{display:flex;flex-direction:column;align-items:center;gap:.25rem}@media (min-width: 768px){.slide-flow__item{flex-direction:row;gap:.5rem}}.slide-flow__arrow{font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--ch-accent)}.slide-flow__step{display:flex;width:100%;flex-direction:column;align-items:center;gap:.125rem;border-radius:calc(var(--radius) + 4px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.75rem 1rem;text-align:center}@media (min-width: 768px){.slide-flow__step{width:auto;min-width:8.5rem}}.slide-flow__icon{font-size:1.5rem;line-height:2rem}@media (min-width: 768px){.slide-flow__icon{font-size:1.875rem;line-height:2.25rem}}.slide-boxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}@media (min-width: 768px){.slide-boxes{grid-template-columns:repeat(4,minmax(0,1fr))}}.slide-boxes__item{display:flex;min-width:0px;flex-direction:column;align-items:center;gap:.375rem}.slide-boxes__name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-boxes__name{font-size:1rem;line-height:1.5rem}}.slide-boxes__name{font-family:var(--font-code)}.slide-boxes__value{display:flex;min-height:3.5rem;width:100%;align-items:center;justify-content:center;border-radius:calc(var(--radius) + 4px);border-width:2px;border-style:dashed;padding-left:.5rem;padding-right:.5rem;font-size:1.125rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-boxes__value{font-size:1.25rem;line-height:1.75rem}}.slide-boxes__value{border-color:var(--color-primary);background:var(--color-primary-dim);font-family:var(--font-code)}.slide-boxes__type{border-radius:9999px;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);font-family:var(--font-code)}.slide-index__name{margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-index__name{font-size:1rem;line-height:1.5rem}}.slide-index__name{font-family:var(--font-code)}.slide-index__scroll{max-width:100%;overflow-x:auto;padding-bottom:.25rem}.slide-index__row{display:inline-flex}.slide-index__cell{display:flex;flex-direction:column;align-items:center}.slide-index__pos,.slide-index__neg{padding-top:.25rem;padding-bottom:.25rem;font-size:.75rem;line-height:1rem;font-weight:600}@media (min-width: 768px){.slide-index__pos,.slide-index__neg{font-size:.875rem;line-height:1.25rem}}.slide-index__pos,.slide-index__neg{font-family:var(--font-code)}.slide-index__pos{color:var(--color-primary)}.slide-index__neg{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.slide-index__value{display:flex;height:3rem;min-width:3rem;align-items:center;justify-content:center;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding-left:.5rem;padding-right:.5rem;font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-index__value{height:3.5rem;min-width:3.5rem;font-size:1.125rem;line-height:1.75rem}}.slide-index__value{font-family:var(--font-code)}.slide-index__cell+.slide-index__cell .slide-index__value{border-left-width:0px}.slide-symbols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media (min-width: 640px){.slide-symbols{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 768px){.slide-symbols{grid-template-columns:repeat(5,minmax(0,1fr))}}.slide-symbols__item{display:flex;flex-direction:column;align-items:center;gap:.375rem;text-align:center}.slide-symbols__shape{display:flex;height:3rem;width:6rem;align-items:center;justify-content:center;font-size:1.5rem;line-height:2rem;font-weight:700;color:var(--ch-accent);background:color-mix(in srgb,var(--ch-accent) 30%,transparent)}.slide-symbols__shape--oval{border-radius:9999px}.slide-symbols__shape--rect{border-radius:calc(var(--radius) - 6px)}.slide-symbols__shape--diamond{height:3.5rem;width:5rem;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.slide-symbols__shape--parallelogram{clip-path:polygon(18% 0,100% 0,82% 100%,0 100%)}.slide-symbols__shape--arrow{background-color:transparent}.slide-example__grid{display:grid;gap:.75rem}@media (min-width: 1024px){.slide-example__grid--split{grid-template-columns:repeat(2,minmax(0,1fr))}}.slide-example__window{min-width:0px}.slide-example__pre{margin:0;max-width:100%;overflow-x:auto;padding:.75rem;font-size:.875rem;line-height:1.25rem}@media (min-width: 640px){.slide-example__pre{padding:1rem}}@media (min-width: 768px){.slide-example__pre{font-size:1rem;line-height:1.5rem}}.slide-example__pre{line-height:1.6;color:var(--terminal-fg)}@media (min-width: 768px){.slide-example__pre--lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width: 1024px){.slide-example__pre--lg{font-size:1.25rem;line-height:1.75rem}}.slide-example__pre--wrap{white-space:pre-wrap;overflow-wrap:break-word}.slide-example__error{color:var(--terminal-error)}.slide-callout{display:flex;align-items:flex-start;gap:.75rem;border-radius:calc(var(--radius) + 4px);padding:.75rem 1rem;font-size:1rem;line-height:1.5rem;line-height:1.625;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-callout{font-size:1.125rem;line-height:1.75rem}}.slide-extras--lg .slide-callout{font-size:1.125rem;line-height:1.75rem}@media (min-width: 768px){.slide-extras--lg .slide-callout{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1024px){.slide-extras--lg .slide-callout{font-size:1.5rem;line-height:2rem}}.slide-callout__icon{flex-shrink:0;font-size:1.25rem;line-height:1.75rem}@media (min-width: 768px){.slide-callout__icon{font-size:1.5rem;line-height:2rem}}.slide-callout--tip{border:1px solid color-mix(in srgb,var(--color-success) 40%,transparent);background:var(--color-success-dim)}.slide-callout--warn{border:1px solid color-mix(in srgb,var(--color-warning) 45%,transparent);background:var(--color-warning-dim)}.worksheet-example-text{margin:0;white-space:pre-wrap;font-size:.875rem;line-height:1.25rem;line-height:1.625;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.worksheet-example-text{font-size:1rem;line-height:1.5rem}}.worksheet-example-text{font-family:inherit}.flowchart{overflow-x:auto}.flowchart__svg{margin-left:auto;margin-right:auto;display:block;height:auto;max-width:100%}.flowchart__node{stroke-width:1.6;fill:var(--color-surface);stroke:var(--color-ink-secondary)}.flowchart__node--start,.flowchart__node--end{fill:var(--color-success-dim);stroke:var(--color-success)}.flowchart__node--io{fill:var(--color-ch1-dim);stroke:var(--color-ch1)}.flowchart__node--decision{fill:var(--color-warning-dim);stroke:var(--color-warning)}.flowchart__text{fill:var(--color-ink);font-size:14px}.flowchart__text--empty,.flowchart__num{fill:var(--color-muted)}.flowchart__num{font-size:12px;font-family:var(--font-code)}.flowchart__edge{fill:none;stroke:var(--color-muted);stroke-width:1.6}.flowchart__edge--dangling{stroke:var(--color-danger);stroke-dasharray:4 3}.flowchart__arrow{fill:var(--color-muted)}.flowchart__label{fill:var(--color-ink-secondary);font-size:12px;font-weight:600}.flowchart__label--dangling{fill:var(--color-danger)}.flowchart-checks>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.flowchart-checks{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.flowchart-checks li{display:flex;align-items:flex-start;gap:.5rem}.flowchart-checks__todo{color:var(--color-ink-secondary)}.flowchart-editor{margin:0;min-width:0px;border-width:0px;padding:0}.flowchart-editor:disabled{opacity:.6}.flowchart-editor__row{display:flex;align-items:flex-start;gap:.5rem;border-radius:calc(var(--radius) + 4px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.625rem}@media (min-width: 640px){.flowchart-editor__row{gap:.75rem;padding:.75rem}}.flowchart-editor__num{margin-top:.5rem;width:1.5rem;flex-shrink:0;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);font-family:var(--font-code)}.flowchart-editor__target{display:flex;min-width:0px;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.25rem}.flowchart-editor__target-label{width:3.5rem;flex-shrink:0;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.flowchart-editor__actions{display:flex;flex-shrink:0;flex-direction:column;gap:.25rem}.flowchart-editor__actions button{height:2rem;width:2rem;padding:0}.flowchart-editor__actions button:disabled{opacity:.3}.slide-choices{display:grid;gap:.5rem}@media (min-width: 640px){.slide-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}}.slide-choices__item{display:flex;align-items:center;gap:.75rem;border-radius:calc(var(--radius) + 4px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.75rem 1rem;font-size:1rem;line-height:1.5rem;font-weight:600;line-height:1.375;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.slide-choices__item{font-size:1.125rem;line-height:1.75rem}}.slide-extras--lg .slide-choices__item{font-size:1.125rem;line-height:1.75rem}@media (min-width: 768px){.slide-extras--lg .slide-choices__item{font-size:1.25rem;line-height:1.75rem}}.slide-choices__icon{flex-shrink:0;font-size:1.5rem;line-height:2rem}@media (min-width: 768px){.slide-choices__icon{font-size:1.875rem;line-height:2.25rem}}.robot-sim>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.robot-sim{border-radius:calc(var(--radius) + 4px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.75rem}@media (min-width: 640px){.robot-sim{padding:1rem}}.robot-sim__tabs{display:flex;flex-wrap:wrap;gap:.5rem}.robot-sim__tab{min-height:2.75rem;border-radius:var(--radius);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 768px){.robot-sim__tab{font-size:1rem;line-height:1.5rem}}.robot-sim__tab{color:var(--color-ink-secondary)}.robot-sim__tab--active{border-color:var(--ch-accent);background:var(--ch-dim);color:var(--color-ink)}.robot-sim__grid{display:grid;gap:1rem}@media (min-width: 768px){.robot-sim__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.robot-sim__caption{margin-bottom:.5rem;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.robot-sim__caption{font-size:.875rem;line-height:1.25rem}}.robot-sim__program>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.robot-sim__line{display:flex;align-items:center;gap:.75rem;border-radius:var(--radius);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 768px){.robot-sim__line{font-size:1.125rem;line-height:1.75rem}}.robot-sim__lineno{width:1.25rem;flex-shrink:0;text-align:right;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);font-family:var(--font-code)}.robot-sim__line--current{border-color:var(--ch-accent);background:var(--ch-dim)}.robot-sim__line--done{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.robot-sim__line--error{border-color:var(--color-danger);background:var(--color-danger-dim)}.robot-sim__say{margin-top:.75rem;display:flex;align-items:flex-start;gap:.75rem;border-radius:calc(var(--radius) + 4px);border-width:1px;padding:.625rem .75rem;font-size:1rem;line-height:1.5rem;line-height:1.625;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media (min-width: 768px){.robot-sim__say{font-size:1.125rem;line-height:1.75rem}}.robot-sim__say--info{border-color:var(--color-border);background:var(--color-surface-2)}.robot-sim__say--success{border-color:color-mix(in srgb,var(--color-success) 40%,transparent);background:var(--color-success-dim)}.robot-sim__say--warn{border-color:color-mix(in srgb,var(--color-warning) 45%,transparent);background:var(--color-warning-dim)}.robot-sim__say--error{border-color:color-mix(in srgb,var(--color-danger) 45%,transparent);background:var(--color-danger-dim)}.robot-sim__stage{position:relative;display:flex;min-height:15rem;flex-direction:column;align-items:center;justify-content:flex-end;border-radius:calc(var(--radius) + 4px);border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent);padding:3rem 1rem 1rem}.robot-sim__temp{position:absolute;left:.75rem;top:.75rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.robot-sim__steam{height:2rem;font-size:1.5rem;line-height:2rem}@media (prefers-reduced-motion: no-preference){@keyframes pulse{}.robot-sim__steam{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}}.robot-sim__pot{position:relative;height:6rem;width:10rem;overflow:hidden;border-bottom-right-radius:2rem;border-bottom-left-radius:2rem;border-width:4px;border-top-width:0px}@media (min-width: 640px){.robot-sim__pot{width:12rem}}.robot-sim__pot{border-color:var(--color-ink-secondary)}.robot-sim__water{position:absolute;left:0;right:0;bottom:0;display:flex;height:0px;align-items:flex-start;justify-content:center;transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.7s;animation-duration:.7s;background:color-mix(in srgb,var(--color-ch1) 35%,transparent)}.robot-sim__water--full{height:70%}.robot-sim__bubbles{font-size:.875rem;line-height:1.25rem;letter-spacing:.1em}@media (prefers-reduced-motion: no-preference){@keyframes bounce{}.robot-sim__bubbles{animation:bounce 1s infinite}}.robot-sim__bubbles{color:var(--color-ink-secondary)}.robot-sim__noodles{position:absolute;bottom:.25rem;left:50%;--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));font-size:1.875rem;line-height:2.25rem}.robot-sim__noodles--soggy{opacity:.6;--tw-grayscale: grayscale(100%);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)}.robot-sim__burner{margin-top:.25rem;font-size:1.5rem;line-height:2rem;letter-spacing:.3em}.robot-sim__controls{display:flex;flex-wrap:wrap;gap:.5rem}.robot-sim__controls button:disabled{cursor:not-allowed;opacity:.4}h2 .slide-code-inline{border-width:0px;background-color:transparent;padding:0;color:inherit;font-size:.92em}@supports (-webkit-touch-callout: none){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:max(16px,1em)!important}.python-sandbox .python-sandbox__gutter{font-size:16px}}.sim-canvas{background-color:var(--sim-canvas);background-image:radial-gradient(var(--sim-grid) 1px,transparent 1px);background-size:20px 20px;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.sim-board{fill:var(--sim-board);stroke:var(--sim-board-edge)}.sim-board-gap{fill:var(--sim-board-gap)}.sim-board-label{fill:var(--sim-board-label);font-size:7px;font-family:var(--font-sans)}.sim-hole{fill:var(--sim-hole)}.sim-hole--hot{fill:var(--sim-hole-hot)}.sim-hole-ring{fill:none;stroke:var(--sim-hole-hot);stroke-width:2}.sim-rail--plus{stroke:var(--sim-rail-plus)}.sim-rail--minus{stroke:var(--sim-rail-minus)}.sim-rail-sign--plus{fill:var(--sim-rail-plus);font-size:10px;font-weight:700}.sim-rail-sign--minus{fill:var(--sim-rail-minus);font-size:10px;font-weight:700}.sim-leg{stroke:var(--sim-leg);stroke-width:2;stroke-linecap:round;fill:none}.sim-label{fill:var(--sim-label);font-size:8px;font-family:var(--font-sans)}.sim-text-dark{fill:var(--sim-ic-text);font-size:8px;font-family:var(--font-sans);font-weight:600}.sim-select-box{fill:none;stroke:var(--sim-select);stroke-width:1.5;stroke-dasharray:4 3}.sim-hit{cursor:grab}.sim-hit:active{cursor:grabbing}.sim-wire{fill:none;stroke-width:4;stroke-linecap:round}.sim-wire-outline{fill:none;stroke-width:7;stroke-linecap:round;stroke:var(--sim-select);opacity:.45}.sim-wire--red{stroke:var(--sim-wire-red)}.sim-wire--black{stroke:var(--sim-wire-black)}.sim-wire--yellow{stroke:var(--sim-wire-yellow)}.sim-wire--blue{stroke:var(--sim-wire-blue)}.sim-wire--green{stroke:var(--sim-wire-green)}.sim-wire--orange{stroke:var(--sim-wire-orange)}.sim-wire-dot--red{fill:var(--sim-wire-red)}.sim-wire-dot--black{fill:var(--sim-wire-black)}.sim-wire-dot--yellow{fill:var(--sim-wire-yellow)}.sim-wire-dot--blue{fill:var(--sim-wire-blue)}.sim-wire-dot--green{fill:var(--sim-wire-green)}.sim-wire-dot--orange{fill:var(--sim-wire-orange)}.sim-wire-end{fill:var(--card);stroke:var(--sim-select);stroke-width:2;cursor:move}.sim-wire-hit{fill:none;stroke:transparent;stroke-width:12;cursor:pointer}.sim-wire-preview{fill:none;stroke-width:4;stroke-linecap:round;stroke-dasharray:6 4;opacity:.8}.sim-swatch--red{background:var(--sim-wire-red)}.sim-swatch--black{background:var(--sim-wire-black)}.sim-swatch--yellow{background:var(--sim-wire-yellow)}.sim-swatch--blue{background:var(--sim-wire-blue)}.sim-swatch--green{background:var(--sim-wire-green)}.sim-swatch--orange{background:var(--sim-wire-orange)}.sim-resistor{fill:var(--sim-resistor)}.sim-band--0{fill:var(--sim-band-0)}.sim-band--1{fill:var(--sim-band-1)}.sim-band--2{fill:var(--sim-band-2)}.sim-band--3{fill:var(--sim-band-3)}.sim-band--4{fill:var(--sim-band-4)}.sim-band--5{fill:var(--sim-band-5)}.sim-band--6{fill:var(--sim-band-6)}.sim-band--7{fill:var(--sim-band-7)}.sim-band--8{fill:var(--sim-band-8)}.sim-band--9{fill:var(--sim-band-9)}.sim-band---1,.sim-band--gold{fill:var(--sim-band-gold)}.sim-led--red{fill:var(--sim-led-red)}.sim-led--green{fill:var(--sim-led-green)}.sim-led--yellow{fill:var(--sim-led-yellow)}.sim-led--blue{fill:var(--sim-led-blue)}.sim-led-body{opacity:var(--sim-led-off-alpha);stroke:#00000040;stroke-width:.8}.sim-led-body--on{opacity:1}.sim-ir-lens{fill:var(--sim-ir-lens);stroke:var(--sim-leg);stroke-width:.8}.sim-ir-detector{fill:var(--sim-ir-detector);stroke:var(--sim-leg);stroke-width:.8}.sim-ir-glow{fill:var(--sim-ir-glow);opacity:.7}.sim-dark-plastic{fill:var(--sim-dark-plastic)}.sim-metal{fill:var(--sim-metal)}.sim-pot{fill:var(--sim-pot)}.sim-pot-rotor{fill:var(--sim-pot-rotor)}.sim-diode{fill:var(--sim-diode)}.sim-diode-band{fill:var(--sim-diode-band)}.sim-cap-ceramic{fill:var(--sim-cap-ceramic)}.sim-cap-electro{fill:var(--sim-cap-electro)}.sim-cap-stripe{fill:var(--sim-cap-stripe)}.sim-battery{fill:var(--sim-battery)}.sim-battery-cell{fill:var(--sim-battery-cell)}.sim-battery-cap{fill:var(--sim-battery-cap)}.sim-switch--on{fill:var(--sim-switch-on)}.sim-switch--off{fill:var(--sim-switch-off)}.sim-motor{fill:var(--sim-motor)}.sim-motor-dark{fill:var(--sim-motor-dark)}.sim-tire{fill:var(--sim-tire)}.sim-hub{fill:var(--sim-hub)}.sim-terminal--plus{fill:var(--sim-wire-red)}.sim-terminal--minus{fill:var(--sim-wire-black)}.sim-meter{fill:var(--sim-meter);stroke:#0000004d}.sim-meter-lcd{fill:var(--sim-meter-lcd)}.sim-meter-pointer{fill:var(--sim-hub)}.sim-meter-text{fill:var(--sim-meter-ink);font-family:var(--font-code);font-weight:600}.sim-probe-lead--red{stroke:var(--sim-probe-red);stroke-width:2.5;fill:none}.sim-probe-lead--black{stroke:var(--sim-probe-black);stroke-width:2.5;fill:none}.sim-probe--red{fill:var(--sim-probe-red);cursor:grab}.sim-probe--black{fill:var(--sim-probe-black);cursor:grab}.sim-side-badge{fill:var(--sim-select)}.sim-side-badge-text{fill:var(--primary-foreground);font-size:7px;font-weight:700;font-family:var(--font-sans)}.sim-warn-ring{fill:none;stroke:var(--destructive);stroke-width:2;stroke-dasharray:3 2}.sim-action{cursor:pointer;color:var(--foreground)}.sim-action circle{fill:var(--card);stroke:var(--border);stroke-width:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.18))}.sim-action:hover circle{fill:var(--accent)}.sim-action--delete{color:var(--destructive)}.sim-action--delete:hover circle{fill:var(--destructive);stroke:var(--destructive)}.sim-action--delete:hover{color:var(--destructive-foreground)}.sim-action svg{pointer-events:none}.sim-diagram{background:var(--sim-diagram-paper)}.sim-diagram-rail{stroke-width:4;stroke-linecap:round}.sim-diagram-wire{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.sim-diagram-wire--loose{stroke-dasharray:6 5}.sim-diagram-loose-end{fill:var(--sim-diagram-paper);stroke-width:3}.sim-diagram-probe{stroke-width:7;stroke-linecap:round}.sim-diagram-dot{fill:var(--sim-diagram-ink)}.sim-diagram-text{fill:var(--sim-diagram-ink);font-size:15px;font-family:var(--font-sans);font-weight:600}.sim-diagram-text--muted{fill:var(--sim-diagram-muted);font-weight:500}.sim-diagram-text--plus{fill:var(--sim-rail-plus)}.sim-diagram-text--minus{fill:var(--sim-rail-minus)}.sim-diagram-text--pin{font-size:13px;font-weight:700}.sim-thumb{background-color:var(--sim-canvas);background-image:radial-gradient(var(--sim-grid) 1px,transparent 1px);background-size:10px 10px}.sim-spin{transform-box:fill-box;transform-origin:center;animation:sim-spin var(--sim-spin-duration, 1s) linear infinite}.sim-spin--reverse{animation-direction:reverse}@keyframes sim-spin{to{transform:rotate(360deg)}}.sim-field{fill:var(--sim-field);stroke:var(--border)}.sim-field-line{fill:none;stroke:var(--sim-field-line);stroke-linejoin:round}.sim-robot{fill:var(--sim-robot);stroke:var(--sim-robot-edge);stroke-width:.4}.sim-robot-wheel{fill:var(--sim-tire)}.sim-sensor-dot--white{fill:var(--sim-sensor-white);stroke:var(--sim-field-line);stroke-width:.3}.sim-sensor-dot--black{fill:var(--sim-led-red);stroke:var(--sim-field-line);stroke-width:.3}.sim-start-line{stroke:var(--sim-led-green);stroke-width:1}@media (prefers-reduced-motion: reduce){.sim-spin{animation-duration:4s!important}}.flow-sim-paper{background-color:var(--sim-diagram-paper)}.flow-sim-tank{fill:var(--sim-tank);stroke:var(--sim-pipe);stroke-width:2.5}.flow-sim-water{fill:var(--sim-water)}.flow-sim-level{transform-box:fill-box;transform-origin:bottom;transition:transform .5s ease}.flow-sim-pipe{fill:none;stroke:var(--sim-pipe);stroke-linejoin:round}.flow-sim-pipe-water{fill:none;stroke:var(--sim-water);stroke-linejoin:round}.flow-sim-stream{stroke:var(--sim-water);stroke-linecap:round}.flow-sim-glint{fill:none;stroke:var(--sim-water-glint);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.flow-sim-wire{fill:none;stroke:var(--sim-diagram-ink);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.flow-sim-zigzag{fill:none;stroke:var(--sim-diagram-ink);stroke-width:3;stroke-linejoin:round}.flow-sim-dots{fill:none;stroke:var(--sim-current);stroke-width:5;stroke-linecap:round}.flow-sim-meter{fill:var(--sim-diagram-paper);stroke:var(--sim-diagram-ink);stroke-width:3}.flow-sim-plate{stroke:var(--sim-diagram-ink);stroke-linecap:butt}.flow-sim-ink{fill:var(--sim-diagram-ink);font-family:var(--font-sans);font-weight:700}.flow-sim-label{fill:var(--sim-diagram-muted);font-family:var(--font-sans);font-size:11px}.flow-sim-led{fill:var(--sim-led-red);stroke:var(--sim-diagram-ink);stroke-width:2;stroke-linejoin:round}.flow-sim-led--burnt{fill:var(--sim-diode)}.flow-sim-glow-stop{stop-color:var(--sim-led-red)}.flow-sim-cell{fill:var(--sim-battery-cell);stroke:var(--sim-battery);stroke-width:1.5}.flow-sim-cell--rev{stroke:var(--sim-led-red);stroke-width:3}.flow-sim-cap{fill:var(--sim-battery-cap);stroke:var(--sim-battery);stroke-width:1}.flow-sim-cell-text{fill:var(--sim-ic-text);font-family:var(--font-sans);font-size:15px;font-weight:700;pointer-events:none}.flow-sim-label--warn{fill:var(--sim-led-red);font-weight:700}.flow-sim-hit{cursor:pointer;outline:none}.flow-sim-hit:focus-visible .flow-sim-cell{stroke:var(--ring);stroke-width:3}.flow-sim-baseline{stroke:var(--sim-diagram-muted);stroke-width:1;stroke-dasharray:4 4}.flow-sim-tire{fill:var(--sim-tire)}.flow-sim-hub{fill:var(--sim-hub)}.flow-sim-spoke{stroke:var(--sim-tire);stroke-width:4;stroke-linecap:round}.flow-sim-lead{stroke:var(--sim-leg);stroke-width:4;stroke-linecap:round}.flow-sim-resistor-edge{stroke:var(--sim-diagram-muted);stroke-width:1}.flow-sim-band-focus{fill:none;stroke:var(--ring);stroke-width:2.5;stroke-dasharray:4 3}.flow-sim-paper-fill{fill:var(--sim-diagram-paper)}.flow-sim-wire--a{stroke:var(--sim-wire-blue)}.flow-sim-wire--b{stroke:var(--sim-wire-green)}.flow-sim-probe--red{fill:var(--sim-probe-red);stroke:var(--sim-diagram-paper);stroke-width:2}.flow-sim-probe--black{fill:var(--sim-probe-black);stroke:var(--sim-diagram-paper);stroke-width:2}.flow-sim-meter-body{background-color:var(--sim-meter)}.flow-sim-lcd{background-color:var(--sim-meter-lcd);color:var(--sim-meter-ink)}.flow-sim-swatch--0{background-color:var(--sim-band-0)}.flow-sim-swatch--1{background-color:var(--sim-band-1)}.flow-sim-swatch--2{background-color:var(--sim-band-2)}.flow-sim-swatch--3{background-color:var(--sim-band-3)}.flow-sim-swatch--4{background-color:var(--sim-band-4)}.flow-sim-swatch--5{background-color:var(--sim-band-5)}.flow-sim-swatch--6{background-color:var(--sim-band-6)}.flow-sim-swatch--7{background-color:var(--sim-band-7)}.flow-sim-swatch--8{background-color:var(--sim-band-8)}.flow-sim-swatch--9{background-color:var(--sim-band-9)}.flow-sim-leg-end{fill:var(--sim-leg)}.flow-sim-strip{fill:none;stroke-width:2.5}.flow-sim-strip--pick{stroke:var(--sim-hole-hot)}.flow-sim-strip--red{stroke:var(--sim-probe-red)}.flow-sim-strip--black{stroke:var(--sim-probe-black);stroke-dasharray:5 3}.flow-sim-pick{fill:none;stroke:var(--sim-hole-hot);stroke-width:3}.flow-sim-ic-pin{fill:var(--sim-metal)}.flow-sim-ic-notch{fill:var(--sim-board)}.flow-sim-ic-text{fill:var(--sim-ic-text);font-family:var(--font-sans);font-size:9px;font-weight:600;pointer-events:none}.flow-sim-led-dome{fill:var(--sim-led-red);opacity:.85;stroke:var(--sim-diagram-ink);stroke-width:1.5}.flow-sim-led-rim{fill:var(--sim-led-red);stroke:var(--sim-diagram-ink);stroke-width:1.5}.flow-sim-battery{fill:var(--sim-battery)}.flow-sim-jumper{fill:none;stroke-width:5;stroke-linecap:round}.flow-sim-jumper-hit{fill:none;stroke:transparent;stroke-width:18;pointer-events:stroke}.flow-sim-hit:focus-visible .flow-sim-jumper{stroke-width:8}.flow-sim-badge{fill:var(--sim-diagram-paper);stroke:var(--sim-diagram-ink);stroke-width:1.5}.flow-sim-badge--wrong{stroke:var(--sim-led-red);stroke-width:3}.flow-sim-ghost{fill:none;stroke:var(--sim-diagram-muted);stroke-width:2;stroke-dasharray:4 5;opacity:.5}.flow-sim-wire--hot{stroke:var(--sim-led-red);stroke-width:6}.flow-sim-pot-body{fill:var(--sim-diagram-paper);stroke:var(--sim-pot);stroke-width:3}.flow-sim-track{fill:none;stroke-width:12;stroke-linecap:butt}.flow-sim-pot-lead{fill:none;stroke:var(--sim-leg);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.flow-sim-pot-lead--inner{stroke-dasharray:4 4}.flow-sim-wiper{stroke:var(--sim-diagram-ink);stroke-width:3;stroke-linecap:round}.flow-sim-wiper-tip{fill:var(--sim-diagram-ink)}.flow-sim-knob{fill:var(--sim-pot)}.flow-sim-knob-slot{fill:var(--sim-pot-rotor)}.flow-sim-fill--blue{fill:var(--sim-wire-blue)}.flow-sim-fill--orange{fill:var(--sim-wire-orange)}.flow-sim-outline{fill:none;stroke:var(--sim-diagram-ink);stroke-width:2}.flow-sim-probe-lead{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.flow-sim-arrow{fill:var(--sim-diagram-ink)}.flow-sim-floor{fill:var(--sim-field);stroke:var(--sim-diagram-muted);stroke-width:1}.flow-sim-floor-line{fill:var(--sim-field-line)}.flow-sim-beam{stroke:var(--sim-ir-glow);stroke-width:2;stroke-dasharray:3 3}.flow-sim-spot{fill:var(--sim-ir-glow);opacity:.4}.flow-sim-zone{fill:var(--sim-led-green);opacity:.18}.flow-sim-axis{stroke:var(--sim-diagram-ink);stroke-width:1.5}.flow-sim-ref{stroke:var(--primary);stroke-width:3}.flow-sim-ref-text{fill:var(--primary);font-family:var(--font-sans);font-size:12px;font-weight:700}.flow-sim-s{fill:var(--sim-field-line);stroke:var(--sim-diagram-paper);stroke-width:2}.flow-sim-s--white{fill:var(--sim-field);stroke:var(--sim-diagram-ink)}.flow-sim-wheel{fill:var(--sim-tire)}.flow-sim-wheel--on{fill:var(--sim-led-green)}.flow-sim-move{fill:none;stroke:var(--primary);stroke-width:5;stroke-linecap:round}.flow-sim-ray{fill:none;stroke:var(--sim-ir-glow);stroke-width:3;stroke-linecap:round;stroke-dasharray:5 4}.flow-sim-ambient{fill:none;stroke:var(--sim-led-yellow);stroke-linecap:round;stroke-dasharray:6 4}.flow-sim-shroud,.flow-sim-tcrt{fill:var(--sim-dark-plastic)}.flow-sim-ir-lens{fill:var(--sim-ir-lens);stroke:var(--sim-metal);stroke-width:1.5}.flow-sim-ir-detector{fill:var(--sim-ir-detector);stroke:var(--sim-metal);stroke-width:1.5}.flow-sim-ir-glow{fill:var(--sim-ir-glow);opacity:.75}.flow-sim-ir-led{fill:var(--sim-ir-lens);stroke:var(--sim-diagram-ink);stroke-width:2;stroke-linejoin:round}.flow-sim-tab,.flow-sim-pin{fill:var(--sim-metal)}.flow-sim-pin--on{fill:var(--primary)}.flow-sim-pin--hidden{fill:transparent;stroke:var(--sim-metal);stroke-width:2.5;stroke-dasharray:4 3}.flow-sim-pin--hidden.flow-sim-pin--on{stroke:var(--primary)}.flow-sim-wire--live{stroke:var(--sim-led-green)}.flow-sim-chipbox{fill:none;stroke:var(--sim-diagram-muted);stroke-width:1.5;stroke-dasharray:5 4}.flow-sim-pan{fill:var(--sim-metal);stroke:var(--sim-diagram-ink);stroke-width:1.5}.flow-sim-beam-bar{stroke:var(--sim-diagram-ink);stroke-width:6;stroke-linecap:round}.flow-sim-gauge{fill:none;stroke-width:14}.flow-sim-gauge--safe{stroke:var(--sim-led-green)}.flow-sim-gauge--danger{stroke:var(--sim-led-red);opacity:.8}.flow-sim-needle{stroke:var(--sim-diagram-ink);stroke-width:3;stroke-linecap:round}*,: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: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
 */*,: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}*,:before,:after{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent)}html{scroll-behavior:smooth;color-scheme:light dark}body{margin:0;min-height:100vh;overflow-x:hidden;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) calc(var(--tw-bg-opacity, 1) * 100%),transparent);font-family:var(--font-sans);font-size:16px;line-height:1.65;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{position:relative;z-index:1}.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}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-3{bottom:-.75rem}.-left-1{left:-.25rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-2{bottom:.5rem}.end-0{inset-inline-end:0px}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-3{right:.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-6{top:1.5rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[200\],.z-modal{z-index:200}.z-popover{z-index:300}.order-1{order:1}.order-2{order:2}.order-3{order:3}.col-span-2{grid-column:span 2 / span 2}.m-0{margin:0}.m-3{margin:.75rem}.m-auto{margin:auto}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-px{margin-bottom:-1px}.-mr-0\.5{margin-right:-.125rem}.-mr-1{margin-right:-.25rem}.-mt-0\.5{margin-top:-.125rem}.-mt-2{margin-top:-.5rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-7{margin-left:1.75rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-auto{margin-right:auto}.ms-auto{margin-inline-start:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-video{aspect-ratio:16 / 9}.\!size-5{width:1.25rem!important;height:1.25rem!important}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.h-0{height:0px}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[360px\]{height:360px}.h-\[70\%\]{height:70%}.h-\[calc\(100dvh-16rem\)\]{height:calc(100dvh - 16rem)}.h-\[min\(52vh\,28rem\)\]{height:min(52vh,28rem)}.h-\[min\(75vw\,62vh\)\]{height:min(75vw,62vh)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-28{max-height:7rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-56{max-height:14rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-72{max-height:18rem}.max-h-80{max-height:20rem}.max-h-\[28rem\]{max-height:28rem}.max-h-\[70dvh\]{max-height:70dvh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.max-h-\[min\(18rem\,var\(--radix-popover-content-available-height\)\)\]{max-height:min(18rem,var(--radix-popover-content-available-height))}.min-h-0{min-height:0px}.min-h-10{min-height:2.5rem}.min-h-11{min-height:2.75rem}.min-h-12{min-height:3rem}.min-h-14{min-height:3.5rem}.min-h-16{min-height:4rem}.min-h-24{min-height:6rem}.min-h-28{min-height:7rem}.min-h-56{min-height:14rem}.min-h-8{min-height:2rem}.min-h-9{min-height:2.25rem}.min-h-\[15rem\]{min-height:15rem}.min-h-\[2\.25rem\]{min-height:2.25rem}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[260px\]{min-height:260px}.min-h-\[280px\]{min-height:280px}.min-h-\[2lh\]{min-height:2lh}.min-h-\[3\.5rem\]{min-height:3.5rem}.min-h-\[4\.25rem\]{min-height:4.25rem}.min-h-\[44px\]{min-height:44px}.min-h-\[6rem\]{min-height:6rem}.min-h-\[8rem\]{min-height:8rem}.min-h-\[min\(78vh\,840px\)\]{min-height:min(78vh,840px)}.min-h-\[min\(80vh\,760px\)\]{min-height:min(80vh,760px)}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[38\%\]{width:38%}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-\[min\(100\%\,20rem\)\]{width:min(100%,20rem)}.w-\[min\(100vw\,var\(--sidebar-width\)\)\]{width:min(100vw,var(--sidebar-width))}.w-\[min\(85vw\,24rem\)\]{width:min(85vw,24rem)}.w-\[min\(85vw\,var\(--sidebar-width\)\)\]{width:min(85vw,var(--sidebar-width))}.w-\[var\(--bar-pct\)\]{width:var(--bar-pct)}.w-\[var\(--progress-pct\)\]{width:var(--progress-pct)}.w-\[var\(--radix-dropdown-menu-trigger-width\)\]{width:var(--radix-dropdown-menu-trigger-width)}.w-\[var\(--radix-popover-trigger-width\)\]{width:var(--radix-popover-trigger-width)}.w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-10{min-width:2.5rem}.min-w-40{min-width:10rem}.min-w-\[10\.5rem\]{min-width:10.5rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[140px\]{min-width:140px}.min-w-\[14rem\]{min-width:14rem}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.min-w-\[2\.25rem\]{min-width:2.25rem}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.min-w-\[3rem\]{min-width:3rem}.min-w-\[480px\]{min-width:480px}.min-w-\[5\.5rem\]{min-width:5.5rem}.min-w-\[520px\]{min-width:520px}.min-w-\[560px\]{min-width:560px}.min-w-\[6\.5rem\]{min-width:6.5rem}.min-w-\[640px\]{min-width:640px}.min-w-\[720px\]{min-width:720px}.min-w-full{min-width:100%}.max-w-0{max-width:0px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-\[18rem\]{max-width:18rem}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[5\.5rem\]{max-width:5.5rem}.max-w-\[7\.5rem\]{max-width:7.5rem}.max-w-\[70\%\]{max-width:70%}.max-w-\[8\.5rem\]{max-width:8.5rem}.max-w-\[8rem\]{max-width:8rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-prose{max-width:65ch}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.basis-32{flex-basis:8rem}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slideFadeIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.animate-slide-fwd{animation:slideFadeIn .35s ease both}@keyframes slideFadeInRev{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}.animate-slide-rev{animation:slideFadeInRev .35s ease both}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.scroll-mt-20{scroll-margin-top:5rem}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-0{row-gap:0px}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-divide-opacity, 1) * 100%),transparent)}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:calc(var(--radius) + 8px)}.rounded-\[6px\]{border-radius:6px}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-pill\)\]{border-radius:var(--radius-pill)}.rounded-\[var\(--radius-sm\)\]{border-radius:var(--radius-sm)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 6px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-b-\[2rem\]{border-bottom-right-radius:2rem;border-bottom-left-radius:2rem}.rounded-r-lg{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.rounded-tl-lg{border-top-left-radius:var(--radius)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-0{border-top-width:0px}.border-dashed{border-style:dashed}.border-border{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-border\/60{border-color:color-mix(in srgb,var(--border) 60%,transparent)}.border-border\/70{border-color:color-mix(in srgb,var(--border) 70%,transparent)}.border-card{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--card) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-ch-accent{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--ch-accent) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-ch1{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--color-ch1) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-ch2{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--color-ch2) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-ch3{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--color-ch3) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-ch4{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--color-ch4) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-danger{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--destructive) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-danger\/40{border-color:color-mix(in srgb,var(--destructive) 40%,transparent)}.border-destructive{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--destructive) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-destructive\/40{border-color:color-mix(in srgb,var(--destructive) 40%,transparent)}.border-input{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--input) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-primary{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--primary) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-primary\/30{border-color:color-mix(in srgb,var(--primary) 30%,transparent)}.border-primary\/35{border-color:color-mix(in srgb,var(--primary) 35%,transparent)}.border-primary\/60{border-color:color-mix(in srgb,var(--primary) 60%,transparent)}.border-success{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--success) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.border-success\/40{border-color:color-mix(in srgb,var(--success) 40%,transparent)}.border-success\/60{border-color:color-mix(in srgb,var(--success) 60%,transparent)}.border-transparent{border-color:transparent}.border-warning\/40{border-color:color-mix(in srgb,var(--warning) 40%,transparent)}.border-warning\/50{border-color:color-mix(in srgb,var(--warning) 50%,transparent)}.bg-background,.bg-bg{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-black\/45{background-color:#00000073}.bg-border{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--border) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-border\/70{background-color:color-mix(in srgb,var(--border) 70%,transparent)}.bg-card{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-card\/90{background-color:color-mix(in srgb,var(--card) 90%,transparent)}.bg-card\/95{background-color:color-mix(in srgb,var(--card) 95%,transparent)}.bg-ch-accent{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--ch-accent) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-ch-dim{background-color:var(--ch-dim)}.bg-ch1{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--color-ch1) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-ch1-dim{background-color:var(--color-ch1-dim)}.bg-ch2{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--color-ch2) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-ch2-dim{background-color:var(--color-ch2-dim)}.bg-ch3{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--color-ch3) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-ch3-dim{background-color:var(--color-ch3-dim)}.bg-ch4{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--color-ch4) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-ch4-dim{background-color:var(--color-ch4-dim)}.bg-danger\/10{background-color:color-mix(in srgb,var(--destructive) 10%,transparent)}.bg-destructive{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--destructive) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-destructive\/10{background-color:color-mix(in srgb,var(--destructive) 10%,transparent)}.bg-destructive\/5{background-color:color-mix(in srgb,var(--destructive) 5%,transparent)}.bg-foreground{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--foreground) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-muted{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-muted-foreground\/70{background-color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}.bg-muted\/50{background-color:color-mix(in srgb,var(--muted) 50%,transparent)}.bg-muted\/60{background-color:color-mix(in srgb,var(--muted) 60%,transparent)}.bg-overlay{background-color:var(--overlay-backdrop)}.bg-popover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--popover) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-primary{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-primary-dim{background-color:var(--color-primary-dim)}.bg-primary\/10{background-color:color-mix(in srgb,var(--primary) 10%,transparent)}.bg-primary\/5{background-color:color-mix(in srgb,var(--primary) 5%,transparent)}.bg-secondary{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--secondary) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-success{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--success) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-success\/10{background-color:color-mix(in srgb,var(--success) 10%,transparent)}.bg-success\/15{background-color:color-mix(in srgb,var(--success) 15%,transparent)}.bg-success\/5{background-color:color-mix(in srgb,var(--success) 5%,transparent)}.bg-surface{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-surface\/80{background-color:color-mix(in srgb,var(--card) 80%,transparent)}.bg-surface2{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-surface2\/40{background-color:color-mix(in srgb,var(--muted) 40%,transparent)}.bg-surface2\/50{background-color:color-mix(in srgb,var(--muted) 50%,transparent)}.bg-surface2\/60{background-color:color-mix(in srgb,var(--muted) 60%,transparent)}.bg-surface2\/80{background-color:color-mix(in srgb,var(--muted) 80%,transparent)}.bg-transparent{background-color:transparent}.bg-warning{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--warning) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.bg-warning\/10{background-color:color-mix(in srgb,var(--warning) 10%,transparent)}.bg-warning\/15{background-color:color-mix(in srgb,var(--warning) 15%,transparent)}.bg-warning\/20{background-color:color-mix(in srgb,var(--warning) 20%,transparent)}.bg-brand-gradient{background-image:var(--gradient-brand)}.fill-card{fill:color-mix(in srgb,var(--card) 100%,transparent)}.fill-muted-foreground{fill:color-mix(in srgb,var(--muted-foreground) 100%,transparent)}.fill-none{fill:none}.fill-primary{fill:color-mix(in srgb,var(--primary) 100%,transparent)}.fill-primary\/15{fill:color-mix(in srgb,var(--primary) 15%,transparent)}.fill-warning{fill:color-mix(in srgb,var(--warning) 100%,transparent)}.stroke-border{stroke:color-mix(in srgb,var(--border) 100%,transparent)}.stroke-primary{stroke:color-mix(in srgb,var(--primary) 100%,transparent)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pl-0{padding-left:0}.pl-3{padding-left:.75rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pl-9{padding-left:2.25rem}.pr-0{padding-right:0}.pr-11{padding-right:2.75rem}.pr-12{padding-right:3rem}.pr-2{padding-right:.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-10{padding-top:2.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-px{padding-top:1px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-slide{font-family:var(--font-slide)}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[0\.625rem\]{font-size:.625rem}.text-\[0\.6875rem\]{font-size:.6875rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[16px\]{font-size:16px}.text-\[22px\]{font-size:22px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-6{line-height:1.5rem}.leading-\[1\.65\]{line-height:1.65}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-background{--tw-text-opacity: 1;color:color-mix(in srgb,var(--background) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-border{--tw-text-opacity: 1;color:color-mix(in srgb,var(--border) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-card-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--card-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-ch-accent{--tw-text-opacity: 1;color:color-mix(in srgb,var(--ch-accent) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-ch1{--tw-text-opacity: 1;color:color-mix(in srgb,var(--color-ch1) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-ch2{--tw-text-opacity: 1;color:color-mix(in srgb,var(--color-ch2) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-ch3{--tw-text-opacity: 1;color:color-mix(in srgb,var(--color-ch3) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-ch4{--tw-text-opacity: 1;color:color-mix(in srgb,var(--color-ch4) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-danger,.text-destructive{--tw-text-opacity: 1;color:color-mix(in srgb,var(--destructive) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-destructive-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--destructive-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-foreground,.text-ink{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-ink-secondary{--tw-text-opacity: 1;color:color-mix(in srgb,var(--ink-secondary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-muted-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-muted-foreground\/40{color:color-mix(in srgb,var(--muted-foreground) 40%,transparent)}.text-muted-foreground\/70{color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}.text-popover-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--popover-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-primary{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-primary-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-primary\/80{color:color-mix(in srgb,var(--primary) 80%,transparent)}.text-secondary-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--secondary-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-success{--tw-text-opacity: 1;color:color-mix(in srgb,var(--success) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-success-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--success-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-warning{--tw-text-opacity: 1;color:color-mix(in srgb,var(--warning) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-warning-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--warning-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.decoration-muted-foreground\/60{text-decoration-color:color-mix(in srgb,var(--muted-foreground) 60%,transparent)}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-primary{accent-color:color-mix(in srgb,var(--primary) 100%,transparent)}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-card{--tw-shadow: var(--shadow-card);--tw-shadow-colored: var(--shadow-card);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-card-hover{--tw-shadow: var(--shadow-card-hover);--tw-shadow-colored: var(--shadow-card-hover);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-card{--tw-shadow-color: color-mix(in srgb, var(--card) 100% , transparent);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-border{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--border) calc(var(--tw-ring-opacity, 1) * 100%), transparent)}.ring-border\/40{--tw-ring-color: color-mix(in srgb, var(--border) 40% , transparent)}.ring-primary{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--primary) calc(var(--tw-ring-opacity, 1) * 100%), transparent)}.ring-primary\/30{--tw-ring-color: color-mix(in srgb, var(--primary) 30% , transparent)}.ring-ring{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--ring) calc(var(--tw-ring-opacity, 1) * 100%), transparent)}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-card{--tw-ring-offset-color: color-mix(in srgb, var(--card) 100% , transparent)}.blur{--tw-blur: blur(8px);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)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.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)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[height\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.duration-200{animation-duration:.2s}.duration-500{animation-duration:.5s}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\!running{animation-play-state:running!important}.running{animation-play-state:running}.\[start\:stop\]{start:stop}@media print{body{background:#fff}}.placeholder\:text-muted-foreground::-moz-placeholder{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.placeholder\:text-muted-foreground::placeholder{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.first\:pl-0:first-child{padding-left:0}.first\:pt-0:first-child{padding-top:0}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0px}.last\:pb-0:last-child{padding-bottom:0}.last\:pr-0:last-child{padding-right:0}.empty\:hidden:empty{display:none}.hover\:border-border-strong:hover{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border-strong) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.hover\:border-ch-accent\/50:hover{border-color:color-mix(in srgb,var(--ch-accent) 50%,transparent)}.hover\:border-ch-accent\/60:hover{border-color:color-mix(in srgb,var(--ch-accent) 60%,transparent)}.hover\:border-destructive\/40:hover{border-color:color-mix(in srgb,var(--destructive) 40%,transparent)}.hover\:border-primary:hover{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--primary) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.hover\:border-primary\/40:hover{border-color:color-mix(in srgb,var(--primary) 40%,transparent)}.hover\:border-primary\/50:hover{border-color:color-mix(in srgb,var(--primary) 50%,transparent)}.hover\:bg-accent:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.hover\:bg-card:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.hover\:bg-ch-accent\/90:hover{background-color:color-mix(in srgb,var(--ch-accent) 90%,transparent)}.hover\:bg-ch-dim:hover{background-color:var(--ch-dim)}.hover\:bg-destructive\/10:hover{background-color:color-mix(in srgb,var(--destructive) 10%,transparent)}.hover\:bg-destructive\/90:hover{background-color:color-mix(in srgb,var(--destructive) 90%,transparent)}.hover\:bg-muted\/40:hover{background-color:color-mix(in srgb,var(--muted) 40%,transparent)}.hover\:bg-primary-hover:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary-hover) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.hover\:bg-primary\/10:hover{background-color:color-mix(in srgb,var(--primary) 10%,transparent)}.hover\:bg-primary\/5:hover{background-color:color-mix(in srgb,var(--primary) 5%,transparent)}.hover\:bg-secondary\/70:hover{background-color:color-mix(in srgb,var(--secondary) 70%,transparent)}.hover\:bg-surface:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.hover\:bg-surface2:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.hover\:bg-transparent:hover{background-color:transparent}.hover\:text-accent-foreground:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--accent-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.hover\:text-ch-accent:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--ch-accent) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.hover\:text-destructive:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--destructive) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.hover\:text-foreground:hover,.hover\:text-ink:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.hover\:text-primary:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-card-hover:hover{--tw-shadow: var(--shadow-card-hover);--tw-shadow-colored: var(--shadow-card-hover);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:bg-accent:focus{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.focus\:bg-primary\/10:focus{background-color:color-mix(in srgb,var(--primary) 10%,transparent)}.focus\:text-accent-foreground:focus{--tw-text-opacity: 1;color:color-mix(in srgb,var(--accent-foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.focus\:text-primary:focus{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.focus-visible\:border-ring:focus-visible{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--ring) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.focus-visible\:bg-accent:focus-visible{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset: inset}.focus-visible\:ring-ring:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--ring) calc(var(--tw-ring-opacity, 1) * 100%), transparent)}.focus-visible\:ring-ring\/20:focus-visible{--tw-ring-color: color-mix(in srgb, var(--ring) 20% , transparent)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: color-mix(in srgb, var(--background) 100% , transparent)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-100:disabled{opacity:1}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group[open] .group-open\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-0\.5{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-ch-accent\/50{border-color:color-mix(in srgb,var(--ch-accent) 50%,transparent)}.group:hover .group-hover\:border-primary\/40{border-color:color-mix(in srgb,var(--primary) 40%,transparent)}.group:hover .group-hover\:text-ch-accent{--tw-text-opacity: 1;color:color-mix(in srgb,var(--ch-accent) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.group:hover .group-hover\:text-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.group:hover .group-hover\:text-primary{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.group:hover .group-hover\:shadow-card-hover{--tw-shadow: var(--shadow-card-hover);--tw-shadow-colored: var(--shadow-card-hover);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[state\=open\]\:border-ring[data-state=open]{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--ring) calc(var(--tw-border-opacity, 1) * 100%),transparent)}.data-\[state\=open\]\:bg-accent[data-state=open]{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) calc(var(--tw-bg-opacity, 1) * 100%),transparent)}.data-\[state\=checked\]\:font-medium[data-state=checked]{font-weight:500}.data-\[state\=checked\]\:text-primary[data-state=checked]{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) calc(var(--tw-text-opacity, 1) * 100%),transparent)}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:ring-2[data-state=open]{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.data-\[state\=open\]\:ring-ring\/20[data-state=open]{--tw-ring-color: color-mix(in srgb, var(--ring) 20% , transparent)}.data-\[state\=closed\]\:duration-200[data-state=closed]{transition-duration:.2s}.data-\[state\=open\]\:duration-300[data-state=open]{transition-duration:.3s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=closed\]\:duration-200[data-state=closed]{animation-duration:.2s}.data-\[state\=open\]\:duration-300[data-state=open]{animation-duration:.3s}@media (min-width: 640px){.sm\:col-span-1{grid-column:span 1 / span 1}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:h-12{height:3rem}.sm\:w-32{width:8rem}.sm\:w-44{width:11rem}.sm\:w-48{width:12rem}.sm\:w-56{width:14rem}.sm\:w-64{width:16rem}.sm\:w-80{width:20rem}.sm\:w-auto{width:auto}.sm\:w-fit{width:-moz-fit-content;width:fit-content}.sm\:min-w-\[12rem\]{min-width:12rem}.sm\:min-w-\[14rem\]{min-width:14rem}.sm\:min-w-\[8rem\]{min-width:8rem}.sm\:max-w-\[calc\(100\%-10rem\)\]{max-width:calc(100% - 10rem)}.sm\:max-w-xs{max-width:20rem}.sm\:flex-none{flex:none}.sm\:shrink-0{flex-shrink:0}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-cols-\[11rem_1fr\]{grid-template-columns:11rem 1fr}.sm\:grid-cols-\[3rem_minmax\(0\,1fr\)\]{grid-template-columns:3rem minmax(0,1fr)}.sm\:grid-cols-\[8rem_minmax\(0\,1fr\)\]{grid-template-columns:8rem minmax(0,1fr)}.sm\:grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.sm\:grid-cols-\[minmax\(0\,1fr\)_6rem\]{grid-template-columns:minmax(0,1fr) 6rem}.sm\:grid-cols-\[minmax\(0\,1fr\)_7rem\]{grid-template-columns:minmax(0,1fr) 7rem}.sm\:grid-cols-\[repeat\(auto-fill\,minmax\(7rem\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:gap-3{gap:.75rem}.sm\:gap-4{gap:1rem}.sm\:overflow-visible{overflow:visible}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-2\.5{padding-left:.625rem;padding-right:.625rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:pb-0{padding-bottom:0}.sm\:pl-10{padding-left:2.5rem}.sm\:pl-28{padding-left:7rem}.sm\:text-right{text-align:right}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.md\:sticky{position:sticky}.md\:-right-3{right:-.75rem}.md\:bottom-auto{bottom:auto}.md\:left-auto{left:auto}.md\:top-0{top:0}.md\:top-1\/2{top:50%}.md\:top-5{top:1.25rem}.md\:z-auto{z-index:auto}.md\:order-2{order:2}.md\:order-3{order:3}.md\:col-span-1{grid-column:span 1 / span 1}.md\:mx-5{margin-left:1.25rem;margin-right:1.25rem}.md\:mb-10{margin-bottom:2.5rem}.md\:mb-12{margin-bottom:3rem}.md\:mb-6{margin-bottom:1.5rem}.md\:mb-8{margin-bottom:2rem}.md\:mt-4{margin-top:1rem}.md\:mt-5{margin-top:1.25rem}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-14{height:3.5rem}.md\:h-28{height:7rem}.md\:h-32{height:8rem}.md\:h-6{height:1.5rem}.md\:h-8{height:2rem}.md\:h-9{height:2.25rem}.md\:h-\[calc\(100dvh-13rem\)\]{height:calc(100dvh - 13rem)}.md\:h-\[min\(62vh\,560px\)\]{height:min(62vh,560px)}.md\:min-h-9{min-height:2.25rem}.md\:min-h-\[340px\]{min-height:340px}.md\:w-40{width:10rem}.md\:w-6{width:1.5rem}.md\:w-60{width:15rem}.md\:w-72{width:18rem}.md\:w-auto{width:auto}.md\:min-w-0{min-width:0px}.md\:min-w-\[3\.5rem\]{min-width:3.5rem}.md\:min-w-\[8\.5rem\]{min-width:8.5rem}.md\:max-w-\[14rem\]{max-width:14rem}.md\:max-w-lg{max-width:32rem}.md\:-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[2fr_3fr\]{grid-template-columns:2fr 3fr}.md\:grid-cols-\[3fr_2fr\]{grid-template-columns:3fr 2fr}.md\:grid-cols-\[auto_minmax\(0\,1fr\)_auto\]{grid-template-columns:auto minmax(0,1fr) auto}.md\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,0\.95fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,.95fr)}.md\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,0\.9fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:items-start{align-items:flex-start}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-12{gap:3rem}.md\:gap-3{gap:.75rem}.md\:p-10{padding:2.5rem}.md\:p-12{padding:3rem}.md\:p-4{padding:1rem}.md\:p-5{padding:1.25rem}.md\:p-6{padding:1.5rem}.md\:p-7{padding:1.75rem}.md\:p-8{padding:2rem}.md\:px-2\.5{padding-left:.625rem;padding-right:.625rem}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.md\:pb-14{padding-bottom:3.5rem}.md\:pb-16{padding-bottom:4rem}.md\:pr-3{padding-right:.75rem}.md\:pr-5{padding-right:1.25rem}.md\:pt-0{padding-top:0}.md\:pt-12{padding-top:3rem}.md\:pt-6{padding-top:1.5rem}.md\:pt-8{padding-top:2rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-xs{font-size:.75rem;line-height:1rem}.md\:leading-relaxed{line-height:1.625}}@media (min-width: 1024px){.lg\:sticky{position:sticky}.lg\:top-3{top:.75rem}.lg\:top-4{top:1rem}.lg\:mx-8{margin-left:2rem;margin-right:2rem}.lg\:flex{display:flex}.lg\:max-h-\[calc\(100vh-7rem\)\]{max-height:calc(100vh - 7rem)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[1fr_1fr_auto\]{grid-template-columns:1fr 1fr auto}.lg\:grid-cols-\[2fr_1fr\]{grid-template-columns:2fr 1fr}.lg\:grid-cols-\[minmax\(0\,1fr\)_340px\]{grid-template-columns:minmax(0,1fr) 340px}.lg\:flex-row{flex-direction:row}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-16{gap:4rem}.lg\:self-start{align-self:flex-start}.lg\:overflow-y-auto{overflow-y:auto}.lg\:p-10{padding:2.5rem}.lg\:p-14{padding:3.5rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:pt-16{padding-top:4rem}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-\[2\.75rem\]{font-size:2.75rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}.lg\:leading-\[1\.12\]{line-height:1.12}.lg\:leading-tight{line-height:1.25}}.dark\:text-warning:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:color-mix(in srgb,var(--warning) calc(var(--tw-text-opacity, 1) * 100%),transparent)}@media print{.print\:block{display:block}.print\:hidden{display:none}.print\:min-h-\[2\.5rem\]{min-height:2.5rem}.print\:border-0{border-width:0px}}.\[\&\>\*\]\:h-full>*{height:100%}.\[\&\>\*\]\:min-h-0>*{min-height:0px}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:flex-1>*{flex:1 1 0%}.\[\&\>svg\]\:max-h-\[min\(44vh\,360px\)\]>svg{max-height:min(44vh,360px)}.\[\&\>svg\]\:min-h-\[120px\]>svg{min-height:120px}.\[\&\>svg\]\:min-h-\[140px\]>svg{min-height:140px}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-state=open] .\[\[data-state\=open\]_\&\]\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
