.select-trigger{transition:border-color var(--transition-hover)}.select-trigger:not(:disabled):not([data-open=true]):hover{border-color:var(--border-secondary)!important}.select-menu-item{transition:background-color var(--transition-hover)}.select-menu-item:not([data-selected=true]):hover{background-color:var(--bg-tab-hover)!important}.ui-menu-item{transition:background-color var(--transition-hover),color var(--transition-hover)}.ui-menu-item:not(:disabled):not([data-selected=true]):hover{background-color:var(--bg-button-hover)!important;color:var(--text-primary)!important}.ghost-btn{transition:background-color var(--transition-hover),color var(--transition-hover)}.ghost-btn:not(:disabled):hover{background-color:var(--bg-button-hover)!important;color:var(--text-primary)!important}.ghost-btn[data-destructive=true]:not(:disabled):hover{color:var(--destructive)!important}.universal-action-btn{transition:background-color var(--transition-hover)}.universal-action-btn:not(:disabled):hover{background-color:var(--bg-button-hover)!important}.primary-action-btn.btn-destructive-primary{background-color:var(--destructive)!important;color:var(--text-primary)!important}.primary-action-btn.btn-destructive-primary:before{display:none}.primary-action-btn.btn-destructive-primary:not(:disabled):hover{background-color:var(--destructive-hover)!important;box-shadow:none}.primary-action-btn.btn-destructive-primary:disabled{background-color:var(--destructive)!important;opacity:.5}.overlay-action-btn{background-color:var(--overlay-heavy);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-default),opacity var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.overlay-action-btn:hover{background-color:#ffffffe6!important;color:#000!important}.overlay-action-btn[data-destructive=true]:hover{background-color:#dc2626e6!important;color:#fff!important}.theme-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;border-radius:var(--radius-md);border:2px solid var(--border-primary);background-color:var(--bg-button);cursor:pointer;transition:all var(--duration-fast) var(--ease-default)}.theme-card:hover:not(.theme-card--selected){background-color:var(--bg-button-hover);border-color:var(--accent-primary)}.theme-card--selected{border-color:var(--accent-primary);background-color:var(--bg-button-active)}.session-dropdown-trigger{cursor:pointer}.session-thumbnail-picker-btn{width:32px;height:32px;background-color:var(--bg-button-hover);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px dashed var(--border-primary);overflow:hidden;cursor:pointer;padding:0;transition:border-color var(--duration-fast)}.session-thumbnail-picker-btn:hover{border-color:var(--accent-primary)}.ref-add-btn{width:60px;height:60px;border-radius:var(--radius-md);border:2px dashed var(--border-primary);background-color:transparent;cursor:pointer;font-size:var(--text-xl);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;transition:border-color var(--duration-fast),color var(--duration-fast)}.ref-add-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary)}.ref-add-btn:disabled{cursor:not-allowed}.popover-trigger{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-md);border:1px solid var(--border-primary);background-color:var(--bg-button);color:var(--text-secondary);font-size:var(--text-label);font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-default);white-space:nowrap}.popover-trigger:disabled{opacity:.5;cursor:not-allowed}.popover-trigger:not(:disabled):not(.popover-trigger--active):hover{background-color:var(--bg-button-hover);border-color:var(--border-secondary)}.popover-trigger--active{border-color:var(--accent-primary);background-color:var(--bg-button-active);color:var(--text-primary)}.popover-trigger--dropdown{border:none;background-color:transparent;padding:6px 8px;gap:4px}.popover-trigger--dropdown:not(:disabled):not(.popover-trigger--active):hover{background-color:var(--bg-button-hover);border:none}.popover-trigger--dropdown.popover-trigger--active{background-color:var(--bg-button-hover);border:none}.popover-trigger--small{padding:var(--space-xs) var(--space-sm);font-size:var(--text-caption);gap:2px}.ghost-btn--accent{color:var(--accent-primary)!important}.ghost-btn--accent:not(:disabled):hover{color:var(--accent-primary)!important}.ui-selectable-image-card{position:relative;aspect-ratio:1;border-radius:var(--radius-lg);overflow:hidden;border:2px solid transparent;padding:0;background-color:var(--bg-button);cursor:pointer;transition:border-color var(--duration-fast),transform var(--duration-fast)}.ui-selectable-image-card:hover:not(:disabled):not(.ui-selectable-image-card--selected){border-color:var(--accent-primary);transform:scale(1.03)}.ui-selectable-image-card--selected{border-color:var(--accent-primary)}.ui-selectable-image-card:disabled{cursor:not-allowed;opacity:.5}.segmented-btn{transition:background-color var(--transition-hover),color var(--transition-hover)}.segmented-btn:not(:disabled):not([data-selected=true]):hover{background-color:var(--bg-button-hover)!important}.dropdown-menu{position:absolute;background-color:var(--bg-panel-shell);backdrop-filter:var(--panel-backdrop);-webkit-backdrop-filter:var(--panel-backdrop);border:1px solid var(--border-primary);border-radius:var(--dropdown-menu-radius);box-shadow:var(--dropdown-menu-shadow);width:-moz-max-content;width:max-content;min-width:var(--dropdown-menu-min-width);max-width:var(--dropdown-menu-max-width);max-height:var(--dropdown-menu-max-height);overflow-y:auto;padding:var(--dropdown-menu-padding);z-index:100;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.dropdown-menu--compact{padding:var(--dropdown-compact-menu-padding);border-radius:var(--dropdown-compact-menu-radius);min-width:var(--dropdown-compact-menu-min-width);max-width:var(--dropdown-compact-menu-max-width);max-height:var(--dropdown-compact-menu-max-height);box-shadow:var(--dropdown-compact-menu-shadow)}.dropdown-item{width:100%;padding:var(--dropdown-item-padding);text-align:left;border:none;border-radius:var(--dropdown-item-radius);background-color:transparent;color:var(--text-secondary);font-size:var(--dropdown-item-font);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-default);outline:none;display:flex;align-items:center;justify-content:space-between;gap:var(--dropdown-item-gap);white-space:nowrap}.dropdown-item[data-selected=true]{background-color:var(--toolbar-button-active);color:var(--bg-panel)}.dropdown-item:not([data-selected=true]):hover{background-color:var(--bg-tab-hover);color:var(--text-primary)}.dropdown-secondary-text{font-size:var(--dropdown-secondary-size);color:var(--dropdown-secondary-color);font-weight:400;margin-left:var(--dropdown-secondary-spacing)}.dropdown-item:not([data-selected=true]):hover .dropdown-secondary-text{color:var(--text-secondary)}.dropdown-item[data-selected=true] .dropdown-secondary-text{color:inherit}.dropdown-item[data-selected=true] img{filter:brightness(0) invert(.15)}.dropdown-item--compact{padding:var(--dropdown-compact-item-padding);font-size:var(--dropdown-compact-item-font);border-radius:var(--dropdown-compact-item-radius);gap:var(--dropdown-compact-item-gap)}.dropdown-popover-content{padding:var(--space-sm);min-width:140px;width:-moz-max-content;width:max-content}.dropdown-popover-content--compact{padding:6px;min-width:120px;width:-moz-max-content;width:max-content}.dropdown-popover-header{font-size:var(--text-label);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-xs);padding:2px 4px;white-space:nowrap}.options-toggle-button{width:100%;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;border:none;border-radius:var(--radius-md);background-color:transparent;color:var(--text-secondary);font-size:var(--text-label);font-weight:500;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default);outline:none}.options-toggle-button:hover:not(:disabled){background-color:var(--bg-button-hover)}.options-toggle-button:disabled{background-color:transparent;color:var(--text-disabled);cursor:not-allowed;opacity:.6}.options-toggle-chevron{width:16px;height:16px;transition:transform var(--duration-normal) var(--ease-default);flex-shrink:0}.options-toggle-chevron[data-expanded=true]{transform:rotate(180deg)}.options-toggle-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.thumb-strip-wrapper{position:absolute;bottom:13px;left:50%;z-index:15;transition:width var(--duration-normal) var(--ease-out),transform var(--duration-moderate) var(--ease-standard),max-width var(--duration-moderate) var(--ease-standard),opacity var(--duration-normal) var(--ease-out),bottom var(--duration-normal) var(--ease-out)}.thumb-strip{background:var(--bg-panel-shell);backdrop-filter:var(--panel-backdrop);-webkit-backdrop-filter:var(--panel-backdrop);border:1px solid var(--border-primary);border-radius:8px;padding:6px;display:flex;align-items:center;box-shadow:0 2px 8px #0000004d;overflow-x:auto;scrollbar-width:none}.thumb-strip::-webkit-scrollbar{display:none}.thumb-strip-visible{opacity:1;bottom:13px}.thumb-strip-hidden{opacity:0;bottom:-13px;pointer-events:none}.thumb-scroll-arrow{position:absolute;top:0;bottom:0;width:36px;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;z-index:2;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-default)}.thumb-scroll-arrow.visible{opacity:1;pointer-events:auto}.thumb-scroll-arrow-left{left:0;border-radius:8px 0 0 8px;background:linear-gradient(to right,var(--bg-panel-shell) 40%,transparent);padding-left:4px}.thumb-scroll-arrow-right{right:0;border-radius:0 8px 8px 0;background:linear-gradient(to left,var(--bg-panel-shell) 40%,transparent);padding-right:4px}.thumb-scroll-arrow svg{color:var(--text-secondary);transition:color var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default)}.thumb-scroll-arrow:hover svg{color:var(--text-primary);transform:scale(1.15)}.thumb{flex-shrink:0;position:relative;width:48px;height:48px;margin-right:8px;transition:width var(--duration-moderate) var(--ease-standard),margin var(--duration-moderate) var(--ease-standard),opacity var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out)}.thumb:last-child{margin-right:0}.thumb.entering{animation:pop-in var(--duration-normal) var(--ease-out)}.thumb.exiting{width:0;margin-right:0;opacity:0;transform:scale(.8);overflow:hidden;pointer-events:none}@keyframes pop-in{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.thumb-img{width:100%;height:100%;border-radius:4px;overflow:hidden;cursor:grab;border:2px solid transparent;background:var(--bg-button-disabled);transition:border-color var(--duration-normal) var(--ease-default),opacity var(--duration-normal) var(--ease-default)}.thumb-img:hover{border-color:var(--border-secondary)}.thumb-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:filter var(--duration-normal) var(--ease-default)}.thumb-img:hover img{filter:brightness(1.15) saturate(1.1)}.thumb-checker{background:repeating-conic-gradient(#0f141f,#0f141f 25%,#20273a 0%,#20273a 50%) 50% / 8px 8px}.thumb-x{position:absolute;top:0;right:0;width:16px;height:16px;border:none;border-radius:0 4px;background:#000000bf;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity var(--duration-fast);padding:0;z-index:2}.thumb:hover .thumb-x{opacity:1}.thumb-x:hover{background:#000000f2}.thumb-processing-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:4px;background:#00000073;pointer-events:none;z-index:5;animation:thumbFadeIn var(--duration-normal) var(--ease-in)}@keyframes thumbFadeIn{0%{opacity:0}to{opacity:1}}@keyframes thumbSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.thumb-spinner{animation:thumbSpin 1s linear infinite;color:var(--accent-primary)}.thumb-ready-badge{position:absolute;top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:var(--accent-primary, #e040fb);border:1.5px solid var(--bg-panel);z-index:6;animation:thumbPopIn var(--duration-slow) var(--ease-out);pointer-events:none;box-shadow:0 0 6px #e040fb80}@keyframes thumbPopIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.prompt-image-strip{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md) 0;margin-bottom:calc(-1 * var(--space-xs));overflow-x:auto;scrollbar-width:none}.prompt-image-strip::-webkit-scrollbar{display:none}.prompt-image-strip__warning{flex-shrink:0;font-size:var(--text-caption);color:var(--status-warning);white-space:nowrap;padding:var(--space-xs)}.prompt-chip{position:relative;flex-shrink:0;width:36px;height:36px;border-radius:var(--radius-md);overflow:hidden;cursor:default;border:1.5px solid var(--border-primary);transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.prompt-chip:hover{border-color:var(--border-active)}.prompt-chip--reference{border-color:var(--accent-secondary)}.prompt-chip--reference:hover{border-color:var(--accent-secondary);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-secondary) 30%,transparent)}.prompt-chip--style{border-color:var(--accent-tertiary)}.prompt-chip--style:hover{border-color:var(--accent-tertiary);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-tertiary) 30%,transparent)}.prompt-chip--over-limit{border-color:var(--status-warning)!important;opacity:.6}.prompt-chip__image{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.prompt-chip__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-start;justify-content:flex-end;padding:2px}.prompt-chip__delete{width:16px;height:16px;border:none;border-radius:50%;background:var(--bg-app);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.prompt-chip__delete:hover{background:var(--status-error);color:var(--text-primary)}.prompt-chip__badge{position:absolute;bottom:1px;right:1px;width:16px;height:16px;border:none;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default)}.prompt-chip--reference .prompt-chip__badge{background:color-mix(in srgb,var(--accent-secondary) 80%,black 20%);color:#fff}.prompt-chip--style .prompt-chip__badge{background:color-mix(in srgb,var(--accent-tertiary) 80%,black 20%);color:#fff}.prompt-chip__badge--active{transform:scale(1.15)}.prompt-chip__badge:hover{transform:scale(1.2)}.prompt-bar__drop-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg-app) 85%,transparent);border-radius:var(--radius-lg);pointer-events:none;z-index:5}.prompt-bar__drop-hint span{font-size:var(--text-caption);color:var(--accent-primary);font-weight:500}html{font-size:18px}:root{--color-coral-500: #FF3D6E;--color-coral-400: #FF6A90;--color-amber-500: #F5B44C;--color-amber-400: #F7C96B;--color-amber-300: #F9D98C;--color-red-500: #FF4D4D;--color-orange-500: #FF8A4D;--color-cyan-500: #38E8D8;--color-violet-500: #8B7CFF;--color-green-500: #4ADE80;--color-neutral-950: #1A1721;--color-neutral-925: #0D1220;--color-neutral-900: #171C28;--color-neutral-850: #20273A;--color-neutral-800: #2B3350;--color-neutral-700: #3A4466;--color-neutral-600: #4A567F;--color-border-500: #2E3650;--color-border-400: #2A334D;--color-text-50: #FFFFFF;--color-text-100: #F8FAFF;--color-text-200: #D4DAE6;--color-text-300: #9EA6B8;--color-text-400: #7A8294;--color-overlay-60: rgba(8, 11, 18, .6);--color-overlay-90: rgba(8, 11, 18, .9);--canvas-scrim-height: 30%;--canvas-scrim-gradient: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .45));--canvas-scrim-transition: opacity var(--duration-normal) var(--ease-default);--color-preview-light-950: #FFFFFF;--color-preview-light-900: #F1F5F9;--color-preview-light-850: #E2E8F0;--duration-micro: 70ms;--duration-fast: .15s;--duration-normal: .2s;--duration-moderate: .25s;--duration-slow: .35s;--duration-slower: .45s;--ease-default: ease;--ease-out: ease-out;--ease-in: ease-in;--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-decelerate: cubic-bezier(0, 0, .2, 1);--ease-accelerate: cubic-bezier(.4, 0, 1, 1);--ease-spring: cubic-bezier(.16, 1, .3, 1);--transition-hover: var(--duration-fast) var(--ease-default);--transition-popup: var(--duration-fast) var(--ease-out);--transition-panel: var(--duration-moderate) var(--ease-standard);--font-ui: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", "Consolas", monospace;--font-display: "Arame", sans-serif;--rail-width: 48px;--panel-width: 300px;--panel-gap: 12px;--session-panel-width: 240px;--toolbar-height: 40px;--toolbar-inner-height: 28px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(var(--shadow-color), .2);--shadow-md: 0 4px 12px rgba(var(--shadow-color), .3);--shadow-lg: 0 8px 32px rgba(var(--shadow-color), .4);--shadow-pop: 0 4px 16px rgba(var(--shadow-color), .4);--overlay-light: rgba(0, 0, 0, .3);--overlay-medium: rgba(0, 0, 0, .5);--overlay-heavy: rgba(0, 0, 0, .8);--bg-app: var(--color-neutral-950);--bg-panel: var(--color-neutral-900);--bg-panel-shell: rgba(17, 20, 30, .7);--bg-panel-section: var(--color-neutral-850);--bg-panel-section-gradient: linear-gradient(180deg, color-mix(in srgb, var(--color-neutral-850) 100%, white 6%) 0%, var(--color-neutral-850) 100% );--bg-button: var(--color-neutral-850);--bg-button-hover: var(--color-neutral-800);--bg-button-hover-strong: var(--color-neutral-700);--bg-button-secondary: var(--color-neutral-800);--bg-button-secondary-hover: var(--color-neutral-700);--bg-button-active: var(--color-coral-500);--bg-button-disabled: var(--color-neutral-900);--bg-input: var(--color-neutral-850);--bg-input-disabled: var(--color-neutral-900);--bg-tab: var(--color-neutral-900);--bg-tab-active: var(--color-neutral-850);--bg-tab-hover: var(--color-neutral-850);--primary-action-bg: var(--color-text-100);--primary-action-bg-hover: var(--color-text-200);--primary-action-bg-accent: var(--accent-primary);--primary-action-text: var(--color-neutral-950);--primary-action-text-hover: var(--color-neutral-950);--primary-action-text-accent: #fff;--primary-action-glow: rgba(255, 61, 110, .35);--primary-action-disabled: var(--slider-track);--primary-action-text-disabled: var(--bg-canvas-display);--border-primary: var(--color-border-500);--border-secondary: var(--color-border-400);--border-input: var(--color-border-500);--text-primary: var(--color-text-100);--text-secondary: var(--color-text-200);--text-tertiary: var(--color-text-300);--text-muted: var(--color-text-300);--text-disabled: var(--color-text-400);--text-placeholder: var(--color-text-400);--label-param-color: var(--text-muted);--label-param-weight: 600;--module-header-icon: var(--color-text-400);--label-subsection-color: var(--text-secondary);--label-subsection-divider: var(--border-primary);--text-heading: 1rem;--text-lg: 1.125rem;--text-xl: 1.5rem;--text-body: .875rem;--text-sm: .8125rem;--text-label: .75rem;--text-caption: .6875rem;--dropdown-secondary-size: .85em;--dropdown-secondary-color: var(--text-muted);--dropdown-secondary-spacing: 8px;--dropdown-menu-padding: var(--space-xs);--dropdown-menu-radius: var(--radius-md);--dropdown-menu-min-width: 160px;--dropdown-menu-max-width: 320px;--dropdown-menu-max-height: 300px;--dropdown-menu-shadow: var(--shadow-md);--dropdown-item-padding: 6px 10px;--dropdown-item-font: var(--text-body);--dropdown-item-radius: var(--radius-md);--dropdown-item-gap: var(--space-sm);--dropdown-compact-menu-padding: 3px;--dropdown-compact-menu-radius: var(--radius-md);--dropdown-compact-menu-min-width: 120px;--dropdown-compact-menu-max-width: 280px;--dropdown-compact-menu-max-height: 260px;--dropdown-compact-menu-shadow: 0 4px 16px rgba(var(--shadow-color), .4);--dropdown-compact-item-padding: 4px 8px;--dropdown-compact-item-font: var(--text-caption);--dropdown-compact-item-radius: var(--radius-sm);--dropdown-compact-item-gap: var(--space-md);--accent-primary: var(--color-coral-500);--accent-primary-hover: var(--color-coral-400);--accent-secondary: var(--color-cyan-500);--accent-tertiary: var(--color-violet-500);--accent-success: var(--color-green-500);--slider-track: var(--color-neutral-600);--slider-track-active: var(--color-coral-500);--slider-thumb-bg: var(--bg-panel);--slider-thumb-border: var(--color-text-200);--slider-thumb-border-hover: var(--color-text-50);--slider-thumb-glow: rgba(255, 255, 255, .15);--scrollbar-track: var(--color-neutral-900);--scrollbar-thumb: var(--color-neutral-700);--scrollbar-thumb-hover: var(--color-neutral-600);--overlay-dim: var(--color-overlay-60);--overlay-dark: var(--color-overlay-90);--destructive: var(--color-coral-500);--destructive-hover: var(--color-coral-400);--canvas-grid: var(--color-neutral-925);--bg-canvas-display: var(--canvas-grid);--divider: var(--color-border-500);--toggle-thumb-on: var(--color-text-50);--toggle-thumb-off: var(--color-neutral-700);--shadow-color: 0, 0, 0;--shadow-accent: 255, 61, 110;--panel-backdrop: blur(24px) saturate(180%);--theme-preview-system-bg: linear-gradient(135deg, var(--color-neutral-900) 50%, var(--color-preview-light-900) 50%);--theme-preview-dark-bg: var(--color-neutral-900);--theme-preview-light-bg: var(--color-preview-light-900);--theme-preview-dark-glass-bg: linear-gradient(135deg, rgba(var(--shadow-color), .35), rgba(var(--shadow-color), .1)), var(--color-neutral-900);--theme-preview-dark-luxe-bg: linear-gradient(135deg, var(--color-neutral-950), var(--color-neutral-900));--theme-preview-accent: var(--accent-primary);--theme-preview-dark-luxe-accent: var(--color-coral-500);--selection-highlight: 0, 229, 255;--selection-border: rgba(0, 229, 255, .8);--selection-bg: rgba(0, 229, 255, .15);--selection-glow: rgba(0, 229, 255, .5);--bg-canvas-placeholder: #0A0E14;--shimmer-highlight: rgba(255, 255, 255, .06);--shimmer-pulse: rgba(255, 255, 255, .03);--pill-bg: rgba(0, 0, 0, .4);--toolbar-button-active: var(--color-text-200)}[data-theme=light]{--color-neutral-950: #FFFFFF;--color-neutral-925: #F8FAFC;--color-neutral-900: #F1F5F9;--color-neutral-850: #E2E8F0;--color-neutral-800: #CBD5E1;--color-neutral-700: #94A3B8;--color-neutral-600: #64748B;--color-border-500: #CBD5E1;--color-border-400: #E2E8F0;--color-text-50: #0F172A;--color-text-100: #1E293B;--color-text-200: #334155;--color-text-300: #64748B;--color-text-400: #94A3B8;--color-overlay-60: rgba(255, 255, 255, .6);--color-overlay-90: rgba(255, 255, 255, .9);--toggle-thumb-on: #FFFFFF;--toggle-thumb-off: var(--color-neutral-600);--shadow-color: 0, 0, 0;--canvas-grid: #E2E8F0;--bg-canvas-display: var(--canvas-grid);--bg-canvas-placeholder: #E2E8F0;--shimmer-highlight: rgba(0, 0, 0, .04);--shimmer-pulse: rgba(0, 0, 0, .03);--pill-bg: rgba(0, 0, 0, .12);--toolbar-button-active: #1E293B}[data-theme=dark-glass]{--color-neutral-900: rgba(23, 28, 40, .75);--color-neutral-850: rgba(32, 39, 58, .8);--color-neutral-800: rgba(43, 51, 80, .85);--bg-panel-shell: rgba(23, 28, 40, .75);--panel-backdrop: blur(24px) saturate(180%);--color-border-500: rgba(46, 54, 80, .8);--color-border-400: rgba(42, 51, 77, .7)}[data-theme=dark-luxe]{--color-neutral-950: #0B0B0D;--color-neutral-925: #121214;--color-neutral-900: #1A1A1E;--color-neutral-850: #222228;--color-neutral-800: #2A2A32;--color-neutral-700: #34343F;--color-neutral-600: #444450;--color-border-500: #2B2B33;--color-border-400: #23232A;--color-text-50: #F5F5F7;--color-text-100: #E8E8EC;--color-text-200: #CDCDD6;--color-text-300: #9A9AA6;--color-text-400: #76767F;--color-coral-500: #FF3D6E;--color-coral-400: #FF6A90;--shadow-accent: 255, 61, 110;--selection-highlight: 255, 61, 110;--selection-border: rgba(255, 61, 110, .85);--selection-bg: rgba(255, 61, 110, .16);--selection-glow: rgba(255, 61, 110, .45);--panel-backdrop: blur(24px) saturate(180%);--bg-panel-shell: rgba(18, 18, 20, .78);--bg-canvas-placeholder: #121216;--shimmer-highlight: rgba(255, 255, 255, .06);--shimmer-pulse: rgba(0, 0, 0, .04);--pill-bg: rgba(0, 0, 0, .45);--primary-action-bg: var(--color-text-100);--primary-action-bg-hover: var(--color-text-200);--primary-action-text: var(--color-neutral-950);--primary-action-text-hover: var(--color-neutral-950);--primary-action-disabled: var(--color-neutral-800);--primary-action-text-disabled: var(--color-text-400)}.canvas-panel{background-color:var(--bg-panel-shell);backdrop-filter:var(--panel-backdrop);-webkit-backdrop-filter:var(--panel-backdrop);border:1px solid var(--border-primary);border-radius:var(--radius-lg);backface-visibility:hidden;height:var(--toolbar-height);padding:0 var(--space-md);display:flex;align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-sm);font-size:var(--text-label)}.canvas-panel-container{background-color:var(--bg-panel-shell);backdrop-filter:var(--panel-backdrop);-webkit-backdrop-filter:var(--panel-backdrop);border:1px solid var(--border-primary);border-radius:var(--radius-lg);backface-visibility:hidden;height:var(--toolbar-height);padding:0 var(--space-xs);display:flex;align-items:center;gap:var(--space-xs);overflow:hidden;box-shadow:var(--shadow-sm);font-size:var(--text-label)}[data-canvas-animating=true] .canvas-panel,[data-canvas-animating=true] .canvas-panel-container,[data-canvas-animating=true] .floating-generate-panel>div,[data-canvas-animating=true] .thumb-strip{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.canvas-panel,.canvas-panel-container,.floating-generate-panel>div,.thumb-strip{transition:background-color var(--duration-fast) var(--ease-default),backdrop-filter var(--duration-fast) var(--ease-out)}button.canvas-panel:not(:disabled):hover,button.canvas-panel-container:not(:disabled):hover{background-color:var(--bg-button-hover)}[data-canvas-animating=true] .tile-hover-overlay{opacity:0;pointer-events:none}.tile-hover-overlay{transition:opacity var(--duration-fast) var(--ease-out)}[data-toolbar-tier=compact] .toolbar-full-only,[data-toolbar-tier=minimal] .toolbar-full-only,[data-toolbar-tier=minimal] .toolbar-compact-hide{display:none!important}.canvas-panel-button{height:calc(var(--toolbar-height) - var(--space-sm));width:36px;padding:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);background:transparent;cursor:pointer;color:var(--text-tertiary);transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.canvas-panel-button.active{background-color:var(--bg-button-hover);color:var(--text-primary)}.canvas-panel-button:not(.active):hover{background-color:#ffffff0f;color:var(--text-secondary)}.canvas-panel-inner{height:var(--toolbar-inner-height);padding:0 var(--space-sm);display:flex;align-items:center;gap:var(--space-xs);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.canvas-panel-inner:not(:disabled):not([data-active=true]):hover{background-color:var(--bg-button-hover)}.canvas-panel-inner:disabled{color:var(--text-disabled);cursor:not-allowed;opacity:.5}.image-info-button{position:fixed;bottom:var(--space-lg);left:var(--space-lg);z-index:10;display:flex;align-items:center;height:var(--rail-width);padding:0;background-color:var(--bg-panel-shell);backdrop-filter:var(--panel-backdrop);-webkit-backdrop-filter:var(--panel-backdrop);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:default;overflow:hidden;transition:backdrop-filter var(--duration-fast) var(--ease-out)}[data-canvas-animating=true] .image-info-button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.image-info-icon{display:flex;align-items:center;justify-content:center;width:var(--rail-width);min-width:var(--rail-width);height:var(--rail-width);color:var(--text-muted);flex-shrink:0}.image-info-details{display:flex;flex-direction:column;gap:2px;max-width:0;opacity:0;overflow:hidden;white-space:nowrap;padding-right:0;font-size:var(--text-label);transition:max-width var(--duration-normal) var(--ease-out),opacity var(--duration-fast) var(--ease-out),padding-right var(--duration-normal) var(--ease-out)}.image-info-button:hover .image-info-details{max-width:280px;opacity:1;padding-right:var(--space-md);transition:max-width var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out) 60ms,padding-right var(--duration-normal) var(--ease-out)}.image-info-name{color:var(--text-secondary);font-weight:500;max-width:240px}.image-info-resolution{color:var(--text-muted);font-size:var(--text-caption)}.canvas-group-boundary{border:2px dashed var(--border-secondary);border-radius:var(--radius-lg);background:rgba(var(--accent-primary-rgb, 139, 92, 246),.03);transition:border-color var(--duration-normal) var(--ease-default),background-color var(--duration-normal) var(--ease-default),transform var(--duration-fast) var(--ease-default)}.canvas-group-boundary:hover{border-color:var(--border-primary);background:rgba(var(--accent-primary-rgb, 139, 92, 246),.05)}.canvas-group-boundary.drag-over{border-color:var(--accent-primary);background:rgba(var(--accent-primary-rgb, 139, 92, 246),.12);transform:scale(1.01)}.param-label{display:block;font-size:var(--text-label);font-weight:var(--label-param-weight);color:var(--label-param-color);margin-bottom:var(--space-sm)}.param-required{color:var(--accent-primary);margin-left:2px}.param-label-flex{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-label);font-weight:var(--label-param-weight);color:var(--label-param-color);margin-bottom:var(--space-sm)}.module-content{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-sm) var(--space-md)}.subsection-heading{font-size:var(--text-label);color:var(--label-subsection-color);font-weight:600;margin-bottom:var(--space-sm);margin-top:var(--space-sm)}.subsection-divider{border:none;border-top:1px solid var(--label-subsection-divider);margin-top:var(--space-md);margin-bottom:var(--space-md)}.select-dropdown-enter{animation:slideDownFade var(--duration-fast) var(--ease-out)}.select-scrollbar::-webkit-scrollbar{width:6px}.select-scrollbar::-webkit-scrollbar-track{background:transparent}.select-scrollbar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.select-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-button{display:none!important;height:0!important;width:0!important}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.module-input{width:100%;box-sizing:border-box;background-color:var(--bg-panel);border:1px solid var(--border-input);color:var(--text-primary);font-size:var(--text-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);outline:none;transition:border-color var(--duration-fast) var(--ease-default)}.module-input:focus{border-color:var(--border-secondary)}.module-input:disabled{opacity:.5;cursor:not-allowed}.resizable-textarea{resize:vertical;display:block;width:100%;box-sizing:border-box;background-color:var(--bg-panel);border:1px solid var(--border-input);color:var(--text-primary);font-size:var(--text-sm);padding:6px 10px;border-radius:var(--radius-md);outline:none;transition:border-color var(--duration-fast) var(--ease-default)}.resizable-textarea:focus{border-color:var(--border-primary)}.resizable-textarea::-moz-placeholder{color:var(--text-placeholder)}.resizable-textarea::placeholder{color:var(--text-placeholder)}.resizable-textarea:disabled{opacity:.5;cursor:not-allowed;resize:none}.resizable-textarea::-webkit-resizer{background:linear-gradient(135deg,transparent 50%,var(--scrollbar-thumb) 50%,var(--scrollbar-thumb) 60%,transparent 60%),linear-gradient(135deg,transparent 65%,var(--scrollbar-thumb) 65%,var(--scrollbar-thumb) 75%,transparent 75%),linear-gradient(135deg,transparent 80%,var(--scrollbar-thumb) 80%,var(--scrollbar-thumb) 90%,transparent 90%);background-color:var(--bg-panel);cursor:ns-resize}.resizable-textarea::-webkit-scrollbar{width:6px}.resizable-textarea::-webkit-scrollbar-button{display:none!important;height:0!important;width:0!important}.resizable-textarea::-webkit-scrollbar-track{background:transparent}.resizable-textarea::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.resizable-textarea::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.resizable-textarea{scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin}@keyframes gradient-flow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.primary-action-btn{position:relative;overflow:hidden;z-index:0;width:100%;padding:var(--space-sm) 14px;border-radius:var(--radius-md);font-size:var(--text-label);font-weight:500;border:none;cursor:pointer;outline:none;background:var(--primary-action-bg);color:var(--primary-action-text);transition:color .25s ease,box-shadow .25s ease}.primary-action-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--primary-action-bg-accent);transform:scaleX(0);transform-origin:center;transition:transform .28s cubic-bezier(.22,1,.36,1)}.primary-action-btn-content{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.primary-action-btn:hover:not(:disabled){color:var(--primary-action-text-accent);box-shadow:0 0 12px 2px var(--primary-action-glow)}.primary-action-btn:hover:not(:disabled):before{transform:scaleX(1)}.primary-action-btn:not(:hover):before{transition:transform .35s ease-in-out}.primary-action-btn:disabled{cursor:not-allowed;background:var(--primary-action-disabled);color:var(--primary-action-text-disabled)}.primary-action-btn.btn-compact{display:inline-flex;align-items:center;justify-content:center;width:auto;font-size:var(--text-label);padding:var(--space-sm) var(--space-md)}.primary-action-btn.btn-small{display:inline-flex;align-items:center;justify-content:center;width:auto;font-size:var(--text-caption);padding:var(--space-xs) var(--space-sm)}.gradient-panel-border{position:relative;border-radius:var(--radius-lg);background:var(--bg-panel)}input[type=text]::-moz-placeholder,input[type=number]::-moz-placeholder,textarea::-moz-placeholder{color:var(--text-disabled);opacity:1}input[type=text]::placeholder,input[type=number]::placeholder,textarea::placeholder{color:var(--text-disabled);opacity:1}.mode-toggle-btn{display:flex;align-items:center;gap:var(--space-xs);padding:4px 10px;height:28px;border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-button);color:var(--text-secondary);font-size:var(--text-caption);font-family:inherit;cursor:pointer;white-space:nowrap;transition:color .15s ease,background-color .15s ease,border-color .15s ease}.mode-toggle-btn:hover{color:var(--text-primary);background:var(--bg-button-hover);border-color:var(--border-secondary)}.mode-crossfade{position:relative;interpolate-size:allow-keywords;transition:opacity .18s cubic-bezier(.4,0,.2,1),transform .18s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(0,0,.2,1),height .3s cubic-bezier(0,0,.2,1);opacity:1;transform:translateY(0)}.mode-crossfade--fading{opacity:0;transform:translateY(4px)}.gradient-panel-border:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);padding:1.5px;background:linear-gradient(90deg,var(--color-coral-500),var(--color-red-500),var(--color-orange-500),var(--color-coral-500));background-size:300% 100%;animation:gradient-flow 4s ease infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.375rem .625rem;border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-label);font-weight:500;line-height:1;cursor:pointer;transition:all var(--duration-fast) var(--ease-default);outline:none;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:var(--accent-primary);color:var(--text-primary);border-color:var(--accent-primary);box-shadow:0 1px 2px #0003}.btn-primary:hover:not(:disabled){background-color:var(--accent-primary-hover);border-color:var(--accent-primary-hover);box-shadow:0 2px 4px #00000040}.btn-primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 2px #0003}.btn-secondary{background-color:var(--bg-button-hover)!important;color:var(--text-primary)!important;border-color:transparent!important}.btn-secondary:hover:not(:disabled){background-color:var(--bg-button-hover-strong)!important;color:var(--text-primary)!important}.btn-secondary:active:not(:disabled){transform:translateY(1px)}.btn-ghost{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--bg-button);color:var(--text-primary);border-color:var(--border-primary)}.btn-ghost:active:not(:disabled){transform:translateY(1px)}.btn-active{background-color:var(--bg-button-active);color:var(--text-primary);border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary) inset}.btn-active:hover:not(:disabled){background-color:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 2px 4px rgba(var(--shadow-accent),.3)}.btn-destructive{background-color:transparent;color:var(--destructive);border-color:var(--destructive)}.btn-destructive:hover:not(:disabled){background-color:var(--destructive);color:var(--text-primary);box-shadow:0 2px 4px rgba(var(--shadow-accent),.3)}.btn-destructive:active:not(:disabled){transform:translateY(1px)}.btn-xs{padding:.1875rem .375rem;font-size:var(--text-label)}.btn-sm{padding:.25rem .5rem;font-size:var(--text-label)}.btn-lg{padding:.5rem .875rem;font-size:var(--text-heading)}.btn-full{width:100%}.btn-icon{padding:.5rem;aspect-ratio:1}.btn-disabled{background-color:var(--bg-button-disabled);color:var(--text-disabled);border-color:var(--bg-button-disabled);cursor:not-allowed;box-shadow:none}.btn-loading{position:relative;color:transparent;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:1rem;height:1rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;color:var(--text-primary)}.btn-select-action:hover{background-color:var(--accent-primary);color:var(--text-primary);border-color:var(--accent-primary);box-shadow:0 2px 4px #00000040}.btn-select-action:active{transform:translateY(1px);box-shadow:0 1px 2px #0003}.btn-delete-action:hover{background-color:var(--destructive);color:var(--text-primary);box-shadow:0 2px 4px rgba(var(--shadow-accent),.3)}.btn-delete-action:active{transform:translateY(1px)}.btn-export-action:hover{background-color:var(--bg-button);color:var(--text-primary);border-color:var(--border-primary)}.btn-export-action:active{transform:translateY(1px)}.btn-tool-action{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:6px 10px;border:none;border-radius:var(--radius-md);font-size:var(--text-label);font-weight:500;background-color:var(--bg-button-hover);color:var(--text-secondary);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default);outline:none;white-space:nowrap}.btn-tool-action:hover:not(:disabled):not(.is-active){background-color:var(--bg-button-hover-strong)}.btn-tool-action:disabled{background-color:var(--bg-button-disabled);color:var(--text-disabled);cursor:not-allowed}.btn-tool-action.is-active{background-color:var(--bg-button-active);color:var(--text-primary)}.btn-tool-action.is-flash{background-color:var(--bg-button-active);color:var(--text-primary);transition:none}.btn-tool-action.is-icon-only{width:var(--toolbar-inner-height);height:var(--toolbar-inner-height);padding:0}.btn-tool-action.btn-compact{font-size:var(--text-label);padding:var(--space-sm) var(--space-md)}.btn-tool-action.btn-small{font-size:var(--text-caption);padding:var(--space-xs) var(--space-sm)}.btn-tool-action.btn-accent{background-color:var(--bg-button);color:var(--accent-primary);border:1px solid var(--border-primary)}.btn-tool-action.btn-accent:hover:not(:disabled):not(.is-active){background-color:var(--bg-button-hover)}.btn-tool-action.btn-accent:disabled{color:var(--text-disabled);background-color:var(--bg-button)}.btn-tool-action.btn-accent.is-active{background-color:var(--bg-button-active)}.btn-tool-action-row{display:flex;gap:var(--space-xs)}.btn-tool-action-row>.btn-tool-action{flex:1;padding:var(--space-xs) 6px;font-size:var(--text-label)}.canvas-toolbar-shell{display:flex;flex-direction:row;align-items:stretch;background-color:var(--bg-panel-shell);backdrop-filter:var(--panel-backdrop);-webkit-backdrop-filter:var(--panel-backdrop);border-radius:var(--radius-md);border:1px solid var(--border-primary);box-shadow:0 2px 8px #0000004d;overflow:hidden;transition:width var(--duration-normal) var(--ease-standard)}.canvas-toolbar-icons{display:flex;flex-direction:column;align-items:center;padding:var(--space-sm);gap:var(--space-sm);flex-shrink:0;box-sizing:border-box}.canvas-toolbar-item{position:relative}.canvas-toolbar-options-wrapper{overflow:hidden;border-left:none;transition:width var(--duration-normal) var(--ease-standard),min-width var(--duration-normal) var(--ease-standard),border-left var(--duration-normal) var(--ease-default);box-sizing:border-box}.canvas-toolbar-options-wrapper.is-expanded{border-left:1px solid var(--border-primary)}.btn-toolbar-icon{width:calc(var(--rail-width) - 2 * var(--space-sm));height:calc(var(--rail-width) - 2 * var(--space-sm));padding:0;display:flex;align-items:center;justify-content:center;background-color:transparent;color:var(--text-secondary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .15s cubic-bezier(.4,0,.2,1);outline:none}.btn-toolbar-icon:hover:not(:disabled){background-color:var(--bg-button-hover)}.btn-toolbar-icon.is-active{background-color:var(--toolbar-button-active);color:var(--bg-panel)}.btn-toolbar-icon.is-active:hover{background-color:var(--toolbar-button-active)}.btn-toolbar-badge{position:absolute;top:-4px;right:-4px;width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:none;background-color:var(--accent-primary);color:var(--bg-panel);cursor:pointer;padding:0;font-size:var(--text-caption);font-weight:700;line-height:1;z-index:1}.toolbar-layer-separator{width:100%;height:1px;background:var(--border-secondary);margin:var(--space-xs) 0}.tool-options-panel{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md);width:100%;box-sizing:border-box}.tool-options-header{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-label);font-weight:600;color:var(--text-primary)}.tool-hint{font-size:var(--text-caption);color:var(--text-muted);line-height:1.3}@property --pulse-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in-scale{animation:fadeInScale var(--duration-normal) var(--ease-out)}@keyframes fadeOutScale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.animate-fade-out-scale{animation:fadeOutScale var(--duration-fast) var(--ease-in) forwards}@keyframes editCanvasEntrance{0%{transform:translate(-50%,-50%) scale(.8)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-out)}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down-fade{animation:slideDownFade var(--duration-fast) var(--ease-out)}@keyframes slideUpFade{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.animate-slide-up-fade{animation:slideUpFade var(--duration-fast) var(--ease-in) forwards}@keyframes slideInDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.animate-slide-in-down{animation:slideInDown var(--duration-moderate) var(--ease-out)}@keyframes slideInFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in-fade{animation:slideInFade var(--duration-normal) var(--ease-out)}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-dropdown{animation:dropdownSlideIn var(--duration-fast) var(--ease-out);transform-origin:top right}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin .6s linear infinite}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulseSubtle{0%,to{opacity:.3;transform:translateY(-50%) scaleX(1)}50%{opacity:.8;transform:translateY(-50%) scaleX(1.5)}}.animate-pulse-subtle{animation:pulseSubtle 2s ease-in-out infinite}@keyframes placeholderEnter{0%{height:var(--target-height, 250px)}to{height:var(--target-height, 250px)}}.placeholder-entry{animation:placeholderEnter .01s linear both;contain:layout style}.placeholder-entry.placeholder-instant{animation-duration:.01s;animation-timing-function:linear}@keyframes imageDelete{0%{opacity:1;transform:scale(1) translateZ(0)}to{opacity:0;transform:scale(.92) translateZ(0)}}.grid-image-deleting{animation:imageDelete var(--duration-moderate) var(--ease-standard) forwards;pointer-events:none;will-change:opacity,transform}.grid-image-item{contain:layout style;backface-visibility:hidden}.infinite-canvas .grid-image-item{backface-visibility:visible}@keyframes placeholderContentEnter{0%{opacity:0}to{opacity:1}}.animate-placeholder-content{animation:placeholderContentEnter var(--duration-moderate) var(--ease-out) both}@keyframes shimmerSweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes shimmerPulse{0%,to{opacity:0}50%{opacity:1}}@keyframes iconBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes pillFadeUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.shimmer-loading{position:relative;overflow:hidden;background:var(--bg-canvas-placeholder)}.shimmer-loading:before{content:"";position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(ellipse at center,var(--shimmer-pulse) 0%,transparent 70%);animation:shimmerPulse 3s ease-in-out infinite;pointer-events:none}.shimmer-loading:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 25%,var(--shimmer-highlight) 50%,transparent 75%);animation:shimmerSweep 2s cubic-bezier(.4,0,.2,1) infinite;will-change:transform}.shimmer-model-icon{width:24px;height:24px;opacity:.3;position:relative;z-index:1;pointer-events:none;-o-object-fit:contain;object-fit:contain;animation:iconBreathe 2.5s ease-in-out infinite;backface-visibility:hidden}.shimmer-status-pill{position:relative;z-index:1;margin-top:var(--space-lg);padding:var(--space-xs) var(--space-md);background:var(--pill-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-full);font-size:var(--text-caption);color:var(--text-tertiary);opacity:.4;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;pointer-events:none;animation:pillFadeUp .4s var(--ease-out) both}.image-hidden{opacity:0;transform:scale(1.03)}.image-loaded{opacity:1;transform:scale(1);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}@keyframes tooltipSlideInRight{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes tooltipSlideInLeft{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes tooltipSlideInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltipSlideInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltipSlideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-8px)}}@keyframes tooltipSlideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(8px)}}@keyframes tooltipSlideOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@keyframes tooltipSlideOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate-fade-out{animation:fadeOut var(--duration-fast) var(--ease-in) forwards}@keyframes fadeInScaleCentered{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes fadeOutScaleCentered{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.9)}}.animate-fade-in-scale-centered{animation:fadeInScaleCentered var(--duration-normal) var(--ease-out)}.animate-fade-out-scale-centered{animation:fadeOutScaleCentered var(--duration-fast) var(--ease-in) forwards}@keyframes fadeInScaleXCentered{0%{opacity:0;transform:translate(-50%) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes fadeOutScaleXCentered{0%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(.95)}}@keyframes pulseCentered{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.3}}.animate-pulse-centered{animation:pulseCentered 2s ease-in-out infinite}@keyframes panelSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes panelSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.panel-slide-in{animation:panelSlideIn var(--duration-moderate) var(--ease-standard) forwards}.panel-slide-out{animation:panelSlideOut var(--duration-normal) var(--ease-standard) forwards}.secondary-panel-transition{transition:right var(--duration-moderate) var(--ease-standard)}.compare-expand-transition{transition:max-width var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out),margin var(--duration-normal) var(--ease-out);overflow:hidden}.collapsible-container{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-moderate) var(--ease-standard);overflow:hidden}.collapsible-container[data-expanded=true]{grid-template-rows:1fr}.collapsible-content{min-height:0;opacity:0;transition:opacity var(--duration-moderate) var(--ease-standard)}.collapsible-container[data-expanded=true] .collapsible-content{opacity:1}.grid-flip-item{backface-visibility:hidden}.grid-flip-active .grid-flip-item{transform:translateZ(0)}.flip-ease-in-out,.flip-smooth{transition:transform var(--duration-slow) var(--ease-standard)}.flip-delay-0{transition-delay:0ms}.flip-delay-1{transition-delay:25ms}.flip-delay-2{transition-delay:50ms}.flip-delay-3{transition-delay:75ms}.flip-delay-4{transition-delay:.1s}@keyframes gapFillSlide{0%{transform:var(--flip-from-transform, translate(0, 0))}to{transform:translate(0)}}.gap-fill-animate{animation:gapFillSlide var(--duration-slow) var(--ease-standard) forwards}@keyframes flipEntrance{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.flip-entrance{animation:flipEntrance var(--duration-moderate) var(--ease-decelerate)}@keyframes tabContentExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes tabContentEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tab-content-exit{animation:tabContentExit var(--duration-micro) var(--ease-standard) forwards}.tab-content-enter{animation:tabContentEnter var(--duration-micro) var(--ease-standard) forwards}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInFromLeft var(--duration-moderate) var(--ease-out)}@keyframes slideOutToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px)}}.animate-slide-out-left{animation:slideOutToLeft var(--duration-normal) var(--ease-in) forwards}@keyframes groupPreviewEnter{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.group-preview-enter{animation:groupPreviewEnter var(--duration-moderate) var(--ease-decelerate) forwards}@keyframes groupPreviewExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.7)}}.group-preview-exit{animation:groupPreviewExit var(--duration-normal) var(--ease-out) forwards;pointer-events:none}@keyframes groupExpand{0%{transform:scale(1)}40%{transform:scale(1.06)}to{transform:scale(1.02);opacity:0}}.group-expanding{animation:groupExpand var(--duration-moderate) var(--ease-out) forwards;pointer-events:none}@keyframes groupCollapse{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.group-collapsing{animation:groupCollapse var(--duration-moderate) var(--ease-decelerate) forwards}@keyframes groupContentEnter{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.group-content-enter{animation:groupContentEnter var(--duration-moderate) var(--ease-standard) forwards;animation-fill-mode:both}.group-stagger-0{animation-delay:0ms}.group-stagger-1{animation-delay:30ms}.group-stagger-2{animation-delay:60ms}.group-stagger-3{animation-delay:90ms}.group-stagger-4{animation-delay:.12s}.group-stagger-5{animation-delay:.15s}.group-stagger-6{animation-delay:.18s}.group-stagger-7{animation-delay:.21s}@keyframes groupContentExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}.group-content-exit{animation:groupContentExit var(--duration-normal) var(--ease-out) forwards;pointer-events:none}@keyframes dropIndicatorFadeIn{0%{opacity:0;transform:scaleY(.5)}to{opacity:1;transform:scaleY(1)}}@keyframes dropIndicatorFadeOut{0%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(.5)}}@keyframes groupDropTargetPulse{0%,to{box-shadow:0 0 rgba(var(--accent-primary-rgb),.4),0 8px 24px #0006}50%{box-shadow:0 0 0 8px rgba(var(--accent-primary-rgb),.15),0 12px 32px #00000080}}.group-drop-target-pulse{animation:groupDropTargetPulse 1s ease-in-out infinite}@keyframes countBadgePulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.count-badge-pulse{animation:countBadgePulse var(--duration-moderate) var(--ease-out)}.group-view-entering,.group-view-exiting{pointer-events:none}@keyframes groupTransitionOverlay{0%{opacity:0}50%{opacity:.3}to{opacity:0}}.group-transition-overlay{animation:groupTransitionOverlay var(--duration-slow) ease-in-out forwards;pointer-events:none}@keyframes showAllEnter{0%{opacity:0;transform:translateY(16px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.show-all-enter{animation:showAllEnter var(--duration-slow) var(--ease-standard) forwards;animation-fill-mode:both}.show-all-stagger-0{animation-delay:0ms}.show-all-stagger-1{animation-delay:20ms}.show-all-stagger-2{animation-delay:40ms}.show-all-stagger-3{animation-delay:60ms}.show-all-stagger-4{animation-delay:80ms}.show-all-stagger-5{animation-delay:.1s}.show-all-stagger-6{animation-delay:.12s}.show-all-stagger-7{animation-delay:.14s}.show-all-stagger-8{animation-delay:.16s}.show-all-stagger-9{animation-delay:.18s}.show-all-stagger-10{animation-delay:.2s}.show-all-stagger-11{animation-delay:.22s}.show-all-stagger-12{animation-delay:.24s}.show-all-stagger-13{animation-delay:.26s}.show-all-stagger-14{animation-delay:.28s}.show-all-stagger-15{animation-delay:.3s}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--duration-slower);animation-timing-function:cubic-bezier(.25,.1,.25,1)}::view-transition-old(root){animation:none;opacity:0}::view-transition-new(root){animation:viewTransitionFadeIn var(--duration-slower) cubic-bezier(.25,.1,.25,1)}@keyframes viewTransitionFadeIn{0%{opacity:0}to{opacity:1}}::view-transition-group(*){animation-duration:var(--duration-slower);animation-timing-function:cubic-bezier(.25,.1,.25,1)}.view-transition-item{will-change:transform,opacity;backface-visibility:hidden;transform-style:preserve-3d}.view-transitioning .view-transition-item{transform:translateZ(0)}.flip-view-transition{will-change:transform,opacity;backface-visibility:hidden}.flip-view-transition-active{transition:transform var(--duration-slow) var(--ease-standard),opacity var(--duration-normal) var(--ease-standard)}@keyframes mainViewFadeOut{0%{opacity:1}to{opacity:0}}@keyframes mainViewFadeIn{0%{opacity:0}to{opacity:1}}.main-view-content{opacity:1}.main-view-content.is-transitioning{animation:mainViewFadeOut var(--duration-moderate) var(--ease-accelerate) forwards;pointer-events:none}.main-view-content.is-entering{animation:mainViewFadeIn var(--duration-slow) var(--ease-spring) both}.main-view-content.is-entering .virtualized-fade-in{animation:none!important;opacity:1!important}.main-view-content.is-entering .image-loaded{transition:none!important}@keyframes virtualizedFadeIn{0%{opacity:0}to{opacity:1}}.virtualized-fade-in{animation:virtualizedFadeIn var(--duration-normal) var(--ease-out) forwards}.virtualized-instant{opacity:1}@keyframes maskMagicPulse{0%{background-position:0% 50%;opacity:.85}50%{background-position:100% 50%;opacity:1}to{background-position:0% 50%;opacity:.85}}.view-mode-container{position:absolute;top:0;right:0;bottom:0;left:0;will-change:opacity;backface-visibility:hidden}.view-mode-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--duration-normal) var(--ease-out)}.view-mode-inactive{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out),visibility 0ms var(--duration-normal)}@keyframes jobComplete{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.animate-job-complete{animation:jobComplete var(--duration-moderate) var(--ease-out)}@keyframes threadPulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes optionsFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes sparkle-kick{0%{transform:rotate(0) scale(1)}40%{transform:rotate(72deg) scale(1.18)}to{transform:rotate(72deg) scale(1)}}.primary-action-btn:hover:not(:disabled) .primary-action-btn-content svg{animation:sparkle-kick var(--duration-slow) var(--ease-out) 50ms both}@keyframes floatingShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes shimmerBreathe{0%,to{opacity:.55}50%{opacity:1}}@keyframes borderPulseRotate{0%{--pulse-angle: 0deg;opacity:.9}70%{opacity:.7}to{--pulse-angle: 360deg;opacity:0}}.floating-panel-shell{position:relative}.floating-panel-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);padding:1px;background:radial-gradient(circle 150px at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.14) 0%,rgba(255,255,255,.04) 45%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:0;transition:opacity .4s ease}.floating-generate-panel:hover .floating-panel-shell:before{animation:shimmerBreathe 3s ease-in-out infinite}.floating-panel-bloom{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle 200px at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.035) 0%,transparent 70%);pointer-events:none;opacity:0;transition:opacity .4s ease}.floating-generate-panel:hover .floating-panel-bloom{animation:shimmerBreathe 4s ease-in-out infinite}.floating-panel-shell--pulse:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);padding:1.5px;background:conic-gradient(from var(--pulse-angle),transparent 0%,var(--accent-primary) 5%,transparent 14%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:borderPulseRotate .7s cubic-bezier(.4,0,.2,1) forwards}@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Arame;src:url(/fonts/Arame-Thin.woff2) format("woff2"),url(/fonts/Arame-Thin.woff) format("woff");font-weight:100;font-style:normal;font-display:swap}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! 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:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";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:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.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}.-bottom-2{bottom:-.5rem}.-left-2{left:-.5rem}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-4{left:1rem}.left-8{left:2rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.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}.contents{display:contents}.hidden{display:none}.h-20{height:5rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-full{height:100%}.h-screen{height:100vh}.w-11{width:2.75rem}.w-20{width:5rem}.w-4{width:1rem}.w-full{width:100%}.w-screen{width:100vw}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.grow{flex-grow:1}.-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-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))}.translate-x-1{--tw-translate-x: .25rem;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-6{--tw-translate-x: 1.5rem;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))}.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 bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-ne-resize{cursor:ne-resize}.cursor-nw-resize{cursor:nw-resize}.cursor-se-resize{cursor:se-resize}.cursor-sw-resize{cursor:sw-resize}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.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-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-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * 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))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-opacity-80{--tw-bg-opacity: .8}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[13px\]{font-size:13px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:var(--text-body)}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:var(--text-caption)}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.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)}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.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-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)}.outline{outline-style:solid}.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)}.invert{--tw-invert: invert(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-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-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-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#root{width:100vw;height:100vh}input[type=range]{width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;border-radius:2px;background:var(--track-gradient, var(--slider-track))}input[type=range]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;z-index:2;width:14px;height:14px;border-radius:50%;background-color:var(--slider-thumb-bg);border:2px solid var(--slider-thumb-border);box-shadow:none;-webkit-transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default);transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default)}input[type=range]::-webkit-slider-thumb:hover{border-color:var(--slider-thumb-border-hover);transform:scale(1.25)}input[type=range]:active::-webkit-slider-thumb{border-color:var(--slider-thumb-border-hover);box-shadow:0 0 0 6px var(--slider-thumb-glow);transform:scale(1.25)}input[type=range]:disabled::-webkit-slider-thumb{border-color:var(--text-disabled);background-color:transparent;cursor:not-allowed;opacity:.5}input[type=range]:disabled::-webkit-slider-thumb:hover{transform:none;box-shadow:none}input[type=range]::-moz-range-thumb{cursor:pointer;position:relative;z-index:2;width:14px;height:14px;border-radius:50%;background-color:var(--slider-thumb-bg);border:2px solid var(--slider-thumb-border);box-shadow:none;-moz-transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default);transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default)}input[type=range]::-moz-range-thumb:hover{border-color:var(--slider-thumb-border-hover);transform:scale(1.25)}input[type=range]:active::-moz-range-thumb{border-color:var(--slider-thumb-border-hover);box-shadow:0 0 0 6px var(--slider-thumb-glow);transform:scale(1.25)}input[type=range]:disabled::-moz-range-thumb{border-color:var(--text-disabled);background-color:transparent;cursor:not-allowed;opacity:.5}input[type=range]:disabled::-moz-range-thumb:hover{transform:none;box-shadow:none}input[type=range]::-moz-range-track{height:3px;border-radius:2px;background:var(--track-gradient, var(--slider-track))}input[type=range]:focus{outline:2px solid transparent;outline-offset:2px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1;height:100%;cursor:pointer}input[type=number]{-moz-appearance:number-input;padding-right:4px}input[type=number]::-webkit-inner-spin-button{margin-left:8px;opacity:.6;-webkit-transition:opacity var(--duration-normal) var(--ease-default);transition:opacity var(--duration-normal) var(--ease-default)}input[type=number]:hover::-webkit-inner-spin-button{opacity:1}input[type=number]:disabled::-webkit-inner-spin-button{opacity:.3;cursor:not-allowed}.overflow-y-auto::-webkit-scrollbar{width:8px}.overflow-y-auto::-webkit-scrollbar-track{background:var(--scrollbar-track)}.overflow-y-auto::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.overflow-y-auto::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.note-textarea::-moz-placeholder{color:var(--text-muted);opacity:.5;font-size:14px;font-weight:400}.note-textarea::placeholder{color:var(--text-muted);opacity:.5;font-size:14px;font-weight:400}.hover\:scale-125:hover{--tw-scale-x: 1.25;--tw-scale-y: 1.25;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))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-750:hover{--tw-bg-opacity: 1;background-color:rgb(45 55 72 / var(--tw-bg-opacity, 1))}
