@charset "UTF-8";:root{color-scheme:dark;--bg-primary: #050505;--bg-secondary: #0a0a0a;--bg-elevated: #111111;--bg-input: #0c0c0c;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--text-muted: #71717a;--border-color: #1c1c1c;--border-strong: #2a2a2a;--accent-color: #64ffda;--accent-color-hover: #52e0c0;--accent-opacity: rgba(100, 255, 218, .08);--accent-glow: rgba(100, 255, 218, .18);--danger: #fb7185;--danger-opacity: rgba(251, 113, 133, .12);--warning: #fbbf24;--success: #64ffda;--header-bg: rgba(5, 5, 5, .82);--header-shadow: rgba(0, 0, 0, .55);--sidebar-width: 268px;--header-height: 58px;--workspace-height: clamp(320px, calc(100dvh - var(--header-height) - 240px), 920px);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 8px 30px rgba(0, 0, 0, .35);--focus-ring: 0 0 0 2px var(--bg-primary), 0 0 0 4px var(--accent-color);--font-sans: Calibre, "Segoe UI", San Francisco, SF Pro Text, -apple-system, system-ui, BlinkMacSystemFont, Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", ui-monospace, "Lucida Console", Monaco, monospace;--ease: cubic-bezier(.645, .045, .355, 1);--transition: .22s var(--ease)}html.light-theme,body.light-theme{color-scheme:light;--bg-primary: #f4f6fb;--bg-secondary: #f7f7f7;--bg-elevated: #ffffff;--bg-input: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--border-color: #e2e8f0;--border-strong: #cbd5e1;--accent-color: #0d9488;--accent-color-hover: #0f766e;--accent-opacity: rgba(13, 148, 136, .1);--accent-glow: rgba(13, 148, 136, .16);--danger: #e11d48;--danger-opacity: rgba(225, 29, 72, .1);--warning: #d97706;--success: #0d9488;--header-bg: rgba(244, 246, 251, .88);--header-shadow: rgba(15, 23, 42, .06);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 10px 30px rgba(15, 23, 42, .08)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;min-height:100%}body{width:100%;overflow-x:hidden;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background:var(--bg-primary);color:var(--text-secondary);font-family:var(--font-sans);font-size:16px;line-height:1.5;transition:background-color var(--transition),color var(--transition)}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 80% 50% at 10% -10%,var(--accent-opacity),transparent 55%),radial-gradient(ellipse 60% 40% at 100% 0%,rgba(100,255,218,.03),transparent 50%)}html.light-theme body:before,body.light-theme:before{background:radial-gradient(ellipse 80% 50% at 10% -10%,var(--accent-opacity),transparent 55%),radial-gradient(ellipse 60% 40% at 100% 0%,rgba(13,148,136,.04),transparent 50%)}a{color:var(--accent-color);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-color-hover)}button,input,textarea,select{font:inherit}::selection{background:var(--accent-opacity);color:var(--text-primary)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid transparent;background-clip:content-box}.mono{font-family:var(--font-mono)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius-sm);border:1px solid transparent;padding:.7rem 1.1rem;font-family:var(--font-mono);font-size:13px;line-height:1;cursor:pointer;transition:all var(--transition);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:var(--accent-color);background:transparent;border-color:var(--accent-color)}.btn-primary:hover:not(:disabled),.btn-primary:focus-visible:not(:disabled){background:var(--accent-opacity)}.btn-ghost{color:var(--text-secondary);background:transparent;border-color:var(--border-color)}.btn-ghost:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-secondary)}.btn-danger{color:var(--danger);background:transparent;border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-opacity)}.btn-sm{padding:.5rem .75rem;font-size:12px}.btn-icon{width:2.25rem;height:2.25rem;padding:0}.field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.field-label{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase}.input,.select,.textarea{width:100%;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.85rem 1rem;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}.input::placeholder,.select::placeholder,.textarea::placeholder{color:var(--text-muted)}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-strong)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-opacity)}.textarea{font-family:var(--font-mono);font-size:13.5px;line-height:1.55;resize:vertical;min-height:160px;max-width:100%;overflow:auto;field-sizing:content}.textarea.fill,.panel.fill>.textarea,.workspace-pane>.textarea{flex:1 1 auto;min-height:0;height:100%;resize:none;field-sizing:fixed}.scroll-pane{flex:1 1 auto;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.workspace-fill{display:grid;grid-template-columns:1fr 1fr;gap:1rem;min-height:var(--workspace-height);height:var(--workspace-height);align-items:stretch}.workspace-fill.cols-1{grid-template-columns:1fr}.workspace-fill>.panel,.workspace-pane{min-width:0;min-height:0;height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden}.workspace-fill>.panel>.textarea,.workspace-fill>.panel>.scroll-pane,.workspace-pane>.textarea,.workspace-pane>.scroll-pane{flex:1 1 auto;min-height:0}@media(max-width:900px){.workspace-fill{grid-template-columns:1fr;height:auto;min-height:0}.workspace-fill>.panel,.workspace-pane{height:auto;max-height:none;min-height:min(50dvh,420px)}.workspace-fill>.panel>.textarea,.workspace-fill>.panel>.scroll-pane{min-height:min(42dvh,360px);height:min(42dvh,360px)}}.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 3px),calc(100% - 11px) calc(50% - 3px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:2rem}.surface{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .6rem;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-family:var(--font-mono);font-size:11px}.chip-accent{color:var(--accent-color);border-color:color-mix(in srgb,var(--accent-color) 35%,var(--border-color));background:var(--accent-opacity)}.container{width:min(1200px,100% - 2rem);margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.toast-host{position:fixed;right:1rem;bottom:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.toast{pointer-events:auto;min-width:220px;max-width:min(360px,100vw - 2rem);padding:.85rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-md);font-size:14px;animation:toast-in .25s var(--ease)}.toast-success{border-color:color-mix(in srgb,var(--accent-color) 40%,var(--border-color))}.toast-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border-color));color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
