:root{--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", ui-monospace, monospace;--size-24:24px;--size-34:34px;--size-48:48px;--size-60:60px;--size-100:100px;--size-160:160px;--size-200:200px;--size-280:280px;--size-320:320px;--size-420:420px;--size-520:520px;--size-620:620px;--size-320px-fluid:clamp(240px, 20vw, 320px);--font-size-xs:.6875rem;--font-size-sm:.8125rem;--font-size-md:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-base:1.5;--line-height-relaxed:1.75;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-13:3.25rem;--space-14:3.5rem;--space-15:3.75rem;--space-16:4rem;--space-17:4.25rem;--space-20:5rem;--space-25:6.25rem;--space-30:7.5rem;--space-40:10rem;--radius-none:0;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-full:9999px;--primitive-white:#fff;--primitive-black:#000;--primitive-gray-50:#f5f5f5;--primitive-gray-100:#e8eaed;--primitive-gray-150:#e0e0e0;--primitive-gray-200:#d2d1d1;--primitive-gray-250:#b6b6ba;--primitive-gray-300:#9a9aa3;--primitive-gray-400:#71708e;--primitive-gray-500:#5a5a63;--primitive-gray-600:#4d4d4d;--primitive-gray-700:#35353d;--primitive-gray-750:#252530;--primitive-gray-800:#1d1d22;--primitive-gray-850:#15151a;--primitive-gray-900:#0f0f12;--primitive-gray-500-translucent-0_3:#5a5a634d;--primitive-gray-500-translucent-0_2:#5a5a6333;--primitive-green-50:#e7f7ef;--primitive-green-100:#b7e4d0;--primitive-green-400:#49e9a6;--primitive-green-500:#31c498;--primitive-green-600:#26a69a;--primitive-green-700:#16a085;--primitive-green-750:#248f6f;--primitive-green-800:#14715f;--primitive-green-900:#065f46;--primitive-blue-300:#3bbfff;--primitive-blue-400:#2283eb;--primitive-blue-600:#3581ad;--primitive-purple-200:#e5d4ff;--primitive-purple-500:#982fff;--primitive-red-400:#b91c1c;--primitive-red-500:#ff5f56;--primitive-red-600:#dc2626;--primitive-amber-300:#d5971a;--primitive-amber-400:#fa8a12;--primitive-amber-500:#d75e22;--primitive-emerald-500:#059669;--primitive-emerald-600:#10b981}:root,html[data-theme=dark],[data-theme=dark]{--surface-base:var(--primitive-gray-850);--surface-subtle:var(--primitive-gray-800);--surface-raised:var(--primitive-gray-750);--surface-elevated:var(--primitive-gray-700);--surface-high:var(--primitive-gray-600);--surface-overlay:#3c3c3cd9;--text-primary:var(--primitive-gray-50);--text-secondary:var(--primitive-gray-250);--text-disabled:var(--primitive-gray-400);--text-inverse:var(--primitive-gray-850);--text-on-accent:var(--primitive-white);--color-primary:var(--primitive-green-400);--color-primary-variant:var(--primitive-green-600);--color-secondary:var(--primitive-blue-600);--color-secondary-light:var(--primitive-blue-300);--color-accent:var(--primitive-purple-500);--link-default:var(--primitive-green-500);--link-hover:var(--primitive-green-750);--action-default:var(--primitive-green-800);--action-hover:var(--primitive-green-700);--action-hover-subtle:#14715f33;--action-hover-medium:#14715f80;--action-selected:var(--primitive-blue-600);--border-subtle:var(--primitive-gray-700);--border-default:var(--primitive-gray-700);--border-strong:var(--primitive-gray-500);--border-focus:var(--color-primary-variant);--status-error:var(--primitive-red-600);--status-error-hover:var(--primitive-red-400);--status-error-bg:#dc262626;--status-error-bg-inline:#d75e221a;--status-error-border:#dc262673;--status-success:var(--primitive-emerald-500);--status-success-bg:#10b98133;--status-success-border:#10b9818c;--status-warn:var(--primitive-amber-500);--diff-added-bg:color-mix(in srgb, var(--primitive-green-500) 20%, transparent);--diff-added-fg:var(--primitive-green-100);--diff-deleted-bg:color-mix(in srgb, var(--primitive-red-500) 22%, transparent);--diff-deleted-fg:var(--primitive-red-500);--diff-hunk-bg:color-mix(in srgb, var(--primitive-blue-400) 18%, transparent);--diff-modified-fg:var(--primitive-blue-300);--diff-renamed-bg:color-mix(in srgb, var(--primitive-purple-500) 22%, transparent);--diff-renamed-fg:var(--primitive-purple-200);--state-hover:var(--primitive-gray-700);--state-selected:var(--primitive-gray-700);--state-selected-0_3:var(--primitive-gray-500-translucent-0_3);--state-focus-ring:0 0 0 2px var(--color-primary-variant);--glass-fill:#ffffff26;--glass-border:#ffffff4d;--glass-border-subtle:#fff3;--glass-subtle:#ffffff14;--color-overlay-glass:#ffffff26;--color-overlay-border-subtle:#fff3;--color-overlay-border:#ffffff4d;--color-overlay-card:#3c3c3cd9;--color-overlay-subtle:#ffffff14;--color-dimmer:black;--color-print:var(--primitive-green-500);--neutral-translucent-sm:#d7d7d933;--neutral-translucent-md:#66666a33;--neutral-translucent-lg:#66666a4d;--green-to-blue:linear-gradient(135deg, var(--primitive-green-500) 0%, var(--primitive-green-600) 42%, var(--primitive-blue-400) 100%);--blue-to-purple:linear-gradient(135deg, var(--primitive-blue-400) 0%, var(--primitive-blue-600) 42%, var(--primitive-purple-500) 100%);--sb-bg:var(--primitive-gray-850)}html[data-theme=light],[data-theme=light]{--surface-base:var(--primitive-gray-50);--surface-subtle:var(--primitive-gray-150);--surface-raised:var(--primitive-gray-200);--surface-elevated:var(--primitive-gray-250);--surface-high:var(--primitive-gray-300);--surface-overlay:#f0f0f5eb;--text-primary:var(--primitive-gray-850);--text-secondary:var(--primitive-gray-500);--text-disabled:var(--primitive-gray-400);--text-inverse:var(--primitive-gray-50);--text-on-accent:var(--primitive-white);--color-primary:var(--primitive-green-400);--color-primary-variant:var(--primitive-green-600);--color-secondary:var(--primitive-blue-600);--color-secondary-light:var(--primitive-blue-400);--color-accent:var(--primitive-purple-500);--link-default:var(--primitive-green-800);--link-hover:var(--primitive-green-500);--action-default:var(--primitive-green-750);--action-hover:var(--primitive-green-700);--action-hover-subtle:#16a08526;--action-hover-medium:#16a08573;--action-selected:var(--primitive-blue-600);--border-subtle:var(--primitive-gray-200);--border-default:var(--primitive-gray-300);--border-strong:var(--primitive-gray-500);--border-focus:var(--color-primary-variant);--status-error:var(--primitive-red-600);--status-error-hover:var(--primitive-red-400);--status-error-bg:#dc262614;--status-error-bg-inline:#d75e2212;--status-error-border:#dc26264d;--status-success:var(--primitive-emerald-500);--status-success-bg:#0596691a;--status-success-border:#05966966;--status-warn:var(--primitive-amber-500);--diff-added-bg:color-mix(in srgb, var(--primitive-green-500) 20%, transparent);--diff-added-fg:var(--primitive-green-900);--diff-deleted-bg:color-mix(in srgb, var(--primitive-red-500) 22%, transparent);--diff-deleted-fg:var(--primitive-red-400);--diff-hunk-bg:color-mix(in srgb, var(--primitive-blue-400) 18%, transparent);--diff-modified-fg:var(--primitive-blue-600);--diff-renamed-bg:color-mix(in srgb, var(--primitive-purple-500) 22%, transparent);--diff-renamed-fg:var(--primitive-purple-500);--state-hover:var(--primitive-gray-200);--state-selected:#a0a0a566;--state-focus-ring:0 0 0 2px var(--color-primary-variant);--glass-fill:#0000000f;--glass-border:#00000026;--glass-border-subtle:#0000001a;--glass-subtle:#0000000a;--color-overlay-glass:#0000000f;--color-overlay-border-subtle:#0000001a;--color-overlay-border:#00000026;--color-overlay-card:#f0f0f5eb;--color-overlay-subtle:#0000000a;--color-dimmer:white;--color-print:var(--primitive-green-800);--neutral-translucent-sm:#1e1e2814;--neutral-translucent-md:#1e1e281f;--neutral-translucent-lg:#1e1e2833;--green-to-blue:linear-gradient(135deg, var(--primitive-green-400) 0%, var(--primitive-green-600) 42%, var(--primitive-blue-400) 100%);--blue-to-purple:linear-gradient(135deg, var(--primitive-blue-400) 0%, var(--primitive-blue-600) 42%, var(--primitive-purple-500) 100%);--sb-bg:var(--primitive-gray-50)}:root{--shadow-sm:0 1px 4px #0000004d;--shadow-md:3px 3px 8px #0000001f;--shadow-lg:0 4px 12px #00000040;--shadow-xl:0 6px 20px #00000040;--shadow-2xl:0 2px 8px #0000004d;--shadow-modal:3px 3px 8px #0003;--box-shadow-shade-1:0 2px 6px #0000001f;--box-shadow-shade-2:0 6px 20px #00000040;--box-shadow-shade-3:0 2px 8px #0000004d;--box-shadow-shade-4:0 4px 12px #00000040;--box-shadow-shade-5:0 6px 20px #00000040;--z-base:1;--z-raised:5;--z-dropdown:100;--z-modal:1000;--z-overlay:2000;--layout-sidebar-width:var(--size-280);--layout-panel-width-md:var(--size-320);--layout-panel-width-lg:var(--size-420);--layout-form-width-lg:var(--size-420);--layout-modal-width-xs:var(--size-160);--layout-modal-width-md:var(--size-320);--layout-modal-width-base:var(--size-420);--layout-modal-width-lg:var(--size-520);--layout-modal-height-xs:var(--size-160);--layout-header-height:var(--size-48);--layout-dropdown-width-base:var(--size-280);--layout-dropdown-width-md:var(--size-320);--layout-dropdown-width-lg:var(--size-420);--layout-dropdown-height-md:var(--size-200);--layout-navbar-height-md:var(--size-48);--layout-input-height-md:var(--size-34);--layout-gap-xs:var(--size-34);--layout-gap-sm:var(--size-48);--layout-gap-md:var(--size-60);--layout-gap-lg:var(--size-100);--default-font-size:var(--font-size-base);--default-radius:var(--radius-sm);--default-padding-x:0 var(--space-8);--default-gap:var(--space-4);--toolbar-height:var(--space-12);--toolbar-bg:var(--surface-subtle);--toolbar-border:var(--border-default);--toolbar-icon-color:var(--text-secondary);--toolbar-icon-active:var(--color-primary);--toolbar-item-hover:var(--state-hover);--toolbar-item-active:var(--state-selected);--toolbar-gap:var(--space-6);--title-font-size:var(--font-size-3xl);--title-font-size-md:var(--font-size-xl);--title-padding:var(--space-7) var(--space-0);--title-padding-base:var(--space-6);--title-padding-sm:var(--space-3);--description-font-size:var(--font-size-base);--tooltip-width-sm:120px;--tooltip-width-md:200px;--tooltip-width-lg:280px;--label-font-size-xs:var(--font-size-xs);--label-font-size:var(--font-size-sm);--label-font-size-md:var(--font-size-md);--label-padding:var(--space-1) var(--space-2);--label-gap:var(--space-2);--label-gap-sm:var(--space-1);--label-gap-lg:var(--space-4);--label-height:var(--space-7);--loading-page-font-size:var(--font-size-lg);--loading-page-spinner-size:2rem;--loading-editor-color:var(--surface-base);--loading-editor-spinner-size:var(--font-size-md);--loading-editor-font-size:var(--font-size-md);--loading-editor-fallback-size:var(--font-size-md);--editor-font-size:var(--font-size-md);--viewport-bg:var(--surface-raised);--viewport-grid-color:var(--border-strong);--viewport-axis-x:#e05252;--viewport-axis-y:#52c052;--viewport-axis-z:#5252e0;--viewport-selection:var(--color-primary-variant);--viewport-gizmo-bg:#0006;--panel-bg:var(--surface-subtle);--panel-header-bg:var(--surface-raised);--panel-header-height:var(--space-5);--panel-border:var(--border-default);--panel-gap:var(--space-2);--panel-padding:var(--space-1) var(--space-2);--panel-padding-md:var(--space-2);--panel-padding-lg:var(--space-4) var(--space-6);--panel-padding-x:0 var(--space-1);--panel-padding-y:var(--space-1) 0;--panel-button-padding:var(--space-2) var(--space-3);--panel-margin:0 var(--space-2);--panel-font-size:var(--font-size-md);--dropdown-padding:var(--space-3);--dropdown-margin:var(--space-3);--dropdown-gap:var(--space-3);--dropdown-radius:var(--radius-sm);--dropdown-shadow:var(--shadow-md);--tree-item-hover:var(--state-hover);--tree-item-selected:var(--state-selected);--tree-indent-guide:var(--border-strong);--tree-icon-color:var(--text-secondary);--form-gap-base:var(--space-6);--form-gap-lg:var(--space-10);--button-font-size:var(--font-size-md);--button-bg:var(--action-default);--button-label:var(--text-primary);--button-padding:var(--space-1) var(--space-4);--button-padding-sm:var(--space-2);--button-padding-xs:var(--space-1);--button-radius:var(--radius-sm);--button-gap:var(--space-2);--button-min-width:var(--size-48);--button-height:var(--size-34);--button-width-lg:var(--size-200);--icon-width:var(--size-48);--icon-height:var(--size-34);--input-bg:var(--surface-raised);--input-border:var(--border-default);--input-border-focus:var(--border-focus);--input-text:var(--text-primary);--input-placeholder:var(--text-disabled);--input-padding:var(--space-2);--input-padding-x:var(--space-2) 0;--modal-bg:var(--surface-elevated);--modal-border:var(--border-subtle);--modal-shadow:var(--shadow-modal);--modal-radius:var(--radius-xl);--modal-backdrop:#0009;--modal-padding-md:var(--space-3) var(--space-5);--modal-padding-lg:var(--space-10) var(--space-14);--modal-gap:var(--space-3);--toast-bg:var(--surface-overlay);--toast-border:var(--glass-border-subtle);--toast-shadow:var(--shadow-lg);--toast-radius:var(--radius-lg);--alert-counter-bg:var(--primitive-red-600);--alert-counter-text:var(--primitive-white);--alert-counter-font-size:var(--font-size-xs);--alert-counter-diameter:var(--space-6);--code-bg:var(--surface-base);--code-font:var(--font-mono);--code-font-size:var(--font-size-sm);--code-border:var(--border-strong);--sb-bg-card-dark:var(--primitive-gray-850);--sb-bg-card-light:var(--primitive-gray-150);--sb-border:#d1d5db;--sb-btn-bg:#f9fafb;--sb-btn-bg-hover:#f3f4f6}html,body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--surface-base);color:var(--text-secondary);margin:0}a{color:var(--link-default);text-decoration:none;transition:color .15s}a:hover{color:var(--link-hover)}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none}p,ul,li{font-family:var(--font-sans)}ul,li{list-style:none}textarea{border-radius:var(--default-radius)}*,:before,:after{box-sizing:border-box}.tree-content,.files-list,.readme-preview{scrollbar-color:var(--surface-raised) transparent}.tree-content::-webkit-scrollbar{width:8px}.files-list::-webkit-scrollbar{width:8px}.readme-preview::-webkit-scrollbar{width:8px}.tree-content::-webkit-scrollbar-thumb{background:var(--surface-raised);border-radius:var(--radius-full)}.files-list::-webkit-scrollbar-thumb{background:var(--surface-raised);border-radius:var(--radius-full)}.readme-preview::-webkit-scrollbar-thumb{background:var(--surface-raised);border-radius:var(--radius-full)}.tree-content::-webkit-scrollbar-thumb:hover{background:var(--surface-raised)}.files-list::-webkit-scrollbar-thumb:hover{background:var(--surface-raised)}.readme-preview::-webkit-scrollbar-thumb:hover{background:var(--surface-raised)}.tree-content::-webkit-scrollbar-track{background:0 0}.files-list::-webkit-scrollbar-track{background:0 0}.readme-preview::-webkit-scrollbar-track{background:0 0}.tree-content::-webkit-scrollbar-button{width:0;height:0;display:none}.files-list::-webkit-scrollbar-button{width:0;height:0;display:none}.readme-preview::-webkit-scrollbar-button{width:0;height:0;display:none}@keyframes jiggle{0%,to{transform:translate(0)}25%{transform:translate(-.3125rem)}75%{transform:translate(.3125rem)}}@keyframes fade-in{0%{opacity:0;transform:translateY(.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 var(--color-primary-variant-subtle)}50%{box-shadow:0 0 8px 4px var(--color-primary-variant-subtle)}}.global-jiggle{animation:.4s ease-in-out 2 jiggle}.global-fade-in{animation:.2s ease-out forwards fade-in}.global-spin{animation:.8s linear infinite spin}.global-pulse{animation:2s ease-in-out infinite pulse-glow}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}[data-cmp=home-page].page{--home-bg:#0f1115;--home-fg:#f5f7fa;--home-muted:#aab2c0;--home-accent:#4f8cff;background:var(--home-bg);width:100%;min-height:100vh;color:var(--home-fg);justify-content:center;align-items:center;font-family:Inter,system-ui,sans-serif;display:flex}[data-cmp=home-page].page .hero{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;display:flex}[data-cmp=home-page].page .wordmark{letter-spacing:.1em;margin:0;font-size:clamp(3rem,10vw,6rem);font-weight:800}[data-cmp=home-page].page .tagline{max-width:32ch;color:var(--home-muted);margin:0;font-size:1.25rem}[data-cmp=home-page].page .cta{color:var(--home-bg);background:var(--home-accent);cursor:pointer;border:none;border-radius:.5rem;margin-top:.5rem;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:filter .15s}[data-cmp=home-page].page .cta:hover{filter:brightness(1.1)}.page-placeholder.svelte-qveji{flex-direction:column;justify-content:center;align-items:center;gap:.5rem;min-height:100vh;font-family:sans-serif;display:flex}.auth-page{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.auth-page .layout{text-align:center;justify-content:center;align-items:center;display:flex;position:relative}.auth-page .layout .background{opacity:.6;position:absolute;bottom:-200px}.auth-page .layout .content{z-index:var(--z-raised);justify-content:center;align-items:center;gap:var(--label-gap-lg);flex-direction:column;display:flex}[data-cmp=login-form].container{justify-content:center;align-items:center;display:flex;position:relative}[data-cmp=login-form].container form{justify-content:center;align-items:center;gap:var(--button-gap);color:var(--text-secondary);display:flex}[data-cmp=login-form].container form [data-cmp=text-input] label{font-size:var(--default-font-size);color:var(--text-secondary);transition:all .5s;position:absolute;top:.5rem}[data-cmp=login-form].container form [data-cmp=text-input].field:focus-within>label{font-size:var(--label-font-size-xs);top:-.5rem}[data-cmp=login-form].container form [data-cmp=text-input].field:has(.active)>label{font-size:var(--label-font-size-xs);top:-.5rem}[data-cmp=login-form].container form [data-cmp=text-input] .error-message{position:absolute;bottom:-1.5rem}[data-cmp=login-form].container form .btn{color:var(--link-default);width:auto;font-size:var(--default-font-size);background:0 0;margin:0;padding:0;font-weight:400}[data-cmp=login-form].container form input{box-sizing:border-box;cursor:pointer;background-color:#0000;background-image:var(--green-to-blue);background-position:bottom;background-repeat:no-repeat;background-size:100% 2px;border:none;width:100%;transition:box-shadow .2s}[data-cmp=login-form].container form input:focus{background-color:#0000;background-image:var(--blue-to-purple);background-position:bottom;background-repeat:no-repeat;background-size:100% 2px;border:none;outline:none}[data-cmp=login-form].container form .error-msg{color:var(--status-error);font-size:var(--label-font-size);padding:var(--label-padding);background-color:var(--surface-base);border:1px solid var(--status-error);border-radius:var(--default-radius);position:absolute;bottom:-3rem;left:0}[data-cmp=login-form].container form .success-msg{color:var(--status-success);font-size:var(--label-font-size);padding:var(--label-padding);background-color:var(--surface-base);border:1px solid var(--status-success);border-radius:var(--default-radius);position:absolute;bottom:-3rem;left:0}[data-cmp=login-form].container form .loader{border:1.5px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}[data-cmp=login-form].container .extras{text-align:center;bottom:var(--layout-gap-lg);justify-content:center;align-items:center;gap:var(--layout-gap-md);display:flex;position:fixed}[data-cmp=login-form].container .extras a{color:var(--text-secondary);font-size:var(--button-font-size)}[data-cmp=text-input].field{flex-direction:column;gap:6px;width:100%;display:flex;position:relative}[data-cmp=text-input].field label{font-size:var(--label-font-size);color:var(--text-secondary)}[data-cmp=text-input].field input{width:100%;font-size:var(--default-font-size);border:none;border-bottom:1px solid var(--text-primary);color:var(--text-primary);box-sizing:border-box;background:0 0;padding:12px 0;transition:border-color .2s}[data-cmp=text-input].field input:focus{border-color:var(--color-primary-base);outline:none}[data-cmp=text-input].field input::placeholder{color:var(--text-secondary);opacity:.5}[data-cmp=text-input].field input:disabled{background-color:var(--surface-raised);color:var(--primitive-gray-400);border-color:var(--color-neutral-600);cursor:not-allowed}[data-cmp=text-input].field input:disabled::placeholder{color:var(--primitive-gray-400)}[data-cmp=text-input].field .password{padding-right:40px}[data-cmp=text-input].field .error-message{color:var(--status-error);font-size:var(--label-font-size);margin:0}[data-cmp=text-input].field.error input{border-color:var(--status-error)}[data-cmp=text-input].field.error label,[data-cmp=text-input].field.error .error-message{color:var(--status-error)}[data-cmp=button-component].btn{padding:var(--button-padding);background-color:var(--action-default);color:var(--text-on-accent);font-size:var(--default-font-size);cursor:pointer;border-radius:var(--default-radius);border:none;justify-content:center;align-items:center;width:100%;font-weight:500;display:flex}[data-cmp=button-component].btn:hover:not(:disabled){opacity:.9}[data-cmp=button-component].btn:disabled{opacity:.6;cursor:not-allowed}[data-cmp=button-component].btn.outline{border:1px solid var(--action-default);background:0 0}[data-cmp=button-component].btn.outline:hover:not(:disabled){background:var(--surface-raised)}[data-cmp=button-component].btn .spinner{border:2px solid var(--text-primary);border-top-color:#0000;border-radius:50%;width:20px;height:20px;animation:.6s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.main-layout{position:relative}.main-layout header{position:absolute;top:.5rem;right:1rem}[data-cmp=theme-switch].toggle{cursor:pointer;padding:var(--button-padding-sm);border-radius:var(--default-radius);color:var(--text-primary);background:0 0;border:none;justify-content:center;align-items:center;line-height:0;display:inline-flex}[data-cmp=theme-switch].toggle svg{display:block}.dashboard-layout{--side-panel-w:20%;background:var(--surface-base);height:100vh;color:var(--text-primary)}.dashboard-layout .body{height:100%;display:flex}.dashboard-layout .body>.content{min-width:0;max-height:100vh;padding-top:var(--layout-navbar-height-md);flex:1;overflow-y:auto}.dashboard-layout .navbar{top:0;left:var(--side-panel-w);width:calc(100% - var(--side-panel-w));height:var(--layout-navbar-height-md);z-index:var(--z-raised);position:fixed}.dashboard-navbar{height:var(--toolbar-height);background-color:var(--);background:var(--surface-base);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:var(--default-padding-x);justify-content:space-between;align-items:center;display:flex}.dashboard-navbar button{font-size:var(--default-font-size);color:var(--text-primary);margin:0;padding:0}.dashboard-navbar .navbar-metadata,.dashboard-navbar .navbar-actions{align-items:center;gap:var(--default-gap);display:flex}.dashboard-navbar .new-project{cursor:pointer;background:var(--surface-subtle);padding:var(--button-padding);border-radius:var(--default-radius);font-size:var(--button-font-size);margin:0}.dashboard-navbar .new-project:hover{background-color:var(--state-hover)}.dashboard-navbar .new-project:disabled{opacity:.5;cursor:not-allowed}.side-panel{box-sizing:border-box;width:var(--side-panel-w,var(--layout-sidebar-width));gap:var(--space-8);height:100vh;padding:var(--space-4);border-right:1px solid var(--border-subtle);background:var(--surface-base);color:var(--text-primary);flex-direction:column;display:flex;position:relative}.side-panel .logo{padding-left:var(--panel-padding)}.side-panel .body{gap:var(--panel-button-gap);flex-direction:column;display:flex}.side-panel .footer{margin-top:auto}[data-cmp=icon].icon{width:var(--icon-w,24px);height:var(--icon-h,24px);display:inline-flex}[data-cmp=icon].icon.rotate{transform:rotate(90deg)}.department-menu{position:relative}.department-menu .dropdown{align-items:center;gap:var(--button-gap);width:100%;padding:var(--label-padding);border-radius:var(--default-radius);color:var(--text-primary);cursor:pointer;background:0 0;display:flex}.department-menu .dropdown:hover,.department-menu .dropdown.selected{background:var(--state-hover)}.department-menu .icon{background:var(--action-default);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.department-menu .icon b{font-size:var(--label-font-size);color:var(--text-on-accent)}.department-menu .label{align-items:center;gap:var(--button-gap);min-width:0;font-size:var(--default-font-size);display:flex}.department-menu .label-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.department-menu .chevron{flex-shrink:0;transition:transform .15s}.department-menu .chevron.open{transform:rotate(180deg)}.department-menu .menu{z-index:var(--z-dropdown);gap:var(--space-1);margin-top:var(--panel-gap);padding:var(--space-1);background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--dropdown-radius);box-shadow:var(--dropdown-shadow);flex-direction:column;display:flex;position:absolute;top:80%;left:0;right:0}.department-menu .option{width:100%;padding:var(--label-padding);border-radius:var(--default-radius);color:var(--text-primary);font-size:var(--default-font-size);text-align:left;cursor:pointer;background:0 0;align-items:center;display:flex}.department-menu .option:hover{background:var(--state-hover)}.department-menu .option.selected{background:var(--state-selected)}.department-menu .error-msg{margin:0 0 var(--label-gap) 0;padding:var(--label-padding);color:var(--status-error);font-size:var(--label-font-size);background:var(--status-error-bg);border:1px solid var(--status-error-border);border-radius:var(--default-radius)}.dashboard-side-panel{gap:var(--panel-gap);flex-direction:column;display:flex}.side-panel-footer{border-top:1px solid var(--border-subtle);font-size:var(--label-font-size-md)}.side-panel-footer.large{font-size:var(--label-font-size-md);margin-bottom:32px;padding-top:16px}.side-panel-footer.small{font-size:var(--label-font-size);margin-bottom:8px;padding-top:8px}.side-panel-footer .documentation{align-items:center;gap:var(--label-gap);padding:var(--button-padding);border-radius:var(--default-radius);color:var(--text-primary);display:flex}.side-panel-footer .documentation a{color:var(--text-primary)}.side-panel-footer .documentation:hover{background:var(--state-hover)}.side-panel-button{align-items:center;gap:var(--label-gap);font-size:var(--default-font-size);padding:var(--panel-button-padding);border-radius:var(--default-radius);display:flex;position:relative}.side-panel-button:hover,.side-panel-button.selected{background-color:var(--state-hover)}.side-panel-button .label{color:var(--text-primary)}[data-cmp=project-list].container{width:100%}[data-cmp=project-list].container .list{flex-wrap:wrap;gap:32px 16px;padding:32px;display:flex}[data-cmp=project-list].container .item{width:400px;position:relative}[data-cmp=project-list].container .item .project-button{width:100%;color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:8px;padding:0;display:flex}[data-cmp=project-list].container .item .hover-buttons{top:var(--label-gap);right:var(--label-gap);gap:var(--label-gap);display:flex;position:absolute}[data-cmp=project-list].container .item .hover-buttons .hover-button{width:var(--button-height);height:var(--button-height);padding:var(--button-padding-xs);background:var(--surface-raised);color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}[data-cmp=project-list].container .item .hover-buttons .hover-button:hover{background:var(--surface-elevated)}[data-cmp=project-list].container .item .name{font-size:var(--font-size-base)}[data-cmp=project-list].container .item .image{border:1px solid var(--surface-raised);border-radius:var(--default-radius);background:var(--surface-raised);width:100%;height:240px;display:block;overflow:hidden}[data-cmp=project-list].container .item .image img{object-fit:cover;width:100%;height:100%;display:block}[data-cmp=project-list].container .item .image.default{justify-content:center;align-items:center;display:flex}@media screen and (width<=1800px){[data-cmp=project-list] .item{width:320px}}[data-cmp=close-button].close-btn{cursor:pointer;color:var(--text-primary);opacity:.85;background:0 0;border:none;outline:none;align-items:center;display:flex}[data-cmp=close-button].close-btn:hover{opacity:1}[data-cmp=confirmation-modal].confirmation-modal{width:100%;height:100%;z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}[data-cmp=confirmation-modal].confirmation-modal .backdrop{z-index:1;opacity:.5;background:var(--primitive-black);width:100%;height:100%;position:absolute}[data-cmp=confirmation-modal].confirmation-modal .content{z-index:2;width:var(--layout-modal-width-lg);background:var(--surface-subtle);padding:var(--modal-padding-lg);align-items:center;gap:var(--modal-gap);box-shadow:var(--shadow-modal);border:1px solid var(--modal-border);border-radius:var(--default-radius);flex-direction:column;display:flex;position:relative}[data-cmp=confirmation-modal].confirmation-modal .content .errors{color:var(--status-error);border:1px solid var(--status-error);padding:var(--label-padding);font-size:var(--label-font-size);border-radius:var(--default-radius)}[data-cmp=confirmation-modal].confirmation-modal .close-btn{top:var(--modal-gap);right:var(--modal-gap);position:absolute}[data-cmp=confirmation-modal].confirmation-modal .message{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}[data-cmp=confirmation-modal].confirmation-modal .message p{text-align:center;width:80%;color:var(--text-secondary)}[data-cmp=confirmation-modal].confirmation-modal .message .msg-title{font-size:var(--title-font-size-md);padding:0}[data-cmp=confirmation-modal].confirmation-modal .message .msg-content{padding-bottom:var(--title-padding-sm);font-size:var(--label-font-size-md)}[data-cmp=confirmation-modal].confirmation-modal .actions{align-items:center;gap:var(--button-gap);display:flex}[data-cmp=confirmation-modal].confirmation-modal .actions .btn{width:var(--button-width-lg);border-color:var(--surface-high);border-radius:var(--default-radius)}[data-cmp=confirmation-modal].confirmation-modal .actions .cancel{color:var(--text-primary)}.switch-branch-modal{width:100%;height:100%;z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.switch-branch-modal .backdrop{z-index:1;opacity:.5;background:var(--primitive-black);width:100%;height:100%;position:absolute}.switch-branch-modal .content{z-index:2;width:var(--layout-modal-width-lg);background:var(--surface-subtle);padding:var(--modal-padding-lg);align-items:center;gap:var(--modal-gap);box-shadow:var(--shadow-modal);border:1px solid var(--modal-border);border-radius:var(--default-radius);flex-direction:column;display:flex;position:relative}.switch-branch-modal .content .errors{color:var(--status-error);border:1px solid var(--status-error);padding:var(--label-padding);font-size:var(--label-font-size);border-radius:var(--default-radius)}.switch-branch-modal [data-cmp=dropdown-input].field{width:80%;margin-bottom:var(--label-gap-lg)}.switch-branch-modal [data-cmp=dropdown-input].field label{display:none}.switch-branch-modal .close-btn{top:var(--modal-gap);right:var(--modal-gap);position:absolute}.switch-branch-modal .message{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.switch-branch-modal .message b{font-size:var(--title-font-size-md);padding-top:var(--title-padding-base)}.switch-branch-modal .message p{text-align:center;width:80%;font-size:var(--label-font-size-md);color:var(--text-secondary);margin-bottom:0}.switch-branch-modal .actions{align-items:center;gap:var(--button-gap);display:flex}.switch-branch-modal .actions .btn{width:var(--button-width-lg);border-color:var(--surface-high);border-radius:var(--default-radius)}.switch-branch-modal .actions .cancel{color:var(--text-primary)}[data-cmp=dropdown-input].field{flex-direction:column;gap:6px;width:100%;display:flex}[data-cmp=dropdown-input].field label{color:var(--text-secondary);font-size:14px}[data-cmp=dropdown-input].field select{border:none;border-bottom:1px solid var(--text-primary);width:100%;color:var(--text-primary);box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;background:0 0;padding:12px 0;font-size:16px;transition:border-color .2s;overflow:hidden}[data-cmp=dropdown-input].field select:focus{border-color:var(--color-primary);outline:none}[data-cmp=dropdown-input].field select:disabled{background-color:var(--surface-base);color:var(--neutral-translucent-lg);border-color:var(--primitive-gray-200);cursor:not-allowed}[data-cmp=dropdown-input].field option{color:var(--text-primary);background-color:var(--surface-subtle);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}[data-cmp=dropdown-input].field .error-message{color:var(--status-error);margin:0;font-size:12px}[data-cmp=dropdown-input].field.error select{border-color:var(--status-error)}[data-cmp=dropdown-input].field.error label,[data-cmp=dropdown-input].field.error .error-message{color:var(--status-error)}.empty-project-list{justify-content:center;align-items:center;gap:var(--default-gap);flex-direction:column;flex:1;display:flex}.empty-project-list .empty-project-icon{background:var(--surface-subtle);padding:var(--label-padding);border-radius:var(--default-radius);align-items:center;display:flex}.empty-project-list .empty-project-title{color:var(--text-primary);margin:0}.empty-project-list .empty-project-message{text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm);max-width:var(--size-280);margin:0}.empty-project-list .empty-new-project{cursor:pointer;padding:var(--button-padding);color:var(--text-on-accent);font-size:var(--default-font-size);background:var(--action-default);border-radius:var(--default-radius)}.empty-project-list .empty-new-project:hover{background-color:var(--action-hover)}[data-cmp=new-project].modal-overlay{width:100%;height:100%;z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}[data-cmp=new-project].modal-overlay .backdrop{z-index:1;opacity:.5;background:var(--primitive-black);width:100%;height:100%;position:absolute}[data-cmp=new-project].modal-overlay .form{z-index:2;width:var(--layout-modal-width-lg);background:var(--surface-subtle);padding:var(--modal-padding-lg);align-items:center;gap:var(--modal-gap);box-shadow:var(--shadow-modal);border:1px solid var(--modal-border);border-radius:var(--default-radius);flex-direction:column;display:flex;position:relative}[data-cmp=new-project].modal-overlay .close-btn{top:var(--modal-gap);right:var(--modal-gap);position:absolute}[data-cmp=new-project].modal-overlay .title-section{width:100%}[data-cmp=new-project].modal-overlay .title-section .title{font-size:var(--title-font-size-md);color:var(--text-primary);margin:0;padding-top:0}[data-cmp=new-project].modal-overlay .fields{gap:var(--modal-gap);flex-direction:column;width:100%;display:flex}[data-cmp=new-project].modal-overlay .feedback{justify-content:center;align-items:center;width:100%;display:flex}[data-cmp=new-project].modal-overlay .actions{align-items:center;gap:var(--button-gap);display:flex}[data-cmp=new-project].modal-overlay .actions .btn{width:var(--button-width-lg);border-radius:var(--default-radius)}[data-cmp=new-project].modal-overlay .actions .cancel{color:var(--text-primary)}[data-cmp=new-project].modal-overlay .field-error{color:var(--status-error);font-size:var(--label-font-size);margin-top:var(--label-gap)}[data-cmp=new-project].modal-overlay .error-msg{color:var(--status-error);font-size:var(--label-font-size);padding:var(--label-padding);background-color:var(--status-error-bg);border:1px solid var(--status-error-border);border-radius:var(--default-radius);text-align:center;width:fit-content;max-width:100%}[data-cmp=textarea].field{flex-direction:column;gap:6px;width:100%;display:flex}[data-cmp=textarea].field label{color:var(--text-secondary);font-size:14px}[data-cmp=textarea].field textarea{width:100%;height:var(--textarea-h,150px);font-family:var(--font-sans);color:var(--text-primary);border:1px solid var(--text-primary);box-sizing:border-box;background:0 0;padding:12px;font-size:16px;transition:border-color .2s}[data-cmp=textarea].field.error textarea{border-color:var(--status-error)}[data-cmp=textarea].field.error label{color:var(--status-error)}.dashboard-page{background:var(--surface-base);height:100vh;color:var(--text-primary)}.dashboard-page .centered{justify-content:center;align-items:center;height:100%;display:flex}.dashboard-page .spinner{width:var(--loading-page-spinner-size);height:var(--loading-page-spinner-size);border:2px solid var(--text-secondary);border-radius:var(--radius-full);border-top-color:#0000;animation:.8s linear infinite spin}.dashboard-page .message-box{padding:var(--space-6);font-size:var(--loading-page-font-size);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--default-radius)}.dashboard-page .dashboard-content{flex-direction:column;min-height:100%;display:flex}.dashboard-page .dashboard-content .banner{bottom:var(--default-gap);right:var(--default-gap);margin:0 0 var(--default-gap) 0;padding:var(--label-padding);border-radius:var(--default-radius);position:absolute}.dashboard-page .dashboard-content .banner.error{color:var(--status-error);background:var(--status-error-bg);border:1px solid var(--status-error-border)}.dashboard-page .dashboard-content .banner.success{color:var(--status-success);background:var(--status-success-bg);border:1px solid var(--status-success-border)}.dashboard-page .dashboard-content .content-loading{padding:var(--space-6);justify-content:center;display:flex}.dashboard-page .dashboard-content .empty{color:var(--text-secondary);text-align:center;padding:var(--space-6)}.resize-handle{z-index:var(--z-raised);background:0 0;transition:background .15s;display:flex;overflow:visible}.resize-handle:hover{background:var(--state-hover)}.resize-handle.resize-handle-row{border-top:1px solid var(--border-subtle);cursor:row-resize;justify-content:center;align-items:start}.resize-handle.resize-handle-col{border-right:1px solid var(--border-subtle);cursor:col-resize;justify-content:end;align-items:center}.resize-handle.resize-handle-col .drag-icon svg{rotate:90deg}.editor-header-left{padding:var(--panel-padding);border-bottom:1px solid var(--border-subtle);flex-direction:column;display:flex;position:relative}.editor-header-left .logo-menu,.editor-header-left .project-name-menu{position:relative}.editor-header-left .logo-menu>[data-cmp=dropdown-menu].menu,.editor-header-left .project-name-menu>[data-cmp=dropdown-menu].menu{width:min(var(--layout-dropdown-width-md), 100%);top:100%;left:0}.editor-header-left .logo-btn{gap:var(--space-1);cursor:pointer;padding:var(--button-padding-sm);border-radius:var(--button-radius);background:0 0;align-items:center;display:flex}.editor-header-left .logo-btn:hover{background-color:var(--state-hover)}.editor-header-left .logo-btn:disabled{cursor:not-allowed;opacity:.5}.editor-header-left .project-name{align-items:center;gap:var(--space-1);color:var(--text-primary);cursor:pointer;padding:var(--button-padding-sm);border-radius:var(--button-radius);background:0 0;border:none;display:flex}.editor-header-left .project-name span{font-size:var(--font-size-md);margin:0;padding:0}.editor-header-left .project-name:hover{background-color:var(--state-hover)}.editor-header-left-confirmation{width:min(var(--layout-dropdown-width-md), 100%);background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--dropdown-radius);padding:var(--dropdown-padding);z-index:var(--z-modal);box-shadow:var(--box-shadow-shade-2);gap:var(--dropdown-gap);flex-direction:column;display:flex;position:absolute;top:100%;left:0}.editor-header-left-confirmation .confirmation-message{font-size:var(--editor-font-size);color:var(--text-primary);margin:0;line-height:1.5}.editor-header-left-confirmation .confirmation-actions{gap:var(--button-gap);justify-content:flex-end;display:flex}.editor-header-left-confirmation .confirmation-btn{padding:var(--button-padding);font-size:var(--editor-font-size);cursor:pointer;border-radius:var(--button-radius);border:none}.editor-header-left-confirmation .confirmation-btn.confirm{background:var(--action-default);color:var(--primitive-white);min-width:var(--button-min-width);justify-content:center;align-items:center;display:flex}.editor-header-left-confirmation .confirmation-btn.confirm:hover:not(:disabled){opacity:.85}.editor-header-left-confirmation .confirmation-btn.confirm:disabled{cursor:not-allowed;opacity:.7}.editor-header-left-confirmation .confirmation-btn.cancel{color:var(--text-primary);border:1px solid var(--border-default);background:0 0}.editor-header-left-confirmation .confirmation-btn.cancel:hover{background:var(--surface-raised)}[data-cmp=dropdown-menu].menu{background:var(--surface-subtle);border:1px solid var(--border-subtle);width:100%;z-index:var(--z-modal);box-shadow:var(--dropdown-shadow);border-radius:var(--dropdown-radius);max-height:var(--layout-dropdown-height-md);margin:0;padding:0;position:absolute;top:0;left:0;overflow-y:auto}[data-cmp=dropdown-menu].menu .section ul{padding:0}[data-cmp=dropdown-menu].menu .menu-button{text-align:left;color:var(--text-primary);width:100%;padding:var(--dropdown-padding);font-size:var(--button-font-size);justify-content:space-between;align-items:center;display:flex}[data-cmp=dropdown-menu].menu .menu-button:disabled{cursor:not-allowed;opacity:.5}[data-cmp=dropdown-menu].menu .menu-button:not(:disabled):hover{cursor:pointer;background-color:var(--state-hover)}[data-cmp=dropdown-menu].menu .menu-button.selected{background-color:var(--state-selected)}[data-cmp=dropdown-menu].menu .item:first-child .menu-button{border-radius:var(--radius-sm) 0 0}[data-cmp=dropdown-menu].menu .item:last-child .menu-button{border-radius:0 0 var(--radius-sm)}[data-cmp=dropdown-menu].menu .spinner{border:2px solid var(--border-default);border-top-color:#0000;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin;display:inline-block}.import-branch-modal{width:100%;height:100%;z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.import-branch-modal .backdrop{z-index:1;opacity:.5;background:var(--primitive-black);width:100%;height:100%;position:absolute}.import-branch-modal .content{z-index:2;width:var(--layout-modal-width-lg);background:var(--surface-subtle);padding:var(--modal-padding-lg);align-items:center;gap:var(--modal-gap);box-shadow:var(--shadow-modal);border:1px solid var(--modal-border);border-radius:var(--default-radius);flex-direction:column;display:flex;position:relative}.import-branch-modal .content .errors{color:var(--status-error);border:1px solid var(--status-error);padding:var(--label-padding);font-size:var(--label-font-size);border-radius:var(--default-radius)}.import-branch-modal .close-btn{top:var(--modal-gap);right:var(--modal-gap);position:absolute}.import-branch-modal .message{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.import-branch-modal .message b{font-size:var(--title-font-size-md);padding-top:var(--title-padding-base)}.import-branch-modal .message p{text-align:center;width:80%;font-size:var(--label-font-size-md);color:var(--text-secondary);margin-bottom:0}.import-branch-modal .message.success{gap:var(--label-gap-lg);color:var(--action-default)}.import-branch-modal .dropzone{justify-content:center;align-items:center;gap:var(--label-gap-lg);width:80%;padding:var(--modal-padding-lg);border:1px dashed var(--border-subtle);border-radius:var(--default-radius);color:var(--text-secondary);cursor:pointer;background:0 0;flex-direction:column;display:flex}.import-branch-modal .dropzone b{color:var(--action-default)}.import-branch-modal .dropzone small{font-size:var(--label-font-size);color:var(--text-secondary)}.import-branch-modal .dropzone .filename{color:var(--text-primary);font-size:var(--label-font-size-md);word-break:break-all}.import-branch-modal .dropzone:hover,.import-branch-modal .dropzone.dragging{border-color:var(--action-default);background:var(--state-hover)}.import-branch-modal .file-input{display:none}.import-branch-modal .actions{align-items:center;gap:var(--button-gap);display:flex}.import-branch-modal .actions .btn{width:var(--button-width-lg);border-color:var(--surface-high);border-radius:var(--default-radius)}.import-branch-modal .actions .cancel{color:var(--text-primary)}[data-cmp=file-tree].file-tree{background:var(--surface-base);color:var(--text-primary);box-sizing:border-box;height:100%;padding:var(--panel-padding-y);margin:var(--panel-margin);flex-direction:column;display:flex;overflow:visible}[data-cmp=file-tree] .tree-content{flex-direction:column;flex:auto;min-height:0;margin-top:8px;display:flex;overflow:hidden auto}[data-cmp=file-tree] .empty-message{color:var(--text-secondary);padding-left:20px}[data-cmp=file-tree].root-drop-hover{border:1px solid var(--border-default);background:var(--state-hover)}[data-cmp=file-tree]:hover .accordion-header>.accordion-header-actions{opacity:1;visibility:visible;pointer-events:auto}[data-cmp=file-tree] .header-actions{z-index:var(--z-overlay);position:relative}[data-cmp=file-tree-folder].folder-nodes{font-size:var(--button-font-size);margin:0 0 0 8px;padding:0 0 0 8px;list-style:none;position:relative}[data-cmp=file-tree-folder].folder-nodes:before{content:"";background:var(--border-default);width:1px;position:absolute;top:0;bottom:0;left:0}[data-cmp=file-tree-folder].folder-nodes>li:last-child:after{content:"";background:var(--surface-base);width:1px;position:absolute;top:14px;bottom:0;left:-8px}[data-cmp=file-tree-folder].folder-nodes>li{padding:0;display:block;position:relative}[data-cmp=file-tree-folder].folder-nodes>li:before{content:"";background:var(--border-default);width:8px;height:1px;position:absolute;top:13px;left:-8px}[data-cmp=file-tree-node] .tree-node{-webkit-user-select:none;user-select:none;cursor:pointer;box-sizing:border-box;white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;width:100%;min-height:24px;padding:2px;line-height:22px;display:flex}[data-cmp=file-tree-node] .tree-node:hover{background-color:var(--state-hover)}[data-cmp=file-tree-node] .tree-node.selected{background-color:var(--state-hover);border:1px solid var(--state-selected)}[data-cmp=file-tree-node] .tree-node.is-root{display:none}[data-cmp=file-tree-node] .tree-node.dragging{opacity:.6}[data-cmp=file-tree-node] .tree-node.dragover-valid{background-color:var(--state-selected)}[data-cmp=file-tree-node] .tree-node.has-error .node-name{color:var(--status-error)}[data-cmp=file-tree-node] .node-name{text-overflow:ellipsis;min-width:0;overflow:hidden}[data-cmp=file-tree-node] .inline-rename-input{min-width:0;font:inherit;color:var(--text-primary);line-height:inherit;background:0 0;border:none;outline:none;flex:1}[data-cmp=file-tree-node] .inline-rename-input::selection{background:var(--color-secondary-light);color:var(--text-inverse)}[data-cmp=accordion-header].accordion-header{align-items:flex-start;gap:var(--button-gap);height:var(--panel-header-height);flex-shrink:0;margin:0;display:flex;position:relative}[data-cmp=accordion-header].accordion-header .accordion-header-toggle{min-width:0;color:var(--text-primary);align-items:center;gap:var(--button-gap);font-size:var(--label-font-size);flex:1;margin:0;padding:0;display:flex}[data-cmp=accordion-header].accordion-header .accordion-header-actions{z-index:var(--z-raised);align-items:flex-start;gap:var(--button-gap);opacity:0;visibility:hidden;pointer-events:none;padding-top:2px;transition:opacity .2s,visibility .2s;display:flex;position:relative}[data-cmp=accordion-header].accordion-header .accordion-header-actions button{margin:0;padding:0}[data-cmp=accordion-header].accordion-header .accordion-header-actions button:hover{background:var(--state-hover)}[data-cmp=accordion-header].accordion-header:hover .accordion-header-actions{opacity:1;visibility:visible;pointer-events:auto}[data-cmp=tooltip].container{--tooltip-arrow-size:6px;margin-top:var(--tooltip-arrow-size);padding:var(--label-padding);text-align:center;background:var(--surface-raised);border-radius:var(--default-radius);font-size:var(--label-font-size);z-index:var(--z-dropdown);position:absolute}[data-cmp=tooltip].container:before{content:"";border:var(--tooltip-arrow-size) solid transparent;border-top-width:0;border-bottom-color:var(--surface-raised);position:absolute;bottom:100%}[data-cmp=tooltip].container.centre{left:50%;transform:translate(-50%)}[data-cmp=tooltip].container.centre:before{left:50%;transform:translate(-50%)}[data-cmp=tooltip].container.left{left:0}[data-cmp=tooltip].container.left:before{left:var(--space-2)}[data-cmp=tooltip].container.right{right:0}[data-cmp=tooltip].container.right:before{right:var(--space-2)}[data-cmp=tooltip].container.small{width:var(--tooltip-width-sm)}[data-cmp=tooltip].container.medium{width:var(--tooltip-width-md)}[data-cmp=tooltip].container.large{width:var(--tooltip-width-lg)}[data-cmp=context-menu].base-context-menu{gap:var(--label-gap);top:var(--ctx-top,0);left:var(--ctx-left,0);background-color:var(--surface-subtle);border:1px solid var(--border-subtle);box-shadow:var(--dropdown-shadow);border-radius:var(--default-radius);padding:var(--label-padding);z-index:var(--z-dropdown);width:var(--layout-dropdown-width-base);color:var(--text-primary);flex-direction:column;display:flex;position:fixed}[data-cmp=context-menu] .base-menu-button{text-align:left;width:100%;padding:var(--button-padding);border-radius:var(--default-radius);color:var(--text-primary);cursor:pointer;font-size:var(--button-font-size);background:0 0;border:none}[data-cmp=context-menu] .base-menu-button:hover{background-color:var(--state-hover)}[data-cmp=context-menu] .base-menu-button:disabled{color:var(--text-secondary);cursor:not-allowed;opacity:.5}[data-cmp=context-menu] .base-menu-button:disabled:hover{background:0 0}[data-cmp=context-menu] .divider{border-top:1px solid var(--surface-elevated)}[data-cmp=context-menu] .menu-actions{justify-content:center;gap:var(--button-gap);padding:var(--panel-padding);display:flex}[data-cmp=context-menu] .delete-menu-button{padding:var(--button-padding);border-radius:var(--default-radius);color:var(--text-primary);cursor:pointer;font-size:var(--button-font-size);background:0 0;border:none;flex:none}[data-cmp=context-menu] .delete-menu-button:hover{background-color:var(--state-hover)}[data-cmp=context-menu] .delete-menu-button.ghost{background-color:var(--surface-overlay)}[data-cmp=context-menu] .delete-menu-button.ghost:hover{background-color:var(--surface-raised)}[data-cmp=context-menu] .delete-menu-button.danger{background-color:var(--status-error);color:var(--primitive-white)}[data-cmp=context-menu] .delete-menu-button.danger:hover{background-color:var(--status-error-hover)}[data-cmp=context-menu] .delete-menu-subtitle{text-align:center;padding:var(--button-padding);color:var(--text-secondary);font-size:var(--button-font-size)}.git-editor{padding:var(--panel-padding-y);margin:var(--panel-margin);background:var(--surface-base);gap:var(--panel-gap);border-top:1px solid var(--border-subtle);flex-direction:column;flex:1 1 0;min-height:0;display:flex;position:relative;overflow:hidden}.git-editor.collapsed{flex:none}.git-editor .content{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.git-editor .content>div{flex-direction:column;flex:1;min-height:0;display:flex}.git-editor .content [data-cmp=text-input].field:has(#commit-message){margin:0 0 var(--panel-gap) 0;padding:0}.git-editor .content [data-cmp=text-input].field:has(#commit-message) label{display:none}.git-editor .content [data-cmp=text-input].field:has(#commit-message) input{font-size:var(--panel-font-size);color:var(--text-secondary);padding:var(--input-padding);background:var(--surface-subtle);border-radius:var(--button-radius);border:none;margin:0}.git-editor .content [data-cmp=button-component].btn{font-size:var(--button-font-size);height:var(--button-height);color:var(--text-on-accent);border-radius:var(--button-radius)}.git-editor .button-text{align-items:center;gap:4px;display:flex}.git-editor .staged-section{min-height:0;font-size:var(--label-font-size-md);flex-direction:column;flex:auto;gap:8px;display:flex;overflow:hidden}.git-editor .files-list{gap:var(--label-gap-sm);min-height:0;margin-bottom:var(--toolbar-height);flex-direction:column;flex:1 1 0;padding:0;list-style:none;display:flex;overflow:hidden auto}.git-editor .file-item{align-items:center;gap:var(--button-gap);color:var(--text-secondary);display:flex}.git-editor .file-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--label-font-size);flex:1;overflow:hidden}.git-editor .file-status{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.git-editor .status-badge{font-size:var(--label-font-size);padding:var(--label-padding);border-radius:var(--button-radius);background-color:var(--surface-subtle);color:var(--text-secondary);font-weight:500}.git-editor .status-badge.status-staged{background-color:var(--action-default);color:var(--text-on-accent)}.git-editor .stage-btn,.git-editor .unstage-btn{padding:var(--label-padding);height:var(--label-height);background-color:var(--surface-subtle);border-radius:var(--button-radius);cursor:pointer;opacity:.7;color:var(--text-primary);border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .2s;display:flex}:is(.git-editor .stage-btn,.git-editor .unstage-btn):hover{opacity:1;background-color:var(--action-default)}:is(.git-editor .stage-btn,.git-editor .unstage-btn):active{opacity:.8}.git-editor .files-empty{color:var(--text-secondary);font-size:var(--loading-editor-fallback-size);flex:1 1 0;justify-content:center;align-items:center;display:flex}.git-editor .footer{width:100%;bottom:var(--panel-gap);background:var(--surface-base);justify-content:space-between;align-items:center;padding:0;display:flex;position:absolute}.git-editor .footer span{gap:var(--panel-gap);color:var(--text-secondary);font-size:var(--editor-font-size);align-items:center;display:flex}.git-editor .branch-actions{align-items:stretch;display:flex}.git-editor .branch-actions>button:hover{background-color:var(--surface-subtle)}[data-cmp=branch-modal].modal.modal{top:30vh;left:calc(50vw - var(--layout-modal-width-xs));width:var(--layout-modal-width-md);z-index:var(--z-modal);background:var(--surface-subtle);padding:var(--modal-padding-md);box-shadow:var(--modal-shadow);border:1px solid var(--modal-border);border-radius:var(--default-radius);gap:var(--modal-gap);flex-direction:column;display:flex;position:fixed}[data-cmp=branch-modal].modal [data-cmp=text-input].field>input{padding:var(--input-padding);background-color:var(--input-bg);border:1px solid var(--border-default);border-radius:var(--default-radius);margin:0;font-size:1rem}[data-cmp=branch-modal].modal .create-from{flex-direction:column;gap:8px;display:flex}[data-cmp=branch-modal].modal .branch-modal-content{gap:var(--panel-gap);flex-direction:column;display:flex}[data-cmp=branch-modal].modal .btn.branch-modal-button{height:auto;color:var(--text-primary);background:0 0;justify-content:flex-start;gap:8px;padding:8px 12px;font-size:14px}[data-cmp=branch-modal].modal .btn.branch-modal-button:hover:not(:disabled){background:var(--action-default);color:var(--text-on-accent);opacity:1}[data-cmp=branch-modal].modal .btn.branch-modal-button:disabled{opacity:.5}[data-cmp=branch-modal].modal .divider{border-top:1px solid var(--border-default)}[data-cmp=branch-modal].modal .branches{flex-direction:column;gap:6px;display:flex}[data-cmp=branch-modal].modal .subtitle{font-size:var(--label-font-size);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-weight:600}[data-cmp=branch-modal].modal .empty{font-size:var(--label-font-size);color:var(--text-secondary)}[data-cmp=branch-modal].modal .branch-list{gap:var(--label-gap);max-height:var(--layout-modal-height-xs);flex-direction:column;display:flex;overflow-y:auto}[data-cmp=branch-modal].modal .branch-row{align-items:center;gap:var(--label-gap);border-radius:var(--default-radius);display:flex}[data-cmp=branch-modal].modal .branch-item{padding:var(--button-padding);font-size:var(--button-font-size);text-align:left;color:var(--text-primary);border-radius:var(--default-radius);cursor:pointer;background:0 0;border:none;flex:1}[data-cmp=branch-modal].modal .branch-item:hover{background:var(--link-hover)}[data-cmp=branch-modal].modal .branch-item.current{opacity:.75;cursor:default}[data-cmp=branch-modal].modal .branch-item.selected{background:var(--link-hover)}[data-cmp=branch-modal].modal .branch-delete{padding:var(--label-padding);color:var(--text-secondary);cursor:pointer;border-radius:var(--default-radius);background:0 0;border:none;justify-content:center;align-items:center;display:flex}[data-cmp=branch-modal].modal .branch-delete:hover:not(:disabled){background:var(--link-hover);color:var(--text-primary)}[data-cmp=branch-modal].modal .branch-delete:disabled{opacity:.4;cursor:not-allowed}[data-cmp=branch-modal].modal .back-btn{padding:var(--label-padding);font-size:var(--label-font-size);color:var(--text-secondary);border-radius:var(--default-radius);cursor:pointer;background:0 0;border:none;align-self:flex-end}[data-cmp=branch-modal].modal .back-btn:hover:not(:disabled){background-color:var(--state-hover)}[data-cmp=branch-modal].modal .error-msg{padding:var(--label-padding);font-size:var(--label-font-size);color:var(--status-error-hover);background:var(--status-error-bg);border-radius:var(--default-radius);margin:0}[data-cmp=merge-modal].modal{width:320px;z-index:var(--z-modal);background:var(--surface-subtle);box-shadow:var(--modal-shadow);border:1px solid var(--surface-elevated);border-radius:var(--default-radius);gap:var(--modal-gap);flex-direction:column;padding:16px;display:flex;position:fixed;top:30vh;left:calc(50vw - 160px)}[data-cmp=merge-modal].modal.wide{width:min(900px,90vw);max-height:80vh;top:10vh;left:50%;overflow:hidden;transform:translate(-50%)}[data-cmp=merge-modal] .subtitle{font-size:var(--label-font-size);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-weight:600}[data-cmp=merge-modal] .content{flex-direction:column;gap:4px;max-height:160px;display:flex;overflow-y:auto}[data-cmp=merge-modal] .branch-name{color:var(--text-primary)}[data-cmp=merge-modal] .btn.action-btn{justify-content:flex-start;gap:var(--button-gap);height:auto;color:var(--text-primary);background:0 0}[data-cmp=merge-modal] .btn.action-btn.back-btn{color:var(--text-primary)}[data-cmp=merge-modal] .empty{color:var(--text-secondary);font-size:14px}[data-cmp=merge-modal] .delete-checkbox{align-items:center;gap:var(--button-gap);font-size:var(--button-font-size);color:var(--text-primary);cursor:pointer;padding:var(--panel-padding-y);display:flex}[data-cmp=merge-modal] .diff-pane{min-height:0;padding:var(--label-padding);background:var(--surface-subtle);border-radius:var(--default-radius);scrollbar-color:var(--action-default) var(--surface-subtle);flex:auto;overflow-y:auto}[data-cmp=merge-modal] .diff-pane::-webkit-scrollbar-track{background:var(--surface-subtle);border-radius:var(--default-radius)}[data-cmp=merge-modal] .diff-pane::-webkit-scrollbar-thumb{background:var(--surface-overlay);border-radius:var(--default-radius)}[data-cmp=merge-modal] .diff-actions{gap:var(--button-gap);border-top:1px solid var(--surface-overlay);flex-direction:column;padding-top:12px;display:flex}[data-cmp=merge-modal] .diff-actions .button-row{justify-content:flex-end;gap:var(--button-gap);display:flex}[data-cmp=merge-modal] .btn.confirm-btn{background:var(--action-default);font-weight:var(--font-weight-medium);justify-content:center}[data-cmp=merge-modal] .btn.confirm-btn:hover:not(:disabled){background:var(--action-hover)}[data-cmp=merge-modal] .btn.confirm-btn:disabled{opacity:.5;cursor:not-allowed}[data-cmp=file-git-diff].file-git-diff-container{gap:var(--label-gap);width:100%;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-md);background:var(--surface-subtle);flex-direction:column;display:flex}[data-cmp=file-git-diff].file-git-diff-container .branch-header{padding:var(--panel-padding-y);background:var(--surface-subtle);justify-content:space-between;align-items:center;display:flex}[data-cmp=file-git-diff].file-git-diff-container .branch-label{align-items:center;gap:var(--label-gap);display:inline-flex}[data-cmp=file-git-diff].file-git-diff-container .branch-name{padding:var(--label-padding);border-radius:var(--default-radius);background:var(--surface-raised);color:var(--text-primary)}[data-cmp=file-git-diff].file-git-diff-container .branch-arrow{color:var(--text-secondary)}[data-cmp=file-git-diff].file-git-diff-container .file-count{color:var(--text-secondary);font-size:var(--font-size-sm)}[data-cmp=file-git-diff].file-git-diff-container .empty-message{text-align:center;color:var(--text-secondary);background:var(--surface-subtle);border:1px dashed var(--color-overlay-border-subtle);border-radius:var(--default-radius);margin:0;padding:16px}[data-cmp=file-git-diff].file-git-diff-container .file-list{gap:var(--label-gap);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}[data-cmp=file-git-diff].file-git-diff-container .diff-file{border-radius:var(--default-radius);background:var(--surface-raised);overflow:hidden}[data-cmp=file-git-diff].file-git-diff-container .file-header{background:var(--surface-elevated);border-bottom:1px solid var(--color-overlay-border-subtle);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}[data-cmp=file-git-diff].file-git-diff-container .file-path{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}[data-cmp=file-git-diff].file-git-diff-container .rename-from{color:var(--text-secondary);margin-left:6px;font-style:italic}[data-cmp=file-git-diff].file-git-diff-container .file-status{padding:var(--label-padding);border-radius:var(--default-radius);font-size:var(--label-font-size-xs);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}[data-cmp=file-git-diff].file-git-diff-container .file-status[data-status=added]{background:var(--diff-added-bg);color:var(--diff-added-fg)}[data-cmp=file-git-diff].file-git-diff-container .file-status[data-status=deleted]{background:var(--diff-deleted-bg);color:var(--diff-deleted-fg)}[data-cmp=file-git-diff].file-git-diff-container .file-status[data-status=modified]{background:var(--diff-hunk-bg);color:var(--diff-modified-fg)}[data-cmp=file-git-diff].file-git-diff-container .file-status[data-status=renamed]{background:var(--diff-renamed-bg);color:var(--diff-renamed-fg)}[data-cmp=file-git-diff].file-git-diff-container .patch-body{font-family:var(--font-mono);font-size:var(--font-size-sm);background:var(--surface-raised);padding:var(--panel-padding-y);line-height:1.45;overflow-x:auto}[data-cmp=file-git-diff].file-git-diff-container .patch-body-lines{width:max-content;min-width:100%}[data-cmp=file-git-diff].file-git-diff-container .patch-line{white-space:pre;min-height:1.45em;color:var(--text-secondary);padding:0 12px;display:block}[data-cmp=file-git-diff].file-git-diff-container .patch-line[data-kind=added]{background:var(--diff-added-bg);color:var(--diff-added-fg)}[data-cmp=file-git-diff].file-git-diff-container .patch-line[data-kind=deleted]{background:var(--diff-deleted-bg);color:var(--diff-deleted-fg)}[data-cmp=file-git-diff].file-git-diff-container .patch-line[data-kind=hunk]{background:var(--diff-hunk-bg);color:var(--text-secondary)}[data-cmp=file-git-diff].file-git-diff-container .patch-line[data-kind=marker]{color:var(--text-disabled);font-style:italic}[data-cmp=file-git-diff].file-git-diff-container .patch-line[data-kind=context]{color:var(--text-secondary)}.editor-side-panel-left{flex-direction:column;height:100%;display:flex}.editor-side-panel-left .file-tree{flex:calc(var(--file-tree-grow,.6) * 100) 1 0;height:auto;min-height:0}.editor-side-panel-left .git-editor{flex:calc(var(--git-editor-grow,.4) * 100) 1 0}.editor-side-panel-left .file-tree.collapsed,.editor-side-panel-left .git-editor.collapsed{flex:none}.editor-side-panel-left .resize-handle{flex:none;height:4px}.editor-side-panel-left .resize-handle+.git-editor{border-top:none}.editor-side-panel-left .side-panel-footer{margin-top:auto}.editor-header-right{padding:var(--panel-padding-md);border-bottom:1px solid var(--border-subtle);gap:var(--panel-gap);justify-content:space-between;align-items:center;display:flex}.editor-header-right .collapsible-button,.editor-header-right .llm-header{border-radius:var(--default-radius);align-items:center;display:flex}.editor-header-right .collapsible-button:hover{background-color:var(--surface-subtle)}.llm-chat-panel{min-width:0;min-height:0;padding:var(--panel-padding);background:var(--surface-base);gap:var(--panel-gap);flex-direction:column;flex:1 1 0;display:flex}.llm-chat-panel .chat-title{font-size:var(--panel-font-size);color:var(--text-primary)}.llm-chat-panel .messages{gap:var(--panel-gap);flex-direction:column;flex:1 1 0;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.llm-chat-panel .message{padding:var(--input-padding);border-radius:var(--button-radius);font-size:var(--button-font-size);flex-direction:column;gap:4px;display:flex}.llm-chat-panel .message.message-user{background:var(--surface-subtle);color:var(--text-primary);align-self:flex-end;max-width:80%}.llm-chat-panel .message.message-assistant{background:var(--surface-base);color:var(--text-secondary);align-self:flex-start;max-width:80%}.llm-chat-panel .message.pending{opacity:.8}.llm-chat-panel .role-label{font-size:var(--label-font-size);color:var(--text-secondary);font-weight:600}.llm-chat-panel .content{white-space:pre-wrap;word-break:break-word;margin:0}.llm-chat-panel .input-row{gap:var(--button-gap);padding:var(--panel-padding-y);flex-shrink:0;align-items:stretch;display:flex;position:relative}.llm-chat-panel .prompt-input{resize:none;min-width:0;padding:var(--input-padding);font-size:var(--default-font-size);color:var(--text-primary);background:var(--surface-subtle);border-radius:var(--button-radius);border:none;flex:auto;font-family:inherit}.llm-chat-panel .prompt-input:disabled{opacity:.6;cursor:not-allowed}.llm-chat-panel .prompt-input:focus{outline:1px solid var(--action-default)}.llm-chat-panel .send-btn{bottom:var(--panel-gap);right:calc(var(--panel-gap) / 2);padding:var(--label-padding);font-size:var(--button-font-size);color:var(--text-on-accent);background:var(--action-default);border-radius:var(--button-radius);cursor:pointer;border:none;align-items:center;display:flex;position:absolute}.llm-chat-panel .send-btn:disabled{opacity:.5;cursor:not-allowed}.llm-chat-panel .send-btn:hover:not(:disabled){opacity:.9}.llm-chat-panel .llm-footer{font-size:var(--font-size-sm)}.editor-side-panel-right{flex-direction:column;height:100%;display:flex}.file-editor{background:var(--surface-base);box-shadow:var(--box-shadow-shade-1);box-sizing:border-box;width:100%;height:100%;z-index:var(--z-base);flex-direction:column;display:flex;position:relative}.file-editor .highlighted-line{background-color:var(--state-selected);animation:2s ease-in-out fadeHighlight}.file-editor .highlighted-line-glyph{background-color:var(--state-selected)}.file-editor .remote-cursor{pointer-events:none;position:relative}.file-editor .remote-cursor-caret{width:2px;height:var(--remote-cursor-height);background:var(--remote-cursor-color)}.file-editor .remote-cursor-label{background:var(--remote-cursor-color);color:var(--primitive-white);font-family:var(--font-sans);white-space:nowrap;border-radius:3px 3px 3px 0;padding:0 4px;font-size:11px;line-height:16px;position:absolute;top:0;left:0;transform:translateY(-100%)}.file-editor .remote-cursor-label.remote-cursor-label-below{transform:translateY(var(--remote-cursor-height));border-radius:0 3px 3px}.file-editor [data-cmp=file-editor-container].file-editor-container{min-height:0;display:var(--editor-display,none);flex:auto}@keyframes fadeHighlight{0%{background-color:var(--state-selected)}to{background-color:var(--state-selected)}}.file-editor .monaco-editor .suggest-widget{width:min(80vw,600px)!important}.file-editor .monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents .main,.file-editor .monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents .main>.left,.file-editor .monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents .main>.left>.monaco-icon-label,.file-editor .monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents .main>.left>.monaco-icon-label>.monaco-icon-label-container,.file-editor .monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents .main>.left>.signature-label{text-overflow:clip!important;white-space:nowrap!important;max-width:none!important;overflow:visible!important}.file-editor-header{justify-content:space-between;align-items:center;gap:var(--layout-gap-md);padding:8px 12px;display:flex}.file-editor-header .path{align-items:center;gap:var(--layout-gap-sm);min-width:0;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;flex:auto;display:flex;overflow:hidden}.file-editor-header .muted{color:var(--text-disabled)}.file-editor-header .header-right{justify-content:right;align-items:center;gap:var(--panel-gap);display:flex}.file-editor-header .header-right [data-cmp=button-component].btn{font-size:var(--font-size-sm)}.file-editor-header .header-right .maximize-btn{justify-content:center;align-items:center;display:flex}.file-editor-header .header-right .maximize-btn:hover{background-color:var(--surface-subtle)}.file-editor-header .preview-btn{appearance:none;font:inherit;font-size:var(--font-size-xs);cursor:pointer;background:var(--surface-subtle);color:var(--text-secondary);border:none;border-radius:6px;padding:4px 10px}.file-editor-header .preview-btn:hover{background:var(--surface-raised)}.file-editor-header .maximize-btn-wrapper{justify-content:center;align-items:center;display:flex;position:relative}.file-editor-header .maximize-btn-wrapper [data-cmp=tooltip].container{top:100%}.file-editor-fallback{background:var(--surface-base);color:var(--text-primary);font-size:var(--font-size-lg);border:.5px dashed var(--border-default);flex:auto;justify-content:center;align-items:center;margin:12px;display:flex}.readme-preview{background:var(--surface-base);min-height:0;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-md);flex:auto;width:100%;line-height:1.6;overflow:auto}.readme-preview .readme-preview-status{justify-content:center;align-items:center;gap:var(--layout-gap-sm);flex-direction:column;height:100%;display:flex}.readme-preview .readme-preview-error{color:var(--text-secondary)}.readme-preview .readme-preview-content{text-align:left;overflow-wrap:anywhere;word-break:break-word;flex:auto;width:100%;min-width:0;height:100%;margin:0;padding:24px;display:block}.readme-preview .readme-preview-content h1,.readme-preview .readme-preview-content h2,.readme-preview .readme-preview-content h3,.readme-preview .readme-preview-content h4,.readme-preview .readme-preview-content h5,.readme-preview .readme-preview-content h6{font-weight:var(--font-weight-semibold);margin:24px 0 16px;line-height:1.25}.readme-preview .readme-preview-content h1{font-size:var(--font-size-2xl);border-bottom:1px solid var(--border-subtle);padding-bottom:8px}.readme-preview .readme-preview-content h2{font-size:var(--font-size-xl);border-bottom:1px solid var(--border-subtle);padding-bottom:8px}.readme-preview .readme-preview-content h3{font-size:var(--font-size-lg)}.readme-preview .readme-preview-content>:first-child{margin-top:0}.readme-preview .readme-preview-content p,.readme-preview .readme-preview-content ul,.readme-preview .readme-preview-content ol,.readme-preview .readme-preview-content blockquote,.readme-preview .readme-preview-content table,.readme-preview .readme-preview-content pre{margin:0 0 16px}.readme-preview .readme-preview-content ul,.readme-preview .readme-preview-content ol{padding-left:24px}.readme-preview .readme-preview-content li+li{margin-top:4px}.readme-preview .readme-preview-content a{color:var(--link-default);text-decoration:none}.readme-preview .readme-preview-content a:hover{color:var(--link-hover);text-decoration:underline}.readme-preview .readme-preview-content code{font-family:var(--font-mono);background:var(--surface-raised);border-radius:6px;padding:2px 6px;font-size:85%}.readme-preview .readme-preview-content pre{background:var(--surface-raised);border-radius:6px;padding:16px;overflow-x:auto}.readme-preview .readme-preview-content pre code{background:0 0;padding:0;font-size:100%}.readme-preview .readme-preview-content blockquote{color:var(--text-secondary);border-left:4px solid var(--border-default);padding:0 16px}.readme-preview .readme-preview-content table{border-collapse:collapse;width:100%}.readme-preview .readme-preview-content th,.readme-preview .readme-preview-content td{border:1px solid var(--border-subtle);padding:6px 13px}.readme-preview .readme-preview-content th{background:var(--surface-subtle);font-weight:var(--font-weight-semibold)}.readme-preview .readme-preview-content img{max-width:100%}.readme-preview .readme-preview-content hr{background:var(--border-subtle);border:0;height:1px;margin:24px 0}[data-cmp=file-editor-footer].status-bar{background-color:var(--surface-subtle);height:22px;color:var(--text-secondary);font-size:var(--font-size-xs);font-family:var(--font-sans);justify-content:flex-end;align-items:center;gap:var(--layout-gap-md);flex-shrink:0;padding:0 10px;display:flex}[data-cmp=file-editor-footer].status-bar .status-item{cursor:default;align-items:center;display:flex}[data-cmp=file-editor-footer].status-bar .status-item.left{text-overflow:ellipsis;white-space:nowrap;margin-right:auto;overflow:hidden}.object-toolbar{background:var(--surface-base);container-type:inline-size}.object-toolbar .object-toolbar-content{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:.25rem;padding:1.75rem .5rem .25rem;display:flex}.object-toolbar .object-toolbar-content>.object-toolbar-button{background:var(--toolbar-bg);color:var(--text-secondary);font-size:var(--label-font-size);padding:var(--button-padding);border-radius:var(--button-radius)}.object-toolbar .object-toolbar-content>.object-toolbar-button:hover{color:var(--text-primary);border:1px solid var(--action-default);margin:-1px}.object-toolbar .object-toolbar-too-small{color:var(--text-secondary);font-size:var(--label-font-size);margin:0;padding:.5rem;display:none}@container (width<=240px){.object-toolbar .object-toolbar-content{display:none}.object-toolbar .object-toolbar-too-small{display:block}}.object-buttons{flex-flow:wrap;align-items:flex-start;gap:1.75rem .25rem;display:flex}.object-buttons .object-toolbar-button{background:var(--toolbar-bg);color:var(--text-secondary);font-size:var(--label-font-size);padding:var(--button-padding);border-radius:var(--button-radius)}.object-buttons .object-toolbar-button:hover{color:var(--text-primary);border:1px solid var(--action-default);margin:-1px}.object-buttons .object-toolbar-button-active{background:var(--action-default);color:var(--text-on-accent);cursor:pointer;border-radius:var(--button-radius);padding:.25rem 1rem;font-size:.8rem}.object-form{flex-flow:wrap;align-items:flex-start;gap:1.75rem .25rem;display:flex}.object-form .object-toolbar-button-active{background:var(--action-default);color:var(--text-on-accent);cursor:pointer;border-radius:var(--button-radius);padding:.25rem 1rem;font-size:.8rem}.object-form [data-cmp=button-component].btn{background:var(--button-bg);width:auto;font-size:var(--label-font-size);padding:var(--button-padding);border-radius:var(--button-radius);flex:none}.object-form form{flex-flow:wrap;justify-content:flex-start;align-items:flex-start;gap:1.75rem .25rem;display:flex}.object-form form [data-cmp=text-input].field,.object-form form [data-cmp=picker-input].field{flex:none;width:9rem}.object-form form [data-cmp=numeric-input].field{flex:none;width:7rem}.object-form form [data-cmp=text-input].field{position:relative}.object-form form input,.object-form form [data-cmp=text-input].field>input,.object-form form [data-cmp=numeric-input].field>input,.object-form form [data-cmp=picker-input].field>input{background:var(--toolbar-bg);border:none;padding:.25rem;font-size:.8rem}.object-form form label,.object-form form [data-cmp=text-input].field>label,.object-form form [data-cmp=numeric-input].field>label,.object-form form [data-cmp=picker-input].field>label{color:var(--text-secondary);opacity:.5;padding:0 .5rem;font-size:.8rem;transition:all .2s;top:.15rem}.object-form form [data-cmp=text-input].field>label{position:absolute}.object-form form [data-cmp=text-input].field:focus-within>label,.object-form form [data-cmp=numeric-input].field:focus-within>label,.object-form form [data-cmp=picker-input].field:focus-within>label{color:var(--color-secondary-light);background:var(--toolbar-bg);opacity:1;font-size:.7rem;top:-.8rem}.object-form form [data-cmp=text-input].field:has(.active)>label{color:var(--color-secondary-light);background:var(--toolbar-bg);opacity:1;font-size:.7rem;top:-.8rem}.object-form form [data-cmp=numeric-input].field:has(.active)>label{color:var(--color-secondary-light);background:var(--toolbar-bg);opacity:1;font-size:.7rem;top:-.8rem}.object-form form [data-cmp=picker-input].field:has(.active)>label{color:var(--color-secondary-light);background:var(--toolbar-bg);opacity:1;font-size:.7rem;top:-.8rem}.object-form form [data-cmp=numeric-input].field .spinner-wrapper,.object-form form [data-cmp=picker-input].field>button{background:var(--toolbar-bg)}.object-form form .error-message{color:var(--status-error);margin:0;font-size:.75rem}.object-form form [data-cmp=text-input].field>.error-message,.object-form form [data-cmp=numeric-input].field>.error-message,.object-form form [data-cmp=picker-input].field>.error-message{background:var(--status-error);color:var(--input-text);padding:0 .25rem;position:absolute;top:-2rem}[data-cmp=picker-input].field{align-items:center;width:100%;display:flex;position:relative}[data-cmp=picker-input].field label{pointer-events:none;z-index:1;color:var(--text-secondary);font-size:14px;transition:all .2s;position:absolute;top:2px;left:0}[data-cmp=picker-input].field:focus-within label{color:var(--color-secondary-light);font-size:14px;top:-20px}[data-cmp=picker-input].field:has(input.active) label{color:var(--color-secondary-light);font-size:14px;top:-20px}[data-cmp=picker-input].field input{width:auto;min-width:0;color:var(--text-primary);box-sizing:border-box;appearance:textfield;background:0 0;border:none;flex:1;padding:4px 0;font-size:14px;transition:border-color .2s}[data-cmp=picker-input].field input:disabled{background-color:var(--neutral-translucent-sm);color:var(--neutral-translucent-lg);border-color:var(--primitive-gray-200);cursor:not-allowed}[data-cmp=picker-input].field input:disabled::placeholder{color:var(--neutral-translucent-lg)}[data-cmp=picker-input].field:focus-within input{border:none;outline:none}[data-cmp=picker-input].field button{height:100%;color:var(--color-primary);background:var(--surface-base);padding:3px;display:flex}[data-cmp=picker-input].field .error-message{color:var(--status-error);margin-top:0;font-size:12px;position:absolute;top:24px;left:0}[data-cmp=picker-input].field.error input{border-color:var(--status-error)}[data-cmp=picker-input].field.error label,[data-cmp=picker-input].field.error .error-message{color:var(--status-error)}[data-cmp=numeric-input].field{background:var(--surface-base);width:100%;display:block;position:relative}[data-cmp=numeric-input].field label{pointer-events:none;z-index:1;color:var(--text-secondary);font-size:14px;transition:all .2s;position:absolute;top:2px;left:0}[data-cmp=numeric-input].field:focus-within label{color:var(--color-secondary-light);font-size:14px;top:-20px}[data-cmp=numeric-input].field:has(.active) label{color:var(--color-secondary-light);font-size:14px;top:-20px}[data-cmp=numeric-input].field .input-wrapper{flex-direction:row;align-items:stretch;width:100%;display:flex}[data-cmp=numeric-input].field input{width:auto;min-width:0;color:var(--text-primary);background:var(--surface-subtle);box-sizing:border-box;appearance:textfield;border:none;flex:1;padding:4px;font-size:14px;transition:border-color .2s}[data-cmp=numeric-input].field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}[data-cmp=numeric-input].field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}[data-cmp=numeric-input].field input:focus{border-color:var(--color-primary);outline:none}[data-cmp=numeric-input].field input::placeholder{color:var(--text-secondary);opacity:.5}[data-cmp=numeric-input].field input:disabled{background-color:var(--neutral-translucent-sm);color:var(--neutral-translucent-lg);border-color:var(--primitive-gray-200);cursor:not-allowed}[data-cmp=numeric-input].field input:disabled::placeholder{color:var(--neutral-translucent-lg)}[data-cmp=numeric-input].field .spinner-wrapper{flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;display:flex}[data-cmp=numeric-input].field .spinner-wrapper button{cursor:pointer;min-height:0;color:var(--color-secondary);flex:1;justify-content:center;align-items:center;padding:0 4px;line-height:0;display:flex}[data-cmp=numeric-input].field .spinner-wrapper:hover:not(:disabled){opacity:.85}[data-cmp=numeric-input].field .spinner-wrapper:disabled{cursor:not-allowed;opacity:.4}[data-cmp=numeric-input].field .error-message{color:var(--status-error);margin-top:0;font-size:12px;position:absolute;left:0}[data-cmp=numeric-input].field.error input{border-color:var(--status-error)}[data-cmp=numeric-input].field.error label,[data-cmp=numeric-input].field.error .numeric-input-error-message{color:var(--status-error)}.notification-stack{top:var(--space-11);right:var(--space-5);z-index:var(--z-overlay);width:350px;position:fixed}.notification-stack .stack-list{flex-direction:column;gap:30px;display:flex}.notification-stack .stack-item{padding-bottom:var(--pb,0px);transition:padding-bottom .18s;position:relative}[data-cmp=errors-stack].stack-shell{width:100%;position:relative}[data-cmp=errors-stack] .header{z-index:30;justify-content:flex-end;gap:8px;display:flex;position:absolute;top:-30px;right:0}[data-cmp=errors-stack] .front-card{z-index:20;cursor:var(--cursor,default);position:relative}[data-cmp=errors-stack] .placeholder{top:var(--ph-top,0);z-index:var(--ph-z,0);position:absolute;left:0;right:0}[data-cmp=errors-stack] .placeholder-blank{width:var(--ph-w,100%);height:var(--ph-h,auto);background:var(--color-overlay-subtle);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-overlay-border-subtle);box-shadow:var(--box-shadow-shade-5);border-radius:12px}[data-cmp=errors-stack] .overlay{z-index:25;flex-direction:column;gap:5px;display:flex;position:absolute;top:calc(100% + 5px);left:0;right:0}[data-cmp=errors-stack] .expanded-item{position:relative}[data-cmp=errors-stack] .clear-all,[data-cmp=errors-stack] .collapse-btn{color:var(--text-primary);background:var(--surface-raised);cursor:pointer;box-shadow:var(--box-shadow-shade-4);border:none;border-radius:12px;padding:4px 12px;font-size:12px}:is([data-cmp=errors-stack] .clear-all,[data-cmp=errors-stack] .collapse-btn):hover{filter:brightness(1.3)}[data-cmp=notification-card].card-wrapper{max-width:var(--max-w,350px);width:var(--w,350px);position:relative}[data-cmp=notification-card] .alert-badge{z-index:2;position:absolute;top:-8px;left:-8px}[data-cmp=notification-card] .close-btn{border:1px solid var(--color-overlay-border);background:var(--color-overlay-card);width:20px;height:20px;color:var(--text-primary);cursor:pointer;z-index:1;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;transition:opacity .2s .15s;display:flex;position:absolute;top:-8px;left:-8px}[data-cmp=notification-card].card-wrapper:hover .close-btn{opacity:1;pointer-events:auto}[data-cmp=notification-card] .card{background:var(--color-overlay-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-overlay-border-subtle);box-shadow:var(--box-shadow-shade-3);cursor:default;color:var(--text-primary);border-radius:12px;align-items:center;gap:15px;padding:10px 12px;display:flex}[data-cmp=notification-card] .card h3,[data-cmp=notification-card] .card p{margin:0}[data-cmp=notification-card] .card h3{font-size:var(--label-font-size-md)}[data-cmp=notification-card] .card p{font-size:var(--label-font-size);color:var(--text-secondary)}[data-cmp=notification-card] .icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}[data-cmp=notification-card] .body{flex-direction:column;gap:2px;min-width:0;display:flex}[data-cmp=notification-card] .description{max-height:var(--desc-max-h,none);white-space:pre-line;transition:max-height .3s;overflow:hidden}[data-cmp=notification-card] .show-more{font-size:var(--label-font-size);color:var(--text-primary);background:var(--surface-raised);cursor:pointer;opacity:0;pointer-events:none;border:none;border-radius:4px;align-self:flex-end;margin-top:4px;padding:2px 8px;transition:opacity .2s .15s}[data-cmp=notification-card] .show-more:hover{filter:brightness(1.3)}[data-cmp=notification-card].card-wrapper:hover .show-more{opacity:1;pointer-events:auto}[data-cmp=alert-counter].badge{background:var(--alert-counter-bg);color:var(--alert-counter-text);font-weight:700;font-size:var(--alert-counter-font-size);width:var(--alert-counter-diameter);height:var(--alert-counter-diameter);-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex}[data-cmp=alert-counter].badge.announce{animation:.4s ease-out alertPop}@keyframes alertPop{0%{transform:scale(1)}20%{transform:scale(1.5)}to{transform:scale(1)}}.full-editor{grid-template-columns:var(--left-col,1fr) 4px var(--center-col,3fr) 4px var(--right-col,1fr);height:100vh;display:grid}.full-editor.llm-panel-hidden{grid-template-columns:var(--left-col,1fr) 4px var(--center-col,3fr)}.full-editor>*{min-width:0;min-height:0}.full-editor>.resize-handle:has(+.right-pane){justify-content:start}.full-editor>.resize-handle:has(+.right-pane) .drag-icon{margin-left:4px}.full-editor .center-pane{flex-direction:column;min-height:0;display:flex}.full-editor .center-pane .toolbar-and-ai-button{margin-right:var(--panel-gap);flex:none;align-items:start;display:flex}.full-editor .center-pane .toolbar-and-ai-button .toolbar-wrapper{width:100%}.full-editor .center-pane .toolbar-and-ai-button .ai-button{font-size:var(--default-font-size);align-items:center;gap:var(--label-gap);color:var(--color-secondary-light);padding:var(--panel-padding-md);border-radius:var(--default-radius);display:flex}.full-editor .center-pane .toolbar-and-ai-button .ai-button:hover{background-color:var(--surface-subtle)}.full-editor .center-pane>.file-editor{flex:auto;min-height:0}.three-d-viewer{background:var(--surface-base);width:100%;height:100%;z-index:var(--z-base);position:relative;overflow:hidden}.three-d-viewer canvas{width:100%;height:100%;display:block}.three-d-viewer canvas:focus{outline:none}.three-d-viewer .viewer-loading{top:var(--space-4);left:var(--space-4);z-index:var(--z-raised);align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--loading-editor-font-size);display:flex;position:absolute}.three-d-viewer .viewer-error{z-index:var(--z-raised);gap:var(--space-3);text-align:center;color:var(--text-secondary);justify-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.three-d-viewer .viewer-error .error-title{font-size:var(--loading-editor-fallback-size);margin:0}.three-d-viewer .viewer-error .error-detail{font-size:var(--label-font-size);max-width:40ch;margin:0}.three-d-viewer-toolbar{top:var(--panel-gap);right:var(--panel-gap);z-index:var(--z-raised);align-items:center;gap:var(--button-gap);display:flex;position:absolute}.three-d-viewer-toolbar .toolbar-button-wrapper{position:relative}.three-d-viewer-toolbar .toolbar-button{padding:var(--space-3);background:var(--surface-raised);border-radius:50%;justify-content:center;align-items:center;display:flex}.three-d-viewer-toolbar .toolbar-button:hover{background:var(--surface-elevated)}.three-d-viewer-toolbar [data-cmp=tooltip].container{top:100%;right:22.5%}.editor-layout{flex-direction:column;height:100vh;display:flex}.editor-body{flex:1 1 0;min-width:0;min-height:0}.editor-navbar{height:var(--toolbar-height);background:var(--surface-base);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:var(--default-padding-x);justify-content:space-between;align-items:center;display:flex}.editor-navbar button{font-size:var(--default-font-size);color:var(--text-primary);margin:0}.editor-navbar .navbar-metadata,.editor-navbar .navbar-actions{align-items:center;gap:var(--default-gap);display:flex}.editor-navbar .title{align-items:baseline;gap:var(--default-gap);display:flex}.editor-navbar .view-switch,.editor-navbar .logout{cursor:pointer;background:var(--surface-subtle);padding:var(--button-padding);border-radius:var(--default-radius);font-size:var(--button-font-size)}:is(.editor-navbar .view-switch,.editor-navbar .logout):hover{background-color:var(--state-hover)}.object-viewer{width:100%;height:100%}.combined-editor{grid-template-columns:var(--left-col,1fr) 4px var(--center-col,3fr) 4px var(--right-col,1fr);height:100vh;display:grid}.combined-editor.llm-panel-hidden{grid-template-columns:var(--left-col,1fr) 4px var(--center-col,3fr)}.combined-editor>*{min-width:0;min-height:0}.combined-editor>.resize-handle:has(+.right-pane){justify-content:start}.combined-editor>.resize-handle:has(+.right-pane) .drag-icon{margin-left:4px}.combined-editor .center-panes{grid-template-rows:var(--top-row,3fr) 4px var(--bottom-row,2fr);display:grid}.combined-editor .center-panes>*{min-width:0;min-height:0}.combined-editor .center-panes .bottom-pane{flex-direction:column;height:100%;min-height:0;display:flex;position:relative}.combined-editor .center-panes .bottom-pane .toolbar-and-ai-button{margin-right:var(--panel-gap);align-items:start;display:flex}.combined-editor .center-panes .bottom-pane .toolbar-and-ai-button .toolbar-wrapper{width:100%}.combined-editor .center-panes .bottom-pane .toolbar-and-ai-button .ai-button{font-size:var(--default-font-size);align-items:center;gap:var(--label-gap);color:var(--color-secondary-light);padding:var(--panel-padding-md);border-radius:var(--default-radius);display:flex}.combined-editor .center-panes .bottom-pane .toolbar-and-ai-button .ai-button:hover{background-color:var(--surface-subtle)}.combined-editor .center-panes .bottom-pane>.object-toolbar{flex:none}.combined-editor .center-panes .bottom-pane>.file-editor{flex:auto;min-height:0}
