:root{--bg-base:#f5f0e8;--bg-surface:#fff;--bg-elevated:#fff;--bg-warm:#faf6f0;--bg-sidebar:#2a241d;--bg-sidebar-hover:#ffffff0f;--bg-sidebar-active:#c77d5926;--text-primary:#2a241d;--text-secondary:#6b6256;--text-muted:#a39888;--text-on-dark:#f5f0e8;--text-on-dark-muted:#f5f0e880;--accent:#c77d59;--accent-hover:#b86a44;--accent-soft:#f4e3d7;--accent-glow:#c77d591f;--success:#6b9e7a;--success-soft:#e8f0e9;--danger:#d4654f;--danger-soft:#fce8e3;--warning:#d4a04f;--warning-soft:#fdf3e3;--info:#6b8fae;--info-soft:#e8f0f5;--border:#ebe3d5;--border-strong:#d9cdb8;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--radius-pill:999px;--shadow-xs:0 1px 3px #2a241d0a;--shadow-sm:0 2px 8px #2a241d0d, 0 1px 2px #2a241d08;--shadow-md:0 6px 20px #2a241d0f, 0 2px 6px #2a241d0a;--shadow-lg:0 16px 48px #2a241d14, 0 4px 12px #2a241d0d;--shadow-xl:0 24px 64px #2a241d1f, 0 8px 24px #2a241d0f;--shadow-accent:0 6px 20px #c77d5933;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-fast:.15s;--dur-normal:.25s;--dur-slow:.4s;--font-display:"Fraunces", "Noto Serif SC", serif;--font-body:"Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-primary);font-weight:700}input,select,textarea{font-family:var(--font-body);font-size:14px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#d9cdb8}::-webkit-scrollbar-thumb:hover{background:#c0b09a}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-pill);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-body);transition:all var(--dur-normal) var(--ease-smooth);white-space:nowrap;box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;gap:6px;padding:10px 22px;display:inline-flex}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 8px 24px #c77d5947}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-body);transition:all var(--dur-normal) var(--ease-smooth);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:10px 22px;display:inline-flex}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.btn-danger{background:var(--bg-surface);color:var(--danger);border:1px solid var(--danger-soft);border-radius:var(--radius-pill);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-body);transition:all var(--dur-normal) var(--ease-smooth);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:10px 16px;display:inline-flex}.btn-danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger-solid{background:var(--danger);color:#fff;border-radius:var(--radius-pill);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-body);transition:all var(--dur-normal) var(--ease-smooth);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 22px;display:inline-flex}.btn-danger-solid:hover{background:#c0563f;transform:translateY(-1px)}.btn-danger-solid:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-ghost{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-body);transition:all var(--dur-normal) var(--ease-smooth);white-space:nowrap;background:0 0;justify-content:center;align-items:center;gap:6px;padding:10px 16px;display:inline-flex}.btn-ghost:hover{border-color:var(--border-strong);color:var(--text-secondary)}.card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}.form-row{margin-bottom:18px}.form-row label{color:var(--text-secondary);margin-bottom:7px;font-size:13px;font-weight:500;display:block}.form-row input,.form-row select,.form-row textarea{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:var(--bg-surface);transition:all var(--dur-normal) var(--ease-smooth);box-sizing:border-box;padding:12px 16px;font-size:14px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow);outline:none}.form-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}
