@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500&family=JetBrains+Mono:wght@400&display=swap";:root,[data-theme=dark]{--bg-app:#1a1a1e;--bg-surface:#222326;--bg-elevated:#2a2a2e;--accent:#5e6ad2;--accent-hover:#6872d9;--text-primary:#f4f5f8;--text-secondary:#a1a1aa;--text-muted:#6b7280;--border-subtle:#ffffff12;--border-light:#ffffff1a;--border-medium:#ffffff24;--hover-bg:#ffffff0a;--chip-bg:#ffffff0f;--input-bg:#ffffff0a;--key-bg:#ffffff14;--shadow-card:0 1px 3px #0000004d;--shadow-elevated:0 4px 12px #0006;--priority-urgent:#eb5757;--priority-high:#f2994a;--priority-medium:#f2c94c;--priority-low:#4cb782;--priority-none:#6b7280;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace}[data-theme=light]{--bg-app:#f4f5f8;--bg-surface:#fff;--bg-elevated:#fff;--accent:#5e6ad2;--accent-hover:#4f5bc4;--text-primary:#1d2028;--text-secondary:#6b6f76;--text-muted:#9ca0a8;--border-subtle:#0000000f;--border-light:#0000001a;--border-medium:#00000024;--hover-bg:#00000008;--chip-bg:#0000000a;--input-bg:#00000005;--key-bg:#0000000d;--shadow-card:0 1px 3px #00000014;--shadow-elevated:0 4px 12px #0000001f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{font-family:var(--font-sans);background:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:.875rem;font-weight:400;line-height:1.5}input,button,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.toast-container{top:var(--sp-4);right:var(--sp-4);z-index:1000;gap:var(--sp-2);flex-direction:column;display:flex;position:fixed}.toast{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);color:var(--text-primary);max-width:360px;font-size:.875rem;animation:.2s ease-out toast-in}.toast.error{border-color:var(--priority-urgent)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.chip{align-items:center;gap:var(--sp-1);background:var(--chip-bg);border:1px solid var(--border-light);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;padding:2px 6px;font-size:.72rem;display:inline-flex}.chip .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-4);font-size:.875rem;font-weight:500;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--chip-bg);border:1px solid var(--border-light);color:var(--text-primary);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-4);font-size:.875rem;font-weight:500;transition:background .15s}.btn-secondary:hover{background:var(--hover-bg)}.input{background:var(--input-bg);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-3);color:var(--text-primary);outline:none;width:100%;font-size:.875rem;transition:border-color .15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #5e6ad240}.input::placeholder{color:var(--text-muted)}[data-theme=light] ::-webkit-scrollbar-thumb{background:#0000001f}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#0003}.overlay-backdrop{z-index:100;background:#00000080;justify-content:center;align-items:center;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}.overlay-panel{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--sp-6);width:90vw;max-width:560px;max-height:70vh;animation:.15s ease-out scale-in;overflow-y:auto}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
