@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');/* react/src/styles/variables.css */
:root {

  /* ─── Brand Core ─────────────────────────────────────────── */
  /* The four colors from your brand guidelines. Never use these
     as raw values in components — use semantic tokens below.    */
  --brand-indigo: #6D28D9;
  --brand-cyan: #06B6D4;
  --brand-navy: #0B1220;
  --brand-amber: #F59E0B;

  /* ─── Primary Blue Scale ─────────────────────────────────── */
  /* The workhorse blue for buttons, links, and primary UI.
     Slightly cyan-leaning to harmonize with --brand-cyan.       */
  --blue-50: #EFF6FF;
  --blue-100: #DBEAFE;
  --blue-200: #BFDBFE;
  --blue-300: #93C5FD;
  --blue-400: #60A5FA;
  --blue-500: #3B82F6;
  /* Mid-tone, illustrations, charts      */
  --blue-600: #2563EB;
  /* Primary — buttons, links, focus      */
  --blue-700: #1D4ED8;
  /* Hover on primary                     */
  --blue-800: #1E40AF;
  /* Active/pressed states                */
  --blue-900: #1E3A8A;

  /* ─── Indigo Scale (AI features) ─────────────────────────── */
  /* Reserved for AI-generated content, AI-active states,
     and anywhere the user is interacting with the AI itself.   */
  --indigo-50: #F5F3FF;
  --indigo-100: #EDE9FE;
  --indigo-200: #DDD6FE;
  --indigo-300: #C4B5FD;
  --indigo-400: #A78BFA;
  --indigo-500: #8B5CF6;
  --indigo-600: #7C3AED;
  /* Hover on AI primary                */
  --indigo-700: #6D28D9;
  /* Electric Indigo — AI primary       */
  --indigo-800: #5B21B6;
  /* Active/pressed AI states           */
  --indigo-900: #4C1D95;

  /* ─── Cyan Scale (accents, AI-active indicators) ─────────── */
  /* Used sparingly for emphasis, AI-in-motion signals,
     and secondary chart series.                                */
  --cyan-50: #ECFEFF;
  --cyan-100: #CFFAFE;
  --cyan-200: #A5F3FC;
  --cyan-300: #67E8F9;
  --cyan-400: #22D3EE;
  --cyan-500: #06B6D4;
  /* Cyan Current — brand accent          */
  --cyan-600: #0891B2;
  /* Hover; AA-safe on white              */
  --cyan-700: #0E7490;
  --cyan-800: #155E75;
  --cyan-900: #164E63;

  /* ─── Slate (neutrals, text, borders, surfaces) ──────────── */
  /* Cool-leaning gray that pairs cleanly with blue and indigo. */
  --slate-50: #F8FAFC;
  --slate-100: #F1F5F9;
  --slate-200: #E2E8F0;
  --slate-300: #CBD5E1;
  --slate-400: #94A3B8;
  --slate-500: #64748B;
  --slate-600: #475569;
  --slate-700: #334155;
  --slate-800: #1E293B;
  --slate-900: #0F172A;
  --slate-1000: #0B1220;
  /* = Deep Space Navy                       */

  /* ─── Gray Scale (true neutral) ──────────────────────────── */
  /* Pure neutrals with no blue or warm cast. Use for page
      backgrounds, borders, and any surface that should read
      as "completely neutral."                                  */
  --gray-50: #F5F5F5;
  --gray-100: #EAEAEA;
  --gray-200: #D4D4D4;
  --gray-300: #BABABA;
  --gray-400: #999999;
  --gray-500: #7A7A7A;
  --gray-600: #5C5C5C;
  --gray-700: #424242;
  --gray-800: #292929;
  --gray-900: #171717;

  /* ─── Semantic — Saturated (functional state) ────────────── */
  /* Use for toasts, validation, destructive actions, alerts.   */
  --success-50: #F0FDF4;
  --success-500: #22C55E;
  --success-600: #16A34A;
  /* Default success color             */
  --success-700: #15803D;

  --warning-50: #FFFBEB;
  --warning-500: #F59E0B;
  /* Same as --brand-amber             */
  --warning-600: #D97706;
  --warning-700: #B45309;

  --error-50: #FEF2F2;
  --error-500: #EF4444;
  --error-600: #DC2626;
  /* Default error color               */
  --error-700: #B91C1C;

  --info-50: #EFF6FF;
  --info-500: #3B82F6;
  --info-600: #2563EB;
  /* Same as --blue-600                */

  /* ─── Semantic — Pastel (dashboard cards, soft surfaces) ─── */
  /* The decorative tints currently in your dashboard.
     Used for stat cards, empty states, banners.                */
  --pastel-blue: #F0F7FF;
  --pastel-pink: #FCE8F3;
  --pastel-mint: #DCFCE7;
  --pastel-yellow: #FEF9C3;
  --pastel-lavender: #F3E8FF;
  --pastel-peach: #FFEDD5;

  /* ─── Surface & Background ───────────────────────────────── */
  --surface-page: #FFFFFF;
  --surface-subtle: var(--gray-100);
  --surface-card: #FFFFFF;
  --surface-card-hover: var(--slate-50);
  --surface-overlay: rgba(15, 23, 42, 0.5);
  /* modal scrim     */

  /* AI-specific surface for content generated by AI            */
  --surface-ai: var(--indigo-50);
  --surface-ai-hover: var(--indigo-100);

  /* ─── Borders & Dividers ─────────────────────────────────── */
  --border-subtle: var(--slate-200);
  --border-default: var(--slate-300);
  --border-strong: var(--slate-400);
  --border-focus: var(--blue-600);
  --border-ai: var(--indigo-200);
  --border-error: var(--error-500);

  /* ─── Text ───────────────────────────────────────────────── */
  --text-primary: var(--slate-800);
  --text-secondary: var(--slate-600);
  --text-tertiary: var(--slate-500);
  --text-disabled: var(--slate-400);
  --text-inverse: #FFFFFF;
  --text-link: var(--blue-600);
  --text-link-hover: var(--blue-700);
  --text-ai: var(--indigo-700);
  --text-error: var(--error-600);
  --text-success: var(--success-600);
  --text-warning: var(--warning-700);

  /* ─── Interactive (buttons, controls) ────────────────────── */
  /* Primary — default actions */
  --action-primary-bg: var(--blue-600);
  --action-primary-bg-hover: var(--blue-700);
  --action-primary-bg-active: var(--blue-800);
  --action-primary-text: #FFFFFF;

  /* Secondary — less prominent actions */
  --action-secondary-bg: var(--slate-100);
  --action-secondary-bg-hover: var(--slate-200);
  --action-secondary-bg-active: var(--slate-300);
  --action-secondary-text: var(--slate-800);

  /* AI — actions that invoke AI behavior */
  --action-ai-bg: var(--indigo-700);
  --action-ai-bg-hover: var(--indigo-600);
  --action-ai-bg-active: var(--indigo-800);
  --action-ai-text: #FFFFFF;

  /* Destructive — delete, remove, dangerous actions */
  --action-destructive-bg: var(--error-600);
  --action-destructive-bg-hover: var(--error-700);
  --action-destructive-text: #FFFFFF;

  /* ─── Data Visualization ─────────────────────────────────── */
  /* Ordered series for charts; use in sequence.                */
  --chart-1: var(--blue-600);
  /* Primary data               */
  --chart-2: var(--cyan-500);
  /* Secondary / AI-derived     */
  --chart-3: var(--indigo-500);
  /* Tertiary                   */
  --chart-4: var(--success-500);
  /* Positive metric            */
  --chart-5: var(--warning-500);
  /* Caution metric             */
  --chart-6: var(--error-500);
  /* Negative metric            */
  --chart-7: var(--slate-500);
  /* Neutral baseline           */

  /* ─── Migration Strategy ───────────────────────────────────── */
  /* Per-strategy colors for workload migration tags and charts. */
  --strategy-retire: #64748B;
  --strategy-retain: #475569;
  --strategy-rehost: #3B82F6;
  --strategy-relocate: #6366F1;
  --strategy-repurchase: #0EA5E9;
  --strategy-replatform: #10B981;
  --strategy-refactor: #22C55E;

  /* ─── Slide / Presentation Theme (dark) ──────────────────── */
  /* Used by the fullscreen presentation and inline editor.     */
  --slide-bg-primary: #0f172a;
  --slide-bg-secondary: #1e293b;
  --slide-highlight: #f97316;
  --slide-highlight-hover: #fb923c;
  --slide-text-primary: #f8fafc;
  --slide-text-secondary: #94a3b8;
  --slide-text-on-highlight: #ffffff;
  --slide-card-bg: #1e293b;
  --slide-card-bg-transparent: rgba(30, 41, 59, 0.7);
  --slide-border: #334155;
  --slide-danger: #ef4444;
  --slide-success: #22c55e;
  --slide-warning: #eab308;
  --slide-info: #60a5fa;
  --slide-font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --slide-gradient-accent-1: rgba(99, 50, 200, 0.4);
  --slide-gradient-accent-2: rgba(29, 78, 216, 0.35);
  --slide-gradient-accent-3: rgba(139, 92, 246, 0.2);
  --slide-overlay: rgba(0, 0, 0, 0.6);
  --slide-overlay-heavy: rgba(0, 0, 0, 0.7);
  --slide-nav-idle: rgba(255, 255, 255, 0.15);
  --slide-nav-hover: rgba(255, 255, 255, 0.8);
  --slide-nav-muted: rgba(255, 255, 255, 0.35);
  --slide-nav-muted-hover: rgba(255, 255, 255, 0.9);
  --slide-card-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  --slide-card-hover-shadow: 0 8px 32px rgba(0, 0, 0, 0.4), 0 0 20px rgba(249, 115, 22, 0.1);
  --slide-card-hover-shadow-danger: 0 8px 32px rgba(0, 0, 0, 0.4), 0 0 20px rgba(239, 68, 68, 0.1);
  --slide-letterbox: #000000;

  /* ─── Focus & Selection ──────────────────────────────────── */
  --focus-ring: rgba(37, 99, 235, 0.5);
  /* blue-600 @ 50%      */
  --focus-ring-ai: rgba(109, 40, 217, 0.5);
  /* indigo-700 @ 50%*/
  --selection-bg: var(--blue-100);
  --selection-text: var(--slate-900);

  /* ─── Navy (MAP Incentives, dark panels) ──────────────────── */
  --navy-800: #1E2A55;
  --navy-700: #2A3A6B;
  --navy-600: #3A456B;
  --navy-surface: #F1F3FB;
  --navy-border: #D4D9EC;
  --navy-text: #1E2A55;
  --navy-muted: #6B7388;
  --navy-row-alt: #E9ECF6;
  --navy-row-border: #E6E8EF;

  /* ─── Green (MAP impact, savings) ────────────────────────── */
  --green-50: #F0FDF4;
  --green-100: #DCFCE7;
  --green-200: #BBF7D0;
  --green-500: #22C55E;
  --green-600: #16A34A;
  --green-700: #15803D;
  --green-800: #166534;
  --green-accent: #2F9E6A;
  --green-accent-surface: #EAF6EF;
  --green-accent-border: #B8E0C8;

  /* ─── Indigo (reserved pricing, highlighted cards) ───────── */
  --indigo-surface: #EEF2FF;
  --indigo-border: #C7D2FE;

  /* ─── Gray (neutral UI, table backgrounds) ───────────────── */
  --gray-table-bg: #F9FAFB;
  --gray-table-border: #E5E7EB;
  --gray-text: #6B7280;
  --gray-dark: #111827;
  --gray-selector-bg: #F3F4F6;

  /* ─── Shadows ────────────────────────────────────────────── */
  --shadow-xs: 0 0.0625rem 0.125rem 0 rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(15, 23, 42, 0.1),
    0 2px 4px -2px rgba(15, 23, 42, 0.05);
  --shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, 0.1),
    0 4px 6px -4px rgba(15, 23, 42, 0.05);
  --shadow-card: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1);
  --shadow-card-hover: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.1);
  --shadow-focus: 0 0 0 3px var(--focus-ring);
  --shadow-focus-ai: 0 0 0 3px var(--focus-ring-ai);

  /* ─── AI Questionnaire (legacy purple for stale/AI badges) ─ */
  --ai-purple: #9810FA;
  --ai-purple-bg: rgba(152, 16, 250, 0.1);
  --ai-purple-border: rgba(152, 16, 250, 0.3);
  --ai-purple-progress: rgba(152, 16, 250, 0.2);
  --ai-purple-shadow: rgba(152, 16, 250, 0.1);
  --ai-purple-gradient: linear-gradient(135deg, rgba(152, 16, 250, 0.05) 0%, rgba(102, 126, 234, 0.05) 100%);
  --ai-blue: #2987C2;
  --ai-blue-bg: rgba(41, 135, 194, 0.1);
  --ai-blue-shadow: 0rem 0.25rem 0.75rem rgba(41, 135, 194, 0.2);

  /* ─── Interaction feedback ──────────────────────────────── */
  --approve-bg-hover: rgba(16, 185, 129, 0.08);
  --destructive-bg-hover: rgba(239, 68, 68, 0.08);
  --border-separator: rgba(0, 0, 0, 0.08);
}._toastContainer_1rwk2_1 {
    position: fixed;
    top: 4.5rem;
    right: 1.5rem;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    pointer-events: none;
}

._toast_1rwk2_1 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    background: white;
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.12), 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.08);
    border-left: 0.1875rem solid #e2e8f0;
    pointer-events: auto;
    animation: _toastIn_1rwk2_1 0.25s ease-out;
    max-width: 22.5rem;
}

._toast_success_1rwk2_26 {
    border-left-color: #10b981;
}

._toast_error_1rwk2_30 {
    border-left-color: #ef4444;
}

._toast_info_1rwk2_34 {
    border-left-color: #2987c2;
}

._toastMessage_1rwk2_38 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: #314158;
    flex: 1;
    line-height: 1.4;
}

._toastClose_1rwk2_46 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    background: transparent;
    border: none;
    border-radius: 0.25rem;
    color: #90a1b9;
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.1s;
}

._toastClose_1rwk2_46:hover {
    background: #f1f5f9;
    color: #314158;
}

@keyframes _toastIn_1rwk2_1 {
    from {
        opacity: 0;
        transform: translateX(1.25rem);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (max-width: 30rem) {
    ._toastContainer_1rwk2_1 {
        right: 0.75rem;
        left: 0.75rem;
    }
}
/* Global styles for Mapinator MVP */

:root {
  /* Stale / needs-review palette */
  --color-stale: #f59e0b;
  --color-stale-dark: #b45309;
  --color-stale-darker: #92400e;
  --color-stale-bg: rgba(245, 158, 11, 0.02);
  --color-stale-bg-hover: rgba(245, 158, 11, 0.05);
  --color-stale-bg-active: rgba(245, 158, 11, 0.08);
  --color-stale-pill-bg: #FFF7ED;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* GLOBAL SCROLLBAR - EXACTLY like sidebar */
*::-webkit-scrollbar {
  width: 0.25rem;
  height: 0.25rem;
}

*::-webkit-scrollbar-track {
  background: transparent;
}

*::-webkit-scrollbar-thumb {
  background: var(--slate-300);
  border-radius: 0.25rem;
}

*::-webkit-scrollbar-thumb:hover {
  background: var(--slate-400);
}

html, body {
  height: 100%;
  overflow: hidden;
}

html {
  font-size: 16px; /* Base size */
}

/* Responsive scaling for smaller screens */
@media (max-width: 1200px) {
  html {
    font-size: 14.4px; /* 90% of 16px */
  }
}

@media (max-width: 1024px) {
  html {
    font-size: 13.6px; /* 85% of 16px */
  }
}

@media (max-width: 768px) {
  html {
    font-size: 12.8px; /* 80% of 16px */
  }
}

body {
  margin: 0;
  font-family: 'Arial', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--surface-subtle);
}

#root {
  width: 100%;
  height: 100%;
}

.App {
  width: 100%;
  height: 100%;
}

/* Loading spinner animation */
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}


body.col-resizing,
body.col-resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}
/* LoginScreen Styles - Mapinator MVP */

/* Container principal */
._container_tdmep_7 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Card de login */
._loginCard_tdmep_31 {
  position: relative;
  width: 28rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 1;
}

/* Header */
._header_tdmep_55 {
  position: relative;
  height: 9.25rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 2rem;
  overflow: hidden;
}

/* Logo container */
._verticalLockup_tdmep_79 {
  width: 200px;
  max-width: 100%;
  height: auto;
  z-index: 1;
}

/* Subtitle wrapper */
._subtitleWrapper_tdmep_95 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  z-index: 1;
}

._subtitleIcon_tdmep_111 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._subtitle_tdmep_95 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

/* Form container */
._formContainer_tdmep_145 {
  padding: 1.25rem 2rem 2rem 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
}

/* Form */
._form_tdmep_145 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/* Input group */
._inputGroup_tdmep_171 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  transition: all 0.3s ease-in-out;
}

/* Label */
._label_tdmep_187 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._labelIcon_tdmep_209 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

/* Input wrapper (para conter input + toggle) */
._inputWrapper_tdmep_223 {
  position: relative;
  width: 100%;
}

/* Input */
._input_tdmep_171 {
  width: 100%;
  height: 2.25rem;
  padding: 1rem;
  padding-right: 2.5rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.125rem solid var(--slate-300);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: normal;
  transition: border-color 0.3s ease-in-out;
}

._input_tdmep_171::placeholder {
  color: var(--text-tertiary);
}

._input_tdmep_171:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._inputError_tdmep_285 {
  border-color: var(--error-500) !important;
}

._inputShake_tdmep_293 {
  animation: _shake_tdmep_1 0.4s ease-in-out;
}

@keyframes _shake_tdmep_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-0.1875rem); }
  40% { transform: translateX(0.1875rem); }
  60% { transform: translateX(-0.1875rem); }
  80% { transform: translateX(0.1875rem); }
}

/* Toggle button */
._toggleButton_tdmep_319 {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.25rem;
  height: 1.25rem;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  opacity: 0.6;
  transition: opacity 0.2s ease-in-out;
}

._toggleButton_tdmep_319:hover {
  opacity: 1;
}

._toggleIcon_tdmep_363 {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

._errorMessage_tdmep_375 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: 0.125rem;
  margin-bottom: 0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transform: translateY(-0.5rem);
  transition: all 0.3s ease-out;
}

._errorMessage_tdmep_375._show_tdmep_411 {
  max-height: 3.125rem;
  opacity: 1;
  transform: translateY(0);
}

@keyframes _slideDown_tdmep_1 {
  from {
    opacity: 0;
    max-height: 0;
    transform: translateY(-0.5rem);
  }
  to {
    opacity: 1;
    max-height: 3.125rem;
    transform: translateY(0);
  }
}

._errorIcon_tdmep_449 {
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
  filter: invert(35%) sepia(89%) saturate(3026%) hue-rotate(346deg) brightness(98%) contrast(92%);
}

/* Options (checkbox e link) */
._options_tdmep_465 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 1.75rem;
  margin-top: 0.25rem;
}

/* Checkbox */
._checkboxLabel_tdmep_483 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
}

._checkboxWrapper_tdmep_497 {
  position: relative;
  width: 1rem;
  height: 1rem;
}

._checkboxInput_tdmep_509 {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

._checkboxCustom_tdmep_523 {
  width: 1rem;
  height: 1rem;
  background: rgba(255, 255, 255, 0.9);
  border: 0.125rem solid var(--action-primary-bg);
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease-in-out;
}

._checkboxInput_tdmep_509:checked + ._checkboxCustom_tdmep_523 {
  background: var(--action-primary-bg);
  border-color: var(--action-primary-bg);
}

._checkIcon_tdmep_557 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._checkboxText_tdmep_569 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1rem;
}

/* Link */
._link_tdmep_587 {
  background: transparent;
  border: none;
  padding: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--action-primary-bg);
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: text-decoration 0.2s ease-in-out;
}

._link_tdmep_587:hover {
  text-decoration: underline;
}

/* Submit button */
._submitButton_tdmep_625 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.25rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_tdmep_625:hover {
  opacity: 0.9;
}

._submitButton_tdmep_625:active {
  opacity: 0.8;
}

._buttonIcon_tdmep_675 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

/* Divider */
._divider_tdmep_689 {
  position: relative;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0.5rem 0;
}

._divider_tdmep_689::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 0.0417rem;
  background: var(--border-subtle);
  transform: translateY(-50%);
}

._dividerText_tdmep_729 {
  position: relative;
  padding: 0 1rem;
  background: white;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
  z-index: 1;
}

/* Help link */
._helpLink_tdmep_757 {
  background: transparent;
  border: none;
  padding: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--action-primary-bg);
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: text-decoration 0.2s ease-in-out;
  align-self: center;
}

._helpLink_tdmep_757:hover {
  text-decoration: underline;
}

/* Footer */
._footer_tdmep_797 {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

._footerText_tdmep_813 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

/* Responsividade */
@media (max-width: 48rem) {
  ._loginCard_tdmep_31 {
    width: 90%;
    max-width: 28rem;
  }

  ._formContainer_tdmep_145 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }

  ._footer_tdmep_797 {
    bottom: 1rem;
  }
}

@media (max-width: 30rem) {
  ._loginCard_tdmep_31 {
    width: 95%;
  }

  ._formContainer_tdmep_145 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_tdmep_55 {
    padding: 1rem 1.5rem;
  }
}
/* ResetPasswordSuccessScreen Styles - matches LoginScreen */

._container_fubp4_3 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

._loginCard_fubp4_14 {
  position: relative;
  width: 28rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 1;
}

._header_fubp4_25 {
  position: relative;
  height: 9.25rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 2rem;
  overflow: hidden;
}

._verticalLockup_fubp4_36 {
  width: 200px;
  max-width: 100%;
  height: auto;
  z-index: 1;
}

._subtitleWrapper_fubp4_43 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  z-index: 1;
}

._subtitleIcon_fubp4_51 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._subtitle_fubp4_43 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

._formContainer_fubp4_67 {
  padding: 1.5rem 2rem 2rem 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

/* Success icon */
._successIcon_fubp4_77 {
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600, #16a34a) 100%);
  box-shadow: 0rem 0.5rem 1rem -0.25rem rgba(0, 0, 0, 0.1);
}

._successIcon_fubp4_77 svg {
  filter: brightness(0) invert(1);
}

/* Success title */
._successTitle_fubp4_93 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-secondary);
  text-align: center;
  line-height: 1.5rem;
}

/* Success message */
._successMessage_fubp4_104 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1.25rem;
}

/* Submit button */
._submitButton_fubp4_115 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.25rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  margin-top: 0.5rem;
}

._submitButton_fubp4_115:hover {
  opacity: 0.9;
}

._submitButton_fubp4_115:active {
  opacity: 0.8;
}

._buttonIcon_fubp4_142 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
  transform: rotate(180deg);
}

/* Security message */
._securityMessage_fubp4_150 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.25rem;
}

._securityIcon_fubp4_157 {
  width: 0.75rem;
  height: 0.75rem;
  flex-shrink: 0;
}

._securityMessage_fubp4_150 span {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
}

/* Footer */
._footer_fubp4_172 {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

._footerText_fubp4_180 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

@media (max-width: 48rem) {
  ._loginCard_fubp4_14 {
    width: 90%;
    max-width: 28rem;
  }

  ._formContainer_fubp4_67 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }

  ._footer_fubp4_172 {
    bottom: 1rem;
  }
}

@media (max-width: 30rem) {
  ._loginCard_fubp4_14 {
    width: 95%;
  }

  ._formContainer_fubp4_67 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_fubp4_25 {
    padding: 1rem 1.5rem;
  }
}
/* PasswordRecoveryEmailSent Styles - matches LoginScreen */

._container_1e28m_3 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

._loginCard_1e28m_14 {
  position: relative;
  width: 28rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 1;
}

._header_1e28m_25 {
  position: relative;
  height: 9.25rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 2rem;
  overflow: hidden;
}

._verticalLockup_1e28m_36 {
  width: 200px;
  max-width: 100%;
  height: auto;
  z-index: 1;
}

._subtitleWrapper_1e28m_43 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  z-index: 1;
}

._subtitleIcon_1e28m_51 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._subtitle_1e28m_43 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

._formContainer_1e28m_67 {
  padding: 1.25rem 2rem 2rem 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

/* Success icon */
._successIcon_1e28m_77 {
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600, #16a34a) 100%);
  box-shadow: 0rem 0.5rem 1rem -0.25rem rgba(0, 0, 0, 0.1);
}

._successIcon_1e28m_77 svg {
  filter: brightness(0) invert(1);
}

/* Success message */
._successMessage_1e28m_93 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  text-align: center;
  line-height: 1.25rem;
}

/* Instructions */
._instructions_1e28m_104 {
  width: 100%;
  padding: 1rem;
  background: rgba(239, 246, 255, 0.5);
  border-radius: 0.5rem;
}

._instructionsTitle_1e28m_111 {
  margin: 0 0 0.5rem 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._instructionsList_1e28m_120 {
  margin: 0;
  padding-left: 1.25rem;
  list-style-type: decimal;
}

._instructionsList_1e28m_120 li {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin-bottom: 0.375rem;
}

._instructionsList_1e28m_120 li:last-child {
  margin-bottom: 0;
}

/* Note */
._note_1e28m_140 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._noteIcon_1e28m_146 {
  width: 0.75rem;
  height: 0.75rem;
  flex-shrink: 0;
}

._note_1e28m_140 span {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
}

/* Submit button */
._submitButton_1e28m_161 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.25rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  margin-top: 0.5rem;
}

._submitButton_1e28m_161:hover {
  opacity: 0.9;
}

._submitButton_1e28m_161:active {
  opacity: 0.8;
}

._buttonIcon_1e28m_188 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
  transform: rotate(180deg);
}

/* Footer */
._footer_1e28m_196 {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

._footerText_1e28m_204 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

@media (max-width: 48rem) {
  ._loginCard_1e28m_14 {
    width: 90%;
    max-width: 28rem;
  }

  ._formContainer_1e28m_67 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }

  ._footer_1e28m_196 {
    bottom: 1rem;
  }
}

@media (max-width: 30rem) {
  ._loginCard_1e28m_14 {
    width: 95%;
  }

  ._formContainer_1e28m_67 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_1e28m_25 {
    padding: 1rem 1.5rem;
  }
}
/* ExpiredLinkScreen Styles - Mapinator MVP */

/* Container principal */
._container_1s8pw_4 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--bg-page);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Background com gradientes */
._background_1s8pw_16 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(41, 135, 194, 0.016) 0%, rgba(0, 0, 0, 0) 100%);
  pointer-events: none;
}

/* Card de erro */
._errorCard_1s8pw_27 {
  position: relative;
  width: 28rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 1;
}

/* Card glow effect */
._cardGlow_1s8pw_39 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
  z-index: 1;
}

/* Card inner */
._cardInner_1s8pw_51 {
  position: relative;
  z-index: 2;
}

/* Header azul */
._header_1s8pw_57 {
  position: relative;
  height: 9.25rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 2rem;
  overflow: hidden;
}

._headerContent_1s8pw_68 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
}

/* Logo container */
._logoContainer_1s8pw_77 {
  position: relative;
  width: 3.5rem;
  height: 3.5rem;
  background: rgba(41, 135, 194, 0.2);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1rem;
  box-shadow: 0rem 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1), 0rem 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
}

._logoBackground_1s8pw_90 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
  border-radius: 1rem;
}

._logoBlur_1s8pw_100 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  filter: blur(0.125rem);
  border-radius: 1rem 1rem 0 0;
}

._logoIcon_1s8pw_111 {
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

._logoIcon_1s8pw_111 svg {
  filter: brightness(0) invert(1);
}

._logoIcon_1s8pw_111 img {
  filter: brightness(0) invert(1);
}

/* Título */
._title_1s8pw_130 {
  margin: 0.5rem 0 0 0;
  font-family: 'Arial', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: white;
  text-align: center;
  letter-spacing: -0.025rem;
  text-shadow: 0rem 0.25rem 0.5rem rgba(0, 0, 0, 0.15);
}

/* Subtitle wrapper */
._subtitleWrapper_1s8pw_142 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
}

._subtitleIcon_1s8pw_149 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._subtitle_1s8pw_142 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

/* Content container */
._contentContainer_1s8pw_166 {
  padding: 1.25rem 2rem 2rem 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

/* Error icon (grande no centro) */
._errorIcon_1s8pw_176 {
  width: 5rem;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.75rem;
  margin-bottom: 0.5rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--status-error-legacy) 0%, var(--error-600) 100%);
  box-shadow: 0rem 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1), 0rem 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
}

._errorIcon_1s8pw_176 svg {
  filter: brightness(0) invert(1);
}

._errorIcon_1s8pw_176 img {
  filter: brightness(0) invert(1);
}

/* Error title */
._errorTitle_1s8pw_198 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--text-primary-legacy);
  text-align: center;
  line-height: 1.75rem;
}

/* Error message */
._errorMessage_1s8pw_209 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary-legacy);
  text-align: center;
  line-height: 1.25rem;
  max-width: 21.5625rem;
}

/* Instructions */
._instructions_1s8pw_221 {
  width: 100%;
  margin-top: 0.5rem;
  padding: 1rem;
  background: rgba(239, 246, 255, 0.5);
  border-radius: 0.5rem;
}

._instructionsTitle_1s8pw_229 {
  margin: 0 0 0.75rem 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary-legacy);
  line-height: 1.25rem;
}

._instructionsList_1s8pw_238 {
  margin: 0;
  padding-left: 1.25rem;
  list-style-type: decimal;
}

._instructionsList_1s8pw_238 li {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary-legacy);
  line-height: 1.25rem;
  margin-bottom: 0.5rem;
}

._instructionsList_1s8pw_238 li:last-child {
  margin-bottom: 0;
}

/* Request button */
._requestButton_1s8pw_258 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 2rem;
  background: var(--primary-blue);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  margin-top: 1.25rem;
  box-shadow: 0rem 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1), 0rem 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
}

._requestButton_1s8pw_258:hover {
  opacity: 0.9;
}

._requestButton_1s8pw_258:active {
  opacity: 0.8;
}

._buttonIcon_1s8pw_286 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

/* Login link */
._loginLink_1s8pw_293 {
  background: transparent;
  border: none;
  padding: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--primary-blue);
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: text-decoration 0.2s ease-in-out;
  margin-top: 0.5rem;
}

._loginLink_1s8pw_293:hover {
  text-decoration: underline;
}

/* Footer */
._footer_1s8pw_313 {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

._footerText_1s8pw_321 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-quaternary-legacy);
  text-align: center;
  line-height: 1rem;
}

/* Responsividade */
@media (max-width: 48rem) {
  ._errorCard_1s8pw_27 {
    width: 90%;
    max-width: 28rem;
  }

  ._contentContainer_1s8pw_166 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }

  ._footer_1s8pw_313 {
    bottom: 1rem;
  }
}

@media (max-width: 30rem) {
  ._errorCard_1s8pw_27 {
    width: 95%;
  }

  ._contentContainer_1s8pw_166 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_1s8pw_57 {
    padding: 1rem 1.5rem;
  }
}
/* PasswordRecovery Styles - matches LoginScreen */

._container_16vmo_3 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

._loginCard_16vmo_14 {
  position: relative;
  width: 28rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 1;
}

._header_16vmo_25 {
  position: relative;
  height: 9.25rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 2rem;
  overflow: hidden;
}

._verticalLockup_16vmo_36 {
  width: 200px;
  max-width: 100%;
  height: auto;
  z-index: 1;
}

._subtitleWrapper_16vmo_43 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  z-index: 1;
}

._subtitleIcon_16vmo_51 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._subtitle_16vmo_43 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

._formContainer_16vmo_67 {
  padding: 1.25rem 2rem 2rem 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
}

._form_16vmo_67 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._description_16vmo_78 {
  margin: 0 0 0.5rem 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  text-align: center;
  line-height: 1.25rem;
}

._inputGroup_16vmo_88 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._label_16vmo_94 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._labelIcon_16vmo_105 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

._input_16vmo_88 {
  width: 100%;
  height: 2.25rem;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.125rem solid var(--slate-300);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: normal;
  transition: border-color 0.3s ease-in-out;
}

._input_16vmo_88::placeholder {
  color: var(--text-tertiary);
}

._input_16vmo_88:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_16vmo_88:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._inputError_16vmo_140 {
  border-color: var(--error-500) !important;
}

._inputShake_16vmo_144 {
  animation: _shake_16vmo_1 0.4s ease-in-out;
}

@keyframes _shake_16vmo_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-0.1875rem); }
  40% { transform: translateX(0.1875rem); }
  60% { transform: translateX(-0.1875rem); }
  80% { transform: translateX(0.1875rem); }
}

._errorMessage_16vmo_156 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: 0.125rem;
}

._errorIcon_16vmo_168 {
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
  filter: invert(35%) sepia(89%) saturate(3026%) hue-rotate(346deg) brightness(98%) contrast(92%);
}

._submitButton_16vmo_175 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.25rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  margin-top: 0.5rem;
}

._submitButton_16vmo_175:hover:not(:disabled) {
  opacity: 0.9;
}

._submitButton_16vmo_175:active:not(:disabled) {
  opacity: 0.8;
}

._submitButton_16vmo_175:disabled {
  cursor: not-allowed;
}

._submitButtonLoading_16vmo_205 {
  opacity: 0.5;
}

._buttonIcon_16vmo_209 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

._spinner_16vmo_215 {
  width: 1rem;
  height: 1rem;
  border: 0.125rem solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: _spin_16vmo_215 0.8s linear infinite;
}

@keyframes _spin_16vmo_215 {
  to { transform: rotate(360deg); }
}

._link_16vmo_228 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  background: transparent;
  border: none;
  padding: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--action-primary-bg);
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: text-decoration 0.2s ease-in-out;
  align-self: center;
}

._link_16vmo_228:hover {
  text-decoration: underline;
}

._backIcon_16vmo_251 {
  width: 0.75rem;
  height: 0.75rem;
  transform: rotate(180deg);
}

._footer_16vmo_257 {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

._footerText_16vmo_265 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

@media (max-width: 48rem) {
  ._loginCard_16vmo_14 {
    width: 90%;
    max-width: 28rem;
  }

  ._formContainer_16vmo_67 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }

  ._footer_16vmo_257 {
    bottom: 1rem;
  }
}

@media (max-width: 30rem) {
  ._loginCard_16vmo_14 {
    width: 95%;
  }

  ._formContainer_16vmo_67 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_16vmo_25 {
    padding: 1rem 1.5rem;
  }
}
/* ResetPassword Styles - matches LoginScreen */

._container_1j7uf_3 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

._loginCard_1j7uf_14 {
  position: relative;
  width: 28rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 1;
}

._header_1j7uf_25 {
  position: relative;
  height: 9.25rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 2rem;
  overflow: hidden;
}

._verticalLockup_1j7uf_36 {
  width: 200px;
  max-width: 100%;
  height: auto;
  z-index: 1;
}

._subtitleWrapper_1j7uf_43 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  z-index: 1;
}

._subtitleIcon_1j7uf_51 {
  width: 0.75rem;
  height: 0.75rem;
  filter: brightness(0) invert(1);
}

._subtitle_1j7uf_43 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

._formContainer_1j7uf_67 {
  padding: 1.25rem 2rem 2rem 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
}

._form_1j7uf_67 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._description_1j7uf_78 {
  margin: 0 0 0.5rem 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  text-align: center;
  line-height: 1.25rem;
}

._inputGroup_1j7uf_88 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  position: relative;
}

._labelWithTooltip_1j7uf_95 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

._label_1j7uf_95 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._labelIcon_1j7uf_112 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

._inputWrapper_1j7uf_118 {
  position: relative;
  width: 100%;
}

._input_1j7uf_88 {
  width: 100%;
  height: 2.25rem;
  padding: 1rem;
  padding-right: 2.5rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.125rem solid var(--slate-300);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: normal;
  transition: border-color 0.3s ease-in-out;
}

._input_1j7uf_88::placeholder {
  color: var(--text-tertiary);
}

._input_1j7uf_88:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_1j7uf_88:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._inputSuccess_1j7uf_153 {
  border-color: var(--success-500) !important;
}

._inputError_1j7uf_157 {
  border-color: var(--error-500) !important;
}

._toggleButton_1j7uf_161 {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.25rem;
  height: 1.25rem;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  opacity: 0.6;
  transition: opacity 0.2s ease-in-out;
}

._toggleButton_1j7uf_161:hover {
  opacity: 1;
}

._toggleIcon_1j7uf_183 {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

/* Tooltip */
._tooltipContainer_1j7uf_190 {
  position: relative;
}

._tooltipIcon_1j7uf_194 {
  width: 1rem;
  height: 1rem;
  cursor: pointer;
  opacity: 0.6;
}

._tooltipIconImage_1j7uf_201 {
  width: 1rem;
  height: 1rem;
}

._tooltip_1j7uf_190 {
  display: none;
  position: absolute;
  right: 0;
  top: 1.5rem;
  width: 14rem;
  background: white;
  border: 0.0625rem solid var(--slate-300);
  border-radius: 0.5rem;
  padding: 0.75rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
  z-index: 10;
}

._tooltipContainer_1j7uf_190:hover ._tooltip_1j7uf_190 {
  display: block;
}

._tooltipTitle_1j7uf_224 {
  margin: 0 0 0.25rem 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--text-secondary);
}

._tooltipList_1j7uf_232 {
  margin: 0;
  padding-left: 1rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1.5;
}

/* Password strength indicator */
._strengthIndicator_1j7uf_242 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._strengthBars_1j7uf_248 {
  display: flex;
  gap: 0.25rem;
  height: 0.25rem;
}

._strengthBar_1j7uf_248 {
  flex: 1;
  background: var(--slate-200);
  border-radius: 0.125rem;
  transition: background-color 0.3s ease-in-out;
}

._strengthBar--weak_1j7uf_261 { background: var(--error-500); }
._strengthBar--medium_1j7uf_262 { background: var(--warning-500); }
._strengthBar--strong_1j7uf_263 { background: var(--info-500); }
._strengthBar--very-strong_1j7uf_264 { background: var(--success-500); }

._strengthLabel_1j7uf_266 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._strengthText--weak_1j7uf_275 { color: var(--error-500); font-weight: 700; }
._strengthText--medium_1j7uf_276 { color: var(--warning-500); font-weight: 700; }
._strengthText--strong_1j7uf_277 { color: var(--info-500); font-weight: 700; }
._strengthText--very-strong_1j7uf_278 { color: var(--success-500); font-weight: 700; }

/* Password match indicator */
._matchIndicator_1j7uf_281 {
  margin-top: 0.125rem;
}

._matchSuccess_1j7uf_285,
._matchError_1j7uf_286 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
}

._matchSuccess_1j7uf_285 { background: rgba(16, 185, 129, 0.1); }
._matchError_1j7uf_286 { background: rgba(239, 68, 68, 0.1); }

._matchIcon_1j7uf_297 {
  width: 1rem;
  height: 1rem;
}

._matchText_1j7uf_302 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
}

._matchSuccess_1j7uf_285 ._matchText_1j7uf_302 { color: var(--success-500); }
._matchError_1j7uf_286 ._matchText_1j7uf_302 { color: var(--error-500); }

._submitButton_1j7uf_312 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.25rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  margin-top: 0.5rem;
}

._submitButton_1j7uf_312:hover:not(:disabled) { opacity: 0.9; }
._submitButton_1j7uf_312:active:not(:disabled) { opacity: 0.8; }
._submitButton_1j7uf_312:disabled { opacity: 0.5; cursor: not-allowed; }
._submitButtonLoading_1j7uf_333 { opacity: 0.7; }

._buttonIcon_1j7uf_335 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

._spinner_1j7uf_341 {
  width: 1rem;
  height: 1rem;
  border: 0.125rem solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: _spin_1j7uf_341 0.8s linear infinite;
}

@keyframes _spin_1j7uf_341 {
  to { transform: rotate(360deg); }
}

._link_1j7uf_354 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  background: transparent;
  border: none;
  padding: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--action-primary-bg);
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: text-decoration 0.2s ease-in-out;
  align-self: center;
}

._link_1j7uf_354:hover { text-decoration: underline; }

._backIcon_1j7uf_375 {
  width: 0.75rem;
  height: 0.75rem;
  transform: rotate(180deg);
}

._footer_1j7uf_381 {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

._footerText_1j7uf_389 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

@media (max-width: 48rem) {
  ._loginCard_1j7uf_14 {
    width: 90%;
    max-width: 28rem;
  }

  ._formContainer_1j7uf_67 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }

  ._footer_1j7uf_381 {
    bottom: 1rem;
  }
}

@media (max-width: 30rem) {
  ._loginCard_1j7uf_14 {
    width: 95%;
  }

  ._formContainer_1j7uf_67 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_1j7uf_25 {
    padding: 1rem 1.5rem;
  }
}
/* Error404 Styles - Mapinator MVP */

/* Container principal */
._container_gnts6_7 {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--slate-200);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Background com gradientes */
._background_gnts6_31 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.016) 0%, rgba(0, 0, 0, 0) 100%);
  pointer-events: none;
}

/* Card de erro */
._errorCard_gnts6_53 {
  position: relative;
  width: 28rem;
  z-index: 1;
}

/* Card glow effect */
._cardGlow_gnts6_67 {
  position: absolute;
  top: -0.7rem;
  left: -0.7rem;
  width: 29.4rem;
  height: 28.3882rem;
  background: linear-gradient(to right, rgba(37, 99, 235, 0.1), rgba(37, 99, 235, 0.1));
  border-radius: 1.5rem;
  filter: blur(6rem);
}

._cardInner_gnts6_89 {
  position: relative;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1.5rem;
  box-shadow: 0rem 1.25rem 1.5625rem -0.3125rem rgba(0, 0, 0, 0.1), 0rem 0.5rem 0.625rem -0.375rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

/* Header azul */
._header_gnts6_109 {
  position: relative;
  height: 8.375rem;
  background: linear-gradient(0deg, var(--slate-800), var(--slate-1000));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1rem 1.5rem;
  overflow: hidden;
}

._headerContent_gnts6_133 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  z-index: 1;
}

/* Logo container */
._logoContainer_gnts6_153 {
  position: relative;
  width: 3rem;
  height: 3rem;
  background: rgba(255, 255, 255, 0.3);
  border: 0.0417rem solid rgba(255, 255, 255, 0.6);
  border-radius: 1rem;
  box-shadow: 0rem 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1), 0rem 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
}

._logoBackground_gnts6_179 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
  border-radius: 1rem;
}

._logoBlur_gnts6_199 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  filter: blur(0.125rem);
  border-radius: 1rem 1rem 0 0;
}

._logoIcon_gnts6_221 {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

._logoIcon_gnts6_221 img {
  filter: brightness(0) saturate(100%) invert(27%) sepia(98%) saturate(4456%) hue-rotate(351deg) brightness(95%) contrast(95%);
}

/* Título */
._title_gnts6_251 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--text-inverse);
  text-align: center;
  letter-spacing: -0.0312rem;
  text-shadow: 0rem 0.25rem 0.5rem rgba(0, 0, 0, 0.15);
}

/* Subtitle */
._subtitle_gnts6_275 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  text-align: center;
  text-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.12);
}

/* Body */
._body_gnts6_297 {
  padding: 1.25rem 1.5rem 2rem 1.5rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.1) 100%);
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Description */
._description_gnts6_315 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  text-align: center;
  line-height: 1.4219rem;
}

/* Info box */
._infoBox_gnts6_337 {
  padding: 0.75rem;
  background: var(--blue-50);
  border: 0.0417rem solid var(--blue-200);
  border-radius: 0.625rem;
}

._infoText_gnts6_351 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--blue-600);
  text-align: center;
  line-height: 1.2188rem;
}

/* Button Group */
._buttonGroup_gnts6_373 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/* Button */
._button_gnts6_373 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.5rem;
  background: var(--action-primary-bg);
  border: none;
  border-radius: 0.625rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--action-primary-text);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  box-shadow: 0rem 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1), 0rem 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.1);
}

._button_gnts6_373:hover {
  opacity: 0.9;
}

._button_gnts6_373:active {
  opacity: 0.8;
}

._button_gnts6_373 img {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

/* Logout Button */
._logoutButton_gnts6_453 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.5rem;
  background: transparent;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._logoutButton_gnts6_453:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
}

._logoutButton_gnts6_453:active {
  background: var(--slate-200);
}

._logoutButton_gnts6_453 img {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) saturate(100%) invert(47%) sepia(8%) saturate(1015%) hue-rotate(177deg) brightness(92%) contrast(87%);
}

/* Footer */
._footer_gnts6_519 {
  padding-top: 0.75rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._footerText_gnts6_529 {
  margin: 0;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

/* Responsividade */
@media (max-width: 48rem) {
  ._errorCard_gnts6_53 {
    width: 90%;
    max-width: 28rem;
  }

  ._body_gnts6_297 {
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
  }
}

@media (max-width: 30rem) {
  ._errorCard_gnts6_53 {
    width: 95%;
  }

  ._body_gnts6_297 {
    padding: 1rem 1.25rem 1.25rem 1.25rem;
  }

  ._header_gnts6_109 {
    padding: 1rem 1.5rem;
  }
}
._pageTransition_q278j_1 {
  opacity: 0;
  transform: translateY(0.5rem);
  transition: opacity 0.3s ease-out, transform 0.3s ease-out;
  width: 100%;
  height: 100%;
}

._pageTransition_q278j_1._visible_q278j_9 {
  opacity: 1;
  transform: translateY(0);
}
/* ClientsSidebar Styles - Mapinator MVP */
/* ANIMATION PRINCIPLE: sidebar width transitions smoothly. All rows use
   justify-content:center so their icon is always horizontally centered
   within whatever width the sidebar currently has. Text siblings fade
   out via opacity/width/flex transitions. No margin:auto tricks needed. */

._sidebar_fh71o_7 {
  display: flex;
  flex-direction: column;
  width: 14rem;
  height: 100vh;
  background: var(--surface-subtle);
  position: relative;
  transition: width 0.3s ease-in-out;
  flex-shrink: 0;
  overflow: visible;
}

._sidebarCollapsed_fh71o_19 {
  width: 4.5rem;
}

/* ===== HEADER ===== */
._header_fh71o_24 {
  display: flex;
  align-items: center;
  padding: 0.75rem 0;
  height: 3.5rem;
  border-bottom: 0.0417rem solid var(--border-subtle);
  background: var(--surface-card);
  overflow: visible;
}

._logoButton_fh71o_34 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  width: 100%;
  transition: gap 0.3s ease-in-out;
}

._sidebarCollapsed_fh71o_19 ._logoButton_fh71o_34 {
  gap: 0;
}

._logoButton_fh71o_34:hover {
  opacity: 0.8;
}

._logo_fh71o_34 {
  width: 2rem;
  height: 2rem;
  background: var(--surface-card);
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._logoIcon_fh71o_66 {
  width: 1.9rem;
  height: 1.9rem;
  color: var(--indigo-700);
}

._horizontalLockup_fh71o_72 {
  max-width: 100%;
  height: 1.6rem;
  flex-shrink: 0;
}

/* Title removed — wordmark is part of HorizontalLockup SVG */

/* ===== CONTENT ===== */
._content_fh71o_81 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 0;
  padding-top: 1rem;
  overflow-x: hidden;
  overflow-y: auto;
  flex: 1;
  border-right: 0.0417rem solid var(--slate-300);
}

/* ===== SECTION HEADER (Users icon + CLIENTES) ===== */
._sectionHeader_fh71o_94 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  min-height: 1.25rem;
  transition: gap 0.3s ease-in-out;
}

._sidebarCollapsed_fh71o_19 ._sectionHeader_fh71o_94 {
  gap: 0;
}

._sectionIcon_fh71o_108 {
  color: var(--blue-600);
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
}

._sectionTitle_fh71o_115 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-primary);
  text-transform: uppercase;
  letter-spacing: 0.0375rem;
  margin: 0;
  line-height: 1rem;
  white-space: nowrap;
  overflow: hidden;
  opacity: 1;
  transition: opacity 0.3s ease-in-out, width 0.3s ease-in-out, flex 0.3s ease-in-out;
}

._sidebarCollapsed_fh71o_19 ._sectionTitle_fh71o_115 {
  opacity: 0;
  width: 0;
  flex: 0;
}

/* ===== ADD BUTTON ===== */
._addButton_fh71o_137 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 1.75rem;
  min-height: 1.75rem;
  max-height: 1.75rem;
  width: calc(100% - 1.2rem);
  margin: 0 0.6rem;
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
  border: none;
  border-radius: 0.5rem;
  color: var(--text-inverse);
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  cursor: pointer;
  transition: gap 0.3s ease-in-out, border-radius 0.3s ease-in-out;
  padding: 0;
  flex-shrink: 0;
}

._sidebarCollapsed_fh71o_19 ._addButton_fh71o_137 {
  border-radius: 0.625rem;
  gap: 0;
}

._addButton_fh71o_137:hover {
  opacity: 0.9;
}

._addButton_fh71o_137 svg {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--text-inverse);
  fill: currentColor;
  flex-shrink: 0;
}

._addButton_fh71o_137 span {
  white-space: nowrap;
  overflow: hidden;
  opacity: 1;
  transition: opacity 0.3s ease-in-out, width 0.3s ease-in-out, flex 0.3s ease-in-out;
}

._sidebarCollapsed_fh71o_19 ._addButton_fh71o_137 span {
  opacity: 0;
  width: 0;
  flex: 0;
}

/* ===== CLIENT LIST ===== */
._clientList_fh71o_190 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 0 0.6rem;
}

._clientCardWrapper_fh71o_197 {
  position: static;
}

/* ===== CLIENT CARD ===== */
._clientCard_fh71o_197 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 3.875rem;
  width: 100%;
  padding: 0;
  background: rgba(255, 255, 255, 0.5);
  border: none;
  border-radius: 0.625rem;
  cursor: pointer;
  transition: gap 0.3s ease-in-out, background 0.2s ease-in-out, box-shadow 0.2s ease-in-out, transform 0.2s ease-in-out;
  text-align: left;
  position: relative;
  flex-shrink: 0;
}

._sidebarCollapsed_fh71o_19 ._clientCard_fh71o_197 {
  gap: 0;
  justify-content: center;
}

._clientCardSelected_fh71o_225 {
  background: linear-gradient(to right, rgba(37, 99, 235, 0.1), rgba(0, 0, 0, 0));
  border-left: 0.125rem solid var(--blue-600);
  box-shadow: 0 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1), 0 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.1);
}

._clientCardSelected_fh71o_225 ._clientName_fh71o_231 {
  color: var(--blue-600);
}

._clientCardInactive_fh71o_235 {
  opacity: 0.5;
  background: rgba(241, 245, 249, 0.5);
}

._clientCardInactive_fh71o_235:hover {
  opacity: 0.6;
}

._clientCard_fh71o_197:hover {
  background: rgba(37, 99, 235, 0.06);
  box-shadow: 0 0.125rem 0.5rem -0.0625rem rgba(0, 0, 0, 0.08), 0 0.0625rem 0.25rem -0.0625rem rgba(0, 0, 0, 0.06);
  transform: translateY(-0.0625rem);
}

._clientCardSelected_fh71o_225:hover {
  background: linear-gradient(to right, rgba(37, 99, 235, 0.18), rgba(37, 99, 235, 0.04));
  box-shadow: 0 0.25rem 0.5rem -0.0625rem rgba(37, 99, 235, 0.15), 0 0.125rem 0.25rem -0.125rem rgba(37, 99, 235, 0.1);
  transform: translateY(-0.0625rem);
}

/* Client acronym — hidden when expanded, visible when collapsed */
._clientAcronym_fh71o_257 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--slate-700);
  font-weight: 700;
  letter-spacing: 0.0312rem;
  height: 2rem;
  overflow: hidden;
  opacity: 0;
  width: 0;
  flex: 0;
  transition: opacity 0.3s ease-in-out, width 0.3s ease-in-out, flex 0.3s ease-in-out;
}

._sidebarCollapsed_fh71o_19 ._clientAcronym_fh71o_257 {
  opacity: 1;
  width: 2rem;
  flex: unset;
  margin: 0 auto;
  text-align: center;
}

/* Client info - like the span in addButton: fades out when collapsed */
._clientInfo_fh71o_283 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  overflow: hidden;
  white-space: nowrap;
  opacity: 1;
  transition: opacity 0.3s ease-in-out, width 0.3s ease-in-out, flex 0.3s ease-in-out;
  flex: 1;
  min-width: 0;
  padding-left: 0.75rem;
}

._sidebarCollapsed_fh71o_19 ._clientInfo_fh71o_283 {
  opacity: 0;
  width: 0;
  flex: 0;
  padding-left: 0;
}

._clientName_fh71o_231 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

._clientProjects_fh71o_314 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

/* ===== EDIT BUTTON ===== */
._editButton_fh71o_323 {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.75rem;
  height: 1.75rem;
  background: transparent;
  border: none;
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
  padding: 0;
}

._clientCard_fh71o_197:hover ._editButton_fh71o_323 {
  display: flex;
}

._sidebarCollapsed_fh71o_19 ._clientCard_fh71o_197:hover ._editButton_fh71o_323 {
  display: none;
}

._editButton_fh71o_323:hover {
  transform: translateY(-50%) scale(1.15);
}

._editIcon_fh71o_352 {
  width: 0.875rem;
  height: 0.875rem;
  color: var(--blue-600);
}

/* ===== COLLAPSE BUTTON ===== */
._collapseButton_fh71o_359 {
  position: absolute;
  top: 2.7rem;
  right: -0.75rem;
  width: 1.4583rem;
  height: 1.4583rem;
  background: var(--surface-card);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: var(--shadow-sm);
  transition: all 0.3s ease-in-out;
  z-index: 10;
  padding: 0;
}

._collapseButton_fh71o_359:hover {
  border-color: var(--indigo-700);
}

._collapseButton_fh71o_359:hover ._collapseIcon_fh71o_382 {
  color: var(--indigo-700);
}

._collapseIcon_fh71o_382 {
  width: 0.875rem;
  height: 0.875rem;
  color: var(--text-tertiary);
  transition: all 0.3s ease-in-out;
}

._collapseIconFlipped_fh71o_393 {
  transform: rotate(180deg);
}

/* ===== SCROLLBAR ===== */
._content_fh71o_81::-webkit-scrollbar {
  width: 0.25rem;
}

._content_fh71o_81::-webkit-scrollbar-track {
  background: transparent;
}

._content_fh71o_81::-webkit-scrollbar-thumb {
  background: var(--slate-300);
  border-radius: 0.125rem;
}

._content_fh71o_81::-webkit-scrollbar-thumb:hover {
  background: var(--slate-400);
}

/* ===== TOOLTIP (when collapsed) ===== */
._clientTooltip_fh71o_416 {
  position: fixed;
  background: var(--surface-card);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  box-shadow: 0 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1), 0 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  pointer-events: none;
  z-index: 9999;
  white-space: nowrap;
  min-width: 11.25rem;
}

._clientTooltip_fh71o_416::before {
  content: '';
  position: absolute;
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  border: 0.375rem solid transparent;
  border-right-color: var(--border-subtle);
}

._clientTooltip_fh71o_416::after {
  content: '';
  position: absolute;
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  border: 0.3125rem solid transparent;
  border-right-color: var(--surface-card);
  margin-right: -0.0625rem;
}

._sidebarCollapsed_fh71o_19 ._clientCardWrapper_fh71o_197:hover ._clientTooltip_fh71o_416 {
  opacity: 1;
  visibility: visible;
}

._clientTooltipName_fh71o_458 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin-bottom: 0.25rem;
}

._clientTooltipProjects_fh71o_467 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
}
/* Header Styles - Mapinator MVP */

._header_8anxe_5 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 1.5rem;
  height: 3.5rem;
  background: var(--surface-card);
  border-bottom: 0.0417rem solid var(--border-subtle);
  box-shadow: var(--shadow-sm);
  gap: 0.75rem;
  flex-shrink: 0;
}

/* Navigation */
._nav_8anxe_33 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

/* Nav button - icon only */
._navButton_8anxe_47 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  background: transparent;
  border: none;
  border-radius: 0.5rem;
  color: var(--blue-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  position: relative;
  padding: 0;
}

._navButton_8anxe_47:hover {
  background: var(--blue-50);
}

._navButton_8anxe_47:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
}

._navIcon_8anxe_97 {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--blue-600);
  fill: var(--blue-600);
}

/* Badge for notifications */
._navButtonWithBadge_8anxe_113 {
  position: relative;
}

/* Language badge */
._langBadge_8anxe_123 {
  position: absolute;
  bottom: 0.125rem;
  right: 0.125rem;
  font-size: 0.5625rem;
  font-weight: 700;
  line-height: 1;
  color: var(--blue-600);
  pointer-events: none;
}

._langWrapper_8anxe_145 {
  position: relative;
}

._langDropdown_8anxe_153 {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  min-width: 180px;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  padding: 0.25rem;
  z-index: 100;
}

._langOption_8anxe_179 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.5rem 0.75rem;
  border: none;
  background: transparent;
  border-radius: 0.375rem;
  cursor: pointer;
  font-size: 0.8125rem;
  color: var(--text-primary);
  transition: background 0.15s;
}

._langOption_8anxe_179:hover {
  background: var(--surface-hover);
}

._langOptionActive_8anxe_217 {
  background: var(--blue-50);
  color: var(--blue-700);
}

._langOptionLabel_8anxe_227 {
  flex: 1;
  text-align: left;
}

._langOptionCode_8anxe_237 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-secondary);
  text-transform: uppercase;
}

._badge_8anxe_251 {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 1rem;
  height: 1rem;
  padding: 0 0.25rem;
  background: var(--error-500);
  border-radius: 624.9375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Arial', sans-serif;
  font-size: 0.625rem;
  color: var(--text-inverse);
  line-height: 1;
  font-weight: 600;
}

/* Vertical divider */
._divider_8anxe_291 {
  width: 1px;
  height: 1.5rem;
  background: var(--border-subtle);
  flex-shrink: 0;
}

/* User section */
._userSection_8anxe_307 {
  position: relative;
}

._avatarButton_8anxe_315 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0.25rem;
  border-radius: 0.5rem;
  transition: background 0.2s ease-in-out;
}

._avatarButton_8anxe_315:hover {
  background: var(--indigo-50);
}

._avatarButton_8anxe_315:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
}

._avatar_8anxe_315 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: var(--indigo-700);
  color: var(--text-inverse);
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

._chevron_8anxe_389 {
  transition: transform 0.2s ease-in-out;
  flex-shrink: 0;
  color: var(--slate-600);
}

._chevronOpen_8anxe_401 {
  transform: rotate(180deg);
}

/* Dropdown */
._dropdown_8anxe_411 {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  width: 16rem;
  background: var(--surface-card);
  border: 1px solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: var(--shadow-lg);
  z-index: 1000;
  overflow: hidden;
  animation: _dropdownFadeIn_8anxe_1 0.15s ease-out;
}

@keyframes _dropdownFadeIn_8anxe_1 {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Dropdown user info section */
._dropdownUserInfo_8anxe_463 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem;
}

._dropdownAvatar_8anxe_477 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--indigo-700);
  color: var(--text-inverse);
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

._dropdownUserText_8anxe_509 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}

._dropdownUserName_8anxe_523 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._dropdownUserEmail_8anxe_543 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--text-secondary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Dropdown divider */
._dropdownDivider_8anxe_563 {
  height: 1px;
  background: var(--border-subtle);
  margin: 0;
}

/* Dropdown menu items */
._dropdownItem_8anxe_577 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.75rem 1rem;
  background: transparent;
  border: none;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s ease-in-out;
  text-align: left;
}

._dropdownItem_8anxe_577:hover {
  background: var(--surface-subtle);
}

._dropdownItem_8anxe_577:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: -2px;
}

._dropdownItemIcon_8anxe_627 {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--text-secondary);
  fill: var(--text-secondary);
  flex-shrink: 0;
}

/* Danger item (Sair) */
._dropdownItemDanger_8anxe_645 {
  color: var(--error-500);
}

._dropdownItemDanger_8anxe_645 ._dropdownItemIcon_8anxe_627 {
  color: var(--error-500);
  fill: var(--error-500);
}

._dropdownItemDanger_8anxe_645:hover {
  background: var(--error-50);
}

/* Loading spinner */
._loadingSpinner_8anxe_673 {
  width: 0.875rem;
  height: 0.875rem;
  border: 0.125rem solid var(--blue-100);
  border-top-color: var(--blue-600);
  border-radius: 50%;
  animation: _spin_8anxe_1 0.8s linear infinite;
  flex-shrink: 0;
  position: absolute;
  top: -0.125rem;
  left: -0.125rem;
}

@keyframes _spin_8anxe_1 {
  to {
    transform: rotate(360deg);
  }
}
/* NotificationBell Styles - Mapinator MVP */

/* ─── Trigger Button ─────────────────────────────────────────────────── */

._bellButton_15v1a_5 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    background: transparent;
    border: none;
    border-radius: 0.5rem;
    color: var(--blue-600);
    cursor: pointer;
    transition: background 0.2s ease-in-out;
    padding: 0;
}

._bellButton_15v1a_5:hover {
    background: var(--blue-50);
}

._bellButton_15v1a_5:focus-visible {
    outline: 2px solid var(--border-focus);
    outline-offset: 2px;
}

._bellIcon_15v1a_30 {
    width: 1.1rem;
    height: 1.1rem;
    color: var(--blue-600);
}

._badge_15v1a_36 {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 1rem;
    height: 1rem;
    padding: 0 0.25rem;
    background: var(--error-600);
    border-radius: 624.9375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    color: var(--text-inverse);
    line-height: 1;
    font-weight: 600;
}

/* ─── Popover ────────────────────────────────────────────────────────── */

._popoverWrapper_15v1a_56 {
    position: relative;
}

._popover_15v1a_56 {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    width: 22.5rem;
    background: var(--surface-card);
    border: 1px solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: var(--shadow-lg);
    z-index: 1000;
    overflow: hidden;
    animation: _popoverFadeIn_15v1a_1 0.15s ease-out;
}

@keyframes _popoverFadeIn_15v1a_1 {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ─── Popover Header ─────────────────────────────────────────────────── */

._popoverHeader_15v1a_88 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-subtle);
}

._popoverHeaderLeft_15v1a_96 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._sparkleIcon_15v1a_102 {
    width: 0.875rem;
    height: 0.875rem;
    color: var(--blue-600);
}

._popoverTitle_15v1a_108 {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

._unreadBadge_15v1a_114 {
    font-size: 0.625rem;
    background: var(--blue-50);
    color: var(--blue-600);
    border-radius: 624.9375rem;
    padding: 0.125rem 0.375rem;
    font-weight: 500;
}

._markAllButton_15v1a_123 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    color: var(--text-secondary);
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0.25rem 0.375rem;
    border-radius: 0.25rem;
    transition: color 0.15s;
}

._markAllButton_15v1a_123:hover {
    color: var(--text-primary);
}

._markAllButton_15v1a_123:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

._markAllIcon_15v1a_146 {
    width: 0.75rem;
    height: 0.75rem;
}

/* ─── Popover List ───────────────────────────────────────────────────── */

._popoverList_15v1a_153 {
    max-height: 21.25rem;
    overflow-y: auto;
}

._popoverEmpty_15v1a_158 {
    padding: 2rem 1rem;
    text-align: center;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

._noteItem_15v1a_165 {
    display: block;
    width: 100%;
    text-align: left;
    padding: 0.75rem 1rem;
    border: none;
    border-bottom: 1px solid var(--border-subtle);
    background: transparent;
    cursor: pointer;
    transition: background 0.15s;
}

._noteItem_15v1a_165:last-child {
    border-bottom: none;
}

._noteItem_15v1a_165:hover {
    background: var(--slate-50);
}

._noteItemUnread_15v1a_185 {
    background: var(--blue-50);
}

._noteItemInner_15v1a_189 {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
}

._unreadDot_15v1a_195 {
    margin-top: 0.375rem;
    width: 0.375rem;
    height: 0.375rem;
    border-radius: 50%;
    flex-shrink: 0;
}

._unreadDotActive_15v1a_203 {
    background: var(--blue-600);
}

._unreadDotInactive_15v1a_207 {
    background: transparent;
}

._noteItemContent_15v1a_211 {
    flex: 1;
    min-width: 0;
}

._noteItemMeta_15v1a_216 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.125rem;
}

._noteItemTitle_15v1a_223 {
    font-size: 0.8125rem;
    line-height: 1.4;
    color: var(--text-secondary);
}

._noteItemTitleUnread_15v1a_229 {
    font-weight: 600;
    color: var(--text-primary);
}

._noteItemDate_15v1a_234 {
    font-size: 0.6875rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

/* ─── Tags ───────────────────────────────────────────────────────────── */

._tag_15v1a_242 {
    font-size: 0.5625rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
}

._tagFeature_15v1a_251 {
    background: var(--blue-50);
    color: var(--blue-600);
}

._tagImprovement_15v1a_256 {
    background: var(--warning-50);
    color: var(--warning-600);
}

._tagFix_15v1a_261 {
    background: var(--success-50);
    color: var(--success-600);
}

._versionLabel_15v1a_266 {
    font-family: monospace;
    font-size: 0.625rem;
    color: var(--text-secondary);
}

/* ─── Popover Footer ─────────────────────────────────────────────────── */

._popoverFooter_15v1a_274 {
    border-top: 1px solid var(--border-subtle);
    padding: 0.5rem 1rem;
}

._viewAllButton_15v1a_279 {
    display: block;
    width: 100%;
    font-size: 0.75rem;
    color: var(--blue-600);
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0.25rem;
    text-align: center;
    border-radius: 0.25rem;
    transition: background 0.15s;
}

._viewAllButton_15v1a_279:hover {
    background: var(--blue-50);
    text-decoration: underline;
}

/* ─── Central Modal ──────────────────────────────────────────────────── */

._centralOverlay_15v1a_300 {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--surface-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1100;
    padding: 1.5rem;
}

._centralContent_15v1a_314 {
    background: var(--surface-card);
    border-radius: 0.625rem;
    box-shadow: var(--shadow-lg);
    width: 100%;
    max-width: 48rem;
    height: 32.5rem;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: _modalSlideIn_15v1a_1 0.2s ease-out;
}

@keyframes _modalSlideIn_15v1a_1 {
    from {
        opacity: 0;
        transform: translateY(-1.25rem);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

._centralHeader_15v1a_339 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-subtle);
    flex-shrink: 0;
}

._centralHeaderLeft_15v1a_348 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._centralTitle_15v1a_354 {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

._centralCloseButton_15v1a_361 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: transparent;
    border: none;
    border-radius: 0.5rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    padding: 0;
}

._centralCloseButton_15v1a_361:hover {
    background: var(--slate-50);
    color: var(--slate-700);
}

/* ─── Central Grid ───────────────────────────────────────────────────── */

._centralGrid_15v1a_383 {
    display: grid;
    grid-template-columns: 17.5rem 1fr;
    flex: 1;
    min-height: 0;
}

/* ─── Central List Panel ─────────────────────────────────────────────── */

._centralListPanel_15v1a_392 {
    border-right: 1px solid var(--border-subtle);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

._centralSearchArea_15v1a_399 {
    padding: 0.75rem;
    border-bottom: 1px solid var(--border-subtle);
}

._searchInputWrapper_15v1a_404 {
    position: relative;
}

._searchIcon_15v1a_408 {
    position: absolute;
    left: 0.625rem;
    top: 50%;
    transform: translateY(-50%);
    width: 0.875rem;
    height: 0.875rem;
    color: var(--text-secondary);
    pointer-events: none;
}

._searchInput_15v1a_404 {
    width: 100%;
    padding: 0.375rem 0.5rem 0.375rem 2rem;
    font-size: 0.75rem;
    background: var(--slate-50);
    border: 1px solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-primary);
    transition: border-color 0.15s;
}

._searchInput_15v1a_404::placeholder {
    color: var(--slate-400);
}

._searchInput_15v1a_404:focus {
    outline: none;
    border-color: var(--blue-600);
}

._searchMeta_15v1a_439 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.5rem;
}

._searchCount_15v1a_446 {
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

._searchMarkAll_15v1a_451 {
    font-size: 0.6875rem;
    color: var(--blue-600);
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
}

._searchMarkAll_15v1a_451:hover {
    text-decoration: underline;
}

._searchMarkAll_15v1a_451:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    text-decoration: none;
}

._centralList_15v1a_392 {
    flex: 1;
    overflow-y: auto;
}

._centralListItem_15v1a_475 {
    display: block;
    width: 100%;
    text-align: left;
    padding: 0.625rem 0.75rem;
    border: none;
    border-bottom: 1px solid var(--border-subtle);
    background: transparent;
    cursor: pointer;
    transition: background 0.15s;
}

._centralListItem_15v1a_475:hover {
    background: var(--slate-50);
}

._centralListItemActive_15v1a_491 {
    background: var(--blue-50);
}

._centralListItemMeta_15v1a_495 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.125rem;
}

._centralListItemDot_15v1a_502 {
    width: 0.375rem;
    height: 0.375rem;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

._centralListItemDotUnread_15v1a_510 {
    background: var(--blue-600);
}

._centralListItemDotRead_15v1a_514 {
    background: transparent;
}

._centralListItemTitle_15v1a_518 {
    font-size: 0.75rem;
    line-height: 1.4;
    color: var(--text-secondary);
}

._centralListItemTitleUnread_15v1a_524 {
    font-weight: 600;
    color: var(--text-primary);
}

._centralListItemDate_15v1a_529 {
    font-size: 0.625rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

/* ─── Central Detail Panel ───────────────────────────────────────────── */

._centralDetailPanel_15v1a_537 {
    overflow-y: auto;
    padding: 1.25rem;
}

._detailMeta_15v1a_542 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
    flex-wrap: wrap;
}

._detailMetaItem_15v1a_550 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-family: monospace;
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

._detailMetaIcon_15v1a_559 {
    width: 0.75rem;
    height: 0.75rem;
}

._detailTitle_15v1a_564 {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.3;
    margin: 0 0 0.5rem 0;
}

._detailSummary_15v1a_572 {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-top: 0.5rem;
}

._detailHighlightsSection_15v1a_579 {
    margin-top: 1.25rem;
}

._detailHighlightsTitle_15v1a_583 {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    font-weight: 600;
    margin-bottom: 0.5rem;
}

._detailHighlightsList_15v1a_592 {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

._detailHighlightItem_15v1a_601 {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-primary);
    line-height: 1.4;
}

._detailHighlightDot_15v1a_610 {
    margin-top: 0.375rem;
    width: 0.25rem;
    height: 0.25rem;
    border-radius: 50%;
    background: var(--blue-600);
    flex-shrink: 0;
}

/* ─── Empty Detail State ─────────────────────────────────────────────── */

._detailEmpty_15v1a_621 {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1.5rem;
    color: var(--text-secondary);
}

._detailEmptyIcon_15v1a_632 {
    width: 2rem;
    height: 2rem;
    opacity: 0.4;
    margin-bottom: 0.75rem;
}

._detailEmptyText_15v1a_639 {
    font-size: 0.8125rem;
}

._detailEmptySubtext_15v1a_643 {
    font-size: 0.6875rem;
    margin-top: 0.25rem;
    opacity: 0.8;
}
/* Tabs Styles */

._tabs_3ro0c_5 {
  display: flex;
  align-items: flex-start;
  background: var(--surface-card);
  position: relative;
  border-bottom: 0.0417rem solid var(--border-subtle);
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

/* Scrollbar styling is handled by global CSS in index.css */

._tab_3ro0c_5 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2.875rem;
  padding: 0 0.75rem 0.125rem 0.75rem;
  background: transparent;
  border: none;
  border-bottom: 0.125rem solid transparent;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  position: relative;
  white-space: nowrap;
}

._tab_3ro0c_5:hover {
  background: rgba(239, 246, 255, 0.3);
  color: var(--action-primary-bg);
}

._tab_3ro0c_5:hover ._tabIcon_3ro0c_79 {
  color: var(--action-primary-bg);
}

._tabActive_3ro0c_87 {
  color: var(--action-primary-bg);
  font-weight: 400;
  border-bottom-color: var(--action-primary-bg);
  background: rgba(239, 246, 255, 0.5);
}

._tabActive_3ro0c_87 ._tabIcon_3ro0c_79 {
  color: var(--action-primary-bg);
}

._tabIcon_3ro0c_79 {
  width: 1rem;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--text-secondary);
  transition: color 0.2s ease-in-out;
}

._tabIcon_3ro0c_79 svg {
  width: 1rem;
  height: 1rem;
}

._tabIcon_3ro0c_79 svg path {
  stroke: currentColor !important;
}

._tabDisabled_3ro0c_149 {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

._tabDisabled_3ro0c_149:hover {
  background: transparent;
  color: var(--text-secondary);
}

._tabStale_3ro0c_171 {
  color: var(--color-stale-dark);
  border-bottom-color: var(--color-stale);
}

._tabStale_3ro0c_171 ._tabIcon_3ro0c_79 {
  color: var(--color-stale-dark);
}

._tabStale_3ro0c_171:hover {
  background: var(--color-stale-bg-active);
  color: var(--color-stale-dark);
}

._tabStale_3ro0c_171:hover ._tabIcon_3ro0c_79 {
  color: var(--color-stale-dark);
}

._tabStale_3ro0c_171._tabActive_3ro0c_87 {
  color: var(--color-stale-dark);
  border-bottom-color: var(--color-stale);
  background: var(--color-stale-bg-active);
}

._tabStale_3ro0c_171._tabActive_3ro0c_87 ._tabIcon_3ro0c_79 {
  color: var(--color-stale-dark);
}/* TabbedCard Styles - FIXED LAYOUT PATTERN */
._tabbedCard_1fkmi_3 {
  display: flex;
  flex-direction: column;
  background: var(--surface-card);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  flex: 1;
  min-height: 0;
}

/* Card Header (Title + Subtitle) - FIXED */
._cardHeader_1fkmi_29 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 1.25rem 1.5rem;
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
  background: var(--surface-card);
}

._cardTitle_1fkmi_49 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._cardSubtitle_1fkmi_67 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

/* Tabs Container - FIXED */
._tabsContainer_1fkmi_85 {
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
  background: var(--surface-card);
}

/* Card Content - SCROLLABLE */
._cardContent_1fkmi_99 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.5rem;
  padding-right: 1rem;
  overflow-y: auto;
  overflow-x: hidden;
  flex: 1;
  background: var(--surface-card);
}

/* Scrollbar styling */
._cardContent_1fkmi_99::-webkit-scrollbar {
  width: 0.25rem;
}

._cardContent_1fkmi_99::-webkit-scrollbar-track {
  background: transparent;
}

._cardContent_1fkmi_99::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._cardContent_1fkmi_99::-webkit-scrollbar-thumb:hover {
  background: var(--border-strong);
}
/* HomeScreen.module.css */
._homeScreen_16l43_2 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  overflow: hidden;
}

._mainContent_16l43_10 {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
}

/* DashboardContent.module.css */
._dashboardContent_16l43_18 {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.5rem;
  background: var(--slate-200);
  overflow: hidden;
  gap: 1rem;
}

/* Header Card - White card with title and welcome */
._headerCard_16l43_29 {
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  padding: 1.25rem 1.5rem;
  flex-shrink: 0;
}

._dashboardTitle_16l43_38 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0 0 0.25rem 0;
}

._welcomeRow_16l43_47 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._welcomeText_16l43_53 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

._infoButton_16l43_61 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--text-disabled);
  transition: color 0.2s ease-in-out;
  padding: 0;
}

._infoButton_16l43_61:hover {
  color: var(--blue-600);
}

._infoButton_16l43_61 svg {
  width: 1rem;
  height: 1rem;
}

/* Tooltip */
._infoButton_16l43_61::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 0.75rem;
  padding: 0.625rem 0.875rem;
  background: var(--surface-subtle);
  color: var(--text-primary);
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  line-height: 1.125rem;
  border-radius: 0.5rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
  box-shadow: 0rem 0.25rem 0.75rem rgba(41, 135, 194, 0.2);
  border: 0.0625rem solid var(--border-subtle);
}

/* Tooltip arrow */
._infoButton_16l43_61::before {
  content: '';
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 0.375rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.3125rem 0.375rem 0.3125rem 0;
  border-color: transparent var(--surface-subtle) transparent transparent;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
}

._infoButton_16l43_61:hover::after,
._infoButton_16l43_61:hover::before {
  opacity: 1;
}

/* Main white card - FIXED LAYOUT */
._mainCard_16l43_134 {
  display: flex;
  flex-direction: column;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  flex: 1;
  min-height: 0;
}

._tabsContainer_16l43_146 {
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
}

._cardContent_16l43_151 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.5rem;
  overflow-y: auto;
  flex: 1;
}

._cardHeader_16l43_160 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}

._cardHeader_16l43_160 > svg {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  color: var(--blue-600);
  stroke: var(--blue-600);
}

._cardHeader_16l43_160 > img {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  display: block;
}

._cardHeaderIcon_16l43_182 {
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

._cardHeaderIcon_16l43_182 svg {
  width: 100%;
  height: 100%;
  color: var(--blue-600);
  stroke: var(--blue-600);
}

._cardIcon_16l43_198 {
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
  border-radius: 0.875rem;
  flex-shrink: 0;
}

._cardIcon_16l43_198 img {
  width: 1.5rem;
  height: 1.5rem;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

._cardIcon_16l43_198 svg {
  width: 1.5rem;
  height: 1.5rem;
  color: white;
  fill: white;
  stroke: white;
}

._cardTitleWrapper_16l43_224 {
  display: flex;
  flex-direction: column;
  gap: 0;
}

._cardTitle_16l43_224 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._cardSubtitle_16l43_239 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

/* Stats grid */
._statsGrid_16l43_248 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.625rem;
}

/* Description text */
._descriptionText_16l43_255 {
  padding-top: 1.5rem;
  border-top: 0.0625rem solid var(--slate-100);
}

._descriptionText_16l43_255 p {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.4219rem;
  margin: 0;
}

._highlight_16l43_268 {
  font-weight: 700;
  color: var(--blue-600);
}

._highlightGreen_16l43_273 {
  font-weight: 700;
  color: var(--success-600);
}

._highlightOrange_16l43_278 {
  font-weight: 700;
  color: var(--warning-700);
}

@media (max-width: 64rem) {
  ._statsGrid_16l43_248 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 48rem) {
  ._dashboardHeader_16l43_290 {
    flex-direction: column;
  }
  
  ._statsGrid_16l43_248 {
    grid-template-columns: 1fr;
  }
}

/* StatCard Styles */
._statCard_16l43_300 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 6.8125rem;
  padding: 1rem;
  border-radius: 0.625rem;
  border: 0.0417rem solid;
  transition: transform 0.2s ease-in-out;
}

._statCard_16l43_300:hover {
  transform: translateY(-0.125rem);
}

._statHeader_16l43_316 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._statIcon_16l43_322 {
  min-width: 1.5rem;
  min-height: 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

._statIcon_16l43_322 img {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

/* Icon colors by variant - usando cores específicas do Figma */
._statCardBlue_16l43_340 ._statIcon_16l43_322 {
  color: var(--blue-500);
}

._statCardBlue_16l43_340 ._statIcon_16l43_322 img {
  filter: brightness(0) saturate(100%) invert(47%) sepia(96%) saturate(1234%) hue-rotate(199deg) brightness(101%) contrast(96%);
}

._statCardPurple_16l43_348 ._statIcon_16l43_322 {
  color: var(--indigo-400);
}

._statCardPurple_16l43_348 ._statIcon_16l43_322 img {
  filter: brightness(0) saturate(100%) invert(44%) sepia(89%) saturate(2476%) hue-rotate(262deg) brightness(98%) contrast(96%);
}

._statCardGreen_16l43_356 ._statIcon_16l43_322 {
  color: var(--success-500);
}

._statCardGreen_16l43_356 ._statIcon_16l43_322 img {
  filter: brightness(0) saturate(100%) invert(64%) sepia(57%) saturate(4282%) hue-rotate(95deg) brightness(96%) contrast(101%);
}

._statCardYellow_16l43_364 ._statIcon_16l43_322 {
  color: var(--warning-500);
}

._statCardYellow_16l43_364 ._statIcon_16l43_322 img {
  filter: brightness(0) saturate(100%) invert(70%) sepia(98%) saturate(1466%) hue-rotate(359deg) brightness(102%) contrast(103%);
}

._statTitle_16l43_372 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  color: var(--text-secondary);
}

._statContent_16l43_380 {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  padding-left: 0.375rem;
}

._statValue_16l43_387 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2rem;
  color: var(--slate-900);
}

._statSubtitle_16l43_395 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  color: var(--text-tertiary);
}

/* StatCard Variants */
._statCardBlue_16l43_340 {
  background: var(--blue-50);
  border-color: var(--blue-100);
}

._statCardBlue_16l43_340 ._statTitle_16l43_372,
._statCardBlue_16l43_340 ._statValue_16l43_387,
._statCardBlue_16l43_340 ._statSubtitle_16l43_395 {
  color: var(--text-secondary);
}

._statCardPurple_16l43_348 {
  background: var(--indigo-50);
  border-color: var(--indigo-100);
}

._statCardPurple_16l43_348 ._statTitle_16l43_372,
._statCardPurple_16l43_348 ._statValue_16l43_387,
._statCardPurple_16l43_348 ._statSubtitle_16l43_395 {
  color: var(--text-secondary);
}

._statCardGreen_16l43_356 {
  background: var(--success-50);
  border-color: var(--pastel-mint);
}

._statCardGreen_16l43_356 ._statTitle_16l43_372,
._statCardGreen_16l43_356 ._statValue_16l43_387,
._statCardGreen_16l43_356 ._statSubtitle_16l43_395 {
  color: var(--text-secondary);
}

._statCardYellow_16l43_364 {
  background: var(--warning-50);
  border-color: var(--pastel-yellow);
}

._statCardYellow_16l43_364 ._statTitle_16l43_372,
._statCardYellow_16l43_364 ._statValue_16l43_387,
._statCardYellow_16l43_364 ._statSubtitle_16l43_395 {
  color: var(--text-secondary);
}

/* AlertCard Styles */
._alertCard_16l43_449 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  height: 2.9375rem;
  padding: 0 0.75rem;
  background: linear-gradient(to right, var(--warning-50), var(--pastel-peach));
  border: 0.0417rem solid var(--warning-500);
  border-radius: 0.625rem;
  flex-shrink: 0;
}

._alertContent_16l43_462 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._alertIconContainer_16l43_468 {
  width: 1.75rem;
  height: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--warning-500);
  border-radius: 0.5rem;
  flex-shrink: 0;
}

._alertIconContainer_16l43_468 svg {
  width: 1.5rem;
  height: 1.5rem;
}

._alertIcon_16l43_468 {
  width: 1rem;
  height: 1rem;
}

._alertText_16l43_489 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._alertTitle_16l43_495 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 0.9375rem;
}

._alertSubtitle_16l43_503 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 0.9375rem;
}

._alertButton_16l43_511 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 1.75rem;
  padding: 0 0.75rem;
  background: var(--warning-500);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: white;
  line-height: 1rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._alertButton_16l43_511:hover {
  opacity: 0.9;
}

._alertButton_16l43_511 svg {
  width: 1rem;
  height: 1rem;
}

._alertButtonIcon_16l43_538 {
  width: 1rem;
  height: 1rem;
}

/* Client Stats Grid */
._clientStatsGrid_16l43_544 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

/* Client List Section */
._clientListSection_16l43_551 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: 1.5rem;
  border-top: 0.0625rem solid var(--slate-100);
}

._clientListHeader_16l43_559 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

._clientListHeaderRight_16l43_565 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._clientListTitle_16l43_571 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.5rem;
  margin: 0;
}

._addClientButton_16l43_580 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2rem;
  padding: 0 1rem;
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._addClientButton_16l43_580:hover {
  opacity: 0.9;
}

._addClientButton_16l43_580 img {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
}

._clientList_16l43_551 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._clientListItem_16l43_614 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: var(--surface-subtle);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  transition: background 0.2s ease-in-out;
}

._clientListItem_16l43_614:hover {
  background: var(--slate-100);
}

._clientListItemButton_16l43_629 {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 0.75rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  min-width: 0;
}

._clientListItemContent_16l43_641 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
}

._clientStatusDot_16l43_648 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  flex-shrink: 0;
}

._clientListItemInfo_16l43_655 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._clientListItemName_16l43_661 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
}

._clientListItemProjects_16l43_670 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

@media (max-width: 64rem) {
  ._clientStatsGrid_16l43_544 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 48rem) {
  ._clientStatsGrid_16l43_544 {
    grid-template-columns: 1fr;
  }
}


/* Tooltip Styles for Dashboard */
._tooltipContainer_16l43_693 {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin-left: 0.25rem;
}

._tooltipIcon_16l43_700 {
  width: 1rem;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: help;
  color: var(--text-disabled);
  transition: color 0.2s ease-in-out;
}

._tooltipIcon_16l43_700 img {
  filter: brightness(0) saturate(100%) invert(67%) sepia(8%) saturate(1089%) hue-rotate(177deg) brightness(88%) contrast(88%);
  transition: filter 0.2s ease-in-out;
}

._tooltipIcon_16l43_700:hover {
  color: var(--blue-600);
}

._tooltipIcon_16l43_700:hover img {
  filter: brightness(0) saturate(100%) invert(47%) sepia(96%) saturate(1234%) hue-rotate(175deg) brightness(91%) contrast(91%);
}

._tooltip_16l43_693 {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(-0.25rem);
  margin-top: 0.5rem;
  width: 19.25rem;
  padding: 0.875rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  box-shadow: 0rem 0.25rem 0.75rem rgba(41, 135, 194, 0.2);
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease-in-out;
  z-index: 100;
  pointer-events: none;
}

._tooltipContainer_16l43_693:hover ._tooltip_16l43_693 {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

._tooltipTitle_16l43_749 {
  font-family: 'Arial', sans-serif;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text-secondary);
  line-height: 1.125rem;
  margin: 0 0 0.375rem 0;
}

._tooltipText_16l43_758 {
  font-family: 'Arial', sans-serif;
  font-size: 0.8125rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.125rem;
  margin: 0;
}

/* Arrow for tooltip */
._tooltip_16l43_693::before {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 0.375rem solid transparent;
  border-right: 0.375rem solid transparent;
  border-bottom: 0.375rem solid var(--surface-subtle);
}

._tooltip_16l43_693::after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 0.4375rem solid transparent;
  border-right: 0.4375rem solid transparent;
  border-bottom: 0.4375rem solid var(--border-subtle);
  margin-bottom: 0.0625rem;
}

/* Loading content with skeleton */
._loadingContent_16l43_796 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.5rem;
}

._content_16l43_803 {
  flex: 1;
  overflow-y: auto;
}

._clientListItemArchived_16l43_808 {
  opacity: 0.65;
  background: var(--surface-subtle);
}

._clientRestoreButton_16l43_813 {
  padding: 0.25rem 0.625rem;
  margin: 0 0.375rem;
  background: white;
  border: 0.094rem solid var(--blue-600);
  border-radius: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--blue-600);
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
  transition: background 0.15s;
}

._clientRestoreButton_16l43_813:hover {
  background: rgba(41, 135, 194, 0.06);
}

._clientDeleteButton_16l43_833 {
  padding: 0.25rem 0.625rem;
  margin: 0 0.375rem;
  background: white;
  border: 0.094rem solid var(--error-500);
  border-radius: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--error-500);
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
  transition: background 0.15s;
}

._clientDeleteButton_16l43_833:hover {
  background: var(--error-50);
}

._emptyFilteredState_16l43_853 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  background: var(--slate-100);
  border-radius: 0.75rem;
  padding: 2rem 1.5rem;
  width: 100%;
  min-height: 10rem;
}

._emptyFilteredState_16l43_853 p {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  color: var(--text-disabled);
  margin: 0;
}
._loadingText_17ras_1 {
  display: inline-flex;
  align-items: center;
}

._dots_17ras_6 {
  display: inline-flex;
  margin-left: 0.125rem;
}

._dot_17ras_6 {
  animation: _blink_17ras_1 1.4s infinite;
  opacity: 0;
}

._dot_17ras_6:nth-child(1) {
  animation-delay: 0s;
}

._dot_17ras_6:nth-child(2) {
  animation-delay: 0.2s;
}

._dot_17ras_6:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes _blink_17ras_1 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
._loadingScreen_4qoqp_1 {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
  z-index: 9999;
}

/* ── Skeleton background ── */
._skeletonBg_4qoqp_13 {
  position: absolute;
  inset: 0;
  display: flex;
  filter: blur(3px);
  opacity: 0.6;
  pointer-events: none;
  user-select: none;
}

/* Sidebar */
._skeletonSidebar_4qoqp_24 {
  width: 13.5rem;
  flex-shrink: 0;
  background: var(--surface-card);
  border-right: 0.0625rem solid var(--border-subtle);
  padding: 1.25rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

._skeletonLogo_4qoqp_35 {
  width: 7.5rem;
  height: 1.75rem;
  background: var(--slate-200);
  border-radius: 0.375rem;
  margin-bottom: 0.5rem;
}

._skeletonNavButton_4qoqp_43 {
  width: 100%;
  height: 2.25rem;
  background: var(--action-primary-bg);
  border-radius: 0.5rem;
}

._skeletonNavGroup_4qoqp_50 {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

._skeletonNavLabel_4qoqp_56 {
  width: 4rem;
  height: 0.625rem;
  background: var(--border-default);
  border-radius: 0.25rem;
  margin-bottom: 0.125rem;
}

._skeletonNavItem_4qoqp_64 {
  width: 100%;
  height: 0.875rem;
  background: var(--slate-200);
  border-radius: 0.375rem;
}

/* Main */
._skeletonMain_4qoqp_72 {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: var(--surface-subtle);
  overflow: hidden;
}

/* Header */
._skeletonHeader_4qoqp_81 {
  height: 3.75rem;
  background: var(--surface-card);
  border-bottom: 0.0625rem solid var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.5rem;
  flex-shrink: 0;
}

._skeletonHeaderLeft_4qoqp_92 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._skeletonHeaderTitle_4qoqp_98 {
  width: 10rem;
  height: 1rem;
  background: var(--slate-200);
  border-radius: 0.375rem;
}

._skeletonHeaderSub_4qoqp_105 {
  width: 6rem;
  height: 0.625rem;
  background: var(--slate-100);
  border-radius: 0.25rem;
}

._skeletonHeaderActions_4qoqp_112 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._skeletonChip_4qoqp_118 {
  width: 8rem;
  height: 2rem;
  background: var(--warning-50);
  border-radius: 0.5rem;
}

._skeletonAvatar_4qoqp_125 {
  width: 2.25rem;
  height: 2.25rem;
  background: var(--slate-200);
  border-radius: 50%;
}

/* Gray wrapper */
._skeletonWrapper_4qoqp_133 {
  flex: 1;
  background: var(--slate-200);
  padding: 1rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  overflow: hidden;
}

/* Breadcrumb */
._skeletonBreadcrumb_4qoqp_144 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0;
}

._skeletonBreadcrumbItem_4qoqp_151 {
  width: 4rem;
  height: 0.75rem;
  background: var(--border-default);
  border-radius: 0.25rem;
}

._skeletonBreadcrumbSep_4qoqp_158 {
  width: 0.375rem;
  height: 0.375rem;
  background: var(--text-disabled);
  border-radius: 50%;
}

/* White card */
._skeletonCard_4qoqp_166 {
  flex: 1;
  background: var(--surface-card);
  border-radius: 0.625rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

/* Tabs */
._skeletonTabs_4qoqp_176 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0 1.25rem;
  border-bottom: 0.0625rem solid var(--border-subtle);
  height: 3rem;
  flex-shrink: 0;
}

._skeletonTabActive_4qoqp_186 {
  width: 5.5rem;
  height: 1.75rem;
  background: rgba(37, 99, 235, 0.12);
  border-radius: 0.375rem;
  border-bottom: 2px solid var(--action-primary-bg);
}

._skeletonTab_4qoqp_176 {
  width: 4.5rem;
  height: 1.75rem;
  background: var(--slate-100);
  border-radius: 0.375rem;
}

/* Card body */
._skeletonCardBody_4qoqp_202 {
  flex: 1;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

._skeletonCardHeader_4qoqp_210 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}

._skeletonLine_4qoqp_217 {
  height: 0.875rem;
  background: var(--slate-200);
  border-radius: 0.375rem;
}

._skeletonAccordion_4qoqp_223 {
  width: 100%;
  height: 3.5rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
}

/* ── Loading overlay ── */
._overlay_4qoqp_232 {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(248, 250, 252, 0.72);
  backdrop-filter: blur(2px);
  z-index: 10;
}

._icon_4qoqp_244 {
  margin-bottom: 1.25rem;
  animation: _pulse_4qoqp_1 2s ease-in-out infinite;
}

@keyframes _pulse_4qoqp_1 {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

._logoIcon_4qoqp_254 {
  width: 9rem;
  height: auto;
  margin-bottom: 0.75rem;
}

._title_4qoqp_260 {
  font-family: Arial, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: var(--brand-indigo);
  margin: 0 0 0.75rem 0;
  letter-spacing: 0.1em;
}

._message_4qoqp_269 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  color: var(--text-tertiary);
  margin: 0 0 1.5rem 0;
}

._progressBar_4qoqp_276 {
  width: 15rem;
  height: 0.375rem;
  background: var(--border-default);
  border-radius: 0.25rem;
  overflow: hidden;
}

._progressFill_4qoqp_284 {
  height: 100%;
  width: 30%;
  background: var(--action-primary-bg);
  border-radius: 0.25rem;
  animation: _infiniteBar_4qoqp_1 1.4s ease-in-out infinite;
}

@keyframes _infiniteBar_4qoqp_1 {
  0% { transform: translateX(-200%); }
  100% { transform: translateX(500%); }
}
/* Modal Styles - Mapinator MVP */

._modalOverlay_1c0eb_5 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--surface-overlay);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1.5rem;
}

._modalContent_1c0eb_33 {
  background: var(--surface-card);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1), 0rem 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
  width: 100%;
  max-width: 31.25rem;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  animation: _modalSlideIn_1c0eb_1 0.2s ease-out;
}

@keyframes _modalSlideIn_1c0eb_1 {
  from {
    opacity: 0;
    transform: translateY(-1.25rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

._modalHeader_1c0eb_79 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem;
  border-bottom: 0.0417rem solid var(--border-subtle);
}

._modalTitleContainer_1c0eb_95 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._modalIcon_1c0eb_107 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._modalTitle_1c0eb_95 {
  font-family: 'Arial', sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.75rem;
  margin: 0;
}

._closeButton_1c0eb_139 {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 0.5rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  padding: 0;
}

._closeButton_1c0eb_139 svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

._closeButton_1c0eb_139:hover {
  background: var(--surface-subtle);
  color: var(--text-secondary);
}

._modalBody_1c0eb_191 {
  padding: 1.5rem;
  overflow-y: auto;
  flex: 1;
}

/* Scrollbar customization */
._modalBody_1c0eb_191::-webkit-scrollbar {
  width: 0.25rem;
}

._modalBody_1c0eb_191::-webkit-scrollbar-track {
  background: transparent;
}

._modalBody_1c0eb_191::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._modalBody_1c0eb_191::-webkit-scrollbar-thumb:hover {
  background: var(--border-strong);
}
/* AddClientModal Styles - Mapinator MVP */

._form_1gn5n_5 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_1gn5n_17 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_1gn5n_29 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1gn5n_45 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_1gn5n_45::placeholder {
  color: var(--text-disabled);
}

._input_1gn5n_45:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_1gn5n_45:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_1gn5n_99 {
  border-color: var(--error-500);
}

._inputError_1gn5n_99:focus {
  border-color: var(--error-500);
}

._errorText_1gn5n_115 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1gn5n_131 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_1gn5n_151 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_1gn5n_151:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1gn5n_193 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1gn5n_193:hover {
  opacity: 0.9;
}

._submitButton_1gn5n_193:active {
  transform: translateY(0.0625rem);
}
/* EditClientModal Styles - Mapinator MVP */

._form_qw2b5_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_qw2b5_9 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_qw2b5_15 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_qw2b5_23 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_qw2b5_23::placeholder {
  color: var(--text-disabled);
}

._input_qw2b5_23:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_qw2b5_23:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_qw2b5_50 {
  border-color: var(--error-500);
}

._inputError_qw2b5_50:focus {
  border-color: var(--error-500);
}

._errorText_qw2b5_58 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_qw2b5_66 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_qw2b5_76 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_qw2b5_76:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_qw2b5_97 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_qw2b5_97:hover {
  opacity: 0.9;
}

._submitButton_qw2b5_97:active {
  transform: translateY(0.0625rem);
}
._warningIcon_18ho7_1 {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

._content_18ho7_7 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

._infoBox_18ho7_13 {
  background: var(--warning-50);
  border: 0.0625rem solid var(--warning-500);
  border-radius: 0.625rem;
  padding: 0.875rem 1rem;
}

._infoText_18ho7_20 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--warning-700);
  line-height: 1.5;
  margin: 0;
}

._checkboxBox_18ho7_28 {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  background: var(--pastel-peach);
  border: 0.0625rem solid var(--warning-500);
  border-radius: 0.625rem;
  padding: 0.875rem 1rem;
  cursor: pointer;
}

._checkboxBoxChecked_18ho7_39 {
  border-color: var(--warning-600);
}

._checkbox_18ho7_28 {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.125rem;
  accent-color: var(--warning-600);
  cursor: pointer;
}

._checkboxText_18ho7_52 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--warning-700);
  line-height: 1.5;
}

._actions_18ho7_59 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding-top: 0.5rem;
}

._primaryBtn_18ho7_67 {
  height: 2.5rem;
  padding: 0 1.5rem;
  background: white;
  border: 0.125rem solid var(--action-primary-bg);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--action-primary-bg);
  cursor: pointer;
  transition: background 0.15s;
  white-space: nowrap;
}

._primaryBtn_18ho7_67:hover:not(:disabled) {
  background: rgba(41, 135, 194, 0.06);
}

._primaryBtn_18ho7_67:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._deleteBtn_18ho7_91 {
  height: 2.5rem;
  padding: 0 1.5rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-disabled);
  cursor: not-allowed;
  transition: all 0.15s;
  white-space: nowrap;
}

._deleteBtnActive_18ho7_106 {
  border-color: var(--error-500);
  color: var(--error-500);
  cursor: pointer;
}

._deleteBtnActive_18ho7_106:hover {
  background: var(--error-50);
}

._cancelBtn_18ho7_116 {
  height: 2.5rem;
  padding: 0 1.5rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.15s;
  white-space: nowrap;
}

._cancelBtn_18ho7_116:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._cancelBtn_18ho7_116:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
._wrapper_1wsz4_1 {
  position: relative;
  display: inline-block;
}

._toggle_1wsz4_6 {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  border: 0.0938rem solid var(--action-primary-bg);
  border-radius: 0.5rem;
  background: var(--surface-card);
  color: var(--action-primary-bg);
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
  white-space: nowrap;
}

._toggle_1wsz4_6:hover {
  background: rgba(37, 99, 235, 0.06);
}

._toggle_1wsz4_6:focus-visible {
  outline: 0.125rem solid var(--border-focus);
  outline-offset: 0.125rem;
}

._toggleOpen_1wsz4_32 {
  background: rgba(37, 99, 235, 0.06);
}

._dot_1wsz4_36 {
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  background: var(--action-primary-bg);
  flex-shrink: 0;
}

._dropdown_1wsz4_44 {
  position: absolute;
  right: 0;
  top: calc(100% + 0.375rem);
  min-width: 12.5rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.12);
  z-index: 200;
  overflow: hidden;
  padding: 0.5rem 0;
}

._dropdownLabel_1wsz4_58 {
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  color: var(--text-disabled);
  letter-spacing: 0.06em;
  padding: 0.25rem 1rem 0.5rem;
  margin: 0;
  text-transform: uppercase;
}

._option_1wsz4_69 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s;
}

._option_1wsz4_69:hover {
  background: var(--surface-subtle);
}

._optionSelected_1wsz4_89 {
  background: rgba(37, 99, 235, 0.08);
  color: var(--action-primary-bg);
}

._optionSelected_1wsz4_89:hover {
  background: rgba(37, 99, 235, 0.12);
}

._optionIcon_1wsz4_98 {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

._check_1wsz4_104 {
  margin-left: auto;
  color: var(--action-primary-bg);
  flex-shrink: 0;
}
/* Breadcrumb Styles */

._breadcrumb_pqqt6_3 {
  padding: 0.75rem 1.5rem 1rem 1.5rem;
}

._breadcrumbList_pqqt6_7 {
  display: flex;
  align-items: center;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

._breadcrumbItem_pqqt6_16 {
  display: flex;
  align-items: center;
  gap: 0;
}

._homeIcon_pqqt6_22 {
  width: 1rem;
  height: 1rem;
  color: var(--action-primary-bg);
  margin-right: 0.75rem;
  margin-bottom: 0.125rem;
  flex-shrink: 0;
}

._breadcrumbLink_pqqt6_31 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--action-primary-bg);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: color 0.2s ease-in-out;
  line-height: 1.25rem;
  display: flex;
  align-items: center;
  gap: 0;
}

._breadcrumbLink_pqqt6_31:hover {
  color: var(--action-primary-bg-hover);
  text-decoration: underline;
}

._breadcrumbLink_pqqt6_31:hover ._homeIcon_pqqt6_22 {
  color: var(--action-primary-bg-hover);
}

._breadcrumbSeparator_pqqt6_55 {
  width: 1rem;
  height: 1rem;
  color: var(--text-disabled);
  margin: 0 0.5rem;
  flex-shrink: 0;
}

._breadcrumbCurrent_pqqt6_63 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  font-weight: 400;
  line-height: 1.25rem;
}
/* AddProjectModal Styles - Mapinator MVP */

._form_1g88i_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_1g88i_9 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_1g88i_15 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1g88i_23 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_1g88i_23::placeholder {
  color: var(--text-disabled);
}

._input_1g88i_23:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_1g88i_23:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_1g88i_50 {
  border-color: var(--error-500);
}

._inputError_1g88i_50:focus {
  border-color: var(--error-500);
}

._errorText_1g88i_58 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1g88i_66 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_1g88i_76 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_1g88i_76:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1g88i_97 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1g88i_97:hover {
  opacity: 0.9;
}

._submitButton_1g88i_97:active {
  transform: translateY(0.0625rem);
}

._optional_1g88i_120 {
  font-weight: 400;
  color: var(--text-disabled);
  font-size: 0.75rem;
}
/* EditProjectModal Styles - Mapinator MVP */

._form_1ujtv_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_1ujtv_9 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_1ujtv_15 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1ujtv_23 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_1ujtv_23::placeholder {
  color: var(--text-disabled);
}

._input_1ujtv_23:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_1ujtv_23:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_1ujtv_50 {
  border-color: var(--error-500);
}

._inputError_1ujtv_50:focus {
  border-color: var(--error-500);
}

._errorText_1ujtv_58 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1ujtv_66 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_1ujtv_76 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_1ujtv_76:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1ujtv_97 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1ujtv_97:hover {
  opacity: 0.9;
}

._submitButton_1ujtv_97:active {
  transform: translateY(0.0625rem);
}

._optional_1ujtv_120 {
  font-weight: 400;
  color: var(--text-disabled);
}
._wrapper_15rev_1 {
  position: relative;
  display: inline-block;
}

._trigger_15rev_6 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.1875rem;
  width: 1.75rem;
  height: 1.75rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  padding: 0;
}

._trigger_15rev_6 span {
  display: block;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background: var(--text-secondary);
}

._trigger_15rev_6:hover {
  background: var(--slate-100);
}

._trigger_15rev_6:focus-visible {
  outline: 0.125rem solid var(--border-focus);
  outline-offset: 0.125rem;
}

._menu_15rev_38 {
  position: absolute;
  right: 0;
  top: calc(100% + 0.25rem);
  min-width: 11.25rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  z-index: 100;
  overflow: hidden;
}

._item_15rev_51 {
  display: block;
  width: 100%;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s;
}

._item_15rev_51:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._itemDisabled_15rev_69 {
  color: var(--text-disabled);
  cursor: not-allowed;
}

._itemDanger_15rev_74 {
  color: var(--error-500);
}

._itemDanger_15rev_74:hover {
  background: var(--error-50);
}
/* ClientDetailsScreen.module.css */

._clientDetailsScreen_wx4x8_3 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: var(--border-subtle);
  overflow: hidden;
}

._mainContent_wx4x8_11 {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
}

._contentWrapper_wx4x8_18 {
  flex: 1;
  background: var(--border-subtle);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

._breadcrumbContainer_wx4x8_26 {
  padding: 0 1.5rem;
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

._content_wx4x8_18 {
  flex: 1;
  padding: 0 1.5rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  overflow-y: auto;
}

/* Client Header */
._clientHeader_wx4x8_42 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}

._clientInfo_wx4x8_49 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._clientIcon_wx4x8_55 {
  width: 3rem;
  height: 3rem;
  background: linear-gradient(135deg, var(--blue-800) 0%, var(--blue-500) 100%);
  border-radius: 0.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0rem 0.625rem 0.9375rem -0.1875rem rgba(0, 0, 0, 0.1), 0rem 0.25rem 0.375rem -0.25rem rgba(0, 0, 0, 0.1);
}

._clientDetails_wx4x8_3 {
  display: flex;
  flex-direction: column;
  gap: 0;
}

._clientNameRow_wx4x8_72 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-height: 2rem;
}

._clientName_wx4x8_72 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._editClientButton_wx4x8_88 {
  width: 2rem;
  height: 2rem;
  background: transparent;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  padding: 0;
  flex-shrink: 0;
}

._editClientButton_wx4x8_88:hover {
  transform: scale(1.15);
}

._editClientButton_wx4x8_88 svg {
  color: var(--blue-600);
  fill: var(--blue-600);
  transition: all 0.2s ease-in-out;
}

._clientProjects_wx4x8_112 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
  min-height: 1.25rem;
}

/* Client Status Dropdown */
._clientStatusContainer_wx4x8_122 {
  position: relative;
}

._clientStatus_wx4x8_122 {
  background: var(--pastel-mint);
  color: var(--success-600);
  font-family: Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5rem;
  padding: 0.5rem 1rem;
  border-radius: 0.625rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._clientStatus_wx4x8_122:hover {
  background: var(--success-50);
}

._clientStatusInactive_wx4x8_147 {
  background: var(--slate-100) !important;
  color: var(--text-tertiary) !important;
}

._clientStatusInactive_wx4x8_147:hover {
  background: var(--slate-200) !important;
}

._statusChevron_wx4x8_156 {
  transition: transform 0.3s ease-in-out;
}

._statusDropdown_wx4x8_160 {
  position: absolute;
  top: calc(100% + 0.25rem);
  right: 0;
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  box-shadow: 0rem 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1), 0rem 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.1);
  min-width: 11.25rem;
  z-index: 10;
  overflow: hidden;
}

._dropdownItem_wx4x8_173 {
  width: 100%;
  padding: 0.75rem 1rem;
  background: white;
  border: none;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  text-align: left;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._dropdownItem_wx4x8_173:hover {
  background: var(--error-50);
}

/* Confirmation UI */
._confirmationContainer_wx4x8_191 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._confirmationButton_wx4x8_197 {
  background: white;
  color: var(--error-500);
  font-family: Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5rem;
  padding: 0.5rem 1rem;
  border: 0.125rem solid var(--error-500);
  border-radius: 0.625rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

._confirmationActions_wx4x8_212 {
  display: flex;
  gap: 0.5rem;
}

._confirmYes_wx4x8_217 {
  background: var(--pastel-mint);
  color: var(--success-600);
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 0.5rem;
  height: 2.25rem;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  min-width: 3.75rem;
}

._confirmYes_wx4x8_217:hover {
  background: var(--success-50);
}

._confirmYes_wx4x8_217:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._confirmNo_wx4x8_242 {
  background: var(--slate-100);
  color: var(--text-tertiary);
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 0.5rem;
  height: 2.25rem;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  min-width: 3.75rem;
}

._confirmNo_wx4x8_242:hover {
  background: var(--border-subtle);
}

._confirmNo_wx4x8_242:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Projects Card */
._projectsCard_wx4x8_268 {
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.875rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

._projectsHeader_wx4x8_280 {
  background: linear-gradient(to right, var(--blue-50), var(--cyan-50));
  border-bottom: 0.0625rem solid var(--slate-100);
  padding: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 5.375rem;
  flex-shrink: 0;
}

._projectsTitle_wx4x8_291 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--blue-600);
  line-height: 1.5rem;
}

._newProjectButton_wx4x8_302 {
  background: var(--blue-600);
  color: white;
  border: none;
  border-radius: 0.5rem;
  padding: 0.5rem 0.75rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  line-height: 1.25rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  height: 2rem;
}

._newProjectButton_wx4x8_302:hover {
  opacity: 0.9;
}

/* Projects List */
._projectsList_wx4x8_324 {
  padding: 1.5rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(17.5rem, 1fr));
  gap: 1.5rem;
  overflow-y: auto;
  flex: 1;
  align-content: start;
}

._projectCard_wx4x8_334 {
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.875rem;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  position: relative;
}

._projectCard_wx4x8_334:hover {
  transform: translateY(-0.125rem);
  box-shadow: 0rem 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1), 0rem 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.1);
}

._projectCard_wx4x8_334:hover ._editProjectButton_wx4x8_352 {
  display: flex;
}

._projectCardHeader_wx4x8_356 {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

._projectCardIcon_wx4x8_362 {
  width: 3.5rem;
  height: 3.5rem;
  background: linear-gradient(135deg, var(--blue-800) 0%, var(--blue-500) 100%);
  border-radius: 0.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0rem 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1), 0rem 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.1);
}

._projectCardInfo_wx4x8_374 {
  flex: 1;
  min-width: 0;
}

._projectCardTitle_wx4x8_379 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.5rem;
  margin: 0 0 0.25rem 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._projectCardStatus_wx4x8_391 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

._projectCardButton_wx4x8_399 {
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
  color: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.08);
  padding: 0.75rem 1rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  width: 100%;
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.1);
}

._projectCardButton_wx4x8_399:hover {
  opacity: 0.9;
}

/* Responsive */
@media (max-width: 48rem) {
  ._clientHeader_wx4x8_42 {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  ._clientStatus_wx4x8_122 {
    align-self: flex-start;
  }

  ._projectsHeader_wx4x8_280 {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    height: auto;
    padding: 1rem;
  }

  ._newProjectButton_wx4x8_302 {
    width: 100%;
    justify-content: center;
  }
}

/* Loading and Error States */
._loadingState_wx4x8_451,
._errorState_wx4x8_452 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: linear-gradient(135deg, var(--indigo-500) 0%, var(--indigo-800) 100%);
  position: relative;
  overflow: hidden;
}

/* Background decorativo animado */
._loadingState_wx4x8_451::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0.0625rem, transparent 0.0625rem);
  background-size: 3.125rem 3.125rem;
  animation: _moveBackground_wx4x8_1 20s linear infinite;
  pointer-events: none;
}

@keyframes _moveBackground_wx4x8_1 {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(3.125rem, 3.125rem);
  }
}

/* Card de loading */
._loadingCard_wx4x8_488 {
  background: rgba(255, 255, 255, 0.95);
  padding: 3rem 4rem;
  border-radius: 1rem;
  box-shadow: 0 1.25rem 3.75rem rgba(0, 0, 0, 0.3);
  position: relative;
  z-index: 1;
  text-align: center;
}

/* Spinner */
._spinner_wx4x8_499 {
  width: 3.5rem;
  height: 3.5rem;
  border: 0.3125rem solid var(--slate-200);
  border-top: 0.3125rem solid var(--blue-600);
  border-radius: 50%;
  animation: _spin_wx4x8_499 0.8s linear infinite;
  margin: 0 auto 1.5rem;
}

@keyframes _spin_wx4x8_499 {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

._loadingTitle_wx4x8_519 {
  color: var(--text-primary);
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0 0 0.5rem 0;
}

._loadingSubtitle_wx4x8_526 {
  color: var(--text-tertiary);
  font-size: 0.875rem;
  margin: 0;
}

._errorState_wx4x8_452 p {
  color: var(--error-500);
}

._loadingProjects_wx4x8_536 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem;
  text-align: center;
}

._loadingProjects_wx4x8_536 p {
  font-size: 0.875rem;
  color: var(--blue-600);
}

._emptyProjects_wx4x8_549 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 5rem 3rem;
  text-align: center;
  gap: 1rem;
  grid-column: 1 / -1;
}

._emptyProjects_wx4x8_549 svg {
  width: 4rem;
  height: 4rem;
  opacity: 0.4;
}

._emptyProjects_wx4x8_549 p {
  font-family: Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--blue-600);
  margin: 0;
}

/* Error state additional styles */
._errorState_wx4x8_452 h2 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--error-500);
  margin-bottom: 0.75rem;
}

._errorActions_wx4x8_582 {
  display: flex;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

._retryButton_wx4x8_588,
._logoutButton_wx4x8_589 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
}

._retryButton_wx4x8_588 {
  background: var(--blue-600);
  color: white;
}

._retryButton_wx4x8_588:hover {
  background: var(--blue-700);
}

._logoutButton_wx4x8_589 {
  background: var(--error-500);
  color: white;
}

._logoutButton_wx4x8_589:hover {
  background: var(--error-600);
}

/* Edit Project Button */
._editProjectButton_wx4x8_352 {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 2rem;
  height: 2rem;
  background: transparent;
  border: none;
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  padding: 0;
  flex-shrink: 0;
  z-index: 5;
}

._editProjectButton_wx4x8_352:hover {
  transform: scale(1.15);
}

._editProjectButton_wx4x8_352 svg {
  color: var(--blue-600);
  fill: var(--blue-600);
  transition: all 0.2s ease-in-out;
}

/* Skeleton Loading Animation */
._skeleton_wx4x8_647 {
  background: linear-gradient(90deg, var(--slate-200) 25%, var(--slate-100) 50%, var(--slate-200) 75%);
  background-size: 200% 100%;
  animation: _shimmer_wx4x8_1 1.5s ease-in-out infinite;
  border-radius: 0.5rem;
}

@keyframes _shimmer_wx4x8_1 {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

._projectCardDate_wx4x8_664 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
  margin: 0.25rem 0 0 0;
}

._projectCardArchived_wx4x8_672 {
  background: var(--surface-subtle);
  border-color: var(--border-subtle);
  box-shadow: none;
}

._projectCardArchived_wx4x8_672 ._projectCardTitle_wx4x8_379 {
  color: var(--text-disabled);
}

._projectCardArchived_wx4x8_672 ._projectCardStatus_wx4x8_391,
._projectCardArchived_wx4x8_672 ._projectCardDate_wx4x8_664 {
  color: var(--border-default);
}

._projectCardArchived_wx4x8_672 ._projectCardIcon_wx4x8_362 {
  background: linear-gradient(135deg, var(--slate-300) 0%, var(--slate-200) 100%);
  box-shadow: none;
}


._projectsHeaderRight_wx4x8_693 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._emptyFilteredState_wx4x8_699 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  background: var(--slate-100);
  border-radius: 0.75rem;
  padding: 2rem 1.5rem;
  width: 100%;
  min-height: 10rem;
  grid-column: 1 / -1;
}

._emptyFilteredState_wx4x8_699 p {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  color: var(--text-disabled);
  margin: 0;
}

._projectCardButtonRestore_wx4x8_719 {
  background: white;
  color: var(--blue-600);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.08);
  padding: 0.625rem 1rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: background 0.15s;
  width: 100%;
}

._projectCardButtonRestore_wx4x8_719:hover {
  background: rgba(41, 135, 194, 0.06);
}

._projectCardActions_wx4x8_742 {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 5;
}
/* UnsavedChangesModal Styles - Body content and footer only */
/* Overlay, modalContent, closeButton, header, and animations are handled by shared Modal base */

._subtitle_109jc_4 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0 0 0.5rem 0;
}

/* Content */
._content_109jc_14 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 0.5rem;
}

._mainText_109jc_21 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-secondary);
  line-height: 1.5rem;
  margin: 0;
}

/* Warning box */
._warningBox_109jc_31 {
  background: var(--warning-50);
  border: 0.0417rem solid var(--warning-500);
  border-radius: 0.625rem;
  padding: 1.0417rem;
}

._warningText_109jc_38 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--warning-700);
  line-height: 1.25rem;
  margin: 0;
}

._warningText_109jc_38 strong {
  font-weight: 700;
}

._optionsText_109jc_51 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

/* Options */
._options_109jc_51 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._option_109jc_51 {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}

._option_109jc_51 svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.125rem;
  color: var(--action-primary-bg);
  stroke: var(--action-primary-bg);
}

._optionText_109jc_82 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._optionText_109jc_82 strong {
  font-weight: 700;
  color: var(--text-secondary);
}

/* Footer */
._footer_109jc_96 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.5rem;
}

._cancelButton_109jc_103 {
  height: 2.25rem;
  padding: 0.5417rem 1.0417rem;
  background: white;
  border: 0.0417rem solid rgba(0, 0, 0, 0.1);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._cancelButton_109jc_103:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._cancelButton_109jc_103:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._actionButtons_109jc_126 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._discardButton_109jc_132 {
  height: 2.25rem;
  padding: 0.5417rem 1.0417rem;
  background: white;
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--error-600);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._discardButton_109jc_132:hover:not(:disabled) {
  background: var(--error-50);
}

._discardButton_109jc_132:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._saveButton_109jc_155 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0.5417rem 1.0417rem;
  background: var(--action-primary-bg);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._saveButton_109jc_155:hover:not(:disabled) {
  opacity: 0.9;
}

._saveButton_109jc_155:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._saveButton_109jc_155 svg {
  color: white;
  stroke: white;
}

/* Responsive */
@media (max-width: 37.5rem) {
  ._footer_109jc_96 {
    flex-direction: column;
    gap: 0.75rem;
    align-items: stretch;
  }

  ._actionButtons_109jc_126 {
    width: 100%;
    flex-direction: column;
  }

  ._discardButton_109jc_132,
  ._saveButton_109jc_155 {
    width: 100%;
    justify-content: center;
  }
}
._previewButton_3u37j_1._previewButton_3u37j_1 svg {
  color: var(--text-tertiary);
}

._previewButton_3u37j_1._previewButton_3u37j_1:hover:not(:disabled) svg {
  color: var(--action-primary-bg);
}

._previewButton_3u37j_1:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

._previewModal_3u37j_14 {
  max-width: 60rem;
  width: 90vw;
  max-height: 85vh;
}

._previewContent_3u37j_20 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--text-primary);
  background: var(--surface-subtle);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  padding: 1.25rem;
  margin: 0;
  max-height: 65vh;
  overflow-y: auto;
}

._previewContent_3u37j_20 h1,
._previewContent_3u37j_20 h2,
._previewContent_3u37j_20 h3 {
  margin: 1rem 0 0.5rem;
  color: var(--slate-900);
}

._previewContent_3u37j_20 h1 { font-size: 1.25rem; }
._previewContent_3u37j_20 h2 { font-size: 1.1rem; }
._previewContent_3u37j_20 h3 { font-size: 1rem; }

._previewContent_3u37j_20 p {
  margin: 0.5rem 0;
}

._previewContent_3u37j_20 table {
  border-collapse: collapse;
  width: 100%;
  margin: 0.75rem 0;
  font-size: 0.8125rem;
}

._previewContent_3u37j_20 th,
._previewContent_3u37j_20 td {
  border: 1px solid var(--border-subtle);
  padding: 0.375rem 0.625rem;
  text-align: left;
}

._previewContent_3u37j_20 th {
  background: var(--slate-100);
  font-weight: 600;
}

._previewContent_3u37j_20 ul,
._previewContent_3u37j_20 ol {
  padding-left: 1.5rem;
  margin: 0.5rem 0;
}

._previewContent_3u37j_20 code {
  background: var(--border-subtle);
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
  font-size: 0.8125rem;
}

._previewContent_3u37j_20 pre code {
  display: block;
  padding: 0.75rem;
  overflow-x: auto;
}
._row_ubbmv_1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem;
  margin-top: 6px;
  position: relative;
}

._pill_ubbmv_10 {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.125rem 0.625rem;
  border-radius: 624.9375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  white-space: nowrap;
  border: 0.0417rem solid;
  line-height: 1.5;
}

._dot_ubbmv_24 {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

._dotX_ubbmv_35 {
  opacity: 0;
  transition: opacity 0.15s;
  display: block;
}

._pill_ubbmv_10:hover ._dotX_ubbmv_35 {
  opacity: 1;
}

._pill_ubbmv_10:hover ._dot_ubbmv_24::after {
  color: var(--text-inverse);
}

._addBtn_ubbmv_49 {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.5rem;
  border-radius: 624.9375rem;
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  color: var(--text-tertiary);
  background: var(--slate-100);
  border: 0.0417rem dashed var(--border-default);
  white-space: nowrap;
  line-height: 1.5;
  cursor: pointer;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
}

._addBtn_ubbmv_49:hover {
  color: var(--action-primary-bg);
  border-color: var(--action-primary-bg);
  background: rgba(239, 246, 255, 0.5);
}

._dropdownWrapper_ubbmv_71 {
  position: relative;
  display: inline-flex;
}

._dropdown_ubbmv_71 {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  background: var(--surface-card);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
  min-width: 180px;
  padding: 4px;
}

._dropdownItem_ubbmv_89 {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px 10px;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-primary);
  background: none;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  text-align: left;
  transition: background 0.1s;
  height: 32px;
}

._dropdownItem_ubbmv_89:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._dropdownItemDisabled_ubbmv_111 {
  opacity: 0.4;
  cursor: not-allowed;
}

._dropdownDot_ubbmv_116 {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

._check_ubbmv_123 {
  margin-left: auto;
  color: var(--action-primary-bg);
  font-size: 0.75rem;
}
._iconContainer_p2wvk_1 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}

._success_p2wvk_9 svg {
    color: var(--success-500);
}

._error_p2wvk_13 svg {
    color: var(--error-500);
}

._processing_p2wvk_17 svg {
    color: var(--action-primary-bg);
}

._spinner_p2wvk_21 {
    animation: _spin_p2wvk_21 1s linear infinite;
}

@keyframes _spin_p2wvk_21 {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}
._tooltipWrapper_6jc9f_1 {
    position: relative;
    display: inline-flex;
    align-items: center;
    overflow: visible;
}

._tooltipTrigger_6jc9f_8 {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 1.5rem;
    height: 1.5rem;
}

._tooltip_6jc9f_1 {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    transform: none;
    background: var(--slate-900);
    border-radius: 0.5rem;
    padding: 1rem;
    width: 26rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease-in-out;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._tooltipWrapper_6jc9f_1:hover ._tooltip_6jc9f_1 {
    opacity: 1;
    pointer-events: auto;
}

._tooltipArrow_6jc9f_40 {
    position: absolute;
    bottom: 100%;
    left: 0.75rem;
    transform: none;
    border: 0.375rem solid transparent;
    border-bottom-color: var(--slate-900);
}

._tooltipTitle_6jc9f_49 {
    font-family: 'Poppins', Arial, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-inverse);
    line-height: 1.5;
    margin: 0;
    text-align: center;
}

._tooltipSubtitle_6jc9f_59 {
    font-family: 'Poppins', Arial, sans-serif;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--text-inverse);
    line-height: 1.4;
    margin: 0;
    text-align: center;
}

._progressTrack_6jc9f_69 {
    width: 100%;
    height: 0.625rem;
    background: var(--slate-200);
    border-radius: 624.9375rem;
    overflow: hidden;
}

._progressFill_6jc9f_77 {
    height: 100%;
    background: var(--action-primary-bg);
    border-radius: 624.9375rem;
    transition: width 0.3s ease-in-out;
}

._progressFillOver_6jc9f_84 {
    background: var(--error-500);
}

._tooltipPercentage_6jc9f_88 {
    font-family: 'Poppins', Arial, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-inverse);
    margin: 0;
    text-align: right;
}

._percentageOver_6jc9f_97 {
    color: var(--error-500);
}
/* DocumentsTab.module.css */

._documentsTab_k094o_3 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
}

/* Header */
._header_k094o_11 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_k094o_17 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._subtitle_k094o_26 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

/* Upload Area */
._uploadArea_k094o_35 {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.875rem;
  padding: 1rem 1.375rem;
  border: 2px dashed var(--blue-200);
  border-radius: 0.625rem;
  background: var(--blue-50);
  cursor: pointer;
  transition: all 0.25s ease-in-out;
}

._uploadArea_k094o_35:hover {
  border-color: var(--blue-600);
  background: var(--blue-100);
}

._uploadAreaDragging_k094o_53 {
  border-color: var(--blue-600);
  background: var(--blue-100);
  padding: 2.5rem 1.375rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 10rem;
  text-align: center;
}

._uploadAreaExpanded_k094o_65 {
  border-color: var(--blue-300);
  background: var(--blue-50);
  padding: 2rem 1.375rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 8rem;
  text-align: center;
}

._uploadAreaDisabled_k094o_77 {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

._uploadAreaDisabled_k094o_77:hover {
  border-color: var(--blue-200);
  background: var(--blue-50);
}

._uploadIconBox_k094o_88 {
  width: 2.25rem;
  height: 2.25rem;
  background: white;
  border-radius: 0.5rem;
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.07), 0px 1px 2px 0px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._uploadTextContainer_k094o_100 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

._uploadText_k094o_100 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
}

._uploadSubtext_k094o_116 {
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._uploadButton_k094o_125 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.9375rem;
  background: white;
  border: 1px solid var(--blue-600);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--blue-600);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
  flex-shrink: 0;
}

._uploadButton_k094o_125:hover:not(:disabled) {
  background: var(--blue-50);
}

._uploadButton_k094o_125:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Loading State */
._loading_k094o_153 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 18.75rem;
}

._loading_k094o_153 p {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  color: var(--text-tertiary);
}

/* Error Message */
._errorMessage_k094o_167 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: var(--error-50);
  border: 0.0625rem solid var(--error-50);
  border-radius: 0.5rem;
}

._errorMessage_k094o_167 span {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-700);
  line-height: 1.25rem;
}

/* Documents Section */
._documentsSection_k094o_185 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._documentsHeader_k094o_191 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

/* Documents List */
._documentsList_k094o_204 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._documentCard_k094o_210 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1.0417rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  transition: all 0.2s ease-in-out;
}

._documentCard_k094o_210:hover {
  background: var(--surface-subtle);
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.05);
}

._documentCard_k094o_210:hover ._documentActions_k094o_227 {
  opacity: 1;
}

._documentMain_k094o_231 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
  min-width: 0;
}

._documentIcon_k094o_239 {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.625rem;
  flex-shrink: 0;
}

._documentIconPdf_k094o_249 {
  background: var(--error-50);
}

._documentIconDoc_k094o_253 {
  background: var(--blue-100);
}

._documentIconXls_k094o_257 {
  background: var(--pastel-mint);
}

._documentIconDefault_k094o_261 {
  background: var(--slate-100);
}

._documentIcon_k094o_239 svg {
  width: 1.25rem;
  height: 1.25rem;
}

._documentInfo_k094o_270 {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  min-width: 0;
}

._documentName_k094o_278 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._documentMeta_k094o_290 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._documentRight_k094o_298 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._documentStatus_k094o_304 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
}

._documentActions_k094o_227 {
  display: flex;
  align-items: center;
  gap: 0.1rem;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}

._actionButton_k094o_319 {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._actionButton_k094o_319:hover {
  background: var(--slate-100);
}

._actionButton_k094o_319 svg {
  width: 1rem;
  height: 1rem;
  color: var(--error-500);
  /* Red color for trash icon */
}

._actionButton_k094o_319:hover svg {
  color: var(--error-600);
  /* Darker red on hover */
}

._downloadButton_k094o_348 {
  color: var(--blue-600);
}

._downloadButton_k094o_348 svg {
  color: var(--blue-600);
  fill: var(--blue-600);
}

._downloadButton_k094o_348:hover {
  background: color-mix(in srgb, var(--blue-50) 50%, transparent);
  color: var(--blue-600);
}

._downloadButton_k094o_348:hover svg {
  color: var(--blue-600);
  fill: var(--blue-600);
}

/* Empty State */
._emptyState_k094o_368 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  min-height: 12.5rem;
  padding: 3rem 1.5rem;
}

._emptyStateIcon_k094o_378 {
  width: 4rem;
  height: 4rem;
  color: var(--text-disabled);
}

._emptyStateText_k094o_384 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-secondary);
  margin: 0;
}

._emptyStateSubtext_k094o_392 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-disabled);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  ._uploadArea_k094o_35 {
    height: auto;
    padding: 2rem 1rem;
  }

  ._documentCard_k094o_210 {
    flex-direction: column;
    align-items: flex-start;
  }

  ._documentActions_k094o_227 {
    opacity: 1;
    width: 100%;
    justify-content: flex-end;
  }
}

/* Loading State */
._loadingState_k094o_419 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem 1.5rem;
  text-align: center;
}

._loadingState_k094o_419 p {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  margin: 0;
}

/* Delete Confirmation */
._deleteConfirmation_k094o_435 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 1.25rem;
  width: 100%;
}

._confirmationText_k094o_445 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  text-align: center;
  margin: 0;
}

._confirmationActions_k094o_454 {
  display: flex;
  gap: 0.75rem;
}

._confirmYes_k094o_459,
._confirmNo_k094o_460 {
  height: 2rem;
  padding: 0 1rem;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: none;
}

._confirmYes_k094o_459 {
  background: var(--error-500);
  color: white;
}

._confirmYes_k094o_459:hover:not(:disabled) {
  background: var(--error-600);
}

._confirmYes_k094o_459:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._confirmNo_k094o_460 {
  background: var(--slate-200);
  color: var(--text-secondary);
}

._confirmNo_k094o_460:hover:not(:disabled) {
  background: var(--border-default);
}

._confirmNo_k094o_460:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
/* Shared Document Accordion Styles */
._accordionSection_1kfpk_2 {
  background: var(--surface-card);
  border: 0.667px solid var(--border-subtle);
  border-radius: 10px;
  overflow: visible;
}

._accordionHeader_1kfpk_9 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 66px;
  padding: 0 24px;
  background: var(--surface-card);
  border: none;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: 10px 10px 0 0;
}

._accordionHeader_1kfpk_9:hover {
  background: var(--surface-subtle);
}

._accordionHeaderExpanded_1kfpk_27 {
  border-radius: 10px 10px 0 0;
}

._accordionTitle_1kfpk_31 {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 20px;
  flex: 1;
  position: relative;
  z-index: 1;
  min-width: 0;
}

._accordionTitleIcon_1kfpk_46 {
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-tertiary);
  flex-shrink: 0;
}

._accordionTitleIcon_1kfpk_46 svg {
  width: 22px;
  height: 22px;
}

._accordionInfoIcon_1kfpk_61 {
  position: relative;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--action-primary-bg);
  flex-shrink: 0;
  margin-left: 4px;
  cursor: pointer;
  z-index: 1;
}

._accordionInfoIcon_1kfpk_61 svg {
  width: 20px;
  height: 20px;
}

._accordionInfoIcon_1kfpk_61 ._infoTooltip_1kfpk_80 {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 0;
  background: var(--slate-900);
  border-radius: 0.5rem;
  padding: 1rem;
  width: 26rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 10000;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-inverse);
  line-height: 1.5;
  white-space: normal;
}

._accordionInfoIcon_1kfpk_61 ._infoTooltipArrow_1kfpk_100 {
  position: absolute;
  bottom: 100%;
  left: 0.75rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--slate-900);
}

._accordionInfoIcon_1kfpk_61:hover ._infoTooltip_1kfpk_80 {
  opacity: 1;
  pointer-events: auto;
}

._accordionChevron_1kfpk_113 {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotate(0deg);
  flex-shrink: 0;
  color: var(--slate-900);
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

._accordionChevron_1kfpk_113 svg {
  width: 20px;
  height: 20px;
}

._accordionChevronExpanded_1kfpk_130 {
  transform: rotate(180deg);
}

._accordionBadge_1kfpk_134 {
  font-size: 0.6875rem;
  font-weight: 400;
  color: var(--text-disabled);
  font-style: italic;
  margin-left: auto;
  margin-right: 8px;
}

._accordionContent_1kfpk_143 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 24px;
  animation: _slideDown_1kfpk_1 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  border-radius: 0 0 10px 10px;
  overflow: visible;
}

@keyframes _slideDown_1kfpk_1 {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

._accordionEmpty_1kfpk_165 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-disabled);
  font-style: italic;
  margin: 0;
  padding: 0.5rem 0;
}
/* AdditionalInfoAIModal styles */

._form_5yl7w_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._subtitle_5yl7w_9 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

/* Tips Box */
._tipsBox_5yl7w_18 {
  background: var(--indigo-100);
  border: 0.0625rem solid var(--indigo-300);
  border-radius: 0.5rem;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._tipsHeader_5yl7w_28 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--indigo-700);
  font-weight: 600;
}

._tipsList_5yl7w_38 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-left: 1.5rem;
}

._tipsList_5yl7w_38 li {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--indigo-700);
  line-height: 1rem;
  position: relative;
}

._tipsList_5yl7w_38 li::before {
  content: '•';
  position: absolute;
  left: -0.75rem;
  color: var(--indigo-700);
}

/* Form Group */
._formGroup_5yl7w_64 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_5yl7w_70 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._textarea_5yl7w_78 {
  width: 100%;
  min-height: 7.5rem;
  padding: 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

._textarea_5yl7w_78::placeholder {
  color: var(--text-tertiary);
}

._textarea_5yl7w_78:focus {
  outline: none;
  border-color: var(--action-primary-bg);
  box-shadow: none;
}

._textarea_5yl7w_78:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._characterCount_5yl7w_108 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
  text-align: right;
}

/* Note Box */
._noteBox_5yl7w_117 {
  background: var(--blue-50);
  border: 0.0625rem solid var(--action-primary-bg);
  border-radius: 0.5rem;
  padding: 0.75rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--blue-800);
  line-height: 1rem;
}

._noteBox_5yl7w_117 strong {
  font-weight: 600;
}

/* Actions */
._actions_5yl7w_133 {
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding-top: 0.5rem;
}

._backButton_5yl7w_140 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._backButton_5yl7w_140:hover:not(:disabled) {
  background: var(--surface-subtle);
  border-color: var(--border-default);
}

._backButton_5yl7w_140:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._cancelButton_5yl7w_164 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  margin-left: auto;
}

._cancelButton_5yl7w_164:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
}

._cancelButton_5yl7w_164:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._submitButton_5yl7w_189 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(135deg, var(--indigo-500) 0%, var(--indigo-800) 100%);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._submitButton_5yl7w_189:hover:not(:disabled) {
  opacity: 0.9;
}

._submitButton_5yl7w_189:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Spinner Animation */
._spinner_5yl7w_216 {
  animation: _spin_5yl7w_216 1s linear infinite;
}

@keyframes _spin_5yl7w_216 {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Document Selection Section */
._docSection_5yl7w_226 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._docSectionHeader_5yl7w_232 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: 0.625rem 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  user-select: none;
}

._docSectionHeader_5yl7w_232:hover {
  background: var(--slate-100);
}

._docSectionTitle_5yl7w_248 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
}

._docSectionChevron_5yl7w_258 {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotate(0deg);
  color: var(--text-secondary);
}

._docSectionChevronExpanded_5yl7w_264 {
  transform: rotate(180deg);
}

._docBody_5yl7w_268 {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

._docBodyExpanded_5yl7w_274 {
  grid-template-rows: 1fr;
}

._docBodyInner_5yl7w_278 {
  overflow: hidden;
}

._docContent_5yl7w_282 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._selectAll_5yl7w_288 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0.5rem;
  border-bottom: 0.0625rem solid var(--border-subtle);
}

._tokenUsage_5yl7w_296 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._tokenCount_5yl7w_302 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
  white-space: nowrap;
}

._tokenBar_5yl7w_310 {
  width: 4rem;
  height: 0.375rem;
  background: var(--slate-100);
  border-radius: 0.1875rem;
  overflow: hidden;
}

._tokenBarFill_5yl7w_318 {
  height: 100%;
  background: var(--indigo-500);
  border-radius: 0.1875rem;
  transition: width 0.2s ease-in-out;
}

._tokenBarFillOver_5yl7w_325 {
  background: var(--error-500);
}

._tokenPercentage_5yl7w_329 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
}

._tokenPercentageOver_5yl7w_336 {
  color: var(--error-500);
}

._checkboxLabel_5yl7w_340 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  user-select: none;
}

._checkbox_5yl7w_340 {
  width: 1rem;
  height: 1rem;
  accent-color: var(--action-primary-bg);
  cursor: pointer;
  flex-shrink: 0;
}

._docList_5yl7w_360 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-height: 14rem;
  overflow-y: auto;
}

._documentCard_5yl7w_368 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._documentCard_5yl7w_368:hover:not(._documentCardDisabled_5yl7w_380) {
  background: var(--surface-subtle);
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.05);
}

._documentCardDisabled_5yl7w_380 {
  opacity: 0.5;
  cursor: not-allowed;
}

._documentIcon_5yl7w_390 {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.625rem;
  flex-shrink: 0;
}

._documentIconPdf_5yl7w_400 { background: var(--error-50); }
._documentIconDoc_5yl7w_401 { background: var(--blue-100); }
._documentIconXls_5yl7w_402 { background: var(--pastel-mint); }
._documentIconDefault_5yl7w_403 { background: var(--slate-100); }

._documentInfo_5yl7w_405 {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  min-width: 0;
}

._documentName_5yl7w_413 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._documentMeta_5yl7w_424 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._documentStatus_5yl7w_431 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._empty_5yl7w_438 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  text-align: center;
  padding: 1rem 0;
  margin: 0;
}

/* Source sub-accordions inside doc section */
._sourceAccordionBody_5yl7w_448 {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

._sourceAccordionBodyExpanded_5yl7w_454 {
  grid-template-rows: 1fr;
}

._sourceAccordionBodyInner_5yl7w_458 {
  overflow: hidden;
}

._tokenLimitWarning_5yl7w_462 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--error-500);
  margin: 0;
  padding: 0.5rem 0.75rem;
  background: var(--error-50, #fef2f2);
  border-radius: 6px;
  border: 1px solid var(--error-200, #fecaca);
}
._regenerateModal_ybnjr_1 {
  max-width: 37.5rem;
}

._modalContent_ybnjr_5 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._subtitle_ybnjr_11 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

/* Option Cards */
._optionCard_ybnjr_20 {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.25rem;
  border-radius: 0.5rem;
  border: 0.125rem solid transparent;
  background: var(--surface-subtle);
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: left;
  width: 100%;
}

._optionCard_ybnjr_20:hover {
  transform: translateY(-0.125rem);
}

/* Purple option (unanswered) */
._optionCardPurple_ybnjr_39 {
  border-color: var(--border-subtle);
}

._optionCardPurple_ybnjr_39:hover:not(:disabled) {
  background: rgba(109, 40, 217, 0.05);
  border-color: rgba(109, 40, 217, 0.3);
}

._optionCardPurple_ybnjr_39._optionCardSelected_ybnjr_48 {
  background: rgba(109, 40, 217, 0.05);
  border-color: var(--indigo-700);
  border-width: 0.125rem;
}

._optionCardPurple_ybnjr_39:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: var(--surface-subtle);
}

._optionCardPurple_ybnjr_39:disabled ._optionIcon_ybnjr_60,
._optionCardPurple_ybnjr_39:disabled ._optionTitle_ybnjr_61,
._optionCardPurple_ybnjr_39:disabled ._optionDescription_ybnjr_62,
._optionCardPurple_ybnjr_39:disabled ._optionBadge_ybnjr_63 {
  opacity: 0.6;
}

._optionCardPurple_ybnjr_39 ._optionIcon_ybnjr_60 {
  color: var(--indigo-700);
}

._optionCardPurple_ybnjr_39 ._optionBadge_ybnjr_63 {
  background: rgba(109, 40, 217, 0.1);
  color: var(--indigo-700);
}

/* Orange option (regenerate all) */
._optionCardOrange_ybnjr_77 {
  border-color: var(--border-subtle);
}

._optionCardOrange_ybnjr_77:hover {
  background: rgba(251, 146, 60, 0.05);
  border-color: rgba(251, 146, 60, 0.3);
}

._optionCardOrange_ybnjr_77._optionCardSelected_ybnjr_48 {
  background: rgba(251, 146, 60, 0.05);
  border-color: var(--warning-500);
  border-width: 0.125rem;
}

._optionCardOrange_ybnjr_77 ._optionIcon_ybnjr_60 {
  color: var(--warning-500);
}

._optionCardOrange_ybnjr_77 ._optionBadge_ybnjr_63 {
  background: rgba(251, 146, 60, 0.1);
  color: var(--warning-500);
}

._optionIcon_ybnjr_60 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 0.125rem;
}

._optionContent_ybnjr_111 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._optionTitle_ybnjr_61 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}

._optionDescription_ybnjr_62 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

._optionBadge_ybnjr_63 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  align-self: stretch;
}

/* Accordion */
._accordion_ybnjr_147 {
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  overflow: hidden;
}

._accordionButton_ybnjr_153 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 1rem;
  background: var(--surface-subtle);
  border: none;
  cursor: pointer;
  transition: background 0.2s ease;
}

._accordionButton_ybnjr_153:hover {
  background: var(--slate-100);
}

._accordionTitle_ybnjr_169 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
}

._accordionChevron_ybnjr_176 {
  transition: transform 0.2s ease;
  color: var(--text-secondary);
}

._accordionChevronOpen_ybnjr_181 {
  transform: rotate(180deg);
}

._accordionContent_ybnjr_185 {
  max-height: 0;
  overflow: hidden;
  background: white;
  border-top: 0.0625rem solid var(--border-subtle);
  transition: max-height 0.3s ease-out, padding 0.3s ease-out;
  padding: 0 1rem;
}

._accordionContentOpen_ybnjr_194 {
  max-height: 31.25rem;
  padding: 1rem;
  transition: max-height 0.3s ease-in, padding 0.3s ease-in;
}

._questionsList_ybnjr_200 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-height: 15rem;
  overflow-y: auto;
}

._questionCheckbox_ybnjr_208 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: background 0.2s ease;
}

._questionCheckbox_ybnjr_208:hover {
  background: var(--surface-subtle);
}

._questionCheckbox_ybnjr_208 input[type="checkbox"] {
  width: 1.125rem;
  height: 1.125rem;
  cursor: pointer;
  accent-color: var(--action-primary-bg);
}

._checkboxLabel_ybnjr_229 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
}

/* Footer */
._footer_ybnjr_237 {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 0.5rem;
  border-top: 0.0625rem solid var(--border-subtle);
}

._cancelButton_ybnjr_245 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  border: 0.0625rem solid var(--border-subtle);
  background: white;
  color: var(--text-secondary);
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

._cancelButton_ybnjr_245:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
}

._nextButton_ybnjr_263 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  border: none;
  background: var(--action-primary-bg);
  color: white;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

._nextButton_ybnjr_263:hover:not(:disabled) {
  background: var(--action-primary-bg-hover);
}

._nextButton_ybnjr_263:disabled {
  background: var(--border-default);
  cursor: not-allowed;
  opacity: 0.6;
}
._subtitle_ew5ft_1 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0 0 1.5rem;
}

._actions_ew5ft_8 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

._primaryButton_ew5ft_15 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.875rem 1rem;
  background: linear-gradient(135deg, var(--indigo-500) 0%, var(--indigo-800) 100%);
  color: var(--text-inverse);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.15s;
}

._primaryButton_ew5ft_15:hover { opacity: 0.9; }

._primaryButton_ew5ft_15:focus-visible {
  outline: 2px solid var(--indigo-800);
  outline-offset: 2px;
}

._secondaryButton_ew5ft_39 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.875rem 1rem;
  background: #fff;
  color: var(--action-primary-bg);
  border: 1px solid var(--action-primary-bg);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.9375rem;
  cursor: pointer;
  transition: background 0.15s;
}

._secondaryButton_ew5ft_39:hover { background: rgba(41, 135, 194, 0.06); }

._secondaryButton_ew5ft_39:focus-visible {
  outline: 2px solid var(--action-primary-bg);
  outline-offset: 2px;
}

._cancelButton_ew5ft_62 {
  display: block;
  width: 100%;
  padding: 0.5rem;
  background: transparent;
  color: var(--text-secondary);
  border: none;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  cursor: pointer;
  text-align: center;
}

._cancelButton_ew5ft_62:hover { color: var(--text-primary); }
._reviewLabel_qggsj_1 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._approveButton_qggsj_10 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: var(--surface-card);
  border: 0.09375rem solid var(--border-strong);
  border-radius: 0.625rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

/* Icon neutral by default, green on hover */
._approveButton_qggsj_10 svg path { stroke: var(--border-strong); transition: stroke 0.2s ease-in-out; }
._approveButton_qggsj_10:hover:not(:disabled) { background: rgba(16, 185, 129, 0.08); border-color: var(--success-500); }
._approveButton_qggsj_10:hover:not(:disabled) svg path { stroke: var(--success-500); }
._approveButton_qggsj_10:disabled { opacity: 0.5; cursor: not-allowed; }
._approveButton_qggsj_10:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 2px; }

/* Reviewed/selected state — light green bg + green icon */
._approveButtonReviewed_qggsj_33 {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
  cursor: default;
}
._approveButtonReviewed_qggsj_33 svg path { stroke: var(--success-500); }
._approveButtonReviewed_qggsj_33:hover:not(:disabled) {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
}
._approveButtonReviewed_qggsj_33:hover:not(:disabled) svg path { stroke: var(--success-500); }

._editButtonHeader_qggsj_45 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: var(--surface-card);
  border: 0.09375rem solid var(--border-strong);
  border-radius: 0.625rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

/* Icon darker by default, red on hover */
._editButtonHeader_qggsj_45 svg path { stroke: var(--text-tertiary); transition: stroke 0.2s ease-in-out; }
._editButtonHeader_qggsj_45:hover:not(:disabled) { background: rgba(239, 68, 68, 0.08); border-color: var(--error-500); }
._editButtonHeader_qggsj_45:hover:not(:disabled) svg path { stroke: var(--error-500); }
._editButtonHeader_qggsj_45:disabled { opacity: 0.5; cursor: not-allowed; }
._editButtonHeader_qggsj_45:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 2px; }

._validatedBadge_qggsj_67 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  height: 1.5rem;
  padding: 0 0.625rem;
  background: rgba(16, 185, 129, 0.12);
  border: 0.0625rem solid var(--success-500);
  border-radius: 624.9375rem;
  color: var(--success-600);
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  flex-shrink: 0;
}

._validatedBadge_qggsj_67 svg path {
  stroke: var(--success-600);
}
._acceptButton_wsezw_1 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.25rem;
  padding: 0 1rem;
  background: white;
  border: 1.5px solid var(--color-stale);
  border-radius: 0.5rem;
  color: var(--color-stale-dark);
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
}

._acceptButton_wsezw_1:hover:not(:disabled) {
  background: var(--color-stale-bg-active);
}

._acceptButton_wsezw_1:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
/* AI Progress Bar - Smooth infinite sweep animation */

@keyframes _sweep_1aqht_1 {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(400%); }
}

._progressContainer_1aqht_8 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}

._progressLabel_1aqht_15 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._progressBar_1aqht_22 {
  width: 100%;
  height: 0.5rem;
  border-radius: 624.9375rem;
  overflow: hidden;
  position: relative;
  background: var(--indigo-200); /* soft purple base */
}

/* Glowing sweep element */
._progressBar_1aqht_22::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 25%;
  height: 100%;
  border-radius: 624.9375rem;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--indigo-300) 30%,
    var(--indigo-400) 50%,
    var(--indigo-300) 70%,
    transparent 100%
  );
  animation: _sweep_1aqht_1 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

._progressFill_1aqht_51 {
  display: none;
}
/* ProjectQuestionnaireTab.module.css */

._questionnaireTab_rrs15_3 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Header */
._header_rrs15_10 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

._headerLeft_rrs15_17 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_rrs15_23 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._subtitle_rrs15_32 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._progress_rrs15_38 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._progressText_rrs15_44 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
}

._headerActions_rrs15_51 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._aiButtonWrapper_rrs15_57 {
  position: relative;
  display: inline-block;
}

._aiButtonWrapper_rrs15_57 ._tooltip_rrs15_62 {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  background: var(--surface-subtle);
  color: var(--text-primary);
  padding: 0.625rem 0.875rem;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  line-height: 1.4;
  white-space: normal;
  width: 16rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
  box-shadow: var(--ai-blue-shadow);
  border: 0.0625rem solid var(--border-subtle);
}

._aiButtonWrapper_rrs15_57 ._tooltip_rrs15_62::after {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--surface-subtle);
}

._aiButtonWrapper_rrs15_57 ._tooltip_rrs15_62::before {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--border-subtle);
  margin-bottom: 0.0625rem;
}

._aiButtonWrapper_rrs15_57:hover ._tooltip_rrs15_62 {
  opacity: 1;
}

._aiButton_rrs15_57 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--indigo-700);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._aiButton_rrs15_57:hover:not(:disabled) {
  opacity: 0.9;
}

._aiButton_rrs15_57:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
}

._aiIcon_rrs15_133 {
  font-size: 1rem;
}

._spinner_rrs15_137 {
  animation: _spin_rrs15_137 1s linear infinite;
}

._spinnerIcon_rrs15_141 {
  animation: _spin_rrs15_137 1s linear infinite;
}

@keyframes _spin_rrs15_137 {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

._newQuestionButton_rrs15_155 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._newQuestionButton_rrs15_155:hover {
  opacity: 0.9;
}

/* Questions List */
._questionsList_rrs15_176 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

._questionCard_rrs15_182 {
  position: relative;
  display: flex;
  flex-direction: column;
  background: linear-gradient(164deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 0.5) 100%);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.875rem;
  box-shadow: var(--shadow-card), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  transition: border-color 0.3s ease-in-out;
}

/* Question Header - NEW */
._questionHeader_rrs15_195 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  min-height: 3.25rem;
  background: var(--surface-subtle);
  border-bottom: 0.0625rem solid var(--border-subtle);
  position: relative;
}

._questionTitle_rrs15_206 {
  flex: 1;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
}

._headerButtons_rrs15_216 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

._reviewLabel_rrs15_223 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._approveButton_rrs15_232 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: white;
  border: 0.09375rem solid var(--border-subtle);
  border-radius: 0.5rem;
  color: var(--text-primary);
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._approveButton_rrs15_232:hover:not(:disabled) {
  background: var(--approve-bg-hover);
}

._approveButton_rrs15_232:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._approveButton_rrs15_232:focus-visible {
  outline: 2px solid var(--border-subtle);
  outline-offset: 2px;
}

._approveButton_rrs15_232 svg path {
  stroke: var(--success-500);
}

._editButtonHeader_rrs15_267 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: white;
  border: 0.09375rem solid var(--border-subtle);
  border-radius: 0.5rem;
  color: var(--text-primary);
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._editButtonHeader_rrs15_267:hover:not(:disabled) {
  background: var(--destructive-bg-hover);
}

._editButtonHeader_rrs15_267:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._editButtonHeader_rrs15_267:focus-visible {
  outline: 2px solid var(--border-subtle);
  outline-offset: 2px;
}

._editButtonHeader_rrs15_267 svg path {
  stroke: var(--error-500);
}

/* Borda amarela quando está editando */
._questionCardEditing_rrs15_304 {
  border-color: var(--border-subtle);
}

/* Borda vermelha quando tem mudanças não salvas */
._questionCardUnsaved_rrs15_309 {
  border-color: var(--border-subtle);
}

/* Borda verde quando foi revisada pelo usuário */
._questionCardReviewed_rrs15_314 {
  border-color: var(--border-subtle);
}

/* Borda amarela quando não tem resposta */
._questionCardEmpty_rrs15_319 {
  border-color: var(--border-subtle);
}

/* Borda roxa para perguntas geradas por IA (que ainda não foram revisadas) */
._questionCardAiGenerated_rrs15_324 {
  border-color: var(--border-subtle);
}

/* Borda amarela quando o tab está stale */
._questionCardStale_rrs15_329 {
  border-color: var(--color-stale);
  background: var(--color-stale-bg);
}

._questionNumber_rrs15_334 {
  width: 1.75rem;
  height: 1.75rem;
  min-width: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
  border-radius: 50%;
  box-shadow: var(--shadow-card-hover);
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: white;
  font-weight: 600;
}

._questionContent_rrs15_350 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
}

._questionRow_rrs15_357 {
  display: flex;
  gap: 0.75rem;
}

._questionField_rrs15_362 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._answerField_rrs15_369 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._answerActions_rrs15_376 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
  margin-top: 0.5rem;
}

._label_rrs15_383 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-secondary);
  line-height: 1rem;
}

._input_rrs15_390 {
  width: 100%;
  min-height: 5rem;
  padding: 0.5rem 0.75rem;
  background: var(--slate-100);
  border: 0.0417rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: none;
  transition: border-color 0.2s ease-in-out;
}

._input_rrs15_390:focus {
  outline: none;
  border-color: var(--blue-600);
}

._inputDisabled_rrs15_410 {
  opacity: 0.8;
  cursor: not-allowed;
}

._textareaWrapper_rrs15_415 {
  position: relative;
  border-radius: 0.625rem;
  overflow: hidden;
  display: flex;
}

._textarea_rrs15_415 {
  width: 100%;
  min-height: 8.5625rem;
  padding: 0.5rem 4.5rem 0.5rem 0.75rem;
  /* Added right padding for AI badge */
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: none;
  transition: all 0.2s ease-in-out;
  outline: none;
  box-sizing: border-box;
  flex: 1;
}

._textarea_rrs15_415:disabled {
  cursor: not-allowed;
  user-select: none;
}

._textarea_rrs15_415[readonly] {
  cursor: default;
}

._textarea_rrs15_415:disabled:active,
._textarea_rrs15_415:disabled:focus {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

._textarea_rrs15_415::placeholder {
  color: var(--text-tertiary);
}

._textarea_rrs15_415:focus {
  outline: none;
  box-shadow: none;
}

/* AI Generated Textarea */
._textareaAi_rrs15_466 {
  background: var(--surface-subtle);
  border-color: var(--indigo-700);
}

._textareaStale_rrs15_471 {
  background: var(--slate-50);
  border-color: var(--color-stale);
}

/* Editing textarea */
._textareaEditing_rrs15_477 {
  border-color: var(--color-stale);
}

/* Keep same background when disabled and AI-generated */
._textareaAi_rrs15_466:disabled {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

/* When user edits, background stays white */
._textareaAi_rrs15_466:focus {
  background: white;
  box-shadow: none;
  outline: none;
}

/* Reviewed textarea - locked appearance */
._textareaReviewed_rrs15_495 {
  background: var(--slate-100) !important;
  color: var(--slate-500) !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  opacity: 0.85;
  border-color: var(--success-500);
}

._aiBadge_rrs15_504 {
  position: absolute;
  top: 0.875rem;
  right: 1rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  background: var(--ai-purple-bg);
  border: 0.0625rem solid var(--ai-purple-border);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  line-height: 0.9375rem;
}

._aiBadge_rrs15_504 svg path {
  stroke: var(--indigo-700);
}

._questionActions_rrs15_528 {
  display: flex;
  gap: 0.5rem;
  padding-top: 0.75rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._editButton_rrs15_267 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2rem;
  width: 2rem;
  padding: 0;
  background: white;
  border: 0.0417rem solid var(--blue-600);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--blue-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._editButton_rrs15_267:hover {
  background: var(--ai-blue-bg);
}

._cancelButton_rrs15_557 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: var(--error-500);
  border: 0.09375rem solid var(--error-500);
  border-radius: 0.625rem;
  color: white;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  flex-shrink: 0;
}

._cancelButton_rrs15_557:hover:not(:disabled) {
  background: var(--error-600);
  border-color: var(--error-600);
}

._saveButton_rrs15_578 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: var(--success-500);
  border: 0.09375rem solid var(--success-500);
  border-radius: 0.625rem;
  color: white;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  flex-shrink: 0;
}

._saveButton_rrs15_578:hover:not(:disabled) {
  background: var(--success-700);
  border-color: var(--success-700);
}

._saveButton_rrs15_578:disabled,
._cancelButton_rrs15_557:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._saveLabel_rrs15_605 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

/* Submit Section */
._submitSection_rrs15_615 {
  display: flex;
  justify-content: center;
  padding-top: 1.5rem;
}

._submitButton_rrs15_621 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 3rem;
  padding: 0 1.5rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_rrs15_621:hover {
  opacity: 0.9;
}

/* Accordion */
._accordion_rrs15_642 {
  background: var(--blue-50);
  border: 0.0417rem solid var(--blue-600);
  border-radius: 0.625rem;
  margin-top: 1rem;
  overflow: hidden;
}

._accordionButton_rrs15_650 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._accordionButton_rrs15_650:hover {
  background: var(--ai-blue-bg);
}

._accordionHeader_rrs15_666 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--blue-800);
  font-weight: 400;
}

._accordionChevron_rrs15_676 {
  transition: transform 0.2s ease-in-out;
}

._accordionChevron_rrs15_676 path {
  stroke: var(--blue-600);
}

._accordionChevronOpen_rrs15_684 {
  transform: rotate(180deg);
}

._accordionContent_rrs15_688 {
  padding: 0 1rem 1rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._accordionSection_rrs15_695 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._accordionSectionTitle_rrs15_701 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--blue-800);
  font-weight: 400;
  margin: 0;
}

._accordionList_rrs15_709 {
  list-style: none;
  padding: 0 0 0 0.5rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._accordionList_rrs15_709 li {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--blue-800);
  line-height: 1rem;
}

._accordionList_rrs15_709 li strong {
  font-weight: 600;
}

._accordionTip_rrs15_729 {
  background: var(--blue-100);
  padding: 0.5rem;
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--blue-800);
  line-height: 1rem;
}

/* Warning Box */
._warningBox_rrs15_740 {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  padding: 1rem;
  background: var(--blue-50);
  border: 0.0417rem solid var(--blue-600);
  border-radius: 0.625rem;
  margin-top: 1.5rem;
}

._warningBox_rrs15_740 svg {
  flex-shrink: 0;
  margin-top: 0.125rem;
}

._warningBox_rrs15_740 svg circle,
._warningBox_rrs15_740 svg path {
  stroke: var(--blue-600);
}

._warningBox_rrs15_740 p {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--blue-800);
  line-height: 1.25rem;
  margin: 0;
}

._warningBox_rrs15_740 strong {
  font-weight: 600;
}

/* Loading, Error and Empty States */
._loadingState_rrs15_774,
._errorState_rrs15_775,
._emptyState_rrs15_776 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem;
  text-align: center;
  background: white;
  border-radius: 0.75rem;
  margin: 1.5rem 0;
}

._loadingState_rrs15_774 p {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

._errorState_rrs15_775 p {
  font-size: 0.875rem;
  color: var(--error-500);
  font-weight: 500;
}

._emptyState_rrs15_776 p {
  font-size: 0.875rem;
  color: var(--blue-600);
  line-height: 1.6;
}

/* AI Generating Card */
._aiGeneratingCard_rrs15_806 {
  background: linear-gradient(135deg, var(--indigo-100) 0%, var(--indigo-100) 100%);
  border: 0.0625rem solid var(--indigo-700);
  border-radius: 0.75rem;
  padding: 1.25rem 1.5rem;
  margin-bottom: 1rem;
  box-shadow: 0rem 0.125rem 0.25rem 0rem var(--ai-purple-shadow);
}

._aiGeneratingHeader_rrs15_815 {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1rem;
}

._aiIcon_rrs15_133 {
  flex-shrink: 0;
  animation: _pulse_rrs15_1 2s ease-in-out infinite;
}

@keyframes _pulse_rrs15_1 {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0.7;
    transform: scale(1.1);
  }
}

._aiGeneratingText_rrs15_841 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._aiGeneratingTitle_rrs15_847 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--indigo-900);
  margin: 0;
  line-height: 1.5rem;
}

._aiGeneratingSubtitle_rrs15_856 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--indigo-700);
  margin: 0;
  line-height: 1.25rem;
}

._aiProgressBar_rrs15_864 {
  width: 100%;
  height: 0.5rem;
  background: var(--ai-purple-progress);
  border-radius: 0.25rem;
  overflow: hidden;
  margin-bottom: 0.5rem;
}

._aiProgressFill_rrs15_873 {
  height: 100%;
  background: linear-gradient(90deg, var(--indigo-700) 0%, var(--indigo-400) 100%);
  border-radius: 0.25rem;
  transition: width 0.3s ease-in-out;
}

._aiProgressText_rrs15_880 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--indigo-900);
  text-align: right;
}

/* Responsive */
@media (max-width: 48rem) {

  /* Header */
  ._title_rrs15_23 {
    font-size: 1rem;
  }

  ._progressText_rrs15_44 {
    font-size: 0.75rem;
  }

  /* AI Button */
  ._aiButton_rrs15_57 {
    height: 2rem;
    padding: 0 0.75rem;
    font-size: 0.75rem;
  }

  /* Question cards */
  ._questionNumber_rrs15_334 {
    width: 1.5rem;
    height: 1.5rem;
    font-size: 0.6875rem;
  }

  ._questionCard_rrs15_182 {
    padding: 0.75rem;
    padding-top: 1rem;
  }

  ._label_rrs15_383 {
    font-size: 0.6875rem;
  }

  ._input_rrs15_390,
  ._textarea_rrs15_415 {
    font-size: 0.75rem;
    min-height: 6.25rem;
  }

  /* Buttons */
  ._saveButton_rrs15_578,
  ._cancelButton_rrs15_557,
  ._editButton_rrs15_267 {
    height: 1.75rem;
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }

  ._editButton_rrs15_267 {
    width: 1.75rem;
  }

  /* AI Badge */
  ._aiBadge_rrs15_504 {
    font-size: 0.5625rem;
    padding: 0 0.3125rem;
    height: 1.125rem;
  }

  /* Accordion */
  ._accordionHeader_rrs15_666 {
    font-size: 0.75rem;
  }

  ._accordionSectionTitle_rrs15_701 {
    font-size: 0.75rem;
  }

  ._accordionList_rrs15_709 li {
    font-size: 0.6875rem;
  }

  ._accordionTip_rrs15_729 {
    font-size: 0.6875rem;
  }

  /* Warning box */
  ._warningBox_rrs15_740 {
    padding: 0.75rem;
  }

  ._warningBox_rrs15_740 p {
    font-size: 0.75rem;
  }

  /* Submit button */
  ._submitButton_rrs15_621 {
    height: 2.5rem;
    padding: 0 1.25rem;
    font-size: 0.875rem;
  }

  /* AI Generating card */
  ._aiGeneratingTitle_rrs15_847 {
    font-size: 0.875rem;
  }

  ._aiGeneratingSubtitle_rrs15_856 {
    font-size: 0.75rem;
  }

  /* Info state */
  ._infoTitle_rrs15_992 {
    font-size: 0.875rem;
  }

  ._infoText_rrs15_996 {
    font-size: 0.75rem;
  }

  ._infoTextSecondary_rrs15_1000 {
    font-size: 0.6875rem;
  }
}/* wiggle.module.css
 * Single source of truth for the wiggle shake animation used across all editable tabs.
 * Usage: import wiggleStyles from '../../../styles/wiggle.module.css';
 *        className={isWiggling ? wiggleStyles.wiggle : ''}
 */

@keyframes _wiggle_gb7po_4 {
  0%   { transform: translateX(0); }
  15%  { transform: translateX(-6px); }
  30%  { transform: translateX(6px); }
  45%  { transform: translateX(-5px); }
  60%  { transform: translateX(5px); }
  75%  { transform: translateX(-3px); }
  90%  { transform: translateX(3px); }
  100% { transform: translateX(0); }
}

._wiggle_gb7po_4 {
  animation: _wiggle_gb7po_4 0.5s ease-in-out;
  border-color: var(--warning-500) !important;
}

._wiggle_gb7po_4 textarea,
._wiggle_gb7po_4 input[type="text"],
._wiggle_gb7po_4 input:not([type]),
._wiggle_gb7po_4 input[type="search"] {
  border-color: var(--warning-500) !important;
  outline-color: var(--warning-500) !important;
}
._infoIconWrapper_1yg48_1 {
  display: inline-flex;
  align-items: center;
  margin-left: 0.375rem;
  color: var(--slate-400);
  cursor: help;
  vertical-align: middle;
  position: relative;
}

._infoIconWrapper_1yg48_1:hover {
  color: var(--action-primary-bg);
}
._painsList_u7n0b_1 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._painItem_u7n0b_7 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  border: 0.0625rem solid var(--border-subtle);
  background: var(--surface-card);
  transition: background 0.2s ease-in-out, padding 0.2s ease-in-out;
  position: relative;
  min-height: 2.25rem;
}

._painItem_u7n0b_7:hover {
  background: rgba(226, 232, 240, 0.3);
}

._painItemStale_u7n0b_24 {
  border-color: var(--color-stale);
  background: var(--color-stale-bg);
}

._painItemStale_u7n0b_24:hover {
  background: var(--color-stale-bg-hover);
}

._painItemEditing_u7n0b_33 {
  background: rgba(251, 146, 60, 0.02);
  padding: 0.625rem 0.75rem;
  min-height: auto;
}

._painItemEditing_u7n0b_33:hover {
  background: rgba(251, 146, 60, 0.08);
}

._painItemReviewed_u7n0b_43:hover {
  background: rgba(16, 185, 129, 0.04);
}

._painItemAI_u7n0b_47:hover {
  background: rgba(109, 40, 217, 0.04);
}

._painItemDeleting_u7n0b_51 {
  opacity: 0.6;
  pointer-events: none;
  background: var(--surface-subtle) !important;
}

._deletingText_u7n0b_57 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  font-style: italic;
  margin: 0;
  animation: _deletingDots_u7n0b_1 1.5s infinite;
}

._savingText_u7n0b_66 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--action-primary-bg);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

@keyframes _deletingDots_u7n0b_1 {
  0%, 20% { content: 'Excluindo'; }
  40% { content: 'Excluindo.'; }
  60% { content: 'Excluindo..'; }
  80%, 100% { content: 'Excluindo...'; }
}

._painNumber_u7n0b_83 {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--surface-subtle);
  color: var(--text-tertiary);
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 600;
}

._painContent_u7n0b_98 {
  flex: 1;
  min-width: 0;
}

._painText_u7n0b_103 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-primary);
  line-height: 1.3;
  margin: 0;
  word-wrap: break-word;
  white-space: normal;
}

._painTextarea_u7n0b_113 {
  width: 100%;
  min-height: 3.125rem;
  padding: 0.375rem 0.625rem;
  border: 0.0625rem solid var(--border-default);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-primary);
  line-height: 1.5;
  resize: vertical;
  outline: none;
  transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

._painTextarea_u7n0b_113:focus {
  border-color: var(--border-focus);
  box-shadow: 0 0 0 0.0625rem rgba(37, 99, 235, 0.1);
}

._painTextarea_u7n0b_113::placeholder {
  color: var(--text-disabled);
}

._painActions_u7n0b_137 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-shrink: 0;
  margin-right: 3.75rem;
  min-height: 1.25rem;
}

._editButton_u7n0b_146,
._deleteButton_u7n0b_147,
._reviewButton_u7n0b_148,
._saveButton_u7n0b_149,
._cancelButton_u7n0b_150 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  border: none;
  border-radius: 0.25rem;
  background: transparent;
  cursor: pointer;
  transition: background 0.2s ease-in-out, color 0.2s ease-in-out, opacity 0.25s ease-in-out;
  color: var(--text-tertiary);
}

._editButton_u7n0b_146:hover {
  background: rgba(37, 99, 235, 0.1);
  color: var(--action-primary-bg);
}

._reviewButton_u7n0b_148 {
  color: var(--success-500);
  transition: background 0.2s ease-in-out, color 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

._reviewButton_u7n0b_148:hover:not(:disabled) {
  background: rgba(16, 185, 129, 0.1);
  color: var(--success-500);
}

/* Reviewed/selected state — always visible, green */
._reviewButtonReviewed_u7n0b_181 {
  color: var(--success-500) !important;
  background: rgba(16, 185, 129, 0.1) !important;
  cursor: default;
}

._deleteButton_u7n0b_147 {
  color: var(--error-500);
}

._deleteButton_u7n0b_147:hover {
  background: var(--error-50);
  color: var(--error-600);
}

._hidden_u7n0b_196 {
  opacity: 0;
  pointer-events: none;
}

._saveButton_u7n0b_149 {
  background: transparent;
  color: var(--success-500);
}

._saveButton_u7n0b_149:hover:not(:disabled) {
  background: rgba(16, 185, 129, 0.1);
  color: var(--success-600);
}

._saveButton_u7n0b_149:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

._saveButton_u7n0b_149:disabled:hover {
  background: transparent;
  color: var(--success-500);
}

._cancelButton_u7n0b_150 {
  background: transparent;
  color: var(--error-500);
}

._cancelButton_u7n0b_150:hover {
  background: rgba(239, 68, 68, 0.15);
  color: var(--error-600);
}

._aiBadge_u7n0b_231 {
  position: absolute;
  top: 50%;
  right: 0.375rem;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  background: rgba(109, 40, 217, 0.1);
  border: 0.0625rem solid rgba(109, 40, 217, 0.3);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-transform: uppercase;
}

._aiBadge_u7n0b_231 svg path {
  stroke: var(--indigo-700);
}

._addPainContainer_u7n0b_254 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.375rem;
  padding: 0.5rem 0.5rem 0.5rem 0.75rem;
  transition: border-color 0.2s ease-in-out;
}

._addPainContainer_u7n0b_254:hover {
  border-color: var(--border-focus);
}

._addPainContainer_u7n0b_254:has(input:disabled) {
  opacity: 0.5;
  cursor: not-allowed;
}

._addPainContainer_u7n0b_254:has(input:disabled):hover {
  border-color: var(--border-subtle);
}

._addPainInput_u7n0b_278 {
  flex: 1;
  border: none;
  background: transparent;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-disabled);
  outline: none;
  cursor: pointer;
}

._addPainInput_u7n0b_278::placeholder {
  color: var(--text-disabled);
}

._addPainButton_u7n0b_293 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
  border: none;
  border-radius: 0.375rem;
  background: var(--action-primary-bg);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._addPainButton_u7n0b_293:hover {
  background: var(--action-primary-bg-hover);
}

._deleteConfirm_u7n0b_311 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-shrink: 0;
}

._deleteConfirmLabel_u7n0b_318 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-secondary);
  white-space: nowrap;
}

._confirmYesButton_u7n0b_325 {
  height: 1.5rem;
  padding: 0 0.5rem;
  background: var(--error-500);
  border: none;
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-inverse);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._confirmYesButton_u7n0b_325:hover {
  background: var(--error-600);
}

._confirmNoButton_u7n0b_343 {
  height: 1.5rem;
  padding: 0 0.5rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._confirmNoButton_u7n0b_343:hover {
  background: var(--surface-subtle);
}
/* WorkloadInfoTab.module.css */

._infoTab_1jvxu_3 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Header */
._header_1jvxu_10 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

._headerLeft_1jvxu_17 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_1jvxu_23 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._subtitle_1jvxu_32 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._progress_1jvxu_38 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._progressText_1jvxu_44 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
}

._headerActions_1jvxu_51 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._aiButtonWrapper_1jvxu_57 {
  position: relative;
  display: inline-block;
}

._aiButtonWrapper_1jvxu_57 ._tooltip_1jvxu_62 {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  background: var(--surface-subtle);
  color: var(--text-primary);
  padding: 0.625rem 0.875rem;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  line-height: 1.4;
  white-space: normal;
  width: 16rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
  box-shadow: var(--ai-blue-shadow);
  border: 0.0625rem solid var(--border-subtle);
}

._aiButtonWrapper_1jvxu_57 ._tooltip_1jvxu_62::after {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--surface-subtle);
}

._aiButtonWrapper_1jvxu_57 ._tooltip_1jvxu_62::before {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--border-subtle);
  margin-bottom: 0.0625rem;
}

._aiButtonWrapper_1jvxu_57:hover ._tooltip_1jvxu_62 {
  opacity: 1;
}

._aiButton_1jvxu_57 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--indigo-700);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._aiButton_1jvxu_57:hover:not(:disabled) {
  opacity: 0.9;
}

._aiButton_1jvxu_57:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
}

._aiIcon_1jvxu_133 {
  font-size: 1rem;
}

._spinner_1jvxu_137 {
  animation: _spin_1jvxu_137 1s linear infinite;
}

._spinnerIcon_1jvxu_141 {
  animation: _spin_1jvxu_137 1s linear infinite;
}

@keyframes _spin_1jvxu_137 {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

/* Fields List */
._fieldsList_1jvxu_156 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Field Number Circle */
._fieldNumber_1jvxu_163 {
  position: absolute;
  top: 0.875rem;
  left: 1rem;
  width: 1.75rem;
  height: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border-radius: 50%;
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.15);
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: white;
  font-weight: 600;
  z-index: 1;
}

/* Field Card */
._fieldCard_1jvxu_183 {
  position: relative;
  display: flex;
  flex-direction: column;
  background: linear-gradient(164deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 0.5) 100%);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.875rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  transition: border-color 0.3s ease-in-out;
}

/* Borda amarela quando está editando */

/* Borda verde quando foi revisada pelo usuário */

/* Borda roxa para campos gerados por IA (que ainda não foram revisados) */

._fieldLabel_1jvxu_201 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
}

._fieldContent_1jvxu_210 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
}

._textareaWrapper_1jvxu_217 {
  position: relative;
  border-radius: 0.625rem;
  overflow: hidden;
  display: flex;
}

._textarea_1jvxu_217 {
  width: 100%;
  min-height: 8.5625rem;
  padding: 0.5rem 4.5rem 0.5rem 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: none;
  transition: all 0.2s ease-in-out;
  outline: none;
  box-sizing: border-box;
  flex: 1;
}

._textarea_1jvxu_217:disabled {
  cursor: not-allowed;
  user-select: none;
}

._textarea_1jvxu_217[readonly] {
  cursor: default;
}

._textarea_1jvxu_217:disabled:active,
._textarea_1jvxu_217:disabled:focus {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

._textarea_1jvxu_217::placeholder {
  color: var(--text-tertiary);
}

._textarea_1jvxu_217:focus {
  outline: none;
  box-shadow: none;
}

/* AI Generated Textarea */
._textareaAi_1jvxu_267 {
  background: var(--surface-subtle);
  border-color: var(--indigo-700);
}

/* Stale Textarea - yellow border instead of purple when tab is stale */
._textareaStale_1jvxu_273 {
  background: var(--slate-50);
  border-color: var(--color-stale);
}

/* Keep same background when disabled and AI-generated */
._textareaAi_1jvxu_267:disabled {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

/* When user edits, background stays white */
._textareaAi_1jvxu_267:focus {
  background: white;
  box-shadow: none;
  outline: none;
}

/* Reviewed textarea - locked appearance */
._textareaReviewed_1jvxu_292 {
  background: var(--slate-100) !important;
  color: var(--slate-500) !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  opacity: 0.85;
  border-color: var(--success-500) !important;
}

/* AI Badge */
._aiBadge_1jvxu_302 {
  position: absolute;
  top: 0.875rem;
  right: 1rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  background: var(--ai-purple-bg);
  border: 0.0625rem solid var(--ai-purple-border);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  line-height: 0.9375rem;
}

._aiBadge_1jvxu_302 svg path {
  stroke: var(--indigo-700);
}

/* Field Actions */
._fieldActions_1jvxu_327 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

._editButton_1jvxu_334 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2rem;
  width: 2rem;
  padding: 0;
  background: white;
  border: 0.0417rem solid var(--action-primary-bg);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--action-primary-bg);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._editButton_1jvxu_334:hover {
  background: var(--ai-blue-bg);
}

._saveButton_1jvxu_356 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: var(--success-500);
  border: 0.09375rem solid var(--success-500);
  border-radius: 0.625rem;
  color: white;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  flex-shrink: 0;
}

._saveButton_1jvxu_356:hover:not(:disabled) {
  background: var(--success-600);
  border-color: var(--success-600);
}

._saveButton_1jvxu_356:disabled,
._cancelButton_1jvxu_378:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._cancelButton_1jvxu_378:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._cancelButton_1jvxu_378 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: var(--error-500);
  border: 0.09375rem solid var(--error-500);
  border-radius: 0.625rem;
  color: white;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  flex-shrink: 0;
}

._cancelButton_1jvxu_378:hover:not(:disabled) {
  background: var(--error-600);
  border-color: var(--error-600);
}

._saveLabel_1jvxu_409 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

/* AI Generating Card */
._aiGeneratingCard_1jvxu_419 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.25rem;
  background: var(--ai-purple-gradient);
  border: 0.0625rem solid var(--ai-purple-progress);
  border-radius: 0.625rem;
  margin-bottom: 0.5rem;
}

._aiGeneratingHeader_1jvxu_430 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._aiGeneratingText_1jvxu_436 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._aiGeneratingTitle_1jvxu_442 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._aiGeneratingSubtitle_1jvxu_451 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

._aiProgressBar_1jvxu_459 {
  width: 100%;
  height: 0.5rem;
  background: var(--ai-purple-bg);
  border-radius: 0.25rem;
  overflow: hidden;
}

._aiProgressFill_1jvxu_467 {
  height: 100%;
  background: linear-gradient(90deg, var(--indigo-400) 0%, var(--indigo-700) 50%, var(--indigo-500) 100%);
  border-radius: 0.25rem;
  transition: width 0.3s ease-in-out;
}

._aiProgressText_1jvxu_474 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-align: center;
  line-height: 1.25rem;
}

/* Responsive */
@media (max-width: 48rem) {
  ._fieldLabel_1jvxu_201 {
    font-size: 0.875rem;
  }

  ._textarea_1jvxu_217 {
    font-size: 0.75rem;
  }

  ._saveButton_1jvxu_356,
  ._cancelButton_1jvxu_378,
  ._editButton_1jvxu_334 {
    height: 1.75rem;
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }

  ._editButton_1jvxu_334 {
    width: 1.75rem;
  }
}

/* Question Header - COPIED FROM QUESTIONNAIRE */
._questionHeader_1jvxu_507 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  min-height: 3.25rem;
  background: var(--surface-subtle);
  border-bottom: 0.0625rem solid var(--border-subtle);
  position: relative;
}

/* First question header should have rounded top corners */
._questionHeader_1jvxu_507:first-of-type {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

._questionTitle_1jvxu_524 {
  flex: 1;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
  padding-left: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._fieldIcon_1jvxu_538 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

._fieldIcon_1jvxu_538 svg {
  width: 1.25rem;
  height: 1.25rem;
}

._headerButtons_1jvxu_552 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

._reviewLabel_1jvxu_559 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._editButtonHeader_1jvxu_568 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: white;
  border: 0.09375rem solid var(--border-subtle);
  border-radius: 0.5rem;
  color: var(--text-primary);
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._editButtonHeader_1jvxu_568:hover:not(:disabled) {
  background: var(--destructive-bg-hover);
}

._editButtonHeader_1jvxu_568:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._editButtonHeader_1jvxu_568:focus-visible {
  outline: 2px solid var(--border-subtle);
  outline-offset: 2px;
}

._editButtonHeader_1jvxu_568 svg path {
  stroke: var(--error-500);
}

._reviewLabel_1jvxu_559 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._approveButton_1jvxu_613 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: white;
  border: 0.09375rem solid var(--border-subtle);
  border-radius: 0.5rem;
  color: var(--text-primary);
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._approveButton_1jvxu_613:hover:not(:disabled) {
  background: var(--approve-bg-hover);
}

._approveButton_1jvxu_613:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._approveButton_1jvxu_613 svg path {
  stroke: var(--success-500);
}

._validatedBadge_1jvxu_643 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  height: 1.5rem;
  padding: 0 0.625rem;
  background: var(--approve-bg-hover);
  border: 0.0625rem solid var(--success-500);
  border-radius: 624px;
  color: var(--success-600);
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03rem;
  flex-shrink: 0;
}._card_t3iqb_1 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.0625rem solid #E2E8F0;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
  border-radius: 0.625rem;
  flex: 1 1 30%;
  max-width: 50%;
  position: relative;
}

._card_t3iqb_1:hover ._menuTrigger_t3iqb_15 {
  opacity: 1;
}

._cardBody_t3iqb_19 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

._avatar_t3iqb_25 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--blue-600);
  color: white;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  flex-shrink: 0;
}

._info_t3iqb_40 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}

._header_t3iqb_47 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._name_t3iqb_53 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
}

._badge_t3iqb_60 {
  padding: 0.125rem 0.375rem;
  background: var(--success-50);
  border: 0.0417rem solid var(--success-500);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 600;
  color: var(--success-700);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

._role_t3iqb_73 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

._contact_t3iqb_79 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin-top: 0.125rem;
}

._contactEmpty_t3iqb_89 {
  opacity: 0.45;
  font-style: italic;
}

/* 3-dot menu */
._menuWrapper_t3iqb_95 {
  position: relative;
}

._menuTrigger_t3iqb_15 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.1875rem;
  width: 1.75rem;
  height: 1.75rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  padding: 0;
  opacity: 0;
  transition: opacity 0.15s;
}

._menuTrigger_t3iqb_15 span {
  display: block;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background: var(--text-secondary);
}

._menuTrigger_t3iqb_15:hover {
  background: var(--slate-100);
}

._menuTrigger_t3iqb_15:focus-visible {
  outline: 0.125rem solid var(--blue-600);
  outline-offset: 0.125rem;
  opacity: 1;
}

._menu_t3iqb_15 {
  position: absolute;
  right: 0;
  top: calc(100% + 0.25rem);
  min-width: 9rem;
  background: var(--surface-card, white);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  z-index: 100;
  overflow: hidden;
}

._menuItem_t3iqb_147 {
  display: block;
  width: 100%;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s;
}

._menuItem_t3iqb_147:hover {
  background: var(--surface-subtle);
}

._menuItemDanger_t3iqb_165 {
  color: var(--error-500);
}

._menuItemDanger_t3iqb_165:hover {
  background: var(--error-50);
}
/* EditProjectModal Styles - Mapinator MVP */

._form_d8q3e_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_d8q3e_9 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_d8q3e_15 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_d8q3e_23 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_d8q3e_23::placeholder {
  color: var(--text-disabled);
}

select._input_d8q3e_23 {
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' stroke='%2345556C' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  padding-right: 2.5rem;
}

._input_d8q3e_23:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_d8q3e_23:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_d8q3e_59 {
  border-color: var(--error-500);
}

._inputError_d8q3e_59:focus {
  border-color: var(--error-500);
}

._errorText_d8q3e_67 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_d8q3e_75 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_d8q3e_85 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_d8q3e_85:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_d8q3e_106 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_d8q3e_106:hover {
  opacity: 0.9;
}

._submitButton_d8q3e_106:active {
  transform: translateY(0.0625rem);
}

._optional_d8q3e_129 {
  font-weight: 400;
  color: var(--text-disabled);
}

._checkboxLabel_d8q3e_134 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  cursor: pointer;
}

._checkboxLabel_d8q3e_134:has(input:disabled) {
  cursor: not-allowed;
}

._checkboxRow_d8q3e_148 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._checkbox_d8q3e_134 {
  width: 1rem;
  height: 1rem;
  accent-color: var(--action-primary-bg);
  cursor: pointer;
}

._checkbox_d8q3e_134:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

._checkboxHint_d8q3e_166 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  font-style: italic;
  padding-left: 1.5rem;
}
/* StatusTab.module.css */

._statusTab_1uawo_3 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  height: calc(100vh - 3.5rem - 3rem - 2.875rem - 3rem); /* viewport - header - entity header - tabs - breadcrumb */
  overflow: visible;
  padding-bottom: 0.375rem; /* Space at bottom - EXACTLY 0.375rem from screen edge */
}

/* Project Info Card */
._entityInfoCard_1uawo_13 {
  background: var(--surface-subtle);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  box-shadow: var(--shadow-card);
  flex-shrink: 0;
}

._entityTopRow_1uawo_22 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

._entityLeft_1uawo_28 {
  display: flex;
  flex-direction: column;
}

._entityHeader_1uawo_33 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

._entityName_1uawo_40 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--slate-900);
  margin: 0;
}

._statusBadge_1uawo_48 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.75rem;
  background: var(--success-50);
  border-radius: 0.75rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--success-700);
  font-weight: 500;
}

._statusDot_1uawo_61 {
  width: 0.375rem;
  height: 0.375rem;
  background: var(--success-500);
  border-radius: 50%;
}

._entityMeta_1uawo_68 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
}

._metaLabel_1uawo_76 {
  color: var(--text-tertiary);
}

._metaValue_1uawo_80 {
  color: var(--blue-600);
  font-weight: 500;
}

._metaItem_1uawo_85 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._metaSeparator_1uawo_91 {
  color: var(--border-default);
}

/* Tasks Overview Card */
._tasksOverviewCard_1uawo_96 {
  background: linear-gradient(135deg, var(--warning-50) 0%, var(--pastel-peach) 100%);
  border: 0.0417rem solid var(--warning-500);
  border-radius: 0.875rem;
  padding: 1rem;
  box-shadow: var(--shadow-card-hover);
  flex-shrink: 0;
}

._overviewHeader_1uawo_105 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}

._overviewTitle_1uawo_112 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--warning-700);
  margin: 0;
}

._overviewStats_1uawo_120 {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
}

._statsCount_1uawo_126 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--warning-700);
}

._statsLabel_1uawo_133 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--warning-600);
}

._overviewSubtitle_1uawo_139 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--warning-600);
  margin: 0 0 0.75rem 0;
}

/* Progress Bar */
._progressBar_1uawo_147 {
  width: 100%;
  height: 0.5rem;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 0.25rem;
  overflow: hidden;
  margin-bottom: 0.75rem;
}

._progressFill_1uawo_156 {
  height: 100%;
  background: linear-gradient(90deg, var(--blue-600) 0%, var(--blue-400) 100%); /* Changed from green to Mapinator blue */
  border-radius: 0.3125rem;
  transition: width 0.3s ease-in-out;
}

/* Task Breakdown */
._taskBreakdown_1uawo_164 {
  display: flex;
  gap: 2rem;
}

._breakdownItem_1uawo_169 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._breakdownDot_1uawo_175 {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
}

._breakdownLabel_1uawo_181 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--warning-700);
}

._breakdownValue_1uawo_187 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--warning-700);
}

._bottomSection_1uawo_194 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex: 1; /* CRITICAL: Takes all remaining space */
  min-height: 0; /* CRITICAL: Allows flex child to shrink */
  overflow: visible; /* CHANGED: Remove scroll from here, let cardContent handle it */
  padding-right: 0.25rem; /* Space for scrollbar */
}

/* Bottom Grid - FILLS AVAILABLE SPACE */
._bottomGrid_1uawo_205 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  flex: 1; /* CRITICAL: Takes all remaining space */
  min-height: 0; /* CRITICAL: Allows flex child to shrink */
  margin-bottom: 7.5rem; /* CRITICAL: Space at bottom - prevents cards from touching screen edge */
}

/* Card Styles - FILLS AVAILABLE HEIGHT WITH INTERNAL SCROLL */
._card_1uawo_215 {
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.875rem;
  box-shadow: var(--shadow-card);
  padding: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden; /* CRITICAL: Prevents card from growing */
  height: 100%; /* Fill all available space in grid */
  min-height: 18.75rem; /* CRITICAL: Minimum height for cards */
}

/* Tasks card - blue border */
._card_1uawo_215:first-child {
  border: 0.0625rem solid var(--blue-100);
}

/* Notes card - beige/orange border */
._card_1uawo_215:last-child {
  border: 0.0625rem solid var(--pastel-peach);
}

._cardHeaderWithProgress_1uawo_238 {
  padding: 1.25rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  border-bottom: 0.0417rem solid var(--border-separator);
  flex-shrink: 0;
  min-height: 5.625rem;
  height: 5.625rem;
}

/* Tasks card header - blue background */
._card_1uawo_215:first-child ._cardHeaderWithProgress_1uawo_238 {
  background: linear-gradient(164deg, var(--blue-50) 0%, var(--blue-100) 100%);
}

/* Notes card header - beige background */
._card_1uawo_215:last-child ._cardHeaderNoProgress_1uawo_255 {
  background: linear-gradient(164deg, var(--warning-50) 0%, var(--pastel-peach) 100%);
}

._cardHeaderNoProgress_1uawo_255 {
  padding: 0.75rem 1rem;
  border-bottom: 0.0417rem solid var(--border-separator);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  min-height: 5.625rem;
  height: 5.625rem;
}

._cardTitleRow_1uawo_270 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  flex-shrink: 0;
}

._cardHeader_1uawo_238 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.25rem;
}

._cardTitle_1uawo_270 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--slate-900);
}

._completionText_1uawo_295 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  margin-left: auto;
}

._completionBadge_1uawo_302 {
  padding: 0.25rem 0.75rem;
  background: white;
  border: 0.0417rem solid var(--blue-600);
  border-radius: 0.75rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--blue-600);
  font-weight: 500;
  margin-left: auto;
}

/* Small Progress Bar in Card Header */
._progressBarSmall_1uawo_315 {
  width: 100%;
  height: 0.375rem;
  background: var(--border-default);
  border-radius: 0.1875rem;
  overflow: hidden;
  margin-top: 0.25rem;
}

._progressFillSmall_1uawo_324 {
  height: 100%;
  background: linear-gradient(90deg, var(--blue-600) 0%, var(--blue-400) 100%); /* Changed from green to Mapinator blue */
  border-radius: 0.1875rem;
  transition: width 0.3s ease-in-out;
}

/* Tasks List */
._tasksList_1uawo_332 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
  overflow-y: auto;
  padding: 0.75rem;
  padding-right: 1rem;
  min-height: 0;
}

/* Scrollbar styling for tasksList */
._tasksList_1uawo_332::-webkit-scrollbar {
  width: 0.25rem;
}

._tasksList_1uawo_332::-webkit-scrollbar-track {
  background: transparent;
}

._tasksList_1uawo_332::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._tasksList_1uawo_332::-webkit-scrollbar-thumb:hover {
  background: var(--text-disabled);
}

/* Hide scroll buttons */
._tasksList_1uawo_332::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

._taskItem_1uawo_368 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._taskItem_1uawo_368:hover {
  border-color: var(--border-default);
  box-shadow: var(--shadow-xs);
}

._taskCheckbox_1uawo_385 {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}

._taskCheckbox_1uawo_385 input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

._checkmark_1uawo_398 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.25rem;
  background: white;
  transition: all 0.2s ease-in-out;
}

._taskCheckbox_1uawo_385 input[type="checkbox"]:checked ~ ._checkmark_1uawo_398 {
  background: var(--success-500);
  border-color: var(--success-500);
}

._taskText_1uawo_415 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  flex: 1;
}

._taskTextCompleted_1uawo_423 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-disabled);
  line-height: 1.25rem;
  text-decoration: line-through;
  flex: 1;
}

/* Add Button */
._addButton_1uawo_433 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: var(--warning-500);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  flex-shrink: 0;
}

._addButton_1uawo_433:hover {
  opacity: 0.9;
}

/* Add Note Form */
._addNoteForm_1uawo_455 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
  margin: 1rem 1.25rem 1.25rem 1.25rem;
  background: var(--surface-subtle);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
}

._noteInput_1uawo_466 {
  width: 100%;
  min-height: 5rem;
  padding: 0.625rem 0.75rem;
  background: white;
  border: 0.0417rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

._noteInput_1uawo_466:focus {
  outline: none;
  border-color: var(--blue-600);
}

._formActions_1uawo_486 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

._saveButton_1uawo_492 {
  padding: 0.5rem 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._saveButton_1uawo_492:hover {
  opacity: 0.9;
}

._cancelButton_1uawo_508 {
  padding: 0.5rem 1rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._cancelButton_1uawo_508:hover {
  background: var(--surface-subtle);
}

/* Notes List */
._notesList_1uawo_525 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex: 1;
  overflow-y: auto;
  padding: 0.75rem;
  padding-right: 1rem;
  min-height: 0;
}

/* Scrollbar styling for notesList */
._notesList_1uawo_525::-webkit-scrollbar {
  width: 0.25rem;
}

._notesList_1uawo_525::-webkit-scrollbar-track {
  background: transparent;
}

._notesList_1uawo_525::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._notesList_1uawo_525::-webkit-scrollbar-thumb:hover {
  background: var(--text-disabled);
}

/* Hide scroll buttons */
._notesList_1uawo_525::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

._noteItem_1uawo_561 {
  padding: 1.125rem;
  background: var(--surface-subtle);
  border: 0.0417rem solid var(--border-subtle);
  border-left: 0.1875rem solid var(--warning-500);
  border-radius: 0.625rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex-shrink: 0;
  min-height: 5.625rem;
}

._noteContent_1uawo_574 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

._noteText_1uawo_581 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
  flex: 1;
}

._noteActions_1uawo_590 {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}

._noteItem_1uawo_561:hover ._noteActions_1uawo_590 {
  opacity: 1;
}

._noteActionButton_1uawo_602 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  color: var(--text-tertiary);
}

._noteActionButton_1uawo_602:hover {
  background: var(--slate-100);
  color: var(--blue-600);
}

._noteActionButton_1uawo_602:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._noteDeleteButton_1uawo_626 {
  color: var(--error-500);
}

._noteDeleteButton_1uawo_626:hover {
  background: var(--error-50);
  color: var(--error-600);
}

._noteEditInput_1uawo_635 {
  width: 100%;
  min-height: 5rem;
  padding: 0.625rem 0.75rem;
  background: white;
  border: 0.0417rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

._noteEditInput_1uawo_635:focus {
  outline: none;
  border-color: var(--blue-600);
}

._noteEditActions_1uawo_655 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

._noteSaveButton_1uawo_661 {
  padding: 0.5rem 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._noteSaveButton_1uawo_661:hover {
  opacity: 0.9;
}

._noteSaveButton_1uawo_661:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._noteCancelButton_1uawo_682 {
  padding: 0.5rem 1rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._noteCancelButton_1uawo_682:hover {
  background: var(--surface-subtle);
}

._noteCancelButton_1uawo_682:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._noteMeta_1uawo_703 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._noteAuthor_1uawo_712 {
  font-weight: 500;
}

._noteSeparator_1uawo_716 {
  color: var(--border-default);
}

._noteDate_1uawo_720 {
  color: var(--text-disabled);
}

/* Empty State */
._emptyState_1uawo_725 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  text-align: center;
  flex: 1;
}

._emptyState_1uawo_725 p {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-disabled);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  /* Container */
  ._statusTab_1uawo_3 {
    gap: 0.5rem;
  }

  /* Header adjustments */
  ._entityHeader_1uawo_33 {
    height: 2.5rem;
    padding: 0 1rem;
  }
  
  ._entityLabel_1uawo_754 {
    font-size: 0.75rem;
  }
  
  ._entityIcon_1uawo_758 {
    font-size: 1rem;
  }
  
  /* Project info card */
  ._entityInfoCard_1uawo_13 {
    padding: 0.75rem;
  }

  ._entityName_1uawo_40 {
    font-size: 1rem;
  }
  
  ._statusBadge_1uawo_48 {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.625rem;
  }
  
  ._entityMeta_1uawo_68 {
    font-size: 0.75rem;
  }
  
  /* Tasks overview card */
  ._tasksOverviewCard_1uawo_96 {
    padding: 0.75rem;
  }

  ._overviewTitle_1uawo_112 {
    font-size: 1rem;
  }
  
  ._statsCount_1uawo_126 {
    font-size: 1.25rem;
  }
  
  ._statsLabel_1uawo_133 {
    font-size: 0.75rem;
  }
  
  ._overviewSubtitle_1uawo_139 {
    font-size: 0.75rem;
  }
  
  ._breakdownLabel_1uawo_181 {
    font-size: 0.75rem;
  }
  
  ._breakdownValue_1uawo_187 {
    font-size: 1rem;
  }
  
  /* Bottom grid */
  ._bottomGrid_1uawo_205 {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  
  ._taskBreakdown_1uawo_164 {
    flex-direction: column;
    gap: 0.75rem;
  }

  /* Cards */
  ._card_1uawo_215 {
    min-height: 15.625rem;
  }

  ._cardHeader_1uawo_238 {
    padding: 0.75rem;
    gap: 0.5rem;
  }
  
  /* Card headers - maintain same height on mobile */
  ._cardHeaderWithProgress_1uawo_238,
  ._cardHeaderNoProgress_1uawo_255 {
    min-height: 5rem;
    height: 5rem;
    padding: 0.625rem 0.75rem;
  }
  
  /* Card titles */
  ._cardTitle_1uawo_270 {
    font-size: 0.875rem;
  }
  
  ._completionText_1uawo_295 {
    font-size: 0.75rem;
  }
  
  ._completionBadge_1uawo_302 {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.625rem;
  }
  
  /* Add button */
  ._addButton_1uawo_433 {
    height: 1.75rem;
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }
  
  /* Info cards */
  ._infoCards_1uawo_860 {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  ._infoCard_1uawo_860 {
    padding: 0.625rem 0.75rem;
  }
  
  ._infoLabel_1uawo_869 {
    font-size: 0.6875rem;
  }
  
  ._infoValue_1uawo_873 {
    font-size: 0.875rem;
  }
  
  ._infoIcon_1uawo_877 {
    width: 2rem;
    height: 2rem;
  }

  /* Lists */
  ._activitiesList_1uawo_883,
  ._notesList_1uawo_525 {
    padding: 0.75rem;
    gap: 0.5rem;
  }
  
  /* Activity items */
  ._activityContent_1uawo_890 {
    padding: 0.625rem 0.75rem;
  }

  ._activityTitle_1uawo_894 {
    font-size: 0.75rem;
  }
  
  ._activityStatus_1uawo_898 {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.5rem;
  }
  
  ._activityMeta_1uawo_903 {
    font-size: 0.6875rem;
  }
  
  /* Task items */
  ._taskText_1uawo_415,
  ._taskTextCompleted_1uawo_423 {
    font-size: 0.75rem;
  }
  
  /* Note items */
  ._noteCard_1uawo_914 {
    padding: 0.625rem 0.75rem;
  }

  ._noteText_1uawo_581 {
    font-size: 0.75rem;
  }
  
  ._noteMeta_1uawo_703 {
    font-size: 0.6875rem;
  }
}

/* Delete Confirmation */
._deleteConfirmation_1uawo_928 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
  background: var(--error-50);
  border: 0.0417rem solid var(--error-50);
  border-radius: 0.5rem;
}

._confirmationText_1uawo_938 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-700);
  margin: 0;
  font-weight: 500;
}

._confirmationActions_1uawo_946 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

._confirmYes_1uawo_952 {
  padding: 0.5rem 1rem;
  background: var(--error-500);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  font-weight: 500;
}

._confirmYes_1uawo_952:hover {
  opacity: 0.9;
}

._confirmYes_1uawo_952:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._confirmNo_1uawo_974 {
  padding: 0.5rem 1rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._confirmNo_1uawo_974:hover {
  background: var(--surface-subtle);
}

._confirmNo_1uawo_974:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Bottom Info Cards - AT BOTTOM OF TAB (NOT FIXED) */
._infoCards_1uawo_860 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  margin-top: 0.75rem; /* Space from content above */
  padding: 0;
  flex-shrink: 0; /* Don't shrink */
}

@media (max-width: 64rem) {
  ._infoCards_1uawo_860 {
    grid-template-columns: 1fr; /* Stack vertically on smaller screens */
  }
}

@media (max-width: 48rem) {
  ._infoCards_1uawo_860 {
    gap: 0.5rem;
    margin-top: 0.5rem;
  }
}

._infoCard_1uawo_860 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.75rem;
  box-shadow: var(--shadow-card);
}

._infoIcon_1uawo_877 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  flex-shrink: 0;
}

._infoContent_1uawo_1039 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._infoLabel_1uawo_869 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

._infoValue_1uawo_873 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--slate-900);
}


/* Activities List (Timeline) */
._activitiesList_1uawo_883 {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  flex: 1;
  overflow-y: auto;
  padding: 1rem;
  padding-right: 1rem;
  min-height: 0;
}

/* Scrollbar styling for activitiesList */
._activitiesList_1uawo_883::-webkit-scrollbar {
  width: 0.25rem;
}

._activitiesList_1uawo_883::-webkit-scrollbar-track {
  background: transparent;
}

._activitiesList_1uawo_883::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._activitiesList_1uawo_883::-webkit-scrollbar-thumb:hover {
  background: var(--text-disabled);
}

/* Hide scroll buttons */
._activitiesList_1uawo_883::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

._activityItem_1uawo_1096 {
  display: flex;
  gap: 0.75rem;
  position: relative;
  flex-shrink: 0;
}

._activityIndicator_1uawo_1103 {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  padding-top: 0.5rem;
}

._activityDot_1uawo_1111 {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  border: 0.125rem solid white;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.2);
  flex-shrink: 0;
}

._activityLine_1uawo_1120 {
  width: 0.125rem;
  flex: 1;
  background: var(--slate-200);
  margin: 0.25rem 0;
  min-height: 1.25rem;
}

._activityContent_1uawo_890 {
  flex: 1;
  padding: 1.125rem 1.25rem;
  border-radius: 0.75rem;
  border: 0.0417rem solid rgba(0, 0, 0, 0.08);
  transition: all 0.2s ease-in-out;
  min-height: 5.625rem;
}

._activityHeader_1uawo_1137 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

._activityTitle_1uawo_894 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  margin: 0;
  flex: 1;
  line-height: 1.4;
}

._activityStatusIcon_1uawo_1154 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
}

._activityStatusIcon_1uawo_1154 svg {
  width: 1.5rem;
  height: 1.5rem;
}

._activityMeta_1uawo_903 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
}

._activityAssignee_1uawo_1176,
._activityDate_1uawo_1177 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

._activitySeparator_1uawo_1183 {
  color: var(--border-default);
}

/* Stakeholders */
._divider_1uawo_1188 {
  border: none;
  border-top: 1px solid var(--border-subtle);
  margin: 0.75rem 0 0;
}

._stakeholdersList_1uawo_1194 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._stakeholderSectionHeader_1uawo_1200 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

._stakeholderSectionTitle_1uawo_1206 {
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

._stakeholderCards_1uawo_1215 {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

._stakeholderCard_1uawo_1215 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  min-width: 14rem;
  flex: 1;
  max-width: 20rem;
}

._stakeholderAvatar_1uawo_1234 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--blue-600);
  color: white;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  flex-shrink: 0;
}

._stakeholderCardInfo_1uawo_1249 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}

._stakeholderCardHeader_1uawo_1256 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._stakeholderCardName_1uawo_1262 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
}

._stakeholderBadge_1uawo_1269 {
  padding: 0.125rem 0.375rem;
  background: var(--success-50);
  border: 0.0417rem solid var(--success-500);
  border-radius: 0.25rem;
  font-family: Arial, sans-serif;
  font-size: 0.625rem;
  font-weight: 600;
  color: var(--success-700);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

._stakeholderCardRole_1uawo_1282 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

._stakeholderContact_1uawo_1288 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin-top: 0.125rem;
}

._addStakeholderBtn_1uawo_1298 {
  background: none;
  border: none;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--blue-600);
  cursor: pointer;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
}

._addStakeholderBtn_1uawo_1298:hover {
  background: var(--blue-50, rgba(41, 135, 194, 0.08));
}

/* Language selector */
._languageSelector_1uawo_1315 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
}

._languageIcon_1uawo_1322 {
  font-size: 16px;
  color: #2987C2;
}

._languageLabel_1uawo_1327 {
  font-size: 13px;
  color: #62748E;
  font-weight: 500;
}

._languageSelect_1uawo_1315 {
  font-size: 13px;
  padding: 4px 8px;
  border-radius: 6px;
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
}
._container_nvd33_1 {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #f8fafc;
  border: 0.667px solid #e2e8f0;
  border-radius: 8px;
}

._cloudIcon_nvd33_11 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: #94a3b8;
  flex-shrink: 0;
}

._cloudIcon_nvd33_11 svg {
  width: 20px;
  height: 20px;
}

._chip_nvd33_26 {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  height: 33px;
  border: 0.667px solid #22d3ee;
  border-radius: 6px;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  color: #334155;
  background: white;
  box-shadow:
    0px 0px 0px 0px rgba(0, 0, 0, 0.2),
    0px 0px 0px 0px #cffafe,
    0px 0px 0px 0px white;
  white-space: nowrap;
}

._chipRemove_nvd33_47 {
  background: none;
  border: none;
  cursor: pointer;
  color: #9ca3af;
  font-size: 16px;
  padding: 0 2px;
  line-height: 1;
}

._chipRemove_nvd33_47:hover {
  color: #ef4444;
}

._addButton_nvd33_61 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  height: 33px;
  border: 0.667px dashed #22d3ee;
  border-radius: 6px;
  background: transparent;
  color: #0891b2;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  cursor: pointer;
  white-space: nowrap;
}

._addButton_nvd33_61:hover {
  background: #ecfeff;
}

._addButtonIcon_nvd33_83 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}

._addButtonIcon_nvd33_83 svg {
  width: 16px;
  height: 16px;
}

._editButton_nvd33_96 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: none;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  padding: 0;
  margin-left: auto;
  transition: background 0.15s ease;
}

._editButton_nvd33_96 svg {
  width: 18px;
  height: 18px;
}

._editButton_nvd33_96:hover {
  background: #ecfeff;
}

._modalOverlay_nvd33_120 {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

._modal_nvd33_120 {
  background: #fff;
  border-radius: 12px;
  width: 448px;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: 0px 25px 50px -12px rgba(0, 0, 0, 0.25);
}

._modalHeader_nvd33_141 {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 24px;
  border-bottom: 0.667px solid #e2e8f0;
  flex-shrink: 0;
}

._modalIconWrapper_nvd33_150 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #ecfeff;
  border-radius: 8px;
  flex-shrink: 0;
}

._modalIconWrapper_nvd33_150 svg {
  width: 20px;
  height: 20px;
  color: #06b6d4;
}

._modalHeader_nvd33_141 h3 {
  flex: 1;
  margin: 0;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  color: #1e293b;
}

._modalClose_nvd33_177 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: none;
  border: none;
  cursor: pointer;
  color: #64748b;
  font-size: 20px;
  border-radius: 4px;
}

._modalClose_nvd33_177:hover {
  background: #f1f5f9;
}

._modalClose_nvd33_177 svg {
  width: 20px;
  height: 20px;
}

._modalList_nvd33_200 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 8px 24px 16px;
  overflow-y: auto;
  flex: 1;
}

._regionItem_nvd33_209 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  height: 41px;
  border: 0.667px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #334155;
  text-align: left;
  width: 100%;
  transition: border-color 0.15s ease, background 0.15s ease;
}

._regionItem_nvd33_209:hover:not(:disabled) {
  border-color: #22d3ee;
  background: #ecfeff;
}

._regionItemSelected_nvd33_234 {
  background: #f8fafc;
  border-color: #e2e8f0;
  cursor: default;
}

._regionItemSelected_nvd33_234:hover {
  background: #f8fafc;
  border-color: #e2e8f0;
}

._primaryBadge_nvd33_245 {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  color: #06b6d4;
  margin-left: auto;
}

._secondaryBadge_nvd33_254 {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  color: #94a3b8;
  margin-left: auto;
}

._modalWarning_nvd33_263 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 24px 16px 24px;
  padding: 10px 12px;
  background: #fffbeb;
  border: 0.667px solid #fde68a;
  border-radius: 8px;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  color: #92400e;
  flex-shrink: 0;
}

._warningIcon_nvd33_280 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

._warningIcon_nvd33_280 svg {
  width: 16px;
  height: 16px;
}

._modalFooter_nvd33_294 {
  display: flex;
  justify-content: flex-end;
  padding: 16px 24px;
  border-top: 0.667px solid #e2e8f0;
  flex-shrink: 0;
}

._cancelButton_nvd33_302 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  height: 36px;
  background: none;
  border: none;
  border-radius: 8px;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: #475569;
  cursor: pointer;
}

._cancelButton_nvd33_302:hover {
  background: #f1f5f9;
}

._removeBadge_nvd33_323 {
  font-size: 16px;
  color: #ef4444;
  font-weight: 600;
  line-height: 1;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0 2px;
  margin-left: 8px;
  width: 16px;
}

._removeBadge_nvd33_323:hover {
  color: #dc2626;
}

._selectedSection_nvd33_340 {
  padding-bottom: 4px;
  margin-bottom: 4px;
  border-bottom: 1px solid #e2e8f0;
}
/* WorkloadCard.module.css */
._workloadCard_11k3l_2 {
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem 0rem rgba(0, 0, 0, 0.1);
  padding: 1.5rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._workloadCard_11k3l_2:hover {
  box-shadow: 0rem 0.25rem 0.375rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.1);
  transform: translateY(-0.125rem);
}

._cardContent_11k3l_17 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._headerRow_11k3l_23 {
  display: flex;
  align-items: center;
  gap: 1rem;
}

._iconContainer_11k3l_29 {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  background: var(--pastel-mint);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

._statusIcon_11k3l_40 {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

._workloadInfo_11k3l_46 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}

._header_11k3l_23 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 2rem;
  flex: 1;
}

._headerRight_11k3l_63 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._workloadName_11k3l_69 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.5rem;
  margin: 0;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._editButton_11k3l_83 {
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 0.25rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: all 0.2s ease-in-out, opacity 0.2s ease-in-out;
  flex-shrink: 0;
  opacity: 0;
}

._workloadCard_11k3l_2:hover ._editButton_11k3l_83 {
  opacity: 1;
}

._editButton_11k3l_83:hover {
  background: var(--blue-50);
  color: var(--blue-600);
}

._deleteButton_11k3l_108 {
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 0.25rem;
  color: var(--error-600);
  cursor: pointer;
  transition: all 0.2s ease-in-out, opacity 0.2s ease-in-out;
  flex-shrink: 0;
  opacity: 0;
}

._workloadCard_11k3l_2:hover ._deleteButton_11k3l_108 {
  opacity: 1;
}

._deleteButton_11k3l_108:hover:not(:disabled) {
  background: var(--error-50);
  color: var(--error-600);
}

._deleteButton_11k3l_108:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._statusBadge_11k3l_138 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 1.5833rem;
  padding: 0 0.75rem;
  background: var(--pastel-mint);
  border: 0.0417rem solid var(--success-500);
  border-radius: 624.9375rem;
  flex-shrink: 0;
}

._statusBadge_11k3l_138 span {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--success-600);
  line-height: 1rem;
}

._statusInProgress_11k3l_157 {
  background: var(--pastel-yellow);
  border-color: var(--warning-500);
}

._statusInProgress_11k3l_157 span {
  color: var(--warning-700);
}

._statusPending_11k3l_166 {
  background: var(--blue-100);
  border-color: var(--blue-200);
}

._statusPending_11k3l_166 span {
  color: var(--indigo-700);
}

._badgeIcon_11k3l_175 {
  width: 0.75rem;
  height: 0.75rem;
}

._description_11k3l_180 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

._metadata_11k3l_188 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

._metadataItem_11k3l_195 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._metadataLabel_11k3l_201 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._metadataBadge_11k3l_208 {
  display: inline-flex;
  align-items: center;
  height: 1.3333rem;
  padding: 0.1667rem 0.5417rem;
  border: 0.0417rem solid;
  border-radius: 624.9375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  line-height: 1rem;
}

/* Priority badges */
._priorityHigh_11k3l_221 {
  background: var(--error-50);
  border-color: var(--error-500);
  color: var(--error-600);
}

._priorityMedium_11k3l_227 {
  background: var(--pastel-yellow);
  border-color: var(--warning-500);
  color: var(--warning-700);
}

._priorityLow_11k3l_233 {
  background: var(--pastel-mint);
  border-color: var(--success-500);
  color: var(--success-600);
}

/* Complexity badges */
._complexityHigh_11k3l_240 {
  background: var(--indigo-100);
  border-color: var(--indigo-200);
  color: var(--indigo-700);
}

._complexityMedium_11k3l_246 {
  background: var(--blue-100);
  border-color: var(--blue-200);
  color: var(--indigo-700);
}

._complexityLow_11k3l_252 {
  background: var(--pastel-mint);
  border-color: var(--success-500);
  color: var(--success-600);
}

._metadataValue_11k3l_258 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-secondary);
  line-height: 1rem;
}

._separator_11k3l_265 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

._timestampLabel_11k3l_272 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._timestamp_11k3l_272 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

._updatedDate_11k3l_286 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

/* Stale pill */
._stalePill_11k3l_294 {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  margin-left: 0.5rem;
  padding: 0.125rem 0.5rem;
  border-radius: 1rem;
  background: var(--color-stale-pill-bg);
  border: 1px solid var(--color-stale);
  color: var(--color-stale-dark);
  font-size: 0.75rem;
  font-weight: 500;
  white-space: nowrap;
  vertical-align: middle;
}

._stalePillIcon_11k3l_310 {
  font-size: 0.7rem;
}
/* AddWorkloadModal Styles - Mapinator MVP */

._form_1lkns_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_1lkns_9 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_1lkns_15 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1lkns_23 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_1lkns_23::placeholder {
  color: var(--text-disabled);
}

._input_1lkns_23:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_1lkns_23:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_1lkns_50 {
  border-color: var(--error-500);
}

._inputError_1lkns_50:focus {
  border-color: var(--error-500);
}

._errorText_1lkns_58 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1lkns_66 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_1lkns_76 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_1lkns_76:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1lkns_97 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1lkns_97:hover {
  opacity: 0.9;
}

._submitButton_1lkns_97:active {
  transform: translateY(0.0625rem);
}

._textarea_1lkns_120 {
  width: 100%;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.5rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

._textarea_1lkns_120::placeholder {
  color: var(--text-disabled);
}

._textarea_1lkns_120:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._textarea_1lkns_120:hover:not(:focus) {
  border-color: var(--slate-300);
}

._select_1lkns_147 {
  width: 100%;
  height: 2.75rem;
  padding: 0 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2390a1b9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  transition: border-color 0.2s ease-in-out;
}

._select_1lkns_147:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._select_1lkns_147:hover:not(:focus) {
  border-color: var(--slate-300);
}

._optional_1lkns_174 {
  font-weight: 400;
  color: var(--text-disabled);
  font-size: 0.75rem;
}
/* EditWorkloadModal Styles - Mapinator MVP */

._form_17hgn_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formGroup_17hgn_9 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_17hgn_15 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_17hgn_23 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

._input_17hgn_23::placeholder {
  color: var(--text-disabled);
}

._input_17hgn_23:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._input_17hgn_23:hover:not(:focus) {
  border-color: var(--slate-300);
}

._inputError_17hgn_50 {
  border-color: var(--error-500);
}

._inputError_17hgn_50:focus {
  border-color: var(--error-500);
}

._errorText_17hgn_58 {
  font-family: 'Arial', sans-serif;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._hintText_17hgn_66 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

._optional_17hgn_73 {
  font-weight: 400;
  color: var(--text-disabled);
}

._textarea_17hgn_78 {
  width: 100%;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.5;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

._textarea_17hgn_78::placeholder {
  color: var(--text-disabled);
}

._textarea_17hgn_78:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._textarea_17hgn_78:hover:not(:focus) {
  border-color: var(--slate-300);
}

._select_17hgn_105 {
  width: 100%;
  height: 2.75rem;
  padding: 0 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  cursor: pointer;
  transition: border-color 0.2s ease-in-out;
  appearance: auto;
}

._select_17hgn_105:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._select_17hgn_105:hover:not(:focus) {
  border-color: var(--slate-300);
}

._actions_17hgn_129 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._cancelButton_17hgn_139 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._cancelButton_17hgn_139:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_17hgn_160 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_17hgn_160:hover {
  opacity: 0.9;
}

._submitButton_17hgn_160:active {
  transform: translateY(0.0625rem);
}
/* GenerateAIWorkloadWarningModal Styles - Mapinator MVP */

/* Custom modal styling for purple title */
._warningModal_1iucz_4 .modalTitle {
  color: var(--indigo-700) !important;
}

._content_1iucz_8 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

/* Warning Box */
._warningBox_1iucz_15 {
  background: var(--warning-50);
  border: 0.0625rem solid var(--warning-500);
  border-radius: 0.5rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._warningItem_1iucz_25 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._warningIcon_1iucz_31 {
  flex-shrink: 0;
}

._warningText_1iucz_35 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--warning-700);
  line-height: 1.25rem;
}

._warningText_1iucz_35 strong {
  font-weight: 600;
  color: var(--warning-700);
}

/* Question */
._question_1iucz_48 {
  font-family: 'Arial', sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.5rem;
  text-align: center;
}

/* Subtitle */
._subtitle_1iucz_58 {
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  text-align: center;
}

/* Actions */
._actions_1iucz_67 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-top: 0.5rem;
  padding-top: 1.25rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._noButton_1iucz_77 {
  height: 2.5rem;
  padding: 0 2rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._noButton_1iucz_77:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._yesButton_1iucz_98 {
  height: 2.5rem;
  padding: 0 2rem;
  background: var(--action-ai-bg);
  border: none;
  border-radius: 0.5rem;
  font-family: 'Arial', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._yesButton_1iucz_98:hover {
  opacity: 0.9;
}

._yesButton_1iucz_98:active {
  transform: translateY(0.0625rem);
}
/* WorkloadsTab.module.css */
._workloadsTab_g2owq_2 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  height: 100%;
}

._header_g2owq_9 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

._headerLeft_g2owq_16 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_g2owq_22 {
  font-family: Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._subtitle_g2owq_31 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._count_g2owq_37 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
}

._checkIcon_g2owq_44 {
  flex-shrink: 0;
}

._headerActions_g2owq_48 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._aiButtonWrapper_g2owq_54 {
  position: relative;
  display: inline-block;
}

._tooltip_g2owq_59 {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  background: var(--surface-subtle);
  color: var(--text-primary);
  padding: 0.625rem 0.875rem;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  line-height: 1.125rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
  box-shadow: 0rem 0.25rem 0.75rem rgba(41, 135, 194, 0.2);
  border: 0.0625rem solid var(--border-subtle);
}

._tooltip_g2owq_59::after {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--surface-subtle);
}

._tooltip_g2owq_59::before {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--border-subtle);
  margin-bottom: 0.0625rem;
}

._aiButtonWrapper_g2owq_54:hover ._tooltip_g2owq_59 {
  opacity: 1;
}

._newButton_g2owq_102,
._aiButton_g2owq_54 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 1rem;
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._newButton_g2owq_102 {
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
}

._newButton_g2owq_102:hover {
  opacity: 0.9;
}

._newButton_g2owq_102:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._aiButton_g2owq_54 {
  background: var(--indigo-700);
}

._aiButton_g2owq_54:hover:not(:disabled) {
  opacity: 0.9;
}

._aiButton_g2owq_54:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
}

._aiIcon_g2owq_146 {
  font-size: 1rem;
}

._workloadsList_g2owq_150 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._loadingState_g2owq_156,
._errorState_g2owq_157,
._emptyState_g2owq_158 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4rem 1.5rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem 0rem rgba(0, 0, 0, 0.1);
  gap: 0.75rem;
}

._emptyState_g2owq_158 {
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
}

._loadingState_g2owq_156 p,
._errorState_g2owq_157 p,
._emptyState_g2owq_158 p {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
  text-align: center;
}

._errorState_g2owq_157 p {
  color: var(--error-600);
}

/* Delete Confirmation */
._deleteConfirmation_g2owq_191 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem 0rem rgba(0, 0, 0, 0.1);
}

._confirmationText_g2owq_202 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
  text-align: center;
}

._confirmationActions_g2owq_211 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}

._confirmYes_g2owq_218,
._confirmNo_g2owq_219 {
  height: 2.25rem;
  padding: 0 1.5rem;
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._confirmYes_g2owq_218 {
  background: var(--error-600);
  color: white;
}

._confirmYes_g2owq_218:hover:not(:disabled) {
  opacity: 0.9;
}

._confirmYes_g2owq_218:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._confirmNo_g2owq_219 {
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  color: var(--text-secondary);
}

._confirmNo_g2owq_219:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._confirmNo_g2owq_219:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Responsive */
@media (max-width: 48rem) {
  ._header_g2owq_9 {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }

  ._title_g2owq_22 {
    font-size: 1rem;
  }

  ._subtitle_g2owq_31 {
    font-size: 0.75rem;
  }

  ._addButton_g2owq_276 {
    height: 2rem;
    padding: 0 0.75rem;
    font-size: 0.75rem;
    width: 100%;
  }

  ._workloadsGrid_g2owq_283 {
    grid-template-columns: 1fr;
  }
}/* ExecutiveSummaryTab.module.css */

._executiveSummaryTab_1gpr2_3 {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Header Banner */
._headerBanner_1gpr2_10 {
    background: linear-gradient(135deg, var(--blue-600), var(--blue-700));
    border-radius: 0.625rem;
    padding: 1.5rem;
    box-shadow: 0 0.125rem 0.5rem rgba(41, 135, 194, 0.25);
}

._headerContent_1gpr2_17 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._headerText_1gpr2_23 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._headerTitle_1gpr2_29 {
    font-family: Arial, sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: white;
    margin: 0;
    line-height: 1.5rem;
}

._headerSubtitle_1gpr2_38 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
    line-height: 1.25rem;
}

._headerIcon_1gpr2_46 {
    width: 2.5rem;
    height: 2.5rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

/* Loading State */
._loadingState_1gpr2_58 {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 12.5rem;
}

/* Empty State */
._emptyState_1gpr2_66 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    padding: 3rem 1.5rem;
    text-align: center;
    max-width: 37.5rem;
    margin: 0 auto;
}

._emptyIcon_1gpr2_78 {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-disabled);
}

._emptyTitle_1gpr2_87 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._emptyDescription_1gpr2_95 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-tertiary);
    margin: 0;
    max-width: 28rem;
    line-height: 1.5;
}

._generateButton_1gpr2_104 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 2.5rem;
    padding: 0 1.5rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border: none;
    border-radius: 0.5rem;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
    margin-top: 0.5rem;
}

._generateButton_1gpr2_104:hover {
    opacity: 0.9;
}

._generateButton_1gpr2_104:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

._aiIcon_1gpr2_132 {
    font-size: 1rem;
}

._errorText_1gpr2_136 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--error-500);
    margin: 0;
}

._readinessWarning_1gpr2_143 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--color-stale);
    margin: 0;
    text-align: center;
    max-width: 480px;
    line-height: 1.4;
}

/* Sections List */
._sectionsList_1gpr2_154 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Section Card (Accordion) */
._sectionCard_1gpr2_161 {
    background: white;
    border: 0.125rem solid var(--border-subtle);
    border-radius: 0.625rem;
    transition: border-color 0.2s ease-in-out;
}

._sectionCardExpanded_1gpr2_168 {
    border-color: var(--blue-600);
}

._sectionButton_1gpr2_172 {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background 0.15s ease-in-out;
}

._sectionButton_1gpr2_172:hover {
    background: var(--surface-subtle);
}

._sectionRight_1gpr2_188 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

._sectionHeader_1gpr2_195 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

._sectionIconBox_1gpr2_201 {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--blue-600);
    border-radius: 0.625rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

._sectionInfo_1gpr2_213 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    text-align: left;
}

._sectionTitle_1gpr2_220 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.25rem;
}

._sectionSubtitle_1gpr2_229 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1rem;
}

._chevron_1gpr2_237 {
    flex-shrink: 0;
    transition: transform 0.2s ease-in-out;
}

._chevronOpen_1gpr2_242 {
    transform: rotate(180deg);
}

/* Section Content */
._sectionContent_1gpr2_247 {
    padding: 0 1.25rem 1.25rem 1.25rem;
    border-top: 1px solid var(--border-subtle);
}

._accordionCollapsible_1gpr2_252 {
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Content Grid */
._contentGrid_1gpr2_258 {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding-top: 1rem;
}

._contentBlock_1gpr2_265 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

._contentLabel_1gpr2_271 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0375rem;
    margin: 0;
}

._contentText_1gpr2_281 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
    margin: 0;
}

._contentTextHighlight_1gpr2_289 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--blue-600);
    font-weight: 500;
    line-height: 1.5;
    margin: 0;
}

/* Metrics Row */
._metricsRow_1gpr2_299 {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

._metricCard_1gpr2_305 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem 1.25rem;
    background: var(--surface-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: 0.5rem;
    min-width: 7.5rem;
    flex: 1;
}

._metricValue_1gpr2_318 {
    font-family: Arial, sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

._metricLabel_1gpr2_325 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
}

/* Risks List */
._risksList_1gpr2_332 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

._riskItem_1gpr2_338 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._riskBadge_1gpr2_344 {
    font-family: Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
    letter-spacing: 0.025rem;
}

._riskAlta_1gpr2_354 {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-500);
}

._riskMedia_1gpr2_359 {
    background: rgba(245, 158, 11, 0.1);
    color: var(--color-stale);
}

._riskBaixa_1gpr2_364 {
    background: rgba(16, 185, 129, 0.1);
    color: var(--success-500);
}

._riskText_1gpr2_369 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Strategies List */
._strategiesList_1gpr2_376 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

._strategyItem_1gpr2_382 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

._strategyName_1gpr2_388 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-secondary);
    min-width: 5.5rem;
    font-weight: 500;
}

._strategyBar_1gpr2_396 {
    flex: 1;
    height: 0.5rem;
    background: var(--slate-200);
    border-radius: 9999px;
    overflow: hidden;
}

._strategyFill_1gpr2_404 {
    height: 100%;
    background: linear-gradient(to right, var(--blue-600), var(--blue-700));
    border-radius: 9999px;
    transition: width 0.3s ease-in-out;
}

._strategyPercent_1gpr2_411 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--blue-600);
    min-width: 2.5rem;
    text-align: right;
}

/* Bullet & Numbered Lists */
._bulletList_1gpr2_421,
._numberedList_1gpr2_422 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.75;
    margin: 0;
    padding-left: 1.25rem;
}

._bulletList_1gpr2_421 li,
._numberedList_1gpr2_422 li {
    margin-bottom: 0.25rem;
}

/* Download Container */
._sectionsListStale_1gpr2_437 {
    border: 1.5px solid var(--color-stale);
    border-radius: 0.5rem;
    background: var(--color-stale-bg);
}

._downloadContainer_1gpr2_443 {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    padding-top: 0.5rem;
}

._regenerateButton_1gpr2_450 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 2.5rem;
    padding: 0 1.5rem;
    background: white;
    border: 1.5px solid var(--blue-600);
    border-radius: 0.5rem;
    color: var(--blue-600);
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

._regenerateButton_1gpr2_450:hover {
    background: rgba(41, 135, 194, 0.05);
}

._regenerateButton_1gpr2_450:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

._downloadButton_1gpr2_477 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 2.5rem;
    padding: 0 1.5rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border: none;
    border-radius: 0.5rem;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
}

._downloadButton_1gpr2_477:hover {
    opacity: 0.9;
}

._downloadButton_1gpr2_477:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}


/* ===== Opportunity Section (Por Que Estamos Aqui) ===== */

._opportunityColumns_1gpr2_507 {
    display: flex;
    gap: 1rem;
}

/* Green card - A Oportunidade */
._opportunityCard_1gpr2_513 {
    flex: 1;
    background: var(--success-50);
    border-left: 4px solid var(--success-500);
    border-radius: 0 0.625rem 0.625rem 0;
    padding: 0.75rem;
}

._opportunityCardTitle_1gpr2_521 {
    font-family: Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--success-700);
    margin: 0 0 0.75rem 0;
    line-height: 1.75rem;
}

._opportunityCardContent_1gpr2_530 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._opportunityLabel_1gpr2_536 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0 0 0.25rem 0;
    line-height: 1.25rem;
}

._opportunityText_1gpr2_545 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.3;
    margin: 0;
    text-align: justify;
}

._opportunityBulletList_1gpr2_554 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.625;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: justify;
}

._opportunityBulletList_1gpr2_554 li::before {
    content: '• ';
}

/* Red card - Custo da Inação */
._inactionCard_1gpr2_570 {
    flex: 1;
    background: var(--error-50);
    border-left: 4px solid var(--error-500);
    border-radius: 0 0.625rem 0.625rem 0;
    padding: 0.75rem;
}

._inactionCardTitle_1gpr2_578 {
    font-family: Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--error-600);
    margin: 0 0 0.75rem 0;
    line-height: 1.75rem;
}

._inactionCardContent_1gpr2_587 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._inactionLabel_1gpr2_593 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0 0 0.25rem 0;
    line-height: 1.25rem;
}


/* ===== Findings Section (O Que Encontramos) ===== */

._findingsMetrics_1gpr2_605 {
    display: flex;
    gap: 0.75rem;
}

._findingsMetricCard_1gpr2_610 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem;
    border-radius: 0.625rem;
    border: 0.667px solid;
}

._findingsMetricBlue_1gpr2_621 {
    background: var(--blue-50);
    border-color: var(--blue-200);
}

._findingsMetricPurple_1gpr2_626 {
    background: var(--indigo-50);
    border-color: var(--indigo-200);
}

._findingsMetricCyan_1gpr2_631 {
    background: var(--cyan-50);
    border-color: var(--cyan-200);
}

._findingsMetricIndigo_1gpr2_636 {
    background: var(--indigo-50);
    border-color: var(--indigo-200);
}

._findingsMetricHeader_1gpr2_641 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: var(--slate-600);
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    line-height: 1rem;
}

._findingsMetricValue_1gpr2_652 {
    font-family: Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2rem;
    text-align: center;
}

/* Two-column layout */
._findingsColumns_1gpr2_661 {
    display: flex;
    gap: 1rem;
}

._findingsColumn_1gpr2_661 {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._findingsSectionTitle_1gpr2_673 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0;
    line-height: 1.5rem;
}

/* Criticidade bars */
._criticidadeList_1gpr2_683 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._criticidadeItem_1gpr2_689 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

._criticidadeHeader_1gpr2_695 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._criticidadeLabel_1gpr2_701 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--slate-700);
}

._criticidadeValue_1gpr2_708 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--slate-900);
}

._criticidadeBarBg_1gpr2_715 {
    width: 100%;
    height: 1rem;
    background: var(--slate-200);
    border-radius: 9999px;
    overflow: hidden;
}

._criticidadeBarFill_1gpr2_723 {
    height: 100%;
    border-radius: 9999px;
    transition: width 0.3s ease-in-out;
}

/* Risks list */
._findingsRisksList_1gpr2_730 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._findingsRiskItem_1gpr2_736 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._findingsRiskBadge_1gpr2_742 {
    font-family: Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 700;
    color: white;
    padding: 0.125rem 0.5rem;
    border-radius: 0.25rem;
    white-space: nowrap;
    flex-shrink: 0;
}

._findingsRiskText_1gpr2_753 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.25;
}


/* ===== Approach Section (Abordagem Recomendada) ===== */

._approachColumns_1gpr2_763 {
    display: flex;
    gap: 1rem;
}

._approachChartColumn_1gpr2_768 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

._pieChartContainer_1gpr2_776 {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    overflow: visible;
}

._pieLegend_1gpr2_784 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem 1.5rem;
    justify-content: center;
}

._pieLegendItem_1gpr2_791 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

._pieLegendDot_1gpr2_797 {
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 50%;
    flex-shrink: 0;
}

._pieLegendText_1gpr2_804 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--slate-700);
}

/* Right cards column */
._approachCardsColumn_1gpr2_811 {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Blue card */
._approachCardBlue_1gpr2_819 {
    background: var(--blue-50);
    border-left: 4px solid var(--blue-600);
    border-radius: 0 0.625rem 0.625rem 0;
    padding: 0.75rem 0.75rem 0.75rem 1rem;
}

/* Green card */
._approachCardGreen_1gpr2_827 {
    background: var(--success-50);
    border-left: 4px solid var(--success-600);
    border-radius: 0 0.625rem 0.625rem 0;
    padding: 0.75rem 0.75rem 0.75rem 1rem;
}

/* Orange card */
._approachCardOrange_1gpr2_835 {
    background: var(--warning-50);
    border-left: 4px solid var(--warning-600);
    border-radius: 0 0.625rem 0.625rem 0;
    padding: 0.75rem 0.75rem 0.75rem 1rem;
}

._approachCardTitle_1gpr2_842 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0 0 0.5rem 0;
    line-height: 1.25rem;
}

._approachCardText_1gpr2_851 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.625;
    margin: 0;
}

._approachStrategyList_1gpr2_859 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.625;
    margin: 0;
    padding: 0;
    list-style: none;
}

._approachStrategyList_1gpr2_859 li::before {
    content: '• ';
}

._approachStrategyBold_1gpr2_873 {
    font-weight: 700;
}


/* ===== Investment Section (Investimento e TCO) ===== */

/* Modalidade de Contratação Header */
._tcoModalidadeHeader_1gpr2_881 {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

._tcoModalidadeText_1gpr2_888 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._tcoModalidadeTitle_1gpr2_894 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--gray-dark);
    margin: 0;
    line-height: 1.25rem;
}

._tcoModalidadeDesc_1gpr2_903 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--gray-text);
    margin: 0;
    line-height: 1.125rem;
}

/* Info Banner */
._tcoInfoBanner_1gpr2_913 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.75rem;
    background: var(--blue-100);
    border-radius: 0.5rem;
}

._tcoInfoBannerIcon_1gpr2_922 {
    color: var(--blue-900);
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

._tcoInfoBannerText_1gpr2_929 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--blue-900);
    line-height: 1.125rem;
}

/* Summary Cards */
._tcoSummaryCards_1gpr2_938 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

._tcoSummaryCardNeutral_1gpr2_944 {
    display: flex;
    flex-direction: column;
    padding: 0.75rem 1rem;
    background: var(--gray-table-bg);
    border: 0.667px solid var(--gray-table-border);
    border-radius: 0.5rem;
}

._tcoSummaryCardLabel_1gpr2_953 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--gray-text);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._tcoSummaryCardValue_1gpr2_963 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--gray-dark);
    line-height: 1.75rem;
    font-variant-numeric: tabular-nums;
    margin-top: 0.25rem;
}

._tcoSummaryCardSub_1gpr2_973 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--gray-text);
    line-height: 1rem;
    margin-top: 0.125rem;
}

._tcoSummaryCardIndigo_1gpr2_982 {
    display: flex;
    flex-direction: column;
    padding: 0.75rem 1rem;
    background: var(--indigo-surface);
    border: 0.667px solid var(--indigo-border);
    border-radius: 0.5rem;
}

._tcoSummaryCardLabelIndigo_1gpr2_991 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--blue-800);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._tcoSummaryCardValueIndigo_1gpr2_1001 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--blue-800);
    line-height: 1.75rem;
    font-variant-numeric: tabular-nums;
    margin-top: 0.25rem;
}

._tcoSummaryCardSubIndigo_1gpr2_1011 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--indigo-800);
    line-height: 1rem;
    margin-top: 0.125rem;
}

._tcoSummaryCardGreen_1gpr2_1020 {
    display: flex;
    flex-direction: column;
    padding: 0.75rem 1rem;
    background: var(--green-50);
    border: 0.667px solid var(--green-200);
    border-radius: 0.5rem;
}

._tcoSummaryCardGreenHeader_1gpr2_1029 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--green-700);
}

._tcoSummaryCardLabelGreen_1gpr2_1036 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--green-700);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._tcoSummaryCardValueGreen_1gpr2_1046 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--green-700);
    line-height: 1.75rem;
    font-variant-numeric: tabular-nums;
    margin-top: 0.25rem;
}

._tcoSummaryCardSubGreen_1gpr2_1056 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--green-800);
    line-height: 1rem;
    margin-top: 0.125rem;
}

/* TCO Table */
._investmentTitle_1gpr2_1066 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--gray-dark);
    margin: 0;
    line-height: 1.25rem;
}

._tcoTableWrapper_1gpr2_1075 {
    width: 100%;
    overflow: hidden;
    border-radius: 0.5rem;
    border: 0.667px solid var(--gray-table-border);
}

._tcoTable_1gpr2_1075 {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
}

._tcoHeaderRow_1gpr2_1089 {
    background: var(--gray-dark);
}

._tcoHeaderCell_1gpr2_1093 {
    padding: 0.5rem 0.75rem;
    color: white;
    font-weight: 500;
    font-size: 0.75rem;
    line-height: 1rem;
    white-space: nowrap;
}

._tcoBodyRow_1gpr2_1102 {
    background: white;
    border-top: 0.667px solid var(--gray-table-border);
}

._tcoBodyRowAlt_1gpr2_1107 {
    background: var(--gray-table-bg);
    border-top: 0.667px solid var(--gray-table-border);
}

._tcoBodyCell_1gpr2_1112 {
    padding: 0.5rem 0.75rem;
    color: var(--gray-dark);
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: left;
}

._tcoBodyCellRight_1gpr2_1120 {
    padding: 0.5rem 0.75rem;
    color: var(--gray-dark);
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

._tcoBodyCellRightGreen_1gpr2_1129 {
    padding: 0.5rem 0.75rem;
    color: var(--green-700);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

._tcoTotalRow_1gpr2_1139 {
    background: var(--gray-dark);
}

._tcoTotalCell_1gpr2_1143 {
    padding: 0.625rem 0.75rem;
    color: white;
    font-weight: 600;
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: left;
}

._tcoTotalCellRight_1gpr2_1152 {
    padding: 0.625rem 0.75rem;
    color: white;
    font-weight: 600;
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

._tcoTotalCellRightGreenTotal_1gpr2_1162 {
    padding: 0.625rem 0.75rem;
    color: var(--green-100);
    font-weight: 600;
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: right;
    font-variant-numeric: tabular-nums;
}


/* ===== Conclusion Section (Conclusão) ===== */

._conclusionGrid_1gpr2_1175 {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-top: 0.5rem;
}

/* Em Resumo — blue left-border card */
._conclusionResumoCard_1gpr2_1183 {
    background: white;
    border-left: 4px solid var(--blue-600);
    border-radius: 0 0.625rem 0.625rem 0;
    padding: 1rem 1rem 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._conclusionResumoTitle_1gpr2_1193 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--blue-600);
    margin: 0;
    line-height: 1.25rem;
}

._conclusionResumoList_1gpr2_1202 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

._conclusionResumoItem_1gpr2_1208 {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

._conclusionResumoBullet_1gpr2_1214 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--blue-600);
    line-height: 1.25rem;
    flex-shrink: 0;
}

._conclusionResumoText_1gpr2_1222 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.25rem;
    margin: 0;
}

/* O Pedido */
._conclusionPedidoSection_1gpr2_1231 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._conclusionPedidoLabel_1gpr2_1237 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0;
    line-height: 1.25rem;
}

._conclusionPedidoCard_1gpr2_1246 {
    background: white;
    border: 2px solid var(--blue-600);
    border-radius: 0.625rem;
    padding: 1.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

._conclusionPedidoText_1gpr2_1256 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--blue-600);
    text-align: center;
    margin: 0;
    line-height: 1.25rem;
}

/* Próximos Passos — orange card */
._conclusionPassosCard_1gpr2_1267 {
    background: var(--warning-50);
    border: 2px solid var(--warning-500);
    border-radius: 0.625rem;
    padding: 1.125rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._conclusionPassosTitle_1gpr2_1277 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--warning-700);
    margin: 0;
    line-height: 1.25rem;
}

._conclusionPassosList_1gpr2_1286 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

._conclusionPassosItem_1gpr2_1292 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._conclusionPassosNumber_1gpr2_1298 {
    width: 1.25rem;
    height: 1.25rem;
    background: var(--warning-600);
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 700;
    color: white;
    flex-shrink: 0;
    line-height: 0.833rem;
}

._conclusionPassosText_1gpr2_1314 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-900);
    margin: 0;
    line-height: 1rem;
}

/* Contact footer */
._conclusionContactCard_1gpr2_1323 {
    background: var(--surface-subtle);
    border: 0.667px solid var(--border-subtle);
    border-radius: 0.625rem;
    padding: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

._conclusionContactText_1gpr2_1333 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    margin: 0;
    line-height: 1rem;
    text-align: center;
}

._conclusionContactBlue_1gpr2_1341 {
    font-weight: 500;
    color: var(--blue-600);
}

._conclusionContactSep_1gpr2_1346 {
    color: var(--slate-600);
}

._conclusionContactDark_1gpr2_1350 {
    color: var(--slate-900);
}

/* Clean text rendering (markdown cleanup) */
._cleanTextList_1gpr2_1355 {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

._cleanTextItem_1gpr2_1364 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--slate-700);
    line-height: 1.25rem;
    padding-left: 12px;
    position: relative;
}

._cleanTextItem_1gpr2_1364::before {
    content: '•';
    position: absolute;
    left: 0;
    color: var(--text-disabled);
}


/* ===== Regenerate Modal ===== */

._modalOverlay_1gpr2_1383 {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: _fadeIn_1gpr2_1 0.15s ease-out;
}

@keyframes _fadeIn_1gpr2_1 {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes _slideUp_1gpr2_1 {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

._modalContent_1gpr2_1420 {
    background: white;
    border-radius: 14px;
    padding: 28px;
    width: 100%;
    max-width: 540px;
    box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.05);
    animation: _slideUp_1gpr2_1 0.2s ease-out;
}

._modalHeader_1gpr2_1430 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

._modalHeaderLeft_1gpr2_1437 {
    display: flex;
    align-items: center;
    gap: 12px;
}

._modalIconBadge_1gpr2_1443 {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--blue-600), var(--blue-600));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

._modalTitle_1gpr2_1454 {
    font-family: Arial, sans-serif;
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._modalClose_1gpr2_1462 {
    background: none;
    border: none;
    color: var(--text-disabled);
    cursor: pointer;
    padding: 6px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

._modalClose_1gpr2_1462:hover {
    color: var(--text-secondary);
    background: var(--slate-100);
}

._modalDescription_1gpr2_1480 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-tertiary);
    line-height: 1.5;
    margin: 0 0 16px 0;
}

._modalTextarea_1gpr2_1488 {
    width: 100%;
    min-height: 120px;
    padding: 12px 14px;
    border: 1.5px solid var(--slate-200);
    border-radius: 10px;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
    resize: vertical;
    transition: all 0.2s ease;
    box-sizing: border-box;
    background: var(--surface-subtle);
}

._modalTextarea_1gpr2_1488::placeholder {
    color: var(--text-disabled);
}

._modalTextarea_1gpr2_1488:focus {
    outline: none;
    border-color: var(--blue-600);
    background: white;
    box-shadow: 0 0 0 3px rgba(41, 135, 194, 0.1);
}

._modalWarning_1gpr2_1515 {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 11px 14px;
    background: var(--blue-50);
    border: 1px solid var(--blue-100);
    border-radius: 10px;
    margin-top: 14px;
}

._modalWarningIcon_1gpr2_1526 {
    flex-shrink: 0;
    margin-top: 1px;
}

._modalWarning_1gpr2_1515 span:last-child {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--blue-800);
    line-height: 1.45;
}

._modalActions_1gpr2_1538 {
    display: flex;
    justify-content: flex-end;
    gap: 0.625rem;
    margin-top: 20px;
}

._modalCancelButton_1gpr2_1545 {
    height: 2.375rem;
    padding: 0 1.125rem;
    background: white;
    border: 1.5px solid var(--slate-200);
    border-radius: 8px;
    color: var(--text-secondary);
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

._modalCancelButton_1gpr2_1545:hover {
    background: var(--surface-subtle);
    border-color: var(--border-default);
}

._modalConfirmButton_1gpr2_1563 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    height: 2.375rem;
    padding: 0 1.25rem;
    background: linear-gradient(135deg, var(--blue-600), var(--blue-600));
    border: none;
    border-radius: 8px;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
    box-shadow: 0 1px 3px rgba(37, 99, 235, 0.25);
}

._modalConfirmButton_1gpr2_1563:hover {
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
    transform: translateY(-1px);
}

._modalConfirmButton_1gpr2_1563:disabled {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}


/* ===== Generation Loading State ===== */

._generatingCentered_1gpr2_1597 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem;
    text-align: center;
    max-width: 32rem;
    margin: 0 auto;
}

._generatingTitle_1gpr2_1608 {
    font-family: Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 2rem;
    margin: 0;
}

._generatingDescription_1gpr2_1617 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    color: var(--text-tertiary);
    line-height: 1.5rem;
    margin: 0;
    max-width: 28rem;
}

._generatingInfoBox_1gpr2_1626 {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--blue-50);
    border: 1px solid var(--blue-100);
    border-radius: 0.625rem;
    max-width: 28rem;
    width: 100%;
}

._generatingInfoIcon_1gpr2_1638 {
    flex-shrink: 0;
    margin-top: 1px;
}

._generatingInfoText_1gpr2_1643 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--blue-800);
    line-height: 1.25rem;
    margin: 0;
    text-align: left;
}

/* Steps */
._loadingSteps_1gpr2_1653 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

._loadingStep_1gpr2_1653 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: opacity 0.4s ease-in-out;
}

._loadingStepDot_1gpr2_1667 {
    width: 2rem;
    height: 2rem;
    background: var(--indigo-50);
    border-radius: 50%;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out, background 0.3s ease-in-out;
}

._loadingStepDot_1gpr2_1667::after {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    background: var(--indigo-700);
    border-radius: 50%;
    position: absolute;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out;
}

._loadingStepDotActive_1gpr2_1690 {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--indigo-200);
    box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15);
    animation: _pulse_1gpr2_1 1.4s ease-in-out infinite;
}

._loadingStepDotActive_1gpr2_1690::after {
    width: 0.625rem;
    height: 0.625rem;
}

@keyframes _pulse_1gpr2_1 {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.4;
        transform: scale(0.7);
    }
}

._loadingStepLabel_1gpr2_1717 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1rem;
    transition: font-size 0.3s ease-in-out, color 0.3s ease-in-out, font-weight 0.3s ease-in-out;
}

._loadingStepLabelActive_1gpr2_1725 {
    color: var(--indigo-900);
    font-weight: 700;
    font-size: 1rem;
}

._loadingDots_1gpr2_1731 {
    display: inline-flex;
    gap: 0.2rem;
    margin-left: 0.25rem;
}

._loadingDots_1gpr2_1731 span {
    width: 0.25rem;
    height: 0.25rem;
    background: var(--indigo-700);
    border-radius: 50%;
    animation: _dotBounce_1gpr2_1 1.2s ease-in-out infinite;
}

._loadingDots_1gpr2_1731 span:nth-child(2) {
    animation-delay: 0.2s;
}

._loadingDots_1gpr2_1731 span:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes _dotBounce_1gpr2_1 {

    0%,
    80%,
    100% {
        opacity: 0.3;
    }

    40% {
        opacity: 1;
    }
}


/* ===== Section Edit Controls ===== */

._sectionActions_1gpr2_1769 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
}

._editButton_1gpr2_1776 {
    background: none;
    border: none;
    color: var(--blue-600);
    cursor: pointer;
    padding: 0.25rem;
    border-radius: 0.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease;
}

._editButton_1gpr2_1776:hover {
    background: rgba(41, 135, 194, 0.08);
}

._headerReviewLabel_1gpr2_1793 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-secondary);
    white-space: nowrap;
    flex-shrink: 0;
}

._headerReviewButton_1gpr2_1802 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    background: white;
    border: 0.09375rem solid var(--slate-400);
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

._headerReviewButton_1gpr2_1802 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

._headerReviewButton_1gpr2_1802:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

._headerReviewButtonSave_1gpr2_1827 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
    color: var(--success-500);
}

._headerReviewButtonSave_1gpr2_1827 svg path {
    stroke: var(--success-500);
}

._headerReviewButtonSave_1gpr2_1827:hover:not(:disabled) {
    background: rgba(16, 185, 129, 0.2);
    border-color: var(--success-600);
}

._headerReviewButtonSave_1gpr2_1827:hover:not(:disabled) svg path {
    stroke: var(--success-600);
}

._headerReviewButtonRejected_1gpr2_1846 {
    background: rgba(239, 68, 68, 0.1);
    border-color: var(--error-500);
    color: var(--error-500);
}

._headerReviewButtonRejected_1gpr2_1846 svg path {
    stroke: var(--error-500);
}

._headerReviewButtonRejected_1gpr2_1846:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.18);
    border-color: var(--error-600);
}

._headerReviewButtonRejected_1gpr2_1846:hover:not(:disabled) svg path {
    stroke: var(--error-600);
}

._savingDots_1gpr2_1865 {
    color: white;
    font-weight: bold;
}

/* ===== Array Item Editing ===== */

._arrayItemRow_1gpr2_1872 {
    display: flex;
    align-items: flex-start;
    gap: 0.375rem;
}

._arrayItemRow_1gpr2_1872 textarea {
    flex: 1;
}

._removeItemButton_1gpr2_1882 {
    background: none;
    border: none;
    color: var(--text-disabled);
    font-size: 1.125rem;
    cursor: pointer;
    padding: 0.25rem;
    line-height: 1;
    border-radius: 0.25rem;
    transition: color 0.15s ease;
    flex-shrink: 0;
    margin-top: 0.25rem;
}

._removeItemButton_1gpr2_1882:hover {
    color: var(--error-500);
}

._addItemButton_1gpr2_1900 {
    background: none;
    border: none;
    color: var(--blue-600);
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0.25rem 0;
    transition: opacity 0.15s ease;
}

._addItemButton_1gpr2_1900:hover {
    opacity: 0.7;
}

/* ===== Edit Textareas ===== */

._editTextarea_1gpr2_1918 {
    width: 100%;
    padding: 0.5rem 0.625rem;
    border: 1.5px solid var(--slate-200);
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.5;
    resize: none;
    overflow: hidden;
    box-sizing: border-box;
    background: white;
    transition: border-color 0.2s ease;
}

._editTextarea_1gpr2_1918:focus {
    outline: none;
    border-color: var(--blue-600);
    box-shadow: 0 0 0 2px rgba(41, 135, 194, 0.1);
}

._editTextareaSmall_1gpr2_1940 {
    width: 100%;
    padding: 0.375rem 0.5rem;
    border: 1.5px solid var(--slate-200);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.4;
    resize: none;
    overflow: hidden;
    box-sizing: border-box;
    background: white;
    transition: border-color 0.2s ease;
}

._editTextareaSmall_1gpr2_1940:focus {
    outline: none;
    border-color: var(--blue-600);
    box-shadow: 0 0 0 2px rgba(41, 135, 194, 0.1);
}


/* ===== Character Counter ===== */

._countedTextareaWrapper_1gpr2_1965 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    width: 100%;
}

._charCounter_1gpr2_1972 {
    font-family: Arial, sans-serif;
    font-size: 0.625rem;
    color: var(--text-disabled);
    text-align: right;
    line-height: 1;
}


/* ===== Non-Editable Notice ===== */

._nonEditableNotice_1gpr2_1983 {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--blue-50);
    border: 2px solid var(--blue-200);
    border-radius: 0.625rem;
    box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
}

._nonEditableNotice_1gpr2_1983 svg {
    flex-shrink: 0;
    margin-top: 0;
}

._nonEditableNoticeText_1gpr2_1999 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._nonEditableNoticeTitle_1gpr2_2005 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    line-height: 1.25rem;
}

._nonEditableNoticeDescription_1gpr2_2013 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--slate-900);
    line-height: 1.22rem;
}


/* ===== MAP Card (new design) ===== */

._mapCard_1gpr2_2024 {
    border: 0.667px solid var(--navy-border);
    border-radius: 0.75rem;
    overflow: visible;
    box-shadow: 0 1px 3px 0 rgba(15, 23, 42, 0.05), 0 1px 2px 0 rgba(15, 23, 42, 0.04);
}

._mapCardHeader_1gpr2_2031 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    background: var(--navy-800);
    border-radius: 0.75rem 0.75rem 0 0;
}

._mapCardHeaderLeft_1gpr2_2040 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

._mapCardIcon_1gpr2_2046 {
    width: 2rem;
    height: 2rem;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

._mapCardHeaderInfo_1gpr2_2057 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

._mapCardHeaderTitleRow_1gpr2_2063 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._mapCardHeaderTitle_1gpr2_2063 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    line-height: 1.3125rem;
}

._mapCardHeaderBadge_1gpr2_2077 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 600;
    color: white;
    background: rgba(255, 255, 255, 0.15);
    padding: 0.125rem 0.5rem;
    border-radius: 0.375rem;
    letter-spacing: 0.031rem;
    text-transform: uppercase;
}

._mapCardHeaderSubtitle_1gpr2_2089 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: white;
    opacity: 0.8;
    line-height: 1rem;
}

._mapCardHeaderRight_1gpr2_2098 {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0;
}

._mapCardArrLabel_1gpr2_2105 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 400;
    color: white;
    opacity: 0.8;
    letter-spacing: 0.031rem;
    text-transform: uppercase;
    line-height: 0.9375rem;
}

._mapCardArrValue_1gpr2_2116 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.9375rem;
    font-weight: 600;
    color: white;
    line-height: 1.375rem;
    font-variant-numeric: tabular-nums;
}

._mapCardBody_1gpr2_2125 {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding: 1.25rem;
}

/* MAP Metrics Grid */
._mapMetricsGrid_1gpr2_2133 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

._mapMetricCardNavy_1gpr2_2139 {
    display: flex;
    flex-direction: column;
    padding: 0.75rem 1rem;
    background: var(--navy-surface);
    border: 0.667px solid var(--navy-border);
    border-radius: 0.5rem;
}

._mapMetricCardGreen_1gpr2_2148 {
    display: flex;
    flex-direction: column;
    padding: 0.75rem 1rem;
    background: var(--green-accent-surface);
    border: 0.667px solid var(--green-accent-border);
    border-radius: 0.5rem;
}

._mapMetricCardHeader_1gpr2_2157 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--navy-text);
}

._mapMetricCardLabel_1gpr2_2164 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--navy-text);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._mapMetricCardLabelGreen_1gpr2_2174 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--green-accent);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._mapMetricCardValue_1gpr2_2184 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--navy-text);
    line-height: 1.75rem;
    font-variant-numeric: tabular-nums;
    margin-top: 0.25rem;
}

._mapMetricCardValueGreen_1gpr2_2194 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--green-accent);
    line-height: 1.75rem;
    font-variant-numeric: tabular-nums;
    margin-top: 0.25rem;
}

._mapMetricCardSub_1gpr2_2204 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--navy-text);
    line-height: 1rem;
    margin-top: 0.125rem;
}

._mapMetricCardSubGreen_1gpr2_2213 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--green-accent);
    line-height: 1rem;
    margin-top: 0.125rem;
}

/* MAP Breakdown Grid */
._mapBreakdownGrid_1gpr2_2223 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    overflow: visible;
}

._mapBreakdownTableCard_1gpr2_2230 {
    border: 0.667px solid var(--navy-border);
    border-radius: 0.5rem;
    overflow: visible;
}

._mapBreakdownTableHeader_1gpr2_2236 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0.75rem;
    background: var(--navy-surface);
    border-bottom: 0.667px solid var(--navy-border);
}

._mapBreakdownTableHeaderLeft_1gpr2_2245 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--navy-text);
}

._mapBreakdownTableTitle_1gpr2_2252 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--navy-text);
    line-height: 1.125rem;
}

._mapBreakdownTableSubtitle_1gpr2_2260 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 400;
    color: var(--navy-text);
    letter-spacing: 0.031rem;
    line-height: 0.9375rem;
}

._mapBreakdownTable_1gpr2_2230 {
    width: 100%;
    border-collapse: collapse;
}

._mapBreakdownTableRow_1gpr2_2274 {
    border-top: 0.667px solid var(--navy-row-border);
}

._mapBreakdownTableRowAlt_1gpr2_2278 {
    border-top: 0.667px solid var(--navy-row-border);
    background: white;
}

._mapBreakdownTableRowTotal_1gpr2_2283 {
    border-top: 0.667px solid var(--navy-border);
    background: var(--navy-surface);
}

._mapBreakdownTableCellLink_1gpr2_2288 {
    padding: 0.5rem 0.75rem;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-text);
    text-decoration: underline;
    line-height: 1rem;
}

._mapBreakdownTableCellValue_1gpr2_2298 {
    padding: 0.5rem 0.75rem;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--navy-text);
    text-align: right;
    font-variant-numeric: tabular-nums;
    line-height: 1rem;
}

._mapBreakdownTableCellMuted_1gpr2_2309 {
    color: var(--navy-muted);
}

._mapBreakdownTableCellTotal_1gpr2_2313 {
    padding: 0.5rem 0.75rem;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--navy-text);
    line-height: 1rem;
}

._mapBreakdownTableCellTotalValue_1gpr2_2322 {
    padding: 0.5rem 0.75rem;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--navy-text);
    text-align: right;
    font-variant-numeric: tabular-nums;
    line-height: 1rem;
}

._mapBreakdownValueWithIcon_1gpr2_2333 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

._mapBreakdownCashIcon_1gpr2_2339 {
    width: 13px;
    height: 16px;
    flex-shrink: 0;
    position: relative;
    top: -1.4px;
}

._mapBreakdownCashIcon_1gpr2_2339 path {
    fill: var(--navy-text);
}

/* MAP Footer Note */
._mapFooterNote_1gpr2_2352 {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    background: var(--navy-surface);
    border: 0.667px solid var(--navy-border);
    border-radius: 0.5rem;
}

._mapFooterNoteIcon_1gpr2_2362 {
    color: var(--navy-text);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

._mapFooterNoteText_1gpr2_2368 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-600);
    line-height: 1.125rem;
    margin: 0;
}

._mapFooterNoteHighlight_1gpr2_2377 {
    font-weight: 700;
    color: var(--green-accent);
}

/* Formula Tooltip — Navy card design */
._formulaTooltipWrapper_1gpr2_2383 {
    position: relative;
    cursor: help;
    border-bottom: 1px dotted var(--navy-border);
}

._formulaTooltip_1gpr2_2383 {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    bottom: calc(100% + 12px);
    right: -8px;
    background: var(--navy-800);
    border: 0.667px solid var(--navy-800);
    color: var(--navy-surface);
    padding: 1rem;
    border-radius: 0.375rem;
    width: 320px;
    z-index: 50;
    pointer-events: none;
    transition: opacity 0.15s ease, visibility 0.15s ease;
    box-shadow: 0 6px 8px rgba(15, 23, 42, 0.18), 0 16px 20px rgba(15, 23, 42, 0.28);
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._formulaTooltip_1gpr2_2383::after {
    content: '';
    position: absolute;
    top: 100%;
    right: 16px;
    border-width: 6px;
    border-style: solid;
    border-color: var(--navy-800) transparent transparent transparent;
}

._formulaTooltipWrapper_1gpr2_2383:hover ._formulaTooltip_1gpr2_2383 {
    visibility: visible;
    opacity: 1;
}

._formulaTooltipTitle_1gpr2_2425 {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--navy-surface);
    letter-spacing: 0.034rem;
    line-height: 1.2;
}

._formulaTooltipFormula_1gpr2_2434 {
    font-family: 'JetBrains Mono', 'Courier New', monospace;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-surface);
    line-height: 1.2;
    white-space: pre-wrap;
    word-break: break-word;
}

._formulaTooltipDetails_1gpr2_2444 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-top: 0.5rem;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-surface);
    line-height: 1.2;
}

._formulaTooltipDetailItem_1gpr2_2456 {
    display: block;
    padding-left: 0;
    line-height: 1.2;
}



/* ===== Pricing Model Selector ===== */

._pricingModelSelector_1gpr2_2466 {
    display: flex;
    gap: 0;
    background: var(--gray-selector-bg);
    border: 0.667px solid var(--gray-table-border);
    border-radius: 0.5rem;
    padding: 0.25rem;
    width: fit-content;
    flex-shrink: 0;
}

._pricingModelBtn_1gpr2_2477 {
    padding: 0.375rem 0.75rem;
    border: none;
    border-radius: 0.375rem;
    background: transparent;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--gray-text);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

._pricingModelBtn_1gpr2_2477:hover {
    color: var(--text-secondary);
}

._pricingModelBtnActive_1gpr2_2495 {
    background: white;
    color: var(--blue-800);
    font-weight: 500;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05), 0 0 0 rgba(0, 0, 0, 0.2);
}

/* ===== TCO Column Highlight (legacy, kept for compatibility) ===== */

._tcoHighlightedHeader_1gpr2_2504 {
    background: rgba(59, 130, 246, 0.15) !important;
}

._tcoHighlightedCell_1gpr2_2508 {
    background: rgba(59, 130, 246, 0.08);
    font-weight: 700;
}

._tcoHighlightedTotal_1gpr2_2513 {
    background: rgba(59, 130, 246, 0.2) !important;
}

/* Greenfield Toggle — shown to the left of pricing selector */
._tcoModalidadeControls_1gpr2_2518 {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
}

._greenfieldToggle_1gpr2_2525 {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    user-select: none;
}

._greenfieldToggle_1gpr2_2525 input {
    display: none;
}

._greenfieldSlider_1gpr2_2537 {
    width: 36px;
    height: 20px;
    background: var(--slate-700);
    border-radius: 10px;
    position: relative;
    transition: background 0.2s ease;
}

._greenfieldSlider_1gpr2_2537::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    background: var(--surface-page);
    border-radius: 50%;
    transition: transform 0.2s ease;
}

._greenfieldToggle_1gpr2_2525 input:checked+._greenfieldSlider_1gpr2_2537 {
    background: var(--blue-600);
}

._greenfieldToggle_1gpr2_2525 input:checked+._greenfieldSlider_1gpr2_2537::after {
    transform: translateX(16px);
}

._greenfieldLabel_1gpr2_2566 {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-disabled);
}

._greenfieldToggle_1gpr2_2525 input:checked~._greenfieldLabel_1gpr2_2566 {
    color: var(--blue-600);
}

/* ===== Mode Toggle (RegenerateModal) ===== */

._modeToggleGroup_1gpr2_2578 {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    margin-bottom: 8px;
}

._modeToggleBtn_1gpr2_2585 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    padding: 0.875rem 1rem;
    background: var(--surface-subtle);
    border: 1.5px solid var(--slate-200);
    border-radius: 10px;
    cursor: pointer;
    text-align: left;
    transition: all 0.15s ease;
    width: 100%;
}

._modeToggleBtn_1gpr2_2585:hover {
    border-color: var(--blue-300);
    background: var(--blue-50);
}

._modeToggleBtnActive_1gpr2_2605 {
    border-color: var(--blue-600);
    background: rgba(41, 135, 194, 0.06);
    box-shadow: 0 0 0 3px rgba(41, 135, 194, 0.1);
}

._modeToggleTitle_1gpr2_2611 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.25rem;
}

._modeToggleDesc_1gpr2_2619 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    line-height: 1.25rem;
}

._modeToggleBtnActive_1gpr2_2605 ._modeToggleTitle_1gpr2_2611 {
    color: var(--blue-700);
}
.slide-edit-mode .slide-chrome {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}


/* ===== Atmosphere ===== */
.slide-edit-mode .slide-chrome-atmosphere {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(ellipse 80% 120% at 50% 90%, var(--slide-gradient-accent-1) 0%, transparent 70%),
    radial-gradient(ellipse 60% 50% at 80% 80%, var(--slide-gradient-accent-2) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 50% 100%, var(--slide-gradient-accent-3) 0%, transparent 50%);
  pointer-events: none;
}


/* ===== Content ===== */
.slide-edit-mode .chrome-content {
  position: relative;
  z-index: 1;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}


/* ===== Page Counter ===== */
.slide-edit-mode .chrome-page-counter {
  position: absolute;
  bottom: 0.650rem;
  right: 0.975rem;
  z-index: 2;
  font-size: 14px;
  font-weight: 600;
  color: var(--slide-text-secondary);
  opacity: 0.7;
}

.slide-edit-mode .side-panel-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 100;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.slide-edit-mode .side-panel-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.slide-edit-mode .side-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(680px, 90%);
  background: var(--slide-bg-secondary);
  border-left: 1px solid var(--slide-border);
  z-index: 101;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  opacity: 0;
  transform: translateX(60px);
  transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.slide-edit-mode .side-panel.open {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

.slide-edit-mode .side-panel.side-panel-left {
  right: auto;
  left: 0;
  border-left: none;
  border-right: 1px solid var(--slide-border);
  transform: translateX(-60px);
}

.slide-edit-mode .side-panel.side-panel-left.open {
  transform: translateX(0);
}

.slide-edit-mode .side-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.975rem 1.300rem;
  border-bottom: 1px solid var(--slide-border);
  flex-shrink: 0;
}

.slide-edit-mode .side-panel-header h2 {
  font-size: 1.137rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0;
}

.slide-edit-mode .side-panel-close {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.812rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.244rem;
  transition: color 0.2s, background 0.2s;
}

.slide-edit-mode .side-panel-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-edit-mode .side-panel-content {
  flex: 1;
  overflow-y: auto;
  padding: 0.975rem 1.300rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/* Cards inside panel reuse item-card styles from WhyWeAreHereSlide-edit.css */
.slide-edit-mode .side-panel-content .item-card {
  flex: unset;
  min-height: 3.5rem;
}

.slide-edit-mode .side-panel-content .item-card-content {
  padding-right: 5rem;
}

/* ===== Fullscreen edit mode — same as presentation SidePanel ===== */
.slide-fullscreen-edit .side-panel-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 100;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.slide-fullscreen-edit .side-panel-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.slide-fullscreen-edit .side-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(900px, 50%);
  background: var(--slide-bg-secondary);
  border-left: 1px solid var(--slide-border);
  z-index: 101;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  opacity: 0;
  transform: translateX(60px);
  transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.slide-fullscreen-edit .side-panel.open {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

.slide-fullscreen-edit .side-panel.side-panel-left {
  right: auto;
  left: 0;
  border-left: none;
  border-right: 1px solid var(--slide-border);
  transform: translateX(-60px);
}

.slide-fullscreen-edit .side-panel.side-panel-left.open {
  transform: translateX(0);
}

.slide-fullscreen-edit .side-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 2rem;
  border-bottom: 1px solid var(--slide-border);
  flex-shrink: 0;
}

.slide-fullscreen-edit .side-panel-header h2 {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0;
}

.slide-fullscreen-edit .side-panel-close {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.25rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.375rem;
  transition: color 0.2s, background 0.2s;
}

.slide-fullscreen-edit .side-panel-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-fullscreen-edit .side-panel-content {
  flex: 1;
  overflow-y: auto;
  padding: 1.5rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Cards inside panel reuse item-card styles from WhyWeAreHereSlide-edit.css */
.slide-fullscreen-edit .side-panel-content .item-card {
  flex: unset;
  min-height: 7rem;
}

.slide-fullscreen-edit .side-panel-content .item-card-content {
  padding-right: 8rem;
}

/* ===== Edit mode cards (dotted border + drag reorder) ===== */
.slide-editing .side-panel-content.edit-list {
  outline: 1px dashed var(--slide-border);
  border-radius: 8px;
  padding: 1.5rem 2rem;
  gap: 0.75rem;
}

.slide-editing .side-panel-content .edit-card {
  border-style: dashed !important;
  cursor: grab;
  position: relative;
}

.slide-editing .side-panel-content .edit-card:active { cursor: grabbing; }

.slide-editing .side-panel-content .edit-drag-handle {
  color: var(--slide-text-secondary);
  font-size: 0.9rem;
  cursor: grab;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.15s;
  align-self: center;
  padding: 0 2px;
}

.slide-editing .side-panel-content .edit-card:hover .edit-drag-handle { opacity: 1; }
.slide-edit-mode .detail-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
  z-index: 200;
}


.slide-edit-mode .detail-modal-overlay.open {
  opacity: 1;
  pointer-events: auto;
}


.slide-edit-mode .detail-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.95);
  width: min(700px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.812rem;
  padding: 1.950rem 2.275rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease;
  z-index: 201;
  text-align: center;
}


.slide-edit-mode .detail-modal.open {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}


.slide-edit-mode .detail-modal-close {
  position: absolute;
  top: 0.812rem;
  right: 0.975rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.975rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.325rem;
  transition: color 0.2s, background 0.2s;
}


.slide-edit-mode .detail-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}


.slide-edit-mode .detail-modal-icon-area {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.975rem;
}


.slide-edit-mode .detail-modal-icon-area .slide-icon svg {
  width: 2.275rem;
  height: 2.275rem;
}


.slide-edit-mode .detail-modal-icon-area .opportunity-icon {
  color: var(--slide-highlight);
}


.slide-edit-mode .detail-modal-icon-area .risk-icon {
  color: var(--slide-danger);
}


.slide-edit-mode .detail-modal-title {
  font-size: 1.300rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 0.812rem;
  line-height: 1.2;
}


.slide-edit-mode .detail-modal-badges {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.488rem;
  margin-bottom: 0.975rem;
}


.slide-edit-mode .detail-badge {
  font-size: 0.650rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.227rem 0.552rem;
  border-radius: 0.260rem;
}


.slide-edit-mode .detail-badge.impact-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}

.slide-edit-mode .detail-badge.impact-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}

.slide-edit-mode .detail-badge.impact-low {
  background: color-mix(in srgb, var(--slide-success) 15%, transparent);
  color: var(--slide-success);
}


.slide-edit-mode .detail-badge.severity-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}

.slide-edit-mode .detail-badge.severity-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}

.slide-edit-mode .detail-badge.severity-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}

.slide-edit-mode .detail-badge.severity-low {
  background: color-mix(in srgb, var(--slide-info) 15%, transparent);
  color: var(--slide-info);
}



.slide-edit-mode .detail-badge.savings {
  background: color-mix(in srgb, var(--slide-success) 10%, transparent);
  color: var(--slide-success);
}


.slide-edit-mode .detail-badge.cost {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}


.slide-edit-mode .detail-badge.timeline {
  background: var(--slide-border);
  color: var(--slide-text-secondary);
}


.slide-edit-mode .detail-modal-description {
  font-size: 0.845rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0;
}


.detail-modal-edit-title,
.detail-modal-edit-description {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-primary);
  font-family: inherit;
  line-height: 1.5;
  padding: 0.5rem 0.75rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
}

.detail-modal-edit-title {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.detail-modal-edit-title:focus,
.detail-modal-edit-description:focus {
  border-color: var(--slide-highlight);
  box-shadow: 0 0 0 2px rgba(249,115,22,0.2);
}

.detail-modal-edit-description {
  font-size: 0.85rem;
}

.detail-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.detail-modal-cancel {
  background: transparent;
  border: 1px solid var(--slide-border);
  color: var(--slide-text-secondary);
  border-radius: 4px;
  padding: 0.3rem 0.75rem;
  font-size: 0.75rem;
  cursor: pointer;
}

.detail-modal-save {
  background: var(--slide-highlight);
  border: none;
  color: #fff;
  border-radius: 4px;
  padding: 0.3rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
}

.detail-modal-save:disabled { opacity: 0.6; cursor: not-allowed; }

/* ===== Fullscreen edit mode — use same sizes as presentation modal ===== */
.slide-fullscreen-edit .detail-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
  z-index: 200;
}

.slide-fullscreen-edit .detail-modal-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.slide-fullscreen-edit .detail-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.95);
  width: min(700px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease;
  z-index: 201;
  text-align: center;
}

.slide-fullscreen-edit .detail-modal.open {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}

.slide-fullscreen-edit .detail-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.slide-fullscreen-edit .detail-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-fullscreen-edit .detail-modal-icon-area {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.slide-fullscreen-edit .detail-modal-icon-area .slide-icon svg {
  width: 3.5rem;
  height: 3.5rem;
}

.slide-fullscreen-edit .detail-modal-title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.25rem;
  line-height: 1.2;
}

.slide-fullscreen-edit .detail-modal-badges {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.slide-fullscreen-edit .detail-badge {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.35rem 0.85rem;
  border-radius: 0.4rem;
}

.slide-fullscreen-edit .detail-badge-select {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.35rem 0.85rem;
  border-radius: 0.4rem;
  border: 1px solid var(--slide-border);
  background: var(--slide-bg-secondary);
  color: var(--slide-text-primary);
  cursor: pointer;
  outline: none;
  appearance: auto;
}

.slide-fullscreen-edit .detail-badge-select option {
  background: var(--slide-bg-secondary);
  color: var(--slide-text-primary);
}

.slide-fullscreen-edit .detail-badge-select.impact-high { background: color-mix(in srgb, var(--slide-highlight) 15%, transparent); color: var(--slide-highlight-hover); }
.slide-fullscreen-edit .detail-badge-select.impact-medium { background: color-mix(in srgb, var(--slide-warning) 15%, transparent); color: var(--slide-warning); }
.slide-fullscreen-edit .detail-badge-select.impact-low { background: color-mix(in srgb, var(--slide-success) 15%, transparent); color: var(--slide-success); }
.slide-fullscreen-edit .detail-badge-select.severity-critical { background: color-mix(in srgb, var(--slide-danger) 15%, transparent); color: var(--slide-danger); }
.slide-fullscreen-edit .detail-badge-select.severity-high { background: color-mix(in srgb, var(--slide-highlight) 15%, transparent); color: var(--slide-highlight-hover); }
.slide-fullscreen-edit .detail-badge-select.severity-medium { background: color-mix(in srgb, var(--slide-warning) 15%, transparent); color: var(--slide-warning); }
.slide-fullscreen-edit .detail-badge-select.severity-low { background: color-mix(in srgb, var(--slide-info) 15%, transparent); color: var(--slide-info); }

.slide-fullscreen-edit .detail-modal-description {
  font-size: 2rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0;
}

.slide-fullscreen-edit .detail-modal-edit-title,
.slide-fullscreen-edit .detail-modal-edit-description {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-primary);
  font-family: inherit;
  line-height: 1.5;
  padding: 0.75rem 1rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
}

.slide-fullscreen-edit .detail-modal-edit-title {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

.slide-fullscreen-edit .detail-modal-edit-description {
  font-size: 1.25rem;
}

.slide-fullscreen-edit .detail-modal-edit-title:focus,
.slide-fullscreen-edit .detail-modal-edit-description:focus {
  border-color: var(--slide-highlight);
  box-shadow: 0 0 0 2px rgba(249,115,22,0.2);
}

.slide-fullscreen-edit .detail-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1rem;
}

.slide-fullscreen-edit .detail-modal-cancel {
  background: transparent;
  border: 1px solid var(--slide-border);
  color: var(--slide-text-secondary);
  border-radius: 6px;
  padding: 0.5rem 1.25rem;
  font-size: 1rem;
  cursor: pointer;
}

.slide-fullscreen-edit .detail-modal-save {
  background: var(--slide-highlight);
  border: none;
  color: #fff;
  border-radius: 6px;
  padding: 0.5rem 1.25rem;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
}
/* ===== Slide Container ===== */
.slide-edit-mode .slide.why-we-are-here {
  position: relative;
  width: 100%;
  height: 100%;
  color: var(--slide-text-primary);
  font-family: var(--slide-font-family);
  display: flex;
  flex-direction: column;
  padding: 1.300rem 1.950rem;
  box-sizing: border-box;
  overflow: hidden;
}


/* ===== Header ===== */
.slide-edit-mode .slide-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.650rem;
  height: 3.900rem;
  flex-shrink: 0;
}


.slide-edit-mode .slide-header-top {
  display: flex;
  flex-direction: column;
  gap: 0.195rem;
}


.slide-edit-mode .slide-label {
  font-size: 0.650rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}


.slide-edit-mode .client-name {
  font-size: 1.300rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}


/* ===== Metrics Bar ===== */
.slide-edit-mode .metrics-bar {
  display: flex;
  align-items: center;
  gap: 1.300rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.650rem;
  padding: 0.812rem 1.625rem;
}


.slide-edit-mode .metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.130rem;
}


.slide-edit-mode .metric-value {
  font-size: 1.300rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}


.slide-edit-mode .metric-label {
  font-size: 0.585rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .metric-divider {
  width: 1px;
  height: 1.950rem;
  background: var(--slide-border);
}


/* ===== Title Section ===== */
.slide-edit-mode .slide-title-section {
  margin-bottom: 0.812rem;
  flex-shrink: 0;
}


.slide-edit-mode .slide-title {
  font-size: 1.430rem;
  font-weight: 800;
  margin: 0 0 0.195rem;
  letter-spacing: -0.02em;
}


.slide-edit-mode .slide-subtitle {
  font-size: 0.845rem;
  color: var(--slide-text-secondary);
  margin: 0;
}


/* ===== Two-Column Layout ===== */
.slide-edit-mode .slide-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.950rem;
  flex: 1;
  min-height: 0;
}


.slide-edit-mode .slide-column {
  display: flex;
  flex-direction: column;
  min-height: 0;
}


.slide-edit-mode .column-header {
  display: flex;
  align-items: center;
  gap: 0.390rem;
  margin-bottom: 0.650rem;
}


.slide-edit-mode .column-header h3 {
  font-size: 0.715rem;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .column-icon {
  font-size: 0.650rem;
  color: var(--slide-success);
}


.slide-edit-mode .column-icon.danger {
  color: var(--slide-danger);
}


/* ===== Item List ===== */
.slide-edit-mode .item-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.488rem;
  flex: 1;
  min-height: 0;
}


/* ===== Item Card — left bar + icon layout ===== */
.slide-edit-mode .item-card {
  position: relative;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.650rem;
  padding: 0;
  display: flex;
  align-items: stretch;
  flex: 1;
  min-height: 0;
  box-shadow: var(--slide-card-shadow);
  transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
  cursor: pointer;
}


.slide-edit-mode .item-card:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}


.slide-edit-mode .risk-card:hover {
  border-color: var(--slide-danger);
  box-shadow: var(--slide-card-hover-shadow-danger);
}


/* ===== Icon Area — left vertical bar ===== */
.slide-edit-mode .item-card-icon-area {
  flex-shrink: 0;
  width: 3.575rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: color-mix(in srgb, var(--slide-highlight) 6%, transparent);
  border-right: 1px solid var(--slide-border);
  border-radius: 0.650rem 0 0 0.650rem;
}


.slide-edit-mode .item-card-icon-area.risk-icon-area {
  background: color-mix(in srgb, var(--slide-danger) 6%, transparent);
  border-radius: 0.650rem 0 0 0.650rem;
}


.slide-edit-mode .slide-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}


.slide-edit-mode .slide-icon svg {
  width: 1.463rem;
  height: 1.463rem;
}


.slide-edit-mode .card-icon.opportunity-icon {
  color: var(--slide-highlight);
}


.slide-edit-mode .card-icon.risk-icon {
  color: var(--slide-danger);
}


/* ===== Card Content ===== */
.slide-edit-mode .item-card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1;
  padding: 0.975rem 3.250rem 0.975rem 1.300rem;
}


.slide-edit-mode .item-title {
  font-size: 1.1rem !important;
  font-weight: 700;
  line-height: 1.25;
  color: var(--slide-text-primary);
}


.slide-edit-mode .item-card-meta {
  position: absolute;
  top: 0.488rem;
  right: 0.488rem;
  display: flex;
  align-items: center;
  gap: 0.325rem;
}


/* ===== Badges ===== */
.slide-edit-mode .impact-badge, .slide-edit-mode .severity-badge {
  font-size: 0.552rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.195rem 0.455rem;
  border-radius: 0.227rem;
}


.slide-edit-mode .impact-badge.impact-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}

.slide-edit-mode .impact-badge.impact-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}

.slide-edit-mode .impact-badge.impact-low {
  background: color-mix(in srgb, var(--slide-success) 15%, transparent);
  color: var(--slide-success);
}


.slide-edit-mode .severity-badge.severity-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}

.slide-edit-mode .severity-badge.severity-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}

.slide-edit-mode .severity-badge.severity-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}

.slide-edit-mode .severity-badge.severity-low {
  background: color-mix(in srgb, var(--slide-info) 15%, transparent);
  color: var(--slide-info);
}


.slide-edit-mode .item-savings {
  font-size: 0.552rem;
  font-weight: 700;
  color: var(--slide-success);
  background: color-mix(in srgb, var(--slide-success) 10%, transparent);
  padding: 0.163rem 0.455rem;
  border-radius: 0.227rem;
}


.slide-edit-mode .item-timeline {
  font-size: 0.552rem;
  font-weight: 600;
  color: var(--slide-text-secondary);
  background: var(--slide-border);
  padding: 0.163rem 0.455rem;
  border-radius: 0.227rem;
}


.slide-edit-mode .item-cost {
  font-size: 0.552rem;
  font-weight: 700;
  color: var(--slide-danger);
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  padding: 0.163rem 0.455rem;
  border-radius: 0.227rem;
}


/* ===== More Button ===== */
.slide-edit-mode .more-button {
  margin-top: 0.488rem;
  padding: 0.325rem 0.975rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.300rem;
  color: var(--slide-highlight);
  font-size: 0.715rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, transform 0.15s;
  align-self: center;
  text-align: center;
  flex-shrink: 0;
}


.slide-edit-mode .more-button:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-1px);
}


.slide-edit-mode .more-button.danger {
  color: var(--slide-danger);
}


.slide-edit-mode .more-button.danger:hover {
  border-color: var(--slide-danger);
}


/* ===== Info Button ===== */
.slide-edit-mode .info-button {
  position: absolute;
  bottom: 0.488rem;
  right: 0.488rem;
  flex-shrink: 0;
  width: 1.625rem;
  height: 1.625rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 0.715rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}


.slide-edit-mode .info-button:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}


.slide-edit-mode .info-button.danger:hover {
  background: color-mix(in srgb, var(--slide-danger) 10%, transparent);
  border-color: var(--slide-danger);
  color: var(--slide-danger);
}


/* ===== Edit mode styles ===== */
.slide-editing .edit-list {
  outline: 1px dashed var(--slide-border);
  border-radius: 8px;
  padding: 4px;
  gap: 4px;
}

.slide-editing .edit-card {
  border-style: dashed !important;
  cursor: grab;
  position: relative;
}

.slide-editing .edit-card:active { cursor: grabbing; }

.slide-editing .edit-drag-handle {
  color: var(--slide-text-secondary);
  font-size: 0.9rem;
  cursor: grab;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.15s;
  align-self: center;
  padding: 0 2px;
}

.slide-editing .edit-card:hover .edit-drag-handle { opacity: 1; }
/* ===== Environment Slide ===== */
.slide-edit-mode .environment-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 1.300rem 1.950rem;
  box-sizing: border-box;
  overflow: hidden;
}


/* ===== Header ===== */
.slide-edit-mode .env-header {
  display: flex;
  align-items: center;
  margin-bottom: 0.650rem;
  height: 3.900rem;
  flex-shrink: 0;
}


.slide-edit-mode .env-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.195rem;
}


.slide-edit-mode .env-label {
  font-size: 0.650rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}


.slide-edit-mode .env-client-name {
  font-size: 1.300rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}


/* ===== Title ===== */
.slide-edit-mode .env-title-section {
  margin-bottom: 0.812rem;
  flex-shrink: 0;
}


.slide-edit-mode .env-title {
  font-size: 1.950rem;
  font-weight: 800;
  margin: 0 0 0.195rem;
  letter-spacing: -0.02em;
}


.slide-edit-mode .env-subtitle {
  font-size: 0.845rem;
  color: var(--slide-text-secondary);
  margin: 0;
}


/* ===== Metrics Row ===== */
.slide-edit-mode .env-metrics-row {
  display: flex;
  gap: 0.650rem;
  margin-bottom: 0.975rem;
  flex-shrink: 0;
}


.slide-edit-mode .env-metric-card {
  flex: 1;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.488rem;
  padding: 0.812rem 0.650rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.163rem;
  box-shadow: var(--slide-card-shadow);
}


.slide-edit-mode .env-metric-value {
  font-size: 1.170rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}


.slide-edit-mode .env-metric-label {
  font-size: 0.585rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
}


/* ===== Section Divider ===== */
.slide-edit-mode .env-section-divider {
  display: flex;
  align-items: center;
  gap: 0.390rem;
  margin-bottom: 0.488rem;
  flex-shrink: 0;
}


.slide-edit-mode .env-section-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--slide-highlight);
  flex-shrink: 0;
}


.slide-edit-mode .env-section-dot-success {
  background: var(--slide-success);
}


.slide-edit-mode .env-section-label {
  font-size: 0.715rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}


.slide-edit-mode .env-section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}


/* ===== Business Objectives ===== */
.slide-edit-mode .env-middle {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 0.812rem;
}


.slide-edit-mode .env-objectives-row {
  display: flex;
  gap: 0.650rem;
  flex: 1;
  min-height: 0;
  align-items: stretch;
}


.slide-edit-mode .env-objective-card {
  flex: 0 0 calc(33.333% - 0.434rem);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.325rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 3px solid var(--slide-border);
  border-top: 3px solid var(--slide-success);
  border-radius: 0.488rem;
  padding: 1.950rem 1.300rem 0.894rem;
  box-shadow: var(--slide-card-shadow);
  text-align: center;
  min-height: 0;
  overflow: hidden;
}


.slide-edit-mode .env-objective-icon {
  position: absolute;
  top: 0.812rem;
  left: 50%;
  transform: translateX(-50%);
}


.slide-edit-mode .env-objective-card-clickable {
  cursor: pointer;
  transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
}


.slide-edit-mode .env-objective-card-clickable:hover {
  border-color: var(--slide-success);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}



.slide-edit-mode .env-objective-icon .slide-icon svg {
  width: 1.463rem;
  height: 1.463rem;
}


.slide-edit-mode .env-obj-icon {
  color: var(--slide-success);
}


.slide-edit-mode .env-objective-content {
  display: flex;
  flex-direction: column;
  gap: 0.260rem;
  min-width: 0;
  text-align: center;
}


.slide-edit-mode .env-objective-goal {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.3;
  display: block;
  width: 100%;
}


.slide-edit-mode .env-objective-description {
  font-size: clamp(0.455rem, 1.1vw, 0.780rem);
  color: var(--slide-text-secondary);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}


@media (max-height: 750px) {
  .env-objective-description { display: none; }
}

@media (max-height: 900px) {
  .env-objective-goal { font-size: 0.780rem; }
  .env-finding-pain { font-size: 0.569rem; }
  .env-finding-resolution { font-size: 0.569rem; }
}

.slide-edit-mode .env-objective-enabler {
  font-size: 0.780rem;
  color: var(--slide-success);
  font-weight: 500;
  line-height: 1.3;
}


/* ===== Issues Section (bottom-aligned) ===== */
.slide-edit-mode .env-issues-section {
  flex-shrink: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}



/* ===== Findings Grid ===== */
.slide-edit-mode .env-findings-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.390rem;
  overflow: hidden;
}


.slide-edit-mode .env-finding-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.650rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 3px solid var(--slide-border);
  border-radius: 0.488rem;
  padding: 0.488rem 0.650rem;
  min-height: 2.925rem;
  box-shadow: var(--slide-card-shadow);
  transition: border-color 0.2s, box-shadow 0.2s;
  cursor: pointer;
  overflow: hidden;
}


.slide-edit-mode .env-finding-card.env-finding-critical:hover {
  border-color: var(--slide-danger);
  box-shadow: var(--slide-card-hover-shadow);
}


.slide-edit-mode .env-finding-card.env-finding-high:hover {
  border-color: var(--slide-warning);
  box-shadow: var(--slide-card-hover-shadow);
}


.slide-edit-mode .env-finding-card.env-finding-medium:hover {
  border-color: var(--slide-info);
  box-shadow: var(--slide-card-hover-shadow);
}


.slide-edit-mode .env-finding-card.env-finding-critical {
  border-left: 3px solid var(--slide-danger);
}


.slide-edit-mode .env-finding-card.env-finding-high {
  border-left: 3px solid var(--slide-warning);
}


.slide-edit-mode .env-finding-card.env-finding-medium {
  border-left: 3px solid var(--slide-info);
}


/* Icon area */
.slide-edit-mode .env-finding-icon-area {
  flex-shrink: 0;
  width: 1.950rem;
  height: 1.950rem;
  display: flex;
  align-items: center;
  justify-content: center;
}


.slide-edit-mode .env-finding-icon-area .slide-icon svg {
  width: 1.463rem;
  height: 1.463rem;
}


.slide-edit-mode .env-icon-critical {
  color: var(--slide-danger);
}


.slide-edit-mode .env-icon-high {
  color: var(--slide-warning);
}


.slide-edit-mode .env-icon-medium {
  color: var(--slide-info);
}


/* Content */
.slide-edit-mode .env-finding-content {
  display: flex;
  flex-direction: column;
  gap: 0.195rem;
  flex: 1;
  min-width: 0;
}


.slide-edit-mode .env-finding-pain {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.25;
}


.slide-edit-mode .env-finding-resolution {
  display: none;
}

@media (max-height: 700px) {
  .slide-fullscreen-edit .env-finding-resolution {
    display: none;
  }
}


/* Info button */
.slide-edit-mode .env-finding-info {
  position: absolute;
  top: 0.488rem;
  right: 0.488rem;
  width: 1.300rem;
  height: 1.300rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 0.585rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}


.slide-edit-mode .env-finding-info:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}


/* More badge */
.slide-edit-mode .env-more-badge-row {
  display: flex;
  justify-content: center;
  margin-top: 0.488rem;
  flex-shrink: 0;
}


.slide-edit-mode .env-more-badge {
  padding: 0.325rem 0.975rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.300rem;
  color: var(--slide-highlight);
  font-size: 0.715rem;
  font-weight: 700;
}


/* ===== Finding Modal ===== */
.slide-edit-mode .env-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}


.slide-edit-mode .env-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(650px, 80%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.812rem;
  padding: 1.625rem 1.950rem;
  z-index: 201;
  text-align: center;
}


.slide-edit-mode .env-modal.env-modal-critical {
  border-top: 4px solid var(--slide-danger);
}


.slide-edit-mode .env-modal.env-modal-high {
  border-top: 4px solid var(--slide-warning);
}


.slide-edit-mode .env-modal.env-modal-medium {
  border-top: 4px solid var(--slide-info);
}


.slide-edit-mode .env-modal.env-modal-objectives {
  border-top: 4px solid var(--slide-success);
}


.slide-edit-mode .env-modal-close {
  position: absolute;
  top: 0.812rem;
  right: 0.975rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.975rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.325rem;
  transition: color 0.2s, background 0.2s;
}


.slide-edit-mode .env-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}


.slide-edit-mode .env-modal-icon {
  margin-bottom: 0.812rem;
}


.slide-edit-mode .env-modal-icon-svg.slide-icon svg {
  width: 1.950rem;
  height: 1.950rem;
}


.slide-edit-mode .env-modal-pain {
  font-size: 0.780rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 0.975rem;
  line-height: 1.2;
}


.slide-edit-mode .env-modal-section {
  text-align: left;
  margin-bottom: 0.812rem;
}


.slide-edit-mode .env-modal-label {
  font-size: 0.520rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  display: block;
  margin-bottom: 0.195rem;
}


.slide-edit-mode .env-modal-text {
  font-size: 0.780rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}


.slide-edit-mode .env-modal-resolution {
  color: var(--slide-success);
  font-weight: 600;
}


/* ===== Edit mode ===== */
.slide-editing .edit-card {
  border-style: dashed !important;
  cursor: pointer;
}

.slide-editing .edit-drag-handle {
  color: var(--slide-text-secondary);
  font-size: 0.85rem;
  cursor: grab;
  opacity: 0;
  transition: opacity 0.15s;
  align-self: center;
  padding: 0 2px;
  flex-shrink: 0;
}

.slide-editing .edit-card:hover .edit-drag-handle { opacity: 1; }

.env-modal-edit-field {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-primary);
  font-family: inherit;
  font-size: 0.85rem;
  line-height: 1.5;
  padding: 0.4rem 0.6rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
  margin-bottom: 0.5rem;
}

.env-modal-edit-field:focus {
  border-color: var(--slide-highlight);
  box-shadow: 0 0 0 2px rgba(249,115,22,0.2);
}

.env-modal-edit-title { font-size: 1rem; font-weight: 700; }

.env-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 0.5rem;
}

.env-modal-cancel {
  background: transparent;
  border: 1px solid var(--slide-border);
  color: var(--slide-text-secondary);
  border-radius: 4px;
  padding: 0.3rem 0.75rem;
  font-size: 0.75rem;
  cursor: pointer;
}

.env-modal-save {
  background: var(--slide-highlight);
  border: none;
  color: #fff;
  border-radius: 4px;
  padding: 0.3rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
}

.env-modal-save:disabled { opacity: 0.6; cursor: not-allowed; }

/* ===== Fullscreen edit mode — larger modal sizes ===== */
.slide-fullscreen-edit .env-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.slide-fullscreen-edit .env-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(700px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
  z-index: 201;
  text-align: center;
}

.slide-fullscreen-edit .env-modal.env-modal-critical {
  border-top: 4px solid var(--slide-danger);
}

.slide-fullscreen-edit .env-modal.env-modal-high {
  border-top: 4px solid var(--slide-warning);
}

.slide-fullscreen-edit .env-modal.env-modal-medium {
  border-top: 4px solid var(--slide-info);
}

.slide-fullscreen-edit .env-modal.env-modal-objectives {
  border-top: 4px solid var(--slide-success);
}

.slide-fullscreen-edit .env-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.slide-fullscreen-edit .env-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-fullscreen-edit .env-modal-icon {
  margin-bottom: 1.5rem;
}

.slide-fullscreen-edit .env-modal-icon-svg.slide-icon svg {
  width: 3.5rem;
  height: 3.5rem;
}

.slide-fullscreen-edit .env-modal-pain {
  font-size: 2rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.25rem;
  line-height: 1.2;
}

.slide-fullscreen-edit .env-modal-section {
  text-align: left;
  margin-bottom: 1rem;
}

.slide-fullscreen-edit .env-modal-label {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  display: block;
  margin-bottom: 0.3rem;
}

.slide-fullscreen-edit .env-modal-text {
  font-size: 2rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}

.slide-fullscreen-edit .env-modal-resolution {
  color: var(--slide-success);
  font-weight: 600;
}

.slide-fullscreen-edit .env-modal-edit-field {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-primary);
  font-family: inherit;
  font-size: 1.25rem;
  line-height: 1.5;
  padding: 0.75rem 1rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
}

.slide-fullscreen-edit .env-modal-edit-field:focus {
  border-color: var(--slide-highlight);
  box-shadow: 0 0 0 2px rgba(249,115,22,0.2);
}

.slide-fullscreen-edit .env-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1rem;
}

.slide-fullscreen-edit .env-modal-cancel {
  border-radius: 6px;
  padding: 0.5rem 1.25rem;
  font-size: 1rem;
}

.slide-fullscreen-edit .env-modal-save {
  border-radius: 6px;
  padding: 0.5rem 1.25rem;
  font-size: 1rem;
}
/* ===== Approach Slide ===== */
.slide-edit-mode .approach-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 1.300rem 1.950rem;
  box-sizing: border-box;
  overflow: hidden;
}


/* ===== Header (same pattern as slide 1) ===== */
.slide-edit-mode .approach-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.650rem;
  height: 3.900rem;
  flex-shrink: 0;
}


.slide-edit-mode .approach-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.195rem;
}


.slide-edit-mode .approach-label {
  font-size: 0.650rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}


.slide-edit-mode .approach-client-name {
  font-size: 1.300rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}


.slide-edit-mode .approach-metrics-bar {
  display: flex;
  align-items: center;
  gap: 1.300rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.650rem;
  padding: 0.812rem 1.625rem;
}


.slide-edit-mode .approach-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.130rem;
}


.slide-edit-mode .approach-metric-value {
  font-size: 1.625rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}


.slide-edit-mode .approach-metric-value.approach-metric-amber {
  color: var(--slide-warning);
}


.slide-edit-mode .approach-metric-label {
  font-size: 0.585rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .approach-metric-divider {
  width: 1px;
  height: 1.950rem;
  background: var(--slide-border);
}


/* ===== Title Section ===== */
.slide-edit-mode .approach-title-section {
  margin-bottom: 0.812rem;
  flex-shrink: 0;
}


.slide-edit-mode .approach-title {
  font-size: 1.950rem;
  font-weight: 800;
  margin: 0 0 0.195rem;
  letter-spacing: -0.02em;
}


.slide-edit-mode .approach-subtitle {
  font-size: 0.845rem;
  color: var(--slide-text-secondary);
  margin: 0;
}


/* ===== Section Header ===== */
.slide-edit-mode .section-header {
  display: flex;
  align-items: center;
  gap: 0.325rem;
  margin-bottom: 8px;
}


.slide-edit-mode .section-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--slide-highlight);
  flex-shrink: 0;
}


.slide-edit-mode .section-label {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}


.slide-edit-mode .section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}


/* ===== Strategy Distribution Section ===== */
.slide-edit-mode .approach-strategy-section {
  flex-shrink: 0;
  margin-bottom: 0.812rem;
}


/* ===== Strategy Bar ===== */
.slide-edit-mode .strategy-bar-container {
  position: relative;
  margin-bottom: 6px;
}


.slide-edit-mode .strategy-bar {
  display: flex;
  width: 100%;
  height: 44px;
  border-radius: 6px;
  overflow: hidden;
}


.slide-edit-mode .strategy-segment {
  height: 100%;
  transition: opacity 0.2s;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}


.slide-edit-mode .strategy-segment:hover {
  opacity: 0.8;
}


.slide-edit-mode .segment-label {
  font-size: 14px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.7);
  white-space: nowrap;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.2);
}


.slide-edit-mode .strategy-tooltip {
  position: absolute;
  transform: translateX(-50%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.260rem;
  padding: 0.195rem 0.455rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.065rem;
  pointer-events: none;
  white-space: nowrap;
  z-index: 10;
}


.slide-edit-mode .strategy-tooltip strong {
  font-size: 14px;
  color: var(--slide-text-primary);
}


.slide-edit-mode .strategy-tooltip span {
  font-size: 12px;
  color: var(--slide-text-secondary);
}


/* ===== Axis Labels ===== */
.slide-edit-mode .strategy-axis {
  display: flex;
  align-items: center;
  gap: 0.325rem;
  margin-bottom: 8px;
}


.slide-edit-mode .axis-label {
  font-size: 13px;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}


.slide-edit-mode .axis-gradient {
  flex: 1;
  height: 2px;
  background: linear-gradient(to right, var(--slide-border), var(--slide-success));
  border-radius: 1px;
}


/* ===== Legend Grid ===== */
.slide-edit-mode .strategy-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 0.975rem;
}


.slide-edit-mode .legend-item {
  display: flex;
  align-items: center;
  gap: 0.260rem;
}


.slide-edit-mode .legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}


.slide-edit-mode .legend-name {
  font-size: 14px;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .legend-count {
  font-size: 14px;
  font-weight: 700;
  color: var(--slide-text-primary);
}


/* ===== Workloads Section ===== */
.slide-edit-mode .approach-workloads-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow-y: auto;
  overflow-x: hidden;
  margin-bottom: 0.325rem;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}


.slide-edit-mode .approach-workloads-section::-webkit-scrollbar {
  width: 6px;
}


.slide-edit-mode .approach-workloads-section::-webkit-scrollbar-track {
  background: transparent;
}


.slide-edit-mode .approach-workloads-section::-webkit-scrollbar-thumb {
  background: var(--slide-border);
  border-radius: 3px;
}


.slide-edit-mode .approach-workloads-section::-webkit-scrollbar-thumb:hover {
  background: var(--slide-text-secondary);
}


/* ===== Workload List ===== */
.slide-edit-mode .workload-list {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: max-content;
  align-content: start;
  gap: 8px;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow-y: auto;
  overflow-x: hidden;
}


.slide-edit-mode .workload-card {
  display: flex;
  align-items: center;
  gap: 0.650rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 3px solid transparent;
  border-left: 3px solid;
  border-radius: 0.488rem;
  padding: 0.390rem 0.812rem;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  box-shadow: var(--slide-card-shadow);
  transition: border-color 0.2s, box-shadow 0.2s;
  cursor: pointer;
}


.slide-edit-mode .workload-card:hover {
  border-color: var(--wl-color);
  box-shadow: var(--slide-card-hover-shadow);
}


.slide-edit-mode .workload-strategy-badge {
  font-size: 14px;
  font-weight: 700;
  border-radius: 4px;
  padding: 4px 10px;
  white-space: nowrap;
  flex-shrink: 0;
  min-width: 4.225rem;
  text-align: center;
}


.slide-edit-mode .workload-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}


.slide-edit-mode .workload-name {
  font-size: 0.878rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}


.slide-edit-mode .workload-rationale {
  font-size: 0.617rem;
  color: var(--slide-text-secondary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}


/* ===== More Badge ===== */
.slide-edit-mode .more-badge {
  margin-top: 0.325rem;
  padding: 0.325rem 0.975rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.300rem;
  color: var(--slide-highlight);
  font-size: 0.715rem;
  font-weight: 700;
  cursor: pointer;
  transition: border-color 0.2s, transform 0.15s;
  align-self: center;
  font-family: var(--slide-font-family);
  flex-shrink: 0;
}


.slide-edit-mode .more-badge:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-1px);
}


/* ===== Bottom Band ===== */
.slide-edit-mode .approach-bottom-band {
  display: flex;
  padding-top: 0.488rem;
  gap: 1.950rem;
  border-top: 1px solid var(--slide-border);
  flex-shrink: 0;
  margin-top: 0.488rem;
}


.slide-edit-mode .bottom-band-left {
  width: 58%;
}


.slide-edit-mode .bottom-band-divider {
  width: 1px;
  align-self: stretch;
  background: var(--slide-border);
}


.slide-edit-mode .bottom-band-right {
  width: 38%;
}


.slide-edit-mode .section-label-sm {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  display: block;
  margin-bottom: 4px;
}


.slide-edit-mode .rationale-text {
  font-size: 15px;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}


.slide-edit-mode .considerations-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}


.slide-edit-mode .considerations-list li {
  font-size: 15px;
  color: var(--slide-text-secondary);
  display: flex;
  align-items: flex-start;
  gap: 0.195rem;
}


.slide-edit-mode .consideration-bullet {
  color: var(--slide-highlight);
  font-weight: 700;
  flex-shrink: 0;
}


/* ===== Workload Panel ===== */
.slide-edit-mode .workload-panel-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 100;
}


.slide-edit-mode .workload-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 44%;
  background: var(--slide-bg-secondary);
  border-left: 1px solid var(--slide-border);
  z-index: 101;
  display: flex;
  flex-direction: column;
  animation: slideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}


@keyframes slideIn {
  from { transform: translateX(100%); }
  to { transform: translateX(0); }
}

.slide-edit-mode .workload-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.975rem 1.300rem;
  border-bottom: 1px solid var(--slide-border);
}


.slide-edit-mode .workload-panel-header h2 {
  font-size: 1.137rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0;
}


.slide-edit-mode .workload-panel-close {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.812rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.244rem;
  transition: color 0.2s, background 0.2s;
}


.slide-edit-mode .workload-panel-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}


.slide-edit-mode .workload-panel-content {
  flex: 1;
  overflow-y: auto;
  padding: 0.975rem 1.300rem;
  display: flex;
  flex-direction: column;
  gap: 0.390rem;
}


.slide-edit-mode .workload-panel-content .workload-card {
  flex: 0 0 auto;
  padding: 0.650rem 0.812rem;
}


.slide-edit-mode .workload-panel-content .workload-name {
  font-size: 0.975rem;
}


.slide-edit-mode .workload-panel-content .workload-rationale {
  font-size: 0.715rem;
}


.slide-edit-mode .workload-panel-content .workload-strategy-badge {
  font-size: 0.552rem;
}


/* ===== Workload Info Button ===== */
.slide-edit-mode .workload-info-btn {
  flex-shrink: 0;
  width: 1.300rem;
  height: 1.300rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 0.585rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
}


.slide-edit-mode .workload-info-btn:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}


/* ===== Workload Detail Modal ===== */
.slide-edit-mode .wl-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}


.slide-edit-mode .wl-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(1200px, 90vw);
  max-height: 85%;
  overflow-y: auto;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 2.5rem 3rem;
  z-index: 201;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}


.slide-edit-mode .wl-modal::-webkit-scrollbar {
  width: 6px;
}


.slide-edit-mode .wl-modal::-webkit-scrollbar-track {
  background: transparent;
}


.slide-edit-mode .wl-modal::-webkit-scrollbar-thumb {
  background: var(--slide-border);
  border-radius: 3px;
}


.slide-edit-mode .wl-modal-close {
  position: absolute;
  top: 0.812rem;
  right: 0.975rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.975rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.325rem;
  transition: color 0.2s, background 0.2s;
}


.slide-edit-mode .wl-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}


/* Modal Header */
.slide-edit-mode .wl-modal-header {
  display: flex;
  align-items: center;
  gap: 0.650rem;
  margin-bottom: 0.812rem;
}


.slide-edit-mode .wl-modal-strategy {
  font-size: 0.552rem;
  font-weight: 700;
  border-radius: 0.195rem;
  padding: 0.163rem 0.488rem;
  text-transform: uppercase;
}


.slide-edit-mode .wl-modal-title {
  font-size: 1.300rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0;
  flex: 1;
}


.slide-edit-mode .wl-modal-cost {
  font-size: 0.845rem;
  font-weight: 700;
  color: var(--slide-highlight);
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  padding: 0.195rem 0.520rem;
  border-radius: 0.260rem;
}


/* Overview */
.slide-edit-mode .wl-modal-overview {
  font-size: 1.015rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0 0 0.975rem;
}


/* Architecture Diagram */
.slide-edit-mode .wl-modal-architecture {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.488rem;
  margin-bottom: 0.975rem;
  padding: 0.812rem;
  background: var(--slide-bg-primary);
  border: 1px solid var(--slide-border);
  border-radius: 0.488rem;
}


.slide-edit-mode .wl-arch-image {
  width: 100%;
  max-height: 300px;
  object-fit: contain;
  border-radius: 0.325rem;
}


/* Architecture Image Section (below everything) */
.slide-edit-mode .wl-modal-arch-image-section {
  margin-top: 0.975rem;
  padding-top: 0.975rem;
  border-top: 1px solid var(--slide-border);
}


.slide-edit-mode .wl-modal-arch-image-section h3 {
  font-size: 0.52rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
  margin: 0 0 0.488rem;
}


.slide-edit-mode .wl-modal-arch-image-section .wl-arch-image {
  width: 100%;
  max-height: 400px;
  object-fit: contain;
  border-radius: 0.325rem;
  background: var(--slide-bg-primary);
  border: 1px solid var(--slide-border);
  padding: 0.650rem;
}


.slide-edit-mode .wl-arch-node {
  font-size: 0.650rem;
  font-weight: 600;
  padding: 0.325rem 0.650rem;
  border-radius: 0.260rem;
}


.slide-edit-mode .wl-arch-source {
  background: color-mix(in srgb, var(--slide-danger) 12%, transparent);
  color: var(--slide-danger);
  border: 1px solid color-mix(in srgb, var(--slide-danger) 30%, transparent);
}


.slide-edit-mode .wl-arch-service {
  background: color-mix(in srgb, var(--slide-info) 12%, transparent);
  color: var(--slide-info);
  border: 1px solid color-mix(in srgb, var(--slide-info) 30%, transparent);
}


.slide-edit-mode .wl-arch-target {
  background: color-mix(in srgb, var(--slide-success) 12%, transparent);
  color: var(--slide-success);
  border: 1px solid color-mix(in srgb, var(--slide-success) 30%, transparent);
}


.slide-edit-mode .wl-arch-arrow {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.780rem;
  padding: 0;
}


/* Two-column details */
.slide-edit-mode .wl-modal-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.300rem;
}

/* Resource table overrides for edit mode (scaled down) */
.slide-edit-mode .wl-modal-resource-table {
  gap: 0.3rem;
}

.slide-edit-mode .wl-modal-resource-current {
  font-size: 0.95rem;
}

.slide-edit-mode .wl-modal-resource-service {
  font-size: 0.95rem;
}

.slide-edit-mode .wl-modal-resource-table .wl-modal-strategy {
  font-size: 0.85rem;
  padding: 0.08rem 0.25rem;
}


.slide-edit-mode .wl-modal-full-width h3 {
  font-size: 0.92rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
  margin: 0.5rem 0 0.5rem;
}

.slide-edit-mode .wl-modal-col h3 {
  font-size: 0.92rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
  margin: 0.5rem 0 0.5rem;
}


.slide-edit-mode .wl-modal-col h3:not(:first-child) {
  margin-top: 0.812rem;
}


.slide-edit-mode .wl-modal-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.56rem;
}


.slide-edit-mode .wl-modal-list li {
  font-size: 0.95rem;
  color: var(--slide-text-primary);
  padding-left: 0.9rem;
  position: relative;
}


.slide-edit-mode .wl-modal-list li::before {
  content: '•';
  position: absolute;
  left: 0;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .wl-list-pain li::before {
  color: var(--slide-danger);
}


.slide-edit-mode .wl-list-pros li::before {
  content: '✓';
  color: var(--slide-success);
}


.slide-edit-mode .wl-list-cons li::before {
  content: '✗';
  color: var(--slide-warning);
}


/* Edit mode */
.wl-modal-edit-field {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-primary);
  font-family: inherit;
  font-size: 0.85rem;
  line-height: 1.5;
  padding: 0.4rem 0.6rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
}
.wl-modal-edit-field:focus { border-color: var(--slide-highlight); box-shadow: 0 0 0 2px rgba(249,115,22,0.2); }
.wl-modal-edit-actions { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 0.75rem; }
.wl-modal-cancel { background: transparent; border: 1px solid var(--slide-border); color: var(--slide-text-secondary); border-radius: 6px; padding: 0.5rem 1.25rem; font-size: 1rem; cursor: pointer; }
.wl-modal-save { background: var(--slide-highlight); border: none; color: #fff; border-radius: 6px; padding: 0.5rem 1.25rem; font-size: 1rem; font-weight: 600; cursor: pointer; }
.wl-modal-save:disabled { opacity: 0.6; cursor: not-allowed; }

/* ===== Fullscreen edit mode — larger modal sizes ===== */
.slide-fullscreen-edit .wl-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.slide-fullscreen-edit .wl-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(1200px, 90%);
  max-height: 85%;
  overflow-y: auto;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
  z-index: 201;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}

.slide-fullscreen-edit .wl-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.slide-fullscreen-edit .wl-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-fullscreen-edit .wl-modal-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.slide-fullscreen-edit .wl-modal-strategy {
  font-size: 1rem;
  font-weight: 700;
  border-radius: 0.3rem;
  padding: 0.25rem 0.75rem;
  text-transform: uppercase;
}

.slide-fullscreen-edit .wl-modal-title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0;
  flex: 1;
}

.slide-fullscreen-edit .wl-modal-cost {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slide-highlight);
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  padding: 0.3rem 0.75rem;
  border-radius: 0.4rem;
}

.slide-fullscreen-edit .wl-modal-overview {
  font-size: 2rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0 0 1.5rem;
}

.slide-fullscreen-edit .wl-modal-architecture {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
  padding: 1.25rem;
  background: var(--slide-bg-primary);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
}

.slide-fullscreen-edit .wl-arch-image {
  width: 100%;
  max-height: 400px;
  object-fit: contain;
  border-radius: 0.5rem;
}

.slide-fullscreen-edit .wl-modal-arch-image-section {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--slide-border);
}

.slide-fullscreen-edit .wl-modal-edit-field {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-primary);
  font-family: inherit;
  font-size: 1.25rem;
  line-height: 2;
  padding: 0.75rem 1rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
}

.slide-fullscreen-edit .wl-modal-edit-field:focus {
  border-color: var(--slide-highlight);
  box-shadow: 0 0 0 2px rgba(249,115,22,0.2);
}

.slide-fullscreen-edit .wl-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1rem;
}
/* ===== Investment Slide ===== */
.slide-edit-mode .investment-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 1.300rem 1.950rem;
  box-sizing: border-box;
  overflow: hidden;
}


/* ===== Header ===== */
.slide-edit-mode .investment-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.650rem;
  height: 3.900rem;
  flex-shrink: 0;
}


.slide-edit-mode .investment-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.195rem;
}


.slide-edit-mode .investment-label {
  font-size: 0.650rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}


.slide-edit-mode .investment-client-name {
  font-size: 1.300rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}


.slide-edit-mode .investment-metrics-bar {
  display: flex;
  align-items: center;
  gap: 1.300rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.650rem;
  padding: 0.650rem 1.625rem;
}


.slide-edit-mode .investment-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.098rem;
}


.slide-edit-mode .investment-metric-value {
  font-size: 1.463rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}


.slide-edit-mode .investment-metric-value.investment-metric-success {
  color: var(--slide-success);
}


.slide-edit-mode .investment-metric-label {
  font-size: 0.552rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .investment-metric-divider {
  width: 1px;
  height: 1.950rem;
  background: var(--slide-border);
}


/* ===== Title Row ===== */
.slide-edit-mode .investment-title-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 0.812rem;
  flex-shrink: 0;
}


.slide-edit-mode .investment-title-section {
  display: flex;
  flex-direction: column;
}


.slide-edit-mode .investment-title {
  font-size: 1.950rem;
  font-weight: 800;
  margin: 0;
  letter-spacing: -0.02em;
}


.slide-edit-mode .investment-subtitle {
  font-size: 0.845rem;
  color: var(--slide-text-secondary);
  margin: 0;
}


/* ===== Modality Tabs ===== */
.slide-edit-mode .modality-tabs {
  display: flex;
  gap: 3px;
  background: var(--slide-border);
  border-radius: 0.390rem;
  padding: 3px;
}


.slide-edit-mode .modality-tab {
  font-size: 0.650rem;
  font-weight: 600;
  padding: 0.325rem 0.910rem;
  border: none;
  border-radius: 0.325rem;
  background: transparent;
  color: var(--slide-text-secondary);
  cursor: pointer;
  font-family: var(--slide-font-family);
  transition: background 0.2s, color 0.2s;
  white-space: nowrap;
}


.slide-edit-mode .modality-tab.active {
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
}


.slide-edit-mode .modality-tab:hover:not(.active) {
  color: var(--slide-text-primary);
}


/* ===== KPI Cards Row ===== */
.slide-edit-mode .investment-kpi-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.812rem;
  margin-bottom: 0.812rem;
  flex-shrink: 0;
}


.slide-edit-mode .investment-kpi-card {
  background: var(--slide-card-bg-transparent);
  border: 1px solid var(--slide-border);
  border-radius: 0.488rem;
  padding: 0.650rem 0.975rem;
  display: flex;
  flex-direction: column;
  gap: 0.163rem;
}


.slide-edit-mode .investment-kpi-card.kpi-highlight {
  border-color: var(--slide-highlight);
}


.slide-edit-mode .investment-kpi-card.kpi-success {
  border-color: var(--slide-success);
}


.slide-edit-mode .kpi-card-label {
  font-size: 0.585rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .kpi-card-value {
  font-size: 1.625rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  line-height: 1.1;
}


.slide-edit-mode .kpi-highlight .kpi-card-value {
  color: var(--slide-highlight);
}


.slide-edit-mode .kpi-success .kpi-card-value {
  color: var(--slide-success);
}


.slide-edit-mode .kpi-card-sub {
  font-size: 0.552rem;
  color: var(--slide-text-secondary);
}


/* ===== TCO Table ===== */
.slide-edit-mode .investment-table-container {
  flex: 1;
  min-height: 0;
  margin-bottom: 0.650rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}


.slide-edit-mode .table-view-toggle {
  display: flex;
  gap: 0;
  margin-bottom: 0.488rem;
  align-self: flex-start;
  border: 1px solid var(--slide-border);
  border-radius: 0.325rem;
  overflow: hidden;
  flex-shrink: 0;
}


.slide-edit-mode .view-toggle-btn {
  font-size: 0.585rem;
  font-weight: 600;
  padding: 0.260rem 0.780rem;
  border: none;
  background: transparent;
  color: var(--slide-text-secondary);
  cursor: pointer;
  font-family: var(--slide-font-family);
  transition: background 0.2s, color 0.2s;
}


.slide-edit-mode .view-toggle-btn.active {
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
}


.slide-edit-mode .view-toggle-btn:hover:not(.active) {
  color: var(--slide-text-primary);
}


.slide-edit-mode .investment-table-scroll {
  display: none;
}


.slide-edit-mode .investment-table-footer {
  display: none;
}


.slide-edit-mode .investment-table-wrapper {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}


.slide-edit-mode .investment-table-wrapper::-webkit-scrollbar {
  width: 6px;
}


.slide-edit-mode .investment-table-wrapper::-webkit-scrollbar-track {
  background: transparent;
}


.slide-edit-mode .investment-table-wrapper::-webkit-scrollbar-thumb {
  background: var(--slide-border);
  border-radius: 3px;
}


.slide-edit-mode .investment-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.715rem;
  table-layout: fixed;
}


.slide-edit-mode .investment-table th:first-child, .slide-edit-mode .investment-table td:first-child {
  width: 30%;
}


.slide-edit-mode .investment-table thead {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--slide-bg-primary);
}


.slide-edit-mode .investment-table tfoot {
  position: sticky;
  bottom: 0;
  z-index: 1;
  background: var(--slide-bg-primary);
}


.slide-edit-mode .investment-table th {
  text-align: right;
  font-weight: 700;
  font-size: 0.585rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
  padding: 0.390rem 0.812rem;
  border-bottom: 1px solid var(--slide-border);
}


.slide-edit-mode .investment-table th:first-child {
  text-align: left;
}


.slide-edit-mode .investment-table td {
  padding: 0.358rem 0.812rem;
  text-align: right;
  color: var(--slide-text-secondary);
  border-bottom: 1px solid color-mix(in srgb, var(--slide-border) 50%, transparent);
}


.slide-edit-mode .investment-table td:first-child {
  text-align: left;
  color: var(--slide-text-primary);
  font-weight: 600;
}


.slide-edit-mode .investment-table td.active-col {
  color: var(--slide-text-primary);
  font-weight: 700;
  background: color-mix(in srgb, var(--slide-text-secondary) 8%, transparent);
}


.slide-edit-mode .investment-table th.active-col {
  background: color-mix(in srgb, var(--slide-text-secondary) 8%, transparent);
}


.slide-edit-mode .investment-table tfoot td {
  font-weight: 800;
  font-size: 0.780rem;
  color: var(--slide-text-primary);
  border-top: 1px solid var(--slide-border);
  border-bottom: none;
  padding-top: 0.455rem;
}


/* ===== Incentives Section ===== */
.slide-edit-mode .investment-incentives {
  flex-shrink: 0;
  background: var(--slide-card-bg-transparent);
  border: 1px solid var(--slide-border);
  border-radius: 0.488rem;
  padding: 0.650rem 1.137rem;
}


.slide-edit-mode .incentives-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.488rem;
}


.slide-edit-mode .incentives-header-right {
  display: flex;
  align-items: center;
  gap: 0.488rem;
}


.slide-edit-mode .incentives-info-button {
  width: 1.300rem;
  height: 1.300rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 0.650rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}


.slide-edit-mode .incentives-info-button:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}


.slide-edit-mode .incentives-title-group {
  display: flex;
  align-items: center;
  gap: 0.488rem;
}


.slide-edit-mode .incentives-title {
  font-size: 0.845rem;
  font-weight: 700;
  color: var(--slide-text-primary);
}


.slide-edit-mode .incentives-tier {
  font-size: 0.520rem;
  font-weight: 600;
  background: var(--slide-border);
  color: var(--slide-text-secondary);
  padding: 0.130rem 0.390rem;
  border-radius: 0.195rem;
  text-transform: uppercase;
}


.slide-edit-mode .incentives-arr {
  font-size: 0.650rem;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .incentives-arr strong {
  color: var(--slide-text-primary);
}


.slide-edit-mode .incentives-kpi-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.812rem;
}


.slide-edit-mode .incentive-kpi {
  display: flex;
  flex-direction: column;
  gap: 0.098rem;
}


.slide-edit-mode .incentive-kpi-label {
  font-size: 0.552rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
}


.slide-edit-mode .incentive-kpi-value {
  font-size: 1.235rem;
  font-weight: 800;
  color: var(--slide-text-primary);
}


.slide-edit-mode .incentive-kpi-highlight .incentive-kpi-value {
  color: var(--slide-success);
}


/* ===== Incentives Modal ===== */
.slide-edit-mode .incentives-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}


.slide-edit-mode .incentives-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(800px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.812rem;
  padding: 1.625rem 1.950rem;
  z-index: 201;
}


.slide-edit-mode .incentives-modal-close {
  position: absolute;
  top: 0.812rem;
  right: 0.975rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 0.975rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.325rem;
  transition: color 0.2s, background 0.2s;
}


.slide-edit-mode .incentives-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}


.slide-edit-mode .incentives-modal-title {
  font-size: 1.137rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 0.975rem;
}


.slide-edit-mode .incentives-modal-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.300rem;
  margin-bottom: 0.975rem;
}


.slide-edit-mode .incentives-modal-col h3 {
  font-size: 0.715rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0 0 0.488rem;
}


.slide-edit-mode .incentives-detail-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.650rem;
}


.slide-edit-mode .incentives-detail-table th {
  text-align: left;
  font-size: 0.520rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
  padding: 0.260rem 0;
  border-bottom: 1px solid var(--slide-border);
}


.slide-edit-mode .incentives-detail-table th:last-child {
  text-align: right;
}


.slide-edit-mode .incentives-detail-table td {
  padding: 0.260rem 0;
  color: var(--slide-text-secondary);
  border-bottom: 1px solid color-mix(in srgb, var(--slide-border) 50%, transparent);
}


.slide-edit-mode .incentives-detail-table td:last-child {
  text-align: right;
  font-weight: 600;
  color: var(--slide-text-primary);
}


.slide-edit-mode .incentives-detail-table tfoot td {
  font-weight: 800;
  color: var(--slide-text-primary);
  border-top: 1px solid var(--slide-border);
  border-bottom: none;
  padding-top: 0.325rem;
}


.slide-edit-mode .incentives-modal-summary {
  font-size: 0.650rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  border-top: 1px solid var(--slide-border);
  padding-top: 0.650rem;
}


.slide-edit-mode .incentives-modal-summary strong {
  color: var(--slide-success);
}


/* Greenfield toggle */

.slide-edit-mode .investment-controls {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.slide-edit-mode .investment-greenfield-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  user-select: none;
  background: var(--slide-border);
  border-radius: 0.390rem;
  padding: 3px 0.910rem;
  box-sizing: border-box;
  align-self: stretch;
}

.slide-edit-mode .investment-greenfield-toggle input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.slide-edit-mode .investment-toggle-track {
  width: 2.75rem;
  height: 1.25rem;
  background: rgba(255,255,255,0.35);
  border-radius: 4px;
  position: relative;
  transition: background 0.35s;
  flex-shrink: 0;
}

.slide-edit-mode .investment-greenfield-toggle input:checked + .investment-toggle-track {
  background: var(--brand-amber, #F59E0B);
}

.slide-edit-mode .investment-toggle-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 1rem;
  height: 1rem;
  background: white;
  border-radius: 2px;
  transition: transform 0.35s ease;
}

.slide-edit-mode .investment-greenfield-toggle input:checked + .investment-toggle-track .investment-toggle-thumb {
  transform: translateX(1.5rem);
}

.slide-edit-mode .investment-toggle-label {
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--slide-text-secondary);
  font-family: var(--slide-font-family);
  white-space: nowrap;
  transition: color 0.2s;
}

.slide-edit-mode .investment-greenfield-toggle:hover .investment-toggle-label {
  color: var(--slide-text-primary);
}

.slide-edit-mode .investment-greenfield-toggle:hover .investment-toggle-track {
  background: rgba(255,255,255,0.5);
}

.incentive-kpi-bonus {
  font-size: 0.65em;
  opacity: 0.75;
  font-weight: 400;
  white-space: nowrap;
}

/* ===== Fullscreen edit mode — larger modal sizes ===== */
.slide-fullscreen-edit .incentives-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.slide-fullscreen-edit .incentives-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(800px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
  z-index: 201;
}

.slide-fullscreen-edit .incentives-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.slide-fullscreen-edit .incentives-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-fullscreen-edit .incentives-modal-title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.5rem;
}

.slide-fullscreen-edit .incentives-modal-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  margin-bottom: 1.5rem;
}

.slide-fullscreen-edit .incentives-modal-col h3 {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0 0 0.75rem;
}

.slide-fullscreen-edit .incentives-detail-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.1rem;
}

.slide-fullscreen-edit .incentives-detail-table th {
  text-align: left;
  font-size: 0.9rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
  padding: 0.4rem 0;
  border-bottom: 1px solid var(--slide-border);
}

.slide-fullscreen-edit .incentives-detail-table th:last-child {
  text-align: right;
}

.slide-fullscreen-edit .incentives-detail-table td {
  padding: 0.4rem 0;
  color: var(--slide-text-secondary);
  border-bottom: 1px solid color-mix(in srgb, var(--slide-border) 50%, transparent);
}

.slide-fullscreen-edit .incentives-detail-table td:last-child {
  text-align: right;
  font-weight: 600;
  color: var(--slide-text-primary);
}

.slide-fullscreen-edit .incentives-detail-table tfoot td {
  font-weight: 800;
  color: var(--slide-text-primary);
  border-top: 1px solid var(--slide-border);
  border-bottom: none;
  padding-top: 0.5rem;
}

.slide-fullscreen-edit .incentives-modal-summary {
  font-size: 1.1rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  border-top: 1px solid var(--slide-border);
  padding-top: 1rem;
  margin-top: 0.5rem;
}
/* ===== Conclusion Slide ===== */
.slide-edit-mode .conclusion-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 1.300rem 1.950rem;
  box-sizing: border-box;
}

/* ===== Header ===== */
.slide-edit-mode .conclusion-header {
  display: flex;
  align-items: center;
  margin-bottom: 0.650rem;
  height: 3.900rem;
  flex-shrink: 0;
}

.slide-edit-mode .conclusion-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.195rem;
}

.slide-edit-mode .conclusion-label {
  font-size: 0.650rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}

.slide-edit-mode .conclusion-client-name {
  font-size: 1.300rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}

/* ===== Headline ===== */
.slide-edit-mode .conclusion-headline-section {
  margin-bottom: 1.300rem;
  flex-shrink: 0;
  min-height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.488rem;
  padding: 0.488rem;
  box-sizing: border-box;
}

.slide-editing .conclusion-headline-section {
  border: 1px solid #334155;
}

.slide-edit-mode .conclusion-headline {
  font-weight: 800;
  font-style: italic;
  margin: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-align: center;
  display: block;
  width: 100%;
  overflow: hidden;
}

/* ===== Main Two-Column ===== */
.slide-edit-mode .conclusion-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.950rem;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.slide-edit-mode .conclusion-col {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

/* ===== Section Headers ===== */
.slide-edit-mode .conclusion-section-header {
  display: flex;
  align-items: center;
  gap: 0.390rem;
  margin-bottom: 0.650rem;
}

.slide-edit-mode .conclusion-section-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--slide-highlight);
  flex-shrink: 0;
}

.slide-edit-mode .conclusion-dot-highlight {
  background: var(--slide-success);
}

.slide-edit-mode .conclusion-section-label {
  font-size: 0.715rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}

.slide-edit-mode .conclusion-section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}

/* ===== Key Takeaways ===== */
.slide-edit-mode .conclusion-takeaway-list {
  display: flex;
  flex-direction: column;
  gap: 0.325rem;
  flex: 1;
  min-height: 0;
}

.slide-edit-mode .conclusion-takeaway-card {
  display: flex;
  align-items: center;
  gap: 0.812rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-left: 3px solid var(--slide-success);
  border-radius: 0.488rem;
  padding: 0.488rem 0.975rem;
  box-shadow: var(--slide-card-shadow);
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.slide-edit-mode .conclusion-takeaway-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.slide-edit-mode .conclusion-takeaway-icon .slide-icon svg {
  width: 1.300rem;
  height: 1.300rem;
}

.slide-edit-mode .conclusion-tk-icon {
  color: var(--slide-success);
}

.slide-edit-mode .conclusion-takeaway-text {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.25;
  flex: 1;
  min-width: 0;
  padding-right: 0.975rem;
}

/* ===== Next Steps ===== */
.slide-edit-mode .conclusion-steps-list {
  display: flex;
  flex-direction: column;
  gap: 0.325rem;
  flex: 1;
  min-height: 0;
}

.slide-edit-mode .conclusion-step-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.812rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.488rem;
  padding: 0.488rem 0.975rem;
  box-shadow: var(--slide-card-shadow);
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.slide-edit-mode .conclusion-step-number {
  flex-shrink: 0;
  width: 1.625rem;
  height: 1.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: color-mix(in srgb, var(--slide-highlight) 12%, transparent);
  color: var(--slide-highlight);
  font-size: 0.780rem;
  font-weight: 800;
}

.slide-edit-mode .conclusion-step-content {
  display: flex;
  flex-direction: column;
  gap: 0.163rem;
  flex: 1;
  min-width: 0;
  padding-right: 3.900rem;
}

.slide-edit-mode .conclusion-step-text {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.25;
}

.slide-edit-mode .conclusion-step-meta {
  display: flex;
  align-items: center;
  gap: 0.650rem;
}

.slide-edit-mode .conclusion-step-owner {
  font-size: 0.683rem;
  color: var(--slide-text-secondary);
  font-weight: 500;
}

.slide-edit-mode .conclusion-step-timeline {
  position: absolute;
  top: 50%;
  right: 0.488rem;
  transform: translateY(-50%);
  font-size: 0.650rem;
  font-weight: 600;
  color: var(--slide-success);
  background: color-mix(in srgb, var(--slide-success) 10%, transparent);
  padding: 0.098rem 0.390rem;
  border-radius: 0.163rem;
}

/* ===== Footer: CTA ===== */
.slide-edit-mode .conclusion-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.650rem;
  padding: 0.325rem 0.975rem;
  border: 1px solid #334155;
  border-radius: 0.488rem;
  flex-shrink: 0;
  height: 2.6rem;
  overflow: hidden;
}

.slide-edit-mode .conclusion-cta-text,
.slide-edit-mode .conclusion-footer textarea {
  height: 100%;
  resize: none;
}

.slide-edit-mode .conclusion-headline-field {
  font-style: italic;
  font-weight: 800;
  text-align: center;
  letter-spacing: -0.02em;
  font-size: 1.1rem;
}

.slide-edit-mode .conclusion-cta-text {
  font-size: 1.170rem;
  font-weight: 700;
  font-style: italic;
  color: var(--slide-highlight);
  line-height: 1.3;
  text-align: center;
}

/* ===== Inline edit fields ===== */
.slide-edit-mode .conclusion-inline-field,
.slide-fullscreen-edit .conclusion-inline-field {
  width: 100%;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid #334155;
  border-radius: 6px;
  color: #f8fafc;
  font-family: inherit;
  font-weight: 700;
  line-height: 1.4;
  padding: 0.4rem 0.6rem;
  resize: none;
  outline: none;
  box-sizing: border-box;
  font-size: inherit;
}

.slide-edit-mode .conclusion-inline-field:focus,
.slide-fullscreen-edit .conclusion-inline-field:focus {
  border-color: #f97316;
  box-shadow: 0 0 0 2px rgba(249, 115, 22, 0.2);
}.presentation-container {
  position: fixed;
  inset: 0;
  background: var(--slide-letterbox);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 9999;
  font-family: var(--slide-font-family);
  -webkit-font-smoothing: antialiased;
}

.presentation-inner {
  width: 100%;
  max-width: calc(100vh * 16 / 9);
  aspect-ratio: 16 / 9;
  background: var(--slide-bg-primary);
  overflow: hidden;
  position: relative;
  transform-origin: center center;
  font-size: 16px;
}

/* slide-fullscreen-edit: same as slide-edit-mode but without sizing overrides — used in fullscreen */
.slide-fullscreen-edit .presentation-inner {
  font-size: 16px;
}
html.presentation-mode {
  font-size: 12px;
}

.presentation-nav-btn {
  position: fixed;
  top: 10%;
  bottom: 10%;
  z-index: 10000;
  background: none;
  border: none;
  color: var(--slide-nav-idle);
  cursor: pointer;
  padding: 0;
  transition: color 0.2s;
  display: flex;
  align-items: center;
}

.presentation-nav-btn:hover {
  color: var(--slide-nav-hover);
}

.presentation-nav-prev { left: 0; }
.presentation-nav-next { right: 0; }
.presentation-close-btn {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 10000;
  background: none;
  border: none;
  color: var(--slide-nav-muted);
  font-size: 12px;
  font-weight: 500;
  padding: 4px 8px;
  cursor: pointer;
  font-family: var(--slide-font-family);
  transition: color 0.2s;
}

.presentation-close-btn:hover {
  color: var(--slide-nav-muted-hover);
}

/* ===== Exit Dialog ===== */
.exit-dialog-overlay {
  position: fixed;
  inset: 0;
  background: var(--slide-overlay-heavy);
  z-index: 10001;
}

.exit-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 12px;
  padding: 2rem 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  min-width: 320px;
  font-family: var(--slide-font-family);
}

.exit-dialog-title {
  color: var(--slide-text-primary);
  font-size: 16px;
  font-weight: 600;
  margin: 0;
}

.exit-dialog-description {
  color: var(--slide-text-secondary);
  font-size: 14px;
  margin: 0;
}

.exit-dialog-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
}

.exit-dialog-cancel {
  padding: 8px 18px;
  border-radius: 6px;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 14px;
  cursor: pointer;
}

.exit-dialog-confirm {
  padding: 8px 18px;
  border-radius: 6px;
  border: none;
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
._wrapper_ydenx_1 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* ── Toolbar ── */
._toolbar_ydenx_9 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 12px;
  height: 48px;
  background: #fff;
  border: 1px solid var(--gray-200, #e5e7eb);
  border-radius: 10px;
  font-family: Arial, sans-serif;
}

._toolbarLeft_ydenx_23 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
}

._toolbarLogo_ydenx_31 {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

._toolbarSep_ydenx_37 {
  color: var(--gray-300, #d1d5db);
  font-size: 0.875rem;
}

._toolbarProject_ydenx_42 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--gray-700, #374151);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._toolbarCenter_ydenx_51 {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

._toolbarNav_ydenx_61 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--gray-200, #e5e7eb);
  border-radius: 6px;
  background: #fff;
  color: var(--gray-600, #4b5563);
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
  padding: 0;
}

._toolbarNav_ydenx_61:hover:not(:disabled) {
  background: var(--gray-50, #f9fafb);
  color: var(--gray-900, #111827);
}

._toolbarNav_ydenx_61:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

._toolbarCounter_ydenx_86 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--gray-700, #374151);
  min-width: 32px;
  text-align: center;
}

._toolbarSlideName_ydenx_94 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--brand-cyan, #06B6D4);
  background: transparent;
  border: none;
  padding: 0;
  white-space: nowrap;
  min-width: unset;
  text-align: left;
}

._toolbarRight_ydenx_106 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

._toolbarEditing_ydenx_113 {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #d97706;
}

._toolbarCancel_ydenx_119 {
  height: 32px;
  padding: 0 1rem;
  background: white;
  border: 0.09375rem solid var(--error-500, #ef4444);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--error-500, #ef4444);
  cursor: pointer;
  transition: background 0.2s;
}

._toolbarCancel_ydenx_119:hover { background: #fef2f2; }

._toolbarEdit_ydenx_113,
._toolbarSave_ydenx_136 {
  display: flex;
  align-items: center;
  gap: 4px;
  height: 32px;
  padding: 0 1rem;
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
}

._toolbarEdit_ydenx_113 {
  background: white;
  border: 0.09375rem solid var(--border-subtle, #e5e7eb);
  color: var(--text-tertiary, #6b7280);
}

._toolbarEdit_ydenx_113:hover { background: var(--surface-subtle, #f9fafb); }

._toolbarSave_ydenx_136 {
  background: white;
  border: 0.09375rem solid var(--success-500, #22c55e);
  color: var(--success-700, #15803d);
}

._toolbarSave_ydenx_136:hover:not(:disabled) { background: #f0fdf4; }

._toolbarAccept_ydenx_166 {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 0 1rem;
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
  background: white;
  border: 1.5px solid var(--color-stale, #f59e0b);
  color: var(--color-stale-dark, #b45309);
}

._toolbarAccept_ydenx_166:hover { background: var(--color-stale-bg-active, #fffbeb); }

._toolbarSave_ydenx_136:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._toolbarRegenerate_ydenx_190 {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 12px;
  background: #fff;
  border: 1px solid var(--blue-600, #2563eb);
  border-radius: 6px;
  color: var(--blue-600, #2563eb);
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s;
}

._toolbarRegenerate_ydenx_190:hover {
  background: rgba(37, 99, 235, 0.05);
}

._toolbarPresent_ydenx_210 {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 14px;
  background: linear-gradient(to bottom, var(--blue-600, #2563eb), var(--blue-700, #1d4ed8));
  border: none;
  border-radius: 6px;
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.15s;
}

._toolbarPresent_ydenx_210:hover {
  opacity: 0.9;
}

/* ── Slide box ── */
._slideBox_ydenx_231 {
  position: relative !important;
  inset: unset !important;
  z-index: 1 !important;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: transparent !important;
}

._slideBox_ydenx_231 .presentation-inner {
  max-width: 100% !important;
  width: 100% !important;
  height: 100% !important;
}

/* ── Fullscreen edit mode ── */
._fullscreenWrapper_ydenx_249 {
  z-index: 9998 !important;
  flex-direction: column !important;
  align-items: unset !important;
  justify-content: unset !important;
}

._toolbarFullscreen_ydenx_256 {
  flex-shrink: 0;
  border-radius: 0;
  border-left: none;
  border-right: none;
  border-top: none;
  z-index: 9999;
  font-size: 1.1125rem;
}

._toolbarFullscreen_ydenx_256 ._toolbarSep_ydenx_37,
._toolbarFullscreen_ydenx_256 ._toolbarProject_ydenx_42,
._toolbarFullscreen_ydenx_256 ._toolbarSlideName_ydenx_94,
._toolbarFullscreen_ydenx_256 ._toolbarCounter_ydenx_86,
._toolbarFullscreen_ydenx_256 ._toolbarEditing_ydenx_113 {
  font-size: 1.1125rem;
}

._toolbarFullscreen_ydenx_256 ._toolbarCancel_ydenx_119,
._toolbarFullscreen_ydenx_256 ._toolbarEdit_ydenx_113,
._toolbarFullscreen_ydenx_256 ._toolbarSave_ydenx_136,
._toolbarFullscreen_ydenx_256 ._toolbarRegenerate_ydenx_190,
._toolbarFullscreen_ydenx_256 ._toolbarPresent_ydenx_210 {
  font-size: 1.1125rem;
}

._slideBoxFullscreen_ydenx_283 {
  flex: 1;
  position: relative !important;
  inset: unset !important;
  z-index: 1 !important;
  width: 100% !important;
  border-radius: 0 !important;
  overflow: hidden;
  background: #000 !important;
}

._slideBoxFullscreen_ydenx_283 .presentation-inner {
  position: relative !important;
  top: unset !important;
  left: unset !important;
  transform: none !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  aspect-ratio: unset !important;
}
._serversTab_7jfoj_1 {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    animation: _tabFadeIn_7jfoj_1 0.3s ease-out;
}

@keyframes _tabFadeIn_7jfoj_1 {
    from {
        opacity: 0;
        transform: translateY(0.5rem);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Tab Header */
._tabHeader_7jfoj_21 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

._tabTitle_7jfoj_27 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.4;
}

._tabSubtitle_7jfoj_36 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* Stats Row */
._statsRow_7jfoj_45 {
    display: flex;
    gap: 0.75rem;
}

._statCard_7jfoj_50 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.5rem;
    box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.05);
    min-width: 6.25rem;
}

._statDot_7jfoj_62 {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    flex-shrink: 0;
}

._statLabel_7jfoj_69 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
}

._statValue_7jfoj_75 {
    font-family: Arial, sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-left: auto;
}

._statOnline_7jfoj_83 {
    border-left: 0.1875rem solid var(--success-500);
}

._statWarning_7jfoj_87 {
    border-left: 0.1875rem solid var(--warning-500);
}

._statOffline_7jfoj_91 {
    border-left: 0.1875rem solid var(--error-500);
}

/* Toolbar */
._toolbar_7jfoj_96 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

._toolbarLeft_7jfoj_103,
._toolbarRight_7jfoj_104 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._toolbarBtn_7jfoj_110 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2.125rem;
    padding: 0 0.75rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

._toolbarBtn_7jfoj_110:hover {
    background: var(--surface-subtle);
}

._spinning_7jfoj_131 {
    animation: _spin_7jfoj_131 1s linear infinite;
}

._mappingBanner_7jfoj_135 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--blue-50);
    border: 1px solid var(--blue-200);
    border-radius: 0.5rem;
    color: var(--blue-700);
    font-size: 0.8125rem;
    font-weight: 500;
}

._statsBanner_7jfoj_148 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    background: var(--warning-50);
    border: 1px solid var(--warning-200);
    border-radius: 0.5rem;
    color: var(--warning-700);
    font-size: 0.75rem;
    font-weight: 500;
}

._statsBannerClose_7jfoj_161 {
    background: none;
    border: none;
    color: var(--warning-700);
    font-size: 1.125rem;
    cursor: pointer;
    padding: 0 0.25rem;
    line-height: 1;
    opacity: 0.7;
}

._statsBannerClose_7jfoj_161:hover {
    opacity: 1;
}

@keyframes _spin_7jfoj_131 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

._toolbarBtnPrimary_7jfoj_181 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2.125rem;
    padding: 0 0.875rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border: none;
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.15s;
    white-space: nowrap;
}

._toolbarBtnPrimary_7jfoj_181:hover {
    opacity: 0.9;
}

/* Column Picker */
._columnPickerWrapper_7jfoj_203 {
    position: relative;
}

._toolbarBtnActive_7jfoj_207 {
    background: rgba(239, 246, 255, 0.8);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

._columnCount_7jfoj_213 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    height: 1.125rem;
    padding: 0 0.3125rem;
    background: var(--border-subtle);
    border-radius: 624.9375rem;
    font-size: 0.6875rem;
    color: var(--text-tertiary);
    font-family: Arial, sans-serif;
}

._toolbarBtnActive_7jfoj_207 ._columnCount_7jfoj_213 {
    background: rgba(41, 135, 194, 0.15);
    color: var(--blue-600);
}

._columnPicker_7jfoj_203 {
    position: absolute;
    top: calc(100% + 0.375rem);
    left: 0;
    z-index: 200;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.12);
    width: 16.25rem;
    overflow: hidden;
}

._columnPickerHeader_7jfoj_245 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0.875rem 0.625rem;
    border-bottom: 0.0417rem solid var(--slate-100);
}

._columnPickerTitle_7jfoj_253 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--text-primary);
}

._columnPickerReset_7jfoj_260 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--blue-600);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    transition: background 0.1s;
}

._columnPickerReset_7jfoj_260:hover {
    background: rgba(41, 135, 194, 0.08);
}

._columnGroup_7jfoj_276 {
    padding: 0.625rem 0.875rem 0.5rem;
    border-bottom: 0.0417rem solid var(--slate-100);
}

._columnGroup_7jfoj_276:last-child {
    border-bottom: none;
}

._columnGroupLabel_7jfoj_285 {
    display: block;
    font-family: Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 400;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0375rem;
    margin-bottom: 0.5rem;
}

._columnGroupItems_7jfoj_296 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

._columnChip_7jfoj_302 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    height: 1.625rem;
    padding: 0 0.625rem;
    background: var(--slate-100);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 624.9375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

._columnChip_7jfoj_302:hover {
    background: var(--border-subtle);
    color: var(--text-secondary);
}

._columnChipActive_7jfoj_324 {
    background: rgba(239, 246, 255, 0.9);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

._columnChipActive_7jfoj_324:hover {
    background: rgba(239, 246, 255, 1);
}

/* Table */
._tableWrapper_7jfoj_335 {
    overflow-x: auto;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.5rem;
}

._stickyScrollbar_7jfoj_341 {
    position: sticky;
    bottom: 0;
    overflow-x: auto;
    overflow-y: hidden;
    height: 12px;
    z-index: 3;
}

._table_7jfoj_335 {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
}

._table_7jfoj_335 thead {
    background: var(--surface-subtle);
    border-bottom: 0.0417rem solid var(--border-subtle);
}

._th_7jfoj_362,
._thName_7jfoj_363,
._thActions_7jfoj_364 {
    padding: 0.625rem 0.875rem;
    text-align: left;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--text-tertiary);
    white-space: nowrap;
    border-bottom: 0.0417rem solid var(--border-subtle);
    position: sticky;
    top: 0;
    background: white;
    z-index: 2;
}

._th_7jfoj_362,
._thName_7jfoj_363 {
    position: relative;
}

._resizeHandle_7jfoj_383 {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    cursor: col-resize;
    background: transparent;
}

._resizeHandle_7jfoj_383:hover {
    background: var(--blue-300);
}

._thName_7jfoj_363 {
    min-width: 10rem;
}

._thActions_7jfoj_364 {
    width: 4.5rem;
}

._tr_7jfoj_405 {
    border-bottom: 0.0417rem solid var(--slate-100);
    transition: background 0.1s;
}

._tr_7jfoj_405:last-child {
    border-bottom: none;
}

._tr_7jfoj_405:hover {
    background: var(--surface-subtle);
}

._td_7jfoj_418,
._tdName_7jfoj_419,
._tdActions_7jfoj_420 {
    padding: 0.625rem 0.875rem;
    color: var(--text-secondary);
    vertical-align: middle;
}

._tdActions_7jfoj_420 {
    text-align: right;
}

/* Server name cell */
._serverName_7jfoj_431 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 400;
    color: var(--text-primary);
}

._serverDot_7jfoj_439 {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    flex-shrink: 0;
}

._dot_online_7jfoj_446 {
    background: var(--success-500);
}

._dot_warning_7jfoj_450 {
    background: var(--warning-500);
}

._dot_offline_7jfoj_454 {
    background: var(--error-500);
}

/* Status badge */
._statusBadge_7jfoj_459 {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    border-radius: 624.9375rem;
    font-size: 0.75rem;
    font-weight: 400;
    white-space: nowrap;
}

._statusOnline_7jfoj_469 {
    background: var(--success-50);
    color: var(--success-700);
}

._statusWarning_7jfoj_474 {
    background: var(--warning-50);
    color: var(--warning-700);
}

._statusOffline_7jfoj_479 {
    background: var(--error-50);
    color: var(--error-700);
}

/* Env tag */
._envTag_7jfoj_485 {
    display: inline-flex;
    padding: 0.125rem 0.5rem;
    background: rgba(239, 246, 255, 0.8);
    border: 0.0417rem solid var(--blue-200);
    border-radius: 0.25rem;
    font-size: 0.75rem;
    color: var(--blue-800);
    white-space: nowrap;
}

/* Mono text */
._monoText_7jfoj_497 {
    font-family: 'Courier New', monospace;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

._hostname_7jfoj_504 {
    font-size: 0.6875rem;
    color: var(--text-disabled);
}

._dimText_7jfoj_509 {
    color: var(--text-tertiary);
    font-size: 0.75rem;
}

/* Metric bar */
._metricBar_7jfoj_515 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    min-width: 5rem;
}

._metricBarTrack_7jfoj_522 {
    flex: 1;
    height: 0.25rem;
    background: var(--border-subtle);
    border-radius: 624.9375rem;
    overflow: hidden;
}

._metricBarFill_7jfoj_530 {
    height: 100%;
    border-radius: 624.9375rem;
    transition: width 0.3s;
}

._metricValue_7jfoj_536 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    min-width: 2rem;
    text-align: right;
}

._metricEmpty_7jfoj_543 {
    color: var(--text-disabled);
}

/* Edit button */
._editBtn_7jfoj_548 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    background: transparent;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    margin-left: auto;
}

._editBtn_7jfoj_548:hover {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

/* Modal */
._modalOverlay_7jfoj_570 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

._modal_7jfoj_570 {
    background: white;
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.15);
    width: 32.5rem;
    max-width: 90vw;
    max-height: 85vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

._modalHeader_7jfoj_592 {
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 0.0417rem solid var(--border-subtle);
}

._modalTitle_7jfoj_597 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
}

._modalSubtitle_7jfoj_605 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
    margin: 0;
}

._modalBody_7jfoj_612 {
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    overflow-y: auto;
    flex: 1;
}

._formGroup_7jfoj_621 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

._formLabel_7jfoj_627 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

._formSelect_7jfoj_633,
._formInput_7jfoj_634 {
    height: 2.25rem;
    padding: 0 0.75rem;
    background: white;
    border: 0.0417rem solid var(--border-default);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    transition: border-color 0.15s;
}

._formSelect_7jfoj_633:focus,
._formInput_7jfoj_634:focus {
    border-color: var(--blue-600);
}

._modalFooter_7jfoj_652 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    border-top: 0.0417rem solid var(--border-subtle);
}

._modalCancel_7jfoj_661 {
    height: 2.125rem;
    padding: 0 1rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.15s;
}

._modalCancel_7jfoj_661:hover {
    background: var(--surface-subtle);
}

._modalSave_7jfoj_678 {
    height: 2.125rem;
    padding: 0 1rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border: none;
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.15s;
}

._modalSave_7jfoj_678:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

._modalSave_7jfoj_678:not(:disabled):hover {
    opacity: 0.9;
}

/* ─── Layout com drawer ─────────────────────────────────────────────────── */

._serversTabWithDrawer_7jfoj_702 {
    display: grid;
    grid-template-columns: 1fr 20rem;
    gap: 0;
    align-items: start;
}

._mainArea_7jfoj_709 {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

/* ─── Drawer ─────────────────────────────────────────────────────────────── */

._drawer_7jfoj_718 {
    position: sticky;
    top: 0;
    height: calc(100vh - 10rem);
    display: flex;
    flex-direction: column;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: -0.125rem 0 0.75rem rgba(0, 0, 0, 0.06);
    overflow: hidden;
    margin-left: 1rem;
}

._drawerHeader_7jfoj_732 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 0.875rem;
    border-bottom: 0.0417rem solid var(--slate-100);
    flex-shrink: 0;
}

._drawerNav_7jfoj_741 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

._drawerNavBtn_7jfoj_747 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.625rem;
    height: 1.625rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
}

._drawerNavBtn_7jfoj_747:hover:not(:disabled) {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._drawerNavBtn_7jfoj_747:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

._drawerNavCount_7jfoj_772 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-disabled);
    min-width: 2.25rem;
    text-align: center;
}

._drawerClose_7jfoj_780 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.625rem;
    height: 1.625rem;
    background: transparent;
    border: none;
    border-radius: 0.375rem;
    color: var(--text-disabled);
    cursor: pointer;
    transition: all 0.15s;
}

._drawerClose_7jfoj_780:hover {
    background: var(--error-50);
    color: var(--error-500);
}

/* Identity block */
._drawerIdentity_7jfoj_800 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-bottom: 0.0417rem solid var(--slate-100);
    flex-shrink: 0;
}

._drawerServerIcon_7jfoj_809 {
    width: 2.25rem;
    height: 2.25rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

._drawerServerName_7jfoj_820 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
    line-height: 1.3;
}

._drawerServerMeta_7jfoj_829 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

._drawerStatusDot_7jfoj_835 {
    width: 0.4375rem;
    height: 0.4375rem;
    border-radius: 50%;
    flex-shrink: 0;
}

/* Body */
._drawerBody_7jfoj_843 {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    padding: 0.25rem 0 1rem;
}

._drawerSection_7jfoj_850 {
    padding: 0.75rem 1rem 0.25rem;
}

._drawerSection_7jfoj_850 + ._drawerSection_7jfoj_850 {
    border-top: 0.0417rem solid var(--surface-subtle);
}

._drawerSection_7jfoj_850:last-child {
    border-bottom: none;
}

._drawerDeleteSection_7jfoj_862 {
    padding: 1.5rem 1rem 1rem;
}

._drawerSectionLabel_7jfoj_866 {
    display: block;
    font-family: Arial, sans-serif;
    font-size: 0.625rem;
    font-weight: 400;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0375rem;
    margin-bottom: 0.5rem;
}

._drawerField_7jfoj_877 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 2rem;
    padding: 0.125rem 0;
    gap: 0.5rem;
}

._drawerFieldLabel_7jfoj_886 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    flex-shrink: 0;
    min-width: 6.875rem;
}

/* ─── Inline editing components ─────────────────────────────────────────── */

/* Shared value button */
._inlineValue_7jfoj_897 {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    max-width: 10rem;
    padding: 0.1875rem 0.375rem;
    background: transparent;
    border: 0.0417rem solid transparent;
    border-radius: 0.3125rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
    text-align: left;
    overflow: hidden;
}

._inlineValue_7jfoj_897:hover {
    background: var(--slate-100);
    border-color: var(--border-subtle);
}

._inlineValue_7jfoj_897:hover ._inlineEditIcon_7jfoj_920 {
    opacity: 1;
}

._inlineValueMono_7jfoj_924 {
    font-family: 'Courier New', monospace;
    font-size: 0.75rem;
}

._inlineEditIcon_7jfoj_920 {
    opacity: 0;
    color: var(--text-disabled);
    flex-shrink: 0;
    transition: opacity 0.15s;
}

/* Text input */
._inlineInput_7jfoj_937 {
    width: 10rem;
    height: 1.75rem;
    padding: 0 0.5rem;
    background: white;
    border: 0.0938rem solid var(--blue-600);
    border-radius: 0.3125rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    box-shadow: 0 0 0 0.1875rem rgba(41, 135, 194, 0.12);
}

._inlineInputMono_7jfoj_951 {
    font-family: 'Courier New', monospace;
    font-size: 0.75rem;
}

/* Select dropdown */
._inlineSelectWrapper_7jfoj_957 {
    position: relative;
}

._inlineDropdown_7jfoj_961 {
    position: absolute;
    top: calc(100% + 0.25rem);
    right: 0;
    z-index: 300;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.12);
    min-width: 8.75rem;
    padding: 0.25rem 0;
    overflow: hidden;
}

._inlineDropdownItem_7jfoj_975 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: none;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.1s;
    text-align: left;
    gap: 0.5rem;
}

._inlineDropdownItem_7jfoj_975:hover {
    background: var(--surface-subtle);
}

._inlineDropdownItemActive_7jfoj_996 {
    color: var(--blue-600);
    background: rgba(239, 246, 255, 0.6);
}

/* Number / metric */
._inlineMetricBtn_7jfoj_1002 {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    width: 10rem;
    padding: 0.1875rem 0.375rem;
    background: transparent;
    border: 0.0417rem solid transparent;
    border-radius: 0.3125rem;
    cursor: pointer;
    transition: all 0.15s;
}

._inlineMetricBtn_7jfoj_1002:hover {
    background: var(--slate-100);
    border-color: var(--border-subtle);
}

._inlineMetricBtn_7jfoj_1002:hover ._inlineEditIcon_7jfoj_920 {
    opacity: 1;
}

._inlineNumberWrapper_7jfoj_1024 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

._inlineNumberInput_7jfoj_1030 {
    width: 3.75rem;
    height: 1.75rem;
    padding: 0 0.5rem;
    background: white;
    border: 0.0938rem solid var(--blue-600);
    border-radius: 0.3125rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    box-shadow: 0 0 0 0.1875rem rgba(41, 135, 194, 0.12);
}

._inlineNumberSuffix_7jfoj_1044 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
}

/* ─── Table row selected state ───────────────────────────────────────────── */

._trSelected_7jfoj_1052 {
    background: rgba(239, 246, 255, 0.6) !important;
    outline: none;
}

._trSelected_7jfoj_1052 td {
    border-bottom-color: var(--blue-200);
}

._editBtnActive_7jfoj_1061 {
    background: rgba(239, 246, 255, 0.8) !important;
    color: var(--blue-600) !important;
    border-color: var(--blue-600) !important;
}

/* ─── Origin Badge ───────────────────────────────────────────────────────── */

._originBadge_7jfoj_1069 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    border-radius: 624.9375rem;
    font-size: 0.75rem;
    font-family: Arial, sans-serif;
    white-space: nowrap;
}

._originAutomatic_7jfoj_1080 {
    background: rgba(239, 246, 255, 0.8);
    color: var(--blue-600);
    border: 0.0417rem solid var(--blue-200);
}

._originManual_7jfoj_1086 {
    background: var(--slate-100);
    color: var(--text-tertiary);
    border: 0.0417rem solid var(--border-subtle);
}

/* ─── Empty State ────────────────────────────────────────────────────────── */

._emptyState_7jfoj_1094 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 1.5rem;
    text-align: center;
    gap: 1rem;
    animation: _tabFadeIn_7jfoj_1 0.3s ease-out;
}

._emptyIcon_7jfoj_1105 {
    width: 5rem;
    height: 5rem;
    background: var(--slate-100);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

._emptyTitle_7jfoj_1116 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._emptyDescription_7jfoj_1124 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-tertiary);
    margin: 0;
    max-width: 26.25rem;
    line-height: 1.5;
}

._emptyActions_7jfoj_1133 {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

._emptyAddBtn_7jfoj_1139 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2.25rem;
    padding: 0 1rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border: none;
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.15s;
}

._emptyAddBtn_7jfoj_1139:hover {
    opacity: 0.9;
}

._emptyHint_7jfoj_1159 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
    padding: 0.625rem 1rem;
    background: var(--surface-subtle);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
    max-width: 30rem;
}

/* ─── Processing Banner ──────────────────────────────────────────────────── */

._processingBanner_7jfoj_1176 {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1.25rem;
    background: rgba(239, 246, 255, 0.6);
    border: 0.0417rem solid var(--blue-200);
    border-radius: 0.5rem;
}

._processingSpinner_7jfoj_1186 {
    width: 1.25rem;
    height: 1.25rem;
    border: 0.1562rem solid var(--blue-200);
    border-top-color: var(--blue-600);
    border-radius: 50%;
    animation: _spin_7jfoj_131 0.8s linear infinite;
    flex-shrink: 0;
}

@keyframes _spin_7jfoj_131 {
    to {
        transform: rotate(360deg);
    }
}

._processingText_7jfoj_1202 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

._processingTitle_7jfoj_1208 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--blue-800);
}

._processingSubtitle_7jfoj_1215 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--blue-500);
}

/* ─── Pagination ─────────────────────────────────────────────────────────── */

._pagination_7jfoj_1223 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.25rem 0;
}

._paginationInfo_7jfoj_1230 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
}

._paginationControls_7jfoj_1236 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

._paginationBtn_7jfoj_1242 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
}

._paginationBtn_7jfoj_1242:hover:not(:disabled) {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._paginationBtn_7jfoj_1242:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

._paginationPageBtn_7jfoj_1267 {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    height: 2rem;
    padding: 0 0.5rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
}

._paginationPageBtn_7jfoj_1267:hover {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._paginationPageBtnActive_7jfoj_1290 {
    background: rgba(239, 246, 255, 0.8);
    border-color: var(--blue-600);
    color: var(--blue-600);
    font-weight: 700;
}

._paginationEllipsis_7jfoj_1297 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-disabled);
}

/* ─── Form Row (modal) ───────────────────────────────────────────────────── */

._formRow_7jfoj_1310 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.875rem;
}

/* ─── Drawer field value (read-only) ─────────────────────────────────────── */

._drawerFieldValue_7jfoj_1318 {
    display: flex;
    align-items: center;
}

/* ─── Row actions (edit + delete) ────────────────────────────────────────── */

._rowActions_7jfoj_1325 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    justify-content: flex-end;
}

/* ─── Delete button (table row) ──────────────────────────────────────────── */

._deleteBtn_7jfoj_1334 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    background: transparent;
    border: 0.0417rem solid transparent;
    border-radius: 0.375rem;
    color: var(--text-disabled);
    cursor: pointer;
    transition: all 0.15s;
    opacity: 0;
}

._tr_7jfoj_405:hover ._deleteBtn_7jfoj_1334 {
    opacity: 1;
}

._deleteBtn_7jfoj_1334:hover {
    background: var(--error-50);
    border-color: var(--error-50);
    color: var(--error-500);
}

/* ─── Drawer footer (delete action) ──────────────────────────────────────── */

._drawerFooter_7jfoj_1361 {
    padding: 0.75rem 1rem;
    border-top: 0.0417rem solid var(--slate-100);
    flex-shrink: 0;
}

._drawerDeleteBtn_7jfoj_1367 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    width: 100%;
    height: 2.125rem;
    background: transparent;
    border: 0.0417rem solid var(--error-50);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--error-500);
    cursor: pointer;
    transition: all 0.15s;
}

._drawerDeleteBtn_7jfoj_1367:hover {
    background: var(--error-50);
    border-color: var(--error-500);
}

/* ─── Confirm Delete Modal ───────────────────────────────────────────────── */

._modalDelete_7jfoj_1391 {
    background: white;
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.15);
    width: 23.75rem;
    max-width: 90vw;
    padding: 1.75rem 1.5rem 1.25rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.75rem;
}

._deleteIconWrapper_7jfoj_1405 {
    width: 3rem;
    height: 3rem;
    background: var(--error-50);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.25rem;
}

._deleteTitle_7jfoj_1416 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._deleteDescription_7jfoj_1424 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.5;
}

._deleteDescription_7jfoj_1424 strong {
    color: var(--text-primary);
    font-weight: 700;
}

._deleteActions_7jfoj_1437 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
    width: 100%;
}

._deleteActions_7jfoj_1437 ._modalCancel_7jfoj_661 {
    flex: 1;
}

._deleteConfirmBtn_7jfoj_1449 {
    flex: 1;
    height: 2.125rem;
    padding: 0 1rem;
    background: var(--error-500);
    border: none;
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
}

._deleteConfirmBtn_7jfoj_1449:hover {
    background: var(--error-600);
}

/* ─── Workload Chips ─────────────────────────────────────────────────────── */

._chipRow_7jfoj_1469 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-wrap: nowrap;
    overflow: hidden;
}

._workloadChip_7jfoj_1477 {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.625rem;
    border-radius: 624.9375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    white-space: nowrap;
    border: 0.0417rem solid;
    line-height: 1.5;
}

._chipMore_7jfoj_1490 {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    border-radius: 624.9375rem;
    font-family: Arial, sans-serif;
    font-size: 0.6875rem;
    color: var(--text-tertiary);
    background: var(--slate-100);
    border: 0.0417rem dashed var(--border-default);
    white-space: nowrap;
    line-height: 1.5;
}

/* ─── Data Source Chips ──────────────────────────────────────────────────── */

._dataSourceRow_7jfoj_1506 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    overflow: hidden;
}

._dataSourceChip_7jfoj_1513 {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    padding: 0.125rem 0.5rem;
    background: var(--surface-subtle);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    white-space: nowrap;
    max-width: 13.75rem;
    overflow: hidden;
}

._dataSourceIcon_7jfoj_1526 {
    color: var(--text-tertiary);
    flex-shrink: 0;
}

._dataSourceName_7jfoj_1531 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

._dataSourceMore_7jfoj_1540 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    height: 1.375rem;
    padding: 0 0.375rem;
    background: var(--slate-100);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 624.9375rem;
    font-family: Arial, sans-serif;
    font-size: 0.6875rem;
    color: var(--text-tertiary);
    white-space: nowrap;
    flex-shrink: 0;
}

/* ─── Drawer sources list ────────────────────────────────────────────────── */

._drawerSourcesList_7jfoj_1559 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    align-items: flex-end;
}

._drawerSourcesList_7jfoj_1559 ._dataSourceChip_7jfoj_1513 {
    max-width: 11.25rem;
}

/* ─── InlineMultiSelect (redesigned) ─────────────────────────────────────── */

._multiSelectField_7jfoj_1572 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    width: 100%;
}

._multiSelectedChips_7jfoj_1579 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

._multiChip_7jfoj_1585 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    height: 1.5rem;
    padding: 0 0.375rem 0 0.5rem;
    background: var(--slate-100);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-secondary);
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
}

._multiChipRemove_7jfoj_1602 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 0.875rem;
    height: 0.875rem;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: var(--text-disabled);
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    transition: all 0.1s;
}

._multiChipRemove_7jfoj_1602:hover {
    background: var(--border-subtle);
    color: var(--error-500);
}

._multiSelectTrigger_7jfoj_1623 {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    height: 1.75rem;
    padding: 0 0.625rem;
    background: white;
    border: 0.0417rem dashed var(--border-default);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    width: fit-content;
}

._multiSelectTrigger_7jfoj_1623:hover {
    border-color: var(--blue-600);
    color: var(--blue-600);
    background: rgba(239, 246, 255, 0.5);
}

/* Fixed-position dropdown */
._multiSelectDropdownFixed_7jfoj_1647 {
    position: fixed;
    z-index: 9000;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.14);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    max-height: 17.5rem;
}

/* Fixed-position dropdown (not modal) */
._multiSelectDropdownFixed_7jfoj_1647 {
    position: fixed;
    z-index: 9000;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.14);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    max-height: 20rem;
}

._multiSelectDropdownLabel_7jfoj_1674 {
    padding: 0.625rem 0.75rem 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0312rem;
}

._multiSelectSearch_7jfoj_1684 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.75rem;
    border-bottom: 0.0417rem solid var(--slate-100);
    color: var(--text-disabled);
}

._multiSelectSearchInput_7jfoj_1693 {
    flex: 1;
    border: none;
    outline: none;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    background: transparent;
}

._multiSelectSearchInput_7jfoj_1693::placeholder {
    color: var(--text-disabled);
}

._multiSelectList_7jfoj_1707 {
    max-height: 13.75rem;
    overflow-y: auto;
    padding: 0.25rem 0;
}

._multiSelectItem_7jfoj_1713 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.1s;
    text-align: left;
}

._multiSelectItem_7jfoj_1713:hover {
    background: var(--surface-subtle);
}

._multiSelectItemActive_7jfoj_1733 {
    color: var(--blue-600);
    background: rgba(239, 246, 255, 0.5);
}

._multiSelectEmpty_7jfoj_1738 {
    display: block;
    padding: 1rem 0.75rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-disabled);
    text-align: center;
}

._multiCheckbox_7jfoj_1747 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    border: 0.0938rem solid var(--border-default);
    border-radius: 0.25rem;
    flex-shrink: 0;
    transition: all 0.15s;
}

._multiCheckboxActive_7jfoj_1759 {
    background: var(--blue-600);
    border-color: var(--blue-600);
    color: white;
}

/* ─── Drawer stacked field ───────────────────────────────────────────────── */

._drawerFieldStacked_7jfoj_1767 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    padding: 0.375rem 0;
}

/* ─── Form chip grid (modal) ─────────────────────────────────────────────── */

._formChipGrid_7jfoj_1776 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

._formChip_7jfoj_1776 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    height: 1.75rem;
    padding: 0 0.625rem;
    background: var(--slate-100);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 624.9375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

._formChip_7jfoj_1776:hover {
    background: var(--border-subtle);
    color: var(--text-secondary);
}

._formChipSelected_7jfoj_1804 {
    border-color: currentColor;
}

._formChipSelected_7jfoj_1804:hover {
    opacity: 0.85;
}

._formHint_7jfoj_1812 {
    font-size: 0.75rem;
    color: var(--slate-400);
    font-style: italic;
}

._formChipSourceActive_7jfoj_1818 {
    background: rgba(239, 246, 255, 0.9);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

/* ═══════════════════════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── ≤ 75rem: drawer stacks below ─────────────────────────────────────── */

@media (max-width: 75rem) {
    ._serversTabWithDrawer_7jfoj_702 {
        grid-template-columns: 1fr;
    }

    ._drawer_7jfoj_718 {
        position: relative;
        margin-left: 0;
        margin-top: 1rem;
        height: auto;
        max-height: 26.25rem;
    }
}

/* ─── ≤ 64rem: stats wrap, toolbar stacks ───────────────────────────────── */

@media (max-width: 64rem) {
    ._statsRow_7jfoj_45 {
        flex-wrap: wrap;
    }

    ._statCard_7jfoj_50 {
        min-width: 0;
        flex: 1 1 calc(50% - 0.5rem);
        padding: 0.625rem 0.875rem;
    }

    ._statValue_7jfoj_75 {
        font-size: 1.125rem;
    }

    ._toolbar_7jfoj_96 {
        flex-wrap: wrap;
    }
}

/* ─── ≤ 48rem: mobile-friendly layout ────────────────────────────────────── */

@media (max-width: 48rem) {
    ._statsRow_7jfoj_45 {
        gap: 0.5rem;
    }

    ._statCard_7jfoj_50 {
        flex: 1 1 calc(50% - 0.25rem);
        padding: 0.5rem 0.75rem;
    }

    ._statLabel_7jfoj_69 {
        font-size: 0.75rem;
    }

    ._statValue_7jfoj_75 {
        font-size: 1rem;
    }

    ._toolbar_7jfoj_96 {
        flex-direction: column;
        align-items: stretch;
    }

    ._toolbarLeft_7jfoj_103,
    ._toolbarRight_7jfoj_104 {
        width: 100%;
    }

    ._toolbarRight_7jfoj_104 {
        justify-content: stretch;
    }

    ._toolbarBtnPrimary_7jfoj_181 {
        flex: 1;
        justify-content: center;
    }

    /* Column picker: full width on mobile */
    ._columnPicker_7jfoj_203 {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        border-radius: 1rem 1rem 0 0;
        max-height: 60vh;
        overflow-y: auto;
        z-index: 400;
    }

    /* Dropdowns: wider on mobile */
    ._inlineDropdown_7jfoj_961,
    ._multiSelectDropdown_7jfoj_1647 {
        min-width: 11.25rem;
        max-width: calc(100vw - 3rem);
    }

    /* Pagination stacks */
    ._pagination_7jfoj_1223 {
        flex-direction: column;
        gap: 0.5rem;
        align-items: center;
    }

    /* Modal form rows stack */
    ._formRow_7jfoj_1310 {
        grid-template-columns: 1fr;
        gap: 0.625rem;
    }

    /* Drawer fields stack */
    ._drawerField_7jfoj_877 {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    ._drawerFieldLabel_7jfoj_886 {
        min-width: 0;
    }

    /* Inline values full width */
    ._inlineValue_7jfoj_897 {
        max-width: 100%;
    }

    ._inlineInput_7jfoj_937 {
        width: 100%;
    }

    ._inlineMetricBtn_7jfoj_1002 {
        width: 100%;
    }

    /* Empty state */
    ._emptyState_7jfoj_1094 {
        padding: 2.5rem 1rem;
    }

    ._emptyHint_7jfoj_1159 {
        flex-direction: column;
        text-align: center;
    }
}

/* ─── ≤ 30rem: compact mobile ────────────────────────────────────────────── */

@media (max-width: 30rem) {
    ._tabTitle_7jfoj_27 {
        font-size: 0.9375rem;
    }

    ._tabSubtitle_7jfoj_36 {
        font-size: 0.75rem;
    }

    ._statCard_7jfoj_50 {
        flex: 1 1 100%;
    }

    ._toolbarBtn_7jfoj_110 {
        font-size: 0.75rem;
        padding: 0 0.625rem;
        height: 2rem;
    }

    ._toolbarBtnPrimary_7jfoj_181 {
        font-size: 0.75rem;
        height: 2rem;
    }

    /* Table cells tighter */
    ._th_7jfoj_362,
    ._thName_7jfoj_363,
    ._thActions_7jfoj_364,
    ._td_7jfoj_418,
    ._tdName_7jfoj_419,
    ._tdActions_7jfoj_420 {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }

    ._thName_7jfoj_363 {
        min-width: 7.5rem;
    }

    /* Drawer compact */
    ._drawer_7jfoj_718 {
        max-height: 22.5rem;
    }

    ._drawerIdentity_7jfoj_800 {
        padding: 0.625rem 0.75rem;
    }

    ._drawerSection_7jfoj_850 {
        padding: 0.625rem 0.75rem 0.25rem;
    }

    ._drawerServerName_7jfoj_820 {
        font-size: 0.8125rem;
    }

    /* Modal compact */
    ._modal_7jfoj_570 {
        max-height: 90vh;
        margin: 0.5rem;
    }

    ._modalHeader_7jfoj_592 {
        padding: 1rem 1rem 0.75rem;
    }

    ._modalBody_7jfoj_612 {
        padding: 1rem;
    }

    ._modalFooter_7jfoj_652 {
        padding: 0.75rem 1rem;
    }

    ._modalDelete_7jfoj_1391 {
        padding: 1.25rem 1rem 1rem;
    }

    /* Chip grids scroll */
    ._formChipGrid_7jfoj_1776 {
        max-height: 7.5rem;
        overflow-y: auto;
    }

    /* Workload chips in table */
    ._chipRow_7jfoj_1469 {
        max-width: 11.25rem;
    }

    ._dataSourceChip_7jfoj_1513 {
        max-width: 10rem;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SEARCH & FILTERS
   ═══════════════════════════════════════════════════════════════════════════ */

._searchFilterRow_7jfoj_2074 {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

/* ─── Search box ─────────────────────────────────────────────────────────── */

._searchBox_7jfoj_2082 {
    position: relative;
    width: 25%;
    min-width: 12.5rem;
}

/* ─── No results (table) ─────────────────────────────────────────────────── */

._noResultsRow_7jfoj_2090 {
    padding: 0 !important;
}

._noResults_7jfoj_2090 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2.5rem 1.5rem;
    color: var(--text-disabled);
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    text-align: center;
}

._noResultsClear_7jfoj_2106 {
    margin-top: 0.25rem;
    padding: 0.25rem 0.75rem;
    background: transparent;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--blue-600);
    cursor: pointer;
    transition: all 0.15s;
}

._noResultsClear_7jfoj_2106:hover {
    background: rgba(239, 246, 255, 0.5);
    border-color: var(--blue-600);
}

/* ─── Responsive: search & filters ───────────────────────────────────────── */

@media (max-width: 48rem) {
    ._filterChips_7jfoj_2127 {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 0.25rem;
    }

    ._filterDivider_7jfoj_2134 {
        display: none;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SORTING
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Sortable column headers ────────────────────────────────────────────── */

._thSortable_7jfoj_2145 {
    cursor: pointer;
    user-select: none;
    transition: background 0.1s;
}

._thSortable_7jfoj_2145:hover {
    background: var(--surface-subtle);
}

._thContent_7jfoj_2155 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

._sortArrow_7jfoj_2161 {
    color: var(--blue-600);
    flex-shrink: 0;
    transition: transform 0.15s;
}

/* ─── Sort panel wrapper ─────────────────────────────────────────────────── */

._sortPanelWrapper_7jfoj_2169 {
    position: relative;
}

._sortIndicator_7jfoj_2173 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.25rem;
    height: 1.125rem;
    padding: 0 0.3125rem;
    background: rgba(41, 135, 194, 0.15);
    border-radius: 624.9375rem;
    font-size: 0.6875rem;
    color: var(--blue-600);
    font-family: Arial, sans-serif;
}

/* ─── Sort panel dropdown ────────────────────────────────────────────────── */

._sortPanel_7jfoj_2169 {
    position: absolute;
    top: calc(100% + 0.375rem);
    left: 0;
    z-index: 200;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.12);
    width: 21.25rem;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._sortPanelHeader_7jfoj_2205 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._sortPanelTitle_7jfoj_2211 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

._sortPanelClose_7jfoj_2218 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    background: transparent;
    border: none;
    border-radius: 0.25rem;
    color: var(--text-disabled);
    cursor: pointer;
    transition: all 0.15s;
}

._sortPanelClose_7jfoj_2218:hover {
    background: var(--slate-100);
    color: var(--text-secondary);
}

._sortPanelDesc_7jfoj_2237 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* ─── Sort row ───────────────────────────────────────────────────────────── */

._sortRow_7jfoj_2247 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._sortRowLabel_7jfoj_2253 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    white-space: nowrap;
    min-width: 5.625rem;
}

._sortSelect_7jfoj_2261 {
    flex: 1;
    height: 2rem;
    padding: 0 0.625rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    cursor: pointer;
    transition: border-color 0.15s;
    min-width: 0;
}

._sortSelect_7jfoj_2261:focus {
    border-color: var(--blue-600);
}

._sortDirBtn_7jfoj_2281 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
    flex-shrink: 0;
}

._sortDirBtn_7jfoj_2281:hover {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._sortRemoveBtn_7jfoj_2302 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: transparent;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-disabled);
    cursor: pointer;
    transition: all 0.15s;
    flex-shrink: 0;
}

._sortRemoveBtn_7jfoj_2302:hover {
    background: var(--error-50);
    border-color: var(--error-50);
    color: var(--error-500);
}

._sortClearAll_7jfoj_2323 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-tertiary);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.25rem 0;
    text-align: left;
    transition: color 0.15s;
}

._sortClearAll_7jfoj_2323:hover {
    color: var(--text-primary);
}

/* ─── Responsive: sort panel ─────────────────────────────────────────────── */

@media (max-width: 48rem) {
    ._sortPanel_7jfoj_2169 {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        border-radius: 1rem 1rem 0 0;
        z-index: 400;
        padding: 1.25rem 1rem;
    }

    ._sortRow_7jfoj_2247 {
        flex-wrap: wrap;
    }

    ._sortRowLabel_7jfoj_2253 {
        min-width: 100%;
    }

    ._sortSelect_7jfoj_2261 {
        flex: 1;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SEARCH & FILTER PANEL (Jira-style)
   ═══════════════════════════════════════════════════════════════════════════ */

._searchIcon_7jfoj_2372 {
    position: absolute;
    left: 0.625rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-disabled);
    pointer-events: none;
}

._searchInput_7jfoj_2381 {
    width: 100%;
    height: 2.125rem;
    padding: 0 2rem 0 2.125rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

._searchInput_7jfoj_2381::placeholder {
    color: var(--text-disabled);
}

._searchInput_7jfoj_2381:focus {
    border-color: var(--blue-600);
    box-shadow: 0 0 0 0.1875rem rgba(41, 135, 194, 0.1);
}

._searchClear_7jfoj_2404 {
    position: absolute;
    right: 0.375rem;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    background: var(--slate-100);
    border: none;
    border-radius: 50%;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
}

._searchClear_7jfoj_2404:hover {
    background: var(--border-subtle);
    color: var(--text-secondary);
}

/* ─── Filter panel wrapper ───────────────────────────────────────────────── */

._filterPanelWrapper_7jfoj_2429 {
    position: relative;
}

._filterBadge_7jfoj_2433 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.125rem;
    height: 1.125rem;
    padding: 0 0.3125rem;
    background: rgba(41, 135, 194, 0.15);
    border-radius: 624.9375rem;
    font-size: 0.6875rem;
    color: var(--blue-600);
    font-family: Arial, sans-serif;
}

/* ─── Filter panel dropdown ──────────────────────────────────────────────── */

._filterPanel_7jfoj_2429 {
    position: absolute;
    top: calc(100% + 0.375rem);
    left: 0;
    z-index: 200;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.12);
    width: 23.75rem;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._filterPanelHeader_7jfoj_2465 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._filterPanelTitle_7jfoj_2471 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

._filterPanelClose_7jfoj_2478 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    background: transparent;
    border: none;
    border-radius: 0.25rem;
    color: var(--text-disabled);
    cursor: pointer;
    transition: all 0.15s;
}

._filterPanelClose_7jfoj_2478:hover {
    background: var(--slate-100);
    color: var(--text-secondary);
}

._filterPanelDesc_7jfoj_2497 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* ─── Filter row ─────────────────────────────────────────────────────────── */

._filterRow_7jfoj_2507 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._filterSelect_7jfoj_2513 {
    flex: 1;
    height: 2rem;
    padding: 0 0.625rem;
    background: white;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    cursor: pointer;
    transition: border-color 0.15s;
    min-width: 0;
}

._filterSelect_7jfoj_2513:focus {
    border-color: var(--blue-600);
}

._filterSelect_7jfoj_2513:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

._filterRemoveBtn_7jfoj_2538 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    background: transparent;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-disabled);
    cursor: pointer;
    transition: all 0.15s;
    flex-shrink: 0;
}

._filterRemoveBtn_7jfoj_2538:hover {
    background: var(--error-50);
    border-color: var(--error-50);
    color: var(--error-500);
}

._filterAddBtn_7jfoj_2559 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2rem;
    padding: 0 0.75rem;
    background: white;
    border: 0.0417rem dashed var(--border-default);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    width: fit-content;
}

._filterAddBtn_7jfoj_2559:hover {
    background: var(--surface-subtle);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

/* ─── Active filters bar ─────────────────────────────────────────────────── */

._activeFiltersBar_7jfoj_2584 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

._filterResultCount_7jfoj_2591 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-disabled);
    white-space: nowrap;
}

._activeFilterTag_7jfoj_2598 {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    height: 1.5rem;
    padding: 0 0.5rem;
    background: rgba(239, 246, 255, 0.8);
    border: 0.0417rem solid var(--blue-200);
    border-radius: 624.9375rem;
    font-family: Arial, sans-serif;
    font-size: 0.6875rem;
    color: var(--blue-600);
    white-space: nowrap;
}

._activeFilterRemove_7jfoj_2613 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 0.875rem;
    height: 0.875rem;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: var(--blue-600);
    cursor: pointer;
    transition: all 0.1s;
    padding: 0;
}

._activeFilterRemove_7jfoj_2613:hover {
    background: rgba(41, 135, 194, 0.2);
}

._filterClearAll_7jfoj_2632 {
    display: inline-flex;
    align-items: center;
    height: 1.5rem;
    padding: 0 0.625rem;
    background: white;
    border: 0.0417rem solid var(--error-50);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.6875rem;
    color: var(--error-500);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

._filterClearAll_7jfoj_2632:hover {
    background: var(--error-50);
    border-color: var(--error-500);
}

/* ─── Responsive: filter panel ───────────────────────────────────────────── */

@media (max-width: 48rem) {
    ._filterPanel_7jfoj_2429 {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        border-radius: 1rem 1rem 0 0;
        z-index: 400;
        padding: 1.25rem 1rem;
    }

    ._filterRow_7jfoj_2507 {
        flex-wrap: wrap;
    }

    ._filterSelect_7jfoj_2513 {
        flex: 1 1 calc(50% - 1.25rem);
    }

    ._searchBox_7jfoj_2082 {
        width: 100%;
        min-width: 0;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   TOAST NOTIFICATIONS
   ═══════════════════════════════════════════════════════════════════════════ */

._toastContainer_7jfoj_2686 {
    position: fixed;
    top: 4.5rem;
    right: 1.5rem;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    pointer-events: none;
}

._toast_7jfoj_2686 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    background: white;
    border-radius: 0.5rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.12), 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.08);
    border-left: 0.1875rem solid var(--border-subtle);
    pointer-events: auto;
    animation: _toastIn_7jfoj_1 0.25s ease-out;
    max-width: 22.5rem;
}

._toast_success_7jfoj_2711 {
    border-left-color: var(--success-500);
}

._toast_error_7jfoj_2715 {
    border-left-color: var(--error-500);
}

._toast_info_7jfoj_2719 {
    border-left-color: var(--blue-600);
}

._toastMessage_7jfoj_2723 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    flex: 1;
    line-height: 1.4;
}

._toastClose_7jfoj_2731 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    background: transparent;
    border: none;
    border-radius: 0.25rem;
    color: var(--text-disabled);
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.1s;
}

._toastClose_7jfoj_2731:hover {
    background: var(--slate-100);
    color: var(--text-secondary);
}

@keyframes _toastIn_7jfoj_1 {
    from {
        opacity: 0;
        transform: translateX(1.25rem);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (max-width: 30rem) {
    ._toastContainer_7jfoj_2686 {
        right: 0.75rem;
        left: 0.75rem;
    }

    ._toast_7jfoj_2686 {
        max-width: 100%;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   BULK SELECTION
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Checkbox ───────────────────────────────────────────────────────────── */

._thCheck_7jfoj_2780,
._tdCheck_7jfoj_2781 {
    width: 2.5rem;
    padding: 0.625rem 0.75rem;
    text-align: center;
    vertical-align: middle;
    border-bottom: 0.0417rem solid var(--border-subtle);
}

._thCheck_7jfoj_2780 {
    background: white;
    font-size: 0.75rem;
}

/* Hide checkboxes by default, show on hover or selection mode */
._thCheck_7jfoj_2780 ._checkboxBox_7jfoj_2795,
._tdCheck_7jfoj_2781 ._checkboxBox_7jfoj_2795 {
    opacity: 0;
    transition: opacity 0.15s;
}

._thCheck_7jfoj_2780:hover ._checkboxBox_7jfoj_2795,
._tr_7jfoj_405:hover ._tdCheck_7jfoj_2781 ._checkboxBox_7jfoj_2795,
._trChecked_7jfoj_2803 ._tdCheck_7jfoj_2781 ._checkboxBox_7jfoj_2795,
._tableSelectionMode_7jfoj_2804 ._thCheck_7jfoj_2780 ._checkboxBox_7jfoj_2795,
._tableSelectionMode_7jfoj_2804 ._tdCheck_7jfoj_2781 ._checkboxBox_7jfoj_2795 {
    opacity: 1;
}

._checkboxLabel_7jfoj_2809 {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

._checkboxInput_7jfoj_2816 {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

._checkboxBox_7jfoj_2795 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    background: white;
    border: 0.0938rem solid var(--border-default);
    border-radius: 0.25rem;
    transition: all 0.15s;
    color: white;
}

._checkboxBox_7jfoj_2795:hover {
    border-color: var(--blue-600);
}

._checkboxBoxActive_7jfoj_2841 {
    background: var(--blue-600);
    border-color: var(--blue-600);
}

/* ─── Selection mode class on table ──────────────────────────────────────── */

._tableSelectionMode_7jfoj_2804 {
    /* marker class — used by child selectors above */
}

/* ─── Row checked state ──────────────────────────────────────────────────── */

._trChecked_7jfoj_2803 {
    background: rgba(239, 246, 255, 0.4) !important;
}

/* ─── Bulk action bar ────────────────────────────────────────────────────── */

._bulkBar_7jfoj_2860 {
    position: fixed;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 500;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--text-primary);
    border-radius: 0.625rem;
    box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.25);
    animation: _bulkBarIn_7jfoj_1 0.2s ease-out;
}

._bulkCount_7jfoj_2876 {
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: white;
    white-space: nowrap;
}

._bulkDeselectBtn_7jfoj_2883 {
    height: 1.875rem;
    padding: 0 0.75rem;
    background: rgba(255, 255, 255, 0.1);
    border: 0.0417rem solid rgba(255, 255, 255, 0.2);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

._bulkDeselectBtn_7jfoj_2883:hover {
    background: rgba(255, 255, 255, 0.15);
    color: white;
}

._bulkDeleteBtn_7jfoj_2902 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 1.875rem;
    padding: 0 0.875rem;
    background: var(--error-500);
    border: none;
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

._bulkDeleteBtn_7jfoj_2902:hover {
    background: var(--error-600);
}

@keyframes _bulkBarIn_7jfoj_1 {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(0.75rem);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

@media (max-width: 30rem) {
    ._bulkBar_7jfoj_2860 {
        left: 0.75rem;
        right: 0.75rem;
        transform: none;
        bottom: 0.75rem;
    }

    @keyframes _bulkBarIn_7jfoj_1 {
        from {
            opacity: 0;
            transform: translateY(0.75rem);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
}

/* ─── View Toggle (table / cards) ────────────────────────────────────── */

._viewToggle_7jfoj_2958 {
    display: flex;
    align-items: stretch;
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
    overflow: hidden;
}

._viewToggleBtn_7jfoj_2966 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 26px;
    background: white;
    border: none;
    cursor: pointer;
    color: var(--text-tertiary);
    padding: 0;
    transition: background 0.15s ease, color 0.15s ease;
}

._viewToggleBtn_7jfoj_2966:not(:first-child) {
    border-left: 0.667px solid var(--border-subtle);
}

._viewToggleBtn_7jfoj_2966:hover:not(._viewToggleBtnActive_7jfoj_2984) {
    background: var(--surface-subtle);
}

._viewToggleBtnActive_7jfoj_2984 {
    background: var(--blue-50);
    color: var(--blue-600);
}

/* ─── Server Cards (workload-level view) ─────────────────────────────── */

._serverCardsGrid_7jfoj_2995 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(20.5rem, 1fr));
    gap: 1.25rem;
    padding: 0.5rem 0;
}

._serverCard_7jfoj_2995 {
    background: white;
    border: 0.667px solid var(--border-subtle);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 0;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.06), 0 1px 2px -1px rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    cursor: pointer;
}

._serverCard_7jfoj_2995:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}

/* ─── Header section (hostname + IP + env badge) ────────────────────────── */

._serverCardHeaderSection_7jfoj_3022 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-bottom: 8px;
    border-bottom: 0.667px solid var(--border-subtle);
}

._serverCardNameRow_7jfoj_3030 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._serverCardSvgIcon_7jfoj_3036 {
    flex-shrink: 0;
    color: var(--slate-900);
}

._serverCardTitle_7jfoj_3041 {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--slate-900);
    line-height: 20px;
    margin: 0;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

._serverCardEnvBadge_7jfoj_3055 {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    padding: 2px 8px;
    border-radius: 9999px;
    white-space: nowrap;
    flex-shrink: 0;
}

._serverCardIp_7jfoj_3066 {
    font-family: 'Roboto Mono', 'Courier New', monospace;
    font-size: 11px;
    font-weight: 400;
    line-height: 16.5px;
    color: var(--text-tertiary);
    margin: 0;
}

/* ─── Status + Uptime row ───────────────────────────────────────────────── */

._serverCardStatusRow_7jfoj_3077 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
}

._serverCardStatusInline_7jfoj_3084 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._serverCardStatusDot_7jfoj_3090 {
    width: 6px;
    height: 6px;
    border-radius: 9999px;
    flex-shrink: 0;
}

._serverCardStatusText_7jfoj_3097 {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
}

._serverCardUptime_7jfoj_3104 {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    line-height: 16.5px;
    margin: 0;
}

._serverCardUptimeLabel_7jfoj_3111 {
    color: var(--text-tertiary);
    font-weight: 400;
}

._serverCardUptimeValue_7jfoj_3116 {
    color: var(--slate-900);
    font-weight: 500;
}

/* ─── Detail rows section ───────────────────────────────────────────────── */

._serverCardDetails_7jfoj_3123 {
    display: flex;
    flex-direction: column;
    margin-top: 4px;
}

._serverCardDetailRow_7jfoj_3129 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 0;
    border-bottom: 0.667px solid var(--slate-100);
    min-height: 29px;
}

._serverCardDetailRowWrap_7jfoj_3139 {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 6px 0;
    min-height: auto;
}

._serverCardDetailRowLast_7jfoj_3146 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 0 0 0;
    min-height: 32px;
}

._serverCardDetailLabel_7jfoj_3155 {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    color: var(--text-tertiary);
    letter-spacing: 0.55px;
    flex-shrink: 0;
}

._serverCardDetailValue_7jfoj_3165 {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-800);
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

._serverCardDetailValueMono_7jfoj_3177 {
    font-family: 'Roboto Mono', 'Courier New', monospace;
    font-size: 11px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-800);
    text-align: right;
}

._serverCardStatusDotSmall_7jfoj_3186 {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 9999px;
    margin-right: 6px;
    vertical-align: middle;
}

/* ─── Bar metrics (CPU / Disco) ─────────────────────────────────────────── */

._serverCardBarGroup_7jfoj_3197 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._serverCardBarTrack_7jfoj_3203 {
    width: 80px;
    height: 6px;
    background: var(--border-subtle);
    border-radius: 9999px;
    overflow: hidden;
    flex-shrink: 0;
}

._serverCardBarFill_7jfoj_3212 {
    height: 100%;
    border-radius: 9999px;
    transition: width 0.3s ease;
}

._serverCardBarValue_7jfoj_3218 {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--slate-700);
    text-align: right;
    min-width: 28px;
}

/* ─── Workload chips in card ────────────────────────────────────────────── */

._serverCardChips_7jfoj_3230 {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: flex-end;
    flex: 1;
}

._serverCardChip_7jfoj_3230 {
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 16px;
    padding: 2px 8px;
    border-radius: 9999px;
    white-space: nowrap;
}

._serverCardChipMore_7jfoj_3248 {
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 16px;
    color: var(--slate-600);
    padding: 2px 6px;
    background: var(--slate-100);
    border: 0.667px dashed var(--border-default);
    border-radius: 9999px;
    white-space: nowrap;
}

/* ─── Origin in card ────────────────────────────────────────────────────── */

._serverCardOrigin_7jfoj_3263 {
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
}

._serverCardOriginIcon_7jfoj_3270 {
    flex-shrink: 0;
    color: var(--slate-900);
}

._serverCardOriginText_7jfoj_3275 {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 400;
    line-height: 16px;
    color: var(--blue-600);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ─── Card footer counter ───────────────────────────────────────────────── */

._serverCardFooter_7jfoj_3288 {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 0 0 0;
    margin-top: 4px;
    border-top: 0.667px dashed var(--border-subtle);
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 500;
    color: var(--slate-400);
    letter-spacing: 0.2px;
}

._serverCardFooter_7jfoj_3288 svg {
    color: var(--slate-400);
    flex-shrink: 0;
}

._serverCardFooterHint_7jfoj_3307 {
    color: var(--border-default);
}


/* ─── Skeleton Loading ──────────────────────────────────────────────────── */

@keyframes _shimmer_7jfoj_1 {
    0% {
        background-position: -200% 0;
    }

    100% {
        background-position: 200% 0;
    }
}

._skeletonContainer_7jfoj_3324 {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 16px 0;
}

._skeletonToolbar_7jfoj_3331 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._skeletonBtn_7jfoj_3337 {
    width: 90px;
    height: 32px;
    border-radius: 8px;
    background: linear-gradient(90deg, var(--slate-100) 25%, var(--border-subtle) 50%, var(--slate-100) 75%);
    background-size: 200% 100%;
    animation: _shimmer_7jfoj_1 1.5s infinite ease-in-out;
}

._skeletonTable_7jfoj_3346 {
    display: flex;
    flex-direction: column;
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
    overflow: hidden;
}

._skeletonTableHeader_7jfoj_3354 {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--surface-subtle);
    border-bottom: 0.667px solid var(--border-subtle);
}

._skeletonHeaderCell_7jfoj_3363 {
    height: 12px;
    flex: 1;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--border-subtle) 25%, var(--slate-300) 50%, var(--border-subtle) 75%);
    background-size: 200% 100%;
    animation: _shimmer_7jfoj_1 1.5s infinite ease-in-out;
}

._skeletonTableRow_7jfoj_3372 {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 0.667px solid var(--slate-100);
}

._skeletonTableRow_7jfoj_3372:last-child {
    border-bottom: none;
}

._skeletonCell_7jfoj_3384 {
    height: 10px;
    flex: 1;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--slate-100) 25%, var(--border-subtle) 50%, var(--slate-100) 75%);
    background-size: 200% 100%;
    animation: _shimmer_7jfoj_1 1.5s infinite ease-in-out;
}

._skeletonTableRow_7jfoj_3372:nth-child(odd) ._skeletonCell_7jfoj_3384 {
    animation-delay: 0.15s;
}

._truncateCell_7jfoj_3397 {
  display: block;
  max-width: 300px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
._banner_17qi6_1 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: var(--color-stale-bg-hover);
  border: 0.125rem solid var(--color-stale);
  border-radius: 0.625rem;
  margin-bottom: 1rem;
}

._icon_17qi6_12 {
  flex-shrink: 0;
  margin-top: 0.125rem;
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-stale);
}

._content_17qi6_20 {
  flex: 1;
  min-width: 0;
}

._title_17qi6_25 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--color-stale-dark);
  margin: 0 0 0.25rem;
}

._message_17qi6_33 {
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--color-stale-darker);
  margin: 0;
}

._dismissButton_17qi6_40 {
  flex-shrink: 0;
  align-self: center;
  padding: 0.375rem 0.75rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--color-stale-dark);
  background: transparent;
  border: 1px solid var(--color-stale-dark);
  border-radius: 0.375rem;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, color 0.15s;
}

._dismissButton_17qi6_40:hover {
  background: var(--color-stale-dark);
  color: white;
}
/* ProjectDetailsScreen.module.css */

._projectDetailsScreen_1sa6n_3 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  overflow: hidden;
}

._mainContent_1sa6n_11 {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
}

._contentWrapper_1sa6n_18 {
  flex: 1;
  background: var(--surface-subtle);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

._content_1sa6n_18 {
  flex: 1;
  padding: 0 1.5rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Main white card */
._mainCard_1sa6n_35 {
  display: flex;
  flex-direction: column;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  flex: 1;
  min-height: 0;
}

/* Entity Header (PROJETO - Nome / WORKLOAD - Nome) */
._entityHeader_1sa6n_48 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  height: 3rem;
  padding: 0 1.5rem;
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
  flex-shrink: 0;
}

._entityIcon_1sa6n_58 {
  font-size: 1.25rem;
  line-height: 1;
}

._pulsingDot_1sa6n_63 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: white;
  animation: _pulseBlueWhite_1sa6n_1 2s ease-in-out infinite;
  margin-left: -0.375rem;
}

@keyframes _pulseBlueWhite_1sa6n_1 {

  0%,
  100% {
    background: white;
    opacity: 1;
  }

  50% {
    background: var(--blue-600);
    opacity: 0.7;
  }
}

._entityLabel_1sa6n_86 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: white;
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
  line-height: 1.25rem;
  flex: 1;
  position: relative;
}

._entityIdTooltip_1sa6n_98 {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  background: var(--slate-800);
  color: var(--slate-200);
  font-family: 'Courier New', monospace;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.025rem;
  text-transform: none;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 100;
  cursor: pointer;
  user-select: all;
}

._entityIdTooltip_1sa6n_98::before {
  content: '';
  position: absolute;
  left: 24px;
  top: -12px;
  border: 6px solid transparent;
  border-bottom-color: var(--slate-800);
}

._entityIdTooltip_1sa6n_98:active {
  background: var(--slate-700);
}

._entityLabel_1sa6n_86:hover ._entityIdTooltip_1sa6n_98 {
  opacity: 1;
  pointer-events: auto;
}

._entityId_1sa6n_98 {
  font-family: 'Courier New', monospace;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.8);
  background: rgba(0, 0, 0, 0.15);
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  letter-spacing: 0.025rem;
  cursor: help;
  transition: all 0.2s ease;
}

._entityId_1sa6n_98:hover {
  background: rgba(0, 0, 0, 0.25);
  color: white;
}

._tabsContainer_1sa6n_156 {
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
}

._cardContent_1sa6n_161 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.5rem 1.5rem 0.25rem 1.5rem;
  overflow-y: auto;
  /* CRITICAL: Scroll for all tabs EXCEPT Status */
  flex: 1;
  /* CRITICAL: Takes all available space */
  min-height: 0;
  /* CRITICAL: Allows flex child to shrink and grow */
}

/* Remove scroll and padding when Status tab is active (has fixed info cards and internal card scroll) */
._cardContent_1sa6n_161._cardContentWithFixedFooter_1sa6n_175 {
  overflow: hidden;
  /* No scroll on Status tab - cards handle their own scroll */
  padding-bottom: 0;
  /* No padding needed, cards fill available space */
}

/* Empty State */
._emptyState_1sa6n_183 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 18.75rem;
}

._emptyStateText_1sa6n_190 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  color: var(--text-disabled);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  ._content_1sa6n_18 {
    padding: 1rem;
  }
}

/* Loading and Error States */
._loadingState_1sa6n_205,
._errorState_1sa6n_206 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: var(--slate-200);
}

._loadingState_1sa6n_205 p,
._errorState_1sa6n_206 p {
  font-size: 1rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

._errorState_1sa6n_206 p {
  color: var(--error-500);
}

/* Error state additional styles */
._errorState_1sa6n_206 h2 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--error-500);
  margin-bottom: 0.75rem;
}

._errorActions_1sa6n_234 {
  display: flex;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

._retryButton_1sa6n_240,
._logoutButton_1sa6n_241 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
}

._retryButton_1sa6n_240 {
  background: var(--blue-600);
  color: white;
}

._retryButton_1sa6n_240:hover {
  background: var(--blue-700);
}

._logoutButton_1sa6n_241 {
  background: var(--error-500);
  color: white;
}

._logoutButton_1sa6n_241:hover {
  background: var(--error-600);
}

/* Breadcrumb Container with Delete Button */
._breadcrumbContainer_1sa6n_270 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.5rem;
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

/* Delete Button */
._deleteButton_1sa6n_280 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: white;
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._deleteButton_1sa6n_280:hover {
  background: rgba(239, 68, 68, 0.1);
}

/* Delete Confirmation */
._deleteConfirmation_1sa6n_302 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  background: white;
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
}

._confirmationText_1sa6n_312 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  font-weight: 500;
}

._confirmationActions_1sa6n_319 {
  display: flex;
  gap: 0.5rem;
}

._confirmYes_1sa6n_324,
._confirmNo_1sa6n_325 {
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: none;
}

._confirmYes_1sa6n_324 {
  background: var(--error-500);
  color: white;
}

._confirmYes_1sa6n_324:hover {
  background: var(--error-600);
}

._confirmNo_1sa6n_325 {
  background: var(--slate-100);
  color: var(--text-tertiary);
}

._confirmNo_1sa6n_325:hover {
  background: var(--slate-200);
}

/* Skeleton Loading Animation */
._skeleton_1sa6n_355 {
  background: linear-gradient(90deg, var(--slate-200) 25%, var(--slate-100) 50%, var(--slate-200) 75%);
  background-size: 200% 100%;
  animation: _shimmer_1sa6n_1 1.5s ease-in-out infinite;
  border-radius: 0.5rem;
}

@keyframes _shimmer_1sa6n_1 {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}/* AnalysisSectionEditor.module.css */

._editor_1vb2o_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.75rem;
  background: linear-gradient(164deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 0.5) 100%);
}

._field_1vb2o_13 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._fieldLabel_1vb2o_19 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
}

._textarea_1vb2o_27 {
  width: 100%;
  min-height: 8rem;
  padding: 0.625rem 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.375rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._textarea_1vb2o_27:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

._textarea_1vb2o_27:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._textarea_1vb2o_27::placeholder {
  color: var(--text-tertiary);
}

._saveError_1vb2o_58 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  margin: 0;
  padding: 0.5rem 0.75rem;
  background: rgba(239, 68, 68, 0.06);
  border: 0.0625rem solid rgba(239, 68, 68, 0.2);
  border-radius: 0.5rem;
}

._actions_1vb2o_69 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

._wiggleWarning_1vb2o_76 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--warning-700);
  background: var(--warning-50);
  border: 0.0625rem solid var(--warning-500);
  border-radius: 0.5rem;
  padding: 0.375rem 0.625rem;
  margin-right: auto;
  white-space: nowrap;
  animation: _shake_1vb2o_1 0.4s ease-in-out;
}

@keyframes _shake_1vb2o_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-3px); }
  40% { transform: translateX(3px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

._saveButton_1vb2o_100 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--surface-page);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._saveButton_1vb2o_100:hover:not(:disabled) {
  opacity: 0.9;
}

._saveButton_1vb2o_100:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._saveButton_1vb2o_100:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._cancelButton_1vb2o_130 {
  display: flex;
  align-items: center;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._cancelButton_1vb2o_130:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._cancelButton_1vb2o_130:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._cancelButton_1vb2o_130:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}


/* StrategyCardEditor.module.css */

._editor_1940t_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.75rem;
  background: linear-gradient(164deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 0.5) 100%);
}

._row_1940t_13 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.75rem;
}

._field_1940t_19 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._fieldLabel_1940t_25 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
}

._input_1940t_33 {
  width: 100%;
  height: 2.25rem;
  padding: 0 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._input_1940t_33:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

._input_1940t_33:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._select_1940t_58 {
  width: 100%;
  height: 2.25rem;
  padding: 0 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  outline: none;
  box-sizing: border-box;
  cursor: pointer;
  transition: border-color 0.2s ease-in-out;
}

._select_1940t_58:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

._select_1940t_58:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._textarea_1940t_84 {
  width: 100%;
  min-height: 7rem;
  padding: 0.625rem 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.375rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._textarea_1940t_84:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

._textarea_1940t_84:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._saveError_1940t_111 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  margin: 0;
  padding: 0.5rem 0.75rem;
  background: rgba(239, 68, 68, 0.06);
  border: 0.0625rem solid rgba(239, 68, 68, 0.2);
  border-radius: 0.5rem;
}

._actions_1940t_122 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._saveButton_1940t_128 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--surface-page);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._saveButton_1940t_128:hover:not(:disabled) {
  opacity: 0.9;
}

._saveButton_1940t_128:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._saveButton_1940t_128:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._cancelButton_1940t_158 {
  display: flex;
  align-items: center;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._cancelButton_1940t_158:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._cancelButton_1940t_158:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._cancelButton_1940t_158:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._wiggleWarning_1940t_187 {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--warning-700);
  background: var(--warning-50);
  border: 0.0625rem solid var(--warning-500);
  border-radius: 0.5rem;
  padding: 0.375rem 0.625rem;
  white-space: nowrap;
  animation: _shake_1940t_1 0.4s ease-in-out;
}

@keyframes _shake_1940t_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-3px); }
  40% { transform: translateX(3px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

._spinnerIcon_1940t_210 {
  animation: _spin_1940t_210 1s linear infinite;
}

@keyframes _spin_1940t_210 {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

._container_vx9an_1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  min-height: 25rem;
  padding: 1rem 1.5rem 1.5rem;
}

._centeredContent_vx9an_10 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  max-width: 37.5rem;
  text-align: center;
  margin-top: 2rem;
}

._iconContainer_vx9an_20 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5rem;
  height: 5rem;
  background: var(--indigo-700);
  border-radius: 50%;
  margin-bottom: 0.5rem;
}

._icon_vx9an_20 {
  width: 2.5rem;
  height: 2.5rem;
  filter: brightness(0) invert(1);
}

._title_vx9an_37 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 2rem;
  margin: 0;
}

._description_vx9an_46 {
  font-family: Arial, sans-serif;
  font-size: 1rem;
  color: var(--text-tertiary);
  line-height: 1.5rem;
  margin: 0;
}

._generateButton_vx9an_54 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  height: 3rem;
  padding: 0 2rem;
  background: var(--indigo-700);
  border: none;
  border-radius: 0.625rem;
  color: white;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  margin-top: 0.5rem;
}

._generateButton_vx9an_54:not(:disabled) {
  transition: opacity 0.2s ease-in-out;
}

._generateButton_vx9an_54:hover:not(:disabled) {
  opacity: 0.9;
}

._generateButton_vx9an_54:active:not(:disabled) {
  opacity: 0.8;
}

._generateButton_vx9an_54:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

._buttonIcon_vx9an_91 {
  font-size: 1.25rem;
  line-height: 1;
}

._infoBox_vx9an_96 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem;
  background: rgba(41, 135, 194, 0.05);
  border: 0.0625rem solid rgba(41, 135, 194, 0.2);
  border-radius: 0.625rem;
  margin-top: 1rem;
  width: 100%;
}

._infoIcon_vx9an_108 {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.125rem;
}

._infoText_vx9an_118 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
  text-align: left;
}

/* Loading state styles */
._progressContainer_vx9an_128 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
  margin-top: 1.5rem;
}

._progressHeader_vx9an_136 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

._progressLabel_vx9an_142 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._progressPercentage_vx9an_149 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--indigo-700);
  line-height: 1rem;
}

._progressBar_vx9an_157 {
  width: 100%;
  height: 0.5rem;
  background: var(--border-subtle);
  border-radius: 624.9375rem;
  overflow: hidden;
}

._progressFill_vx9an_165 {
  height: 100%;
  background: linear-gradient(90deg, var(--indigo-500) 0%, var(--indigo-700) 100%);
  border-radius: 624.9375rem;
  transition: width 0.3s ease-out;
}

._infoBoxBlue_vx9an_172 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.75rem;
  background: var(--blue-50);
  border: 0.0625rem solid var(--blue-200);
  border-radius: 0.625rem;
  margin-top: 0.75rem;
  width: 100%;
}

._infoTextSmall_vx9an_184 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1.2188rem;
  margin: 0;
  text-align: left;
}

._stepsList_vx9an_193 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 2rem;
  width: 100%;
}

._stepItem_vx9an_201 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  transition: opacity 0.3s ease-in-out;
}

._stepItem_vx9an_201 {
  transition: opacity 0.4s ease-in-out;
}

._stepItemActive_vx9an_212 {}

._stepDot_vx9an_214 {
  width: 2rem;
  height: 2rem;
  background: var(--indigo-50);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  position: relative;
  transition: width 0.3s ease-in-out, height 0.3s ease-in-out, background 0.3s ease-in-out;
}

._stepDotActive_vx9an_227 {
  width: 2.5rem;
  height: 2.5rem;
  background: var(--indigo-200);
  box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15);
  animation: _pulse_vx9an_1 1.4s ease-in-out infinite;
}

@keyframes _pulse_vx9an_1 {

  0%,
  100% {
    box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15);
  }

  50% {
    box-shadow: 0 0 0 0.5rem rgba(152, 16, 250, 0.08);
  }
}

._stepDot_vx9an_214::after {
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  background: var(--indigo-700);
  border-radius: 50%;
  position: absolute;
  transition: width 0.3s ease-in-out, height 0.3s ease-in-out;
}

._stepDotActive_vx9an_227::after {
  width: 0.625rem;
  height: 0.625rem;
}

._stepText_vx9an_262 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--slate-600);
  line-height: 1rem;
  transition: font-size 0.3s ease-in-out, color 0.3s ease-in-out, font-weight 0.3s ease-in-out;
}

._stepTextActive_vx9an_270 {
  color: var(--indigo-900);
  font-weight: 700;
  font-size: 1rem;
}

/* Loading dots for active step */
._loadingDots_vx9an_277 {
  display: inline-flex;
  gap: 0.2rem;
  margin-left: 0.25rem;
  align-items: center;
}

._loadingDots_vx9an_277 span {
  width: 0.25rem;
  height: 0.25rem;
  background: var(--indigo-700);
  border-radius: 50%;
  animation: _dot-bounce_vx9an_1 1.2s ease-in-out infinite;
}

._loadingDots_vx9an_277 span:nth-child(2) {
  animation-delay: 0.2s;
}

._loadingDots_vx9an_277 span:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes _dot-bounce_vx9an_1 {

  0%,
  80%,
  100% {
    transform: translateY(0);
    opacity: 0.4;
  }

  40% {
    transform: translateY(-0.3rem);
    opacity: 1;
  }
}

/* Results state styles */
._resultsContainer_vx9an_316 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
}

._resultsHeader_vx9an_323 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._regenerateButton_vx9an_329 {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: linear-gradient(135deg, var(--indigo-500) 0%, var(--indigo-700) 100%);
  color: var(--surface-page);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease;
}

._regenerateButton_vx9an_329:hover {
  background: linear-gradient(135deg, var(--indigo-700) 0%, var(--indigo-500) 100%);
}

._regenerateButton_vx9an_329:focus-visible {
  outline: 2px solid var(--indigo-700);
  outline-offset: 2px;
}

._regenerateButton_vx9an_329:active {
  background: linear-gradient(135deg, var(--indigo-800) 0%, var(--indigo-700) 100%);
}

._headerIcon_vx9an_359 {
  width: 2.5rem;
  height: 2.5rem;
  background: var(--indigo-50);
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._headerIcon_vx9an_359 svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--indigo-700);
}

._headerIconEmoji_vx9an_376 {
  font-size: 1.25rem;
  line-height: 1;
}

._headerContent_vx9an_381 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex: 1;
}

._resultsTitle_vx9an_388 {
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._resultsSubtitle_vx9an_397 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-600);
  line-height: 1.25rem;
  margin: 0;
}

._accordionList_vx9an_405 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._accordionItem_vx9an_411 {
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  overflow: hidden;
  transition: all 0.2s ease-in-out;
}

._accordionItemExpanded_vx9an_419 {
  border-color: var(--border-default);
}

._accordionItemValidated_vx9an_423 {
  background: rgba(236, 254, 255, 0.3);
  border-color: var(--success-500) !important;
}

._accordionButton_vx9an_428 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._accordionButton_vx9an_428:hover {
  background: rgba(0, 0, 0, 0.02);
}

._accordionHeader_vx9an_444 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

._accordionHeader_vx9an_444 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

._headerReviewSection_vx9an_458 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
  margin-right: 1.5rem;
}

._headerReviewQuestion_vx9an_466 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--slate-600);
  line-height: 1rem;
  margin: 0;
  white-space: nowrap;
}

._headerReviewButtons_vx9an_476 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

._headerReviewButtonsVisible_vx9an_485 {
  opacity: 1;
  pointer-events: auto;
}

._headerReviewLabel_vx9an_490 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--slate-600);
  white-space: nowrap;
  margin-right: 0.25rem;
}

._headerReviewButton_vx9an_476 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  background: white;
  border: 0.09375rem solid var(--slate-400);
  border-radius: 0.625rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._headerReviewButton_vx9an_476 svg {
  width: 1rem;
  height: 1rem;
}

._headerReviewButton_vx9an_476 svg path {
  stroke: var(--slate-400);
  transition: stroke 0.2s ease-in-out;
}

/* Approve button hover — light green */
._headerReviewButton_vx9an_476:first-of-type:hover {
  background: rgba(16, 185, 129, 0.08);
  border-color: var(--success-500);
}

._headerReviewButton_vx9an_476:first-of-type:hover svg path {
  stroke: var(--success-500);
}

/* Reject button hover — light red */
._headerReviewButton_vx9an_476:last-of-type:hover {
  background: rgba(239, 68, 68, 0.08);
  border-color: var(--error-500);
}

._headerReviewButton_vx9an_476:last-of-type:hover svg path {
  stroke: var(--error-500);
}

/* Approved state — light green bg + green border + green icon */
._headerReviewButtonApproved_vx9an_545 {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
  cursor: default;
}

._headerReviewButtonApproved_vx9an_545 svg path {
  stroke: var(--success-500);
}

._headerReviewButtonApproved_vx9an_545:hover {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
}

._headerReviewButtonApproved_vx9an_545:hover svg path {
  stroke: var(--success-500);
}

/* Rejected/editing cancel state — filled red + white icon */
._headerReviewButtonRejected_vx9an_565 {
  background: var(--error-500);
  border-color: var(--error-500);
}

._headerReviewButtonRejected_vx9an_565 svg path {
  stroke: white;
}

._headerReviewButtonRejected_vx9an_565:hover {
  background: var(--error-600);
  border-color: var(--error-600);
}

._headerReviewButtonRejected_vx9an_565:hover svg path {
  stroke: white;
}

/* Editing save button — filled green + white icon */
._headerReviewButtonSave_vx9an_584 {
  background: var(--success-500);
  border-color: var(--success-500);
}

._headerReviewButtonSave_vx9an_584 svg path {
  stroke: white;
}

._headerReviewButtonSave_vx9an_584:hover {
  background: var(--success-600);
  border-color: var(--success-600);
}

._headerReviewButtonSave_vx9an_584:hover svg path {
  stroke: white;
}

._accordionIcon_vx9an_602 {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._accordionIcon_vx9an_602 svg {
  width: 1.25rem;
  height: 1.25rem;
}

._accordionIconEmoji_vx9an_617 {
  font-size: 1.25rem;
  line-height: 1;
}

._accordionTitleContainer_vx9an_622 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  text-align: left;
  flex: 1;
}

._accordionTitle_vx9an_622 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
}

._accordionRight_vx9an_639 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._validatedBadge_vx9an_645 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  height: 1.5rem;
  padding: 0 0.625rem;
  background: rgba(16, 185, 129, 0.12);
  border: 0.0625rem solid var(--success-500);
  border-radius: 624.9375rem;
  color: var(--success-600);
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
}

._validatedBadge_vx9an_645 svg {
  width: 0.75rem;
  height: 0.75rem;
}

._validatedBadge_vx9an_645 svg path {
  stroke: var(--success-600);
}

._accordionDescription_vx9an_672 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._accordionChevron_vx9an_680 {
  flex-shrink: 0;
  transition: transform 0.2s ease-in-out;
}

._accordionChevronOpen_vx9an_685 {
  transform: rotate(180deg);
}

._accordionCollapsible_vx9an_689 {
  overflow: hidden;
  transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

._accordionContent_vx9an_694 {
  padding: 0 1rem 1rem 1rem;
}

._contentSection_vx9an_698 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

._sectionTitle_vx9an_705 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--slate-800);
  line-height: 1.25rem;
  margin: 0;
}

._sectionText_vx9an_714 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.375rem;
  margin: 0;
  white-space: pre-wrap;
}

._painsList_vx9an_724 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._painItem_vx9an_733 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.375rem;
  padding-left: 1.25rem;
  position: relative;
}

._painItem_vx9an_733::before {
  content: '•';
  position: absolute;
  left: 0.5rem;
  color: var(--text-tertiary);
  font-weight: 700;
}

._contentHeader_vx9an_751 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._contentIcon_vx9an_757 {
  font-size: 1rem;
  line-height: 1;
}

._contentTitle_vx9an_762 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
}

._contentText_vx9an_771 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
  padding-left: 1.5rem;
}

._reviewSection_vx9an_780 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 0.0625rem solid var(--border-subtle);
  margin-top: 0.5rem;
}

._reviewQuestion_vx9an_790 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
  flex-shrink: 0;
}

._reviewButtons_vx9an_800 {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

._reviewButton_vx9an_800 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 1rem;
  background: white;
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  color: var(--slate-600);
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._reviewButton_vx9an_800:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
}

._reviewButton_vx9an_800 svg {
  width: 1rem;
  height: 1rem;
}

._reviewButtonApproved_vx9an_832 {
  background: var(--success-50);
  border-color: var(--success-500);
  color: var(--success-600);
}

._reviewButtonApproved_vx9an_832:hover {
  background: var(--success-50);
}

._reviewButtonReject_vx9an_842 {
  color: var(--error-600);
}

._reviewButtonRejected_vx9an_846 {
  background: var(--error-50);
  border-color: var(--error-500);
  color: var(--error-600);
}

._reviewButtonRejected_vx9an_846:hover {
  background: var(--error-50);
}

._accordionText_vx9an_856 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
}

/* Strategies grid */
._strategiesGrid_vx9an_865 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-top: 0.5rem;
  align-items: stretch;
}

._strategyCard_vx9an_873 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.625rem;
  border: 2px solid;
  border-radius: 1rem;
  transition: all 0.2s ease-in-out;
  box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.1), 0px 4px 6px 0px rgba(0, 0, 0, 0.1);
  height: 100%;
  box-sizing: border-box;
}

/* Conservative strategy - cyan theme */
._strategyCard_vx9an_873[data-approach="conservative"] {
  background: linear-gradient(123.99deg, rgb(236, 254, 255) 0%, rgb(255, 255, 255) 100%);
  border-color: var(--cyan-400);
}

/* Modernized strategy - purple theme */
._strategyCard_vx9an_873[data-approach="modernized"] {
  background: linear-gradient(123.99deg, var(--indigo-50) 0%, var(--surface-page) 100%);
  border-color: var(--indigo-200);
}

._strategyCardValidated_vx9an_898 {
  background: var(--success-50);
  border-color: var(--success-500);
}

._strategyCardHeader_vx9an_903 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._strategyHeaderLeft_vx9an_909 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

._strategyIconContainer_vx9an_916 {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* Conservative icon background - cyan */
._strategyCard_vx9an_873[data-approach="conservative"] ._strategyIconContainer_vx9an_916 {
  background: var(--cyan-100);
}

/* Modernized icon background - purple */
._strategyCard_vx9an_873[data-approach="modernized"] ._strategyIconContainer_vx9an_916 {
  background: var(--indigo-50);
}

._strategyIcon_vx9an_916 {
  width: 1.25rem;
  height: 1.25rem;
}

._strategyTitleContainer_vx9an_941 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex: 1;
}

._strategyCardTitle_vx9an_948 {
  font-family: Inter, Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.5rem;
  margin: 0;
}

._recommendedBadge_vx9an_957 {
  display: inline-flex;
  align-items: center;
  height: 1.25rem;
  padding: 0 0.5rem;
  background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%);
  border-radius: 624.9375rem;
  color: white;
  font-family: Arial, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  width: fit-content;
}

._strategySubtitle_vx9an_974 {
  font-family: Inter, Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._strategySummary_vx9an_983 {
  font-family: Inter, Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.4219rem;
  margin: 0;
  white-space: pre-wrap;
}

/* Summary accordion */
._summaryAccordionWrapper_vx9an_993 {
  position: relative;
  cursor: pointer;
  border-radius: 0.5rem;
  padding-right: 1.5rem;
  /* space for the chevron */
  transition: background 0.15s ease;
}

._summaryAccordionWrapper_vx9an_993:hover {
  background: rgba(0, 0, 0, 0.03);
}

._summaryAccordionWrapper_vx9an_993:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._summaryAccordion_vx9an_993 {
  position: relative;
  max-height: 11.375rem;
  /* ~8 lines */
  overflow: hidden;
  transition: max-height 0.35s ease;
}

._summaryExpanded_vx9an_1019 {
  max-height: 62.5rem;
  /* large enough for any content */
}

._summaryFade_vx9an_1024 {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4rem;
  pointer-events: none;
}

/* Match fade color to each card theme */
._strategyCard_vx9an_873[data-approach="conservative"] ._summaryFade_vx9an_1024 {
  background: linear-gradient(to bottom, transparent, var(--cyan-50));
}

._strategyCard_vx9an_873[data-approach="modernized"] ._summaryFade_vx9an_1024 {
  background: linear-gradient(to bottom, transparent, var(--indigo-50));
}

._summaryChevron_vx9an_1042 {
  position: absolute;
  top: 0.1rem;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  color: var(--slate-600);
  opacity: 0.6;
  transition: transform 0.25s ease, opacity 0.15s ease;
}

._summaryAccordionWrapper_vx9an_993:hover ._summaryChevron_vx9an_1042 {
  opacity: 1;
}

._summaryChevronExpanded_vx9an_1060 {
  transform: rotate(180deg);
}

/* Metrics - individual rows with white background */
._metricsGrid_vx9an_1065 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._metricItem_vx9an_1071 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 2.333rem;
  padding: 0.042rem 0.792rem;
  background: white;
  border: 0.667px solid var(--border-subtle);
  border-radius: 0.25rem;
}

._metricLabel_vx9an_1082 {
  font-family: Inter, Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--slate-600);
  line-height: 1rem;
}

._metricValue_vx9an_1090 {
  font-family: Inter, Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  color: var(--slate-900);
}

/* Metric value colors */
._metricValue_vx9an_1090[data-risk="Baixo"] {
  color: var(--cyan-600);
}

._metricValue_vx9an_1090[data-efficiency="Muito Alta"],
._metricValue_vx9an_1090[data-resources="Elevado"] {
  color: var(--indigo-700);
}

/* Prós and Contras in 2 columns */
._prosConsGrid_vx9an_1109 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  flex: 1;
  align-items: start;
}

._prosColumn_vx9an_1117,
._consColumn_vx9an_1118 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._prosConsTitle_vx9an_1124 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Inter, Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--slate-900);
  line-height: 1rem;
  margin: 0 0 0.25rem 0;
}

._prosIcon_vx9an_1136,
._consIcon_vx9an_1137 {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._prosIcon_vx9an_1136 {
  background: var(--cyan-100);
}

._consIcon_vx9an_1137 {
  background: var(--error-50);
}

._prosIcon_vx9an_1136 svg,
._consIcon_vx9an_1137 svg {
  width: 0.75rem;
  height: 0.75rem;
}

._prosList_vx9an_1161,
._consList_vx9an_1162 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

._prosItem_vx9an_1171,
._consItem_vx9an_1172 {
  font-family: Inter, Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--slate-600);
  line-height: 1rem;
  padding-left: 0.6875rem;
  position: relative;
}

._prosItem_vx9an_1171::before {
  content: '•';
  position: absolute;
  left: 0;
  color: var(--cyan-500);
  font-weight: 400;
}

._consItem_vx9an_1172::before {
  content: '•';
  position: absolute;
  left: 0;
  color: var(--error-500);
  font-weight: 400;
}

/* Detalhar Estratégia button */
._detailStrategyButton_vx9an_1199 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 1.5rem;
  background: var(--indigo-700);
  border: none;
  border-radius: 0.625rem;
  color: white;
  font-family: Inter, Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  margin-top: auto;
  flex-shrink: 0;
}

._detailStrategyButton_vx9an_1199:hover {
  background: var(--indigo-700);
}

._detailStrategyButton_vx9an_1199:active {
  background: var(--indigo-700);
}

._detailStrategyButton_vx9an_1199:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

._detailStrategyButtonSelected_vx9an_1233 {
  background: var(--success-500);
}

._detailStrategyButtonSelected_vx9an_1233:hover {
  background: var(--success-600);
}

._detailStrategyButtonCompleted_vx9an_1241 {
  background: var(--blue-600);
}

._detailStrategyButtonCompleted_vx9an_1241:hover {
  background: var(--blue-700);
}

._detailStrategyButton_vx9an_1199 svg {
  width: 1rem;
  height: 1rem;
}

/* Review row inside strategy card */
._cardReviewRow_vx9an_1255 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.75rem;
  border-top: 0.0625rem solid var(--border-subtle);
  margin-top: 0.25rem;
}

._cardReviewQuestion_vx9an_1264 {
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--slate-600);
  margin: 0;
}

/* Mount error — shown on initial screen when a workflow_id existed but fetch failed */
._mountErrorBox_vx9an_1273 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem;
  background: rgba(239, 68, 68, 0.05);
  border: 0.0625rem solid rgba(239, 68, 68, 0.3);
  border-radius: 0.625rem;
  width: 100%;
}

._mountErrorText_vx9an_1284 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  line-height: 1.25rem;
  margin: 0;
  text-align: left;
}

/* Amber border applied to accordion item when its section is being edited */
._accordionItemEditing_vx9an_1294 {
  border-color: var(--warning-500) !important;
}

/* Objectives bulleted list — same style as painsList / painItem */
._objectivesList_vx9an_1299 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._objectivesItem_vx9an_1308 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.375rem;
  padding-left: 1.25rem;
  position: relative;
}

._objectivesItem_vx9an_1308::before {
  content: '•';
  position: absolute;
  left: 0.5rem;
  color: var(--text-tertiary);
  font-weight: 700;
}

._spinnerIcon_vx9an_1326 {
  animation: _spin_vx9an_1326 0.8s linear infinite;
}

@keyframes _spin_vx9an_1326 {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}/* DetailedAnalysisTab.module.css */

._container_1i0t5_3 {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
    height: 100%;
}

._strategiesContainer_1i0t5_11 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    width: 100%;
    align-items: start;
}

/* Strategy Card - Both cards identical styling */
._strategyCard_1i0t5_20 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 26px;
    background: rgba(236, 253, 245, 0.3);
    border: 2px solid var(--success-500);
    border-radius: 14px;
}

/* Unselected card - gray border and white background */
._strategyCardUnselected_1i0t5_31 {
    background: white;
    border: 2px solid var(--border-subtle);
}

._strategyHeaderSection_1i0t5_36 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

._strategyHeader_1i0t5_36 {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

._strategyIconContainer_1i0t5_49 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

._strategyIcon_1i0t5_49 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}

._strategyIcon_1i0t5_49 svg {
    width: 20px;
    height: 20px;
}

._strategyTitleContainer_1i0t5_72 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

._strategyTitle_1i0t5_72 {
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: var(--slate-900);
    margin: 0;
}

._strategySubtitle_1i0t5_88 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-600);
    margin: 0;
}

._selectedBadge_1i0t5_97 {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 12px;
    height: 24px;
    background: var(--success-600);
    border-radius: 9999px;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    flex-shrink: 0;
}

._selectedBadge_1i0t5_97 svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

._chooseStrategyButton_1i0t5_119 {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 10px;
    height: 30px;
    background: var(--slate-100);
    border: 0.667px solid var(--border-default);
    border-radius: 10px;
    color: var(--slate-700);
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s, border-color 0.15s, opacity 0.15s;
    overflow: visible;
}

._chooseStrategyButton_1i0t5_119:hover:not(:disabled) {
    background: var(--border-subtle);
    border-color: var(--slate-400);
}

._chooseStrategyButton_1i0t5_119:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

._chooseStrategyButton_1i0t5_119:focus-visible {
    outline: 2px solid var(--blue-600);
    outline-offset: 2px;
}

._chooseStrategyButton_1i0t5_119 svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    display: block;
}

/* Loading spinner for button */
@keyframes _buttonSpin_1i0t5_1 {
    to {
        transform: rotate(360deg);
    }
}

._chooseStrategyButton_1i0t5_119:disabled svg {
    animation: _buttonSpin_1i0t5_1 0.8s linear infinite;
}

._strategyDescription_1i0t5_172 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-700);
    margin: 0;
    white-space: pre-wrap;
}

/* Accordion List */
._accordionList_1i0t5_183 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._accordionItem_1i0t5_189 {
    display: flex;
    flex-direction: column;
    background: white;
    border: 0.0625rem solid var(--border-subtle);
    border-radius: 0.625rem;
    overflow: hidden;
    transition: all 0.2s ease-in-out;
}

._accordionItemExpanded_1i0t5_199 {
    border-color: var(--border-default);
}

._accordionButton_1i0t5_203 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    background: transparent;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
}

._accordionHeader_1i0t5_215 {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

._accordionIconContainer_1i0t5_222 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

._accordionIcon_1i0t5_222 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}

._accordionIcon_1i0t5_222 svg {
    width: 20px;
    height: 20px;
}

._accordionTitleContainer_1i0t5_245 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

._accordionTitle_1i0t5_245 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._accordionSubtitle_1i0t5_261 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

._accordionChevron_1i0t5_270 {
    flex-shrink: 0;
    transition: transform 0.2s ease-in-out;
    margin-right: 8px;
    margin-left: 12px;
}

._accordionChevronOpen_1i0t5_277 {
    transform: rotate(180deg);
}

._accordionContent_1i0t5_281 {
    padding: 0 18px 32px 18px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-700);
}

._accordionCollapsible_1i0t5_290 {
    /* height and transition are set inline for dynamic animation */
}

._accordionContent_1i0t5_281>p {
    margin: 0;
    padding-left: 52px;
}

/* Pros & Cons expanded content */
._prosConsContainer_1i0t5_300 {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 8px;
}

._prosSection_1i0t5_307 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._prosSectionHeader_1i0t5_313 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._prosIconBadge_1i0t5_319 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: var(--success-50);
    border-radius: 4px;
    flex-shrink: 0;
}

._prosSectionTitle_1i0t5_330 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._prosList_1i0t5_339 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._prosItem_1i0t5_348 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 24px;
    color: var(--slate-700);
}

._prosBullet_1i0t5_358 {
    color: var(--success-500);
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
}

/* Divider between pros and cons */
._consDivider_1i0t5_366 {
    width: 100%;
    height: 0.667px;
    background: var(--border-subtle);
    margin: 16px 0;
}

._consSection_1i0t5_373 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._consSectionHeader_1i0t5_379 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._consIconBadge_1i0t5_385 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: var(--error-50);
    border-radius: 4px;
    flex-shrink: 0;
}

._consSectionTitle_1i0t5_396 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._consList_1i0t5_405 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._consItem_1i0t5_414 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 24px;
    color: var(--slate-700);
}

._consBullet_1i0t5_424 {
    color: var(--error-500);
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
}

/* Feedback Section */
._feedbackSection_1i0t5_432 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 0.667px solid var(--border-subtle);
}

._feedbackDivider_1i0t5_441 {
    display: none;
}

._feedbackQuestion_1i0t5_445 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-600);
    margin: 0;
}

._requiredAsterisk_1i0t5_454 {
    color: var(--error-600);
}

._feedbackButtons_1i0t5_458 {
    display: flex;
    gap: 6px;
}

._feedbackButton_1i0t5_458 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    background: white;
    border: 0.09375rem solid var(--slate-400);
    border-radius: 0.625rem;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-900);
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

._feedbackButton_1i0t5_458 svg {
    flex-shrink: 0;
    color: var(--slate-400);
    transition: color 0.2s ease-in-out;
}

._feedbackButton_1i0t5_458 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

/* Approve button hover — light green */
._feedbackButtonApprove_1i0t5_494:hover {
    background: rgba(16, 185, 129, 0.08);
    border-color: var(--success-500);
}

._feedbackButtonApprove_1i0t5_494:hover svg path {
    stroke: var(--success-500);
}

/* Reject button hover — light red */
._feedbackButtonReject_1i0t5_504:hover {
    background: rgba(239, 68, 68, 0.08);
    border-color: var(--error-500);
}

._feedbackButtonReject_1i0t5_504:hover svg path {
    stroke: var(--error-500);
}

/* Approved active state */
._feedbackButtonActive_1i0t5_514 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._feedbackButtonActive_1i0t5_514 svg path {
    stroke: var(--success-500);
}

._feedbackButtonActive_1i0t5_514:hover {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._feedbackButtonActive_1i0t5_514:hover svg path {
    stroke: var(--success-500);
}

/* Rejected active state — filled red */
._feedbackButtonRejectActive_1i0t5_533 {
    background: var(--error-500);
    border-color: var(--error-500);
}

._feedbackButtonRejectActive_1i0t5_533 svg path {
    stroke: white;
}

._feedbackButtonRejectActive_1i0t5_533:hover {
    background: var(--error-600);
    border-color: var(--error-600);
}

._feedbackButtonRejectActive_1i0t5_533:hover svg path {
    stroke: white;
}

/* Costs Section */
._costsContainer_1i0t5_552 {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 8px;
}

/* Cost Tabs */
._costTabs_1i0t5_560 {
    display: flex;
    border: 0.667px solid var(--border-subtle);
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 16px;
}

._costTab_1i0t5_560 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 8px 4px;
    background: var(--surface-page);
    border: none;
    border-right: 0.667px solid var(--border-subtle);
    cursor: pointer;
    transition: background 0.15s ease-in-out;
}

._costTab_1i0t5_560:last-child {
    border-right: none;
}

._costTabActive_1i0t5_587 {
    background: var(--blue-600);
}

._costTabDisabled_1i0t5_591 {
    background: var(--slate-200);
    cursor: not-allowed;
    opacity: 0.5;
}

._costTabDisabled_1i0t5_591 ._costTabLabel_1i0t5_597,
._costTabDisabled_1i0t5_591 ._costTabSub_1i0t5_598 {
    color: var(--slate-400);
}

._costTabLabel_1i0t5_597 {
    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: var(--slate-600);
    white-space: nowrap;
}

._costTabActive_1i0t5_587 ._costTabLabel_1i0t5_597 {
    color: white;
}

._costTabSub_1i0t5_598 {
    font-family: Arial, sans-serif;
    font-size: 10px;
    font-weight: 500;
    color: var(--text-tertiary);
}

._costTabActive_1i0t5_587 ._costTabSub_1i0t5_598 {
    color: white;
}

._costTabSavingsBadge_1i0t5_625 {
    background: var(--success-50);
    color: var(--success-500);
    font-family: Arial, sans-serif;
    font-size: 10px;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 99px;
    white-space: nowrap;
}

._costTabSavingsBadgeActive_1i0t5_636 {
    background: rgba(255, 255, 255, 0.25);
    color: white;
}

._costsList_1i0t5_641 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._costRow_1i0t5_647 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 44px;
    padding: 0 12px;
    background: var(--surface-subtle);
    border-radius: 10px;
}

._costRegionColumn_1i0t5_657 {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    border-radius: 10px;
    background: var(--surface-subtle);
}

._costRegionLabel_1i0t5_667 {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--slate-500);
    margin-bottom: 4px;
}

._costRowHighlighted_1i0t5_676 {
    background: var(--success-50);
    border: 0.667px solid var(--success-500);
}

._costLabel_1i0t5_681 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-700);
}

._costLabelHighlighted_1i0t5_689 {
    color: var(--success-600);
}

._costValue_1i0t5_693 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
}

._costsDivider_1i0t5_700 {
    width: 100%;
    height: 0.667px;
    background: var(--border-subtle);
    margin: 16px 0;
}

._costsButton_1i0t5_707 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 36px;
    background: white;
    border: 0.667px solid var(--success-500);
    border-radius: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--success-600);
    cursor: pointer;
    transition: background 0.2s ease-in-out;
}

._costsButton_1i0t5_707:hover {
    background: var(--costs-btn-hover-bg, var(--success-50));
}

/* Architecture Section */
._architectureContainer_1i0t5_731 {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 8px;
}

._archIntro_1i0t5_738 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 22.75px;
    color: var(--slate-700);
    margin: 0 0 12px 0;
    white-space: pre-wrap;
}

._archList_1i0t5_747 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0 0 0 0;
}

._archItem_1i0t5_756 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 20px;
    color: var(--slate-700);
}

._archBullet_1i0t5_766 {
    color: var(--success-600);
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

._archLabel_1i0t5_774 {
    font-weight: 700;
    color: var(--slate-900);
}

._archText_1i0t5_779 {
    font-weight: 400;
    color: var(--slate-700);
    white-space: pre-wrap;
}

._sectionContent_1i0t5_785 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 22.75px;
    color: var(--slate-700);
    margin: 0;
    white-space: pre-wrap;
}

._archDivider_1i0t5_794 {
    width: 100%;
    height: 0.667px;
    background: var(--border-subtle);
    margin: 16px 0;
}

/* Pre-selection state button */
._detailStrategyButton_1i0t5_802 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 36px;
    width: 100%;
    padding: 0 16px;
    background: var(--indigo-700);
    border: none;
    border-radius: 10px;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 14px;
    cursor: pointer;
    opacity: 1;
    margin-top: 8px;
    flex-shrink: 0;
    transition: opacity 0.2s ease-in-out;
}

._detailStrategyButton_1i0t5_802:hover:not(:disabled) {
    opacity: 0.9;
}

._detailStrategyButton_1i0t5_802:disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

/* Pricing agent trigger button */
._pricingAgentButton_1i0t5_833 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 36px;
    background: var(--indigo-700);
    border: none;
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.25rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
    margin-top: 8px;
}

._pricingAgentButton_1i0t5_833:hover:not(:disabled) {
    opacity: 0.9;
}

._pricingAgentButton_1i0t5_833:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

._pricingAgentButtonSmall_1i0t5_862 {
    padding: 8px 12px;
    font-size: 0.75rem;
    width: auto;
    flex-shrink: 0;
}

/* Additional Info Section */
._additionalContainer_1i0t5_870 {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 8px;
}

._additionalSection_1i0t5_877 {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

._additionalSection_1i0t5_877+._additionalSection_1i0t5_877 {
    padding-top: 12px;
    border-top: 0.667px solid var(--border-subtle);
}

._additionalTitle_1i0t5_888 {
    font-family: Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 18px;
    color: var(--slate-900);
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

._additionalList_1i0t5_899 {
    display: flex;
    flex-direction: column;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._additionalItem_1i0t5_908 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 20px;
    color: var(--slate-700);
}

._additionalBullet_1i0t5_918 {
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
    margin-top: 1px;
}

._additionalEmpty_1i0t5_925 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    color: var(--text-tertiary);
    margin: 0;
    padding-top: 8px;
}

/* Loading indicator */
._loadingIndicator_1i0t5_934 {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    margin-top: 12px;
    background: rgba(41, 135, 194, 0.06);
    border: 1px solid rgba(41, 135, 194, 0.2);
    border-radius: 8px;
}

._loadingSpinner_1i0t5_945 {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(41, 135, 194, 0.25);
    border-top-color: var(--blue-600);
    border-radius: 50%;
    flex-shrink: 0;
    animation: _spin_1i0t5_1 0.8s linear infinite;
}

._loadingText_1i0t5_956 {
    font-family: Arial, sans-serif;
    font-size: 13px;
    color: var(--blue-600);
}

@keyframes _spin_1i0t5_1 {
    to {
        transform: rotate(360deg);
    }
}

/* Cards loading state */
._cardsLoadingWrapper_1i0t5_969 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 80px 24px;
    flex: 1;
}

._cardsLoadingWrapper_1i0t5_969 ._loadingText_1i0t5_956 {
    font-size: 14px;
    color: var(--text-tertiary);
}

/* ─── Header review buttons — fade in when accordion is expanded ─── */
._headerReviewButtons_1i0t5_985 {
    display: flex;
    align-items: center;
    gap: 6px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

._headerReviewButtonsVisible_1i0t5_994 {
    opacity: 1;
    pointer-events: auto;
}

._headerReviewButton_1i0t5_985 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    background: white;
    border: 0.09375rem solid var(--slate-400);
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

._headerReviewButton_1i0t5_985 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

._headerReviewButton_1i0t5_985:hover:not(:disabled) {
    background: var(--surface-subtle);
}

._headerReviewButton_1i0t5_985:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

._headerReviewButton_1i0t5_985:focus-visible {
    outline: 2px solid var(--blue-600);
    outline-offset: 2px;
}

/* Approve button (check) — green hover when not selected */
._headerReviewButtonCheck_1i0t5_1034:hover:not(:disabled) {
    background: rgba(16, 185, 129, 0.08);
    border-color: var(--success-500);
}

._headerReviewButtonCheck_1i0t5_1034:hover:not(:disabled) svg path {
    stroke: var(--success-500);
}

/* Reject button (X) — red hover when not selected */
._headerReviewButtonCross_1i0t5_1044:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.08);
    border-color: var(--error-500);
}

._headerReviewButtonCross_1i0t5_1044:hover:not(:disabled) svg path {
    stroke: var(--error-500);
}

._headerReviewButtonApproved_1i0t5_1053 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
    cursor: default;
}

._headerReviewButtonApproved_1i0t5_1053 svg path {
    stroke: var(--success-500);
}

._headerReviewButtonApproved_1i0t5_1053:hover {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._headerReviewButtonApproved_1i0t5_1053:hover svg path {
    stroke: var(--success-500);
}

._headerReviewButtonSave_1i0t5_1072 {
    background: var(--success-500);
    border-color: var(--success-500);
    color: white;
}

._headerReviewButtonSave_1i0t5_1072 svg path {
    stroke: white;
}

._headerReviewButtonSave_1i0t5_1072:hover:not(:disabled) {
    background: var(--success-600);
    border-color: var(--success-600);
}

._headerReviewButtonSave_1i0t5_1072:hover:not(:disabled) svg path {
    stroke: white;
}

._headerReviewButtonRejected_1i0t5_1091 {
    background: var(--error-500);
    border-color: var(--error-500);
    color: white;
}

._headerReviewButtonRejected_1i0t5_1091 svg path {
    stroke: white;
}

._headerReviewButtonRejected_1i0t5_1091:hover:not(:disabled) {
    background: var(--error-600);
    border-color: var(--error-600);
}

._headerReviewButtonRejected_1i0t5_1091:hover:not(:disabled) svg path {
    stroke: white;
}

/* Needs review selected state — light red bg + red icon (review mode, not editing) */
._headerReviewButtonNeedsReview_1i0t5_1111 {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
    cursor: default;
}

._headerReviewButtonNeedsReview_1i0t5_1111 svg path {
    stroke: var(--error-500);
}

._headerReviewButtonNeedsReview_1i0t5_1111:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
}

._headerReviewButtonNeedsReview_1i0t5_1111:hover:not(:disabled) svg path {
    stroke: var(--error-500);
}

._headerReviewLabel_1i0t5_1130 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--slate-600);
    white-space: nowrap;
    flex-shrink: 0;
}

/* ─── Editing / saved / wiggle states ─── */
._accordionItemEditing_1i0t5_1140 {
    border-color: var(--color-stale) !important;
}

._accordionItemSaved_1i0t5_1144 {
    border-color: var(--success-500) !important;
}

/* Validated state — light green bg + green border (same as InitialAnalysisTab) */
._accordionItemValidated_1i0t5_1149 {
    background: rgba(236, 254, 255, 0.3);
    border-color: var(--success-500) !important;
}

/* Stale state — yellow border */
._accordionItemStale_1i0t5_1155 {
    border-color: var(--color-stale) !important;
    background: var(--color-stale-bg);
}



/* ─── Loading card state ─── */
._strategyCardLoading_1i0t5_1163 {
    border-color: var(--border-subtle);
    background: white;
}

._loadingCardBody_1i0t5_1168 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 8px 0 4px 0;
}

._loadingCardSpinnerRow_1i0t5_1175 {
    display: flex;
    align-items: center;
    gap: 12px;
}

._loadingCardSpinner_1i0t5_1175 {
    width: 20px;
    height: 20px;
    border: 2.5px solid rgba(152, 16, 250, 0.2);
    border-top-color: var(--indigo-700);
    border-radius: 50%;
    flex-shrink: 0;
    animation: _spin_1i0t5_1 0.9s linear infinite;
}

._loadingCardTitle_1i0t5_1191 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: var(--slate-900);
}

._loadingSteps_1i0t5_1198 {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-left: 4px;
}

._loadingStep_1i0t5_1198 {
    display: flex;
    align-items: center;
    gap: 10px;
}

._loadingStepDot_1i0t5_1211 {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
    transition: background 0.4s ease, transform 0.3s ease;
}

._loadingStepDotActive_1i0t5_1219 {
    background: var(--indigo-700);
    animation: _pulse_1i0t5_1 1.2s ease-in-out infinite;
}

._loadingStepDotIdle_1i0t5_1224 {
    background: var(--border-subtle);
}

@keyframes _pulse_1i0t5_1 {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.4;
        transform: scale(0.7);
    }
}

._loadingStepCheck_1i0t5_1242 {
    flex-shrink: 0;
}

._loadingStepLabel_1i0t5_1246 {
    font-family: Arial, sans-serif;
    font-size: 13px;
    color: var(--text-disabled);
    line-height: 18px;
    transition: color 0.4s ease, font-weight 0.2s ease;
}

._loadingStepLabelActive_1i0t5_1254 {
    color: var(--slate-700);
    font-weight: 600;
}

._loadingStepLabelDone_1i0t5_1259 {
    color: var(--success-500);
}

._loadingCardHint_1i0t5_1263 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    color: var(--text-disabled);
    line-height: 18px;
    margin: 0;
    padding: 12px 14px;
    background: var(--surface-subtle);
    border-radius: 8px;
    border: 0.667px solid var(--border-subtle);
}

/* ─── Agent pending banner (pricing / drawing) ─── */
._agentPendingBanner_1i0t5_1276 {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 12px 16px;
    background: rgba(152, 16, 250, 0.05);
    border: 1px solid rgba(152, 16, 250, 0.2);
    border-radius: 10px;
    font-family: Arial, sans-serif;
    font-size: 13px;
    color: var(--indigo-800);
    box-sizing: border-box;
}

._agentPendingSpinner_1i0t5_1291 {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(152, 16, 250, 0.2);
    border-top-color: var(--indigo-700);
    border-radius: 50%;
    flex-shrink: 0;
    animation: _spin_1i0t5_1 0.9s linear infinite;
}

/* ─── Second Region Picker Modal ─────────────────────────────────────────── */
._secondRegionOverlay_1i0t5_1302 { position: fixed; inset: 0; background: rgba(0,0,0,0.4); display: flex; align-items: center; justify-content: center; z-index: 1000; }
._secondRegionModal_1i0t5_1303 { background: #fff; border-radius: 12px; padding: 24px; width: 360px; max-height: 80vh; overflow-y: auto; }
._secondRegionTitle_1i0t5_1304 { margin: 0 0 16px; font-size: 16px; }
._secondRegionOption_1i0t5_1305 { display: block; width: 100%; padding: 10px 12px; margin-bottom: 4px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; cursor: pointer; text-align: left; font-size: 14px; }
._secondRegionOption_1i0t5_1305:hover { border-color: var(--indigo-400); background: var(--slate-50); }
._secondRegionCancel_1i0t5_1307 { margin-top: 12px; background: none; border: none; color: #6b7280; cursor: pointer; }
/* CostSummaryModal.module.css */

._overlay_1xol6_3 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

._modal_1xol6_13 {
    background: white;
    border: 0.667px solid rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -4px rgba(0, 0, 0, 0.1);
    width: 760px;
    max-width: 95vw;
    padding: 28px 32px;
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

/* Close button */
._closeButton_1xol6_28 {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 16px;
    height: 16px;
    background: transparent;
    border: none;
    cursor: pointer;
    opacity: 0.7;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

._closeButton_1xol6_28:hover {
    opacity: 1;
}

/* Header */
._header_1xol6_49 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
}

._headerIcon_1xol6_56 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    flex-shrink: 0;
}

._headerIcon_1xol6_56 svg {
    width: 16px;
    height: 16px;
}

._headerText_1xol6_71 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._headerTitle_1xol6_77 {
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: var(--slate-900);
    margin: 0;
}

._headerSubtitle_1xol6_86 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

/* Body */
._body_1xol6_96 {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 12px;
    max-height: 60vh;
    overflow-y: auto;
}

/* Highlight card (Investimento Inicial) */
._highlightCard_1xol6_106 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    border-radius: 10px;
    border: 0.667px solid;
}

._highlightCardContent_1xol6_115 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._highlightCardLabel_1xol6_121 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
}

._highlightCardValue_1xol6_128 {
    font-family: Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
}

._highlightCardIcon_1xol6_135 {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

._highlightCardIcon_1xol6_135 svg {
    width: 28px;
    height: 28px;
}

/* Regular card */
._regularCard_1xol6_150 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px;
    background: var(--surface-subtle);
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
}

._regularCardLabel_1xol6_160 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--slate-600);
}

._regularCardValue_1xol6_168 {
    font-family: Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: var(--slate-900);
}

._regularCardSub_1xol6_176 {
    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: 400;
    line-height: 16px;
    color: var(--success-600);
    margin-top: 2px;
}

/* Divider section */
._section_1xol6_186 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-top: 12px;
    border-top: 0.667px solid var(--border-subtle);
}

._sectionTitle_1xol6_194 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

/* List */
._list_1xol6_204 {
    display: flex;
    flex-direction: column;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._listItem_1xol6_213 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-700);
}

._listItemIcon_1xol6_224 {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    margin-top: 1px;
}

/* Info box */
._infoBox_1xol6_232 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 12px;
    background: var(--blue-50);
    border: 0.667px solid var(--blue-200);
    border-radius: 10px;
}

._infoBoxHeader_1xol6_242 {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

._infoBoxIcon_1xol6_248 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1px;
}

._infoBoxContent_1xol6_255 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._infoBoxTitle_1xol6_261 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--blue-800);
    margin: 0;
}

._infoBoxText_1xol6_270 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 19.5px;
    color: var(--blue-600);
    margin: 0;
}

/* Footer */
._footer_1xol6_280 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
}

._closeBtn_1xol6_288 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    background: white;
    border: 0.667px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--slate-900);
    cursor: pointer;
    transition: background 0.2s;
}

._closeBtn_1xol6_288:hover {
    background: var(--surface-subtle);
}

._downloadBtn_1xol6_310 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    border: none;
    border-radius: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: white;
    cursor: pointer;
    transition: opacity 0.2s;
}

._downloadBtn_1xol6_310:hover {
    opacity: 0.9;
}

._downloadBtn_1xol6_310:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Loading state */
._loadingState_1xol6_337 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 24px;
    color: var(--text-tertiary);
    font-family: Arial, sans-serif;
    font-size: 14px;
}

._loadingDots_1xol6_348 {
    display: inline-flex;
    gap: 3px;
    align-items: center;
}

._loadingDots_1xol6_348 span {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
    animation: _dot-bounce_1xol6_1 1s infinite;
}

._loadingDots_1xol6_348 span:nth-child(2) {
    animation-delay: 0.2s;
}

._loadingDots_1xol6_348 span:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes _dot-bounce_1xol6_1 {

    0%,
    80%,
    100% {
        transform: translateY(0);
        opacity: 0.4;
    }

    40% {
        transform: translateY(-4px);
        opacity: 1;
    }
}

/* Region Comparison Grid */
._compareGrid_1xol6_386 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
}

._compareColumn_1xol6_392 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-right: 32px;
    border-right: 1px solid var(--slate-100, #f1f5f9);
}

._compareColumn_1xol6_392:last-child {
    padding-right: 0;
    border-right: none;
    padding-left: 0;
}

._compareColumn_1xol6_392 ._downloadBtn_1xol6_310 {
    margin-top: auto;
}

._compareColumnHeader_1xol6_410 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--slate-200, #e2e8f0);
    margin-bottom: 4px;
}

._compareRegion_1xol6_419 {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
}

._bestBadge_1xol6_425 {
    background: var(--success-600, #16a34a);
    color: white;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 4px;
}
/* ArchitectureDiagramModal.module.css */

._overlay_1w7hk_3 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

._modal_1w7hk_13 {
    background: white;
    border: 0.667px solid rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -4px rgba(0, 0, 0, 0.1);
    width: 683px;
    max-height: 90vh;
    overflow-y: auto;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

._closeButton_1w7hk_28 {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 16px;
    height: 16px;
    background: transparent;
    border: none;
    cursor: pointer;
    opacity: 0.7;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

._closeButton_1w7hk_28:hover {
    opacity: 1;
}

/* Header */
._header_1w7hk_49 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

._headerIcon_1w7hk_56 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    flex-shrink: 0;
}

._headerIcon_1w7hk_56 svg {
    width: 16px;
    height: 16px;
}

._headerText_1w7hk_71 {
    display: flex;
    flex-direction: column;
}

._headerTitle_1w7hk_76 {
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: var(--slate-900);
    margin: 0;
}

._headerSubtitle_1w7hk_85 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

/* Body */
._body_1w7hk_95 {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 8px;
}

/* Info box (Sobre o Diagrama) */
._infoBox_1w7hk_103 {
    padding: 12px;
    border-radius: 10px;
    border: 0.667px solid;
}

._infoBoxHeader_1w7hk_109 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

._infoBoxIcon_1w7hk_115 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1px;
}

._infoBoxIcon_1w7hk_115 svg,
._infoBoxIcon_1w7hk_115 path,
._infoBoxIcon_1w7hk_115 circle {
    width: 16px;
    height: 16px;
}

._infoBoxContent_1w7hk_129 {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
}

._infoBoxTitle_1w7hk_136 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    margin: 0;
}

._infoBoxDesc_1w7hk_144 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 19.5px;
    margin: 0;
}

._infoBoxList_1w7hk_152 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._infoBoxListItem_1w7hk_161 {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
}

._infoBoxBullet_1w7hk_171 {
    font-size: 12px;
    line-height: 16px;
    flex-shrink: 0;
}

/* Two-column cards */
._twoColGrid_1w7hk_178 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

._metaCard_1w7hk_184 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: var(--surface-subtle);
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
}

._metaCardHeader_1w7hk_194 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._metaCardIcon_1w7hk_200 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

._metaCardIcon_1w7hk_200 path,
._metaCardIcon_1w7hk_200 circle,
._metaCardIcon_1w7hk_200 rect {
    stroke: var(--slate-900);
}

._metaCardTitle_1w7hk_212 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    line-height: 16px;
    color: var(--slate-900);
    margin: 0;
}

._metaCardList_1w7hk_221 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._metaCardListItem_1w7hk_230 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-700);
}

/* Diagram image container */
._diagramContainer_1w7hk_239 {
    border: 2px solid;
    border-radius: 10px;
    padding: 10px;
    background: white;
}

._diagramImage_1w7hk_246 {
    width: 100%;
    height: 300px;
    object-fit: contain;
    border-radius: 4px;
    display: block;
}

._diagramPlaceholder_1w7hk_254 {
    width: 100%;
    height: 300px;
    background: var(--surface-subtle);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    color: var(--text-disabled);
    font-family: Arial, sans-serif;
    font-size: 14px;
}

/* Observation box */
._observationBox_1w7hk_270 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px;
    background: var(--blue-50);
    border: 0.667px solid var(--blue-200);
    border-radius: 10px;
}

._observationHeader_1w7hk_280 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

._observationIcon_1w7hk_286 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1px;
}

._observationContent_1w7hk_293 {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

._observationTitle_1w7hk_299 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--blue-800);
    margin: 0;
}

._observationText_1w7hk_308 {
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 19.5px;
    color: var(--blue-600);
    margin: 0;
}

/* Footer */
._footer_1w7hk_318 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
}

._closeBtn_1w7hk_326 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    background: white;
    border: 0.667px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--slate-900);
    cursor: pointer;
    transition: background 0.2s;
}

._closeBtn_1w7hk_326:hover {
    background: var(--surface-subtle);
}

._downloadBtn_1w7hk_348 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    border: none;
    border-radius: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: white;
    cursor: pointer;
    transition: opacity 0.2s;
}

._downloadBtn_1w7hk_348:hover {
    opacity: 0.9;
}

@keyframes _spin_1w7hk_375 {
    to {
        transform: rotate(360deg);
    }
}

._spinner_1w7hk_375 {
    animation: _spin_1w7hk_375 1s linear infinite;
}

/* ── Image Viewer (fullscreen) ── */

._viewerOverlay_1w7hk_381 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
}

._viewerImageWrapper_1w7hk_391 {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    user-select: none;
}

._viewerImage_1w7hk_391 {
    max-width: 90vw;
    max-height: 90vh;
    object-fit: contain;
    transition: transform 0.05s linear;
    pointer-events: none;
}

._viewerCloseBtn_1w7hk_409 {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 6px;
    height: 36px;
    padding: 0 14px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 8px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    color: white;
    cursor: pointer;
    transition: background 0.2s;
}

._viewerCloseBtn_1w7hk_409:hover {
    background: rgba(255, 255, 255, 0.25);
}

._viewerControls_1w7hk_433 {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 4px;
    background: rgba(0, 0, 0, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    padding: 6px 10px;
}

._viewerControlBtn_1w7hk_448 {
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px;
    color: white;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

._viewerControlBtn_1w7hk_448:hover {
    background: rgba(255, 255, 255, 0.3);
}

._viewerZoomLabel_1w7hk_468 {
    font-family: Arial, sans-serif;
    font-size: 13px;
    color: white;
    min-width: 44px;
    text-align: center;
}

/* Make thumbnail clickable */
._diagramImage_1w7hk_246 {
    cursor: zoom-in;
}/* DetailedSectionEditor.module.css */

._editor_1af5e_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.75rem;
  background: linear-gradient(164deg, rgba(255, 255, 255, 1) 0%, rgba(248, 250, 252, 0.5) 100%);
}

._row_1af5e_13 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}

._field_1af5e_19 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._fieldLabel_1af5e_25 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
}

._textarea_1af5e_33 {
  width: 100%;
  min-height: 8rem;
  padding: 0.625rem 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.375rem;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._textarea_1af5e_33:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

._textarea_1af5e_33:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._textarea_1af5e_33::placeholder {
  color: var(--text-tertiary);
}

._input_1af5e_64 {
  width: 100%;
  height: 2.25rem;
  padding: 0 0.75rem;
  background: var(--surface-subtle);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-700);
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._input_1af5e_64:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

._input_1af5e_64:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._input_1af5e_64::placeholder {
  color: var(--text-tertiary);
}

._saveError_1af5e_93 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  margin: 0;
  padding: 0.5rem 0.75rem;
  background: rgba(239, 68, 68, 0.06);
  border: 0.0625rem solid rgba(239, 68, 68, 0.2);
  border-radius: 0.5rem;
}

._actions_1af5e_104 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

._wiggleWarning_1af5e_111 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.8125rem;
  color: var(--warning-700);
  background: var(--warning-50);
  border: 0.0625rem solid var(--warning-500);
  border-radius: 0.5rem;
  padding: 0.375rem 0.625rem;
  margin-right: auto;
  white-space: nowrap;
  animation: _shake_1af5e_1 0.4s ease-in-out;
}

@keyframes _shake_1af5e_1 {

  0%,
  100% {
    transform: translateX(0);
  }

  20% {
    transform: translateX(-3px);
  }

  40% {
    transform: translateX(3px);
  }

  60% {
    transform: translateX(-3px);
  }

  80% {
    transform: translateX(3px);
  }
}

._saveButton_1af5e_151 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--surface-page);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._saveButton_1af5e_151:hover:not(:disabled) {
  opacity: 0.9;
}

._saveButton_1af5e_151:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._saveButton_1af5e_151:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._cancelButton_1af5e_181 {
  display: flex;
  align-items: center;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--slate-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._cancelButton_1af5e_181:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._cancelButton_1af5e_181:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._cancelButton_1af5e_181:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._container_qzjh2_1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    gap: 1rem;
    max-width: 480px;
    margin: 0 auto;
}

._title_qzjh2_12 {
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 8px 0 4px;
    text-align: center;
}

._description_qzjh2_21 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    color: var(--text-tertiary);
    text-align: center;
    margin: 0;
    line-height: 1.5;
}

._infoBox_qzjh2_30 {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--blue-50);
    border: 0.0625rem solid var(--blue-200);
    border-radius: 0.625rem;
    margin-top: 0.75rem;
    width: 100%;
}

._infoIcon_qzjh2_42 {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.125rem;
}

._infoText_qzjh2_52 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    line-height: 1.2188rem;
    margin: 0;
    text-align: left;
}

._stepsList_qzjh2_61 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 2rem;
    width: 100%;
}

._stepItem_qzjh2_69 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: opacity 0.4s ease-in-out;
}

._stepItemActive_qzjh2_76 {}

._stepDot_qzjh2_78 {
    width: 2rem;
    height: 2rem;
    background: var(--indigo-50);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out, background 0.3s ease-in-out;
}

._stepDotActive_qzjh2_91 {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--indigo-200);
    box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15);
    animation: _pulse_qzjh2_1 1.4s ease-in-out infinite;
}

@keyframes _pulse_qzjh2_1 {
    0%, 100% { box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15); }
    50% { box-shadow: 0 0 0 0.5rem rgba(152, 16, 250, 0.08); }
}

._stepDot_qzjh2_78::after {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    background: var(--indigo-700);
    border-radius: 50%;
    position: absolute;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out;
}

._stepDotActive_qzjh2_91::after {
    width: 0.625rem;
    height: 0.625rem;
}

._stepText_qzjh2_119 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-600);
    line-height: 1rem;
    transition: font-size 0.3s ease-in-out, color 0.3s ease-in-out, font-weight 0.3s ease-in-out;
}

._stepTextActive_qzjh2_127 {
    color: var(--indigo-900);
    font-weight: 700;
    font-size: 1rem;
}

._loadingDots_qzjh2_133 {
    display: inline-flex;
    gap: 0.2rem;
    margin-left: 0.25rem;
    align-items: center;
}

._loadingDots_qzjh2_133 span {
    width: 0.25rem;
    height: 0.25rem;
    background: var(--indigo-700);
    border-radius: 50%;
    animation: _dot-bounce_qzjh2_1 1.2s ease-in-out infinite;
}

._loadingDots_qzjh2_133 span:nth-child(2) { animation-delay: 0.2s; }
._loadingDots_qzjh2_133 span:nth-child(3) { animation-delay: 0.4s; }

@keyframes _dot-bounce_qzjh2_1 {
    0%, 80%, 100% { transform: translateY(0); opacity: 0.4; }
    40% { transform: translateY(-0.3rem); opacity: 1; }
}
._container_w48h8_1 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 24px;
}

/* Header */
._header_w48h8_9 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
}

._headerTitle_w48h8_17 {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary);
}

._headerTitleRow_w48h8_24 {
    display: flex;
    align-items: center;
    gap: 12px;
}

._headerDesc_w48h8_30 {
    font-size: 13px;
    color: var(--text-tertiary);
    margin: 4px 0 0;
}

._headerProgress_w48h8_36 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._progressLabel_w48h8_42 {
    font-size: 11px;
    color: var(--text-tertiary);
}

._progressBar_w48h8_47 {
    width: 80px;
    height: 6px;
    background: var(--surface-subtle);
    border-radius: 3px;
    overflow: hidden;
}


/* Export MPA Button */
._exportMpaButton_w48h8_57 {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: linear-gradient(to bottom, #2987c2, #2f84c4);
    border: none;
    border-radius: 8px;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
    white-space: nowrap;
}

._exportMpaButton_w48h8_57:hover {
    opacity: 0.9;
}

._exportMpaButton_w48h8_57:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Sections */
._sections_w48h8_84 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Accordion */
._accordion_w48h8_91 {
    display: flex;
    flex-direction: column;
    background: white;
    border: 1px solid var(--border-subtle);
    border-radius: 0.625rem;
    overflow: hidden;
    transition: all 0.2s ease-in-out;
}

._accordionValid_w48h8_101 {
    border-color: var(--success-500);
}

._accordionButton_w48h8_105 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    background: transparent;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
}

._accordionHeader_w48h8_117 {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

._accordionIconContainer_w48h8_124 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

._accordionValid_w48h8_101 ._accordionIconContainer_w48h8_124 {
    background: var(--success-50);
}

._accordionIcon_w48h8_124 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}

._accordionIcon_w48h8_124 svg {
    width: 40px;
    height: 40px;
}

._accordionTitleContainer_w48h8_151 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

._accordionTitle_w48h8_151 {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._accordionSubtitle_w48h8_166 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

._headerReviewButtons_w48h8_174 {
    display: flex;
    align-items: center;
    gap: 6px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

._headerReviewButtonsVisible_w48h8_183 {
    opacity: 1;
    pointer-events: auto;
}

._headerReviewLabel_w48h8_188 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--slate-600);
    white-space: nowrap;
    flex-shrink: 0;
}

._headerReviewButton_w48h8_174 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    background: white;
    border: 0.09375rem solid var(--slate-400);
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

._headerReviewButton_w48h8_174 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

._headerReviewButton_w48h8_174:hover:not(:disabled) {
    background: var(--surface-subtle);
}

._headerReviewButtonCheck_w48h8_220:hover:not(:disabled) {
    background: rgba(16, 185, 129, 0.08);
    border-color: var(--success-500);
}

._headerReviewButtonCheck_w48h8_220:hover:not(:disabled) svg path {
    stroke: var(--success-500);
}

._headerReviewButtonCross_w48h8_229:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.08);
    border-color: var(--error-500);
}

._headerReviewButtonCross_w48h8_229:hover:not(:disabled) svg path {
    stroke: var(--error-500);
}

._headerReviewButtonApproved_w48h8_238 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._headerReviewButtonApproved_w48h8_238 svg path {
    stroke: var(--success-500);
}

._headerReviewButtonApproved_w48h8_238:hover {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._headerReviewButtonApproved_w48h8_238:hover svg path {
    stroke: var(--success-500);
}

._headerReviewButtonNeedsReview_w48h8_256 {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
}

._headerReviewButtonNeedsReview_w48h8_256 svg path {
    stroke: var(--error-500);
}

._headerReviewButtonNeedsReview_w48h8_256:hover {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
}

._headerReviewButtonNeedsReview_w48h8_256:hover svg path {
    stroke: var(--error-500);
}

._chevron_w48h8_274 {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: rotate(0deg);
    flex-shrink: 0;
    margin-left: 8px;
}

._chevronOpen_w48h8_281 {
    transform: rotate(180deg);
}

._headerReviewButtonSave_w48h8_285 {
    background: var(--success-500);
    border-color: var(--success-500);
}

._headerReviewButtonSave_w48h8_285 svg path {
    stroke: white;
}

._headerReviewButtonSave_w48h8_285:hover:not(:disabled) {
    background: var(--success-600);
    border-color: var(--success-600);
}

._headerReviewButtonSave_w48h8_285:hover:not(:disabled) svg path {
    stroke: white;
}

._headerReviewButtonRejected_w48h8_303 {
    background: var(--error-500);
    border-color: var(--error-500);
}

._headerReviewButtonRejected_w48h8_303 svg path {
    stroke: white;
}

._headerReviewButtonRejected_w48h8_303:hover:not(:disabled) {
    background: var(--error-600);
    border-color: var(--error-600);
}

._headerReviewButtonRejected_w48h8_303:hover:not(:disabled) svg path {
    stroke: white;
}

._accordionContent_w48h8_321 {
    padding: 16px;
    border-top: 1px solid var(--border-subtle);
}

/* Descricao */
._summaryText_w48h8_327 {
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    line-height: 1.6;
    margin: 0 0 8px;
}

._detailText_w48h8_335 {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin: 8px 0;
}

._detailText_w48h8_335 p {
    margin: 0 0 10px;
}

._detailText_w48h8_335 p:last-child {
    margin-bottom: 0;
}

._detailText_w48h8_335 strong {
    font-weight: 700;
    color: var(--text-primary);
}

._detailText_w48h8_335 ol,
._detailText_w48h8_335 ul {
    margin: 8px 0;
    padding-left: 20px;
}

._detailText_w48h8_335 li {
    margin-bottom: 6px;
}

._linkBtn_w48h8_365 {
    font-size: 12px;
    color: var(--text-link);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-top: 4px;
}

._linkBtn_w48h8_365:hover {
    text-decoration: underline;
    color: var(--text-link-hover);
}

/* Description Edit */
._descEditContainer_w48h8_381 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._descEditLabel_w48h8_387 {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

._descEditTextarea_w48h8_395 {
    width: 100%;
    padding: 12px;
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-primary);
    resize: vertical;
    font-family: inherit;
    background: var(--surface-card);
}

._descEditTextarea_w48h8_395:focus {
    outline: none;
    border-color: var(--action-primary-bg);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

/* Custo */
._custoSection_w48h8_415 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

._custoInfo_w48h8_421 {
    font-size: 12px;
    color: var(--text-tertiary);
    background: var(--surface-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 10px 12px;
}

._custoTotal_w48h8_430 {
    background: #00BCD4;
    color: white;
    border-radius: 12px;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    gap: 24px;
    position: relative;
}

._custoTotalCol_w48h8_441 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._custoTotalBadge_w48h8_447 {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 8px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 4px;
    width: fit-content;
}

._custoTotalValue_w48h8_456 {
    font-size: 22px;
    font-weight: 700;
}

._custoTotalSub_w48h8_461 {
    font-size: 11px;
    opacity: 0.7;
}

._custoTotalDivider_w48h8_466 {
    width: 1px;
    height: 48px;
    background: rgba(255, 255, 255, 0.3);
}

._custoTotalIcon_w48h8_472 {
    position: absolute;
    right: 20px;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
}

._custoGrid_w48h8_486 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

._custoCard_w48h8_492 {
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 12px;
    transition: border-color 0.15s;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

._custoCard_w48h8_492:hover {
    border-color: var(--border-focus);
}

._custoLabel_w48h8_506 {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: var(--text-tertiary);
    font-weight: 500;
}

._custoInputRow_w48h8_515 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
}

._custoInputEditArea_w48h8_522 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
}

._custoInputEditRow_w48h8_529 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._custoSelectLabel_w48h8_535 {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary);
    min-width: 28px;
    padding: 4px 6px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    background: white;
    text-align: center;
    flex-shrink: 0;
}

._custoSelect_w48h8_535 {
    font-size: 12px;
    padding: 4px 6px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    background: var(--surface-card);
    color: var(--text-secondary);
    cursor: pointer;
}

._custoInput_w48h8_515 {
    flex: 1;
    min-width: 0;
    background: white;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    padding: 6px 10px;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    outline: none;
    text-align: right;
    transition: border-color 0.2s;
}

._custoInput_w48h8_515:focus {
    border-color: var(--action-primary-bg);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

._custoTags_w48h8_578 {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    height: 84px;
    overflow-y: auto;
    align-content: flex-start;
}

._custoTag_w48h8_578 {
    font-size: 10px;
    padding: 1px 6px;
    border-radius: 3px;
    background: var(--surface-subtle);
    color: var(--text-tertiary);
}

._custoTagEditable_w48h8_595 {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 6px;
    background: white;
    color: var(--text-secondary);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--border-subtle);
}

._custoTagRemove_w48h8_607 {
    background: none;
    border: none;
    font-size: 14px;
    color: var(--error-500);
    cursor: pointer;
    padding: 4px;
    line-height: 1;
    border-radius: 4px;
    min-width: 24px;
    min-height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

._custoTagRemove_w48h8_607:hover {
    background: rgba(239, 68, 68, 0.1);
}

._custoTagRemove_w48h8_607:focus-visible {
    outline: 2px solid var(--action-primary-bg);
    outline-offset: 2px;
}

._custoTagAddRow_w48h8_632 {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px solid var(--border-subtle);
}

._custoTagAddIcon_w48h8_641 {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-tertiary);
    flex-shrink: 0;
    line-height: 1;
}

._custoTagInput_w48h8_649 {
    font-size: 12px;
    padding: 5px 10px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    flex: 1;
    min-width: 0;
    outline: none;
    background: white;
    color: var(--text-primary);
    cursor: text;
    transition: all 0.15s ease-in-out;
}

._custoTagInput_w48h8_649::placeholder {
    color: var(--text-tertiary);
}

._custoTagInput_w48h8_649:hover {
    border-color: var(--border-focus);
    background: white;
}

._custoTagInput_w48h8_649:focus {
    border-color: var(--action-primary-bg);
    background: white;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

._custoNoService_w48h8_678 {
    font-size: 11px;
    color: var(--text-tertiary);
    font-style: italic;
}

._custoEmptyHint_w48h8_684 {
    font-size: 11px;
    color: var(--text-tertiary);
    font-style: italic;
    display: flex;
    align-items: center;
    width: 100%;
}

._custoValueReadonly_w48h8_693 {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    flex: 1;
}

._custoValueLabelRow_w48h8_701 {
    display: flex;
    align-items: center;
    gap: 4px;
}

._custoValueLabel_w48h8_701 {
    font-size: 10px;
    font-weight: 500;
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.4px;
    line-height: 1;
}

._custoValueInfo_w48h8_716 {
    display: flex;
    align-items: center;
    color: var(--text-tertiary);
    cursor: help;
    opacity: 0.7;
    transition: opacity 0.15s;
}

._custoValueInfo_w48h8_716:hover {
    opacity: 1;
    color: var(--action-primary-bg);
}

._custoValueAmounts_w48h8_730 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._custoValueAmount_w48h8_730 {
    font-size: 15px;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

._custoValueSeparator_w48h8_743 {
    font-size: 14px;
    color: var(--text-tertiary);
    font-weight: 400;
    line-height: 1;
}

._custoValueSecondary_w48h8_750 {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-tertiary);
    line-height: 1.2;
}

/* Recursos */
._recursosGrid_w48h8_758 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(20.5rem, 1fr));
    gap: 1.25rem;
    padding: 0.5rem 0;
    align-items: start;
}

._recursoCard_w48h8_766 {
    background: white;
    border: 0.667px solid var(--border-subtle);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 0;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.06), 0 1px 2px -1px rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    cursor: pointer;
}

._recursoCard_w48h8_766:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}

._recursoHeader_w48h8_784 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 0.667px solid var(--border-subtle);
}

._recursoNome_w48h8_793 {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--slate-900);
    line-height: 20px;
    margin: 0;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

._recursoIcon_w48h8_807 {
    flex-shrink: 0;
    color: var(--slate-900);
}

._recursoTipo_w48h8_812 {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    padding: 2px 8px;
    border-radius: 9999px;
    white-space: nowrap;
    flex-shrink: 0;
    background: var(--blue-50);
    color: var(--blue-600);
}

._recursoDetalhes_w48h8_825 {
    display: flex;
    flex-direction: column;
    margin-top: 4px;
    font-size: 12px;
    color: var(--text-secondary);
    line-height: 1.5;
}

._recursoDetailRow_w48h8_834 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 0;
    border-bottom: 0.667px solid var(--slate-100);
    min-height: 29px;
}

._recursoDetailLabel_w48h8_844 {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    color: var(--text-tertiary);
    letter-spacing: 0.55px;
    flex-shrink: 0;
}

._recursoDetailValue_w48h8_854 {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-800);
    text-align: right;
}

/* Recurso edit mode */
._recursoEditRow_w48h8_864 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

._recursoEditHeaderFields_w48h8_871 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

._recursoEditHeader_w48h8_871 {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border-subtle);
}

._recursoRemoveBtnCard_w48h8_887 {
    background: none;
    border: none;
    font-size: 16px;
    color: var(--text-tertiary);
    cursor: pointer;
    padding: 4px 6px;
    min-width: 28px;
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    flex-shrink: 0;
    transition: all 0.15s;
}

._recursoRemoveBtnCard_w48h8_887:hover {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-500);
}

._recursoDeleteCardBtn_w48h8_909 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: 100%;
    padding: 5px 0;
    margin-top: 4px;
    border: none;
    border-top: 1px solid var(--slate-100);
    background: transparent;
    font-size: 11px;
    color: var(--text-tertiary);
    cursor: pointer;
    border-radius: 0 0 12px 12px;
    opacity: 0;
    transition: all 0.15s ease-in-out;
}

._recursoCard_w48h8_766:hover ._recursoDeleteCardBtn_w48h8_909 {
    opacity: 1;
}

._recursoDeleteCardBtn_w48h8_909:hover {
    color: var(--error-500);
    background: rgba(239, 68, 68, 0.04);
}

._recursoDeleteCardBtn_w48h8_909:focus-visible {
    opacity: 1;
    outline: 2px solid var(--error-500);
    outline-offset: -2px;
}

._recursoEditInput_w48h8_943 {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    min-width: 0;
    background: white;
}

._recursoEditInput_w48h8_943:focus,
._recursoEditInputSm_w48h8_956:focus,
._recursoDetailEditLabelInput_w48h8_957:focus,
._recursoDetailEditValue_w48h8_958:focus {
    outline: none;
    border-color: var(--action-primary-bg);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

._recursoEditInputSm_w48h8_956 {
    width: 100px;
    flex-shrink: 0;
    padding: 6px 10px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    font-size: 13px;
    color: var(--text-secondary);
    background: white;
}

._recursoDetailEditRow_w48h8_975 {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    border-bottom: 1px solid var(--slate-100);
}

._recursoDetailEditRow_w48h8_975:last-of-type {
    border-bottom: none;
}

._recursoDetailEditLabel_w48h8_957 {
    width: 110px;
    flex-shrink: 0;
    padding: 6px 10px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary);
}

._recursoDetailEditLabelInput_w48h8_957 {
    width: 110px;
    flex-shrink: 0;
    padding: 5px 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    font-size: 12px;
    background: white;
    color: var(--text-secondary);
}

._recursoDetailEditValue_w48h8_958 {
    flex: 1;
    min-width: 0;
    padding: 5px 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    font-size: 12px;
    background: white;
    color: var(--text-primary);
}

._recursoRemoveBtn_w48h8_887 {
    background: none;
    border: none;
    font-size: 14px;
    color: var(--text-tertiary);
    cursor: pointer;
    padding: 3px 5px;
    min-width: 24px;
    min-height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    flex-shrink: 0;
}

._recursoRemoveBtn_w48h8_887:hover {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-500);
}

._recursoRemoveBtn_w48h8_887:focus-visible {
    outline: 2px solid var(--action-primary-bg);
    outline-offset: 2px;
}

._recursoAddBtn_w48h8_1044 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 6px 10px;
    margin-top: 4px;
    background: transparent;
    border: 1px dashed var(--border-subtle);
    border-radius: 4px;
    font-size: 12px;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    text-align: center;
}

._recursoAddBtn_w48h8_1044:hover {
    border-color: var(--action-primary-bg);
    color: var(--action-primary-bg);
    background: rgba(59, 130, 246, 0.04);
}

._recursoAddBtn_w48h8_1044:focus-visible {
    outline: 2px solid var(--action-primary-bg);
    outline-offset: 2px;
}

._recursoAddResourceBtn_w48h8_1073 {
    background: none;
    border: 1px dashed var(--border-subtle);
    border-radius: 12px;
    padding: 16px;
    font-size: 13px;
    color: var(--action-primary-bg);
    cursor: pointer;
    text-align: center;
}

._recursoAddResourceBtn_w48h8_1073:hover {
    border-color: var(--action-primary-bg);
    background: rgba(59, 130, 246, 0.04);
}

/* Ponto/Inacao edit mode */
._pontoEditCard_w48h8_1090 {
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

._pontoEditRow_w48h8_1100 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._pontoEditTitle_w48h8_1106 {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary);
}

._pontoEditTitle_w48h8_1106:focus {
    outline: none;
    border-color: var(--action-primary-bg);
}

._pontoEditDesc_w48h8_1121 {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    font-size: 13px;
    color: var(--text-primary);
    resize: vertical;
    min-height: 120px;
    font-family: inherit;
}

._pontoEditDesc_w48h8_1121:focus {
    outline: none;
    border-color: var(--action-primary-bg);
}

._pontoEditSeverity_w48h8_1138 {
    padding: 6px 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    font-size: 12px;
    background: white;
    cursor: pointer;
}

._pontoFieldLabel_w48h8_1147 {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

/* Diagrama */
._diagramaSection_w48h8_1156 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._diagramaToolbar_w48h8_1162 {
    display: flex;
    justify-content: flex-end;
}

._diagramaContainer_w48h8_1167 {
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 16px;
    overflow-x: auto;
    min-height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
}

._diagramaContainer_w48h8_1167 svg {
    max-width: 100%;
    height: auto;
}

._diagramaSection_w48h8_1156 {
    position: relative;
}

._diagramaHint_w48h8_1187 {
    font-size: 12px;
    color: var(--text-tertiary);
    text-align: center;
    margin-top: 8px;
    font-style: italic;
}

._diagramTooltip_w48h8_1195 {
    position: absolute;
    transform: translateY(-50%);
    background: var(--surface-card, white);
    border: 1px solid var(--border-subtle, #e2e8f0);
    border-radius: 8px;
    padding: 12px 16px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    width: 300px;
    z-index: 10;
    pointer-events: none;
}

._diagramTooltip_w48h8_1195 strong {
    display: block;
    font-size: 14px;
    color: var(--text-primary);
    margin-bottom: 4px;
}

._diagramTooltip_w48h8_1195 p {
    margin: 0 0 4px;
    font-size: 13px;
}

._tooltipDeps_w48h8_1220 {
    display: block;
    font-size: 12px;
    color: var(--action-primary-bg, #3b82f6);
    font-style: italic;
}

._mermaidFallback_w48h8_1227 {
    white-space: pre-wrap;
    font-size: 12px;
    color: var(--text-secondary);
}

/* Pontos */
._pontosGrid_w48h8_1234 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

@media (max-width: 768px) {
    ._pontosGrid_w48h8_1234 {
        grid-template-columns: 1fr;
    }
}

._pontosLabel_w48h8_1246 {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.88px;
    color: #6b7280;
    font-weight: 700;
    margin: 0 0 8px;
    line-height: 16.5px;
}

._pontoCard_w48h8_1256 {
    background: white;
    border: 1px solid #e6e8ef;
    border-radius: 10px;
    padding: 15px;
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

._pontoForte_w48h8_1267 {}

._pontoFraco_w48h8_1269 {}

._pontoHeader_w48h8_1271 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

._pontoTitle_w48h8_1278 {
    font-size: 13px;
    font-weight: 700;
    color: #111827;
    line-height: 19.5px;
}

._pontoImpactSection_w48h8_1285 {
    display: flex;
    flex-direction: column;
    gap: 1.3px;
}

._pontoImpactLabel_w48h8_1291 {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
    line-height: 15px;
}

._pontoImpactText_w48h8_1300 {
    font-size: 12px;
    font-weight: 400;
    color: #111827;
    line-height: 18.6px;
    margin: 0;
}

._pontoExpandButton_w48h8_1308 {
    background: none;
    border: none;
    padding: 0;
    font-size: 12px;
    color: var(--indigo-700);
    text-decoration: underline;
    cursor: pointer;
    text-align: left;
    line-height: 18.6px;
}

._pontoExpandButton_w48h8_1308:hover {
    color: #1e6fa3;
}

._pontoSources_w48h8_1324 {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

._pontoSourceBadge_w48h8_1330 {
    font-size: 10px;
    font-weight: 400;
    color: #6b7280;
    background: rgba(0, 0, 0, 0.04);
    border: 1px solid #e6e8ef;
    border-radius: 999px;
    padding: 3px 9px;
    line-height: 15px;
    white-space: nowrap;
}

._pontoDesc_w48h8_1342 {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 6px 0 0;
    line-height: 1.5;
}

/* Criticidade badges */
._critBadge_w48h8_1350 {
    font-size: 10px;
    padding: 3px 9px;
    border-radius: 999px;
    font-weight: 700;
    text-transform: capitalize;
    line-height: 15px;
}

._crit_high_w48h8_1359,
._crit_alta_w48h8_1360 {
    background: rgba(220, 38, 38, 0.1);
    color: #dc2626;
    border: 1px solid rgba(220, 38, 38, 0.2);
}

._crit_medium_w48h8_1366,
._crit_media_w48h8_1367 {
    background: rgba(245, 158, 11, 0.1);
    color: #b45309;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

._crit_low_w48h8_1373,
._crit_baixa_w48h8_1374 {
    background: rgba(22, 163, 74, 0.1);
    color: #16a34a;
    border: 1px solid rgba(22, 163, 74, 0.2);
}

._crit_critical_w48h8_1380 {
    background: rgba(220, 38, 38, 0.1);
    color: #dc2626;
    border: 1px solid rgba(220, 38, 38, 0.2);
}

/* Inacao */
._inacaoList_w48h8_1387 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

._inacaoCard_w48h8_1393 {
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 14px;
}

._inacaoHeader_w48h8_1399 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

._inacaoTitle_w48h8_1406 {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
}

._inacaoDeadline_w48h8_1412 {
    font-size: 10px;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--surface-subtle);
    color: var(--text-tertiary);
}

._inacaoDesc_w48h8_1420 {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 8px 0 0;
    line-height: 1.5;
}

._inacaoDesc_w48h8_1420 p {
    margin: 0 0 8px;
}

._inacaoDesc_w48h8_1420 p:last-child {
    margin-bottom: 0;
}

._inacaoDesc_w48h8_1420 strong {
    font-weight: 700;
    color: var(--text-primary);
}

._inacaoDesc_w48h8_1420 ol,
._inacaoDesc_w48h8_1420 ul {
    margin: 8px 0;
    padding-left: 20px;
}

._inacaoDesc_w48h8_1420 li {
    margin-bottom: 6px;
}

/* Footer */
._footer_w48h8_1451 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid var(--border-subtle);
    flex-wrap: wrap;
}

._footerHint_w48h8_1461 {
    font-size: 12px;
    color: var(--text-tertiary);
}


/* Empty / Loading */
._emptyMsg_w48h8_1468 {
    font-size: 13px;
    color: var(--text-tertiary);
    font-style: italic;
    border: 1px dashed var(--border-subtle);
    border-radius: 8px;
    padding: 16px;
    text-align: center;
    margin: 0;
}

._loadingState_w48h8_1479 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    gap: 1rem;
    color: var(--text-tertiary);
    font-size: 14px;
    max-width: 480px;
    margin: 0 auto;
}

._loadingIconWrapper_w48h8_1492 {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

._loadingTitle_w48h8_1502 {
    font-family: Arial, sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 8px 0 4px;
    text-align: center;
}

._loadingDescription_w48h8_1511 {
    font-family: Arial, sans-serif;
    font-size: 14px;
    color: var(--text-tertiary);
    text-align: center;
    margin: 0;
    line-height: 1.5;
}

._infoBoxBlue_w48h8_1520 {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--blue-50);
    border: 0.0625rem solid var(--blue-200);
    border-radius: 0.625rem;
    margin-top: 0.75rem;
    width: 100%;
}

._infoIcon_w48h8_1532 {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.125rem;
}

._infoTextSmall_w48h8_1542 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    line-height: 1.2188rem;
    margin: 0;
    text-align: left;
}

._stepsList_w48h8_1551 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 2rem;
    width: 100%;
}

._stepItem_w48h8_1559 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: opacity 0.4s ease-in-out;
}

._stepItemActive_w48h8_1566 {}

._stepDot_w48h8_1568 {
    width: 2rem;
    height: 2rem;
    background: var(--indigo-50);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out, background 0.3s ease-in-out;
}

._stepDotActive_w48h8_1581 {
    width: 2.5rem;
    height: 2.5rem;
    background: var(--indigo-200);
    box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15);
    animation: _pulse_w48h8_1 1.4s ease-in-out infinite;
}

@keyframes _pulse_w48h8_1 {

    0%,
    100% {
        box-shadow: 0 0 0 0.25rem rgba(152, 16, 250, 0.15);
    }

    50% {
        box-shadow: 0 0 0 0.5rem rgba(152, 16, 250, 0.08);
    }
}

._stepDot_w48h8_1568::after {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    background: var(--indigo-700);
    border-radius: 50%;
    position: absolute;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out;
}

._stepDotActive_w48h8_1581::after {
    width: 0.625rem;
    height: 0.625rem;
}

._stepText_w48h8_1616 {
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--slate-600);
    line-height: 1rem;
    transition: font-size 0.3s ease-in-out, color 0.3s ease-in-out, font-weight 0.3s ease-in-out;
}

._stepTextActive_w48h8_1624 {
    color: var(--indigo-900);
    font-weight: 700;
    font-size: 1rem;
}

/* Loading dots for active step */
._loadingDots_w48h8_1631 {
    display: inline-flex;
    gap: 0.2rem;
    margin-left: 0.25rem;
    align-items: center;
}

._loadingDots_w48h8_1631 span {
    width: 0.25rem;
    height: 0.25rem;
    background: var(--indigo-700);
    border-radius: 50%;
    animation: _dot-bounce_w48h8_1 1.2s ease-in-out infinite;
}

._loadingDots_w48h8_1631 span:nth-child(2) {
    animation-delay: 0.2s;
}

._loadingDots_w48h8_1631 span:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes _dot-bounce_w48h8_1 {

    0%,
    80%,
    100% {
        transform: translateY(0);
        opacity: 0.4;
    }

    40% {
        transform: translateY(-0.3rem);
        opacity: 1;
    }
}

/* Buttons */
._btnPrimary_w48h8_1670 {
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 500;
    border: none;
    border-radius: 8px;
    background: var(--action-primary-bg);
    color: var(--action-primary-text);
    cursor: pointer;
    transition: background 0.15s;
}

._btnPrimary_w48h8_1670:hover {
    background: var(--action-primary-bg-hover);
}

._btnSecondary_w48h8_1686 {
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 500;
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    background: var(--surface-card);
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.15s;
}

._btnSecondary_w48h8_1686:hover {
    background: var(--surface-subtle);
}

/* Editor Modal */
._editorOverlay_w48h8_1703 {
    position: fixed;
    inset: 0;
    background: var(--surface-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(3px);
}

._editorModal_w48h8_1714 {
    background: var(--surface-card);
    border-radius: 16px;
    width: 92vw;
    max-width: 1400px;
    height: 80vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 25px 60px -12px rgba(0, 0, 0, 0.4);
    overflow: hidden;
}

._editorHeader_w48h8_1726 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    border-bottom: 1px solid var(--border-subtle);
}

._editorHeader_w48h8_1726 h3 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
}

._editorDocsLink_w48h8_1741 {
    font-size: 12px;
    color: var(--text-link);
    text-decoration: none;
    padding: 4px 12px;
    border: 1px solid var(--border-focus);
    border-radius: 6px;
}

._editorDocsLink_w48h8_1741:hover {
    background: var(--action-primary-bg);
    color: var(--action-primary-text);
}

._editorBody_w48h8_1755 {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 16px 20px;
    overflow: hidden;
    min-height: 0;
}

._editorPanel_w48h8_1765 {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    overflow: hidden;
    min-height: 0;
}

._editorPanelLabel_w48h8_1774 {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-tertiary);
    padding: 8px 12px;
    background: var(--surface-subtle);
    border-bottom: 1px solid var(--border-subtle);
}

._editorPanelHeader_w48h8_1785 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 12px;
    background: var(--surface-subtle);
    border-bottom: 1px solid var(--border-subtle);
}

._editorPanelHeader_w48h8_1785 ._editorPanelLabel_w48h8_1774 {
    padding: 0;
    border: none;
    background: none;
}

._zoomControls_w48h8_1800 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._zoomControls_w48h8_1800 button {
    width: 26px;
    height: 26px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    background: var(--surface-card);
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
}

._zoomControls_w48h8_1800 button:last-child {
    width: auto;
    padding: 0 8px;
    font-size: 11px;
    font-weight: 500;
}

._zoomControls_w48h8_1800 button:hover {
    background: var(--surface-subtle);
}

._zoomControls_w48h8_1800 span {
    font-size: 11px;
    color: var(--text-tertiary);
    min-width: 36px;
    text-align: center;
}

._editorTextarea_w48h8_1839 {
    flex: 1;
    padding: 14px;
    font-family: monospace;
    font-size: 13px;
    line-height: 1.6;
    border: none;
    resize: none;
    outline: none;
    background: var(--surface-card);
    color: var(--text-primary);
    min-height: 0;
}

._editorPreview_w48h8_1853 {
    flex: 1;
    padding: 20px;
    overflow: hidden;
    background: var(--color-bg-primary, white);
    min-height: 0;
    user-select: none;
}

._editorPreview_w48h8_1853 svg {
    max-width: none;
    height: auto;
}

._editorFooter_w48h8_1867 {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px;
    border-top: 1px solid var(--border-subtle);
}

/* AI Regenerate Button & Header Actions */
._headerActions_w48h8_1876 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._aiButton_w48h8_1882 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 2.25rem;
    padding: 0 1rem;
    background: var(--indigo-700);
    border: none;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
}

._aiButton_w48h8_1882:hover:not(:disabled) {
    opacity: 0.9;
}

._aiButton_w48h8_1882:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Regen Modal - follows RegenerateAnswersModal design */
._regenModal_w48h8_1908 {
    max-width: 37.5rem;
}

._regenModalBody_w48h8_1912 {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

._regenModalDesc_w48h8_1918 {
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
}

._regenSectionList_w48h8_1926 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-height: 15rem;
    overflow-y: auto;
}

._regenAllBtn_w48h8_1934 {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
    border: 0.125rem solid var(--border-subtle);
    border-radius: 0.5rem;
    cursor: pointer;
    background: var(--surface-subtle);
    width: 100%;
    text-align: left;
    transition: all 0.2s ease;
}

._regenAllBtn_w48h8_1934:hover:not(:disabled) {
    transform: translateY(-0.125rem);
    background: rgba(109, 40, 217, 0.05);
    border-color: rgba(109, 40, 217, 0.3);
}

._regenAllBtn_w48h8_1934:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

._regenAllBtnSelected_w48h8_1959 {
    border-color: var(--indigo-700);
    background: rgba(109, 40, 217, 0.05);
}

._regenAllBtn_w48h8_1934 strong {
    display: block;
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

._regenAllDesc_w48h8_1972 {
    display: block;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
    line-height: 1.5;
}

/* Orange variant for "regenerate all" option */
._regenAllBtnOrange_w48h8_1982:hover:not(:disabled) {
    background: rgba(251, 146, 60, 0.05);
    border-color: rgba(251, 146, 60, 0.3);
}

._regenAllBtnOrangeSelected_w48h8_1987 {
    border-color: var(--warning-500);
    background: rgba(251, 146, 60, 0.05);
}

/* Badges inside option cards */
._regenBadgePurple_w48h8_1993 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(109, 40, 217, 0.1);
    color: var(--indigo-700);
    margin-top: 0.5rem;
    align-self: stretch;
}

._regenBadgeOrange_w48h8_2008 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(251, 146, 60, 0.1);
    color: var(--warning-500);
    margin-top: 0.5rem;
    align-self: stretch;
}

/* Accordion for section selection */
._regenAccordion_w48h8_2024 {
    border: 0.0625rem solid var(--border-subtle);
    border-radius: 0.5rem;
    overflow: hidden;
}

._regenAccordionButton_w48h8_2030 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem;
    background: var(--surface-subtle);
    border: none;
    cursor: pointer;
    transition: background 0.2s ease;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

._regenAccordionButton_w48h8_2030:hover {
    background: var(--slate-100);
}

._regenAccordionChevron_w48h8_2050 {
    transition: transform 0.2s ease;
    color: var(--text-secondary);
}

._regenAccordionChevronOpen_w48h8_2055 {
    transform: rotate(180deg);
}

._regenAccordionContent_w48h8_2059 {
    max-height: 0;
    overflow: hidden;
    background: white;
    border-top: 0.0625rem solid var(--border-subtle);
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
    padding: 0 1rem;
}

._regenAccordionContentOpen_w48h8_2068 {
    max-height: 31.25rem;
    padding: 1rem;
    transition: max-height 0.3s ease-in, padding 0.3s ease-in;
}

._regenCheckbox_w48h8_2074 {
    width: 1.125rem;
    height: 1.125rem;
    cursor: pointer;
    accent-color: var(--action-primary-bg);
}

/* Regen tips and context */

._regenSectionItem_w48h8_2083 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 0.375rem;
    cursor: pointer;
    transition: background 0.2s ease;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--text-primary);
    width: 100%;
    text-align: left;
}

._regenSectionItem_w48h8_2083:hover {
    background: var(--surface-subtle);
}

._regenTipsBox_w48h8_2102 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--surface-subtle);
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

._regenTextarea_w48h8_2115 {
    width: 100%;
    padding: 0.75rem;
    border: 0.0625rem solid var(--border-subtle);
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    resize: vertical;
    min-height: 6rem;
    background: var(--surface-subtle);
    transition: border-color 0.2s ease;
}

._regenTextarea_w48h8_2115:focus {
    outline: none;
    border-color: var(--indigo-700);
}

._regenNoteBox_w48h8_2133 {
    padding: 0.75rem 1rem;
    background: rgba(251, 146, 60, 0.1);
    border-radius: 0.375rem;
    font-family: Arial, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--warning-500);
    line-height: 1.5;
}

._regenModalActions_w48h8_2144 {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 0.5rem;
    border-top: 0.0625rem solid var(--border-subtle);
}

._regenCancelBtn_w48h8_2152 {
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    border: 0.0625rem solid var(--border-subtle);
    background: white;
    color: var(--text-secondary);
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

._regenCancelBtn_w48h8_2152:hover {
    background: var(--surface-subtle);
    border-color: var(--border-default);
}

._regenConfirmBtn_w48h8_2170 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.75rem 1.5rem;
    background: var(--action-primary-bg);
    color: white;
    border: none;
    border-radius: 0.5rem;
    font-family: Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

._regenConfirmBtn_w48h8_2170:hover:not(:disabled) {
    background: var(--action-primary-bg-hover);
}

._regenConfirmBtn_w48h8_2170:disabled {
    background: var(--border-default);
    cursor: not-allowed;
    opacity: 0.6;
}._container_ifu1n_1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    max-width: 37.5rem;
    text-align: center;
    margin: 2rem auto;
    padding: 2rem 1.5rem;
}

._iconContainer_ifu1n_12 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    background: var(--indigo-700);
    border-radius: 50%;
}

._iconContainer_ifu1n_12 svg,
._iconContainer_ifu1n_12 img {
    width: 2.5rem;
    height: 2.5rem;
    filter: brightness(0) invert(1);
}

._title_ifu1n_29 {
    font-family: Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 2rem;
    margin: 0;
}

._description_ifu1n_38 {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    color: var(--text-tertiary);
    line-height: 1.5rem;
    margin: 0;
}

._generateButton_ifu1n_46 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    height: 3rem;
    padding: 0 2rem;
    background: var(--indigo-700);
    border: none;
    border-radius: 0.625rem;
    color: white;
    font-family: Arial, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}

._generateButton_ifu1n_46:not(:disabled) {
    transition: opacity 0.2s ease-in-out;
}

._generateButton_ifu1n_46:hover:not(:disabled) {
    opacity: 0.9;
}

._generateButton_ifu1n_46:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
/* WorkloadDetailsScreen.module.css */

._workloadDetailsScreen_2p4ob_3 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  overflow: hidden;
}

._mainContent_2p4ob_11 {
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
}

._contentWrapper_2p4ob_18 {
  flex: 1;
  background: var(--border-subtle);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

._content_2p4ob_18 {
  flex: 1;
  padding: 0 1.5rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Main white card */
._mainCard_2p4ob_35 {
  display: flex;
  flex-direction: column;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0rem 0.0625rem 0.1875rem 0rem rgba(0, 0, 0, 0.1), 0rem 0.0625rem 0.125rem -0.0625rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  flex: 1;
  min-height: 0;
}

/* Entity Header (WORKLOAD - Nome) */
._entityHeader_2p4ob_48 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  height: 3rem;
  padding: 0 1.5rem;
  background: linear-gradient(to bottom, var(--cyan-500), var(--cyan-600));
  flex-shrink: 0;
}

._entityIcon_2p4ob_58 {
  font-size: 1.25rem;
  line-height: 1;
}

._pulsingDot_2p4ob_63 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: white;
  animation: _pulseBlueWhite_2p4ob_1 2s ease-in-out infinite;
  margin-left: -0.375rem;
}

@keyframes _pulseBlueWhite_2p4ob_1 {

  0%,
  100% {
    background: white;
    opacity: 1;
  }

  50% {
    background: var(--action-primary-bg);
    opacity: 0.7;
  }
}

._entityLabel_2p4ob_86 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: white;
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
  line-height: 1.25rem;
  flex: 1;
  position: relative;
}

._entityIdTooltip_2p4ob_98 {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  background: var(--slate-800);
  color: var(--border-subtle);
  font-family: 'Courier New', monospace;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.025rem;
  text-transform: none;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
  z-index: 100;
  cursor: pointer;
  user-select: all;
}

._entityIdTooltip_2p4ob_98::before {
  content: '';
  position: absolute;
  left: 24px;
  top: -12px;
  border: 6px solid transparent;
  border-bottom-color: var(--slate-800);
}

._entityIdTooltip_2p4ob_98:active {
  background: var(--slate-700);
}

._entityLabel_2p4ob_86:hover ._entityIdTooltip_2p4ob_98 {
  opacity: 1;
  pointer-events: auto;
}

._entityId_2p4ob_98 {
  font-family: 'Courier New', monospace;
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.8);
  background: rgba(0, 0, 0, 0.15);
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  letter-spacing: 0.025rem;
  cursor: help;
  transition: all 0.2s ease;
}

._entityId_2p4ob_98:hover {
  background: rgba(0, 0, 0, 0.25);
  color: white;
}

._tabsContainer_2p4ob_156 {
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
}

._cardContent_2p4ob_161 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.5rem 1.5rem 0.25rem 1.5rem;
  overflow-y: auto;
  /* CRITICAL: Scroll for all tabs EXCEPT Details */
  flex: 1;
  /* CRITICAL: Takes all available space */
  min-height: 0;
  /* CRITICAL: Allows flex child to shrink and grow */
}

/* Remove scroll and padding when Details tab is active (has fixed info cards and internal card scroll) */
._cardContent_2p4ob_161._cardContentWithFixedFooter_2p4ob_175 {
  overflow: hidden;
  /* No scroll on Details tab - cards handle their own scroll */
  padding-bottom: 0;
  /* No padding needed, cards fill available space */
}

/* Tab Placeholder */
._tabPlaceholder_2p4ob_183 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 18.75rem;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
}

._tabPlaceholder_2p4ob_183 p {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  ._content_2p4ob_18 {
    padding: 1rem;
  }
}

/* Loading and Error States */
._loadingState_2p4ob_208,
._errorState_2p4ob_209 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: var(--border-subtle);
}

._loadingState_2p4ob_208 p,
._errorState_2p4ob_209 p {
  font-size: 1rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

._errorState_2p4ob_209 p {
  color: var(--error-500);
}

/* Error state additional styles */
._errorState_2p4ob_209 h2 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--error-500);
  margin-bottom: 0.75rem;
}

._errorActions_2p4ob_237 {
  display: flex;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

._retryButton_2p4ob_243,
._logoutButton_2p4ob_244 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
}

._retryButton_2p4ob_243 {
  background: var(--action-primary-bg);
  color: white;
}

._retryButton_2p4ob_243:hover {
  background: var(--blue-700);
}

._logoutButton_2p4ob_244 {
  background: var(--error-500);
  color: white;
}

._logoutButton_2p4ob_244:hover {
  background: var(--error-600);
}

/* Breadcrumb Container with Delete Button */
._breadcrumbContainer_2p4ob_273 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.5rem;
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

/* Delete Button */
._deleteButton_2p4ob_283 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: white;
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._deleteButton_2p4ob_283:hover {
  background: rgba(239, 68, 68, 0.1);
}

/* Delete Confirmation */
._deleteConfirmation_2p4ob_305 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  background: white;
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
}

._confirmationText_2p4ob_315 {
  font-family: Arial, sans-serif;
  font-size: 0.875rem;
  color: var(--error-500);
  font-weight: 500;
}

._confirmationActions_2p4ob_322 {
  display: flex;
  gap: 0.5rem;
}

._confirmYes_2p4ob_327,
._confirmNo_2p4ob_328 {
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  font-family: Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: none;
}

._confirmYes_2p4ob_327 {
  background: var(--error-500);
  color: white;
}

._confirmYes_2p4ob_327:hover {
  background: var(--error-600);
}

._confirmNo_2p4ob_328 {
  background: var(--slate-100);
  color: var(--text-tertiary);
}

._confirmNo_2p4ob_328:hover {
  background: var(--border-subtle);
}

/* Skeleton Loading Animation */
._skeleton_2p4ob_358 {
  background: linear-gradient(90deg, var(--border-subtle) 25%, var(--slate-100) 50%, var(--border-subtle) 75%);
  background-size: 200% 100%;
  animation: _shimmer_2p4ob_1 1.5s ease-in-out infinite;
  border-radius: 0.5rem;
}

@keyframes _shimmer_2p4ob_1 {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}.slide-chrome {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* ===== Atmosphere ===== */
.slide-chrome-atmosphere {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(ellipse 80% 120% at 50% 90%, var(--slide-gradient-accent-1) 0%, transparent 70%),
    radial-gradient(ellipse 60% 50% at 80% 80%, var(--slide-gradient-accent-2) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 50% 100%, var(--slide-gradient-accent-3) 0%, transparent 50%);
  pointer-events: none;
}

/* ===== Content ===== */
.chrome-content {
  position: relative;
  z-index: 1;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

/* ===== Page Counter ===== */
.chrome-page-counter {
  position: absolute;
  bottom: 1rem;
  right: 1.5rem;
  z-index: 2;
  font-size: 14px;
  font-weight: 600;
  color: var(--slide-text-secondary);
  opacity: 0.7;
}
.side-panel-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 100;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.side-panel-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.side-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(680px, 90%);
  background: var(--slide-bg-secondary);
  border-left: 1px solid var(--slide-border);
  z-index: 101;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  opacity: 0;
  transform: translateX(60px);
  transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.side-panel.open {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

.side-panel.side-panel-left {
  right: auto;
  left: 0;
  border-left: none;
  border-right: 1px solid var(--slide-border);
  transform: translateX(-60px);
}

.side-panel.side-panel-left.open {
  transform: translateX(0);
}


.side-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 2rem;
  border-bottom: 1px solid var(--slide-border);
  flex-shrink: 0;
}

.side-panel-header h2 {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0;
}

.side-panel-close {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.25rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.375rem;
  transition: color 0.2s, background 0.2s;
}

.side-panel-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.side-panel-content {
  flex: 1;
  overflow-y: auto;
  padding: 1.5rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Cards inside panel reuse item-card styles from WhyWeAreHereSlide.css */
.side-panel-content .item-card {
  flex: unset;
  min-height: 7rem;
}

.side-panel-content .item-card-content {
  padding-right: 7rem;
}
.detail-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
  z-index: 200;
}

.detail-modal-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.detail-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.95);
  width: min(700px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease;
  z-index: 201;
  text-align: center;
}

.detail-modal.open {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}

.detail-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.detail-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.detail-modal-icon-area {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.detail-modal-icon-area .slide-icon svg {
  width: 3.5rem;
  height: 3.5rem;
}

.detail-modal-icon-area .opportunity-icon {
  color: var(--slide-highlight);
}

.detail-modal-icon-area .risk-icon {
  color: var(--slide-danger);
}

.detail-modal-title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.25rem;
  line-height: 1.2;
}

.detail-modal-badges {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.detail-badge {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.35rem 0.85rem;
  border-radius: 0.4rem;
}

.detail-badge.impact-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}
.detail-badge.impact-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}
.detail-badge.impact-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}
.detail-badge.impact-low {
  background: color-mix(in srgb, var(--slide-success) 15%, transparent);
  color: var(--slide-success);
}

.detail-badge.severity-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}
.detail-badge.severity-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}
.detail-badge.severity-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}
.detail-badge.severity-low {
  background: color-mix(in srgb, var(--slide-info) 15%, transparent);
  color: var(--slide-info);
}

.detail-badge.savings {
  background: color-mix(in srgb, var(--slide-success) 10%, transparent);
  color: var(--slide-success);
}

.detail-badge.cost {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}

.detail-badge.timeline {
  background: var(--slide-border);
  color: var(--slide-text-secondary);
}

.detail-modal-description {
  font-size: 2rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0;
}
/* ===== Slide Container ===== */
.slide.why-we-are-here {
  position: relative;
  width: 100%;
  height: 100%;
  color: var(--slide-text-primary);
  font-family: var(--slide-font-family);
  display: flex;
  flex-direction: column;
  padding: 2rem 3rem;
  box-sizing: border-box;
  overflow: hidden;
}

/* ===== Header ===== */
.slide-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
  height: 6rem;
  flex-shrink: 0;
}

.slide-header-top {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.slide-label {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}

.client-name {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}

/* ===== Metrics Bar ===== */
.metrics-bar {
  display: flex;
  align-items: center;
  gap: 2rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1rem;
  padding: 1.25rem 2.5rem;
}

.metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
}

.metric-value {
  font-size: 2rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}

.metric-label {
  font-size: 0.9rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}

.metric-divider {
  width: 1px;
  height: 3rem;
  background: var(--slide-border);
}

/* ===== Title Section ===== */
.slide-title-section {
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}

.slide-title {
  font-size: 2.2rem;
  font-weight: 800;
  margin: 0 0 0.3rem;
  letter-spacing: -0.02em;
}

.slide-subtitle {
  font-size: 1.3rem;
  color: var(--slide-text-secondary);
  margin: 0;
}

/* ===== Two-Column Layout ===== */
.slide-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  flex: 1;
  min-height: 0;
}

.slide-column {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.column-header {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 1rem;
}

.column-header h3 {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}

.column-icon {
  font-size: 1rem;
  color: var(--slide-success);
}

.column-icon.danger {
  color: var(--slide-danger);
}

/* ===== Item List ===== */
.item-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex: 1;
  min-height: 0;
}

/* ===== Item Card — left bar + icon layout ===== */
.item-card {
  position: relative;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 1rem;
  padding: 0;
  display: flex;
  align-items: stretch;
  flex: 1;
  min-height: 0;
  box-shadow: var(--slide-card-shadow);
  transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
  cursor: pointer;
}

.item-card:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}

.risk-card:hover {
  border-color: var(--slide-danger);
  box-shadow: var(--slide-card-hover-shadow-danger);
}

/* ===== Icon Area — left vertical bar ===== */
.item-card-icon-area {
  flex-shrink: 0;
  width: 5.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: color-mix(in srgb, var(--slide-highlight) 6%, transparent);
  border-right: 1px solid var(--slide-border);
  border-radius: 1rem 0 0 1rem;
}

.item-card-icon-area.risk-icon-area {
  background: color-mix(in srgb, var(--slide-danger) 6%, transparent);
  border-radius: 1rem 0 0 1rem;
}

.slide-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.slide-icon svg {
  width: 2.25rem;
  height: 2.25rem;
}

.card-icon.opportunity-icon {
  color: var(--slide-highlight);
}

.card-icon.risk-icon {
  color: var(--slide-danger);
}

/* ===== Card Content ===== */
.item-card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1;
  padding: 1.5rem 5rem 1.5rem 2rem;
}

.item-title {
  font-weight: 700;
  line-height: 1.25;
  color: var(--slide-text-primary);
}

.item-card-meta {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* ===== Badges ===== */
.impact-badge,
.severity-badge {
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.3rem 0.7rem;
  border-radius: 0.35rem;
}

.impact-badge.impact-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}
.impact-badge.impact-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}
.impact-badge.impact-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}
.impact-badge.impact-low {
  background: color-mix(in srgb, var(--slide-success) 15%, transparent);
  color: var(--slide-success);
}

.severity-badge.severity-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}
.severity-badge.severity-high {
  background: color-mix(in srgb, var(--slide-highlight) 15%, transparent);
  color: var(--slide-highlight-hover);
}
.severity-badge.severity-medium {
  background: color-mix(in srgb, var(--slide-warning) 15%, transparent);
  color: var(--slide-warning);
}
.severity-badge.severity-low {
  background: color-mix(in srgb, var(--slide-info) 15%, transparent);
  color: var(--slide-info);
}

.item-savings {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--slide-success);
  background: color-mix(in srgb, var(--slide-success) 10%, transparent);
  padding: 0.25rem 0.7rem;
  border-radius: 0.35rem;
}

.item-timeline {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--slide-text-secondary);
  background: var(--slide-border);
  padding: 0.25rem 0.7rem;
  border-radius: 0.35rem;
}

.item-cost {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--slide-danger);
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  padding: 0.25rem 0.7rem;
  border-radius: 0.35rem;
}

/* ===== More Button ===== */
.more-button {
  margin-top: 0.75rem;
  padding: 0.5rem 1.5rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 2rem;
  color: var(--slide-highlight);
  font-size: 1.1rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, transform 0.15s;
  align-self: center;
  text-align: center;
  flex-shrink: 0;
}

.more-button:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-1px);
}

.more-button.danger {
  color: var(--slide-danger);
}

.more-button.danger:hover {
  border-color: var(--slide-danger);
}

/* ===== Info Button ===== */
.info-button {
  position: absolute;
  bottom: 0.75rem;
  right: 0.75rem;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 1.1rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.info-button:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}

.info-button.danger:hover {
  background: color-mix(in srgb, var(--slide-danger) 10%, transparent);
  border-color: var(--slide-danger);
  color: var(--slide-danger);
}
/* ===== Environment Slide ===== */
.environment-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 2rem 3rem;
  box-sizing: border-box;
  overflow: hidden;
}

/* ===== Header ===== */
.env-header {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  height: 6rem;
  flex-shrink: 0;
}

.env-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.env-label {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}

.env-client-name {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}

/* ===== Title ===== */
.env-title-section {
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}

.env-title {
  font-size: 3rem;
  font-weight: 800;
  margin: 0 0 0.3rem;
  letter-spacing: -0.02em;
}

.env-subtitle {
  font-size: 1.3rem;
  color: var(--slide-text-secondary);
  margin: 0;
}

/* ===== Metrics Row ===== */
.env-metrics-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  flex-shrink: 0;
}

.env-metric-card {
  flex: 1;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
  padding: 1.25rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  box-shadow: var(--slide-card-shadow);
}

.env-metric-value {
  font-size: 1.8rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}

.env-metric-label {
  font-size: 0.9rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
}

/* ===== Section Divider ===== */
.env-section-divider {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 0.75rem;
  flex-shrink: 0;
}

.env-section-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--slide-highlight);
  flex-shrink: 0;
}

.env-section-dot-success {
  background: var(--slide-success);
}

.env-section-label {
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}

.env-section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}

/* ===== Business Objectives ===== */
.env-middle {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 1.25rem;
}

.env-objectives-row {
  display: flex;
  gap: 1rem;
  flex: 1;
  min-height: 0;
  align-items: stretch;
}

.env-objective-card {
  flex: 0 0 calc(33.333% - 0.667rem);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 3px solid var(--slide-border);
  border-top: 3px solid var(--slide-success);
  border-radius: 0.75rem;
  padding: 3rem 2rem 1.375rem;
  box-shadow: var(--slide-card-shadow);
  text-align: center;
  min-height: 0;
  overflow: hidden;
}

.env-objective-icon {
  position: absolute;
  top: 0.6rem;
  left: 50%;
  transform: translateX(-50%);
}

.env-objective-card-clickable {
  cursor: pointer;
  transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
}

.env-objective-card-clickable:hover {
  border-color: var(--slide-success);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}


.env-objective-icon .slide-icon svg {
  width: 2.25rem;
  height: 2.25rem;
}

.env-obj-icon {
  color: var(--slide-success);
}

.env-objective-content {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  min-width: 0;
  text-align: center;
}

.env-objective-goal {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.3;
  display: block;
  width: 100%;
}

.env-objective-description {
  font-size: clamp(0.7rem, 1.1vw, 1.2rem);
  color: var(--slide-text-secondary);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (max-height: 750px) {
  .env-objective-description { display: none; }
}

@media (max-height: 900px) {
  .env-objective-goal { font-size: 1.2rem; }
  .env-finding-pain { font-size: 0.875rem; }
  .env-finding-resolution { font-size: 0.875rem; }
}

.env-objective-enabler {
  font-size: 1.2rem;
  color: var(--slide-success);
  font-weight: 500;
  line-height: 1.3;
}

/* ===== Issues Section (bottom-aligned) ===== */
.env-issues-section {
  flex-shrink: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}


/* ===== Findings Grid ===== */
.env-findings-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.6rem;
  overflow: hidden;
}

.env-finding-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 3px solid var(--slide-border);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  min-height: 4.5rem;
  box-shadow: var(--slide-card-shadow);
  transition: border-color 0.2s, box-shadow 0.2s;
  cursor: pointer;
  overflow: hidden;
}

.env-finding-card.env-finding-critical:hover {
  border-color: var(--slide-danger);
  box-shadow: var(--slide-card-hover-shadow);
}

.env-finding-card.env-finding-high:hover {
  border-color: var(--slide-warning);
  box-shadow: var(--slide-card-hover-shadow);
}

.env-finding-card.env-finding-medium:hover {
  border-color: var(--slide-info);
  box-shadow: var(--slide-card-hover-shadow);
}

.env-finding-card.env-finding-critical {
  border-left: 3px solid var(--slide-danger);
}

.env-finding-card.env-finding-high {
  border-left: 3px solid var(--slide-warning);
}

.env-finding-card.env-finding-medium {
  border-left: 3px solid var(--slide-info);
}

/* Icon area */
.env-finding-icon-area {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.env-finding-icon-area .slide-icon svg {
  width: 2.25rem;
  height: 2.25rem;
}

.env-icon-critical {
  color: var(--slide-danger);
}

.env-icon-high {
  color: var(--slide-warning);
}

.env-icon-medium {
  color: var(--slide-info);
}

/* Content */
.env-finding-content {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  flex: 1;
  min-width: 0;
}

.env-finding-pain {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.25;
}

.env-finding-resolution {
  font-size: 1.1rem;
  color: var(--slide-success);
  font-weight: 500;
  line-height: 1.3;
}

/* Info button */
.env-finding-info {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 0.9rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.env-finding-info:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}

/* More badge */
.env-more-badge-row {
  display: flex;
  justify-content: center;
  margin-top: 0.75rem;
  flex-shrink: 0;
}

.env-more-badge {
  padding: 0.5rem 1.5rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 2rem;
  color: var(--slide-highlight);
  font-size: 1.1rem;
  font-weight: 700;
}

/* ===== Finding Modal ===== */
.env-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.env-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(650px, 80%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 2.5rem 3rem;
  z-index: 201;
  text-align: center;
}

.env-modal.env-modal-critical {
  border-top: 4px solid var(--slide-danger);
}

.env-modal.env-modal-high {
  border-top: 4px solid var(--slide-warning);
}

.env-modal.env-modal-medium {
  border-top: 4px solid var(--slide-info);
}

.env-modal.env-modal-objectives {
  border-top: 4px solid var(--slide-success);
}

.env-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.env-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.env-modal-icon {
  margin-bottom: 1.25rem;
}

.env-modal-icon-svg.slide-icon svg {
  width: 3rem;
  height: 3rem;
}

.env-modal-pain {
  font-size: 2.8rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.5rem;
  line-height: 1.2;
}

.env-modal-section {
  text-align: left;
  margin-bottom: 1.25rem;
}

.env-modal-label {
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  display: block;
  margin-bottom: 0.3rem;
}

.env-modal-text {
  font-size: 2.1rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}

.env-modal-resolution {
  color: var(--slide-success);
  font-weight: 600;
}
/* ===== Approach Slide ===== */
.approach-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 2rem 3rem;
  box-sizing: border-box;
  overflow: hidden;
}

/* ===== Header (same pattern as slide 1) ===== */
.approach-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
  height: 6rem;
  flex-shrink: 0;
}

.approach-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.approach-label {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}

.approach-client-name {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}

.approach-metrics-bar {
  display: flex;
  align-items: center;
  gap: 2rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1rem;
  padding: 1.25rem 2.5rem;
}

.approach-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
}

.approach-metric-value {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}

.approach-metric-value.approach-metric-amber {
  color: var(--slide-warning);
}

.approach-metric-label {
  font-size: 0.9rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}

.approach-metric-divider {
  width: 1px;
  height: 3rem;
  background: var(--slide-border);
}

/* ===== Title Section ===== */
.approach-title-section {
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}

.approach-title {
  font-size: 3rem;
  font-weight: 800;
  margin: 0 0 0.3rem;
  letter-spacing: -0.02em;
}

.approach-subtitle {
  font-size: 1.3rem;
  color: var(--slide-text-secondary);
  margin: 0;
}

/* ===== Section Header ===== */
.section-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 8px;
}

.section-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--slide-highlight);
  flex-shrink: 0;
}

.section-label {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}

.section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}

/* ===== Strategy Distribution Section ===== */
.approach-strategy-section {
  flex-shrink: 0;
  margin-bottom: 1.25rem;
}

/* ===== Strategy Bar ===== */
.strategy-bar-container {
  position: relative;
  margin-bottom: 6px;
}

.strategy-bar {
  display: flex;
  width: 100%;
  height: 44px;
  border-radius: 6px;
  overflow: hidden;
}

.strategy-segment {
  height: 100%;
  transition: opacity 0.2s;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.strategy-segment:hover {
  opacity: 0.8;
}

.segment-label {
  font-size: 14px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.7);
  white-space: nowrap;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.2);
}

.strategy-tooltip {
  position: absolute;
  transform: translateX(-50%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.4rem;
  padding: 0.3rem 0.7rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.1rem;
  pointer-events: none;
  white-space: nowrap;
  z-index: 10;
}

.strategy-tooltip strong {
  font-size: 14px;
  color: var(--slide-text-primary);
}

.strategy-tooltip span {
  font-size: 12px;
  color: var(--slide-text-secondary);
}

/* ===== Axis Labels ===== */
.strategy-axis {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 8px;
}

.axis-label {
  font-size: 13px;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}

.axis-gradient {
  flex: 1;
  height: 2px;
  background: linear-gradient(to right, var(--slide-border), var(--slide-success));
  border-radius: 1px;
}

/* ===== Legend Grid ===== */
.strategy-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 1.5rem;
}

.legend-item {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.legend-name {
  font-size: 14px;
  color: var(--slide-text-secondary);
}

.legend-count {
  font-size: 14px;
  font-weight: 700;
  color: var(--slide-text-primary);
}

/* ===== Workloads Section ===== */
.approach-workloads-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow-y: auto;
  overflow-x: hidden;
  margin-bottom: 0.5rem;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}

.approach-workloads-section::-webkit-scrollbar {
  width: 6px;
}

.approach-workloads-section::-webkit-scrollbar-track {
  background: transparent;
}

.approach-workloads-section::-webkit-scrollbar-thumb {
  background: var(--slide-border);
  border-radius: 3px;
}

.approach-workloads-section::-webkit-scrollbar-thumb:hover {
  background: var(--slide-text-secondary);
}

/* ===== Workload List ===== */
.workload-list {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: max-content;
  align-content: start;
  gap: 8px;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow-y: auto;
  overflow-x: hidden;
}

.workload-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 3px solid transparent;
  border-left: 3px solid;
  border-radius: 0.75rem;
  padding: 0.6rem 1.25rem;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  box-shadow: var(--slide-card-shadow);
  transition: border-color 0.2s, box-shadow 0.2s;
  cursor: pointer;
}

.workload-card:hover {
  border-color: var(--wl-color);
  box-shadow: var(--slide-card-hover-shadow);
}

.workload-strategy-badge {
  font-size: 14px;
  font-weight: 700;
  border-radius: 4px;
  padding: 4px 10px;
  white-space: nowrap;
  flex-shrink: 0;
  min-width: 6.5rem;
  text-align: center;
}

.workload-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.workload-name {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.workload-rationale {
  font-size: 0.95rem;
  color: var(--slide-text-secondary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ===== More Badge ===== */
.more-badge {
  margin-top: 0.5rem;
  padding: 0.5rem 1.5rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 2rem;
  color: var(--slide-highlight);
  font-size: 1.1rem;
  font-weight: 700;
  cursor: pointer;
  transition: border-color 0.2s, transform 0.15s;
  align-self: center;
  font-family: var(--slide-font-family);
  flex-shrink: 0;
}

.more-badge:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-1px);
}

/* ===== Bottom Band ===== */
.approach-bottom-band {
  display: flex;
  padding-top: 0.75rem;
  gap: 3rem;
  border-top: 1px solid var(--slide-border);
  flex-shrink: 0;
  margin-top: 0.75rem;
}

.bottom-band-left {
  width: 58%;
}

.bottom-band-divider {
  width: 1px;
  align-self: stretch;
  background: var(--slide-border);
}

.bottom-band-right {
  width: 38%;
}

.section-label-sm {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  display: block;
  margin-bottom: 4px;
}

.rationale-text {
  font-size: 15px;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}

.considerations-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.considerations-list li {
  font-size: 15px;
  color: var(--slide-text-secondary);
  display: flex;
  align-items: flex-start;
  gap: 0.3rem;
}

.consideration-bullet {
  color: var(--slide-highlight);
  font-weight: 700;
  flex-shrink: 0;
}

/* ===== Workload Panel ===== */
.workload-panel-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 100;
}

.workload-panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 44%;
  background: var(--slide-bg-secondary);
  border-left: 1px solid var(--slide-border);
  z-index: 101;
  display: flex;
  flex-direction: column;
  animation: slideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes slideIn {
  from { transform: translateX(100%); }
  to { transform: translateX(0); }
}

.workload-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 2rem;
  border-bottom: 1px solid var(--slide-border);
}

.workload-panel-header h2 {
  font-size: 1.75rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0;
}

.workload-panel-close {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.25rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.375rem;
  transition: color 0.2s, background 0.2s;
}

.workload-panel-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.workload-panel-content {
  flex: 1;
  overflow-y: auto;
  padding: 1.5rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.workload-panel-content .workload-card {
  flex: 0 0 auto;
  padding: 1rem 1.25rem;
}

.workload-panel-content .workload-name {
  font-size: 1.5rem;
}

.workload-panel-content .workload-rationale {
  font-size: 1.1rem;
}

.workload-panel-content .workload-strategy-badge {
  font-size: 0.85rem;
}

/* ===== Workload Info Button ===== */
.workload-info-btn {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 0.9rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
}

.workload-info-btn:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}

/* ===== Workload Detail Modal ===== */
.wl-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.wl-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(1200px, 90%);
  max-height: 85%;
  overflow-y: auto;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 2.5rem 3rem;
  z-index: 201;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}

.wl-modal::-webkit-scrollbar {
  width: 6px;
}

.wl-modal::-webkit-scrollbar-track {
  background: transparent;
}

.wl-modal::-webkit-scrollbar-thumb {
  background: var(--slide-border);
  border-radius: 3px;
}

.wl-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.wl-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

/* Modal Header */
.wl-modal-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.wl-modal-strategy {
  font-size: 2.4rem;
  font-weight: 700;
  border-radius: 0.3rem;
  padding: 0.25rem 0.75rem;
  text-transform: uppercase;
}

.wl-modal-list .wl-modal-strategy {
  font-size: 1.5rem;
  padding: 0.15rem 0.5rem;
}

/* Resource mapping 3-column table */
.wl-modal-resource-table {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.wl-modal-resource-row {
  display: grid;
  grid-template-columns: 70% 10% 20%;
  align-items: center;
  justify-items: start;
  gap: 0.75rem;
}

.wl-modal-resource-row .wl-modal-strategy {
  justify-self: center;
}

.wl-modal-resource-row .wl-modal-resource-service {
  justify-self: end;
  text-align: right;
}

.wl-modal-resource-current {
  font-size: 1.6rem;
  color: var(--slide-text-primary);
}

.wl-modal-resource-service {
  font-size: 1.6rem;
  color: var(--slide-text-primary);
  opacity: 0.85;
}

.wl-modal-resource-table .wl-modal-strategy {
  font-size: 1.4rem;
  padding: 0.15rem 0.5rem;
  white-space: nowrap;
}

.wl-modal-title {
  font-size: 3.5rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0;
  flex: 1;
}

.wl-modal-cost {
  font-size: 2.275rem;
  font-weight: 700;
  color: var(--slide-highlight);
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  padding: 0.3rem 0.8rem;
  border-radius: 0.4rem;
}

/* Overview */
.wl-modal-overview {
  font-size: 1.925rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0 0 1.5rem;
}

/* Architecture Diagram */
.wl-modal-architecture {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
  padding: 1.25rem;
  background: var(--slide-bg-primary);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
}

.wl-arch-image {
  width: 100%;
  max-height: 300px;
  object-fit: contain;
  border-radius: 0.5rem;
}

/* Architecture Image Section (below everything) */
.wl-modal-arch-image-section {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--slide-border);
}

.wl-modal-arch-image-section h3 {
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
  margin: 0 0 0.75rem;
}

.wl-modal-arch-image-section .wl-arch-image {
  width: 100%;
  max-height: 400px;
  object-fit: contain;
  border-radius: 0.5rem;
  background: var(--slide-bg-primary);
  border: 1px solid var(--slide-border);
  padding: 1rem;
}

.wl-arch-node {
  font-size: 1rem;
  font-weight: 600;
  padding: 0.5rem 1rem;
  border-radius: 0.4rem;
}

.wl-arch-source {
  background: color-mix(in srgb, var(--slide-danger) 12%, transparent);
  color: var(--slide-danger);
  border: 1px solid color-mix(in srgb, var(--slide-danger) 30%, transparent);
}

.wl-arch-service {
  background: color-mix(in srgb, var(--slide-info) 12%, transparent);
  color: var(--slide-info);
  border: 1px solid color-mix(in srgb, var(--slide-info) 30%, transparent);
}

.wl-arch-target {
  background: color-mix(in srgb, var(--slide-success) 12%, transparent);
  color: var(--slide-success);
  border: 1px solid color-mix(in srgb, var(--slide-success) 30%, transparent);
}

.wl-arch-arrow {
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.2rem;
  padding: 0;
}

/* Full-width sections */
.wl-modal-full-width {
  margin-bottom: 1.5rem;
}

.wl-modal-full-width h3 {
  font-size: 1.375rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
  margin: 1rem 0 1rem;
}

.wl-modal-full-width h3:not(:first-child) {
  margin-top: 1.5rem;
}

/* Two-column details */
.wl-modal-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}

.wl-modal-col h3 {
  font-size: 1.375rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
  margin: 1rem 0 1rem;
}

.wl-modal-col h3:not(:first-child) {
  margin-top: 1.25rem;
}

.wl-modal-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.wl-modal-list li {
  font-size: 1.75rem;
  color: var(--slide-text-primary);
  padding-left: 1.75rem;
  position: relative;
}

.wl-modal-list li::before {
  content: '•';
  position: absolute;
  left: 0;
  margin-right: 0.5rem;
  color: var(--slide-text-secondary);
}

.wl-list-pain li::before {
  color: var(--slide-danger);
}

.wl-list-pros li::before {
  content: '✓';
  color: var(--slide-success);
}

.wl-list-cons li::before {
  content: '✗';
  color: var(--slide-danger);
}
/* ===== Investment Slide ===== */
.investment-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 2rem 3rem;
  box-sizing: border-box;
  overflow: hidden;
}

/* ===== Header ===== */
.investment-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
  height: 6rem;
  flex-shrink: 0;
}

.investment-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.investment-label {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}

.investment-client-name {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}

.investment-metrics-bar {
  display: flex;
  align-items: center;
  gap: 2rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1rem;
  padding: 1rem 2.5rem;
}

.investment-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.15rem;
}

.investment-metric-value {
  font-size: 2.25rem;
  font-weight: 800;
  color: var(--slide-highlight);
  line-height: 1;
}

.investment-metric-value.investment-metric-success {
  color: var(--slide-success);
}

.investment-metric-label {
  font-size: 0.85rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--slide-text-secondary);
}

.investment-metric-divider {
  width: 1px;
  height: 3rem;
  background: var(--slide-border);
}

/* ===== Title Row ===== */
.investment-title-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}

.investment-title-section {
  display: flex;
  flex-direction: column;
}

.investment-title {
  font-size: 3rem;
  font-weight: 800;
  margin: 0;
  letter-spacing: -0.02em;
}

.investment-subtitle {
  font-size: 1.3rem;
  color: var(--slide-text-secondary);
  margin: 0;
}

/* ===== Modality Tabs ===== */
.modality-tabs {
  display: flex;
  gap: 3px;
  background: var(--slide-border);
  border-radius: 0.6rem;
  padding: 3px;
}

.modality-tab {
  font-size: 1rem;
  font-weight: 600;
  padding: 0.5rem 1.4rem;
  border: none;
  border-radius: 0.5rem;
  background: transparent;
  color: var(--slide-text-secondary);
  cursor: pointer;
  font-family: var(--slide-font-family);
  transition: background 0.2s, color 0.2s;
  white-space: nowrap;
}

.modality-tab.active {
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
}

.modality-tab:hover:not(.active) {
  color: var(--slide-text-primary);
}

/* ===== KPI Cards Row ===== */
.investment-kpi-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}

.investment-kpi-card {
  background: var(--slide-card-bg-transparent);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
  padding: 1rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.investment-kpi-card.kpi-highlight {
  border-color: var(--slide-highlight);
}

.investment-kpi-card.kpi-success {
  border-color: var(--slide-success);
}

.kpi-card-label {
  font-size: 0.9rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
}

.kpi-card-value {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  line-height: 1.1;
}

.kpi-highlight .kpi-card-value {
  color: var(--slide-highlight);
}

.kpi-success .kpi-card-value {
  color: var(--slide-success);
}

.kpi-card-sub {
  font-size: 0.85rem;
  color: var(--slide-text-secondary);
}

/* ===== TCO Table ===== */
.investment-table-container {
  flex: 1;
  min-height: 0;
  margin-bottom: 1rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.table-view-toggle {
  display: flex;
  gap: 0;
  margin-bottom: 0.75rem;
  align-self: flex-start;
  border: 1px solid var(--slide-border);
  border-radius: 0.5rem;
  overflow: hidden;
  flex-shrink: 0;
}

.view-toggle-btn {
  font-size: 0.9rem;
  font-weight: 600;
  padding: 0.4rem 1.2rem;
  border: none;
  background: transparent;
  color: var(--slide-text-secondary);
  cursor: pointer;
  font-family: var(--slide-font-family);
  transition: background 0.2s, color 0.2s;
}

.view-toggle-btn.active {
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
}

.view-toggle-btn:hover:not(.active) {
  color: var(--slide-text-primary);
}

.investment-table-scroll {
  display: none;
}

.investment-table-footer {
  display: none;
}

.investment-table-wrapper {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--slide-border) transparent;
}

.investment-table-wrapper::-webkit-scrollbar {
  width: 6px;
}

.investment-table-wrapper::-webkit-scrollbar-track {
  background: transparent;
}

.investment-table-wrapper::-webkit-scrollbar-thumb {
  background: var(--slide-border);
  border-radius: 3px;
}

.investment-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.1rem;
  table-layout: fixed;
}

.investment-table th:first-child,
.investment-table td:first-child {
  width: 30%;
}

.investment-table thead {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--slide-bg-primary);
}

.investment-table tfoot {
  position: sticky;
  bottom: 0;
  z-index: 1;
  background: var(--slide-bg-primary);
}

.investment-table th {
  text-align: right;
  font-weight: 700;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
  padding: 0.6rem 1.25rem;
  border-bottom: 1px solid var(--slide-border);
}

.investment-table th:first-child {
  text-align: left;
}

.investment-table td {
  padding: 0.55rem 1.25rem;
  text-align: right;
  color: var(--slide-text-secondary);
  border-bottom: 1px solid color-mix(in srgb, var(--slide-border) 50%, transparent);
}

.investment-table td:first-child {
  text-align: left;
  color: var(--slide-text-primary);
  font-weight: 600;
}

.investment-table td.active-col {
  color: var(--slide-text-primary);
  font-weight: 700;
  background: color-mix(in srgb, var(--slide-text-secondary) 8%, transparent);
}

.investment-table th.active-col {
  background: color-mix(in srgb, var(--slide-text-secondary) 8%, transparent);
}

.investment-table tfoot td {
  font-weight: 800;
  font-size: 1.2rem;
  color: var(--slide-text-primary);
  border-top: 1px solid var(--slide-border);
  border-bottom: none;
  padding-top: 0.7rem;
}

/* ===== Incentives Section ===== */
.investment-incentives {
  flex-shrink: 0;
  background: var(--slide-card-bg-transparent);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
  padding: 1rem 1.75rem;
}

.incentives-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.incentives-header-right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.incentives-info-button {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 1rem;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, serif;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.incentives-info-button:hover {
  background: color-mix(in srgb, var(--slide-highlight) 10%, transparent);
  border-color: var(--slide-highlight);
  color: var(--slide-highlight);
}

.incentives-title-group {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.incentives-title {
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--slide-text-primary);
}

.incentives-tier {
  font-size: 0.8rem;
  font-weight: 600;
  background: var(--slide-border);
  color: var(--slide-text-secondary);
  padding: 0.2rem 0.6rem;
  border-radius: 0.3rem;
  text-transform: uppercase;
}

.incentives-arr {
  font-size: 1rem;
  color: var(--slide-text-secondary);
}

.incentives-arr strong {
  color: var(--slide-text-primary);
}

.incentives-kpi-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.25rem;
}

.incentive-kpi {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.incentive-kpi-label {
  font-size: 0.85rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
}

.incentive-kpi-value {
  font-size: 1.9rem;
  font-weight: 800;
  color: var(--slide-text-primary);
}

.incentive-kpi-highlight .incentive-kpi-value {
  color: var(--slide-success);
}

/* ===== Incentives Modal ===== */
.incentives-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.incentives-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(800px, 85%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.25rem;
  padding: 2.5rem 3rem;
  z-index: 201;
}

.incentives-modal-close {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: color 0.2s, background 0.2s;
}

.incentives-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.incentives-modal-title {
  font-size: 3.0625rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.5rem;
}

.incentives-modal-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  margin-bottom: 1.5rem;
}

.incentives-modal-col {
  display: flex;
  flex-direction: column;
}

.incentives-modal-col .incentives-detail-table {
  flex: 1;
}

.incentives-detail-table tfoot {
  vertical-align: bottom;
}

.incentives-modal-col h3 {
  font-size: 1.925rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  margin: 0 0 0.75rem;
}

.incentives-detail-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.75rem;
}

.incentives-detail-table th {
  text-align: left;
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-secondary);
  padding: 0.4rem 0;
  border-bottom: 1px solid var(--slide-border);
}

.incentives-detail-table th:last-child {
  text-align: right;
}

.incentives-detail-table td {
  padding: 0.4rem 0;
  color: var(--slide-text-secondary);
  border-bottom: 1px solid color-mix(in srgb, var(--slide-border) 50%, transparent);
}

.incentives-detail-table td:last-child {
  text-align: right;
  font-weight: 600;
  color: var(--slide-text-primary);
}

.incentives-detail-table tfoot td {
  font-weight: 800;
  color: var(--slide-text-primary);
  border-top: 1px solid var(--slide-border);
  border-bottom: none;
  padding-top: 0.5rem;
}

.incentives-modal-summary {
  font-size: 1rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  border-top: 1px solid var(--slide-border);
  padding-top: 1rem;
}

.incentives-modal-summary strong {
  color: var(--slide-success);
}

.incentive-kpi-bonus {
  font-size: 0.65em;
  opacity: 0.75;
  font-weight: 400;
  white-space: nowrap;
}

/* Greenfield toggle */

.investment-controls {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.investment-greenfield-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  user-select: none;
  background: var(--slide-border);
  border-radius: 0.390rem;
  padding: 3px 0.910rem;
  box-sizing: border-box;
  align-self: stretch;
}

.investment-greenfield-toggle input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.investment-toggle-track {
  width: 2.75rem;
  height: 1.25rem;
  background: rgba(255,255,255,0.35);
  border-radius: 4px;
  position: relative;
  transition: background 0.35s;
  flex-shrink: 0;
}

.investment-greenfield-toggle input:checked + .investment-toggle-track {
  background: var(--brand-amber, #F59E0B);
}

.investment-toggle-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 1rem;
  height: 1rem;
  background: white;
  border-radius: 2px;
  transition: transform 0.35s ease;
}

.investment-greenfield-toggle input:checked + .investment-toggle-track .investment-toggle-thumb {
  transform: translateX(1.5rem);
}

.investment-toggle-label {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--slide-text-secondary);
  font-family: var(--slide-font-family);
  white-space: nowrap;
  transition: color 0.2s;
}

.investment-greenfield-toggle:hover .investment-toggle-label {
  color: var(--slide-text-primary);
}
/* ===== Conclusion Slide ===== */
.conclusion-slide {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  font-family: var(--slide-font-family);
  color: var(--slide-text-primary);
  padding: 2rem 3rem;
  box-sizing: border-box;
  overflow: hidden;
}

/* ===== Header ===== */
.conclusion-header {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  height: 6rem;
  flex-shrink: 0;
}

.conclusion-header-left {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.conclusion-label {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--slide-highlight);
}

.conclusion-client-name {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: var(--slide-text-primary);
}

/* ===== Headline ===== */
.conclusion-headline-section {
  margin-bottom: 2rem;
  flex-shrink: 0;
  height: 8rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.conclusion-headline {
  font-weight: 800;
  font-style: italic;
  margin: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-align: center;
  display: block;
  width: 100%;
  overflow: hidden;
}

/* ===== Main Two-Column ===== */
.conclusion-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  flex: 1;
  min-height: 0;
}

.conclusion-col {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

/* ===== Section Headers ===== */
.conclusion-section-header {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 1rem;
}

.conclusion-section-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--slide-highlight);
  flex-shrink: 0;
}

.conclusion-dot-highlight {
  background: var(--slide-success);
}

.conclusion-section-label {
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}

.conclusion-section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}

/* ===== Key Takeaways ===== */
.conclusion-takeaway-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
  min-height: 0;
}

.conclusion-takeaway-card {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-left: 3px solid var(--slide-success);
  border-radius: 0.75rem;
  padding: 0.75rem 1.5rem;
  box-shadow: var(--slide-card-shadow);
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.conclusion-takeaway-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.conclusion-takeaway-icon .slide-icon svg {
  width: 2rem;
  height: 2rem;
}

.conclusion-tk-icon {
  color: var(--slide-success);
}

.conclusion-takeaway-body {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

.conclusion-takeaway-text {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.25;
  flex: 1;
  min-width: 0;
  padding-right: 1.5rem;
}

.conclusion-takeaway-desc {
  font-size: 1rem;
  color: var(--slide-text-secondary);
  line-height: 1.4;
}

/* ===== Next Steps ===== */
.conclusion-steps-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
  min-height: 0;
}

.conclusion-step-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
  padding: 0.75rem 1.5rem;
  box-shadow: var(--slide-card-shadow);
  flex: 1 1 0;
  min-height: 0;
  overflow: hidden;
}

.conclusion-step-number {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: color-mix(in srgb, var(--slide-highlight) 12%, transparent);
  color: var(--slide-highlight);
  font-size: 1.2rem;
  font-weight: 800;
}

.conclusion-step-content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex: 1;
  min-width: 0;
  padding-right: 6rem;
}

.conclusion-step-text {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.25;
}

.conclusion-step-meta {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.conclusion-step-owner {
  font-size: 1.05rem;
  color: var(--slide-text-secondary);
  font-weight: 500;
}

.conclusion-step-timeline {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  font-size: 1rem;
  font-weight: 600;
  color: var(--slide-success);
  background: color-mix(in srgb, var(--slide-success) 10%, transparent);
  padding: 0.15rem 0.6rem;
  border-radius: 0.25rem;
}

/* ===== Footer: CTA ===== */
.conclusion-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--slide-border);
  flex-shrink: 0;
}

.conclusion-cta-text {
  font-size: 1.8rem;
  font-weight: 700;
  font-style: italic;
  color: var(--slide-highlight);
  line-height: 1.3;
  text-align: center;
}


.presentation-container {
  position: fixed;
  inset: 0;
  background: var(--slide-letterbox);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 9999;
  font-family: var(--slide-font-family);
  -webkit-font-smoothing: antialiased;
}

.presentation-inner {
  width: 100%;
  max-width: calc(100vh * 16 / 9);
  aspect-ratio: 16 / 9;
  background: var(--slide-bg-primary);
  overflow: hidden;
  position: relative;
  transform-origin: center center;
  font-size: 16px;
}

/* Reduce rem base when in presentation mode */

html.presentation-mode {
  font-size: 12px;
}

.presentation-nav-btn {
  position: fixed;
  top: 10%;
  bottom: 10%;
  z-index: 10000;
  background: none;
  border: none;
  color: var(--slide-nav-idle);
  cursor: pointer;
  padding: 0;
  transition: color 0.2s;
  display: flex;
  align-items: center;
}

.presentation-nav-btn:hover {
  color: var(--slide-nav-hover);
}

.presentation-nav-prev { left: 0; }

.presentation-nav-next { right: 0; }

.presentation-close-btn {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 10000;
  background: none;
  border: none;
  color: var(--slide-nav-muted);
  font-size: 12px;
  font-weight: 500;
  padding: 4px 8px;
  cursor: pointer;
  font-family: var(--slide-font-family);
  transition: color 0.2s;
}

.presentation-close-btn:hover {
  color: var(--slide-nav-muted-hover);
}

/* ===== Exit Dialog ===== */

.exit-dialog-overlay {
  position: fixed;
  inset: 0;
  background: var(--slide-overlay-heavy);
  z-index: 10001;
}

.exit-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 12px;
  padding: 2rem 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  min-width: 320px;
  font-family: var(--slide-font-family);
}

.exit-dialog-title {
  color: var(--slide-text-primary);
  font-size: 16px;
  font-weight: 600;
  margin: 0;
}

.exit-dialog-description {
  color: var(--slide-text-secondary);
  font-size: 14px;
  margin: 0;
}

.exit-dialog-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
}

.exit-dialog-cancel {
  padding: 8px 18px;
  border-radius: 6px;
  border: 1px solid var(--slide-border);
  background: transparent;
  color: var(--slide-text-secondary);
  font-size: 14px;
  cursor: pointer;
}

.exit-dialog-confirm {
  padding: 8px 18px;
  border-radius: 6px;
  border: none;
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
/* ─── Layout ─────────────────────────────────────────────────────────────── */
._pageContainer_da4ps_2 { display: flex; height: 100vh; overflow: hidden; }
._mainContent_da4ps_3 { display: flex; flex-direction: column; flex: 1; overflow: hidden; }
._contentWrapper_da4ps_4 { flex: 1; background: var(--slate-100); display: flex; flex-direction: column; overflow: hidden; }
._breadcrumbContainer_da4ps_5 { flex-shrink: 0; padding: 0 1.5rem; margin-top: 1rem; margin-bottom: 0.75rem; }
._content_da4ps_4 { flex: 1; padding: 0 1.5rem 1.5rem; display: flex; flex-direction: column; gap: 1rem; overflow: hidden; min-height: 0; }

/* ─── Settings two-column layout ─────────────────────────────────────────── */
._settingsLayout_da4ps_9 { display: flex; gap: 1rem; flex: 1; min-height: 0; overflow: hidden; }
._settingsRight_da4ps_10 { display: flex; flex-direction: column; gap: 1rem; flex: 1; min-width: 0; min-height: 0; overflow: hidden; align-self: stretch; }

/* ─── Profile Card ───────────────────────────────────────────────────────── */
._profileCard_da4ps_13 {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 1rem;
  padding: 1.5rem 1rem;
  flex-shrink: 0;
  align-self: flex-start;
  width: 200px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  gap: 0.75rem;
}
._profileLeft_da4ps_28 { display: flex; align-items: center; gap: 1rem; }
._avatarContainer_da4ps_29 { position: relative; flex-shrink: 0; }
._avatar_da4ps_29 {
  width: 5rem; height: 5rem;
  background: var(--indigo-700);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
}
._avatarText_da4ps_36 { color: var(--text-inverse); font-size: 1.5rem; font-weight: 700; }
._avatarBadge_da4ps_37 {
  position: absolute; bottom: -2px; right: -2px;
  width: 1.75rem; height: 1.75rem;
  background: var(--surface-page);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  border: 1px solid var(--border-subtle);
  box-shadow: 0 1px 2px rgba(0,0,0,0.08);
  color: var(--action-primary-bg);
}
._profileInfo_da4ps_47 { display: flex; flex-direction: column; gap: 0.25rem; align-items: center; text-align: center; }
._profileName_da4ps_48 { font-size: 1rem; font-weight: 700; color: var(--slate-900); margin: 0; letter-spacing: -0.01em; }
._profileRole_da4ps_49 { font-size: 0.8rem; color: var(--text-tertiary); margin: 0; }
._profileEmail_da4ps_50 { display: flex; align-items: center; gap: 0.375rem; font-size: 0.75rem; color: var(--text-tertiary); margin: 0.25rem 0 0; word-break: break-all; justify-content: center; }
._profileBadges_da4ps_51 { display: flex; flex-direction: column; gap: 0.4rem; margin-top: 0.75rem; width: 100%; }
._badge_da4ps_52 {
  display: flex; align-items: center; gap: 0.375rem;
  background: var(--slate-100); border-radius: 0.375rem;
  padding: 0.25rem 0.625rem;
  font-size: 0.75rem; color: var(--text-tertiary);
}
._badge_da4ps_52 strong { color: var(--slate-900); }
._editProfileButton_da4ps_59 {
  display: flex; align-items: center; gap: 0.5rem;
  background: var(--action-primary-bg); color: var(--text-inverse);
  border: none; border-radius: 0.5rem;
  padding: 0.625rem 1.25rem; font-size: 0.875rem; font-weight: 500;
  cursor: pointer; transition: background 0.15s;
}
._editProfileButton_da4ps_59:hover { background: var(--action-primary-bg-hover); }

/* ─── Main Card with Tabs ────────────────────────────────────────────────── */
._mainCard_da4ps_69 {
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  overflow: hidden;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
._tabsContainer_da4ps_80 {
  background: var(--surface-page);
  border: none;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
  border-bottom: 1px solid var(--border-subtle);
}
._tabsContainer_da4ps_80 > div {
  gap: 0;
  border-bottom: none;
}
._tabsContainer_da4ps_80 button {
  padding: 0.875rem 1.25rem;
  border-radius: 0;
  font-weight: 500;
  border-bottom: 2px solid transparent;
  background: transparent;
  transition: all 0.15s;
}
._tabsContainer_da4ps_80 button:hover {
  background: var(--blue-50);
}
._tabsContainer_da4ps_80 button[class*="tabActive"] {
  background: var(--blue-50);
  color: var(--action-primary-bg);
  border-bottom-color: var(--action-primary-bg);
}
._cardContent_da4ps_108 { padding: 1.5rem; flex: 1; min-height: 0; overflow-y: auto; }

/* ─── Tabs override (match Lovable style) ────────────────────────────────── */
._tabsContainer_da4ps_80 .tabs-list {
  gap: 0;
}
._tabsContainer_da4ps_80 .tab-item {
  padding: 0.875rem 1.25rem;
  border-radius: 0;
  font-size: 0.875rem;
  font-weight: 500;
  border: none;
  border-bottom: 2px solid transparent;
  transition: all 0.15s;
}
._tabsContainer_da4ps_80 .tab-item:hover {
  background: var(--blue-50);
}
._tabsContainer_da4ps_80 .tab-item.active {
  background: var(--blue-50);
  color: var(--action-primary-bg);
  border-bottom: 2px solid var(--action-primary-bg);
}

/* ─── Section Header ─────────────────────────────────────────────────────── */
._sectionHeader_da4ps_133 { padding-bottom: 1rem; border-bottom: 1px solid var(--border-subtle); margin-bottom: 1.5rem; }
._sectionTitle_da4ps_134 { font-size: 1.125rem; font-weight: 600; color: var(--slate-900); margin: 0 0 0.25rem; }
._sectionSubtitle_da4ps_135 { font-size: 0.8125rem; color: var(--text-tertiary); margin: 0; }

/* ─── Profile Data Section ────────────────────────────────────────────────── */
._profileDataSection_da4ps_138 { display: flex; flex-direction: column; gap: 1.5rem; }

._profileSummaryRow_da4ps_140 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 0;
}
._profileSummaryLeft_da4ps_146 { display: flex; align-items: center; gap: 1rem; }
._profileAvatarLarge_da4ps_147 {
  position: relative;
  width: 4rem; height: 4rem;
  background: var(--indigo-700);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
._profileAvatarText_da4ps_155 { color: white; font-size: 1.25rem; font-weight: 700; }
._profileAvatarBadge_da4ps_156 {
  position: absolute; bottom: 0; right: 0;
  width: 1.25rem; height: 1.25rem;
  background: #10B981;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  border: 2px solid white;
}
._profileSummaryInfo_da4ps_164 { display: flex; flex-direction: column; gap: 0.125rem; }
._profileSummaryName_da4ps_165 { font-size: 1rem; font-weight: 700; color: var(--slate-900); margin: 0; }
._profileSummaryRole_da4ps_166 { font-size: 0.8125rem; color: var(--text-tertiary); margin: 0; }
._profileSummaryEmail_da4ps_167 { display: flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: var(--text-tertiary); margin: 0; }

._profileSummaryBadges_da4ps_169 { display: flex; gap: 0.75rem; }
._profileStatBadge_da4ps_170 {
  display: flex; flex-direction: column; align-items: center;
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  padding: 0.5rem 1rem;
  min-width: 5rem;
}
._profileStatLabel_da4ps_177 { font-size: 0.75rem; color: var(--text-tertiary); display: flex; align-items: center; gap: 0.25rem; }
._profileStatValue_da4ps_178 { font-size: 1.25rem; font-weight: 700; color: var(--action-primary-bg); }
._profileStatValueText_da4ps_179 { font-size: 1.125rem; font-weight: 700; color: #10B981; }

._profileSaveSection_da4ps_181 {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: 1.25rem;
  border-top: 1px solid var(--border-subtle);
  margin-top: 0.5rem;
}
._profileSaveHint_da4ps_187 { font-size: 0.8125rem; color: var(--action-primary-bg); margin: 0; }

/* ─── Language Cards ─────────────────────────────────────────────────────── */
._languageCards_da4ps_190 { display: flex; gap: 1rem; }

/* ─── Notification Settings ──────────────────────────────────────────────── */
._languageCard_da4ps_190 {
  display: flex; align-items: center; gap: 0.75rem;
  flex: 1; padding: 1rem 1.25rem;
  background: var(--surface-page);
  border: 1.5px solid var(--border-subtle);
  border-radius: 0.75rem;
  cursor: pointer; transition: all 0.15s;
  text-align: left;
}
._languageCard_da4ps_190:hover { border-color: var(--slate-400); }
._languageCardActive_da4ps_203 { border-color: var(--action-primary-bg); background: var(--blue-50); box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1); }
._languageCardCode_da4ps_204 {
  font-size: 1rem; font-weight: 700; color: var(--slate-900);
  background: var(--slate-100); border-radius: 0.375rem;
  padding: 0.375rem 0.625rem; flex-shrink: 0;
}
._languageCardActive_da4ps_203 ._languageCardCode_da4ps_204 { background: white; color: var(--action-primary-bg); }
._languageCardInfo_da4ps_210 { display: flex; flex-direction: column; gap: 0.125rem; flex: 1; }
._languageCardName_da4ps_211 { font-size: 0.875rem; font-weight: 600; color: var(--slate-900); }
._languageCardSub_da4ps_212 { font-size: 0.75rem; color: var(--text-tertiary); }
._languageCardBadge_da4ps_213 {
  display: flex; align-items: center; gap: 0.375rem;
  background: var(--action-primary-bg); border-radius: 1rem;
  padding: 0.25rem 0.5rem 0.25rem 0.625rem;
}
._languageCardBadgeText_da4ps_218 { font-size: 0.6875rem; font-weight: 600; color: white; text-transform: uppercase; letter-spacing: 0.03em; }
._languageCardRadio_da4ps_219 {
  width: 1.25rem; height: 1.25rem;
  border: 2px solid var(--border-subtle);
  border-radius: 50%; flex-shrink: 0;
}

/* ─── Region Section ─────────────────────────────────────────────────────── */
._regionSection_da4ps_226 { display: flex; flex-direction: column; gap: 1.25rem; }
._regionHeader_da4ps_227 { padding-bottom: 1rem; border-bottom: 1px solid var(--border-subtle); }
._regionTitle_da4ps_228 { font-size: 1.125rem; font-weight: 600; color: var(--slate-900); margin: 0 0 0.25rem; }
._regionSubtitle_da4ps_229 { font-size: 0.8125rem; color: var(--text-tertiary); margin: 0; }

._infoBanner_da4ps_231 {
  display: flex; align-items: flex-start; gap: 0.5rem;
  background: var(--warning-50); border: 1px solid rgba(253, 230, 138, 0.6);
  border-radius: 0.5rem; padding: 0.75rem 1rem;
}
._infoBannerText_da4ps_236 { font-size: 0.75rem; color: var(--warning-700); margin: 0; line-height: 1.5; }

._regionSelectors_da4ps_238 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
._regionField_da4ps_239 { display: flex; flex-direction: column; gap: 0.5rem; }
._regionLabel_da4ps_240 {
  display: flex; align-items: center; gap: 0.375rem;
  font-size: 0.875rem; font-weight: 500; color: var(--text-primary);
}
._regionHint_da4ps_244 { font-size: 0.75rem; color: var(--text-disabled); margin-top: 0.25rem; }

._noteBanner_da4ps_246 {
  display: flex; align-items: flex-start; gap: 0.5rem;
  background: var(--slate-100); border: 1px solid var(--border-subtle);
  border-radius: 0.5rem; padding: 0.75rem 1rem;
}
._noteBannerText_da4ps_251 { font-size: 0.75rem; color: var(--text-tertiary); margin: 0; line-height: 1.5; }

._saveButton_da4ps_253 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-end;
  background: var(--action-primary-bg); color: var(--text-inverse);
  border: none; border-radius: 0.5rem;
  padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 500;
  cursor: pointer; transition: background 0.15s;
  line-height: 1.25rem;
  width: auto;
}
._saveButton_da4ps_253:hover:not(:disabled) { background: var(--action-primary-bg-hover); }
._saveButton_da4ps_253:disabled { background: var(--blue-300); cursor: not-allowed; }

/* ─── Save section (border-top separator) ────────────────────────────────── */
._saveSection_da4ps_269 {
  padding-top: 1rem;
  border-top: 1px solid var(--border-subtle);
  margin-top: 0.5rem;
  display: flex;
  justify-content: flex-end;
}

/* ─── Region Dropdown ────────────────────────────────────────────────────── */
._regionDropdown_da4ps_278 { position: relative; }
._regionTrigger_da4ps_279 {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; padding: 0.5rem 0.75rem;
  background: var(--surface-page); border: 1px solid var(--border-subtle);
  border-radius: 0.5rem; font-size: 0.875rem; color: var(--text-primary);
  cursor: pointer; text-align: left; transition: border-color 0.15s;
}
._regionTrigger_da4ps_279:hover { border-color: var(--slate-400); }
._regionTrigger_da4ps_279:focus { border-color: var(--action-primary-bg); outline: none; box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.1); }
._regionPlaceholder_da4ps_288 { color: var(--text-disabled); }
._regionChevron_da4ps_289 { font-size: 18px; color: var(--text-tertiary); transition: transform 0.15s; }
._regionChevronOpen_da4ps_290 { transform: rotate(180deg); }
._regionList_da4ps_291 {
  position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 100;
  background: var(--surface-page); border: 1px solid var(--border-subtle);
  border-radius: 0.5rem; box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  max-height: 16rem; overflow-y: auto;
}
._regionGroupLabel_da4ps_297 {
  padding: 0.5rem 0.75rem 0.25rem;
  font-size: 0.6875rem; font-weight: 600; color: var(--text-disabled);
  text-transform: uppercase; letter-spacing: 0.05em;
}
._regionOption_da4ps_302 {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; padding: 0.5rem 0.75rem;
  background: none; border: none; cursor: pointer;
  font-size: 0.8125rem; color: var(--text-primary); text-align: left;
  transition: background 0.1s;
}
._regionOption_da4ps_302:hover { background: var(--slate-100); }
._regionOptionActive_da4ps_310 { background: var(--blue-50); color: var(--action-primary-bg); font-weight: 500; }
._regionOptionDisabled_da4ps_311 { opacity: 0.4; cursor: not-allowed; }
._regionName_da4ps_312 { flex: 1; }
._regionCode_da4ps_313 { font-size: 0.75rem; color: var(--text-disabled); font-family: monospace; }

/* ─── Profile Tab ────────────────────────────────────────────────────────── */
._formGrid_da4ps_316 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
._formField_da4ps_317 { display: flex; flex-direction: column; gap: 0.375rem; }
._formLabel_da4ps_318 { font-size: 0.875rem; font-weight: 500; color: var(--text-primary); }
._formInput_da4ps_319 {
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem; color: var(--text-primary);
  background: var(--surface-page);
  transition: border-color 0.15s;
}
._formInput_da4ps_319:focus { border-color: var(--action-primary-bg); outline: none; box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.1); }
._formInput_da4ps_319::placeholder { color: var(--text-disabled); }

/* ─── Organization Tab ───────────────────────────────────────────────────── */
._orgAiSection_da4ps_331 { margin-top: 1.75rem; padding-top: 1.25rem; border-top: 1px solid var(--border-subtle); }
._orgAiHeader_da4ps_332 { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1rem; }
._orgAiTitle_da4ps_333 { font-size: 0.875rem; font-weight: 600; color: var(--slate-900); margin: 0; }

/* ─── Placeholder tabs ───────────────────────────────────────────────────── */
._placeholderContent_da4ps_336 {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 0.75rem; padding: 3rem; color: var(--text-disabled);
}
._placeholderText_da4ps_340 { font-size: 0.875rem; }

/* ─── Users Tab ──────────────────────────────────────────────────────────── */
._usersTabHeader_da4ps_343 {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-bottom: 16px;
}
._searchBar_da4ps_347 { flex: 1; }
._searchBar_da4ps_347 > ._searchInputWrapper_da4ps_348 { max-width: 100%; }
._addButton_da4ps_349 {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--action-primary-bg); color: white;
  border: none; border-radius: 8px;
  padding: 8px 16px; font-size: 14px; font-family: Arial, sans-serif;
  font-weight: 500; cursor: pointer; white-space: nowrap;
  transition: background 0.15s;
}
._addButton_da4ps_349:hover { background: var(--action-primary-bg-hover); }
._addButton_da4ps_349:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }

/* ─── Search ─────────────────────────────────────────────────────────────── */
._searchInputWrapper_da4ps_348 { position: relative; }
._searchIcon_da4ps_362 { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); pointer-events: none; color: var(--text-tertiary); }
._searchInput_da4ps_348 {
  width: 100%; padding: 8px 12px 8px 36px;
  background: var(--slate-100); border: 0.667px solid transparent; border-radius: 8px;
  font-size: 14px; font-family: Arial, sans-serif; color: var(--text-primary);
  outline: none; box-sizing: border-box;
}
._searchInput_da4ps_348::placeholder { color: var(--text-tertiary); }
._searchInput_da4ps_348:focus { border-color: var(--action-primary-bg); background: white; }

/* ─── Table ──────────────────────────────────────────────────────────────── */
._tableWrapper_da4ps_373 { overflow-x: auto; margin-top: 0; }
._table_da4ps_373 { width: 100%; border-collapse: collapse; table-layout: fixed; }
._table_da4ps_373 colgroup col:nth-child(1) { width: 22%; }
._table_da4ps_373 colgroup col:nth-child(2) { width: 26%; }
._table_da4ps_373 colgroup col:nth-child(3) { width: 14%; }
._table_da4ps_373 colgroup col:nth-child(4) { width: 12%; }
._table_da4ps_373 colgroup col:nth-child(5) { width: 14%; }
._table_da4ps_373 colgroup col:nth-child(6) { width: 12%; }
._tableHeaderRow_da4ps_381 { background: var(--surface-subtle); }
._th_da4ps_382 {
  padding: 12px 16px; text-align: left;
  font-size: 12px; font-weight: 600; color: var(--text-secondary);
  letter-spacing: 0.6px; text-transform: uppercase;
  border-bottom: 0.667px solid var(--border-subtle);
  white-space: nowrap;
}
._thRight_da4ps_389 { text-align: right; }
._tableRow_da4ps_390 { border-bottom: 0.667px solid var(--border-subtle); transition: background 0.1s; }
._tableRow_da4ps_390:last-child { border-bottom: none; }
._tableRow_da4ps_390:hover { background: var(--surface-subtle); }
._td_da4ps_393 { padding: 16px; vertical-align: middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 0; }
._td_da4ps_393:nth-child(3), ._td_da4ps_393:nth-child(4) { overflow: visible; }
._tdActions_da4ps_395 { text-align: right; }

/* ─── Cell content ───────────────────────────────────────────────────────── */
._userName_da4ps_398 { font-size: 14px; font-weight: 500; color: var(--slate-900); }
._emailCell_da4ps_399 { display: flex; align-items: center; gap: 6px; color: var(--text-secondary); }
._emailText_da4ps_400 { font-size: 13px; }
._dateText_da4ps_401 { font-size: 13px; color: var(--text-secondary); }

/* ─── Badges ─────────────────────────────────────────────────────────────── */
._badgeAdmin_da4ps_404, ._badgeViewer_da4ps_404, ._badgeActive_da4ps_404, ._badgePending_da4ps_404, ._badgeInactive_da4ps_404 {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 3px 8px; border-radius: 8px;
  font-size: 12px; font-weight: 500; white-space: nowrap; border: 0.667px solid;
}
._badgeAdmin_da4ps_404 { background: var(--indigo-100); border-color: var(--indigo-200); color: var(--indigo-700); }
._badgeViewer_da4ps_404 { background: var(--blue-100); border-color: var(--blue-200); color: var(--blue-600); }
._badgeActive_da4ps_404 { background: var(--pastel-mint); border-color: var(--success-500); color: var(--success-600); }
._badgePending_da4ps_404 { background: var(--pastel-yellow); border-color: var(--warning-500); color: var(--warning-700); }
._badgeInactive_da4ps_404 { background: var(--gray-100); border-color: var(--gray-300); color: var(--gray-600); }
._dotActive_da4ps_414, ._dotPending_da4ps_414, ._dotInactive_da4ps_414 { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
._dotActive_da4ps_414 { background: var(--success-600); }
._dotPending_da4ps_414 { background: var(--warning-700); }
._dotInactive_da4ps_414 { background: var(--gray-500); }

/* ─── Action buttons ─────────────────────────────────────────────────────── */
._actionButtons_da4ps_420 { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
._actionBtn_da4ps_421 {
  width: 30px; height: 30px; border-radius: 6px; border: none;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background 0.15s, color 0.15s;
  background: transparent; color: var(--action-primary-bg);
}
._actionBtn_da4ps_421:hover { background: var(--blue-50); }
._actionBtn_da4ps_421:disabled { opacity: 0.5; cursor: not-allowed; }
._actionBtnDanger_da4ps_429 { color: var(--error-500); }
._actionBtnDanger_da4ps_429:hover { background: var(--error-50); }
._actionBtnSave_da4ps_431 { color: var(--success-500); }
._actionBtnSave_da4ps_431:hover:not(:disabled) { background: var(--pastel-mint); }
._actionBtnResend_da4ps_433 { color: #7C3AED; }
._actionBtnResend_da4ps_433:hover { background: #EDE9FE; }

._resendLink_da4ps_436 {
  width: 30px;
  height: 30px;
  border-radius: 6px;
  background: none;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--action-primary-bg);
  cursor: pointer;
  padding: 0;
  transition: background 0.15s;
}
._resendLink_da4ps_436:hover { background: var(--blue-50); }
._resendLink_da4ps_436:disabled { opacity: 0.5; cursor: not-allowed; }

/* ─── Inline edit ────────────────────────────────────────────────────────── */
._inlineNameInput_da4ps_454, ._inlineRoleSelect_da4ps_454 {
  padding: 4px 8px; border: 1px solid var(--action-primary-bg); border-radius: 6px;
  font-size: 13px; font-family: Arial, sans-serif;
  color: var(--slate-900); background: white; outline: none;
  box-shadow: 0 0 0 3px rgba(41,135,194,0.1);
  width: 100%; box-sizing: border-box;
}
._inlineNameInput_da4ps_454 { font-weight: 500; font-size: 14px; }
._inlineRoleSelect_da4ps_454 { cursor: pointer; }

/* ─── Edit row transition ────────────────────────────────────────────────── */
._tableRow_da4ps_390 td { transition: background 0.18s; }
._tableRow_da4ps_390._editing_da4ps_466 { background: var(--blue-50); }

@keyframes _fadeSlideIn_da4ps_1 {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes _fadeSlideOut_da4ps_1 {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(-4px); }
}
._inlineNameInput_da4ps_454 { animation: _fadeSlideIn_da4ps_1 0.15s ease; }
._exiting_da4ps_477 ._inlineNameInput_da4ps_454,
._exiting_da4ps_477 ._roleDropdownTrigger_da4ps_478 { animation: _fadeSlideOut_da4ps_1 0.15s ease forwards; }

/* ─── Role Dropdown ──────────────────────────────────────────────────────── */
._roleDropdown_da4ps_478 { position: relative; display: inline-block; min-width: 120px; width: 100%; }
._roleDropdownTrigger_da4ps_478 {
  display: flex; align-items: center; justify-content: space-between; gap: 6px;
  width: 100%; padding: 4px 8px; border: 1px solid var(--action-primary-bg); border-radius: 6px;
  font-size: 13px; font-family: Arial, sans-serif; color: var(--slate-900);
  background: white; cursor: pointer; outline: none;
  box-shadow: 0 0 0 3px rgba(41,135,194,0.1);
  animation: _fadeSlideIn_da4ps_1 0.15s ease;
}
._roleChevron_da4ps_490 { transition: transform 0.2s ease; flex-shrink: 0; }
._roleChevronOpen_da4ps_491 { transform: rotate(180deg); }
._roleDropdownMenu_da4ps_492 {
  position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 200;
  background: white; border: 1px solid var(--border-subtle); border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  overflow: hidden;
  opacity: 0; transform: translateY(-6px) scaleY(0.96);
  transform-origin: top;
  pointer-events: none;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
._roleDropdownMenuOpen_da4ps_502 {
  opacity: 1; transform: translateY(0) scaleY(1);
  pointer-events: auto;
}
._roleDropdownOption_da4ps_506 {
  display: block; width: 100%; padding: 8px 12px; text-align: left;
  background: none; border: none; font-size: 13px; font-family: Arial, sans-serif;
  color: var(--text-primary); cursor: pointer;
  transition: background 0.1s;
}
._roleDropdownOption_da4ps_506:hover { background: var(--slate-100); }
._roleDropdownOptionActive_da4ps_513 { color: var(--action-primary-bg); font-weight: 600; background: var(--blue-50); }

/* ─── States ─────────────────────────────────────────────────────────────── */
._emptyCell_da4ps_516 { padding: 40px 16px; }
._emptyState_da4ps_517, ._loadingState_da4ps_517, ._errorState_da4ps_517 { text-align: center; font-size: 14px; color: var(--text-tertiary); }
._errorState_da4ps_517 { color: var(--error-500); }

/* ─── Add User Modal ─────────────────────────────────────────────────────── */
._modalForm_da4ps_521 { display: flex; flex-direction: column; gap: 1.25rem; }
._formHintText_da4ps_522 { font-size: 0.8125rem; color: var(--text-tertiary); margin: 0; line-height: 1.5; }
._formGroup_da4ps_523 { display: flex; flex-direction: column; gap: 0.5rem; }
._formLabel_da4ps_318 { font-size: 0.875rem; font-weight: 600; color: var(--text-secondary); }
._formInput_da4ps_319 {
  width: 100%; height: 2.75rem; padding: 0.75rem 1rem;
  background: white; border: 0.125rem solid var(--border-default); border-radius: 0.5rem;
  font-family: Arial, sans-serif; font-size: 0.875rem; color: var(--text-secondary);
  transition: border-color 0.2s; box-sizing: border-box;
}
._formInput_da4ps_319::placeholder { color: var(--text-disabled); }
._formInput_da4ps_319:focus { outline: none; border-color: var(--action-primary-bg); }
._formInput_da4ps_319:hover:not(:focus) { border-color: var(--slate-300); }
select._formInput_da4ps_319 {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  padding-right: 2.5rem;
  cursor: pointer;
}
._formError_da4ps_544 { font-size: 0.75rem; color: var(--error-500); margin: 0; }
._modalActions_da4ps_545 {
  display: flex; align-items: center; justify-content: flex-end; gap: 0.75rem;
  margin-top: 0.5rem; padding-top: 1.25rem; border-top: 0.0417rem solid var(--border-subtle);
}
._cancelBtn_da4ps_549 {
  height: 2.5rem; padding: 0 1.25rem;
  background: white; border: 0.125rem solid var(--border-subtle); border-radius: 0.5rem;
  font-family: Arial, sans-serif; font-size: 0.875rem; font-weight: 600;
  color: var(--text-tertiary); cursor: pointer; transition: all 0.2s;
}
._cancelBtn_da4ps_549:hover { background: var(--surface-subtle); border-color: var(--border-default); color: var(--text-secondary); }
._cancelBtn_da4ps_549:disabled { opacity: 0.5; cursor: not-allowed; }
._submitBtn_da4ps_557 {
  height: 2.5rem; padding: 0 1.25rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none; border-radius: 0.5rem;
  font-family: Arial, sans-serif; font-size: 0.875rem; font-weight: 600;
  color: white; cursor: pointer; transition: opacity 0.2s;
}
._submitBtn_da4ps_557:hover { opacity: 0.9; }
._submitBtn_da4ps_557:disabled { opacity: 0.5; cursor: not-allowed; }


/* ─── Language Grid ──────────────────────────────────────────────────────── */
._languageGrid_da4ps_569 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

._languageGridItem_da4ps_575 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  padding: 1rem 1.25rem;
  border: none;
  background: transparent;
  cursor: pointer;
  text-align: left;
  transition: background 0.15s;
  border-bottom: 1px solid var(--border-subtle);
}

._languageGridItem_da4ps_575:hover {
  background: var(--blue-50);
}

._languageGridItemActive_da4ps_592 {
  border: 1px solid var(--action-primary-bg);
  border-radius: 0.375rem;
  background: var(--blue-50);
}

._languageGridItemActive_da4ps_592 ._languageGridName_da4ps_598 {
  color: var(--action-primary-bg);
}

._languageGridItemDisabled_da4ps_602 {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

._languageGridName_da4ps_598 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
}

._languageGridRegion_da4ps_614 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}
/* ─── Layout ─────────────────────────────────────────────────────────────── */
._pageContainer_j6ww9_2 { display: flex; height: 100vh; overflow: hidden; font-family: Arial, sans-serif; }
._mainContent_j6ww9_3 { display: flex; flex-direction: column; flex: 1; overflow: hidden; }
._contentWrapper_j6ww9_4 { display: flex; flex-direction: column; flex: 1; background: var(--border-subtle); overflow: hidden; }
._breadcrumbContainer_j6ww9_5 { flex-shrink: 0; padding: 0 1.5rem; margin-top: 0.75rem; margin-bottom: 0.75rem; }
._content_j6ww9_4 { display: flex; flex-direction: column; flex: 1; padding: 0 1.5rem 1.5rem; overflow: hidden; gap: 1rem; }

/* ─── Header card (fixed, like Dashboard) ────────────────────────────────── */
._headerCard_j6ww9_9 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: white;
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  box-shadow: 0 0.0625rem 0.1875rem rgba(0,0,0,0.1), 0 0.0625rem 0.125rem rgba(0,0,0,0.06);
  padding: 1.25rem 1.5rem;
  flex-shrink: 0;
}
._pageHeaderLeft_j6ww9_20 { display: flex; align-items: center; gap: 1rem; }
._pageHeaderIcon_j6ww9_21 {
  width: 3rem; height: 3rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border-radius: 0.625rem;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 0.0625rem 0.1875rem rgba(0,0,0,0.1), 0 0.0625rem 0.125rem rgba(0,0,0,0.1);
}
._pageTitle_j6ww9_29 { font-family: Arial, sans-serif; font-size: 1.5rem; font-weight: 700; color: var(--slate-900); margin: 0 0 0.25rem; line-height: 2rem; }
._pageSubtitle_j6ww9_30 { font-family: Arial, sans-serif; font-size: 0.875rem; color: var(--text-tertiary); margin: 0; }

/* ─── Main card ──────────────────────────────────────────────────────────── */
._mainCard_j6ww9_33 {
  display: flex; flex-direction: column; flex: 1; min-height: 0;
  overflow: hidden; background: white;
  border: 0.0417rem solid var(--border-subtle); border-radius: 0.625rem;
  box-shadow: 0 0.0625rem 0.1875rem rgba(0,0,0,0.1), 0 0.0625rem 0.125rem rgba(0,0,0,0.06);
}

/* ─── Add button ─────────────────────────────────────────────────────────── */
._addButton_j6ww9_41 {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--action-primary-bg); color: white;
  border: none; border-radius: 8px;
  padding: 8px 16px; font-size: 14px; font-family: Arial, sans-serif;
  font-weight: 500; cursor: pointer; white-space: nowrap;
  transition: background 0.15s;
}
._addButton_j6ww9_41:hover { background: var(--action-primary-bg-hover); }
._addButton_j6ww9_41:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }

/* ─── Search ─────────────────────────────────────────────────────────────── */
._searchBar_j6ww9_53 {
  flex-shrink: 0; padding: 16px 24px;
  background: var(--surface-subtle); border-bottom: 0.667px solid var(--border-subtle);
}
._searchInputWrapper_j6ww9_57 { position: relative; }
._searchIcon_j6ww9_58 { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); pointer-events: none; }
._searchInput_j6ww9_57 {
  width: 100%; padding: 8px 12px 8px 36px;
  background: var(--slate-100); border: 0.667px solid transparent; border-radius: 8px;
  font-size: 14px; font-family: Arial, sans-serif; color: var(--text-primary);
  outline: none; box-sizing: border-box;
}
._searchInput_j6ww9_57::placeholder { color: var(--text-tertiary); }
._searchInput_j6ww9_57:focus { border-color: var(--action-primary-bg); background: white; }

/* ─── Table ──────────────────────────────────────────────────────────────── */
._tableWrapper_j6ww9_69 { flex: 1; overflow-y: auto; }
._table_j6ww9_69 { width: 100%; border-collapse: collapse; }
._tableHeaderRow_j6ww9_71 { background: var(--surface-subtle); }
._th_j6ww9_72 {
  padding: 16px 24px; text-align: left;
  font-size: 12px; font-weight: 600; color: var(--text-secondary);
  letter-spacing: 0.6px; text-transform: uppercase;
  border-bottom: 0.667px solid var(--border-subtle);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
._th_j6ww9_72:nth-child(1) { width: 25%; }
._th_j6ww9_72:nth-child(2) { width: 25%; }
._th_j6ww9_72:nth-child(3) { width: 15%; text-align: center; }
._th_j6ww9_72:nth-child(4) { width: 15%; text-align: center; }
._th_j6ww9_72:nth-child(5) { width: 15%; text-align: center; }
._th_j6ww9_72:nth-child(6) { width: 5%; text-align: center; }
._thRight_j6ww9_85 { text-align: right; }
._tableRow_j6ww9_86 { border-bottom: 0.667px solid var(--border-subtle); transition: background 0.1s; }
._tableRow_j6ww9_86:last-child { border-bottom: none; }
._tableRow_j6ww9_86:hover { background: var(--surface-subtle); }
._td_j6ww9_89 { padding: 20px 24px; vertical-align: middle; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
._td_j6ww9_89:nth-child(3), ._td_j6ww9_89:nth-child(4), ._td_j6ww9_89:nth-child(5), ._td_j6ww9_89:nth-child(6) { text-align: center; }
._tdActions_j6ww9_91 { text-align: center; }

/* ─── Cell content ───────────────────────────────────────────────────────── */
._userName_j6ww9_94 { font-size: 16px; font-weight: 500; color: var(--slate-900); }
._emailCell_j6ww9_95 { display: flex; align-items: center; gap: 8px; }
._emailText_j6ww9_96 { font-size: 14px; color: var(--text-secondary); }
._dateText_j6ww9_97 { font-size: 14px; color: var(--text-secondary); }

/* ─── Badges ─────────────────────────────────────────────────────────────── */
._badgeAdmin_j6ww9_100, ._badgeViewer_j6ww9_100, ._badgeActive_j6ww9_100, ._badgePending_j6ww9_100, ._badgeInactive_j6ww9_100 {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 3px 8px; border-radius: 8px;
  font-size: 12px; font-weight: 500; white-space: nowrap;
  border: 0.667px solid;
}
._badgeAdmin_j6ww9_100 { background: var(--indigo-100); border-color: var(--indigo-200); color: var(--indigo-700); }
._badgeViewer_j6ww9_100 { background: var(--blue-100); border-color: var(--blue-200); color: var(--blue-600); }
._badgeActive_j6ww9_100 { background: var(--pastel-mint); border-color: var(--success-500); color: var(--success-600); }
._badgePending_j6ww9_100 { background: var(--pastel-yellow); border-color: var(--warning-500); color: var(--warning-700); }
._badgeInactive_j6ww9_100 { background: var(--gray-100); border-color: var(--gray-300); color: var(--gray-600); }
._dotActive_j6ww9_111, ._dotPending_j6ww9_111, ._dotInactive_j6ww9_111 { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
._dotActive_j6ww9_111 { background: var(--success-600); }
._dotPending_j6ww9_111 { background: var(--warning-700); }
._dotInactive_j6ww9_111 { background: var(--gray-500); }

/* ─── Action buttons ─────────────────────────────────────────────────────── */
._actionButtons_j6ww9_117 { display: flex; align-items: center; justify-content: center; gap: 8px; }
._actionBtn_j6ww9_118 {
  width: 32px; height: 32px; border-radius: 8px; border: none;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background 0.15s, color 0.15s;
  background: transparent; color: var(--action-primary-bg);
}
._actionBtn_j6ww9_118:hover { background: var(--blue-50); }
._actionBtn_j6ww9_118:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }
._actionBtn_j6ww9_118:disabled { opacity: 0.5; cursor: not-allowed; }
._actionBtnDanger_j6ww9_127 { color: var(--error-500); }
._actionBtnDanger_j6ww9_127:hover { background: var(--error-50); color: var(--error-500); }
._actionBtnSave_j6ww9_129 { color: var(--success-500); }
._actionBtnSave_j6ww9_129:hover:not(:disabled) { background: var(--pastel-mint); }
._actionBtnSave_j6ww9_129:disabled { opacity: 0.4; cursor: not-allowed; }

/* ─── Inline name edit ───────────────────────────────────────────────────── */
._inlineNameInput_j6ww9_134 {
  padding: 4px 8px;
  border: 1px solid var(--action-primary-bg);
  border-radius: 6px;
  font-size: 16px;
  font-weight: 500;
  font-family: Arial, sans-serif;
  color: var(--slate-900);
  background: white;
  outline: none;
  width: 100%;
  box-sizing: border-box;
  box-shadow: 0 0 0 3px rgba(41, 135, 194, 0.1);
}

/* ─── Empty / loading / error states ────────────────────────────────────── */
._emptyCell_j6ww9_150 { padding: 48px 24px; }
._emptyState_j6ww9_151, ._loadingState_j6ww9_151, ._errorState_j6ww9_151 {
  text-align: center; font-size: 14px; color: var(--text-tertiary);
}
._errorState_j6ww9_151 { color: var(--error-500); }

/* ─── Modal ──────────────────────────────────────────────────────────────── */
._modalBackdrop_j6ww9_157 {
  position: fixed; inset: 0; background: rgba(0,0,0,0.4);
  display: flex; align-items: center; justify-content: center;
  z-index: 1000; padding: 24px;
}
._modal_j6ww9_157 {
  background: white; border-radius: 10px; width: 100%; max-width: 440px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}
._modalHeader_j6ww9_166 {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 24px 0;
}

._modalTitleRow_j6ww9_171 {
  display: flex;
  align-items: center;
  gap: 10px;
}
._modalTitle_j6ww9_171 { font-size: 18px; font-weight: 600; color: var(--text-primary); margin: 0; }
._modalClose_j6ww9_177 {
  width: 32px; height: 32px; border: none; background: transparent;
  border-radius: 8px; cursor: pointer; color: var(--text-secondary);
  display: flex; align-items: center; justify-content: center;
}
._modalClose_j6ww9_177:hover { background: var(--slate-100); }
._modalClose_j6ww9_177:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }
._modalForm_j6ww9_184 { padding: 20px 24px 24px; display: flex; flex-direction: column; gap: 16px; }
._formGroup_j6ww9_185 { display: flex; flex-direction: column; gap: 6px; }
._formLabel_j6ww9_186 { font-size: 14px; font-weight: 500; color: var(--text-primary); }
._formInput_j6ww9_187, ._formSelect_j6ww9_187 {
  padding: 10px 12px; border: 1px solid var(--border-subtle); border-radius: 8px;
  font-size: 14px; font-family: Arial, sans-serif; color: var(--text-primary);
  outline: none; background: white;
}
._formInput_j6ww9_187:focus, ._formSelect_j6ww9_187:focus { border-color: var(--action-primary-bg); box-shadow: 0 0 0 3px rgba(41,135,194,0.1); }
._formError_j6ww9_193 { font-size: 13px; color: var(--error-500); margin: 0; }
._formHint_j6ww9_194 { font-size: 12px; color: var(--text-tertiary); margin: 0; line-height: 1.5; }
._modalActions_j6ww9_195 { display: flex; gap: 12px; justify-content: flex-end; padding-top: 4px; }
._cancelBtn_j6ww9_196 {
  padding: 8px 16px; border: 1px solid var(--border-subtle); border-radius: 8px;
  background: white; color: var(--text-secondary); font-size: 14px; font-family: Arial, sans-serif;
  cursor: pointer;
}
._cancelBtn_j6ww9_196:hover { background: var(--surface-subtle); }
._cancelBtn_j6ww9_196:disabled { opacity: 0.5; cursor: not-allowed; }
._submitBtn_j6ww9_203 {
  padding: 8px 20px; border: none; border-radius: 8px;
  background: var(--action-primary-bg); color: white; font-size: 14px; font-family: Arial, sans-serif;
  font-weight: 500; cursor: pointer;
}
._submitBtn_j6ww9_203:hover { background: var(--action-primary-bg-hover); }
._submitBtn_j6ww9_203:disabled { opacity: 0.5; cursor: not-allowed; }
._submitBtn_j6ww9_203:focus-visible, ._cancelBtn_j6ww9_196:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }
