@keyframes spin{to{transform:rotate(360deg)}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-primary-50: #eff6ff;--color-primary-100: #dbeafe;--color-primary-600: #2563eb;--color-primary-700: #1d4ed8;--color-bg: #f8f9fb;--color-surface: #ffffff;--color-border: #e2e5ea;--color-border-light: #f0f1f3;--color-text: #111827;--color-text-secondary: #6b7280;--color-text-tertiary: #9ca3af;--color-success: #059669;--color-success-light: #ecfdf5;--color-warning: #d97706;--color-warning-light: #fffbeb;--color-danger: #dc2626;--color-danger-light: #fef2f2;--color-info: #2563eb;--color-info-light: #eff6ff;--sidebar-width: 220px;--header-height: 50px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Rubik", "Inter", sans-serif;--radius-sm: 4px;--radius-md: 4px;--radius-lg: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .08)}html,body,#root{height:100%;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.primary-menu-item{background:transparent;color:#4b5563;transition:background .1s ease,color .1s ease}.primary-menu-item:hover:not(.primary-menu-item-active){background:#eef0f4;color:#111827}.secondary-menu-item{background:transparent;color:#4b5563;transition:background .1s ease,color .1s ease}.secondary-menu-item:hover:not(.secondary-menu-item-active){background:#eef0f4;color:#111827}.inline-link{color:var(--color-text-secondary);text-decoration:none;cursor:pointer;background:none;border:none;padding:0;text-align:left;font:inherit}.inline-link:hover{color:var(--color-primary);text-decoration:underline}.clickable-row{transition:background .12s ease}.clickable-row:hover{background:#edf0f4}.price-item-current{background:var(--color-primary-light);box-shadow:inset 0 0 0 1px #93c5fd}.price-item-current:hover{background:var(--color-primary-100)}.price-item-selected{background:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.price-item-selected:hover{background:#fff}.timeline-card{transition:box-shadow .15s ease;box-shadow:none}.timeline-card:hover{box-shadow:0 2px 8px #00000012}button{font-family:var(--font-sans);cursor:pointer}.tiptap,.prose{font-family:var(--font-sans)}.tiptap p,.prose p{margin:0 0 .8em;line-height:1.75}.tiptap ul,.tiptap ol,.prose ul,.prose ol{padding-left:1.5em;margin:.6em 0}.tiptap li,.prose li{margin:.3em 0;line-height:1.7}.tiptap li p,.prose li p{margin:0}.tiptap strong,.prose strong{font-weight:600}.tiptap hr,.prose hr{border:none;border-top:1px solid var(--color-border);margin:1.2em 0}.tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--color-text-tertiary);pointer-events:none;float:left;height:0}input,select,textarea{font-family:var(--font-sans);font-size:14px}.page-title{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--color-text);letter-spacing:-.01em}.section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);margin-bottom:8px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;border-radius:var(--radius-md);border:1px solid transparent;transition:all .15s ease}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-bg)}.badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.badge-info{background:var(--color-info-light);color:var(--color-info)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);padding:8px 12px;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.data-table td{padding:10px 12px;border-bottom:1px solid var(--color-border-light);font-size:13px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--color-bg)}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px 20px}.stat-card .stat-label{font-size:12px;font-weight:500;color:var(--color-text-tertiary);margin-bottom:4px}.stat-card .stat-value{font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--color-text)}.stat-card .stat-change{font-size:12px;font-weight:500;margin-top:4px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--color-text-tertiary)}.empty-state svg{margin-bottom:12px;opacity:.4}.empty-state h3{font-size:15px;font-weight:600;color:var(--color-text-secondary);margin-bottom:4px}.empty-state p{font-size:13px;max-width:320px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}
