.alert.svelte-e846cx{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;line-height:1.5}.alert-error.svelte-e846cx{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.alert-warning.svelte-e846cx{background:#fffbeb;border:1px solid #fcd34d;color:#d97706}.alert-info.svelte-e846cx{background:#eff6ff;border:1px solid #93c5fd;color:#2563eb}.alert-success.svelte-e846cx{background:#f0fdf4;border:1px solid #86efac;color:#16a34a}.alert-icon.svelte-e846cx{flex-shrink:0;display:flex;align-items:center;margin-top:.125rem}.alert-content.svelte-e846cx{flex:1;min-width:0}.alert-title.svelte-e846cx{font-weight:600;margin-bottom:.25rem}.alert-message.svelte-e846cx{opacity:.9}.alert-recovery.svelte-e846cx{margin-top:.5rem;font-size:.8rem;opacity:.8}.alert-code.svelte-e846cx{margin-top:.5rem;font-size:.7rem;font-family:monospace;opacity:.6}.alert-dismiss.svelte-e846cx{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;cursor:pointer;opacity:.6;border-radius:4px;transition:all .15s}.alert-dismiss.svelte-e846cx:hover{opacity:1;background:#0000001a}.alert-dismiss.svelte-e846cx:focus-visible{opacity:1;outline:2px solid currentColor;outline-offset:1px}.alert-error.svelte-e846cx .alert-dismiss:where(.svelte-e846cx){color:#dc2626}.alert-warning.svelte-e846cx .alert-dismiss:where(.svelte-e846cx){color:#d97706}.alert-info.svelte-e846cx .alert-dismiss:where(.svelte-e846cx){color:#2563eb}.alert-success.svelte-e846cx .alert-dismiss:where(.svelte-e846cx){color:#16a34a}.spinner-container.svelte-7uvg3c{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;min-height:120px}.spinner-inline.svelte-7uvg3c{display:inline-flex;align-items:center;gap:.5rem}.spinner.svelte-7uvg3c{display:inline-block;border-style:solid;border-radius:50%;animation:svelte-7uvg3c-spin .8s linear infinite}.color-primary.svelte-7uvg3c .spinner:where(.svelte-7uvg3c){border-color:#e5e7eb;border-top-color:#4338ca}.color-white.svelte-7uvg3c .spinner:where(.svelte-7uvg3c){border-color:#ffffff4d;border-top-color:#fff}.color-gray.svelte-7uvg3c .spinner:where(.svelte-7uvg3c){border-color:#e5e7eb;border-top-color:#6b7280}.spinner-text.svelte-7uvg3c{color:#666;font-size:.875rem;margin:0}.spinner-container.svelte-7uvg3c .spinner-text:where(.svelte-7uvg3c){margin-top:.75rem}.color-white.svelte-7uvg3c .spinner-text:where(.svelte-7uvg3c){color:#ffffffe6}@keyframes svelte-7uvg3c-spin{to{transform:rotate(360deg)}}.sr-only.svelte-7uvg3c{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.empty-state.svelte-sio7ch{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1.5rem;text-align:center;color:#666}.empty-icon.svelte-sio7ch{margin-bottom:1.25rem}.empty-icon.svelte-sio7ch svg:where(.svelte-sio7ch){display:block}.empty-title.svelte-sio7ch{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#374151}.empty-description.svelte-sio7ch{margin:0;font-size:.875rem;color:#6b7280;max-width:280px}.empty-content.svelte-sio7ch{margin-top:1rem;width:100%}.empty-actions.svelte-sio7ch{display:flex;gap:.75rem;margin-top:1.5rem}.btn-primary.svelte-sio7ch{padding:.625rem 1.25rem;background:#4338ca;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary.svelte-sio7ch:hover{background:#3730a3}.btn-primary.svelte-sio7ch:focus-visible{outline:2px solid #4338ca;outline-offset:2px}.btn-secondary.svelte-sio7ch{padding:.625rem 1.25rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-secondary.svelte-sio7ch:hover{background:#f9fafb;border-color:#9ca3af}.btn-secondary.svelte-sio7ch:focus-visible{outline:2px solid #4338ca;outline-offset:2px}.retention-badge.svelte-vmq0vu{display:inline-flex;align-items:center;gap:.25rem;border-radius:4px;font-weight:500;white-space:nowrap}.size-small.svelte-vmq0vu{font-size:.7rem;padding:.2rem .5rem}.size-small.svelte-vmq0vu svg:where(.svelte-vmq0vu){width:10px;height:10px}.size-medium.svelte-vmq0vu{font-size:.8rem;padding:.25rem .625rem}.state-active.svelte-vmq0vu{color:#7c3aed;background:#ede9fe}.state-active.svelte-vmq0vu svg:where(.svelte-vmq0vu){stroke:#7c3aed}.state-available.svelte-vmq0vu{color:#d97706;background:#fef3c7}.state-available.svelte-vmq0vu svg:where(.svelte-vmq0vu){stroke:#d97706}.state-none.svelte-vmq0vu{color:#9ca3af;background:#f9fafb}.badge-text.svelte-vmq0vu{line-height:1}.badge-source.svelte-vmq0vu{font-weight:400;opacity:.7;font-size:.9em}.shift-badge.svelte-mvtcx0{display:inline-flex;align-items:center;gap:.25rem;border-radius:4px;font-weight:500;white-space:nowrap}.size-small.svelte-mvtcx0{font-size:.7rem;padding:.2rem .5rem}.size-small.svelte-mvtcx0 svg:where(.svelte-mvtcx0){width:10px;height:10px}.size-medium.svelte-mvtcx0{font-size:.8rem;padding:.25rem .625rem}.cost-shift.svelte-mvtcx0{color:#dc2626;background:#fef2f2}.cost-shift.svelte-mvtcx0 svg:where(.svelte-mvtcx0){stroke:#dc2626}.revenue-shift.svelte-mvtcx0{color:#16a34a;background:#f0fdf4}.revenue-shift.svelte-mvtcx0 svg:where(.svelte-mvtcx0){stroke:#16a34a}.badge-text.svelte-mvtcx0{line-height:1}.validation-message.svelte-19xksnp{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;line-height:1.4}.position-below.svelte-19xksnp{display:flex;margin-top:.25rem}.position-inline.svelte-19xksnp{margin-left:.5rem}.type-error.svelte-19xksnp{color:#dc2626}.type-warning.svelte-19xksnp{color:#d97706}.validation-message.svelte-19xksnp svg:where(.svelte-19xksnp){flex-shrink:0}.message-text.svelte-19xksnp{flex:1}.sr-only.svelte-85ajm0{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skeleton.svelte-19f3yks{--skeleton-bg: #e5e7eb;--skeleton-shine: #f3f4f6}.skeleton.animate.svelte-19f3yks{--skeleton-bg: linear-gradient( 90deg, #e5e7eb 0%, #f3f4f6 50%, #e5e7eb 100% );background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}@keyframes svelte-19f3yks-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.variant-text.svelte-19f3yks{display:flex;flex-direction:column;gap:.5rem}.skeleton-line.svelte-19f3yks{height:.875rem;background:var(--skeleton-bg);border-radius:4px}.animate.svelte-19f3yks .skeleton-line:where(.svelte-19f3yks){background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.skeleton-heading.svelte-19f3yks{height:1.5rem;background:var(--skeleton-bg);border-radius:4px;width:100%}.animate.svelte-19f3yks .skeleton-heading:where(.svelte-19f3yks){background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.skeleton-button.svelte-19f3yks{height:2.25rem;background:var(--skeleton-bg);border-radius:6px;width:100%}.animate.svelte-19f3yks .skeleton-button:where(.svelte-19f3yks){background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.skeleton-badge.svelte-19f3yks{height:1.25rem;background:var(--skeleton-bg);border-radius:9999px;width:100%}.animate.svelte-19f3yks .skeleton-badge:where(.svelte-19f3yks){background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.skeleton-row.svelte-19f3yks{display:flex;gap:1rem;padding:.75rem 0;border-bottom:1px solid #f3f4f6}.skeleton-cell.svelte-19f3yks{height:1rem;background:var(--skeleton-bg);border-radius:4px}.animate.svelte-19f3yks .skeleton-cell:where(.svelte-19f3yks){background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.variant-card.svelte-19f3yks{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.skeleton-card.svelte-19f3yks{height:100%;display:flex;flex-direction:column}.skeleton-card-header.svelte-19f3yks{height:48px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.skeleton-card-body.svelte-19f3yks{flex:1;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.animate.svelte-19f3yks .skeleton-card-header:where(.svelte-19f3yks){background:linear-gradient(90deg,#f9fafb,#fff,#f9fafb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.variant-chart.svelte-19f3yks{border:1px solid #e5e7eb;border-radius:8px;padding:1rem;display:flex;flex-direction:column}.skeleton-chart.svelte-19f3yks{height:100%;display:flex;flex-direction:column}.skeleton-chart-bars.svelte-19f3yks{flex:1;display:flex;align-items:flex-end;gap:8px;padding-bottom:1rem}.skeleton-bar.svelte-19f3yks{flex:1;background:var(--skeleton-bg);border-radius:4px 4px 0 0;min-width:20px}.animate.svelte-19f3yks .skeleton-bar:where(.svelte-19f3yks){background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:svelte-19f3yks-shimmer 1.5s infinite}.skeleton-chart-axis.svelte-19f3yks{height:2px;background:#e5e7eb;border-radius:1px}.export-menu.svelte-1nwfa5q{position:relative;display:inline-block}.btn-icon.svelte-1nwfa5q{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#666;transition:background-color .15s,color .15s}.btn-icon.svelte-1nwfa5q:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.btn-icon.svelte-1nwfa5q:disabled{opacity:.5;cursor:not-allowed}.dropdown.svelte-1nwfa5q{position:absolute;top:100%;right:0;margin-top:4px;min-width:180px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;padding:4px}.dropdown-item.svelte-1nwfa5q{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:.875rem;color:#334155;text-align:left;transition:background-color .15s}.dropdown-item.svelte-1nwfa5q:hover:not(:disabled){background:#f1f5f9}.dropdown-item.svelte-1nwfa5q:disabled{opacity:.6;cursor:not-allowed}.dropdown-item.svelte-1nwfa5q svg:where(.svelte-1nwfa5q){flex-shrink:0;color:#64748b}.dropdown-item.svelte-1nwfa5q span:where(.svelte-1nwfa5q){flex:1}
