@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;1,9..40,400&family=JetBrains+Mono:wght@400;500&display=swap");:root,[data-theme=dark]{--color-bg:#0F1117;--color-bg-raised:#181B24;--color-bg-card:#1E2230;--color-bg-hover:#262A38;--color-bg-input:#151822;--color-border:#2A2E3D;--color-border-focus:#4A6CF7;--color-text:#E8E9ED;--color-text-muted:#8B8F9E;--color-text-faint:#565B6E;--color-primary:var(--accent,#4A6CF7);--color-primary-hover:var(--accent-hover,#3B5DE8);--color-primary-muted:var(--accent-muted,#4A6CF720);--color-success:#34D399;--color-success-bg:#34D39918;--color-warning:#FBBF24;--color-warning-bg:#FBBF2418;--color-danger:#F87171;--color-danger-bg:#F8717118;--color-info:#60A5FA;--color-recording:#EF4444;--color-recording-pulse:#EF444440;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.3);--shadow-lg:0 8px 30px rgba(0,0,0,0.4)}[data-theme=light]{--color-bg:#F5F7FA;--color-bg-raised:#FFFFFF;--color-bg-card:#FFFFFF;--color-bg-hover:#F0F2F5;--color-bg-input:#F9FAFB;--color-border:#E2E5EB;--color-border-focus:#4A6CF7;--color-text:#1A1D26;--color-text-muted:#5C6070;--color-text-faint:#9CA3AF;--color-primary:var(--accent,#4A6CF7);--color-primary-hover:var(--accent-hover,#3B5DE8);--color-primary-muted:var(--accent-muted,#4A6CF715);--color-success:#059669;--color-success-bg:#D1FAE5;--color-warning:#D97706;--color-warning-bg:#FEF3C7;--color-danger:#DC2626;--color-danger-bg:#FEE2E2;--color-info:#2563EB;--color-recording:#DC2626;--color-recording-pulse:#DC262630;--shadow-sm:0 1px 2px rgba(0,0,0,0.06);--shadow-md:0 4px 12px rgba(0,0,0,0.08);--shadow-lg:0 8px 30px rgba(0,0,0,0.12)}:root,[data-accent=blue]{--accent:#4A6CF7;--accent-hover:#3B5DE8;--accent-muted:#4A6CF720}[data-accent=teal]{--accent:#14B8A6;--accent-hover:#0D9488;--accent-muted:#14B8A620}[data-accent=orange]{--accent:#F97316;--accent-hover:#EA580C;--accent-muted:#F9731620}[data-accent=red]{--accent:#EF4444;--accent-hover:#DC2626;--accent-muted:#EF444420}[data-accent=purple]{--accent:#8B5CF6;--accent-hover:#7C3AED;--accent-muted:#8B5CF620}[data-accent=green]{--accent:#22C55E;--accent-hover:#16A34A;--accent-muted:#22C55E20}:root{--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono",monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--safe-bottom:env(safe-area-inset-bottom,0px);--nav-height:64px;--sidebar-width:240px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background-color .2s ease,color .2s ease}::selection{background:var(--color-primary-muted);color:var(--color-text)}button,input,select,textarea{font-family:inherit;font-size:inherit}@media (max-width:768px){input,select,textarea{font-size:16px!important}}.card-hover{transition:transform .15s ease,box-shadow .15s ease}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-gradient{background:linear-gradient(135deg,var(--accent,#4A6CF7),#34D399)!important;border:none!important;color:#fff!important;font-weight:700;box-shadow:0 4px 15px rgba(74,108,247,.25);transition:transform .12s ease,box-shadow .12s ease}.btn-gradient:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(74,108,247,.35)}.btn-gradient:active{transform:translateY(0)}.badge-draft{background:var(--color-bg-hover);color:var(--color-text-muted)}.badge-sent{background:#DBEAFE;color:#1D4ED8}.badge-accepted,.badge-paid{background:#D1FAE5;color:#065F46}.badge-declined,.badge-overdue{background:#FEE2E2;color:#991B1B}.badge-void{background:var(--color-bg-hover);color:var(--color-text-faint)}[data-theme=dark] .badge-sent{background:#1E3A5F;color:#93C5FD}[data-theme=dark] .badge-accepted,[data-theme=dark] .badge-paid{background:#064E3B;color:#6EE7B7}[data-theme=dark] .badge-declined,[data-theme=dark] .badge-overdue{background:#450A0A;color:#FCA5A5}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}@keyframes pulse{0%,to{box-shadow:0 0 0 0 var(--color-recording-pulse)}50%{box-shadow:0 0 0 20px transparent}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}