:root{--color-bg:#1a1a18;--color-surface:#1c1c1a;--color-surface-hover:#242422;--color-border:#2a2a28;--color-border-hover:#444240;--color-text:#e8e4de;--color-text-muted:#aaa8a4;--color-error:#ef4444;--color-error-bg:rgba(239,68,68,.12);--color-success:#22c55e;--color-success-bg:rgba(34,197,94,.12);--color-warning:#f59e0b;--color-warning-bg:rgba(245,158,11,.12);--color-neutral-bg:hsla(40,3%,65%,.12);--font-sans:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-serif:"EB Garamond",Georgia,"Times New Roman",serif;--transition:.3s cubic-bezier(.16,1,.3,1);color-scheme:dark}html[data-theme=light]{--color-bg:#f5f3ef;--color-surface:#fff;--color-surface-hover:#ece9e3;--color-border:#d8d4cc;--color-border-hover:#b8b4ac;--color-text:#1a1a18;--color-text-muted:#6b6965;--color-error-bg:rgba(239,68,68,.1);--color-success-bg:rgba(34,197,94,.1);--color-warning-bg:rgba(245,158,11,.1);--color-neutral-bg:hsla(40,3%,41%,.1);color-scheme:light}*,:after,:before{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-weight:300;line-height:1.6;margin:0;-webkit-font-smoothing:antialiased}.btn,body{font-family:var(--font-sans)}.btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:11px;font-weight:500;gap:.5rem;justify-content:center;letter-spacing:.18em;padding:.625rem 1.25rem;text-decoration:none;text-transform:uppercase;transition:background var(--transition),opacity var(--transition),border-color var(--transition)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--color-text);color:var(--color-bg)}.btn-primary:hover:not(:disabled){opacity:.85}.btn-secondary{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-hover)}.btn-ghost{background:transparent;color:var(--color-text-muted);padding:.375rem .75rem}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.btn-danger:hover:not(:disabled){color:var(--color-error)}.btn-small{font-size:11px;padding:.375rem .75rem}.section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;overflow:hidden}.section-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:.75rem 1rem}.section-header h2{font-size:.9375rem;font-weight:400;margin:0}.section-empty,.section-error,.section-loading{color:var(--color-text-muted);font-size:.875rem;padding:2rem;text-align:center}.section-error{color:var(--color-error)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.modal-card,.modal-overlay{align-items:center;display:flex}.modal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;flex-direction:column;gap:1rem;max-width:420px;padding:2rem;width:100%}.modal-card-wide{max-width:560px}.modal-card h3{font-size:1.25rem;font-weight:400;margin:0}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem;width:100%}.form-group{display:flex;flex-direction:column;gap:.375rem;width:100%}.form-group label{color:var(--color-text-muted);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.form-group input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-family:inherit;font-size:.9375rem;padding:.625rem .75rem;transition:border-color var(--transition)}.form-group input:focus{border-color:var(--color-text-muted);outline:none}.form-group input::-moz-placeholder{color:var(--color-text-muted);opacity:.6}.form-group input::placeholder{color:var(--color-text-muted);opacity:.6}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);cursor:pointer;font-family:inherit;font-size:.9375rem;padding:.625rem .75rem;transition:border-color var(--transition)}.form-group select:focus{border-color:var(--color-text-muted);outline:none}.form-error{color:var(--color-error);font-size:.875rem;margin:0}.layout{min-height:100vh}
