@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--sidebar-width:252px;--topbar-height:68px;--background:#ffffff;--background-secondary:#fafafa;--background-muted:#f5f5f5;--background-hover:#f3f4f6;--foreground:#111111;--foreground-muted:#6b7280;--border:#e5e7eb;--border-strong:#d1d5db;--accent:#b31d62;--accent-focus:rgba(179,29,98,0.25);--btn-primary-bg:#000000;--btn-primary-text:#ffffff;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--cm-primary:#b31d62;--cm-secondary:#000000;--cm-accent:#2563eb;--cm-success:#16a34a;--cm-warning:#f59e0b;--cm-error:#dc2626;--cm-info:#0ea5e9;--cm-bg:#ffffff;--cm-surface:#f8fafc;--cm-text:#111827;--cm-muted:#6b7280;--cm-calendar-primary:#7c3aed;--cm-report-primary:#0f766e;--cm-chart-palette:#b31d62,#2563eb,#16a34a,#f59e0b,#7c3aed;--radius:8px;--radius-lg:12px;--font-main:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--transition-fast:0.2s cubic-bezier(0.4,0,0.2,1);--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 12px rgba(0,0,0,0.08)}*,:after,:before{box-sizing:border-box}body,html{height:100%;width:100%;overflow-x:hidden;background:var(--background-secondary);color:var(--foreground);font-family:var(--font-main);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.glass{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.text-gradient{color:var(--foreground);background:none;-webkit-text-fill-color:unset}.card{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);padding:.625rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;border:none;cursor:pointer;transition:var(--transition-fast);min-height:44px}.btn-primary:hover{background:#1a1a1a}.btn-primary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--background);color:var(--foreground);padding:.625rem 1.25rem;border-radius:var(--radius);font-weight:500;font-size:.875rem;border:1px solid var(--foreground);cursor:pointer;transition:var(--transition-fast);min-height:44px}.btn-secondary:hover{background:var(--background-hover)}.btn-secondary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--cm-error,var(--danger));color:#ffffff;padding:.625rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:.875rem;border:none;cursor:pointer;transition:var(--transition-fast);min-height:44px}.btn-danger:hover{background:#b91c1c}.btn-danger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:.375rem .75rem;min-height:36px;font-size:.8125rem}.btn-block{width:100%}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.375rem;color:var(--foreground)}.form-input,.form-input input,.form-input select,.form-input textarea,input.form-input,select.form-input,textarea.form-input{width:100%;padding:.625rem .875rem;min-height:44px;border-radius:var(--radius);border:1px solid var(--border);background:var(--background);color:var(--foreground);font-family:inherit;font-size:.9375rem;transition:var(--transition-fast)}textarea.form-input{min-height:88px;resize:vertical;line-height:1.5}.form-input::placeholder{color:var(--foreground-muted)}.form-input:focus{outline:none;border-color:var(--foreground);box-shadow:0 0 0 2px var(--accent-focus)}.form-input:disabled{background:var(--background-muted);color:var(--foreground-muted);cursor:not-allowed}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width:560px){.form-grid{grid-template-columns:1fr}}.form-hint{margin:.375rem 0 0;font-size:.8125rem;color:var(--foreground-muted);line-height:1.4}.form-error{margin:0 0 1rem;padding:.625rem .875rem;font-size:.875rem;color:var(--danger);background:#fef2f2;border:1px solid #fecaca}.form-error,.input-field{border-radius:var(--radius)}.input-field{width:100%;padding:.625rem 1rem;min-height:44px;border:1px solid var(--border);background:var(--background);color:var(--foreground);font-family:inherit;font-size:.9375rem;transition:var(--transition-fast)}.input-field::placeholder{color:var(--foreground-muted)}.input-field:focus{outline:none;border-color:var(--foreground);box-shadow:0 0 0 2px var(--accent-focus)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-in{animation:fadeIn .3s ease-out forwards}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}[data-nextjs-dev-indicator],[data-nextjs-toast]{display:none!important}