@charset "UTF-8";@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');@font-face {
  font-family: 'Geist';
  src: url('/assets/Geist-VariableFont_wght-C2BNBXFg.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Geist Mono';
  src: url('/assets/GeistMono-VariableFont_wght-aobeVSSS.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
/* react/src/styles/variables.css */
:root {

   /* ─── Typography ────────────────────────────────────────── */
   --font-family: 'Geist', sans-serif;
   --font-family-mono: 'Geist Mono', monospace;

   /* ─── 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: #FAFAF9;
   --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: #FAFAF9;
   --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: #E2E8F0;
   --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: var(--font-family);
   --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);
}


/* ─── DARK MODE ───────────────────────────────────────────────────────────── */
html.dark {
   /* ─── Surface & Background ─── */
   --surface-page: #0F172A;
   --surface-subtle: #1E293B;
   --surface-card: #0F172A;
   --surface-card-hover: #1E293B;
   --surface-overlay: rgba(0, 0, 0, 0.7);
   --surface-ai: #1e1b4b;
   --surface-ai-hover: #312e81;

   /* ─── Borders ─── */
   --border-subtle: rgba(148, 163, 184, 0.15);
   --border-default: rgba(148, 163, 184, 0.25);
   --border-strong: #64748B;
   --border-focus: var(--blue-400);
   --border-ai: #4338ca;
   --border-separator: rgba(255, 255, 255, 0.06);

   /* ─── Text ─── */
   --text-primary: #FFFFFF;
   --text-secondary: #979584;
   --text-tertiary: #979584;
   --text-disabled: #52525B;
   --text-inverse: #0F0F12;
   --text-link: #FFFFFF;
   --text-link-hover: #E4E4E7;
   --text-ai: var(--indigo-300);
   --text-error: var(--error-500);
   --text-success: var(--success-500);
   --text-warning: var(--warning-500);

   /* ─── Slate overrides ─── */
   --slate-50: #1E293B;
   --slate-100: #334155;
   --slate-200: #1E293B;
   --slate-300: #475569;
   --slate-400: #64748B;
   --slate-500: #94A3B8;
   --slate-600: #CBD5E1;
   --slate-700: #E2E8F0;
   --slate-800: #F1F5F9;
   --slate-900: #FFFFFF;

   /* ─── Gray overrides ─── */
   --gray-50: #1E293B;
   --gray-100: #334155;
   --gray-200: #475569;
   --gray-300: #64748B;
   --gray-400: #94A3B8;
   --gray-500: #CBD5E1;
   --gray-600: #E2E8F0;
   --gray-table-bg: #1E293B;
   --gray-table-border: #334155;
   --gray-selector-bg: #334155;

   /* ─── Interactive ─── */
   --action-primary-bg: #3B82F6;
   --action-primary-bg-hover: #60A5FA;
   --action-primary-bg-active: #2563EB;

   /* Blue overrides for text usage in dark mode */
   --blue-600: #FFFFFF;
   --blue-700: #E4E4E7;
   --action-secondary-bg: #27272A;
   --action-secondary-bg-hover: #3F3F46;
   --action-secondary-bg-active: #52525B;
   --action-secondary-text: #FFFFFF;
   --action-ai-bg: var(--indigo-600);
   --action-ai-bg-hover: var(--indigo-500);

   /* ─── Shadows (darker for dark mode) ─── */
   --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.5);
   --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.6);
   --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.6);
   --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.7);
   --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.5);
   --shadow-card-hover: 0 2px 8px rgba(0, 0, 0, 0.6);
   --focus-ring: rgba(96, 165, 250, 0.5);

   /* ─── Pastels (muted in dark) ─── */
   --pastel-blue: #1e3a5f;
   --pastel-pink: #4a1942;
   --pastel-mint: #1a3a2a;
   --pastel-yellow: #3d3310;
   --pastel-lavender: #2d1b4e;
   --pastel-peach: #3d2b1a;

   /* ─── Navy ─── */
   --navy-surface: #1e293b;
   --navy-border: #334155;
   --navy-text: #e2e8f0;
   --navy-muted: #94a3b8;
   --navy-row-alt: #1e293b;
   --navy-row-border: #334155;

   /* ─── Status colors (keep vibrant) ─── */
   --success-50: #064e3b;
   --warning-50: #451a03;
   --error-50: #450a0a;
   --info-50: #1e3a5f;

   /* ─── Stale banner ─── */
   --color-stale: #f59e0b;
   --color-stale-dark: #fbbf24;
   --color-stale-darker: #fcd34d;
   --color-stale-bg-hover: rgba(245, 158, 11, 0.1);

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

._toast_g9f3k_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_g9f3k_1 0.25s ease-out;
    max-width: 22.5rem;
}

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

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

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

._toastMessage_g9f3k_38 {
    font-size: 0.8125rem;
    color: #314158;
    flex: 1;
    line-height: 1.4;
}

._toastClose_g9f3k_45 {
    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_g9f3k_45:hover {
    background: var(--slate-100);
    color: #314158;
}

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

@media (max-width: 30rem) {
    ._toastContainer_g9f3k_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: var(--font-family);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--surface-subtle);
}

button, input, select, textarea {
  font-family: inherit;
}

#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;
}


/* ─── DARK MODE global overrides ─────────────────────────────────────────── */
html.dark body {
  background: var(--surface-page);
  color: var(--text-primary);
}

html.dark input,
html.dark select,
html.dark textarea {
  background: var(--surface-card);
  color: var(--text-primary);
  border-color: var(--border-subtle);
}

html.dark input::placeholder,
html.dark textarea::placeholder {
  color: var(--text-disabled);
}

html.dark table {
  color: var(--text-primary);
}

html.dark hr {
  border-color: var(--border-subtle);
}



/* ==========================================================================
   Skeleton placeholder — global utility
   Used by inline skeleton blocks (audit log, credits history, etc.) that set
   their own width/height and rely on this class for the shimmer treatment.
   ========================================================================== */

@keyframes skeleton-shimmer-slide {
  0% {
    background-position: -62.5rem 0;
  }
  100% {
    background-position: 62.5rem 0;
  }
}

.skeleton-shimmer {
  background: linear-gradient(
    90deg,
    var(--slate-300) 0%,
    var(--slate-100) 50%,
    var(--slate-300) 100%
  );
  background-size: 62.5rem 100%;
  animation: skeleton-shimmer-slide 1.6s infinite linear;
  border-radius: 0.375rem;
}

html.dark .skeleton-shimmer {
  background: linear-gradient(
    90deg,
    var(--surface-subtle) 0%,
    var(--border-default) 50%,
    var(--surface-subtle) 100%
  );
  background-size: 62.5rem 100%;
}

/* Respect users who prefer reduced motion: keep the placeholder, drop the slide */
@media (prefers-reduced-motion: reduce) {
  .skeleton-shimmer {
    animation: none;
    background: var(--slate-300);
  }

  html.dark .skeleton-shimmer {
    animation: none;
    background: var(--border-default);
  }
}
._container_130qy_1 {
  --auth-panel-bg-start: #0d1e35;
  --auth-panel-bg-mid: #0a1929;
  --auth-panel-bg-end: #071220;
  --auth-accent: #2987C2;
  --auth-accent-light: #60aee8;
  --auth-panel-text: rgba(255, 255, 255, 0.55);
  --auth-panel-text-muted: rgba(255, 255, 255, 0.4);
  --auth-panel-text-faint: rgba(255, 255, 255, 0.25);
  --auth-panel-grid: rgba(255, 255, 255, 0.04);
  --auth-panel-glow: rgba(16, 185, 129, 0.08);
  --auth-btn-shadow: 0 4px 14px rgba(41, 135, 194, 0.3);

  display: flex;
  width: 100%;
  min-height: 100vh;
}

/* Left Panel */
._leftPanel_130qy_20 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  min-width: 400px;
  padding: 3rem 3.5rem;
  background: linear-gradient(155deg, var(--auth-panel-bg-start) 0%, var(--auth-panel-bg-mid) 60%, var(--auth-panel-bg-end) 100%);
  position: relative;
  overflow: hidden;
}

._leftPanel_130qy_20::before {
  content: '';
  position: absolute;
  top: -20%;
  right: -20%;
  width: 60%;
  height: 60%;
  background: radial-gradient(circle, var(--auth-panel-glow) 0%, transparent 60%);
  pointer-events: none;
}

._leftPanel_130qy_20::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(var(--auth-panel-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--auth-panel-grid) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}

._leftContent_130qy_54 {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
  margin-bottom: 10rem;
}

._logo_130qy_62 {
  height: 28px;
  width: auto;
  position: absolute;
  top: 3rem;
  left: 3.5rem;
  z-index: 1;
}

._partnerLabel_130qy_71 {
  display: block;
  margin-top: 2rem;
  font-size: 0.625rem;
  font-weight: 600;
  color: var(--auth-panel-text-muted);
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

._headline_130qy_81 {
  font-size: clamp(22px, 2.2vw, 32px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--action-primary-text, white);
  margin: 0.75rem 0 1rem;
  transition: transform 0.4s ease;
}

._leftPanel_130qy_20:hover ._headline_130qy_81 {
  transform: translateY(-2px);
}

._headlineAccent_130qy_95 {
  display: block;
  background: linear-gradient(90deg, var(--auth-accent), var(--auth-accent-light));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

._leftDescription_130qy_103 {
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--auth-panel-text);
  max-width: 440px;
  margin: 0;
  transition: opacity 0.3s ease;
}

._leftPanel_130qy_20:hover ._leftDescription_130qy_103 {
  opacity: 0.9;
}

._leftFooter_130qy_116 {
  font-size: 0.6875rem;
  color: var(--auth-panel-text-faint);
  margin: 0;
  position: absolute;
  bottom: 3rem;
  left: 3.5rem;
  z-index: 1;
}

/* Right Panel */
._rightPanel_130qy_127 {
  flex: 1;
  background: var(--surface-card, white);
  display: flex;
  flex-direction: column;
}

._rightContent_130qy_134 {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}

._rightFooter_130qy_142 {
  padding: 1.25rem 2rem;
  text-align: center;
}

._rightFooterText_130qy_147 {
  font-size: 0.6875rem;
  color: var(--text-quaternary, #cbd5e1);
  margin: 0;
}

/* Responsive */
@media (max-width: 900px) {
  ._container_130qy_1 {
    flex-direction: column;
  }

  ._leftPanel_130qy_20 {
    width: 100%;
    min-width: unset;
    padding: 2rem;
    min-height: auto;
  }

  ._headline_130qy_81 {
    font-size: 1.5rem;
  }

  ._leftDescription_130qy_103 {
    display: none;
  }

  ._rightContent_130qy_134 {
    padding: 2rem;
  }
}
._formWrapper_wtf6n_1 {
  width: 100%;
  max-width: 360px;
}

._formTitle_wtf6n_6 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 0.25rem;
}

._formSubtitle_wtf6n_13 {
  font-size: 0.8125rem;
  color: var(--text-tertiary, #94a3b8);
  margin: 0 0 2rem;
}

/* Form */
._form_wtf6n_1 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/* Input group */
._inputGroup_wtf6n_27 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  transition: all 0.3s ease-in-out;
}

/* Label */
._label_wtf6n_35 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-tertiary, #64748b);
  margin-bottom: 0.25rem;
}

/* Input wrapper */
._inputWrapper_wtf6n_48 {
  position: relative;
  width: 100%;
}

/* Input */
._input_wtf6n_27 {
  width: 100%;
  height: 2.5rem;
  padding: 0.625rem 1rem;
  padding-right: 2.5rem;
  background: transparent;
  border: none;
  border-bottom: 1.5px solid var(--border-subtle, #e2e8f0);
  border-radius: 0;
  font-size: 0.8125rem;
  color: var(--text-primary, #1e293b);
  transition: border-color 0.2s ease;
}

._input_wtf6n_27::placeholder {
  color: var(--text-quaternary, #cbd5e1);
}

._input_wtf6n_27:focus {
  outline: none;
  border-bottom-color: var(--action-primary-bg, #2987C2);
}

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

._inputShake_wtf6n_81 {
  animation: _shake_wtf6n_1 0.4s ease-in-out;
}

@keyframes _shake_wtf6n_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-3px); }
  40% { transform: translateX(3px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

/* Toggle button */
._toggleButton_wtf6n_94 {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  opacity: 0.5;
  transition: opacity 0.2s;
}

._toggleButton_wtf6n_94:hover {
  opacity: 1;
}

._toggleIcon_wtf6n_116 {
  width: 1.125rem;
  height: 1.125rem;
}

/* Error message */
._errorMessage_wtf6n_122 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.6875rem;
  color: var(--error-500);
  margin-top: 0.25rem;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.3s ease-out;
}

._errorMessage_wtf6n_122._show_wtf6n_135 {
  max-height: 3rem;
  opacity: 1;
}

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

/* Options (checkbox + forgot password) */
._options_wtf6n_148 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.25rem;
}

/* Checkbox */
._checkboxLabel_wtf6n_156 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
}

._checkboxWrapper_wtf6n_163 {
  position: relative;
  width: 1rem;
  height: 1rem;
}

._checkboxInput_wtf6n_169 {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

._checkboxCustom_wtf6n_176 {
  width: 1rem;
  height: 1rem;
  background: transparent;
  border: 1.5px solid var(--border-subtle, #cbd5e1);
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}

._checkboxInput_wtf6n_169:checked + ._checkboxCustom_wtf6n_176 {
  background: var(--action-primary-bg, #2987C2);
  border-color: var(--action-primary-bg, #2987C2);
}

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

._checkboxText_wtf6n_199 {
  font-size: 0.75rem;
  color: var(--text-tertiary, #64748b);
}

/* Link */
._link_wtf6n_205 {
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.6875rem;
  color: var(--action-primary-bg, #2987C2);
  cursor: pointer;
  text-decoration: none;
  transition: text-decoration 0.2s;
}

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

/* Submit button */
._submitButton_wtf6n_221 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  margin-top: 0.5rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

._submitButton_wtf6n_221:hover {
  opacity: 0.9;
}

._submitButton_wtf6n_221:active {
  opacity: 0.8;
}

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

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

/* Divider */
._divider_wtf6n_260 {
  position: relative;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0.75rem 0;
}

._divider_wtf6n_260::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-subtle, #e2e8f0);
}

._dividerText_wtf6n_279 {
  position: relative;
  padding: 0 0.75rem;
  background: var(--surface-card, white);
  font-size: 0.75rem;
  color: var(--text-tertiary, #94a3b8);
  z-index: 1;
}

/* Help/signup link */
._helpLink_wtf6n_289 {
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.75rem;
  color: var(--action-primary-bg, #2987C2);
  cursor: pointer;
  text-decoration: none;
  align-self: center;
}

._helpLink_wtf6n_289:hover {
  text-decoration: underline;
}
._formWrapper_rftmu_1 {
  width: 100%;
  max-width: 360px;
  display: flex;
  flex-direction: column;
}

._formTitle_rftmu_8 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 0.25rem;
}

._formSubtitle_rftmu_15 {
  font-size: 0.8125rem;
  color: var(--text-tertiary, #94a3b8);
  margin: 0 0 2rem;
}

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

._inputGroup_rftmu_27 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._label_rftmu_33 {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-tertiary, #64748b);
  margin-bottom: 0.25rem;
}

._input_rftmu_27 {
  width: 100%;
  height: 2.5rem;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  border-bottom: 1.5px solid var(--border-subtle, #e2e8f0);
  border-radius: 0;
  font-size: 0.8125rem;
  color: var(--text-primary, #1e293b);
  transition: border-color 0.2s ease;
}

._input_rftmu_27::placeholder {
  color: var(--text-quaternary, #cbd5e1);
}

._input_rftmu_27:focus {
  outline: none;
  border-bottom-color: var(--action-primary-bg, #2987C2);
}

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

._errorMessage_rftmu_69 {
  margin: 0;
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1.25rem;
}

._submitButton_rftmu_76 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  margin-top: 0.5rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

._submitButton_rftmu_76:hover {
  opacity: 0.9;
}

._submitButton_rftmu_76:active {
  opacity: 0.8;
}

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

._divider_rftmu_108 {
  position: relative;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0.75rem 0;
}

._divider_rftmu_108::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-subtle, #e2e8f0);
}

._dividerText_rftmu_127 {
  position: relative;
  padding: 0 0.75rem;
  background: var(--surface-card, white);
  font-size: 0.75rem;
  color: var(--text-tertiary, #94a3b8);
  z-index: 1;
}

._linkButton_rftmu_136 {
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.75rem;
  color: var(--action-primary-bg, #2987C2);
  cursor: pointer;
  text-decoration: none;
  align-self: center;
  transition: text-decoration 0.2s;
}

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

._successContent_rftmu_152 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  padding: 2rem 0;
}

._successIconWrapper_rftmu_161 {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--success-500), var(--success-600));
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(34, 197, 94, 0.3);
}

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

._successTitle_rftmu_178 {
  margin: 0;
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
}

._successText_rftmu_185 {
  margin: 0;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.5;
}
/* ResetPasswordSuccessScreen — same structure as LoginScreen */

._formWrapper_1yq09_3 {
  width: 100%;
  max-width: 360px;
  display: flex;
  flex-direction: column;
}

/* Success icon */
._successIconWrapper_1yq09_11 {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--success-500, #22c55e), var(--success-600, #16a34a));
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  align-self: center;
  box-shadow: 0 4px 14px rgba(34, 197, 94, 0.3);
}

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

._formTitle_1yq09_30 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 0.25rem;
}

._formSubtitle_1yq09_37 {
  font-size: 0.8125rem;
  color: var(--text-tertiary, #94a3b8);
  margin: 0 0 1.75rem;
  line-height: 1.5;
}

/* Submit button */
._submitButton_1yq09_45 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

._submitButton_1yq09_45:hover {
  opacity: 0.9;
}

._submitButton_1yq09_45:active {
  opacity: 0.8;
}

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

/* Security note */
._securityNote_1yq09_79 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  margin-top: 1rem;
}

._securityIcon_1yq09_87 {
  width: 0.75rem;
  height: 0.75rem;
  opacity: 0.4;
}

._securityNote_1yq09_79 span {
  font-size: 0.6875rem;
  color: var(--text-quaternary, #94a3b8);
}
/* PasswordRecoveryEmailSent — same structure as LoginScreen */

._formWrapper_1ychi_3 {
  width: 100%;
  max-width: 360px;
  display: flex;
  flex-direction: column;
}

/* Success icon */
._successIconWrapper_1ychi_11 {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--success-500, #22c55e), var(--success-600, #16a34a));
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  align-self: center;
  box-shadow: 0 4px 14px rgba(34, 197, 94, 0.3);
}

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

._formTitle_1ychi_30 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 0.25rem;
}

._formSubtitle_1ychi_37 {
  font-size: 0.8125rem;
  color: var(--text-tertiary, #94a3b8);
  margin: 0 0 1.5rem;
  line-height: 1.5;
}

/* Steps card */
._stepsCard_1ychi_45 {
  background: rgba(41, 135, 194, 0.06);
  border: 1px solid rgba(41, 135, 194, 0.15);
  border-radius: 0.5rem;
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
}

._stepsTitle_1ychi_53 {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-secondary, #475569);
  margin: 0 0 0.625rem;
}

._stepsList_1ychi_62 {
  margin: 0;
  padding-left: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._stepsList_1ychi_62 li {
  font-size: 0.8125rem;
  color: var(--text-secondary, #475569);
  line-height: 1.4;
}

/* Expiry note */
._expiry_1ychi_77 {
  font-size: 0.6875rem;
  color: var(--text-quaternary, #94a3b8);
  margin: 0 0 1.5rem;
}

/* Submit button */
._submitButton_1ychi_84 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

._submitButton_1ychi_84:hover {
  opacity: 0.9;
}

._submitButton_1ychi_84:active {
  opacity: 0.8;
}

._buttonIconBack_1ychi_110 {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) invert(1);
  transform: rotate(180deg);
}
/* ExpiredLinkScreen — same structure as LoginScreen */

._formWrapper_yn4gb_3 {
  width: 100%;
  max-width: 360px;
  display: flex;
  flex-direction: column;
}

/* Error icon */
._errorIconWrapper_yn4gb_11 {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--error-500, #ef4444), var(--error-600, #dc2626));
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  align-self: center;
  box-shadow: 0 4px 14px rgba(239, 68, 68, 0.3);
}

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

._formTitle_yn4gb_30 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 0.25rem;
}

._formSubtitle_yn4gb_37 {
  font-size: 0.8125rem;
  color: var(--text-tertiary, #94a3b8);
  margin: 0 0 1.5rem;
  line-height: 1.5;
}

/* Steps card */
._stepsCard_yn4gb_45 {
  background: rgba(239, 68, 68, 0.05);
  border: 1px solid rgba(239, 68, 68, 0.15);
  border-radius: 0.5rem;
  padding: 1rem 1.25rem;
  margin-bottom: 1.25rem;
}

._stepsTitle_yn4gb_53 {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-secondary, #475569);
  margin: 0 0 0.625rem;
}

._stepsList_yn4gb_62 {
  margin: 0;
  padding-left: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._stepsList_yn4gb_62 li {
  font-size: 0.8125rem;
  color: var(--text-secondary, #475569);
  line-height: 1.4;
}

/* Submit button */
._submitButton_yn4gb_77 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

._submitButton_yn4gb_77:hover {
  opacity: 0.9;
}

._submitButton_yn4gb_77:active {
  opacity: 0.8;
}

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

/* Back link */
._backLink_yn4gb_110 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.75rem;
  color: var(--action-primary-bg, #2987C2);
  cursor: pointer;
  align-self: center;
  margin-top: 0.75rem;
  transition: text-decoration 0.2s;
}

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

._backIcon_yn4gb_130 {
  width: 0.75rem;
  height: 0.75rem;
  filter: invert(35%) sepia(50%) saturate(800%) hue-rotate(180deg) brightness(95%) contrast(95%);
  transform: rotate(180deg);
}
/* PasswordRecovery — same structure as LoginScreen */

._formWrapper_xdwqj_3 {
  width: 100%;
  max-width: 360px;
}

._formTitle_xdwqj_8 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 0.25rem;
}

._formSubtitle_xdwqj_15 {
  font-size: 0.8125rem;
  color: var(--text-tertiary, #94a3b8);
  margin: 0 0 2rem;
  line-height: 1.5;
}

/* Form */
._form_xdwqj_3 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/* Input group */
._inputGroup_xdwqj_30 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  transition: all 0.3s ease-in-out;
}

/* Label */
._label_xdwqj_38 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-tertiary, #64748b);
  margin-bottom: 0.25rem;
}

/* Input */
._input_xdwqj_30 {
  width: 100%;
  height: 2.5rem;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  border-bottom: 1.5px solid var(--border-subtle, #e2e8f0);
  border-radius: 0;
  font-size: 0.8125rem;
  color: var(--text-primary, #1e293b);
  transition: border-color 0.2s ease;
}

._input_xdwqj_30::placeholder {
  color: var(--text-quaternary, #cbd5e1);
}

._input_xdwqj_30:focus {
  outline: none;
  border-bottom-color: var(--action-primary-bg, #2987C2);
}

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

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

._inputShake_xdwqj_82 {
  animation: _shake_xdwqj_1 0.4s ease-in-out;
}

@keyframes _shake_xdwqj_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-3px); }
  40% { transform: translateX(3px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

/* Error message */
._errorMessage_xdwqj_95 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.6875rem;
  color: var(--error-500);
  margin-top: 0.25rem;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.3s ease-out;
}

._errorMessage_xdwqj_95._show_xdwqj_108 {
  max-height: 3rem;
  opacity: 1;
}

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

/* Submit button */
._submitButton_xdwqj_121 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  margin-top: 0.75rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

._submitButton_xdwqj_121:hover {
  opacity: 0.9;
}

._submitButton_xdwqj_121:active {
  opacity: 0.8;
}

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

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

/* Rate limit banner */
._rateLimitBanner_xdwqj_160 {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  padding: 0.75rem 1rem;
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.3);
  border-radius: 0.5rem;
  margin-bottom: 0.25rem;
}

._rateLimitIcon_xdwqj_171 {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.1rem;
  filter: invert(68%) sepia(72%) saturate(600%) hue-rotate(5deg) brightness(98%) contrast(95%);
}

._rateLimitTitle_xdwqj_179 {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--warning-700, #b45309);
  margin: 0 0 0.125rem;
}

._rateLimitText_xdwqj_186 {
  font-size: 0.6875rem;
  color: var(--warning-600, #d97706);
  margin: 0;
  line-height: 1.4;
}

/* Back link */
._backLink_xdwqj_194 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.75rem;
  color: var(--action-primary-bg, #2987C2);
  cursor: pointer;
  align-self: center;
  margin-top: 0.5rem;
  transition: text-decoration 0.2s;
}

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

._backIcon_xdwqj_214 {
  width: 0.75rem;
  height: 0.75rem;
  filter: invert(35%) sepia(50%) saturate(800%) hue-rotate(180deg) brightness(95%) contrast(95%);
  transform: rotate(180deg);
}
._formWrapper_te0s0_1 {
  width: 100%;
  max-width: 360px;
}

._formTitle_te0s0_6 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary, #1e293b);
  margin: 0 0 1.5rem;
}

._form_te0s0_1 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Rate limit banner */
._rateLimitBanner_te0s0_20 {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  padding: 0.75rem 1rem;
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.3);
  border-radius: 0.5rem;
}

._rateLimitIcon_te0s0_30 {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.1rem;
  filter: invert(68%) sepia(72%) saturate(600%) hue-rotate(5deg) brightness(98%) contrast(95%);
}

._rateLimitTitle_te0s0_38 {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--warning-700, #b45309);
  margin: 0 0 0.125rem;
}

._rateLimitText_te0s0_45 {
  font-size: 0.6875rem;
  color: var(--warning-600, #d97706);
  margin: 0;
  line-height: 1.4;
}

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

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

._label_te0s0_59 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-tertiary, #64748b);
  margin-bottom: 0.25rem;
}

._labelIcon_te0s0_77 {
  width: 0.875rem;
  height: 0.875rem;
  opacity: 0.6;
}

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

._input_te0s0_52 {
  width: 100%;
  height: 2.5rem;
  padding: 0.625rem 1rem;
  padding-right: 2.5rem;
  background: transparent;
  border: none;
  border-bottom: 1.5px solid var(--border-subtle, #e2e8f0);
  border-radius: 0;
  font-size: 0.8125rem;
  color: var(--text-primary, #1e293b);
  transition: border-color 0.2s ease;
}

._input_te0s0_52::placeholder {
  color: var(--text-quaternary, #cbd5e1);
}

._input_te0s0_52:focus {
  outline: none;
  border-bottom-color: var(--action-primary-bg, #2987C2);
}

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

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

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

._toggleButton_te0s0_124 {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  opacity: 0.5;
  transition: opacity 0.2s;
}

._toggleButton_te0s0_124:hover {
  opacity: 1;
}

._toggleIcon_te0s0_146 {
  width: 1.125rem;
  height: 1.125rem;
  display: block;
}

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

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

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

._tooltip_te0s0_153 {
  display: none;
  position: absolute;
  right: 0;
  top: 1.5rem;
  width: 14rem;
  background: var(--surface-card, white);
  border: 1px solid var(--border-subtle, #e2e8f0);
  border-radius: 0.5rem;
  padding: 0.75rem;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
  z-index: 10;
}

._tooltipContainer_te0s0_153:hover ._tooltip_te0s0_153 {
  display: block;
}

._tooltipTitle_te0s0_187 {
  margin: 0 0 0.25rem 0;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--text-secondary);
}

._tooltipList_te0s0_194 {
  margin: 0;
  padding-left: 1rem;
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1.5;
}

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

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

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

._strengthBar--weak_te0s0_222 { background: var(--error-500); }
._strengthBar--medium_te0s0_223 { background: var(--warning-500); }
._strengthBar--strong_te0s0_224 { background: var(--info-500); }
._strengthBar--very-strong_te0s0_225 { background: var(--success-500); }

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

._strengthText--weak_te0s0_233 { color: var(--error-500); font-weight: 700; }
._strengthText--medium_te0s0_234 { color: var(--warning-500); font-weight: 700; }
._strengthText--strong_te0s0_235 { color: var(--info-500); font-weight: 700; }
._strengthText--very-strong_te0s0_236 { color: var(--success-500); font-weight: 700; }

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

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

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

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

._matchText_te0s0_260 {
  font-size: 0.6875rem;
  line-height: 1rem;
  white-space: pre-line;
}

._matchSuccess_te0s0_243 ._matchText_te0s0_260 { color: var(--success-500); }
._matchError_te0s0_244 ._matchText_te0s0_260 { color: var(--error-500); }

/* Submit button */
._submitButton_te0s0_270 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  margin-top: 0.5rem;
  background: linear-gradient(135deg, var(--action-primary-bg, #2987C2), var(--blue-700, #1d6fa8));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--action-primary-text, white);
  cursor: pointer;
  box-shadow: var(--auth-btn-shadow, 0 4px 14px rgba(41, 135, 194, 0.3));
  transition: opacity 0.2s;
}

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

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

._spinner_te0s0_300 {
  width: 1rem;
  height: 1rem;
  border: 0.125rem solid rgba(255, 255, 255, 0.3);
  border-top-color: var(--action-primary-text, white);
  border-radius: 50%;
  animation: _spin_te0s0_300 0.8s linear infinite;
}

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

._link_te0s0_313 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.75rem;
  color: var(--action-primary-bg, #2987C2);
  cursor: pointer;
  text-decoration: none;
  align-self: center;
  transition: text-decoration 0.2s;
}

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

._backIcon_te0s0_331 {
  width: 0.75rem;
  height: 0.75rem;
  transform: rotate(180deg);
}
/* Error404 Styles - Mapinator MVP */

/* Container principal */
._container_b50yc_4 {
  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_b50yc_16 {
  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_b50yc_27 {
  position: relative;
  width: 28rem;
  z-index: 1;
}

/* Card glow effect */
._cardGlow_b50yc_34 {
  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_b50yc_45 {
  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_b50yc_55 {
  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_b50yc_67 {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  z-index: 1;
}

/* Logo container */
._logoContainer_b50yc_77 {
  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_b50yc_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_b50yc_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_b50yc_111 {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

._logoIcon_b50yc_111 img {
  filter: brightness(0) saturate(100%) invert(27%) sepia(98%) saturate(4456%) hue-rotate(351deg) brightness(95%) contrast(95%);
}

/* Título */
._title_b50yc_126 {
  margin: 0;
  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_b50yc_137 {
  margin: 0;
  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_b50yc_147 {
  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_b50yc_156 {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  text-align: center;
  line-height: 1.4219rem;
}

/* Info box */
._infoBox_b50yc_166 {
  padding: 0.75rem;
  background: var(--blue-50);
  border: 0.0417rem solid var(--blue-200);
  border-radius: 0.625rem;
}

._infoText_b50yc_173 {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--blue-600);
  text-align: center;
  line-height: 1.2188rem;
}

/* Button Group */
._buttonGroup_b50yc_183 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

/* Button */
._button_b50yc_183 {
  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-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_b50yc_183:hover {
  opacity: 0.9;
}

._button_b50yc_183:active {
  opacity: 0.8;
}

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

/* Logout Button */
._logoutButton_b50yc_222 {
  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-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

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

._logoutButton_b50yc_222:active {
  background: var(--slate-200);
}

._logoutButton_b50yc_222 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_b50yc_254 {
  padding-top: 0.75rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._footerText_b50yc_259 {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-align: center;
  line-height: 1rem;
}

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

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

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

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

  ._header_b50yc_55 {
    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_1cvta_7 {
  display: flex;
  flex-direction: column;
  width: 14rem;
  height: 100vh;
  background: var(--surface-card);
  position: relative;
  transition: width 0.3s ease-in-out;
  flex-shrink: 0;
  overflow: visible;
}

._sidebarCollapsed_1cvta_19 {
  width: 4.5rem;
}

/* ===== HEADER ===== */
._header_1cvta_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_1cvta_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_1cvta_19 ._logoButton_1cvta_34 {
  gap: 0;
}

._logoButton_1cvta_34:hover {
  opacity: 0.8;
}

._logo_1cvta_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_1cvta_66 {
  width: 1.9rem;
  height: 1.9rem;
  color: var(--indigo-700);
}

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

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

/* ===== CONTENT ===== */
._content_1cvta_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(--border-subtle);
}

/* ===== SECTION HEADER (Users icon + CLIENTES) ===== */
._sectionHeader_1cvta_94 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: calc(100% - 1.2rem);
  margin: 0 0.6rem;
  min-height: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border-subtle);
  transition: gap 0.3s ease-in-out;
}

._sidebarCollapsed_1cvta_19 ._sectionHeader_1cvta_94 {
  gap: 0;
  border-bottom: none;
  padding-bottom: 0;
  min-height: 0;
}

._sidebarCollapsed_1cvta_19 ._content_1cvta_81 {
  padding-top: 0.5rem;
  gap: 0.5rem;
}

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

._sectionTitle_1cvta_125 {
  font-size: 0.6875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.05rem;
  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_1cvta_19 ._sectionTitle_1cvta_125 {
  opacity: 0;
  width: 0;
  flex: 0;
}

/* ===== ADD BUTTON ===== */
._addButton_1cvta_146 {
  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(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  color: var(--action-primary-text);
  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_1cvta_19 ._addButton_1cvta_146 {
  border-radius: 0.625rem;
  gap: 0;
}

._addButton_1cvta_146:hover {
  opacity: 0.9;
}

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

._addButton_1cvta_146 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_1cvta_19 ._addButton_1cvta_146 span {
  opacity: 0;
  width: 0;
  flex: 0;
}

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

/* Positioning context for .editButton, which is a sibling of .clientCard
   (it must not be nested inside the card button — invalid HTML).
   Safe for .clientTooltip, which is position: fixed. */
._clientCardWrapper_1cvta_208 {
  position: relative;
}

/* ===== CLIENT CARD ===== */
._clientCard_1cvta_205 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 3.875rem;
  width: 100%;
  padding: 0;
  background: rgba(139, 92, 246, 0.06);
  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_1cvta_19 ._clientCard_1cvta_205 {
  gap: 0;
  justify-content: center;
}

._clientCardSelected_1cvta_236 {
  background: linear-gradient(to right, rgba(109, 40, 217, 0.08), rgba(0, 0, 0, 0));
  border-left: 0.125rem solid var(--indigo-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_1cvta_236 ._clientName_1cvta_242 {
  color: var(--blue-600);
}

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

._clientCardWrapper_1cvta_208:hover ._clientCardInactive_1cvta_246 {
  opacity: 0.6;
}

._clientCardWrapper_1cvta_208:hover ._clientCard_1cvta_205 {
  background: rgba(109, 40, 217, 0.05);
  box-shadow: 0 0.125rem 0.375rem rgba(109, 40, 217, 0.08);
  transform: translateY(-0.0625rem);
}

._clientCardWrapper_1cvta_208:hover ._clientCardSelected_1cvta_236 {
  background: linear-gradient(to right, rgba(109, 40, 217, 0.12), rgba(109, 40, 217, 0.03));
  box-shadow: 0 0.25rem 0.5rem -0.0625rem rgba(109, 40, 217, 0.12);
  transform: translateY(-0.0625rem);
}

/* Client acronym — hidden when expanded, visible when collapsed */
._clientAcronym_1cvta_268 {
  display: flex;
  align-items: center;
  justify-content: center;
  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_1cvta_19 ._clientAcronym_1cvta_268 {
  opacity: 1;
  width: 1.5rem;
  flex: unset;
  margin: 0 auto;
  text-align: center;
  font-size: 0.625rem;
  height: 1.5rem;
  line-height: 1.5rem;
}

/* Client info - like the span in addButton: fades out when collapsed */
._clientInfo_1cvta_296 {
  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_1cvta_19 ._clientInfo_1cvta_296 {
  opacity: 0;
  width: 0;
  flex: 0;
  padding-left: 0;
}

._clientName_1cvta_242 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

._clientProjects_1cvta_326 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

/* ===== EDIT BUTTON ===== */
._editButton_1cvta_205 {
  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;
}

._clientCardWrapper_1cvta_208:hover ._editButton_1cvta_205 {
  display: flex;
}

._sidebarCollapsed_1cvta_19 ._clientCardWrapper_1cvta_208:hover ._editButton_1cvta_205 {
  display: none;
}

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

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

/* ===== COLLAPSE BUTTON ===== */
._collapseButton_1cvta_370 {
  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_1cvta_370:hover {
  border-color: var(--indigo-700);
}

._collapseButton_1cvta_370:hover ._collapseIcon_1cvta_393 {
  color: var(--indigo-700);
}

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

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

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

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

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

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

/* ===== TOOLTIP (when collapsed) ===== */
._clientTooltip_1cvta_207 {
  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_1cvta_207::before {
  content: '';
  position: absolute;
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  border: 0.375rem solid transparent;
  border-right-color: var(--border-subtle);
}

._clientTooltip_1cvta_207::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_1cvta_19 ._clientCardWrapper_1cvta_208:hover ._clientTooltip_1cvta_207 {
  opacity: 1;
  visibility: visible;
}

._clientTooltipName_1cvta_469 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin-bottom: 0.25rem;
}

._clientTooltipProjects_1cvta_477 {
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
}


/* ─── Dark Mode Overrides ────────────────────────────────────────────────── */
html.dark ._clientCard_1cvta_205 {
  background: rgba(109, 40, 217, 0.15);
  border: 1px solid rgba(109, 40, 217, 0.3);
}

html.dark ._clientCard_1cvta_205:hover {
  background: rgba(109, 40, 217, 0.25);
}

html.dark ._clientCardSelected_1cvta_236 {
  background: rgba(109, 40, 217, 0.25);
  border-left: 0.1875rem solid var(--indigo-500);
  border-color: rgba(109, 40, 217, 0.5);
  border-left-color: var(--indigo-500);
}

html.dark ._clientName_1cvta_242 {
  color: var(--indigo-200);
}

html.dark ._clientCardSelected_1cvta_236 ._clientName_1cvta_242 {
  color: var(--indigo-100);
}
/* Header Styles - Mapinator MVP */

._header_1tj24_3 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 1.5rem;
  height: 3.5rem;
  background: var(--surface-card);
  border-bottom: 1px solid var(--border-subtle);
  box-shadow: none;
  gap: 0.75rem;
  flex-shrink: 0;
}

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

/* Nav button - icon only */
._navButton_1tj24_24 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: transparent;
  border: none;
  border-radius: 0.5rem;
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  position: relative;
  padding: 0;
}

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

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

._navIcon_1tj24_49 {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--text-secondary);
  fill: var(--text-secondary);
}

html.dark ._navButton_1tj24_24 {
  color: #FFFFFF;
}

html.dark ._navIcon_1tj24_49 {
  color: #FFFFFF;
  fill: #FFFFFF;
}

/* Badge for notifications */
._navButtonWithBadge_1tj24_66 {
  position: relative;
}


._badge_1tj24_71 {
  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-size: 0.625rem;
  color: var(--text-inverse);
  line-height: 1;
  font-weight: 600;
}

/* --- Credits Badge -------------------------------------------------------- */
._creditsWrapper_1tj24_90 {
  position: relative;
}

._creditsBadge_1tj24_94 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1.25rem;
  background: var(--surface-card);
  border: 1px solid var(--border-subtle);
  border-radius: 2rem;
  cursor: pointer;
  transition: all 0.15s ease;
  color: var(--text-primary);
}

._creditsBadge_1tj24_94:hover {
  background: var(--slate-100);
  border-color: var(--border-default);
}

._creditsBadgeLow_1tj24_112 {
  border-color: var(--warning-500);
  background: var(--warning-50);
  color: var(--warning-700);
}

._creditsIcon_1tj24_118 {
  font-size: 0.875rem;
  color: #7C3AED;
}

._creditsNumber_1tj24_123 {
  font-size: 0.9375rem;
  font-weight: 700;
  color: inherit;
}

._creditsLabel_1tj24_129 {
  font-size: 0.9375rem;
  font-weight: 500;
  color: inherit;
}

._creditsChevron_1tj24_135 {
  color: inherit;
  transition: transform 0.2s ease;
  margin-left: 0.125rem;
}

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

/* Credits Dropdown */
._creditsDropdown_1tj24_146 {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  width: 240px;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  padding: 1rem;
  z-index: 200;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

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

._creditsDropdownTitle_1tj24_168 {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--slate-900);
}

._creditsPlanBadge_1tj24_174 {
  font-size: 0.6875rem;
  font-weight: 700;
  color: var(--text-secondary);
  background: var(--slate-200);
  padding: 0.1875rem 0.5rem;
  border-radius: 0.25rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

._creditsProgressBar_1tj24_185 {
  width: 100%;
  height: 0.5rem;
  background: var(--slate-200);
  border-radius: 0.25rem;
  overflow: hidden;
}

._creditsProgressFill_1tj24_193 {
  height: 100%;
  background: var(--cyan-500);
  border-radius: 0.25rem;
  transition: width 0.3s ease;
}

._creditsProgressLabel_1tj24_200 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._creditsDivider_1tj24_205 {
  width: 100%;
  height: 1px;
  background: var(--border-subtle);
}

._creditsWarningBanner_1tj24_211 {
  background: #2e2a5a;
  border: 1px solid #3d3670;
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  font-size: 0.8125rem;
  color: #e2e8f0;
  line-height: 1.5;
}

._creditsUnlock_1tj24_221 {
  font-size: 0.875rem;
  color: var(--text-secondary);
}

._creditsUpgradeBtn_1tj24_226 {
  width: 100%;
  padding: 0.625rem;
  background: var(--slate-900);
  color: white;
  border: none;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.15s;
}

._creditsUpgradeBtn_1tj24_226:hover {
  opacity: 0.9;
}

/* Vertical divider */
._divider_1tj24_244 {
  width: 1px;
  height: 1.5rem;
  background: var(--border-subtle);
  flex-shrink: 0;
}

/* User section */
._userSection_1tj24_252 {
  position: relative;
}

._avatarButton_1tj24_256 {
  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_1tj24_256:hover {
  background: var(--slate-100);
}

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

._avatar_1tj24_256 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: var(--indigo-700);
  color: var(--text-inverse);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

._chevron_1tj24_292 {
  transition: transform 0.2s ease-in-out;
  flex-shrink: 0;
  color: var(--slate-600);
}

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

/* Dropdown */
._dropdown_1tj24_303 {
  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_1tj24_1 0.15s ease-out;
}

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

/* Dropdown user info section */
._dropdownUserInfo_1tj24_329 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem;
}

._dropdownAvatar_1tj24_336 {
  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-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

._dropdownUserText_1tj24_351 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}

._dropdownUserName_1tj24_358 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._dropdownUserEmail_1tj24_367 {
  font-size: 0.75rem;
  color: var(--text-secondary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Dropdown divider */
._dropdownDivider_1tj24_376 {
  height: 1px;
  background: var(--border-subtle);
  margin: 0;
}

/* Dropdown menu items */
._dropdownItem_1tj24_383 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.75rem 1rem;
  background: transparent;
  border: none;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s ease-in-out;
  text-align: left;
}

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

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

._dropdownItemIcon_1tj24_407 {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--text-secondary);
  fill: var(--text-secondary);
  flex-shrink: 0;
}

/* Danger item (Sair) */
._dropdownItemDanger_1tj24_416 {
  color: var(--error-500);
}

._dropdownItemDanger_1tj24_416 ._dropdownItemIcon_1tj24_407 {
  color: var(--error-500);
  fill: var(--error-500);
}

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

/* Loading spinner */
._loadingSpinner_1tj24_430 {
  width: 0.875rem;
  height: 0.875rem;
  border: 0.125rem solid var(--blue-100);
  border-top-color: var(--blue-600);
  border-radius: 50%;
  animation: _spin_1tj24_1 0.8s linear infinite;
  flex-shrink: 0;
  position: absolute;
  top: -0.125rem;
  left: -0.125rem;
}

@keyframes _spin_1tj24_1 {
  to {
    transform: rotate(360deg);
  }
}
/* NotificationBell Styles - Mapinator MVP */

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

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

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

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

._bellIcon_1nshu_30 {
    width: 1.5rem;
    height: 1.5rem;
    color: var(--text-secondary);
}

html.dark ._bellButton_1nshu_5 {
    color: var(--slate-900);
}

html.dark ._bellIcon_1nshu_30 {
    color: var(--slate-900);
}

._badge_1nshu_44 {
    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_1nshu_64 {
    position: relative;
}

._popover_1nshu_64 {
    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_1nshu_1 0.15s ease-out;
}

._popover_1nshu_64 button {
}

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

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

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

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

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

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

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

._unreadBadge_1nshu_125 {
    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_1nshu_134 {
    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_1nshu_134:hover {
    color: var(--text-primary);
}

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

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

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

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

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

._noteItem_1nshu_176 {
    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_1nshu_176:last-child {
    border-bottom: none;
}

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

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

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

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

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

._unreadDotInactive_1nshu_218 {
    background: transparent;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

._viewAllButton_1nshu_290 {
    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_1nshu_290:hover {
    background: var(--blue-50);
    text-decoration: underline;
}

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

._centralOverlay_1nshu_311 {
    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_1nshu_325 {
    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_1nshu_1 0.2s ease-out;
}

._centralContent_1nshu_325 button {
}

._centralContent_1nshu_325 input {
}

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

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

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

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

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

._centralCloseButton_1nshu_378 {
    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_1nshu_378:hover {
    background: var(--slate-50);
    color: var(--slate-700);
}

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

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

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

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

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

._searchInputWrapper_1nshu_421 {
    position: relative;
}

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

._searchInput_1nshu_421 {
    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_1nshu_421::placeholder {
    color: var(--slate-400);
}

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

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

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

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

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

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

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

._centralListItem_1nshu_492 {
    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_1nshu_492:hover {
    background: var(--slate-50);
}

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

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

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

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

._centralListItemDotRead_1nshu_531 {
    background: transparent;
}

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

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

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

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

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

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

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

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

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

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

._detailSummary_1nshu_589 h1,
._detailSummary_1nshu_589 h2,
._detailSummary_1nshu_589 h3,
._detailSummary_1nshu_589 h4,
._detailSummary_1nshu_589 h5,
._detailSummary_1nshu_589 h6 {
    color: var(--text-primary);
    font-weight: 600;
    margin: 1rem 0 0.5rem;
    line-height: 1.3;
}

._detailSummary_1nshu_589 h1 {
    font-size: 1.125rem;
}

._detailSummary_1nshu_589 h2 {
    font-size: 1rem;
}

._detailSummary_1nshu_589 h3 {
    font-size: 0.9375rem;
}

._detailSummary_1nshu_589 h4,
._detailSummary_1nshu_589 h5,
._detailSummary_1nshu_589 h6 {
    font-size: 0.875rem;
}

._detailSummary_1nshu_589 p {
    margin: 0.5rem 0;
}

._detailSummary_1nshu_589 ul,
._detailSummary_1nshu_589 ol {
    padding-left: 1.25rem;
    margin: 0.5rem 0;
}

._detailSummary_1nshu_589 li {
    margin: 0.25rem 0;
}

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

._detailSummary_1nshu_589 code {
    background: var(--slate-100);
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-family: var(--font-family-mono);
}

._detailSummary_1nshu_589 pre {
    background: var(--slate-100);
    padding: 0.75rem;
    border-radius: 0.375rem;
    overflow-x: auto;
    margin: 0.5rem 0;
}

._detailSummary_1nshu_589 pre code {
    background: transparent;
    padding: 0;
}

._detailSummary_1nshu_589 hr {
    border: none;
    border-top: 1px solid var(--border-subtle);
    margin: 0.75rem 0;
}

._detailSummary_1nshu_589 a {
    color: var(--blue-600);
    text-decoration: underline;
}

._detailSummary_1nshu_589 a:hover {
    color: var(--blue-700);
}

._detailSummary_1nshu_589 blockquote {
    border-left: 3px solid var(--blue-200);
    padding-left: 0.75rem;
    margin: 0.5rem 0;
    color: var(--text-secondary);
}

._detailHighlightsSection_1nshu_688 {
    margin-top: 1.25rem;
}

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

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

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

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

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

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

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

._detailEmptyText_1nshu_748 {
    font-size: 0.8125rem;
}

._detailEmptySubtext_1nshu_752 {
    font-size: 0.6875rem;
    margin-top: 0.25rem;
    opacity: 0.8;
}
/* Tabs Styles */

._tabs_17sw0_3 {
  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_17sw0_3 {
  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-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_17sw0_3:hover {
  background: transparent;
  color: var(--action-primary-bg);
}

._tab_17sw0_3:hover ._tabIcon_17sw0_39 {
  color: var(--action-primary-bg);
}

._tabActive_17sw0_43 {
  color: var(--action-primary-bg);
  font-weight: 400;
  border-bottom-color: var(--action-primary-bg);
  background: transparent;
}

._tabActive_17sw0_43 ._tabIcon_17sw0_39 {
  color: var(--action-primary-bg);
}

._tabIcon_17sw0_39 {
  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_17sw0_39 svg {
  width: 1rem;
  height: 1rem;
}

._tabIcon_17sw0_39 svg path {
  stroke: currentColor !important;
}

._tabDisabled_17sw0_74 {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

._tabDisabled_17sw0_74:hover {
  background: transparent;
  color: var(--text-secondary);
}

._tabStale_17sw0_85 {
  color: var(--color-stale-dark);
  border-bottom-color: var(--color-stale);
}

._tabStale_17sw0_85 ._tabIcon_17sw0_39 {
  color: var(--color-stale-dark);
}

._tabStale_17sw0_85:hover {
  background: var(--color-stale-bg-active);
  color: var(--color-stale-dark);
}

._tabStale_17sw0_85:hover ._tabIcon_17sw0_39 {
  color: var(--color-stale-dark);
}

._tabStale_17sw0_85._tabActive_17sw0_43 {
  color: var(--color-stale-dark);
  border-bottom-color: var(--color-stale);
  background: var(--color-stale-bg-active);
}

._tabStale_17sw0_85._tabActive_17sw0_43 ._tabIcon_17sw0_39 {
  color: var(--color-stale-dark);
}
/* TabbedCard Styles - FIXED LAYOUT PATTERN */
._tabbedCard_gkwpr_2 {
  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_gkwpr_15 {
  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_gkwpr_25 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._cardSubtitle_gkwpr_33 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

/* Tabs Container - FIXED */
._tabsContainer_gkwpr_41 {
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
  background: var(--surface-card);
}

/* Card Content - SCROLLABLE */
._cardContent_gkwpr_48 {
  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_gkwpr_48::-webkit-scrollbar {
  width: 0.25rem;
}

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

._cardContent_gkwpr_48::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._cardContent_gkwpr_48::-webkit-scrollbar-thumb:hover {
  background: var(--border-strong);
}
/* HomeScreen.module.css */
._homeScreen_pjxa1_2 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  overflow: hidden;
}

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

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

/* Header Card - card with title and welcome */
._headerCard_pjxa1_29 {
  background: var(--surface-card);
  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_pjxa1_38 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0 0 0.25rem 0;
}

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

._welcomeText_pjxa1_52 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

._infoButton_pjxa1_59 {
  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_pjxa1_59:hover {
  color: var(--blue-600);
}

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

/* Tooltip */
._infoButton_pjxa1_59::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-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_pjxa1_59::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_pjxa1_59:hover::after,
._infoButton_pjxa1_59:hover::before {
  opacity: 1;
}

/* Main card - FIXED LAYOUT */
._mainCard_pjxa1_131 {
  display: flex;
  flex-direction: column;
  background: var(--surface-card);
  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_pjxa1_143 {
  border-bottom: 0.0417rem solid var(--border-subtle);
  flex-shrink: 0;
}

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

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

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

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

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

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

._cardIcon_pjxa1_195 {
  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;
}

html.dark ._cardIcon_pjxa1_195 {
  background: transparent;
}

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

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

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

._cardTitle_pjxa1_225 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._cardSubtitle_pjxa1_239 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

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

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

._descriptionText_pjxa1_254 p {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.4219rem;
  margin: 0;
}

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

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

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

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

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

/* StatCard Styles */
._statCard_pjxa1_298 {
  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_pjxa1_298:hover {
  transform: translateY(-0.125rem);
}

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

._statIcon_pjxa1_320 {
  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_pjxa1_320 img {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

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

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

._statCardPurple_pjxa1_346 ._statIcon_pjxa1_320 {
  color: var(--indigo-400);
}

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

._statCardGreen_pjxa1_354 ._statIcon_pjxa1_320 {
  color: var(--success-500);
}

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

._statCardYellow_pjxa1_362 ._statIcon_pjxa1_320 {
  color: var(--warning-500);
}

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

._statTitle_pjxa1_370 {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  color: var(--text-secondary);
}

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

._statValue_pjxa1_384 {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2rem;
  color: var(--slate-900);
}

._statSubtitle_pjxa1_391 {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  color: var(--text-tertiary);
}

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

._statCardBlue_pjxa1_338 ._statTitle_pjxa1_370,
._statCardBlue_pjxa1_338 ._statValue_pjxa1_384,
._statCardBlue_pjxa1_338 ._statSubtitle_pjxa1_391 {
  color: var(--text-secondary);
}

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

._statCardPurple_pjxa1_346 ._statTitle_pjxa1_370,
._statCardPurple_pjxa1_346 ._statValue_pjxa1_384,
._statCardPurple_pjxa1_346 ._statSubtitle_pjxa1_391 {
  color: var(--text-secondary);
}

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

._statCardGreen_pjxa1_354 ._statTitle_pjxa1_370,
._statCardGreen_pjxa1_354 ._statValue_pjxa1_384,
._statCardGreen_pjxa1_354 ._statSubtitle_pjxa1_391 {
  color: var(--text-secondary);
}

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

._statCardYellow_pjxa1_362 ._statTitle_pjxa1_370,
._statCardYellow_pjxa1_362 ._statValue_pjxa1_384,
._statCardYellow_pjxa1_362 ._statSubtitle_pjxa1_391 {
  color: var(--text-secondary);
}

/* Dark mode - remove colored backgrounds, use card surface */
html.dark ._statCardBlue_pjxa1_338,
html.dark ._statCardPurple_pjxa1_346,
html.dark ._statCardGreen_pjxa1_354,
html.dark ._statCardYellow_pjxa1_362 {
  background: transparent;
  border-color: var(--border-subtle);
}

html.dark ._statCardBlue_pjxa1_338 ._statTitle_pjxa1_370,
html.dark ._statCardBlue_pjxa1_338 ._statValue_pjxa1_384,
html.dark ._statCardBlue_pjxa1_338 ._statSubtitle_pjxa1_391,
html.dark ._statCardPurple_pjxa1_346 ._statTitle_pjxa1_370,
html.dark ._statCardPurple_pjxa1_346 ._statValue_pjxa1_384,
html.dark ._statCardPurple_pjxa1_346 ._statSubtitle_pjxa1_391,
html.dark ._statCardGreen_pjxa1_354 ._statTitle_pjxa1_370,
html.dark ._statCardGreen_pjxa1_354 ._statValue_pjxa1_384,
html.dark ._statCardGreen_pjxa1_354 ._statSubtitle_pjxa1_391,
html.dark ._statCardYellow_pjxa1_362 ._statTitle_pjxa1_370,
html.dark ._statCardYellow_pjxa1_362 ._statValue_pjxa1_384,
html.dark ._statCardYellow_pjxa1_362 ._statSubtitle_pjxa1_391 {
  color: var(--text-primary);
}

/* AlertCard Styles */
._alertCard_pjxa1_468 {
  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_pjxa1_481 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._alertIconContainer_pjxa1_487 {
  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_pjxa1_487 svg {
  width: 1.5rem;
  height: 1.5rem;
}

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

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

._alertTitle_pjxa1_514 {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 0.9375rem;
}

._alertSubtitle_pjxa1_521 {
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 0.9375rem;
}

._alertButton_pjxa1_528 {
  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-size: 0.75rem;
  font-weight: 400;
  color: white;
  line-height: 1rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._alertButton_pjxa1_528:hover {
  opacity: 0.9;
}

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

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

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

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

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

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

._clientListTitle_pjxa1_587 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.5rem;
  margin: 0;
}

._addClientButton_pjxa1_595 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2rem;
  padding: 0 1rem;
  background: linear-gradient(to bottom, var(--action-primary-bg), var(--action-primary-bg-hover));
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--action-primary-text);
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._addClientButton_pjxa1_595:hover {
  opacity: 0.9;
}

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

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

._clientListItem_pjxa1_628 {
  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_pjxa1_628:hover {
  background: var(--slate-100);
}

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

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

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

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

._clientListItemName_pjxa1_675 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
}

._clientListItemProjects_pjxa1_683 {
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

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

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


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

._tooltipIcon_pjxa1_712 {
  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_pjxa1_712 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_pjxa1_712:hover {
  color: var(--blue-600);
}

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

._tooltip_pjxa1_705 {
  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_pjxa1_705:hover ._tooltip_pjxa1_705 {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

._tooltipTitle_pjxa1_761 {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text-secondary);
  line-height: 1.125rem;
  margin: 0 0 0.375rem 0;
}

._tooltipText_pjxa1_769 {
  font-size: 0.8125rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.125rem;
  margin: 0;
}

/* Arrow for tooltip */
._tooltip_pjxa1_705::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_pjxa1_705::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_pjxa1_806 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.5rem;
}

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

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

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

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

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

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

._emptyFilteredState_pjxa1_861 {
  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_pjxa1_861 p {
  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_v68c0_1 {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
  z-index: 9999;
}

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

/* Sidebar */
._skeletonSidebar_v68c0_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_v68c0_35 {
  width: 7.5rem;
  height: 1.75rem;
  background: var(--slate-200);
  border-radius: 0.375rem;
  margin-bottom: 0.5rem;
}

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

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

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

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

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

/* Header */
._skeletonHeader_v68c0_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_v68c0_92 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

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

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

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

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

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

/* Gray wrapper */
._skeletonWrapper_v68c0_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_v68c0_144 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0;
}

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

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

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

/* Tabs */
._skeletonTabs_v68c0_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_v68c0_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_v68c0_176 {
  width: 4.5rem;
  height: 1.75rem;
  background: var(--slate-100);
  border-radius: 0.375rem;
}

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

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

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

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

/* -- Loading overlay -- */
._overlay_v68c0_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;
}

._logo_v68c0_244 {
  width: 12rem;
  height: auto;
  margin-bottom: 1.25rem;
  animation: _pulse_v68c0_1 2s ease-in-out infinite;
}

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

._message_v68c0_256 {
  font-size: 1rem;
  color: var(--text-tertiary);
  margin: 0 0 1.5rem 0;
}

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

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

@keyframes _infiniteBar_v68c0_1 {
  0% { transform: translateX(-200%); }
  100% { transform: translateX(500%); }
}
/* Modal Styles - Mapinator MVP */

._modalOverlay_x6w94_3 {
  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_x6w94_17 {
  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_x6w94_1 0.2s ease-out;
}

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

._modalHeader_x6w94_40 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem;
  border-bottom: 0.0417rem solid var(--border-subtle);
}

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

._modalIcon_x6w94_54 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._modalTitle_x6w94_48 {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.75rem;
  margin: 0;
}

._closeButton_x6w94_69 {
  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_x6w94_69 svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

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

._modalBody_x6w94_95 {
  padding: 1.5rem;
  overflow-y: auto;
  flex: 1;
}

/* Scrollbar customization */
._modalBody_x6w94_95::-webkit-scrollbar {
  width: 0.25rem;
}

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

._modalBody_x6w94_95::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._modalBody_x6w94_95::-webkit-scrollbar-thumb:hover {
  background: var(--border-strong);
}
/* AddClientModal Styles - Mapinator MVP */

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

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

._label_5hgqu_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_5hgqu_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

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

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

._errorText_5hgqu_56 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_5hgqu_63 {
  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_5hgqu_73 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_5hgqu_73:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_5hgqu_93 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_5hgqu_93:hover {
  opacity: 0.9;
}

._submitButton_5hgqu_93:active {
  transform: translateY(0.0625rem);
}
/* EditClientModal Styles - Mapinator MVP */

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

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

._label_1dra5_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1dra5_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

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

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

._errorText_1dra5_56 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1dra5_63 {
  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_1dra5_73 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_1dra5_73:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1dra5_93 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1dra5_93:hover {
  opacity: 0.9;
}

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

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

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

._infoText_ca032_20 {
  font-size: 0.875rem;
  color: var(--warning-700);
  line-height: 1.5;
  margin: 0;
}

._checkboxBox_ca032_27 {
  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_ca032_38 {
  border-color: var(--warning-600);
}

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

._checkboxText_ca032_51 {
  font-size: 0.875rem;
  color: var(--warning-700);
  line-height: 1.5;
}

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

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

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

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

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

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

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

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

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

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

._toggle_18h8g_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-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
  white-space: nowrap;
}

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

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

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

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

._dropdown_18h8g_43 {
  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_18h8g_57 {
  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_18h8g_67 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s;
}

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

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

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

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

._check_18h8g_101 {
  margin-left: auto;
  color: var(--action-primary-bg);
  flex-shrink: 0;
}
._overlay_9g5oj_1 {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2000;
}

._modal_9g5oj_12 {
  background: var(--surface-card);
  border-radius: 1rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
  width: 24rem;
  max-width: 90vw;
  padding: 2.5rem 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
}

._logoContainer_9g5oj_26 {
  margin-bottom: 0.5rem;
}

._title_9g5oj_30 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
}

._description_9g5oj_37 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.5;
  margin: 0;
  max-width: 20rem;
}

._features_9g5oj_45 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
  text-align: left;
  margin: 0.5rem 0;
}

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

._featureCheck_9g5oj_60 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 0.125rem;
}

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

._startButton_9g5oj_74 {
  width: 100%;
  padding: 0.875rem;
  background: var(--indigo-600);
  color: white;
  border: none;
  border-radius: 9999px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
  margin-top: 0.5rem;
}

._startButton_9g5oj_74:hover {
  background: var(--indigo-700);
}

._learnMore_9g5oj_92 {
  font-size: 0.8125rem;
  color: var(--indigo-600);
  text-decoration: underline;
  cursor: pointer;
}

._footer_9g5oj_99 {
  font-size: 0.6875rem;
  color: var(--text-disabled);
  margin: 0.5rem 0 0;
  padding-top: 0.75rem;
  border-top: 1px solid var(--border-subtle);
  width: 100%;
}
/* Breadcrumb Styles */

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

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

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

._homeIcon_1gxsm_22 {
  width: 1rem;
  height: 1rem;
  color: var(--text-secondary);
  margin-right: 0.75rem;
  margin-bottom: 0.125rem;
  flex-shrink: 0;
}

._breadcrumbLink_1gxsm_31 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  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_1gxsm_31:hover {
  color: var(--text-primary);
  text-decoration: underline;
}

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

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

._breadcrumbCurrent_1gxsm_62 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  font-weight: 400;
  line-height: 1.25rem;
}
/* AddProjectModal Styles - Mapinator MVP */

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

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

._label_18yik_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_18yik_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

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

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

._errorText_18yik_56 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_18yik_63 {
  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_18yik_73 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_18yik_73:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_18yik_93 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_18yik_93:hover {
  opacity: 0.9;
}

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

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

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

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

._label_1pa9g_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1pa9g_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

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

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

._errorText_1pa9g_56 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1pa9g_63 {
  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_1pa9g_73 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_1pa9g_73:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1pa9g_93 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1pa9g_93:hover {
  opacity: 0.9;
}

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

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

._trigger_1khzv_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_1khzv_6 span {
  display: block;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background: var(--text-secondary);
}

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

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

._menu_1khzv_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_1khzv_51 {
  display: block;
  width: 100%;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s;
}

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

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

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

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

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

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

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

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

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

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

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

._clientIcon_mk2ta_55 {
  width: 2.25rem;
  height: 2.25rem;
  background: transparent;
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: none;
}

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

._clientNameRow_mk2ta_73 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-height: 2rem;
  width: 100%;
}

._clientName_mk2ta_73 {
  font-size: 1.5rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._editClientButton_mk2ta_89 {
  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_mk2ta_89:hover {
  transform: scale(1.15);
}

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

._clientProjects_mk2ta_113 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0.5rem 0 0;
  min-height: 1.25rem;
}

/* Client Status Dropdown */
._clientStatusContainer_mk2ta_122 {
  position: relative;
  margin-left: auto;
}

._clientStatus_mk2ta_122 {
  background: var(--pastel-mint);
  color: var(--success-600);
  font-size: 0.8125rem;
  line-height: 1.25rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
  height: auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid var(--success-500);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  white-space: nowrap;
}

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

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

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

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

._statusDropdown_mk2ta_161 {
  position: absolute;
  top: calc(100% + 0.25rem);
  right: 0;
  background: var(--surface-page);
  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_mk2ta_174 {
  width: 100%;
  padding: 0.75rem 1rem;
  background: var(--surface-page);
  border: none;
  font-size: 0.875rem;
  color: var(--error-500);
  text-align: left;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

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

._confirmationButton_mk2ta_197 {
  background: var(--surface-page);
  color: var(--error-500);
  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_mk2ta_211 {
  display: flex;
  gap: 0.5rem;
}

._confirmYes_mk2ta_216 {
  background: var(--pastel-mint);
  color: var(--success-600);
  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_mk2ta_216:hover {
  background: var(--success-50);
}

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

._confirmNo_mk2ta_240 {
  background: var(--slate-100);
  color: var(--text-tertiary);
  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_mk2ta_240:hover {
  background: var(--border-subtle);
}

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

/* Projects Card */
._projectsCard_mk2ta_265 {
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.75rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

._projectsHeader_mk2ta_277 {
  background: var(--slate-50);
  border-bottom: 0.0625rem solid var(--slate-100);
  padding: 1rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
}

._projectsTitle_mk2ta_287 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  color: var(--blue-600);
  line-height: 1.25rem;
}

._newProjectButton_mk2ta_297 {
  background: var(--blue-600);
  color: white;
  border: none;
  border-radius: 0.5rem;
  padding: 0.5rem 0.75rem;
  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_mk2ta_297:hover {
  opacity: 0.9;
}

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

._projectCard_mk2ta_328 {
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  transition: box-shadow 0.2s ease-in-out;
  position: relative;
}

._projectCard_mk2ta_328:hover {
  box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.08);
}

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

._projectCardActions_mk2ta_350 {
  margin-left: auto;
  flex-shrink: 0;
}

._projectCardTitle_mk2ta_355 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
}

._projectCardStatus_mk2ta_368 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

._projectCardButton_mk2ta_375 {
  background: var(--blue-600);
  color: white;
  border: none;
  border-radius: 0.5rem;
  padding: 0.5rem 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25rem;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  width: fit-content;
}

._projectCardButton_mk2ta_375:hover {
  opacity: 0.9;
}

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

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

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

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

/* Loading and Error States */
._loadingState_mk2ta_423,
._errorState_mk2ta_424 {
  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_mk2ta_423::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_mk2ta_1 20s linear infinite;
  pointer-events: none;
}

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

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

/* Card de loading */
._loadingCard_mk2ta_460 {
  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_mk2ta_471 {
  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_mk2ta_471 0.8s linear infinite;
  margin: 0 auto 1.5rem;
}

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

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

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

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

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

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

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

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

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

._emptyProjects_mk2ta_521 p {
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--blue-600);
  margin: 0;
}

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

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

._retryButton_mk2ta_559,
._logoutButton_mk2ta_560 {
  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_mk2ta_559 {
  background: var(--blue-600);
  color: white;
}

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

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

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

/* Edit Project Button */
._editProjectButton_mk2ta_589 {
  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_mk2ta_589:hover {
  transform: scale(1.15);
}

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

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

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

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

._projectCardDate_mk2ta_635 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
  margin: 0.25rem 0 0 0;
}

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

._projectCardArchived_mk2ta_642 ._projectCardTitle_mk2ta_355 {
  color: var(--text-disabled);
}

._projectCardArchived_mk2ta_642 ._projectCardStatus_mk2ta_368,
._projectCardArchived_mk2ta_642 ._projectCardDate_mk2ta_635 {
  color: var(--border-default);
}

/* The icon inherits this color through the SVG's fill="currentColor",
   matching the folder icon in the section header. */
._projectCardIcon_mk2ta_659 {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blue-600);
  flex-shrink: 0;
}

._projectCardArchived_mk2ta_642 ._projectCardIcon_mk2ta_659 {
  color: var(--text-disabled);
  box-shadow: none;
}


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

._emptyFilteredState_mk2ta_679 {
  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_mk2ta_679 p {
  font-size: 1.5rem;
  color: var(--text-disabled);
  margin: 0;
}

._projectCardButtonRestore_mk2ta_698 {
  background: var(--surface-page);
  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-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_mk2ta_698:hover {
  background: rgba(41, 135, 194, 0.06);
}

._projectCardActions_mk2ta_350 {
  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_otc9d_4 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0 0 0.5rem 0;
}

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

._mainText_otc9d_20 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-secondary);
  line-height: 1.5rem;
  margin: 0;
}

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

._warningText_otc9d_36 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--warning-700);
  line-height: 1.25rem;
  margin: 0;
}

._warningText_otc9d_36 strong {
  font-weight: 700;
}

._optionsText_otc9d_48 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

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

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

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

._optionText_otc9d_78 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

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

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

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

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

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

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

._discardButton_otc9d_126 {
  height: 2.25rem;
  padding: 0.5417rem 1.0417rem;
  background: var(--surface-card);
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--error-600);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

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

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

._saveButton_otc9d_148 {
  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-size: 0.875rem;
  font-weight: 400;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

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

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

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

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

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

  ._discardButton_otc9d_126,
  ._saveButton_otc9d_148 {
    width: 100%;
    justify-content: center;
  }
}
._previewButton_q5iq5_1._previewButton_q5iq5_1 svg {
  color: var(--text-tertiary);
}

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

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

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

._previewContent_q5iq5_20 {
  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_q5iq5_20 h1,
._previewContent_q5iq5_20 h2,
._previewContent_q5iq5_20 h3 {
  margin: 1rem 0 0.5rem;
  color: var(--slate-900);
}

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

._previewContent_q5iq5_20 p {
  margin: 0.5rem 0;
}

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

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

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

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

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

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

._pill_11poa_10 {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.125rem 0.625rem;
  border-radius: 624.9375rem;
  font-size: 0.75rem;
  font-weight: 400;
  white-space: nowrap;
  border: 0.0417rem solid;
  line-height: 1.5;
  cursor: pointer;
}

._dot_11poa_24 {
  width: 0.875rem;
  height: 0.875rem;
  min-width: 0.875rem;
  min-height: 0.875rem;
  border-radius: 50%;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

._dotX_11poa_36 {
  opacity: 1;
  display: block;
}

._pill_11poa_10:hover ._dot_11poa_24 {
  opacity: 0.8;
}

._addBtn_11poa_45 {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.5rem;
  border-radius: 624.9375rem;
  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_11poa_45:hover {
  color: var(--action-primary-bg);
  border-color: var(--action-primary-bg);
  background: rgba(239, 246, 255, 0.5);
}

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

._dropdown_11poa_66 {
  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_11poa_84 {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px 10px;
  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_11poa_84:hover:not(:disabled) {
  background: var(--surface-subtle);
}

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

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

._check_11poa_117 {
  margin-left: auto;
  color: var(--action-primary-bg);
  font-size: 0.75rem;
}

._minCategoryTooltip_11poa_123 {
  position: absolute;
  bottom: calc(100% + 0.375rem);
  left: 50%;
  transform: translateX(-50%);
  padding: 0.25rem 0.5rem;
  background: var(--slate-900);
  color: var(--text-inverse);
  font-size: 0.6875rem;
  font-weight: 500;
  border-radius: 0.25rem;
  white-space: nowrap;
  pointer-events: none;
  animation: _fadeInOut_11poa_1 2s ease-in-out forwards;
  z-index: 10;
}

._minCategoryTooltip_11poa_123::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 0.25rem solid transparent;
  border-top-color: var(--slate-900);
}

@keyframes _fadeInOut_11poa_1 {
  0% { opacity: 0; }
  10% { opacity: 1; }
  80% { opacity: 1; }
  100% { opacity: 0; }
}
._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);
    }
}
/* DocumentsTab.module.css */

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

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

._title_14opk_17 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._subtitle_14opk_25 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

/* Upload Area */
._uploadArea_14opk_33 {
  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_14opk_33:hover {
  border-color: var(--blue-600);
  background: var(--blue-100);
}

._uploadAreaDragging_14opk_51 {
  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_14opk_63 {
  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_14opk_75 {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

._uploadAreaDisabled_14opk_75:hover {
  border-color: var(--blue-200);
  background: var(--blue-50);
}

._uploadIconBox_14opk_86 {
  width: 2.25rem;
  height: 2.25rem;
  background: var(--surface-card);
  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_14opk_98 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

._uploadText_14opk_98 {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
}

._uploadSubtext_14opk_113 {
  font-size: 0.6875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._uploadButton_14opk_121 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.9375rem;
  background: var(--surface-card);
  border: 1px solid var(--blue-600);
  border-radius: 0.5rem;
  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_14opk_121:hover:not(:disabled) {
  background: var(--blue-50);
}

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

/* Loading State */
._loading_14opk_148 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 18.75rem;
}

._loading_14opk_148 p {
  font-size: 1rem;
  color: var(--text-tertiary);
}

/* Error Message */
._errorMessage_14opk_161 {
  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_14opk_161 span {
  font-size: 0.875rem;
  color: var(--error-700);
  line-height: 1.25rem;
}

/* Documents Section */
._documentsSection_14opk_178 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._documentsHeader_14opk_184 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

/* Documents List */
._documentsList_14opk_196 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._documentCard_14opk_202 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1.0417rem;
  background: var(--surface-card);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  transition: all 0.2s ease-in-out;
}

._documentCard_14opk_202:hover {
  background: var(--surface-subtle);
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.05);
}

._documentCard_14opk_202:hover ._documentActions_14opk_219 {
  opacity: 1;
}

._documentMain_14opk_223 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
  min-width: 0;
}

._documentIcon_14opk_231 {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.625rem;
  flex-shrink: 0;
}

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

._documentIconDoc_14opk_245 {
  background: var(--blue-100);
}

._documentIconXls_14opk_249 {
  background: var(--pastel-mint);
}

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

._documentIcon_14opk_231 svg {
  width: 1.25rem;
  height: 1.25rem;
}

._documentInfo_14opk_262 {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  min-width: 0;
}

._documentName_14opk_270 {
  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_14opk_281 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

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

._documentStatus_14opk_294 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
}

._documentActions_14opk_219 {
  display: flex;
  align-items: center;
  gap: 0.1rem;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}

._actionButton_14opk_309 {
  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_14opk_309:hover {
  background: var(--slate-100);
}

._actionButton_14opk_309 svg {
  width: 1rem;
  height: 1rem;
  color: var(--error-500);
  /* Red color for trash icon */
}

._actionButton_14opk_309:hover svg {
  color: var(--error-600);
  /* Darker red on hover */
}

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

._downloadButton_14opk_338 svg {
  color: var(--blue-600);
  fill: var(--blue-600);
}

._downloadButton_14opk_338:hover {
  background: color-mix(in srgb, var(--blue-50) 50%, transparent);
  color: var(--blue-600);
}

._downloadButton_14opk_338:hover svg {
  color: var(--blue-600);
  fill: var(--blue-600);
}

/* Empty State */
._emptyState_14opk_358 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  min-height: 12.5rem;
  padding: 3rem 1.5rem;
}

._emptyStateIcon_14opk_368 {
  width: 4rem;
  height: 4rem;
  color: var(--text-disabled);
}

._emptyStateText_14opk_374 {
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-secondary);
  margin: 0;
}

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

/* Responsive */
@media (max-width: 48rem) {
  ._uploadArea_14opk_33 {
    height: auto;
    padding: 2rem 1rem;
  }

  ._documentCard_14opk_202 {
    flex-direction: column;
    align-items: flex-start;
  }

  ._documentActions_14opk_219 {
    opacity: 1;
    width: 100%;
    justify-content: flex-end;
  }
}

/* Loading State */
._loadingState_14opk_407 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem 1.5rem;
  text-align: center;
}

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

/* Delete Confirmation */
._deleteConfirmation_14opk_422 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 1.25rem;
  width: 100%;
}

._confirmationText_14opk_432 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  text-align: center;
  margin: 0;
}

._confirmationActions_14opk_440 {
  display: flex;
  gap: 0.75rem;
}

._confirmYes_14opk_445,
._confirmNo_14opk_446 {
  height: 2rem;
  padding: 0 1rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: none;
}

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

._confirmYes_14opk_445:hover:not(:disabled) {
  background: var(--error-600);
}

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

._confirmNo_14opk_446 {
  background: var(--slate-200);
  color: var(--text-secondary);
}

._confirmNo_14opk_446:hover:not(:disabled) {
  background: var(--border-default);
}

._confirmNo_14opk_446:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
/* Shared Document Accordion Styles */
._accordionSection_r3n7x_2 {
  background: var(--surface-card);
  border: 0.667px solid var(--border-subtle);
  border-radius: 10px;
  overflow: visible;
}

._accordionHeader_r3n7x_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_r3n7x_9:hover {
  background: var(--surface-subtle);
}

._accordionHeaderExpanded_r3n7x_27 {
  border-radius: 10px 10px 0 0;
}

._accordionTitle_r3n7x_31 {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 16px;
  font-weight: 400;
  color: var(--text-secondary);
  line-height: 20px;
  flex: 1;
  position: relative;
  z-index: 1;
  min-width: 0;
}

._accordionTitleIcon_r3n7x_45 {
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-tertiary);
  flex-shrink: 0;
}

._accordionTitleIcon_r3n7x_45 svg {
  width: 22px;
  height: 22px;
}

._accordionInfoIcon_r3n7x_60 {
  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_r3n7x_60 svg {
  width: 20px;
  height: 20px;
}

._accordionInfoIcon_r3n7x_60 ._infoTooltip_r3n7x_79 {
  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-size: 0.875rem;
  font-weight: 400;
  color: var(--text-inverse);
  line-height: 1.5;
  white-space: normal;
}

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

._accordionInfoIcon_r3n7x_60:hover ._infoTooltip_r3n7x_79 {
  opacity: 1;
  pointer-events: auto;
}

._accordionChevron_r3n7x_111 {
  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_r3n7x_111 svg {
  width: 20px;
  height: 20px;
}

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

._accordionBadge_r3n7x_132 {
  font-size: 0.6875rem;
  font-weight: 400;
  color: var(--text-disabled);
  font-style: italic;
  margin-left: auto;
  margin-right: 8px;
}

._accordionContent_r3n7x_141 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 24px;
  animation: _slideDown_r3n7x_1 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  border-radius: 0 0 10px 10px;
  overflow: visible;
}

@keyframes _slideDown_r3n7x_1 {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

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

._accordionEmpty_r3n7x_163 {
  font-size: 0.8125rem;
  color: var(--text-disabled);
  font-style: italic;
  margin: 0;
  padding: 0.5rem 0;
}
/* AdditionalInfoAIModal styles */

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

._subtitle_19rlw_9 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

/* Tips Box */
._tipsBox_19rlw_17 {
  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_19rlw_27 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--indigo-700);
  font-weight: 600;
}

._tipsList_19rlw_36 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-left: 1.5rem;
}

._tipsList_19rlw_36 li {
  font-size: 0.75rem;
  color: var(--indigo-700);
  line-height: 1rem;
  position: relative;
}

._tipsList_19rlw_36 li::before {
  content: '•';
  position: absolute;
  left: -0.75rem;
  color: var(--indigo-700);
}

/* Form Group */
._formGroup_19rlw_61 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._label_19rlw_67 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._textarea_19rlw_74 {
  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-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

._characterCount_19rlw_103 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
  text-align: right;
}

/* Note Box */
._noteBox_19rlw_111 {
  background: var(--blue-50);
  border: 0.0625rem solid var(--action-primary-bg);
  border-radius: 0.5rem;
  padding: 0.75rem;
  font-size: 0.75rem;
  color: var(--blue-800);
  line-height: 1rem;
}

._noteBox_19rlw_111 strong {
  font-weight: 600;
}

/* Actions */
._actions_19rlw_126 {
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding-top: 0.5rem;
}

._backButton_19rlw_133 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._backButton_19rlw_133:hover:not(:disabled) {
  background: var(--surface-subtle);
  border-color: var(--border-default);
}

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

._cancelButton_19rlw_156 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  margin-left: auto;
}

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

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

._submitButton_19rlw_180 {
  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-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_19rlw_180:hover:not(:disabled) {
  opacity: 0.9;
}

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

/* Spinner Animation */
._spinner_19rlw_206 {
  animation: _spin_19rlw_206 1s linear infinite;
}

@keyframes _spin_19rlw_206 {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Document Selection Section */
._docSection_19rlw_216 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._docSectionHeader_19rlw_222 {
  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_19rlw_222:hover {
  background: var(--slate-100);
}

._docSectionTitle_19rlw_238 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
}

._docSectionChevron_19rlw_247 {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotate(0deg);
  color: var(--text-secondary);
}

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

._docBody_19rlw_257 {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

._docBodyExpanded_19rlw_263 {
  grid-template-rows: 1fr;
}

._docBodyInner_19rlw_267 {
  overflow: hidden;
}

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

._selectAll_19rlw_277 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0.5rem;
  border-bottom: 0.0625rem solid var(--border-subtle);
}

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

._tokenCount_19rlw_291 {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
  white-space: nowrap;
}

._tokenBar_19rlw_298 {
  width: 4rem;
  height: 0.375rem;
  background: var(--slate-100);
  border-radius: 0.1875rem;
  overflow: hidden;
}

._tokenBarFill_19rlw_306 {
  height: 100%;
  background: var(--indigo-500);
  border-radius: 0.1875rem;
  transition: width 0.2s ease-in-out;
}

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

._tokenPercentage_19rlw_317 {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
}

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

._checkboxLabel_19rlw_327 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  user-select: none;
}

._checkbox_19rlw_327 {
  width: 1rem;
  height: 1rem;
  accent-color: var(--action-primary-bg);
  cursor: pointer;
  flex-shrink: 0;
}

._docList_19rlw_346 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-height: 14rem;
  overflow-y: auto;
}

._documentCard_19rlw_354 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.625rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._documentCard_19rlw_354:hover:not(._documentCardDisabled_19rlw_366) {
  background: var(--surface-subtle);
  box-shadow: 0rem 0.125rem 0.25rem 0rem rgba(0, 0, 0, 0.05);
}

._documentCardDisabled_19rlw_366 {
  opacity: 0.5;
  cursor: not-allowed;
}

._documentIcon_19rlw_376 {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.625rem;
  flex-shrink: 0;
}

._documentIconPdf_19rlw_386 { background: var(--error-50); }
._documentIconDoc_19rlw_387 { background: var(--blue-100); }
._documentIconXls_19rlw_388 { background: var(--pastel-mint); }
._documentIconDefault_19rlw_389 { background: var(--slate-100); }

._documentInfo_19rlw_391 {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
  min-width: 0;
}

._documentName_19rlw_399 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._documentMeta_19rlw_409 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._documentStatus_19rlw_415 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._empty_19rlw_422 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  text-align: center;
  padding: 1rem 0;
  margin: 0;
}

/* Source sub-accordions inside doc section */
._sourceAccordionBody_19rlw_431 {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

._sourceAccordionBodyExpanded_19rlw_437 {
  grid-template-rows: 1fr;
}

._sourceAccordionBodyInner_19rlw_441 {
  overflow: hidden;
}

._tokenLimitWarning_19rlw_445 {
  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_3cv8s_1 {
  max-width: 37.5rem;
}

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

._subtitleRow_3cv8s_11 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

._subtitle_3cv8s_11 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

/* Option Cards */
._optionCard_3cv8s_26 {
  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_3cv8s_26:hover {
  transform: translateY(-0.125rem);
}

/* Purple option (unanswered) */
._optionCardPurple_3cv8s_45 {
  border-color: var(--border-subtle);
}

._optionCardPurple_3cv8s_45:hover:not(:disabled) {
  background: rgba(109, 40, 217, 0.05);
  border-color: rgba(109, 40, 217, 0.3);
}

._optionCardPurple_3cv8s_45._optionCardSelected_3cv8s_54 {
  background: rgba(109, 40, 217, 0.05);
  border-color: var(--indigo-700);
  border-width: 0.125rem;
}

._optionCardPurple_3cv8s_45:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: var(--surface-subtle);
}

._optionCardPurple_3cv8s_45:disabled ._optionIcon_3cv8s_66,
._optionCardPurple_3cv8s_45:disabled ._optionTitle_3cv8s_67,
._optionCardPurple_3cv8s_45:disabled ._optionDescription_3cv8s_68,
._optionCardPurple_3cv8s_45:disabled ._optionBadge_3cv8s_69 {
  opacity: 0.6;
}

._optionCardPurple_3cv8s_45 ._optionIcon_3cv8s_66 {
  color: var(--indigo-700);
}

._optionCardPurple_3cv8s_45 ._optionBadge_3cv8s_69 {
  background: rgba(109, 40, 217, 0.1);
  color: var(--indigo-700);
}

/* Orange option (regenerate all) */
._optionCardOrange_3cv8s_83 {
  border-color: var(--border-subtle);
}

._optionCardOrange_3cv8s_83:hover {
  background: rgba(251, 146, 60, 0.05);
  border-color: rgba(251, 146, 60, 0.3);
}

._optionCardOrange_3cv8s_83._optionCardSelected_3cv8s_54 {
  background: rgba(251, 146, 60, 0.05);
  border-color: var(--warning-500);
  border-width: 0.125rem;
}

._optionCardOrange_3cv8s_83 ._optionIcon_3cv8s_66 {
  color: var(--warning-500);
}

._optionCardOrange_3cv8s_83 ._optionBadge_3cv8s_69 {
  background: rgba(251, 146, 60, 0.1);
  color: var(--warning-500);
  flex-direction: row;
  align-items: center;
  gap: 0.375rem;
}

._optionIcon_3cv8s_66 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 0.125rem;
}

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

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

._optionDescription_3cv8s_68 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

._optionBadge_3cv8s_69 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 600;
  align-self: stretch;
}

/* Accordion */
._accordion_3cv8s_153 {
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  overflow: hidden;
}

._accordionButton_3cv8s_159 {
  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_3cv8s_159:hover {
  background: var(--slate-100);
}

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

._accordionChevron_3cv8s_181 {
  transition: transform 0.2s ease;
  color: var(--text-secondary);
}

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

._accordionContent_3cv8s_190 {
  max-height: 0;
  overflow: hidden;
  background: var(--surface-card);
  border-top: 0.0625rem solid var(--border-subtle);
  transition: max-height 0.3s ease-out, padding 0.3s ease-out;
  padding: 0 1rem;
}

._accordionContentOpen_3cv8s_199 {
  max-height: 31.25rem;
  padding: 1rem;
  transition: max-height 0.3s ease-in, padding 0.3s ease-in;
}

._questionsList_3cv8s_205 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-height: 15rem;
  overflow-y: auto;
}

._questionCheckbox_3cv8s_213 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: background 0.2s ease;
}

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

._questionCheckbox_3cv8s_213 input[type="checkbox"] {
  width: 1.125rem;
  height: 1.125rem;
  cursor: pointer;
  accent-color: var(--action-primary-bg);
}

._checkboxLabel_3cv8s_234 {
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  flex: 1;
}


/* Footer */
._footer_3cv8s_243 {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 0.5rem;
  border-top: 0.0625rem solid var(--border-subtle);
}

._backButton_3cv8s_251 {
  margin-right: auto;
  padding: 0.75rem 1.25rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s ease;
}

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

._cancelButton_3cv8s_269 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  border: 0.0625rem solid var(--border-subtle);
  background: var(--surface-card);
  color: var(--text-secondary);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

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

._nextButton_3cv8s_286 {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  border: none;
  background: var(--action-primary-bg);
  color: white;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

._nextButton_3cv8s_286:hover:not(:disabled) {
  background: var(--action-primary-bg-hover);
}

._nextButton_3cv8s_286:disabled {
  background: var(--border-default);
  cursor: not-allowed;
  opacity: 0.6;
}

._globalRegenCounter_3cv8s_308 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
  background: var(--surface-subtle);
  border: 1px solid var(--border-subtle);
  white-space: nowrap;
}

._globalRegenCounterExhausted_3cv8s_319 {
  background: var(--red-50);
  border-color: var(--red-200);
}

._globalRegenLabel_3cv8s_324 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._globalRegenBadge_3cv8s_329 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--blue-700);
  background: var(--blue-50);
  padding: 0.125rem 0.5rem;
  border-radius: 0.25rem;
}

._globalRegenExhausted_3cv8s_338 {
  color: var(--red-700);
  background: var(--red-50);
}._subtitle_19vmq_1 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0 0 1.5rem;
}

._actions_19vmq_7 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

._primaryButton_19vmq_14 {
  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-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.15s;
}

._primaryButton_19vmq_14:hover { opacity: 0.9; }

._primaryButton_19vmq_14:focus-visible {
  outline: 2px solid var(--indigo-800);
  outline-offset: 2px;
}

._secondaryButton_19vmq_37 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.875rem 1rem;
  background: var(--surface-card);
  color: var(--action-primary-bg);
  border: 1px solid var(--action-primary-bg);
  border-radius: 0.5rem;
  font-size: 0.9375rem;
  cursor: pointer;
  transition: background 0.15s;
}

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

._secondaryButton_19vmq_37:focus-visible {
  outline: 2px solid var(--action-primary-bg);
  outline-offset: 2px;
}

._cancelButton_19vmq_59 {
  display: block;
  width: 100%;
  padding: 0.5rem;
  background: transparent;
  color: var(--text-secondary);
  border: none;
  font-size: 0.875rem;
  cursor: pointer;
  text-align: center;
}

._cancelButton_19vmq_59:hover { color: var(--text-primary); }
._reviewLabel_307r6_1 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._approveButton_307r6_9 {
  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_307r6_9 svg path { stroke: var(--border-strong); transition: stroke 0.2s ease-in-out; }
._approveButton_307r6_9:hover:not(:disabled) { background: rgba(16, 185, 129, 0.08); border-color: var(--success-500); }
._approveButton_307r6_9:hover:not(:disabled) svg path { stroke: var(--success-500); }
._approveButton_307r6_9:disabled { opacity: 0.5; cursor: not-allowed; }
._approveButton_307r6_9:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 2px; }

/* Reviewed/selected state — light green bg + green icon */
._approveButtonReviewed_307r6_32 {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
  cursor: default;
}
._approveButtonReviewed_307r6_32 svg path { stroke: var(--success-500); }
._approveButtonReviewed_307r6_32:hover:not(:disabled) {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
}
._approveButtonReviewed_307r6_32:hover:not(:disabled) svg path { stroke: var(--success-500); }

._editButtonHeader_307r6_44 {
  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_307r6_44 svg path { stroke: var(--text-tertiary); transition: stroke 0.2s ease-in-out; }
._editButtonHeader_307r6_44:hover:not(:disabled) { background: rgba(239, 68, 68, 0.08); border-color: var(--error-500); }
._editButtonHeader_307r6_44:hover:not(:disabled) svg path { stroke: var(--error-500); }
._editButtonHeader_307r6_44:disabled { opacity: 0.5; cursor: not-allowed; }
._editButtonHeader_307r6_44:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 2px; }

._validatedBadge_307r6_66 {
  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-size: 0.6875rem;
  font-weight: 700;
  line-height: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  flex-shrink: 0;
}

._validatedBadge_307r6_66 svg path {
  stroke: var(--success-600);
}
._acceptButton_1am7u_1 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.25rem;
  padding: 0 1rem;
  background: var(--surface-card);
  border: 1.5px solid var(--color-stale);
  border-radius: 0.5rem;
  color: var(--color-stale-dark);
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
}

._acceptButton_1am7u_1:hover:not(:disabled) {
  background: var(--color-stale-bg-active);
}

._acceptButton_1am7u_1:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
/* AI Progress Bar - Smooth infinite sweep animation */

@keyframes _sweep_1ty42_1 {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(400%); }
}

._progressContainer_1ty42_8 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}

._progressLabel_1ty42_15 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._progressBar_1ty42_21 {
  width: 100%;
  height: 0.5rem;
  border-radius: 624.9375rem;
  overflow: hidden;
  position: relative;
  background: var(--indigo-200); /* soft purple base */
}

/* Glowing sweep element */
._progressBar_1ty42_21::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_1ty42_1 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

._progressFill_1ty42_50 {
  display: none;
}
/* ProjectQuestionnaireTab.module.css */

._questionnaireTab_1bj4w_3 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Header */
._header_1bj4w_10 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

._headerLeft_1bj4w_17 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_1bj4w_23 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

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

._progress_1bj4w_37 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._progressText_1bj4w_43 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
}

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

._aiButtonWrapper_1bj4w_55 {
  position: relative;
  display: inline-block;
}

._aiButtonWrapper_1bj4w_55 ._tooltip_1bj4w_60 {
  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-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_1bj4w_55 ._tooltip_1bj4w_60::after {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--surface-subtle);
}

._aiButtonWrapper_1bj4w_55 ._tooltip_1bj4w_60::before {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--border-subtle);
  margin-bottom: 0.0625rem;
}

._aiButtonWrapper_1bj4w_55:hover ._tooltip_1bj4w_60 {
  opacity: 1;
}

._aiButton_1bj4w_55 {
  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_1bj4w_55:hover:not(:disabled) {
  opacity: 0.9;
}

._aiButton_1bj4w_55:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
}

._aiIcon_1bj4w_129 {
  font-size: 1rem;
}

._spinner_1bj4w_133 {
  animation: _spin_1bj4w_133 1s linear infinite;
}

._spinnerIcon_1bj4w_137 {
  animation: _spin_1bj4w_133 1s linear infinite;
}

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

  to {
    transform: rotate(360deg);
  }
}

._newQuestionButton_1bj4w_151 {
  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-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._newQuestionButton_1bj4w_151:hover {
  opacity: 0.9;
}

/* Questions List */
._questionsList_1bj4w_171 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

._questionCard_1bj4w_177 {
  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_1bj4w_190 {
  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_1bj4w_201 {
  flex: 1;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
}

._headerButtons_1bj4w_210 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

._reviewLabel_1bj4w_217 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._approveButton_1bj4w_225 {
  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-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._approveButton_1bj4w_225:hover:not(:disabled) {
  background: var(--approve-bg-hover);
}

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

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

._approveButton_1bj4w_225 svg path {
  stroke: var(--success-500);
}

._editButtonHeader_1bj4w_259 {
  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-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._editButtonHeader_1bj4w_259:hover:not(:disabled) {
  background: var(--destructive-bg-hover);
}

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

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

._editButtonHeader_1bj4w_259 svg path {
  stroke: var(--error-500);
}

/* Borda amarela quando está editando */
._questionCardEditing_1bj4w_295 {
  border-color: var(--border-subtle);
}

/* Borda vermelha quando tem mudanças não salvas */
._questionCardUnsaved_1bj4w_300 {
  border-color: var(--border-subtle);
}

/* Borda verde quando foi revisada pelo usuário */
._questionCardReviewed_1bj4w_305 {
  border-color: var(--border-subtle);
}

/* Borda amarela quando não tem resposta */
._questionCardEmpty_1bj4w_310 {
  border-color: var(--border-subtle);
}

/* Borda roxa para perguntas geradas por IA (que ainda não foram revisadas) */
._questionCardAiGenerated_1bj4w_315 {
  border-color: var(--border-subtle);
}

/* Borda amarela quando o tab está stale */
._questionCardStale_1bj4w_320 {
  border-color: var(--color-stale);
  background: var(--color-stale-bg);
}

._questionNumber_1bj4w_325 {
  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-size: 0.75rem;
  color: white;
  font-weight: 600;
}

._questionContent_1bj4w_340 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
}

._questionRow_1bj4w_347 {
  display: flex;
  gap: 0.75rem;
}

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

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

._answerActions_1bj4w_366 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
  margin-top: 0.5rem;
}

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

._input_1bj4w_379 {
  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-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: none;
  transition: border-color 0.2s ease-in-out;
}

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

._inputDisabled_1bj4w_398 {
  opacity: 0.8;
  cursor: not-allowed;
}

._textareaWrapper_1bj4w_403 {
  position: relative;
  border-radius: 0.625rem;
  overflow: hidden;
  display: flex;
}

._textarea_1bj4w_403 {
  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-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_1bj4w_403:disabled {
  cursor: not-allowed;
  user-select: none;
}

._textarea_1bj4w_403[readonly] {
  cursor: default;
}

._textarea_1bj4w_403:disabled:active,
._textarea_1bj4w_403:disabled:focus {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

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

._textarea_1bj4w_403:focus {
  outline: none;
  box-shadow: none;
}

/* AI Generated Textarea */
._textareaAi_1bj4w_453 {
  background: var(--surface-subtle);
  border-color: var(--indigo-700);
}

._textareaStale_1bj4w_458 {
  background: var(--slate-50);
  border-color: var(--color-stale);
}

/* Editing textarea */
._textareaEditing_1bj4w_464 {
  border-color: var(--color-stale);
}

/* Keep same background when disabled and AI-generated */
._textareaAi_1bj4w_453:disabled {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

/* When user edits, background stays white */
._textareaAi_1bj4w_453:focus {
  background: white;
  box-shadow: none;
  outline: none;
}

/* Reviewed textarea - locked appearance */
._textareaReviewed_1bj4w_482 {
  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_1bj4w_491 {
  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-size: 0.625rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  line-height: 0.9375rem;
}

._aiBadge_1bj4w_491 svg path {
  stroke: var(--indigo-700);
}

._questionActions_1bj4w_514 {
  display: flex;
  gap: 0.5rem;
  padding-top: 0.75rem;
  border-top: 0.0417rem solid var(--border-subtle);
}

._editButton_1bj4w_259 {
  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-size: 0.875rem;
  color: var(--blue-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._editButton_1bj4w_259:hover {
  background: var(--ai-blue-bg);
}

._cancelButton_1bj4w_542 {
  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_1bj4w_542:hover:not(:disabled) {
  background: var(--error-600);
  border-color: var(--error-600);
}

._saveButton_1bj4w_563 {
  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_1bj4w_563:hover:not(:disabled) {
  background: var(--success-700);
  border-color: var(--success-700);
}

._saveButton_1bj4w_563:disabled,
._cancelButton_1bj4w_542:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._saveLabel_1bj4w_590 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

/* Submit Section */
._submitSection_1bj4w_599 {
  display: flex;
  justify-content: center;
  padding-top: 1.5rem;
}

._submitButton_1bj4w_605 {
  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-size: 1rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1bj4w_605:hover {
  opacity: 0.9;
}

/* Accordion */
._accordion_1bj4w_625 {
  background: var(--blue-50);
  border: 0.0417rem solid var(--blue-600);
  border-radius: 0.625rem;
  margin-top: 1rem;
  overflow: hidden;
}

._accordionButton_1bj4w_633 {
  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_1bj4w_633:hover {
  background: var(--ai-blue-bg);
}

._accordionHeader_1bj4w_649 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--blue-800);
  font-weight: 400;
}

._accordionChevron_1bj4w_658 {
  transition: transform 0.2s ease-in-out;
}

._accordionChevron_1bj4w_658 path {
  stroke: var(--blue-600);
}

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

._accordionContent_1bj4w_670 {
  padding: 0 1rem 1rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

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

._accordionSectionTitle_1bj4w_683 {
  font-size: 0.875rem;
  color: var(--blue-800);
  font-weight: 400;
  margin: 0;
}

._accordionList_1bj4w_690 {
  list-style: none;
  padding: 0 0 0 0.5rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._accordionList_1bj4w_690 li {
  font-size: 0.75rem;
  color: var(--blue-800);
  line-height: 1rem;
}

._accordionList_1bj4w_690 li strong {
  font-weight: 600;
}

._accordionTip_1bj4w_709 {
  background: var(--blue-100);
  padding: 0.5rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  color: var(--blue-800);
  line-height: 1rem;
}

/* Warning Box */
._warningBox_1bj4w_719 {
  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_1bj4w_719 svg {
  flex-shrink: 0;
  margin-top: 0.125rem;
}

._warningBox_1bj4w_719 svg circle,
._warningBox_1bj4w_719 svg path {
  stroke: var(--blue-600);
}

._warningBox_1bj4w_719 p {
  font-size: 0.875rem;
  color: var(--blue-800);
  line-height: 1.25rem;
  margin: 0;
}

._warningBox_1bj4w_719 strong {
  font-weight: 600;
}

/* Loading, Error and Empty States */
._loadingState_1bj4w_752,
._errorState_1bj4w_753,
._emptyState_1bj4w_754 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem;
  text-align: center;
  background: white;
  border-radius: 0.75rem;
  margin: 1.5rem 0;
}

._loadingState_1bj4w_752 p {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

._errorState_1bj4w_753 p {
  font-size: 0.875rem;
  color: var(--error-500);
  font-weight: 500;
}

._emptyState_1bj4w_754 p {
  font-size: 0.875rem;
  color: var(--blue-600);
  line-height: 1.6;
}

/* AI Generating Card */
._aiGeneratingCard_1bj4w_784 {
  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_1bj4w_795 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._aiIcon_1bj4w_129 {
  flex-shrink: 0;
  animation: _pulse_1bj4w_1 2s ease-in-out infinite;
}

@keyframes _pulse_1bj4w_1 {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0.7;
    transform: scale(1.1);
  }
}

._aiGeneratingText_1bj4w_820 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._aiGeneratingTitle_1bj4w_826 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
  line-height: 1.5rem;
}

._aiGeneratingSubtitle_1bj4w_834 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  margin: 0;
  line-height: 1.25rem;
}

._aiProgressBar_1bj4w_841 {
  width: 100%;
  height: 0.5rem;
  background: var(--ai-purple-progress);
  border-radius: 0.25rem;
  overflow: hidden;
  margin-bottom: 0.5rem;
}

._aiProgressFill_1bj4w_850 {
  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_1bj4w_857 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--indigo-900);
  text-align: right;
}

/* Responsive */
@media (max-width: 48rem) {

  /* Header */
  ._title_1bj4w_23 {
    font-size: 1rem;
  }

  ._progressText_1bj4w_43 {
    font-size: 0.75rem;
  }

  /* AI Button */
  ._aiButton_1bj4w_55 {
    height: 2rem;
    padding: 0 0.75rem;
    font-size: 0.75rem;
  }

  /* Question cards */
  ._questionNumber_1bj4w_325 {
    width: 1.5rem;
    height: 1.5rem;
    font-size: 0.6875rem;
  }

  ._questionCard_1bj4w_177 {
    padding: 0.75rem;
    padding-top: 1rem;
  }

  ._label_1bj4w_373 {
    font-size: 0.6875rem;
  }

  ._input_1bj4w_379,
  ._textarea_1bj4w_403 {
    font-size: 0.75rem;
    min-height: 6.25rem;
  }

  /* Buttons */
  ._saveButton_1bj4w_563,
  ._cancelButton_1bj4w_542,
  ._editButton_1bj4w_259 {
    height: 1.75rem;
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }

  ._editButton_1bj4w_259 {
    width: 1.75rem;
  }

  /* AI Badge */
  ._aiBadge_1bj4w_491 {
    font-size: 0.5625rem;
    padding: 0 0.3125rem;
    height: 1.125rem;
  }

  /* Accordion */
  ._accordionHeader_1bj4w_649 {
    font-size: 0.75rem;
  }

  ._accordionSectionTitle_1bj4w_683 {
    font-size: 0.75rem;
  }

  ._accordionList_1bj4w_690 li {
    font-size: 0.6875rem;
  }

  ._accordionTip_1bj4w_709 {
    font-size: 0.6875rem;
  }

  /* Warning box */
  ._warningBox_1bj4w_719 {
    padding: 0.75rem;
  }

  ._warningBox_1bj4w_719 p {
    font-size: 0.75rem;
  }

  /* Submit button */
  ._submitButton_1bj4w_605 {
    height: 2.5rem;
    padding: 0 1.25rem;
    font-size: 0.875rem;
  }

  /* AI Generating card */
  ._aiGeneratingTitle_1bj4w_826 {
    font-size: 0.875rem;
  }

  ._aiGeneratingSubtitle_1bj4w_834 {
    font-size: 0.75rem;
  }

  /* Info state */
  ._infoTitle_1bj4w_968 {
    font-size: 0.875rem;
  }

  ._infoText_1bj4w_972 {
    font-size: 0.75rem;
  }

  ._infoTextSecondary_1bj4w_976 {
    font-size: 0.6875rem;
  }
}


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

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

  100% {
    background-position: -200% 0;
  }
}/* 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_d64cm_1 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._painItem_d64cm_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_d64cm_7:hover {
  background: rgba(226, 232, 240, 0.3);
}

._painItemStale_d64cm_24 {
  border-color: var(--color-stale);
  background: var(--color-stale-bg);
}

._painItemStale_d64cm_24:hover {
  background: var(--color-stale-bg-hover);
}

._painItemEditing_d64cm_33 {
  background: rgba(251, 146, 60, 0.02);
  padding: 0.625rem 0.75rem;
  min-height: auto;
}

._painItemEditing_d64cm_33:hover {
  background: rgba(251, 146, 60, 0.08);
}

._painItemReviewed_d64cm_43:hover {
  background: rgba(16, 185, 129, 0.04);
}

._painItemAI_d64cm_47:hover {
  background: rgba(109, 40, 217, 0.04);
}

._painItemDeleting_d64cm_51 {
  opacity: 0.6;
  pointer-events: none;
  background: var(--surface-subtle) !important;
}

._deletingText_d64cm_57 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  font-style: italic;
  margin: 0;
  animation: _deletingDots_d64cm_1 1.5s infinite;
}

._savingText_d64cm_65 {
  font-size: 0.8125rem;
  color: var(--action-primary-bg);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

@keyframes _deletingDots_d64cm_1 {
  0%, 20% { content: 'Excluindo'; }
  40% { content: 'Excluindo.'; }
  60% { content: 'Excluindo..'; }
  80%, 100% { content: 'Excluindo...'; }
}

._painNumber_d64cm_81 {
  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-size: 0.625rem;
  font-weight: 600;
}

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

._painText_d64cm_100 {
  font-size: 0.8125rem;
  color: var(--text-primary);
  line-height: 1.3;
  margin: 0;
  word-wrap: break-word;
  white-space: normal;
}

._painTextarea_d64cm_109 {
  width: 100%;
  min-height: 3.125rem;
  padding: 0.375rem 0.625rem;
  border: 0.0625rem solid var(--border-default);
  border-radius: 0.25rem;
  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_d64cm_109:focus {
  border-color: var(--border-focus);
  box-shadow: 0 0 0 0.0625rem rgba(37, 99, 235, 0.1);
}

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

._painActions_d64cm_132 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-shrink: 0;
  margin-right: 3.75rem;
  min-height: 1.25rem;
}

._editButton_d64cm_141,
._deleteButton_d64cm_142,
._reviewButton_d64cm_143,
._saveButton_d64cm_144,
._cancelButton_d64cm_145 {
  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_d64cm_141:hover {
  background: rgba(37, 99, 235, 0.1);
  color: var(--action-primary-bg);
}

._reviewButton_d64cm_143 {
  color: var(--success-500);
  transition: background 0.2s ease-in-out, color 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

._reviewButton_d64cm_143:hover:not(:disabled) {
  background: rgba(16, 185, 129, 0.1);
  color: var(--success-500);
}

/* Reviewed/selected state — always visible, green */
._reviewButtonReviewed_d64cm_176 {
  color: var(--success-500) !important;
  background: rgba(16, 185, 129, 0.1) !important;
  cursor: default;
}

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

._deleteButton_d64cm_142:hover {
  background: var(--error-50);
  color: var(--error-600);
}

._hidden_d64cm_191 {
  opacity: 0;
  pointer-events: none;
}

._saveButton_d64cm_144 {
  background: transparent;
  color: var(--success-500);
}

._saveButton_d64cm_144:hover:not(:disabled) {
  background: rgba(16, 185, 129, 0.1);
  color: var(--success-600);
}

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

._saveButton_d64cm_144:disabled:hover {
  background: transparent;
  color: var(--success-500);
}

._cancelButton_d64cm_145 {
  background: transparent;
  color: var(--error-500);
}

._cancelButton_d64cm_145:hover {
  background: rgba(239, 68, 68, 0.15);
  color: var(--error-600);
}

._aiBadge_d64cm_226 {
  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-size: 0.625rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-transform: uppercase;
}

._aiBadge_d64cm_226 svg path {
  stroke: var(--indigo-700);
}

._addPainContainer_d64cm_248 {
  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_d64cm_248:hover {
  border-color: var(--border-focus);
}

._addPainContainer_d64cm_248:has(input:disabled) {
  opacity: 0.5;
  cursor: not-allowed;
}

._addPainContainer_d64cm_248:has(input:disabled):hover {
  border-color: var(--border-subtle);
}

._addPainInput_d64cm_272 {
  flex: 1;
  border: none;
  background: transparent;
  font-size: 0.8125rem;
  color: var(--text-disabled);
  outline: none;
  cursor: pointer;
}

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

._addPainButton_d64cm_286 {
  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_d64cm_286:hover {
  background: var(--action-primary-bg-hover);
}

._deleteConfirm_d64cm_304 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-shrink: 0;
}

._deleteConfirmLabel_d64cm_311 {
  font-size: 0.75rem;
  color: var(--text-secondary);
  white-space: nowrap;
}

._confirmYesButton_d64cm_317 {
  height: 1.5rem;
  padding: 0 0.5rem;
  background: var(--error-500);
  border: none;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-inverse);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

._confirmNoButton_d64cm_334 {
  height: 1.5rem;
  padding: 0 0.5rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._confirmNoButton_d64cm_334:hover {
  background: var(--surface-subtle);
}
/* WorkloadInfoTab.module.css */

._infoTab_1smsa_3 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Header */
._header_1smsa_10 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

._headerLeft_1smsa_17 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_1smsa_23 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

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

._progress_1smsa_37 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._progressText_1smsa_43 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
}

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

._aiButtonWrapper_1smsa_55 {
  position: relative;
  display: inline-block;
}

._aiButtonWrapper_1smsa_55 ._tooltip_1smsa_60 {
  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-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_1smsa_55 ._tooltip_1smsa_60::after {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--surface-subtle);
}

._aiButtonWrapper_1smsa_55 ._tooltip_1smsa_60::before {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--border-subtle);
  margin-bottom: 0.0625rem;
}

._aiButtonWrapper_1smsa_55:hover ._tooltip_1smsa_60 {
  opacity: 1;
}

._aiButton_1smsa_55 {
  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_1smsa_55:hover:not(:disabled) {
  opacity: 0.9;
}

._aiButton_1smsa_55:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
}

._aiIcon_1smsa_129 {
  font-size: 1rem;
}

._spinner_1smsa_133 {
  animation: _spin_1smsa_133 1s linear infinite;
}

._spinnerIcon_1smsa_137 {
  animation: _spin_1smsa_133 1s linear infinite;
}

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

  to {
    transform: rotate(360deg);
  }
}

/* Fields List */
._fieldsList_1smsa_152 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Field Number Circle */
._fieldNumber_1smsa_159 {
  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-size: 0.75rem;
  color: white;
  font-weight: 600;
  z-index: 1;
}

/* Field Card */
._fieldCard_1smsa_178 {
  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_1smsa_196 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
}

._fieldContent_1smsa_204 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
}

._textareaWrapper_1smsa_211 {
  position: relative;
  border-radius: 0.625rem;
  overflow: hidden;
  display: flex;
}

._textarea_1smsa_211 {
  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-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_1smsa_211:disabled {
  cursor: not-allowed;
  user-select: none;
}

._textarea_1smsa_211[readonly] {
  cursor: default;
}

._textarea_1smsa_211:disabled:active,
._textarea_1smsa_211:disabled:focus {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

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

._textarea_1smsa_211:focus {
  outline: none;
  box-shadow: none;
}

/* AI Generated Textarea */
._textareaAi_1smsa_260 {
  background: var(--surface-subtle);
  border-color: var(--indigo-700);
}

/* Stale Textarea - yellow border instead of purple when tab is stale */
._textareaStale_1smsa_266 {
  background: var(--slate-50);
  border-color: var(--color-stale);
}

/* Keep same background when disabled and AI-generated */
._textareaAi_1smsa_260:disabled {
  background: var(--surface-subtle) !important;
  outline: none !important;
}

/* When user edits, background stays white */
._textareaAi_1smsa_260:focus {
  background: white;
  box-shadow: none;
  outline: none;
}

/* Reviewed textarea - locked appearance */
._textareaReviewed_1smsa_285 {
  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_1smsa_295 {
  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-size: 0.625rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  line-height: 0.9375rem;
}

._aiBadge_1smsa_295 svg path {
  stroke: var(--indigo-700);
}

/* Field Actions */
._fieldActions_1smsa_319 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

._editButton_1smsa_326 {
  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-size: 0.875rem;
  color: var(--action-primary-bg);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

._editButton_1smsa_326:hover {
  background: var(--ai-blue-bg);
}

._saveButton_1smsa_347 {
  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_1smsa_347:hover:not(:disabled) {
  background: var(--success-600);
  border-color: var(--success-600);
}

._saveButton_1smsa_347:disabled,
._cancelButton_1smsa_369:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

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

._cancelButton_1smsa_369 {
  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_1smsa_369:hover:not(:disabled) {
  background: var(--error-600);
  border-color: var(--error-600);
}

._saveLabel_1smsa_400 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

/* AI Generating Card */
._aiGeneratingCard_1smsa_409 {
  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_1smsa_420 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._aiGeneratingText_1smsa_426 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._aiGeneratingTitle_1smsa_432 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._aiGeneratingSubtitle_1smsa_440 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
}

._aiProgressBar_1smsa_447 {
  width: 100%;
  height: 0.5rem;
  background: var(--ai-purple-bg);
  border-radius: 0.25rem;
  overflow: hidden;
}

._aiProgressFill_1smsa_455 {
  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_1smsa_462 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--indigo-700);
  text-align: center;
  line-height: 1.25rem;
}

/* Responsive */
@media (max-width: 48rem) {
  ._fieldLabel_1smsa_196 {
    font-size: 0.875rem;
  }

  ._textarea_1smsa_211 {
    font-size: 0.75rem;
  }

  ._saveButton_1smsa_347,
  ._cancelButton_1smsa_369,
  ._editButton_1smsa_326 {
    height: 1.75rem;
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }

  ._editButton_1smsa_326 {
    width: 1.75rem;
  }
}

/* Question Header - COPIED FROM QUESTIONNAIRE */
._questionHeader_1smsa_494 {
  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_1smsa_494:first-of-type {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

._questionTitle_1smsa_511 {
  flex: 1;
  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_1smsa_524 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

._fieldIcon_1smsa_524 svg {
  width: 1.25rem;
  height: 1.25rem;
}

._headerButtons_1smsa_538 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

._reviewLabel_1smsa_545 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._editButtonHeader_1smsa_553 {
  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-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._editButtonHeader_1smsa_553:hover:not(:disabled) {
  background: var(--destructive-bg-hover);
}

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

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

._editButtonHeader_1smsa_553 svg path {
  stroke: var(--error-500);
}

._reviewLabel_1smsa_545 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}

._approveButton_1smsa_596 {
  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-size: 0.8125rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._approveButton_1smsa_596:hover:not(:disabled) {
  background: var(--approve-bg-hover);
}

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

._approveButton_1smsa_596 svg path {
  stroke: var(--success-500);
}

._validatedBadge_1smsa_625 {
  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-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03rem;
  flex-shrink: 0;
}


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

@keyframes _shimmer_1smsa_1 {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
._card_1697u_1 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.875rem;
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  border-radius: 0.75rem;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s;
}

._card_1697u_1:hover {
  border-color: var(--blue-200, #bfdbfe);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

/* Loading state */
._cardLoading_1697u_23 {
  pointer-events: none;
  cursor: default;
}

._loadingOverlay_1697u_28 {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5;
}

._spinner_1697u_39 {
  width: 1.25rem;
  height: 1.25rem;
  border: 0.15rem solid var(--border-default);
  border-top-color: var(--blue-600);
  border-radius: 50%;
  animation: _spin_1697u_39 0.6s linear infinite;
}

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

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

._avatar_1697u_59 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--indigo-600);
  color: white;
  font-size: 0.75rem;
  font-weight: 600;
  flex-shrink: 0;
}

._info_1697u_73 {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
}

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

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

._badge_1697u_92 {
  padding: 0.125rem 0.375rem;
  background: var(--success-50);
  border: 0.0417rem solid var(--success-500);
  border-radius: 0.25rem;
  font-size: 0.5625rem;
  font-weight: 600;
  color: var(--success-700);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

._role_1697u_104 {
  font-size: 0.6875rem;
  color: var(--text-tertiary);
}

._contact_1697u_109 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
  opacity: 0;
  transition: opacity 0.15s;
}

._card_1697u_1:hover ._contact_1697u_109 {
  opacity: 1;
}

._contactIcon_1697u_122 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  background: var(--slate-100);
  border-radius: 50%;
  cursor: pointer;
  transition: background 0.15s;
}

._contactIcon_1697u_122:hover {
  background: var(--slate-200);
}

._contactIconWrapper_1697u_138 {
  position: relative;
  display: flex;
  align-items: center;
}

._copiedTooltip_1697u_144 {
  position: absolute;
  bottom: calc(100% + 0.375rem);
  left: 50%;
  transform: translateX(-50%);
  padding: 0.25rem 0.5rem;
  background: var(--slate-900);
  color: var(--text-inverse);
  font-size: 0.6875rem;
  font-weight: 500;
  border-radius: 0.25rem;
  white-space: nowrap;
  pointer-events: none;
  animation: _fadeInOut_1697u_1 2s ease-in-out;
  z-index: 10;
}

._copiedTooltip_1697u_144::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 0.25rem solid transparent;
  border-top-color: var(--slate-900);
}

@keyframes _fadeInOut_1697u_1 {
  0% { opacity: 0; transform: translateX(-50%) translateY(0.25rem); }
  10% { opacity: 1; transform: translateX(-50%) translateY(0); }
  80% { opacity: 1; transform: translateX(-50%) translateY(0); }
  100% { opacity: 0; transform: translateX(-50%) translateY(0); }
}

/* 3-dot menu */
._menuWrapper_1697u_179 {
  position: relative;
  opacity: 0;
  transition: opacity 0.15s;
}

._card_1697u_1:hover ._menuWrapper_1697u_179 {
  opacity: 1;
}

._menuTrigger_1697u_189 {
  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;
  transition: opacity 0.15s;
}

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

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

._menuTrigger_1697u_189:focus-visible {
  outline: 0.125rem solid var(--blue-600);
  outline-offset: 0.125rem;
  opacity: 1;
}

._menu_1697u_179 {
  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_1697u_236 {
  display: block;
  width: 100%;
  padding: 0.625rem 1rem;
  background: transparent;
  border: none;
  text-align: left;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.15s;
}

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

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

._menuItemDanger_1697u_253:hover {
  background: var(--error-50);
}
/* EditProjectModal Styles - Mapinator MVP */

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

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

._label_1mhi0_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_1mhi0_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

select._input_1mhi0_22 {
  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_1mhi0_22:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

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

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

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

._errorText_1mhi0_65 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_1mhi0_72 {
  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_1mhi0_82 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_1mhi0_82:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_1mhi0_102 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_1mhi0_102:hover {
  opacity: 0.9;
}

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

._optional_1mhi0_124 {
  font-weight: 400;
  color: var(--text-disabled);
}

._checkboxLabel_1mhi0_129 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  cursor: pointer;
}

._checkboxLabel_1mhi0_129:has(input:disabled) {
  cursor: not-allowed;
}

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

._checkbox_1mhi0_129 {
  width: 1rem;
  height: 1rem;
  accent-color: var(--action-primary-bg);
  cursor: pointer;
}

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

._checkboxHint_1mhi0_160 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  font-style: italic;
  padding-left: 1.5rem;
}
/* StatusTab.module.css */

._statusTab_1jz6o_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_1jz6o_13 {
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  box-shadow: var(--shadow-card);
  flex-shrink: 0;
}

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

._entityLeft_1jz6o_28 {
  display: flex;
  flex-direction: column;
}

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

._entityName_1jz6o_40 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--slate-900);
  margin: 0;
}

._statusBadge_1jz6o_47 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.75rem;
  background: var(--success-50);
  border-radius: 0.75rem;
  font-size: 0.8125rem;
  color: var(--success-700);
  font-weight: 500;
}

._statusDot_1jz6o_59 {
  width: 0.375rem;
  height: 0.375rem;
  background: var(--success-500);
  border-radius: 50%;
}

._entityMeta_1jz6o_66 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
}

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

._metaValue_1jz6o_77 {
  color: var(--blue-600);
  font-weight: 500;
}

._metaItem_1jz6o_82 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._metaSeparator_1jz6o_88 {
  color: var(--border-default);
}

/* Tasks Overview Card */
._tasksOverviewCard_1jz6o_93 {
  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_1jz6o_102 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}

._overviewTitle_1jz6o_109 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--warning-700);
  margin: 0;
}

._overviewStats_1jz6o_116 {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
}

._statsCount_1jz6o_122 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--warning-700);
}

._statsLabel_1jz6o_128 {
  font-size: 0.875rem;
  color: var(--warning-600);
}

._overviewSubtitle_1jz6o_133 {
  font-size: 0.875rem;
  color: var(--warning-600);
  margin: 0 0 0.75rem 0;
}

/* Progress Bar */
._progressBar_1jz6o_140 {
  width: 100%;
  height: 0.5rem;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 0.25rem;
  overflow: hidden;
  margin-bottom: 0.75rem;
}

._progressFill_1jz6o_149 {
  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_1jz6o_157 {
  display: flex;
  gap: 2rem;
}

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

._breakdownDot_1jz6o_168 {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
}

._breakdownLabel_1jz6o_174 {
  font-size: 0.875rem;
  color: var(--warning-700);
}

._breakdownValue_1jz6o_179 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--warning-700);
}

._bottomSection_1jz6o_185 {
  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_1jz6o_196 {
  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: 5rem;
}

/* Card Styles - FILLS AVAILABLE HEIGHT WITH INTERNAL SCROLL */
._card_1jz6o_206 {
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.75rem;
  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: 14rem;
}

/* Tasks card - blue border */
._card_1jz6o_206:first-child {
  border: 0.0625rem solid var(--blue-100);
}

/* Notes card - beige/orange border */
._card_1jz6o_206:last-child {
  border: 0.0625rem solid var(--pastel-peach);
}

._cardHeaderWithProgress_1jz6o_229 {
  padding: 0.875rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  border-bottom: 0.0417rem solid var(--border-separator);
  flex-shrink: 0;
  min-height: 4rem;
  height: 4rem;
}

/* Tasks card header - blue background */
._card_1jz6o_206:first-child ._cardHeaderWithProgress_1jz6o_229 {
  background: var(--surface-page);
}

/* Notes card header - beige background */
._card_1jz6o_206:last-child ._cardHeaderNoProgress_1jz6o_246 {
  background: var(--surface-page);
}

._cardHeaderNoProgress_1jz6o_246 {
  padding: 0.625rem 1rem;
  border-bottom: 0.0417rem solid var(--border-separator);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  min-height: 4rem;
  height: 4rem;
}

._cardTitleRow_1jz6o_261 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  flex-shrink: 0;
}

._cardHeader_1jz6o_229 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.25rem;
}

._cardTitle_1jz6o_261 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 1rem;
  font-weight: 600;
  color: var(--slate-900);
}

._completionText_1jz6o_285 {
  font-size: 0.6875rem;
  color: var(--text-tertiary);
  margin-top: 0.125rem;
}

._completionBadge_1jz6o_291 {
  padding: 0.25rem 0.75rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--blue-600);
  border-radius: 0.75rem;
  font-size: 0.75rem;
  color: var(--blue-600);
  font-weight: 500;
  margin-left: auto;
}

/* Small Progress Bar in Card Header */
._progressBarSmall_1jz6o_303 {
  width: 100%;
  height: 0.375rem;
  background: var(--border-default);
  border-radius: 0.1875rem;
  overflow: hidden;
  margin-top: 0.25rem;
}

._progressFillSmall_1jz6o_312 {
  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_1jz6o_320 {
  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_1jz6o_320::-webkit-scrollbar {
  width: 0.25rem;
}

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

._tasksList_1jz6o_320::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._tasksList_1jz6o_320::-webkit-scrollbar-thumb:hover {
  background: var(--text-disabled);
}

/* Hide scroll buttons */
._tasksList_1jz6o_320::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

._taskItem_1jz6o_356 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._taskItem_1jz6o_356:hover {
  border-color: var(--border-default);
  box-shadow: var(--shadow-xs);
}

._taskCheckbox_1jz6o_373 {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}

._taskCheckbox_1jz6o_373 input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

._checkmark_1jz6o_386 {
  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: var(--surface-page);
  transition: all 0.2s ease-in-out;
}

._taskCheckbox_1jz6o_373 input[type="checkbox"]:checked ~ ._checkmark_1jz6o_386 {
  background: var(--success-500);
  border-color: var(--success-500);
}

._taskText_1jz6o_403 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  flex: 1;
}

._taskTextCompleted_1jz6o_410 {
  font-size: 0.875rem;
  color: var(--text-disabled);
  line-height: 1.25rem;
  text-decoration: line-through;
  flex: 1;
}

/* Add Button */
._addButton_1jz6o_419 {
  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-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  flex-shrink: 0;
}

._addButton_1jz6o_419:hover {
  opacity: 0.9;
}

/* Add Note Form */
._addNoteForm_1jz6o_440 {
  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_1jz6o_451 {
  width: 100%;
  min-height: 5rem;
  padding: 0.625rem 0.75rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

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

._formActions_1jz6o_470 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

._saveButton_1jz6o_476 {
  padding: 0.5rem 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._saveButton_1jz6o_476:hover {
  opacity: 0.9;
}

._cancelButton_1jz6o_491 {
  padding: 0.5rem 1rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

/* Notes List */
._notesList_1jz6o_507 {
  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_1jz6o_507::-webkit-scrollbar {
  width: 0.25rem;
}

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

._notesList_1jz6o_507::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._notesList_1jz6o_507::-webkit-scrollbar-thumb:hover {
  background: var(--text-disabled);
}

/* Hide scroll buttons */
._notesList_1jz6o_507::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

._noteItem_1jz6o_543 {
  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_1jz6o_556 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

._noteText_1jz6o_563 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
  flex: 1;
}

._noteActions_1jz6o_571 {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}

._noteItem_1jz6o_543:hover ._noteActions_1jz6o_571 {
  opacity: 1;
}

._noteActionButton_1jz6o_583 {
  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_1jz6o_583:hover {
  background: var(--slate-100);
  color: var(--blue-600);
}

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

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

._noteDeleteButton_1jz6o_607:hover {
  background: var(--error-50);
  color: var(--error-600);
}

._noteEditInput_1jz6o_616 {
  width: 100%;
  min-height: 5rem;
  padding: 0.625rem 0.75rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

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

._noteEditActions_1jz6o_635 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

._noteSaveButton_1jz6o_641 {
  padding: 0.5rem 1rem;
  background: var(--blue-600);
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._noteSaveButton_1jz6o_641:hover {
  opacity: 0.9;
}

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

._noteCancelButton_1jz6o_661 {
  padding: 0.5rem 1rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

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

._noteMeta_1jz6o_681 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._noteAuthor_1jz6o_689 {
  font-weight: 500;
}

._noteSeparator_1jz6o_693 {
  color: var(--border-default);
}

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

/* Empty State */
._emptyState_1jz6o_702 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  text-align: center;
  flex: 1;
}

._emptyState_1jz6o_702 p {
  font-size: 0.875rem;
  color: var(--text-disabled);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  /* Container */
  ._statusTab_1jz6o_3 {
    gap: 0.5rem;
  }

  /* Header adjustments */
  ._entityHeader_1jz6o_33 {
    height: 2.5rem;
    padding: 0 1rem;
  }
  
  ._entityLabel_1jz6o_730 {
    font-size: 0.75rem;
  }
  
  ._entityIcon_1jz6o_734 {
    font-size: 1rem;
  }
  
  /* Project info card */
  ._entityInfoCard_1jz6o_13 {
    padding: 0.75rem;
  }

  ._entityName_1jz6o_40 {
    font-size: 1rem;
  }
  
  ._statusBadge_1jz6o_47 {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.625rem;
  }
  
  ._entityMeta_1jz6o_66 {
    font-size: 0.75rem;
  }
  
  /* Tasks overview card */
  ._tasksOverviewCard_1jz6o_93 {
    padding: 0.75rem;
  }

  ._overviewTitle_1jz6o_109 {
    font-size: 1rem;
  }
  
  ._statsCount_1jz6o_122 {
    font-size: 1.25rem;
  }
  
  ._statsLabel_1jz6o_128 {
    font-size: 0.75rem;
  }
  
  ._overviewSubtitle_1jz6o_133 {
    font-size: 0.75rem;
  }
  
  ._breakdownLabel_1jz6o_174 {
    font-size: 0.75rem;
  }
  
  ._breakdownValue_1jz6o_179 {
    font-size: 1rem;
  }
  
  /* Bottom grid */
  ._bottomGrid_1jz6o_196 {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  
  ._taskBreakdown_1jz6o_157 {
    flex-direction: column;
    gap: 0.75rem;
  }

  /* Cards */
  ._card_1jz6o_206 {
    min-height: 15.625rem;
  }

  ._cardHeader_1jz6o_229 {
    padding: 0.75rem;
    gap: 0.5rem;
  }
  
  /* Card headers - maintain same height on mobile */
  ._cardHeaderWithProgress_1jz6o_229,
  ._cardHeaderNoProgress_1jz6o_246 {
    min-height: 5rem;
    height: 5rem;
    padding: 0.625rem 0.75rem;
  }
  
  /* Card titles */
  ._cardTitle_1jz6o_261 {
    font-size: 0.875rem;
  }
  
  ._completionText_1jz6o_285 {
    font-size: 0.75rem;
  }
  
  ._completionBadge_1jz6o_291 {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.625rem;
  }
  
  /* Add button */
  ._addButton_1jz6o_419 {
    height: 1.75rem;
    padding: 0 0.625rem;
    font-size: 0.75rem;
  }
  
  /* Info cards */
  ._infoCards_1jz6o_836 {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  ._infoCard_1jz6o_836 {
    padding: 0.625rem 0.75rem;
  }
  
  ._infoLabel_1jz6o_845 {
    font-size: 0.6875rem;
  }
  
  ._infoValue_1jz6o_849 {
    font-size: 0.875rem;
  }
  
  ._infoIcon_1jz6o_853 {
    width: 2rem;
    height: 2rem;
  }

  /* Lists */
  ._activitiesList_1jz6o_859,
  ._notesList_1jz6o_507 {
    padding: 0.75rem;
    gap: 0.5rem;
  }
  
  /* Activity items */
  ._activityContent_1jz6o_866 {
    padding: 0.625rem 0.75rem;
  }

  ._activityTitle_1jz6o_870 {
    font-size: 0.75rem;
  }
  
  ._activityStatus_1jz6o_874 {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.5rem;
  }
  
  ._activityMeta_1jz6o_879 {
    font-size: 0.6875rem;
  }
  
  /* Task items */
  ._taskText_1jz6o_403,
  ._taskTextCompleted_1jz6o_410 {
    font-size: 0.75rem;
  }
  
  /* Note items */
  ._noteCard_1jz6o_890 {
    padding: 0.625rem 0.75rem;
  }

  ._noteText_1jz6o_563 {
    font-size: 0.75rem;
  }
  
  ._noteMeta_1jz6o_681 {
    font-size: 0.6875rem;
  }
}

/* Delete Confirmation */
._deleteConfirmation_1jz6o_904 {
  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_1jz6o_914 {
  font-size: 0.875rem;
  color: var(--error-700);
  margin: 0;
  font-weight: 500;
}

._confirmationActions_1jz6o_921 {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

._confirmYes_1jz6o_927 {
  padding: 0.5rem 1rem;
  background: var(--error-500);
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
  font-weight: 500;
}

._confirmYes_1jz6o_927:hover {
  opacity: 0.9;
}

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

._confirmNo_1jz6o_948 {
  padding: 0.5rem 1rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

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

/* Bottom Info Cards - AT BOTTOM OF TAB (NOT FIXED) */
._infoCards_1jz6o_836 {
  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_1jz6o_836 {
    grid-template-columns: 1fr; /* Stack vertically on smaller screens */
  }
}

@media (max-width: 48rem) {
  ._infoCards_1jz6o_836 {
    gap: 0.5rem;
    margin-top: 0.5rem;
  }
}

._infoCard_1jz6o_836 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--border-subtle);
  border-radius: 0.75rem;
  box-shadow: var(--shadow-card);
}

._infoIcon_1jz6o_853 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  flex-shrink: 0;
}

._infoContent_1jz6o_1012 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._infoLabel_1jz6o_845 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

._infoValue_1jz6o_849 {
  font-size: 1rem;
  font-weight: 600;
  color: var(--slate-900);
}


/* Activities List (Timeline) */
._activitiesList_1jz6o_859 {
  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_1jz6o_859::-webkit-scrollbar {
  width: 0.25rem;
}

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

._activitiesList_1jz6o_859::-webkit-scrollbar-thumb {
  background: var(--border-default);
  border-radius: 0.125rem;
}

._activitiesList_1jz6o_859::-webkit-scrollbar-thumb:hover {
  background: var(--text-disabled);
}

/* Hide scroll buttons */
._activitiesList_1jz6o_859::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

._activityItem_1jz6o_1067 {
  display: flex;
  gap: 0.75rem;
  position: relative;
  flex-shrink: 0;
}

._activityIndicator_1jz6o_1074 {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  padding-top: 0.5rem;
}

._activityDot_1jz6o_1082 {
  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_1jz6o_1091 {
  width: 0.125rem;
  flex: 1;
  background: var(--slate-200);
  margin: 0.25rem 0;
  min-height: 1.25rem;
}

._activityContent_1jz6o_866 {
  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_1jz6o_1108 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

._activityTitle_1jz6o_870 {
  font-size: 0.875rem;
  font-weight: 600;
  margin: 0;
  flex: 1;
  line-height: 1.4;
}

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

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

._activityMeta_1jz6o_879 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
}

._activityAssignee_1jz6o_1145,
._activityDate_1jz6o_1146 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

._activitySeparator_1jz6o_1152 {
  color: var(--border-default);
}

/* Stakeholders */
._divider_1jz6o_1157 {
  border: none;
  border-top: 1px solid var(--border-subtle);
  margin: 0.75rem 0 0;
}

._stakeholdersList_1jz6o_1163 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

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

._collapseBtn_1jz6o_1175 {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  color: var(--text-tertiary);
  transition: background 0.15s, color 0.15s;
}

._collapseBtn_1jz6o_1175:hover {
  background: var(--slate-100);
  color: var(--text-secondary);
}

._collapseIcon_1jz6o_1195 {
  font-size: 1.25rem;
  transition: transform 0.2s ease;
}

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

._stakeholderSectionTitle_1jz6o_1204 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

._stakeholderCards_1jz6o_1212 {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

/* Collapsible animation */
._stakeholderCardsCollapsible_1jz6o_1219 {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease, opacity 0.25s ease;
  opacity: 1;
}

._stakeholderCardsCollapsible_1jz6o_1219 > * {
  overflow: visible;
}

._stakeholderCardsHidden_1jz6o_1230 > * {
  overflow: hidden;
}

._stakeholderCardsHidden_1jz6o_1230 {
  grid-template-rows: 0fr;
  opacity: 0;
}

._stakeholderCards_1jz6o_1212 > * {
  width: calc(33.333% - 0.5rem);
  min-width: calc(33.333% - 0.5rem);
  max-width: calc(33.333% - 0.5rem);
  box-sizing: border-box;
}

._stakeholderBadge_1jz6o_1246 {
  padding: 0.125rem 0.375rem;
  background: var(--success-50);
  border: 0.0417rem solid var(--success-500);
  border-radius: 0.25rem;
  font-size: 0.625rem;
  font-weight: 600;
  color: var(--success-700);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

._addStakeholderBtn_1jz6o_1258 {
  background: none;
  border: none;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--blue-600);
  cursor: pointer;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
}

._addStakeholderBtn_1jz6o_1258:hover {
  background: var(--blue-50, rgba(41, 135, 194, 0.08));
}

/* Stakeholder Info Tooltip */
._stakeholderInfoButton_1jz6o_1274 {
  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;
}

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

._stakeholderInfoButton_1jz6o_1274 svg {
  width: 0.875rem;
  height: 0.875rem;
}

._stakeholderInfoButton_1jz6o_1274::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-size: 0.8125rem;
  line-height: 1.125rem;
  border-radius: 0.5rem;
  max-width: 18rem;
  white-space: normal;
  text-wrap: balance;
  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);
}

._stakeholderInfoButton_1jz6o_1274::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;
}

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

/* Language selector */
._entityRight_1jz6o_1346 {
  display: flex;
  align-items: stretch;
  gap: 0.5rem;
}
._regionBlock_1jz6o_1351 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
._languageBlock_1jz6o_1357 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
._regionBlockLabel_1jz6o_1363 {
  font-size: 0.6875rem;
  font-weight: 500;
  color: var(--text-tertiary);
}
._languageCompact_1jz6o_1368 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  background: var(--surface-page);
  height: 100%;
  box-sizing: border-box;
}
._languageSelectCompact_1jz6o_1379 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--slate-900);
  border: none;
  background: transparent;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: auto;
}

._languageSelector_1jz6o_1391 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
}

._languageIcon_1jz6o_1398 {
  font-size: 16px;
  color: #2987C2;
}

._languageLabel_1jz6o_1403 {
  font-size: 13px;
  color: #62748E;
  font-weight: 500;
}

._languageSelect_1jz6o_1379 {
  font-size: 13px;
  padding: 4px 8px;
  border-radius: 6px;
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
}


/* View History Link */
._viewHistoryLink_1jz6o_1419 {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--action-primary-bg);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}
._viewHistoryLink_1jz6o_1419:hover {
  text-decoration: underline;
}

/* Stakeholder Detail Modal */
._stakeholderDetailModal_1jz6o_1432 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

._stakeholderDetailHeader_1jz6o_1438 {
  display: flex;
  align-items: center;
  gap: 1rem;
}

._stakeholderDetailAvatar_1jz6o_1444 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  background: var(--indigo-600);
  color: var(--text-inverse);
  font-size: 1.25rem;
  font-weight: 700;
  flex-shrink: 0;
}

._stakeholderDetailHeaderInfo_1jz6o_1458 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._stakeholderDetailName_1jz6o_1464 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--slate-900);
}

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

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

._stakeholderDetailFields_1jz6o_1481 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border-subtle);
}

._stakeholderDetailField_1jz6o_1481 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._stakeholderDetailFieldLabel_1jz6o_1495 {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

._stakeholderDetailFieldValue_1jz6o_1503 {
  font-size: 0.875rem;
  color: var(--text-primary);
}
._container_1sdkr_1 {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
}

._cloudIcon_1sdkr_11 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  color: #94a3b8;
  flex-shrink: 0;
}

._cloudIcon_1sdkr_11 svg {
  width: 18px;
  height: 18px;
}

._chip_1sdkr_26 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 0;
  height: auto;
  border: none;
  border-radius: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.2;
  color: #334155;
  background: transparent;
  box-shadow: none;
  white-space: nowrap;
  transition: opacity 0.2s ease;
}

._chip_1sdkr_26 + ._chip_1sdkr_26::before {
  content: '·';
  margin-right: 6px;
  color: #94a3b8;
  font-size: 16px;
}

._chipRemove_1sdkr_51 {
  background: none;
  border: none;
  cursor: pointer;
  color: #94a3b8;
  font-size: 14px;
  padding: 0 2px;
  line-height: 1;
}

._chipRemove_1sdkr_51:hover {
  color: #ef4444;
}

._addButton_1sdkr_65 {
  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-size: 14px;
  font-weight: 500;
  line-height: 20px;
  cursor: pointer;
  white-space: nowrap;
}

._addButton_1sdkr_65:hover {
  background: #ecfeff;
}

._addButtonIcon_1sdkr_86 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}

._addButtonIcon_1sdkr_86 svg {
  width: 16px;
  height: 16px;
}

._editButton_1sdkr_99 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  background: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  padding: 0;
  margin-left: 4px;
  transition: background 0.15s ease;
}

._editButton_1sdkr_99 svg {
  width: 14px;
  height: 14px;
}

._editButton_1sdkr_99:hover {
  background: #ecfeff;
}

._modalOverlay_1sdkr_123 {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  animation: _fadeIn_1sdkr_1 0.2s ease;
}

._modal_1sdkr_123 {
  background: var(--surface-card);
  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);
  animation: _slideUp_1sdkr_1 0.2s ease;
}

@keyframes _fadeIn_1sdkr_1 {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes _slideUp_1sdkr_1 {
  from { opacity: 0; transform: translateY(8px) scale(0.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

._modalHeader_1sdkr_156 {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 24px;
  border-bottom: 0.667px solid #e2e8f0;
  flex-shrink: 0;
}

._modalIconWrapper_1sdkr_165 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #ecfeff;
  border-radius: 8px;
  flex-shrink: 0;
}

._modalIconWrapper_1sdkr_165 svg {
  width: 20px;
  height: 20px;
  color: #06b6d4;
}

._modalHeader_1sdkr_156 h3 {
  flex: 1;
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  color: #1e293b;
}

._modalClose_1sdkr_191 {
  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_1sdkr_191:hover {
  background: var(--slate-100);
}

._modalClose_1sdkr_191 svg {
  width: 20px;
  height: 20px;
}

._modalList_1sdkr_214 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 8px 24px 16px;
  overflow-y: auto;
  flex: 1;
}

._regionItem_1sdkr_223 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  height: 41px;
  border: 0.667px solid #e2e8f0;
  border-radius: 8px;
  background: var(--surface-card);
  cursor: pointer;
  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, transform 0.15s ease, box-shadow 0.15s ease;
}

._regionItem_1sdkr_223:hover:not(:disabled) {
  border-color: var(--cyan-500);
  background: var(--cyan-50);
}

._regionItem_1sdkr_223:active:not(:disabled) {
  transform: scale(0.98);
}

._regionItemSelected_1sdkr_251 {
  background: var(--cyan-50);
  border-color: var(--cyan-500);
  cursor: default;
}

._regionItemSelected_1sdkr_251:hover {
  background: var(--cyan-50);
  border-color: var(--cyan-500);
}

._primaryBadge_1sdkr_262 {
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  color: #06b6d4;
  margin-left: auto;
  animation: _badgeFadeIn_1sdkr_1 0.2s ease;
}

._secondaryBadge_1sdkr_271 {
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  color: #94a3b8;
  margin-left: auto;
  animation: _badgeFadeIn_1sdkr_1 0.2s ease;
}

@keyframes _badgeFadeIn_1sdkr_1 {
  from { opacity: 0; transform: translateX(-4px); }
  to { opacity: 1; transform: translateX(0); }
}

._modalWarning_1sdkr_285 {
  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-size: 12px;
  font-weight: 400;
  line-height: 20px;
  color: #92400e;
  flex-shrink: 0;
}

._warningIcon_1sdkr_301 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

._warningIcon_1sdkr_301 svg {
  width: 16px;
  height: 16px;
}

._modalFooter_1sdkr_315 {
  display: flex;
  justify-content: flex-end;
  padding: 16px 24px;
  border-top: 0.667px solid #e2e8f0;
  flex-shrink: 0;
}

._cancelButton_1sdkr_323 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  height: 36px;
  background: none;
  border: none;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: #475569;
  cursor: pointer;
}

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

._removeBadge_1sdkr_343 {
  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_1sdkr_343:hover {
  color: #dc2626;
}

._selectedSection_1sdkr_360 {
  padding-bottom: 4px;
  margin-bottom: 4px;
  border-bottom: 1px solid #e2e8f0;
}
/* WorkloadCard.module.css */
._workloadCard_1oejw_2 {
  background: var(--surface-card);
  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_1oejw_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_1oejw_17 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._headerRow_1oejw_23 {
  display: flex;
  align-items: center;
  gap: 1rem;
}

._iconContainer_1oejw_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_1oejw_40 {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

._workloadInfo_1oejw_46 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}

._header_1oejw_23 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 2rem;
  flex: 1;
}

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

._workloadName_1oejw_69 {
  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_1oejw_82 {
  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_1oejw_2:hover ._editButton_1oejw_82 {
  opacity: 1;
}

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

._deleteButton_1oejw_107 {
  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_1oejw_2:hover ._deleteButton_1oejw_107 {
  opacity: 1;
}

._deleteButton_1oejw_107:hover:not(:disabled) {
  background: var(--error-50);
  color: var(--error-600);
}

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

._statusBadge_1oejw_137 {
  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_1oejw_137 span {
  font-size: 0.75rem;
  color: var(--success-600);
  line-height: 1rem;
}

._statusInProgress_1oejw_155 {
  background: var(--pastel-yellow);
  border-color: var(--warning-500);
}

._statusInProgress_1oejw_155 span {
  color: var(--warning-700);
}

._statusPending_1oejw_164 {
  background: var(--blue-100);
  border-color: var(--blue-200);
}

._statusPending_1oejw_164 span {
  color: var(--indigo-700);
}

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

._description_1oejw_178 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
}

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

._metadataItem_1oejw_192 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._metadataLabel_1oejw_198 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._metadataBadge_1oejw_204 {
  display: inline-flex;
  align-items: center;
  height: 1.3333rem;
  padding: 0.1667rem 0.5417rem;
  border: 0.0417rem solid;
  border-radius: 624.9375rem;
  font-size: 0.75rem;
  line-height: 1rem;
}

/* Priority badges */
._priorityHigh_1oejw_216 {
  background: var(--error-50);
  border-color: var(--error-500);
  color: var(--error-600);
}

._priorityMedium_1oejw_222 {
  background: var(--pastel-yellow);
  border-color: var(--warning-500);
  color: var(--warning-700);
}

._priorityLow_1oejw_228 {
  background: var(--pastel-mint);
  border-color: var(--success-500);
  color: var(--success-600);
}

/* Complexity badges */
._complexityHigh_1oejw_235 {
  background: var(--indigo-100);
  border-color: var(--indigo-200);
  color: var(--indigo-700);
}

._complexityMedium_1oejw_241 {
  background: var(--blue-100);
  border-color: var(--blue-200);
  color: var(--indigo-700);
}

._complexityLow_1oejw_247 {
  background: var(--pastel-mint);
  border-color: var(--success-500);
  color: var(--success-600);
}

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

._separator_1oejw_259 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

._timestampLabel_1oejw_265 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._timestamp_1oejw_265 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

._updatedDate_1oejw_277 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

/* Stale pill */
._stalePill_1oejw_284 {
  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_1oejw_300 {
  font-size: 0.7rem;
}
/* AddWorkloadModal Styles - Mapinator MVP */

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

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

._label_60n8f_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_60n8f_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

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

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

._errorText_60n8f_56 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._actions_60n8f_63 {
  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_60n8f_73 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_60n8f_73:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_60n8f_93 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_60n8f_93:hover {
  opacity: 0.9;
}

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

._textarea_60n8f_115 {
  width: 100%;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.5rem;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

._select_60n8f_141 {
  width: 100%;
  height: 2.75rem;
  padding: 0 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  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_60n8f_141:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

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

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

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

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

._label_19mo5_15 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
  line-height: 1.25rem;
}

._input_19mo5_22 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

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

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

._errorText_19mo5_56 {
  font-size: 0.75rem;
  color: var(--error-500);
  line-height: 1rem;
  margin-top: -0.25rem;
}

._hintText_19mo5_63 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  line-height: 1rem;
}

._optional_19mo5_69 {
  font-weight: 400;
  color: var(--text-disabled);
}

._textarea_19mo5_74 {
  width: 100%;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.5;
  resize: vertical;
  transition: border-color 0.2s ease-in-out;
}

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

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

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

._select_19mo5_100 {
  width: 100%;
  height: 2.75rem;
  padding: 0 1rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  cursor: pointer;
  transition: border-color 0.2s ease-in-out;
  appearance: auto;
}

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

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

._actions_19mo5_123 {
  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_19mo5_133 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_19mo5_133:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._submitButton_19mo5_153 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._submitButton_19mo5_153:hover {
  opacity: 0.9;
}

._submitButton_19mo5_153:active {
  transform: translateY(0.0625rem);
}
/* GenerateAIWorkloadWarningModal Styles - Mapinator MVP */

/* Custom modal styling for purple title */
._warningModal_5emtc_4 .modalTitle {
  color: var(--indigo-700) !important;
}

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

/* Warning Box */
._warningBox_5emtc_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_5emtc_25 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

._warningIcon_5emtc_31 {
  flex-shrink: 0;
}

._warningText_5emtc_35 {
  font-size: 0.875rem;
  color: var(--warning-700);
  line-height: 1.25rem;
}

._warningText_5emtc_35 strong {
  font-weight: 600;
  color: var(--warning-700);
}

/* Question */
._question_5emtc_47 {
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.5rem;
  text-align: center;
}

/* Subtitle */
._subtitle_5emtc_56 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  text-align: center;
}

/* Actions */
._actions_5emtc_64 {
  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_5emtc_74 {
  height: 2.5rem;
  padding: 0 2rem;
  background: var(--surface-card);
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  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_5emtc_74:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._yesButton_5emtc_94 {
  height: 2.5rem;
  padding: 0 2rem;
  background: var(--action-ai-bg);
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  line-height: 1.25rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._yesButton_5emtc_94:hover {
  opacity: 0.9;
}

._yesButton_5emtc_94:active {
  transform: translateY(0.0625rem);
}
/* WorkloadsTab.module.css */
._workloadsTab_ldakw_2 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  height: 100%;
}

._header_ldakw_9 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

._headerLeft_ldakw_16 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._title_ldakw_22 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.5rem;
  margin: 0;
}

._subtitle_ldakw_30 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

._count_ldakw_36 {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
}

._checkIcon_ldakw_42 {
  flex-shrink: 0;
}

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

._aiButtonWrapper_ldakw_52 {
  position: relative;
  display: inline-block;
}

._tooltip_ldakw_57 {
  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-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_ldakw_57::after {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--surface-subtle);
}

._tooltip_ldakw_57::before {
  content: '';
  position: absolute;
  bottom: 100%;
  right: 1rem;
  border: 0.375rem solid transparent;
  border-bottom-color: var(--border-subtle);
  margin-bottom: 0.0625rem;
}

._aiButtonWrapper_ldakw_52:hover ._tooltip_ldakw_57 {
  opacity: 1;
}

._newButton_ldakw_99,
._aiButton_ldakw_52 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 1rem;
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._newButton_ldakw_99 {
  background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
}

._newButton_ldakw_99:hover {
  opacity: 0.9;
}

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

._aiButton_ldakw_52 {
  background: var(--indigo-700);
}

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

._aiButton_ldakw_52:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
}

._aiIcon_ldakw_142 {
  font-size: 1rem;
}

._workloadsList_ldakw_146 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._loadingState_ldakw_152,
._errorState_ldakw_153,
._emptyState_ldakw_154 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4rem 1.5rem;
  background: var(--surface-card);
  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_ldakw_154 {
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
}

._loadingState_ldakw_152 p,
._errorState_ldakw_153 p,
._emptyState_ldakw_154 p {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  line-height: 1.25rem;
  margin: 0;
  text-align: center;
}

._errorState_ldakw_153 p {
  color: var(--error-600);
}

/* Delete Confirmation */
._deleteConfirmation_ldakw_186 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  background: var(--surface-card);
  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_ldakw_197 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  line-height: 1.25rem;
  margin: 0;
  text-align: center;
}

._confirmationActions_ldakw_205 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}

._confirmYes_ldakw_212,
._confirmNo_ldakw_213 {
  height: 2.25rem;
  padding: 0 1.5rem;
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

._confirmYes_ldakw_212 {
  background: var(--error-600);
  color: white;
}

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

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

._confirmNo_ldakw_213 {
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  color: var(--text-secondary);
}

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

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

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

  ._title_ldakw_22 {
    font-size: 1rem;
  }

  ._subtitle_ldakw_30 {
    font-size: 0.75rem;
  }

  ._addButton_ldakw_269 {
    height: 2rem;
    padding: 0 0.75rem;
    font-size: 0.75rem;
    width: 100%;
  }

  ._workloadsGrid_ldakw_276 {
    grid-template-columns: 1fr;
  }
}
/* ExecutiveSummaryTab.module.css */

._executiveSummaryTab_yryy2_3 {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Header Banner */
._headerBanner_yryy2_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_yryy2_17 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._headerText_yryy2_23 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._headerTitle_yryy2_29 {
    font-size: 1.25rem;
    font-weight: 700;
    color: white;
    margin: 0;
    line-height: 1.5rem;
}

._headerSubtitle_yryy2_37 {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
    line-height: 1.25rem;
}

._headerIcon_yryy2_44 {
    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_yryy2_56 {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 12.5rem;
}

/* Empty State */
._emptyState_yryy2_64 {
    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_yryy2_76 {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-disabled);
}

._emptyTitle_yryy2_85 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._emptyDescription_yryy2_92 {
    font-size: 0.875rem;
    color: var(--text-tertiary);
    margin: 0;
    max-width: 28rem;
    line-height: 1.5;
}

._generateButton_yryy2_100 {
    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-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
    margin-top: 0.5rem;
}

._generateButton_yryy2_100:hover {
    opacity: 0.9;
}

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

._aiIcon_yryy2_127 {
    font-size: 1rem;
}

._errorText_yryy2_131 {
    font-size: 0.75rem;
    color: var(--error-500);
    margin: 0;
}

._readinessWarning_yryy2_137 {
    font-size: 0.8125rem;
    color: var(--color-stale);
    margin: 0;
    text-align: center;
    max-width: 480px;
    line-height: 1.4;
}

/* Sections List */
._sectionsList_yryy2_147 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Section Card (Accordion) */
._sectionCard_yryy2_154 {
    background: var(--surface-card);
    border: 0.125rem solid var(--border-subtle);
    border-radius: 0.625rem;
    transition: border-color 0.2s ease-in-out;
}

._sectionCardExpanded_yryy2_161 {
    border-color: var(--blue-600);
}

._sectionButton_yryy2_165 {
    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_yryy2_165:hover {
    background: var(--surface-subtle);
}

._sectionRight_yryy2_181 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

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

._sectionIconBox_yryy2_194 {
    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_yryy2_206 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    text-align: left;
}

._sectionTitle_yryy2_213 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.25rem;
}

._sectionSubtitle_yryy2_221 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1rem;
}

._chevron_yryy2_228 {
    flex-shrink: 0;
    transition: transform 0.2s ease-in-out;
}

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

/* Section Content */
._sectionContent_yryy2_238 {
    padding: 0 1.25rem 1.25rem 1.25rem;
    border-top: 1px solid var(--border-subtle);
}

._accordionCollapsible_yryy2_243 {
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Content Grid */
._contentGrid_yryy2_249 {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding-top: 1rem;
}

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

._contentLabel_yryy2_262 {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0375rem;
    margin: 0;
}

._contentText_yryy2_271 {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
    margin: 0;
}

._contentTextHighlight_yryy2_278 {
    font-size: 0.875rem;
    color: var(--blue-600);
    font-weight: 500;
    line-height: 1.5;
    margin: 0;
}

/* Metrics Row */
._metricsRow_yryy2_287 {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

._metricCard_yryy2_293 {
    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_yryy2_306 {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

._metricLabel_yryy2_312 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
}

/* Risks List */
._risksList_yryy2_318 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

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

._riskBadge_yryy2_330 {
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
    letter-spacing: 0.025rem;
}

._riskAlta_yryy2_339 {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-500);
}

._riskMedia_yryy2_344 {
    background: rgba(245, 158, 11, 0.1);
    color: var(--color-stale);
}

._riskBaixa_yryy2_349 {
    background: rgba(16, 185, 129, 0.1);
    color: var(--success-500);
}

._riskText_yryy2_354 {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Strategies List */
._strategiesList_yryy2_360 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

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

._strategyName_yryy2_372 {
    font-size: 0.875rem;
    color: var(--text-secondary);
    min-width: 5.5rem;
    font-weight: 500;
}

._strategyBar_yryy2_379 {
    flex: 1;
    height: 0.5rem;
    background: var(--slate-200);
    border-radius: 9999px;
    overflow: hidden;
}

._strategyFill_yryy2_387 {
    height: 100%;
    background: linear-gradient(to right, var(--blue-600), var(--blue-700));
    border-radius: 9999px;
    transition: width 0.3s ease-in-out;
}

._strategyPercent_yryy2_394 {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--blue-600);
    min-width: 2.5rem;
    text-align: right;
}

/* Bullet & Numbered Lists */
._bulletList_yryy2_403,
._numberedList_yryy2_404 {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.75;
    margin: 0;
    padding-left: 1.25rem;
}

._bulletList_yryy2_403 li,
._numberedList_yryy2_404 li {
    margin-bottom: 0.25rem;
}

/* Download Container */
._sectionsListStale_yryy2_418 {
    border: 1.5px solid var(--color-stale);
    border-radius: 0.5rem;
    background: var(--color-stale-bg);
}

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

._regenerateButton_yryy2_431 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 2.5rem;
    padding: 0 1.5rem;
    background: var(--surface-card);
    border: 1.5px solid var(--blue-600);
    border-radius: 0.5rem;
    color: var(--blue-600);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

._regenerateButton_yryy2_431:hover {
    background: rgba(41, 135, 194, 0.05);
}

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

._downloadButton_yryy2_457 {
    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-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
}

._downloadButton_yryy2_457:hover {
    opacity: 0.9;
}

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


/* ===== Opportunity Section (Por Que Estamos Aqui) ===== */

._opportunityColumns_yryy2_486 {
    display: flex;
    gap: 1rem;
}

/* Green card - A Oportunidade */
._opportunityCard_yryy2_492 {
    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_yryy2_500 {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--success-700);
    margin: 0 0 0.75rem 0;
    line-height: 1.75rem;
}

._opportunityCardContent_yryy2_508 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._opportunityLabel_yryy2_514 {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0 0 0.25rem 0;
    line-height: 1.25rem;
}

._opportunityText_yryy2_522 {
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.3;
    margin: 0;
    text-align: justify;
}

._opportunityBulletList_yryy2_530 {
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.625;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: justify;
}

._opportunityBulletList_yryy2_530 li::before {
    content: '• ';
}

/* Red card - Custo da Inação */
._inactionCard_yryy2_545 {
    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_yryy2_553 {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--error-600);
    margin: 0 0 0.75rem 0;
    line-height: 1.75rem;
}

._inactionCardContent_yryy2_561 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._inactionLabel_yryy2_567 {
    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_yryy2_578 {
    display: flex;
    gap: 0.75rem;
}

._findingsMetricCard_yryy2_583 {
    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_yryy2_594 {
    background: var(--blue-50);
    border-color: var(--blue-200);
}

._findingsMetricPurple_yryy2_599 {
    background: var(--indigo-50);
    border-color: var(--indigo-200);
}

._findingsMetricCyan_yryy2_604 {
    background: var(--cyan-50);
    border-color: var(--cyan-200);
}

._findingsMetricIndigo_yryy2_609 {
    background: var(--indigo-50);
    border-color: var(--indigo-200);
}

._findingsMetricHeader_yryy2_614 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: var(--slate-600);
    font-size: 0.75rem;
    line-height: 1rem;
}

._findingsMetricValue_yryy2_624 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2rem;
    text-align: center;
}

/* Two-column layout */
._findingsColumns_yryy2_632 {
    display: flex;
    gap: 1rem;
}

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

._findingsSectionTitle_yryy2_644 {
    font-size: 1rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0;
    line-height: 1.5rem;
}

/* Criticidade bars */
._criticidadeList_yryy2_653 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

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

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

._criticidadeLabel_yryy2_671 {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--slate-700);
}

._criticidadeValue_yryy2_677 {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--slate-900);
}

._criticidadeBarBg_yryy2_683 {
    width: 100%;
    height: 1rem;
    background: var(--slate-200);
    border-radius: 9999px;
    overflow: hidden;
}

._criticidadeBarFill_yryy2_691 {
    height: 100%;
    border-radius: 9999px;
    transition: width 0.3s ease-in-out;
}

/* Risks list */
._findingsRisksList_yryy2_698 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

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

._findingsRiskBadge_yryy2_710 {
    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_yryy2_720 {
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.25;
}


/* ===== Approach Section (Abordagem Recomendada) ===== */

._approachColumns_yryy2_729 {
    display: flex;
    gap: 1rem;
}

._approachChartColumn_yryy2_734 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

._pieChartContainer_yryy2_742 {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    overflow: visible;
}

._pieLegend_yryy2_750 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem 1.5rem;
    justify-content: center;
}

._pieLegendItem_yryy2_757 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

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

._pieLegendText_yryy2_770 {
    font-size: 0.8125rem;
    color: var(--slate-700);
}

/* Right cards column */
._approachCardsColumn_yryy2_776 {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Blue card */
._approachCardBlue_yryy2_784 {
    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_yryy2_792 {
    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_yryy2_800 {
    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_yryy2_807 {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0 0 0.5rem 0;
    line-height: 1.25rem;
}

._approachCardText_yryy2_815 {
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.625;
    margin: 0;
}

._approachStrategyList_yryy2_822 {
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.625;
    margin: 0;
    padding: 0;
    list-style: none;
}

._approachStrategyList_yryy2_822 li::before {
    content: '• ';
}

._approachStrategyBold_yryy2_835 {
    font-weight: 700;
}


/* ===== Investment Section (Investimento e TCO) ===== */

/* Modalidade de Contratação Header */
._tcoModalidadeHeader_yryy2_843 {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

._tcoModalidadeText_yryy2_850 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._tcoModalidadeTitle_yryy2_856 {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--gray-dark);
    margin: 0;
    line-height: 1.25rem;
}

._tcoModalidadeDesc_yryy2_864 {
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--gray-text);
    margin: 0;
    line-height: 1.125rem;
}

/* Info Banner */
._tcoInfoBanner_yryy2_873 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.75rem;
    background: var(--blue-100);
    border-radius: 0.5rem;
}

._tcoInfoBannerIcon_yryy2_882 {
    color: var(--blue-900);
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

._tcoInfoBannerText_yryy2_889 {
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--blue-900);
    line-height: 1.125rem;
}

/* Summary Cards */
._tcoSummaryCards_yryy2_897 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

._tcoSummaryCardNeutral_yryy2_903 {
    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_yryy2_912 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--gray-text);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._tcoSummaryCardValue_yryy2_921 {
    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_yryy2_930 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--gray-text);
    line-height: 1rem;
    margin-top: 0.125rem;
}

._tcoSummaryCardIndigo_yryy2_938 {
    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_yryy2_947 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--blue-800);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._tcoSummaryCardValueIndigo_yryy2_956 {
    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_yryy2_965 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--indigo-800);
    line-height: 1rem;
    margin-top: 0.125rem;
}

._tcoSummaryCardGreen_yryy2_973 {
    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_yryy2_982 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--green-700);
}

._tcoSummaryCardLabelGreen_yryy2_989 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--green-700);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._tcoSummaryCardValueGreen_yryy2_998 {
    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_yryy2_1007 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--green-800);
    line-height: 1rem;
    margin-top: 0.125rem;
}

/* TCO Table */
._investmentTitle_yryy2_1016 {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--gray-dark);
    margin: 0;
    line-height: 1.25rem;
}

._tcoTableWrapper_yryy2_1024 {
    width: 100%;
    overflow: hidden;
    border-radius: 0.5rem;
    border: 0.667px solid var(--gray-table-border);
}

._tcoTable_yryy2_1024 {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.75rem;
}

._tcoHeaderRow_yryy2_1037 {
    background: var(--gray-dark);
}

._tcoHeaderCell_yryy2_1041 {
    padding: 0.5rem 0.75rem;
    color: white;
    font-weight: 500;
    font-size: 0.75rem;
    line-height: 1rem;
    white-space: nowrap;
}

._tcoBodyRow_yryy2_1050 {
    background: var(--surface-card);
    border-top: 0.667px solid var(--gray-table-border);
}

._tcoBodyRowAlt_yryy2_1055 {
    background: var(--gray-table-bg);
    border-top: 0.667px solid var(--gray-table-border);
}

._tcoBodyCell_yryy2_1060 {
    padding: 0.5rem 0.75rem;
    color: var(--gray-dark);
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: left;
}

._tcoBodyCellRight_yryy2_1068 {
    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_yryy2_1077 {
    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_yryy2_1087 {
    background: var(--gray-dark);
}

._tcoTotalCell_yryy2_1091 {
    padding: 0.625rem 0.75rem;
    color: white;
    font-weight: 600;
    font-size: 0.75rem;
    line-height: 1rem;
    text-align: left;
}

._tcoTotalCellRight_yryy2_1100 {
    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_yryy2_1110 {
    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_yryy2_1123 {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-top: 0.5rem;
}

/* Em Resumo — blue left-border card */
._conclusionResumoCard_yryy2_1131 {
    background: var(--surface-card);
    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_yryy2_1141 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--blue-600);
    margin: 0;
    line-height: 1.25rem;
}

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

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

._conclusionResumoBullet_yryy2_1161 {
    font-size: 0.75rem;
    color: var(--blue-600);
    line-height: 1.25rem;
    flex-shrink: 0;
}

._conclusionResumoText_yryy2_1168 {
    font-size: 0.75rem;
    color: var(--slate-700);
    line-height: 1.25rem;
    margin: 0;
}

/* O Pedido */
._conclusionPedidoSection_yryy2_1176 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._conclusionPedidoLabel_yryy2_1182 {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    margin: 0;
    line-height: 1.25rem;
}

._conclusionPedidoCard_yryy2_1190 {
    background: var(--surface-card);
    border: 2px solid var(--blue-600);
    border-radius: 0.625rem;
    padding: 1.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

._conclusionPedidoText_yryy2_1200 {
    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_yryy2_1210 {
    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_yryy2_1220 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--warning-700);
    margin: 0;
    line-height: 1.25rem;
}

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

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

._conclusionPassosNumber_yryy2_1240 {
    width: 1.25rem;
    height: 1.25rem;
    background: var(--warning-600);
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 700;
    color: white;
    flex-shrink: 0;
    line-height: 0.833rem;
}

._conclusionPassosText_yryy2_1255 {
    font-size: 0.75rem;
    color: var(--slate-900);
    margin: 0;
    line-height: 1rem;
}

/* Contact footer */
._conclusionContactCard_yryy2_1263 {
    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_yryy2_1273 {
    font-size: 0.75rem;
    margin: 0;
    line-height: 1rem;
    text-align: center;
}

._conclusionContactBlue_yryy2_1280 {
    font-weight: 500;
    color: var(--blue-600);
}

._conclusionContactSep_yryy2_1285 {
    color: var(--slate-600);
}

._conclusionContactDark_yryy2_1289 {
    color: var(--slate-900);
}

/* Clean text rendering (markdown cleanup) */
._cleanTextList_yryy2_1294 {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

._cleanTextItem_yryy2_1303 {
    font-size: 0.8125rem;
    color: var(--slate-700);
    line-height: 1.25rem;
    padding-left: 12px;
    position: relative;
}

._cleanTextItem_yryy2_1303::before {
    content: '•';
    position: absolute;
    left: 0;
    color: var(--text-disabled);
}


/* ===== Regenerate Modal ===== */

._modalOverlay_yryy2_1321 {
    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_yryy2_1 0.15s ease-out;
}

@keyframes _fadeIn_yryy2_1 {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes _slideUp_yryy2_1 {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

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

._modalContent_yryy2_1358 {
    background: var(--surface-card);
    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_yryy2_1 0.2s ease-out;
}

._modalHeader_yryy2_1368 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

._modalHeaderLeft_yryy2_1375 {
    display: flex;
    align-items: center;
    gap: 12px;
}

._modalIconBadge_yryy2_1381 {
    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_yryy2_1392 {
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._modalClose_yryy2_1399 {
    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_yryy2_1399:hover {
    color: var(--text-secondary);
    background: var(--slate-100);
}

._modalDescription_yryy2_1417 {
    font-size: 0.875rem;
    color: var(--text-tertiary);
    line-height: 1.5;
    margin: 0 0 16px 0;
}

._modalTextarea_yryy2_1424 {
    width: 100%;
    min-height: 120px;
    padding: 12px 14px;
    border: 1.5px solid var(--slate-200);
    border-radius: 10px;
    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_yryy2_1424::placeholder {
    color: var(--text-disabled);
}

._modalTextarea_yryy2_1424:focus {
    outline: none;
    border-color: var(--blue-600);
    background: var(--surface-card);
    box-shadow: 0 0 0 3px rgba(41, 135, 194, 0.1);
}

._modalWarning_yryy2_1450 {
    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_yryy2_1461 {
    flex-shrink: 0;
    margin-top: 1px;
}

._modalWarning_yryy2_1450 span:last-child {
    font-size: 0.8125rem;
    color: var(--blue-800);
    line-height: 1.45;
}

._modalActions_yryy2_1472 {
    display: flex;
    justify-content: flex-end;
    gap: 0.625rem;
    margin-top: 20px;
}

._modalCancelButton_yryy2_1479 {
    height: 2.375rem;
    padding: 0 1.125rem;
    background: var(--surface-card);
    border: 1.5px solid var(--slate-200);
    border-radius: 8px;
    color: var(--text-secondary);
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

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

._modalConfirmButton_yryy2_1496 {
    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-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_yryy2_1496:hover {
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
    transform: translateY(-1px);
}

._modalConfirmButton_yryy2_1496:disabled {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}


/* ===== Generation Loading State ===== */

._generatingCentered_yryy2_1529 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem;
    text-align: center;
    max-width: 32rem;
    margin: 0 auto;
}

._generatingTitle_yryy2_1540 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 2rem;
    margin: 0;
}

._generatingDescription_yryy2_1548 {
    font-size: 1rem;
    color: var(--text-tertiary);
    line-height: 1.5rem;
    margin: 0;
    max-width: 28rem;
}

._generatingInfoBox_yryy2_1556 {
    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_yryy2_1568 {
    flex-shrink: 0;
    margin-top: 1px;
}

._generatingInfoText_yryy2_1573 {
    font-size: 0.75rem;
    color: var(--blue-800);
    line-height: 1.25rem;
    margin: 0;
    text-align: left;
}

/* Steps */
._loadingSteps_yryy2_1582 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

._loadingStep_yryy2_1582 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: opacity 0.4s ease-in-out;
}

._loadingStepDot_yryy2_1596 {
    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_yryy2_1596::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_yryy2_1619 {
    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_yryy2_1 1.4s ease-in-out infinite;
}

._loadingStepDotActive_yryy2_1619::after {
    width: 0.625rem;
    height: 0.625rem;
}

@keyframes _pulse_yryy2_1 {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.4;
        transform: scale(0.7);
    }
}

._loadingStepLabel_yryy2_1646 {
    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_yryy2_1653 {
    color: var(--indigo-900);
    font-weight: 700;
    font-size: 1rem;
}

._loadingDots_yryy2_1659 {
    display: inline-flex;
    gap: 0.2rem;
    margin-left: 0.25rem;
}

._loadingDots_yryy2_1659 span {
    width: 0.25rem;
    height: 0.25rem;
    background: var(--indigo-700);
    border-radius: 50%;
    animation: _dotBounce_yryy2_1 1.2s ease-in-out infinite;
}

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

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

@keyframes _dotBounce_yryy2_1 {

    0%,
    80%,
    100% {
        opacity: 0.3;
    }

    40% {
        opacity: 1;
    }
}


/* ===== Section Edit Controls ===== */

._sectionActions_yryy2_1697 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
}

._editButton_yryy2_1704 {
    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_yryy2_1704:hover {
    background: rgba(41, 135, 194, 0.08);
}

._headerReviewLabel_yryy2_1721 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-secondary);
    white-space: nowrap;
    flex-shrink: 0;
}

._headerReviewButton_yryy2_1729 {
    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(--slate-400);
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

._headerReviewButton_yryy2_1729 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

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

._headerReviewButtonSave_yryy2_1754 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
    color: var(--success-500);
}

._headerReviewButtonSave_yryy2_1754 svg path {
    stroke: var(--success-500);
}

._headerReviewButtonSave_yryy2_1754:hover:not(:disabled) {
    background: rgba(16, 185, 129, 0.2);
    border-color: var(--success-600);
}

._headerReviewButtonSave_yryy2_1754:hover:not(:disabled) svg path {
    stroke: var(--success-600);
}

._headerReviewButtonRejected_yryy2_1773 {
    background: rgba(239, 68, 68, 0.1);
    border-color: var(--error-500);
    color: var(--error-500);
}

._headerReviewButtonRejected_yryy2_1773 svg path {
    stroke: var(--error-500);
}

._headerReviewButtonRejected_yryy2_1773:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.18);
    border-color: var(--error-600);
}

._headerReviewButtonRejected_yryy2_1773:hover:not(:disabled) svg path {
    stroke: var(--error-600);
}

._savingDots_yryy2_1792 {
    color: white;
    font-weight: bold;
}

/* ===== Array Item Editing ===== */

._arrayItemRow_yryy2_1799 {
    display: flex;
    align-items: flex-start;
    gap: 0.375rem;
}

._arrayItemRow_yryy2_1799 textarea {
    flex: 1;
}

._removeItemButton_yryy2_1809 {
    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_yryy2_1809:hover {
    color: var(--error-500);
}

._addItemButton_yryy2_1827 {
    background: none;
    border: none;
    color: var(--blue-600);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0.25rem 0;
    transition: opacity 0.15s ease;
}

._addItemButton_yryy2_1827:hover {
    opacity: 0.7;
}

/* ===== Edit Textareas ===== */

._editTextarea_yryy2_1844 {
    width: 100%;
    padding: 0.5rem 0.625rem;
    border: 1.5px solid var(--slate-200);
    border-radius: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.5;
    resize: none;
    overflow: hidden;
    box-sizing: border-box;
    background: var(--surface-card);
    transition: border-color 0.2s ease;
}

._editTextarea_yryy2_1844:focus {
    outline: none;
    border-color: var(--blue-600);
    box-shadow: 0 0 0 2px rgba(41, 135, 194, 0.1);
}

._editTextareaSmall_yryy2_1865 {
    width: 100%;
    padding: 0.375rem 0.5rem;
    border: 1.5px solid var(--slate-200);
    border-radius: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.4;
    resize: none;
    overflow: hidden;
    box-sizing: border-box;
    background: var(--surface-card);
    transition: border-color 0.2s ease;
}

._editTextareaSmall_yryy2_1865:focus {
    outline: none;
    border-color: var(--blue-600);
    box-shadow: 0 0 0 2px rgba(41, 135, 194, 0.1);
}


/* ===== Character Counter ===== */

._countedTextareaWrapper_yryy2_1889 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    width: 100%;
}

._charCounter_yryy2_1896 {
    font-size: 0.625rem;
    color: var(--text-disabled);
    text-align: right;
    line-height: 1;
}


/* ===== Non-Editable Notice ===== */

._nonEditableNotice_yryy2_1906 {
    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_yryy2_1906 svg {
    flex-shrink: 0;
    margin-top: 0;
}

._nonEditableNoticeText_yryy2_1922 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

._nonEditableNoticeTitle_yryy2_1928 {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--slate-900);
    line-height: 1.25rem;
}

._nonEditableNoticeDescription_yryy2_1935 {
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--slate-900);
    line-height: 1.22rem;
}


/* ===== MAP Card (new design) ===== */

._mapCard_yryy2_1945 {
    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_yryy2_1952 {
    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_yryy2_1961 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

._mapCardIcon_yryy2_1967 {
    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_yryy2_1978 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

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

._mapCardHeaderTitle_yryy2_1984 {
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    line-height: 1.3125rem;
}

._mapCardHeaderBadge_yryy2_1997 {
    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_yryy2_2008 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: white;
    opacity: 0.8;
    line-height: 1rem;
}

._mapCardHeaderRight_yryy2_2016 {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0;
}

._mapCardArrLabel_yryy2_2023 {
    font-size: 0.625rem;
    font-weight: 400;
    color: white;
    opacity: 0.8;
    letter-spacing: 0.031rem;
    text-transform: uppercase;
    line-height: 0.9375rem;
}

._mapCardArrValue_yryy2_2033 {
    font-size: 0.9375rem;
    font-weight: 600;
    color: white;
    line-height: 1.375rem;
    font-variant-numeric: tabular-nums;
}

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

/* MAP Metrics Grid */
._mapMetricsGrid_yryy2_2049 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

._mapMetricCardNavy_yryy2_2055 {
    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_yryy2_2064 {
    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_yryy2_2073 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--navy-text);
}

._mapMetricCardLabel_yryy2_2080 {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--navy-text);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._mapMetricCardLabelGreen_yryy2_2089 {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--green-accent);
    line-height: 1rem;
    letter-spacing: 0.034rem;
    text-transform: uppercase;
}

._mapMetricCardValue_yryy2_2098 {
    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_yryy2_2107 {
    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_yryy2_2116 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--navy-text);
    line-height: 1rem;
    margin-top: 0.125rem;
}

._mapMetricCardSubGreen_yryy2_2124 {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--green-accent);
    line-height: 1rem;
    margin-top: 0.125rem;
}

/* MAP Breakdown Grid */
._mapBreakdownGrid_yryy2_2133 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    overflow: visible;
}

._mapBreakdownTableCard_yryy2_2140 {
    border: 0.667px solid var(--navy-border);
    border-radius: 0.5rem;
    overflow: visible;
}

._mapBreakdownTableHeader_yryy2_2146 {
    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_yryy2_2155 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--navy-text);
}

._mapBreakdownTableTitle_yryy2_2162 {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--navy-text);
    line-height: 1.125rem;
}

._mapBreakdownTableSubtitle_yryy2_2169 {
    font-size: 0.625rem;
    font-weight: 400;
    color: var(--navy-text);
    letter-spacing: 0.031rem;
    line-height: 0.9375rem;
}

._mapBreakdownTable_yryy2_2140 {
    width: 100%;
    border-collapse: collapse;
}

._mapBreakdownTableRow_yryy2_2182 {
    border-top: 0.667px solid var(--navy-row-border);
}

._mapBreakdownTableRowAlt_yryy2_2186 {
    border-top: 0.667px solid var(--navy-row-border);
    background: var(--surface-card);
}

._mapBreakdownTableRowTotal_yryy2_2191 {
    border-top: 0.667px solid var(--navy-border);
    background: var(--navy-surface);
}

._mapBreakdownTableCellLink_yryy2_2196 {
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-text);
    text-decoration: underline;
    line-height: 1rem;
}

._mapBreakdownTableCellValue_yryy2_2205 {
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--navy-text);
    text-align: right;
    font-variant-numeric: tabular-nums;
    line-height: 1rem;
}

._mapBreakdownTableCellMuted_yryy2_2215 {
    color: var(--navy-muted);
}

._mapBreakdownTableCellTotal_yryy2_2219 {
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--navy-text);
    line-height: 1rem;
}

._mapBreakdownTableCellTotalValue_yryy2_2227 {
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--navy-text);
    text-align: right;
    font-variant-numeric: tabular-nums;
    line-height: 1rem;
}

._mapBreakdownValueWithIcon_yryy2_2237 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

._mapBreakdownCashIcon_yryy2_2243 {
    width: 13px;
    height: 16px;
    flex-shrink: 0;
    position: relative;
    top: -1.4px;
}

._mapBreakdownCashIcon_yryy2_2243 path {
    fill: var(--navy-text);
}

/* MAP Footer Note */
._mapFooterNote_yryy2_2256 {
    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_yryy2_2266 {
    color: var(--navy-text);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

._mapFooterNoteText_yryy2_2272 {
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-600);
    line-height: 1.125rem;
    margin: 0;
}

._mapFooterNoteHighlight_yryy2_2280 {
    font-weight: 700;
    color: var(--green-accent);
}

/* Formula Tooltip — Navy card design */
._formulaTooltipWrapper_yryy2_2286 {
    position: relative;
    cursor: help;
    border-bottom: 1px dotted var(--navy-border);
}

._formulaTooltip_yryy2_2286 {
    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_yryy2_2286::after {
    content: '';
    position: absolute;
    top: 100%;
    right: 16px;
    border-width: 6px;
    border-style: solid;
    border-color: var(--navy-800) transparent transparent transparent;
}

._formulaTooltipWrapper_yryy2_2286:hover ._formulaTooltip_yryy2_2286 {
    visibility: visible;
    opacity: 1;
}

._formulaTooltipTitle_yryy2_2328 {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--navy-surface);
    letter-spacing: 0.034rem;
    line-height: 1.2;
}

._formulaTooltipFormula_yryy2_2336 {
    font-family: var(--font-family-mono);
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-surface);
    line-height: 1.2;
    white-space: pre-wrap;
    word-break: break-word;
}

._formulaTooltipDetails_yryy2_2346 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--navy-surface);
    line-height: 1.2;
}

._formulaTooltipDetailItem_yryy2_2357 {
    display: block;
    padding-left: 0;
    line-height: 1.2;
}



/* ===== Pricing Model Selector ===== */

._pricingModelSelector_yryy2_2367 {
    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_yryy2_2378 {
    padding: 0.375rem 0.75rem;
    border: none;
    border-radius: 0.375rem;
    background: transparent;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--gray-text);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

._pricingModelBtn_yryy2_2378:hover {
    color: var(--text-secondary);
}

._pricingModelBtnActive_yryy2_2395 {
    background: var(--surface-card);
    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_yryy2_2404 {
    background: rgba(59, 130, 246, 0.15) !important;
}

._tcoHighlightedCell_yryy2_2408 {
    background: rgba(59, 130, 246, 0.08);
    font-weight: 700;
}

._tcoHighlightedTotal_yryy2_2413 {
    background: rgba(59, 130, 246, 0.2) !important;
}

/* Greenfield Toggle — shown to the left of pricing selector */
._tcoModalidadeControls_yryy2_2418 {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
}

._greenfieldToggle_yryy2_2425 {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    user-select: none;
}

._greenfieldToggle_yryy2_2425 input {
    display: none;
}

._greenfieldSlider_yryy2_2437 {
    width: 36px;
    height: 20px;
    background: var(--slate-700);
    border-radius: 10px;
    position: relative;
    transition: background 0.2s ease;
}

._greenfieldSlider_yryy2_2437::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_yryy2_2425 input:checked+._greenfieldSlider_yryy2_2437 {
    background: var(--blue-600);
}

._greenfieldToggle_yryy2_2425 input:checked+._greenfieldSlider_yryy2_2437::after {
    transform: translateX(16px);
}

._greenfieldLabel_yryy2_2466 {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-disabled);
}

._greenfieldToggle_yryy2_2425 input:checked~._greenfieldLabel_yryy2_2466 {
    color: var(--blue-600);
}

/* ===== Mode Toggle (RegenerateModal) ===== */

._modeToggleGroup_yryy2_2478 {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    margin-bottom: 8px;
}

._modeToggleBtn_yryy2_2485 {
    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_yryy2_2485:hover {
    border-color: var(--blue-300);
    background: var(--blue-50);
}

._modeToggleBtnActive_yryy2_2505 {
    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_yryy2_2511 {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.25rem;
}

._modeToggleDesc_yryy2_2518 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    line-height: 1.25rem;
}

._modeToggleBtnActive_yryy2_2505 ._modeToggleTitle_yryy2_2511 {
    color: var(--blue-700);
}


/* Skeleton Loading */
._skeletonContainer_yryy2_2530 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

._skeleton_yryy2_2530 {
    display: block;
    background: linear-gradient(90deg, var(--slate-200) 25%, var(--slate-100) 50%, var(--slate-200) 75%);
    background-size: 200% 100%;
    animation: _shimmer_yryy2_1 1.5s ease-in-out infinite;
    border-radius: 0.375rem;
}

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

    100% {
        background-position: -200% 0;
    }
}._container_doddd_1 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 0.5rem 0;
}

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

._loading_doddd_14 {
  text-align: center;
  padding: 2rem;
  color: var(--text-secondary);
  font-size: 0.875rem;
}

._error_doddd_21 {
  text-align: center;
  padding: 1rem;
  color: var(--text-error);
  font-size: 0.875rem;
}

._summaryCard_doddd_28 {
  background: var(--surface-card);
  border: 1px solid var(--border-default);
  border-radius: 0.5rem;
  padding: 1rem;
}

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

._summaryLabel_doddd_41 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

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

._breakdownSection_doddd_53 {
  border: 1px solid var(--border-default);
  border-radius: 0.5rem;
  overflow: hidden;
}

._expandToggle_doddd_59 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.75rem 1rem;
  background: var(--surface-card);
  border: none;
  cursor: pointer;
  text-align: left;
  color: var(--text-primary);
  font-size: 0.875rem;
}

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

._chevron_doddd_77 {
  display: inline-flex;
  transition: transform 0.2s;
  color: var(--text-secondary);
}

._chevronExpanded_doddd_83 {
  transform: rotate(90deg);
}

._expandLabel_doddd_87 {
  font-weight: 500;
  flex: 1;
}

._workloadCount_doddd_92 {
  font-size: 0.75rem;
  color: var(--text-secondary);
}

._workloadList_doddd_97 {
  border-top: 1px solid var(--border-default);
}

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

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

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

._workloadArr_doddd_118 {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-secondary);
}

._creditSection_doddd_124 {
  background: var(--surface-card);
  border: 1px solid var(--border-default);
  border-radius: 0.5rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

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

._creditDescription_doddd_140 {
  font-size: 0.75rem;
  color: var(--text-secondary);
}

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

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

._balanceLabel_doddd_159 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._balanceValue_doddd_164 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-secondary);
}

._freeNotice_doddd_170 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._freeLabel_doddd_176 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-success);
}

._freeDescription_doddd_182 {
  font-size: 0.75rem;
  color: var(--text-secondary);
}

._warningSection_doddd_187 {
  background: var(--surface-warning);
  border: 1px solid var(--border-warning);
  border-radius: 0.5rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._warningTitle_doddd_197 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-warning);
}

._warningDescription_doddd_203 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._buyButton_doddd_208 {
  align-self: flex-start;
  margin-top: 0.25rem;
  padding: 0.375rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 500;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
}

._buyButton_doddd_208:hover {
  background: var(--action-primary-bg-hover);
}

._footer_doddd_225 {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 0.5rem;
}

._cancelButton_doddd_232 {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  background: transparent;
  color: var(--text-secondary);
  border: 1px solid var(--border-default);
  border-radius: 0.375rem;
  cursor: pointer;
}

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

._generateButton_doddd_246 {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
}

._generateButton_doddd_246:hover {
  background: var(--action-primary-bg-hover);
}

._generateButton_doddd_246:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.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 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 3.900rem;
  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;
  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);
}

/* ===== 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;
}

/* ===== Strategic Objectives Section ===== */
.slide-edit-mode .slide1-objectives-section {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.slide-edit-mode .slide1-section-divider {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-bottom: 1.950rem;
  flex-shrink: 0;
}

.slide-edit-mode .slide1-section-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--slide-success);
  flex-shrink: 0;
}

.slide-edit-mode .slide1-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 .slide1-section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}

/* ===== 3x2 Grid ===== */
.slide-edit-mode .slide1-objectives-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 1.950rem;
  flex: 1;
  min-height: 0;
}

.slide-edit-mode .slide1-objective-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  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.650rem;
  padding: 1.5rem 2rem;
  box-shadow: var(--slide-card-shadow);
  text-align: left;
  min-height: 0;
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
}

.slide-edit-mode .slide1-objective-card:hover {
  border-color: var(--slide-success);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}

.slide-edit-mode .slide1-objective-number {
  position: absolute;
  top: 1rem;
  left: 1.8rem;
  font-size: 4.5rem;
  font-weight: 800;
  color: var(--slide-success);
  line-height: 1;
  opacity: 0.15;
  pointer-events: none;
}

.slide-edit-mode .slide1-objective-goal {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.3;
  display: block;
  width: 100%;
  text-align: left;
}

/* ===== Footer Card ===== */
.slide-edit-mode .slide1-footer-card {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.950rem;
  padding: 1.300rem 0.975rem;
  width: 70%;
  align-self: center;
  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;
  box-shadow: var(--slide-card-shadow);
}

.slide-edit-mode .slide1-footer-text {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.4;
  text-align: center;
}

/* ===== Objective Modal ===== */
.slide-edit-mode .slide1-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.slide-edit-mode .slide1-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(500px, 80%);
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-top: 4px solid var(--slide-success);
  border-radius: 0.812rem;
  padding: 1.625rem 1.950rem;
  z-index: 201;
  text-align: center;
}

.slide-edit-mode .slide1-modal-close {
  position: absolute;
  top: 0.812rem;
  right: 0.975rem;
  background: none;
  border: none;
  color: var(--slide-text-secondary);
  font-size: 1rem;
  cursor: pointer;
  padding: 0.325rem;
  border-radius: 0.325rem;
  transition: color 0.2s, background 0.2s;
}

.slide-edit-mode .slide1-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-edit-mode .slide1-modal-icon {
  margin-bottom: 0.812rem;
}

.slide-edit-mode .slide1-modal-icon-svg.slide-icon svg {
  width: 1.950rem;
  height: 1.950rem;
}

.slide-edit-mode .slide1-modal-title {
  font-size: 1.820rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 0.975rem;
  line-height: 1.2;
}

.slide-edit-mode .slide1-modal-text {
  font-size: 1.365rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}

.slide-edit-mode .slide1-modal-edit-field {
  width: 100%;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 0.325rem;
  padding: 0.5rem;
  font-family: var(--slide-font-family);
  font-size: 0.9rem;
  color: var(--slide-text-primary);
  resize: vertical;
  margin-bottom: 0.5rem;
}

.slide-edit-mode .slide1-modal-edit-title {
  font-size: 1.1rem;
  font-weight: 700;
}

.slide-edit-mode .slide1-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.slide-edit-mode .slide1-modal-cancel {
  padding: 0.4rem 0.8rem;
  background: transparent;
  border: 1px solid var(--slide-border);
  border-radius: 0.325rem;
  color: var(--slide-text-secondary);
  cursor: pointer;
  font-size: 0.8rem;
}

.slide-edit-mode .slide1-modal-save {
  padding: 0.4rem 0.8rem;
  background: var(--slide-highlight);
  border: none;
  border-radius: 0.325rem;
  color: #fff;
  cursor: pointer;
  font-size: 0.8rem;
  font-weight: 600;
}

.slide-edit-mode .slide1-modal-save:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* ===== Fullscreen edit mode — scaled-up modal for fullscreen context ===== */
.slide-fullscreen-edit .slide1-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.slide-fullscreen-edit .slide1-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-top: 4px solid var(--slide-success);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
  z-index: 201;
  text-align: center;
}

.slide-fullscreen-edit .slide1-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 .slide1-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide-fullscreen-edit .slide1-modal-icon {
  margin-bottom: 1.5rem;
}

.slide-fullscreen-edit .slide1-modal-icon-svg.slide-icon svg {
  width: 3.5rem;
  height: 3.5rem;
}

.slide-fullscreen-edit .slide1-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 .slide1-modal-text {
  font-size: 2rem;
  line-height: 1.6;
  color: var(--slide-text-secondary);
  margin: 0;
}

.slide-fullscreen-edit .slide1-modal-edit-field {
  width: 100%;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  padding: 0.75rem 1rem;
  font-family: var(--slide-font-family);
  font-size: 1.25rem;
  color: var(--slide-text-primary);
  resize: vertical;
  margin-bottom: 0.75rem;
  outline: none;
  box-sizing: border-box;
  line-height: 1.5;
}

.slide-fullscreen-edit .slide1-modal-edit-field:focus {
  border-color: var(--slide-highlight);
  box-shadow: 0 0 0 2px rgba(249, 115, 22, 0.2);
}

.slide-fullscreen-edit .slide1-modal-edit-title {
  font-size: 1.5rem;
  font-weight: 700;
}

.slide-fullscreen-edit .slide1-modal-edit-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1rem;
}

.slide-fullscreen-edit .slide1-modal-cancel {
  padding: 0.5rem 1.25rem;
  background: transparent;
  border: 1px solid var(--slide-border);
  border-radius: 6px;
  color: var(--slide-text-secondary);
  cursor: pointer;
  font-size: 1rem;
}

.slide-fullscreen-edit .slide1-modal-save {
  padding: 0.5rem 1.25rem;
  background: var(--slide-highlight);
  border: none;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
}

.slide-fullscreen-edit .slide1-modal-save:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* ===== Edit mode styles ===== */
.slide-editing .slide1-objective-card.edit-card {
  border-style: dashed !important;
  cursor: pointer;
}


/* ===== Connector Lines ===== */
.slide-edit-mode .slide1-connector-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
  z-index: 0;
}
.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);
  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);
  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;
}
/* ===== 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);
}


/* ===== Opportunities & Risks Two-Column Layout ===== */
.slide-edit-mode .env-middle {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 0.812rem;
}

.slide-edit-mode .env-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.950rem;
  flex: 1;
  min-height: 0;
}

.slide-edit-mode .env-column {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.slide-edit-mode .env-column-header {
  display: flex;
  align-items: center;
  gap: 0.390rem;
  margin-bottom: 0.488rem;
}

.slide-edit-mode .env-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 .env-column-icon {
  font-size: 0.650rem;
  color: var(--slide-success);
}

.slide-edit-mode .env-column-icon.danger {
  color: var(--slide-danger);
}

.slide-edit-mode .env-item-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.390rem;
  flex: 1;
  min-height: 0;
}

.slide-edit-mode .env-item-card {
  position: relative;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.488rem;
  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 .env-item-card:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}

.slide-edit-mode .env-risk-card:hover {
  border-color: var(--slide-danger);
  box-shadow: var(--slide-card-hover-shadow-danger);
}

.slide-edit-mode .env-item-card-icon-area {
  flex-shrink: 0;
  width: 3rem;
  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.488rem 0 0 0.488rem;
}

.slide-edit-mode .env-item-card-icon-area.env-risk-icon-area {
  background: color-mix(in srgb, var(--slide-danger) 6%, transparent);
}

.slide-edit-mode .env-item-card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1;
  padding: 0.650rem 4rem 0.650rem 0.975rem;
}

.slide-edit-mode .env-item-title {
  font-size: 0.9rem !important;
  font-weight: 700;
  line-height: 1.25;
  color: var(--slide-text-primary);
}

.slide-edit-mode .env-item-card-meta {
  position: absolute;
  top: 0.325rem;
  right: 0.325rem;
  display: flex;
  align-items: center;
  gap: 0.260rem;
}

/* ===== Item Card (shared with SidePanel) ===== */
.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.488rem;
  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);
}

.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.488rem 0 0 0.488rem;
}

.slide-edit-mode .item-card-icon-area.risk-icon-area {
  background: color-mix(in srgb, var(--slide-danger) 6%, transparent);
}

.slide-edit-mode .item-card-icon-area .slide-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.slide-edit-mode .item-card-icon-area .slide-icon svg {
  width: 1.463rem;
  height: 1.463rem;
}

.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;
}

.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; }

/* ===== 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-critical {
  background: color-mix(in srgb, var(--slide-danger) 15%, transparent);
  color: var(--slide-danger);
}

.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);
}

/* ===== Icon Colors ===== */
.slide-edit-mode .env-item-card-icon-area .slide-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.slide-edit-mode .env-item-card-icon-area .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);
}

.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;
}

.slide-edit-mode .env-more-button {
  margin-top: 0.325rem;
  padding: 0.260rem 0.812rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 1.300rem;
  color: var(--slide-highlight);
  font-size: 0.650rem;
  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 .env-more-button:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-1px);
}

.slide-edit-mode .env-more-button.danger {
  color: var(--slide-danger);
}

.slide-edit-mode .env-more-button.danger:hover {
  border-color: var(--slide-danger);
}

@media (max-height: 900px) {
  .slide-edit-mode .env-finding-pain { font-size: 0.569rem; }
  .slide-edit-mode .env-finding-resolution { font-size: 0.569rem; }
}


/* ===== 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-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-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-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-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);
}


/* ===== Period Tabs ===== */
.slide-edit-mode .period-tabs {
  display: flex;
  gap: 3px;
  background: var(--slide-border);
  border-radius: 0.390rem;
  padding: 3px;
}


.slide-edit-mode .period-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 .period-tab.active {
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
}


.slide-edit-mode .period-tab:hover:not(.active) {
  color: var(--slide-text-primary);
}


/* ===== Sortable headers ===== */
.slide-edit-mode .investment-table th.sortable-th {
  cursor: pointer;
  user-select: none;
  transition: color 0.2s;
}


.slide-edit-mode .investment-table th.sortable-th:hover {
  color: var(--slide-text-primary);
}


.slide-edit-mode .investment-table th.sortable-th:focus-visible {
  outline: 2px solid var(--slide-highlight);
  outline-offset: -2px;
  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:not(:first-child) {
  font-family: var(--font-family-mono);
  font-variant-numeric: tabular-nums;
}


.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;
}


/* VMware SPI info tooltip */
.slide-edit-mode .incentive-label-with-info {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}

.slide-edit-mode .incentive-info {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: help;
  outline: none;
}

.slide-edit-mode .incentive-info-icon {
  width: 0.72rem;
  height: 0.72rem;
  color: var(--slide-text-secondary);
  opacity: 0.7;
  transition: opacity 0.15s ease;
}

.slide-edit-mode .incentive-info:hover .incentive-info-icon,
.slide-edit-mode .incentive-info:focus-visible .incentive-info-icon {
  opacity: 1;
}

.slide-edit-mode .incentive-info-tooltip {
  position: absolute;
  bottom: calc(100% + 0.4rem);
  left: 0;
  z-index: 20;
  display: none;
  flex-direction: column;
  gap: 0.28rem;
  min-width: 15rem;
  padding: 0.6rem 0.7rem;
  background: var(--slide-bg-secondary, #1e293b);
  border: 1px solid var(--slide-border);
  border-radius: 0.4rem;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
  font-size: 0.62rem;
  font-weight: 400;
  color: var(--slide-text-secondary);
  text-align: left;
  white-space: normal;
}

.slide-edit-mode .incentive-info:hover .incentive-info-tooltip,
.slide-edit-mode .incentive-info:focus-visible .incentive-info-tooltip,
.slide-edit-mode .incentive-info:focus-within .incentive-info-tooltip {
  display: flex;
}

.slide-edit-mode .incentive-info-tooltip-title {
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-primary);
  margin-bottom: 0.15rem;
}

.slide-edit-mode .incentive-info-row {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
}

.slide-edit-mode .incentive-info-row > span:last-child {
  font-weight: 600;
  color: var(--slide-text-primary);
  white-space: nowrap;
}

.slide-edit-mode .incentive-info-row-pending > span {
  opacity: 0.6;
  font-style: italic;
}


/* 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-edit-mode .investment-upfront-note {
  font-size: 0.6rem;
  color: var(--slide-text-secondary);
  margin: 0.4rem 0 0;
  text-align: center;
  font-style: italic;
}
/* ===== 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,
.slide-fullscreen-edit .conclusion-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  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-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);
}

/* ===== Inline Edit Actions (slide-level Save/Cancel in header) ===== */
.slide-edit-mode .conclusion-edit-actions,
.slide-fullscreen-edit .conclusion-edit-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.slide-edit-mode .conclusion-edit-cancel,
.slide-fullscreen-edit .conclusion-edit-cancel {
  height: 32px;
  padding: 0 1rem;
  background: transparent;
  border: 1px solid var(--slide-border);
  color: var(--slide-text-secondary);
  border-radius: 0.625rem;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
}

.slide-edit-mode .conclusion-edit-cancel:hover,
.slide-fullscreen-edit .conclusion-edit-cancel:hover {
  border-color: var(--slide-text-secondary);
}

.slide-edit-mode .conclusion-edit-save,
.slide-fullscreen-edit .conclusion-edit-save {
  height: 32px;
  padding: 0 1rem;
  background: var(--slide-highlight);
  border: none;
  color: #fff;
  border-radius: 0.625rem;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.2s;
}

.slide-edit-mode .conclusion-edit-save:hover,
.slide-fullscreen-edit .conclusion-edit-save:hover {
  opacity: 0.9;
}

/* Fix footer overflow when editing */
.slide-editing .conclusion-footer {
  height: auto;
  min-height: 2.6rem;
  overflow: visible;
}
.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_18jc7_1 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* ── Toolbar ── */
._toolbar_18jc7_9 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 12px;
  height: 48px;
  background: var(--surface-card);
  border: 1px solid var(--gray-200, #e5e7eb);
  border-radius: 10px;
}

._toolbarLeft_18jc7_22 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
}

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

._toolbarSep_18jc7_36 {
  color: var(--gray-300, #d1d5db);
  font-size: 0.875rem;
}

._toolbarProject_18jc7_41 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--gray-700, #374151);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._toolbarCenter_18jc7_50 {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

._toolbarNav_18jc7_60 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--gray-200, #e5e7eb);
  border-radius: 6px;
  background: var(--surface-card);
  color: var(--gray-600, #4b5563);
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
  padding: 0;
}

._toolbarNav_18jc7_60:hover:not(:disabled) {
  background: var(--gray-50, #f9fafb);
  color: var(--gray-900, #111827);
}

._toolbarNav_18jc7_60:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

._toolbarCounter_18jc7_85 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--gray-700, #374151);
  min-width: 32px;
  text-align: center;
}

._toolbarSlideName_18jc7_93 {
  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_18jc7_105 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

._toolbarEditing_18jc7_112 {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #d97706;
}

._toolbarCancel_18jc7_118 {
  height: 32px;
  padding: 0 1rem;
  background: var(--surface-card);
  border: 0.09375rem solid var(--error-500, #ef4444);
  border-radius: 0.625rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--error-500, #ef4444);
  cursor: pointer;
  transition: background 0.2s;
}

._toolbarCancel_18jc7_118:hover { background: #fef2f2; }

._toolbarEdit_18jc7_112,
._toolbarSave_18jc7_134 {
  display: flex;
  align-items: center;
  gap: 4px;
  height: 32px;
  padding: 0 1rem;
  border-radius: 0.625rem;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
}

._toolbarEdit_18jc7_112 {
  background: var(--surface-card);
  border: 0.09375rem solid var(--border-subtle, #e5e7eb);
  color: var(--text-tertiary, #6b7280);
}

._toolbarEdit_18jc7_112:hover { background: var(--surface-subtle, #f9fafb); }

._toolbarSave_18jc7_134 {
  background: var(--surface-card);
  border: 0.09375rem solid var(--success-500, #22c55e);
  color: var(--success-700, #15803d);
}

._toolbarSave_18jc7_134:hover:not(:disabled) { background: #f0fdf4; }

._toolbarAccept_18jc7_163 {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 0 1rem;
  border-radius: 0.625rem;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
  background: var(--surface-card);
  border: 1.5px solid var(--color-stale, #f59e0b);
  color: var(--color-stale-dark, #b45309);
}

._toolbarAccept_18jc7_163:hover { background: var(--color-stale-bg-active, #fffbeb); }

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

._toolbarRegenerate_18jc7_186 {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 12px;
  background: var(--surface-card);
  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_18jc7_186:hover {
  background: rgba(37, 99, 235, 0.05);
}

._toolbarPresent_18jc7_206 {
  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_18jc7_206:hover {
  opacity: 0.9;
}

/* ── Slide box ── */
._slideBox_18jc7_227 {
  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_18jc7_227 .presentation-inner {
  max-width: 100% !important;
  width: 100% !important;
  height: 100% !important;
}

/* ── Fullscreen edit mode ── */
._fullscreenWrapper_18jc7_245 {
  z-index: 9998 !important;
  flex-direction: column !important;
  align-items: unset !important;
  justify-content: unset !important;
}

._toolbarFullscreen_18jc7_252 {
  flex-shrink: 0;
  border-radius: 0;
  border-left: none;
  border-right: none;
  border-top: none;
  z-index: 9999;
  font-size: 1.1125rem;
}

._toolbarFullscreen_18jc7_252 ._toolbarSep_18jc7_36,
._toolbarFullscreen_18jc7_252 ._toolbarProject_18jc7_41,
._toolbarFullscreen_18jc7_252 ._toolbarSlideName_18jc7_93,
._toolbarFullscreen_18jc7_252 ._toolbarCounter_18jc7_85,
._toolbarFullscreen_18jc7_252 ._toolbarEditing_18jc7_112 {
  font-size: 1.1125rem;
}

._toolbarFullscreen_18jc7_252 ._toolbarCancel_18jc7_118,
._toolbarFullscreen_18jc7_252 ._toolbarEdit_18jc7_112,
._toolbarFullscreen_18jc7_252 ._toolbarSave_18jc7_134,
._toolbarFullscreen_18jc7_252 ._toolbarRegenerate_18jc7_186,
._toolbarFullscreen_18jc7_252 ._toolbarPresent_18jc7_206 {
  font-size: 1.1125rem;
}

._slideBoxFullscreen_18jc7_279 {
  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_18jc7_279 .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_1wzid_1 {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    animation: _tabFadeIn_1wzid_1 0.3s ease-out;
}

@keyframes _tabFadeIn_1wzid_1 {
    from {
        opacity: 0;
        transform: translateY(0.5rem);
    }

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

/* Tab Header */
._tabHeader_1wzid_21 {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

._tabTitle_1wzid_27 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.4;
}

._tabSubtitle_1wzid_35 {
    font-size: 0.8125rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* Stats Row */
._statsRow_1wzid_43 {
    display: flex;
    gap: 0.75rem;
}

._statCard_1wzid_48 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--surface-card);
    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: 8rem;
}

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

._statLabel_1wzid_67 {
    font-size: 0.8125rem;
    color: var(--text-tertiary);
}

._statValue_1wzid_72 {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-left: auto;
}

._statSpinner_1wzid_79 {
    width: 17px;
    height: 17px;
    border: 2px solid var(--blue-200);
    border-top-color: var(--blue-600);
    border-radius: 50%;
    animation: _statSpin_1wzid_79 0.8s linear infinite;
}

._loadingIndicator_1wzid_88 {
    display: flex;
    align-items: center;
    gap: 8px;
}

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

._statLoadingText_1wzid_100 {
    font-size: 13px;
    color: var(--text-secondary);
    margin-left: -2px;
}

._statOnline_1wzid_106 {
    border-left: 0.1875rem solid var(--success-500);
}

._statWarning_1wzid_110 {
    border-left: 0.1875rem solid var(--warning-500);
}

._statOffline_1wzid_114 {
    border-left: 0.1875rem solid var(--error-500);
}

/* Toolbar */
._toolbar_1wzid_119 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

._toolbarLeft_1wzid_126,
._toolbarRight_1wzid_127 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._toolbarBtn_1wzid_133 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2.125rem;
    padding: 0 0.75rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

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

._spinning_1wzid_153 {
    animation: _spin_1wzid_153 1s linear infinite;
}

._mappingBanner_1wzid_157 {
    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_1wzid_170 {
    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_1wzid_183 {
    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_1wzid_183:hover {
    opacity: 1;
}

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

    to {
        transform: rotate(360deg);
    }
}

._toolbarBtnPrimary_1wzid_208 {
    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-size: 0.8125rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.15s;
    white-space: nowrap;
}

._toolbarBtnPrimary_1wzid_208:hover {
    opacity: 0.9;
}

._toolbarBtnAi_1wzid_228 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2.125rem;
    padding: 0 0.875rem;
    background: linear-gradient(to bottom, var(--action-ai-bg), var(--action-ai-bg-active));
    border: none;
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--action-ai-text);
    cursor: pointer;
    transition: opacity 0.15s;
    white-space: nowrap;
}

._toolbarBtnAi_1wzid_228:hover {
    opacity: 0.9;
}

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

/* Column Picker */
._columnPickerWrapper_1wzid_254 {
    position: relative;
}

._toolbarBtnActive_1wzid_258 {
    background: rgba(239, 246, 255, 0.8);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

._columnCount_1wzid_264 {
    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);
}

._toolbarBtnActive_1wzid_258 ._columnCount_1wzid_264 {
    background: rgba(41, 135, 194, 0.15);
    color: var(--blue-600);
}

._columnPicker_1wzid_254 {
    position: absolute;
    top: calc(100% + 0.375rem);
    left: 0;
    z-index: 200;
    background: var(--surface-card);
    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_1wzid_295 {
    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_1wzid_303 {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--text-primary);
}

._columnPickerReset_1wzid_309 {
    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_1wzid_309:hover {
    background: rgba(41, 135, 194, 0.08);
}

._columnGroup_1wzid_324 {
    padding: 0.625rem 0.875rem 0.5rem;
    border-bottom: 0.0417rem solid var(--slate-100);
}

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

._columnGroupLabel_1wzid_333 {
    display: block;
    font-size: 0.625rem;
    font-weight: 400;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0375rem;
    margin-bottom: 0.5rem;
}

._columnGroupItems_1wzid_343 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

._columnChip_1wzid_349 {
    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-size: 0.75rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

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

._columnChipActive_1wzid_370 {
    background: rgba(239, 246, 255, 0.9);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

._columnChipActive_1wzid_370:hover {
    background: rgba(239, 246, 255, 1);
}

/* Table */
._tableWrapper_1wzid_381 {
    overflow-x: auto;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.5rem;
}

._stickyScrollbar_1wzid_387 {
    position: sticky;
    bottom: 0;
    overflow-x: auto;
    overflow-y: hidden;
    height: 12px;
    z-index: 3;
}

._table_1wzid_381 {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

._table_1wzid_381 thead {
    background: var(--surface-subtle);
    border-bottom: 0.0417rem solid var(--border-subtle);
}

._th_1wzid_407,
._thName_1wzid_408,
._thActions_1wzid_409 {
    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: var(--surface-card);
    z-index: 2;
}

._th_1wzid_407,
._thName_1wzid_408 {
    position: relative;
}

._resizeHandle_1wzid_428 {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    cursor: col-resize;
    background: transparent;
}

._resizeHandle_1wzid_428:hover {
    background: var(--blue-300);
}

._thName_1wzid_408 {
    min-width: 10rem;
}

._thActions_1wzid_409 {
    width: 4.5rem;
}

._tr_1wzid_450 {
    border-bottom: 0.0417rem solid var(--slate-100);
    transition: background 0.1s;
}

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

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

._td_1wzid_463,
._tdName_1wzid_464,
._tdActions_1wzid_465 {
    padding: 0.625rem 0.875rem;
    color: var(--text-secondary);
    vertical-align: middle;
}

._tdActions_1wzid_465 {
    text-align: right;
}

/* Server name cell */
._serverName_1wzid_476 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 400;
    color: var(--text-primary);
}

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

._dot_online_1wzid_491 {
    background: var(--success-500);
}

._dot_warning_1wzid_495 {
    background: var(--warning-500);
}

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

/* Status badge */
._statusBadge_1wzid_504 {
    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_1wzid_514 {
    background: var(--success-50);
    color: var(--success-700);
}

._statusWarning_1wzid_519 {
    background: var(--warning-50);
    color: var(--warning-700);
}

._statusOffline_1wzid_524 {
    background: var(--error-50);
    color: var(--error-700);
}

/* Env tag */
._envTag_1wzid_530 {
    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_1wzid_542 {
    font-family: var(--font-family-mono);
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

._hostname_1wzid_549 {
    font-size: 0.6875rem;
    color: var(--text-disabled);
}

._dimText_1wzid_554 {
    color: var(--text-tertiary);
    font-size: 0.75rem;
}

/* Metric bar */
._metricBar_1wzid_560 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    min-width: 5rem;
}

._metricBarTrack_1wzid_567 {
    flex: 1;
    height: 0.25rem;
    background: var(--border-subtle);
    border-radius: 624.9375rem;
    overflow: hidden;
}

._metricBarFill_1wzid_575 {
    height: 100%;
    border-radius: 624.9375rem;
    transition: width 0.3s;
}

._metricValue_1wzid_581 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    min-width: 2rem;
    text-align: right;
}

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

/* Edit button */
._editBtn_1wzid_593 {
    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_1wzid_593:hover {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

/* Modal */
._modalOverlay_1wzid_615 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

._modal_1wzid_615 {
    background: var(--surface-card);
    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_1wzid_637 {
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 0.0417rem solid var(--border-subtle);
}

._modalTitle_1wzid_642 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
}

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

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

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

._formLabel_1wzid_670 {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

._formSelect_1wzid_675,
._formInput_1wzid_676 {
    height: 2.25rem;
    padding: 0 0.75rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-default);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    transition: border-color 0.15s;
}

._formSelect_1wzid_675:focus,
._formInput_1wzid_676:focus {
    border-color: var(--blue-600);
}

._modalFooter_1wzid_693 {
    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_1wzid_702 {
    height: 2.125rem;
    padding: 0 1rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.15s;
}

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

._modalSave_1wzid_718 {
    height: 2.125rem;
    padding: 0 1rem;
    background: linear-gradient(to bottom, var(--blue-600), var(--blue-700));
    border: none;
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.15s;
}

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

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

/* ─── Layout com drawer ─────────────────────────────────────────────────── */

._serversTabWithDrawer_1wzid_741 {
    display: grid;
    grid-template-columns: 1fr 20rem;
    gap: 0;
    align-items: start;
}

._mainArea_1wzid_748 {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

/* ─── Drawer ─────────────────────────────────────────────────────────────── */

._drawer_1wzid_757 {
    position: sticky;
    top: 0;
    height: calc(100vh - 10rem);
    display: flex;
    flex-direction: column;
    background: var(--surface-card);
    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_1wzid_771 {
    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_1wzid_780 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

._drawerNavBtn_1wzid_786 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.625rem;
    height: 1.625rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
}

._drawerNavBtn_1wzid_786:hover:not(:disabled) {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._drawerNavBtn_1wzid_786:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

._drawerNavCount_1wzid_811 {
    font-size: 0.75rem;
    color: var(--text-disabled);
    min-width: 2.25rem;
    text-align: center;
}

._drawerClose_1wzid_818 {
    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_1wzid_818:hover {
    background: var(--error-50);
    color: var(--error-500);
}

/* Identity block */
._drawerIdentity_1wzid_838 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-bottom: 0.0417rem solid var(--slate-100);
    flex-shrink: 0;
}

._drawerServerIcon_1wzid_847 {
    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_1wzid_858 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
    line-height: 1.3;
}

._drawerServerMeta_1wzid_866 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

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

/* Body */
._drawerBody_1wzid_880 {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    padding: 0.25rem 0 1rem;
}

._drawerSection_1wzid_887 {
    padding: 0.75rem 1rem 0.25rem;
}

._drawerSection_1wzid_887+._drawerSection_1wzid_887 {
    border-top: 0.0417rem solid var(--surface-subtle);
}

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

._drawerDeleteSection_1wzid_899 {
    padding: 1.5rem 1rem 1rem;
}

._drawerSectionLabel_1wzid_903 {
    display: block;
    font-size: 0.625rem;
    font-weight: 400;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0375rem;
    margin-bottom: 0.5rem;
}

._drawerField_1wzid_913 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 2rem;
    padding: 0.125rem 0;
    gap: 0.5rem;
}

._drawerFieldLabel_1wzid_922 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    flex-shrink: 0;
    min-width: 6.875rem;
}

/* ─── Inline editing components ─────────────────────────────────────────── */

/* Shared value button */
._inlineValue_1wzid_932 {
    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-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
    text-align: left;
    overflow: hidden;
}

._inlineValue_1wzid_932:hover {
    background: var(--slate-100);
    border-color: var(--border-subtle);
}

._inlineValue_1wzid_932:hover ._inlineEditIcon_1wzid_954 {
    opacity: 1;
}

._inlineValueMono_1wzid_958 {
    font-family: var(--font-family-mono);
    font-size: 0.75rem;
}

._inlineEditIcon_1wzid_954 {
    opacity: 0;
    color: var(--text-disabled);
    flex-shrink: 0;
    transition: opacity 0.15s;
}

/* Text input */
._inlineInput_1wzid_971 {
    width: 10rem;
    height: 1.75rem;
    padding: 0 0.5rem;
    background: var(--surface-card);
    border: 0.0938rem solid var(--blue-600);
    border-radius: 0.3125rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    box-shadow: 0 0 0 0.1875rem rgba(41, 135, 194, 0.12);
}

._inlineInputMono_1wzid_984 {
    font-family: var(--font-family-mono);
    font-size: 0.75rem;
}

/* Select dropdown */
._inlineSelectWrapper_1wzid_990 {
    position: relative;
}

._inlineDropdown_1wzid_994 {
    position: absolute;
    top: calc(100% + 0.25rem);
    right: 0;
    z-index: 300;
    background: var(--surface-card);
    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_1wzid_1008 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: none;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.1s;
    text-align: left;
    gap: 0.5rem;
}

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

._inlineDropdownItemActive_1wzid_1028 {
    color: var(--blue-600);
    background: rgba(239, 246, 255, 0.6);
}

/* Number / metric */
._inlineMetricBtn_1wzid_1034 {
    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_1wzid_1034:hover {
    background: var(--slate-100);
    border-color: var(--border-subtle);
}

._inlineMetricBtn_1wzid_1034:hover ._inlineEditIcon_1wzid_954 {
    opacity: 1;
}

._inlineNumberWrapper_1wzid_1056 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

._inlineNumberInput_1wzid_1062 {
    width: 3.75rem;
    height: 1.75rem;
    padding: 0 0.5rem;
    background: var(--surface-card);
    border: 0.0938rem solid var(--blue-600);
    border-radius: 0.3125rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    box-shadow: 0 0 0 0.1875rem rgba(41, 135, 194, 0.12);
}

._inlineNumberSuffix_1wzid_1075 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
}

/* ─── Table row selected state ───────────────────────────────────────────── */

._trSelected_1wzid_1082 {
    background: rgba(239, 246, 255, 0.6) !important;
    outline: none;
}

._trSelected_1wzid_1082 td {
    border-bottom-color: var(--blue-200);
}

._editBtnActive_1wzid_1091 {
    background: rgba(239, 246, 255, 0.8) !important;
    color: var(--blue-600) !important;
    border-color: var(--blue-600) !important;
}

/* ─── Origin Badge ───────────────────────────────────────────────────────── */

._originBadge_1wzid_1099 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    border-radius: 624.9375rem;
    font-size: 0.75rem;
    white-space: nowrap;
}

._originAutomatic_1wzid_1109 {
    background: rgba(239, 246, 255, 0.8);
    color: var(--blue-600);
    border: 0.0417rem solid var(--blue-200);
}

._originManual_1wzid_1115 {
    background: var(--slate-100);
    color: var(--text-tertiary);
    border: 0.0417rem solid var(--border-subtle);
}

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

._emptyState_1wzid_1123 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 1.5rem;
    text-align: center;
    gap: 1rem;
    animation: _tabFadeIn_1wzid_1 0.3s ease-out;
}

._emptyIcon_1wzid_1134 {
    width: 5rem;
    height: 5rem;
    background: var(--slate-100);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

._emptyTitle_1wzid_1145 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._emptyDescription_1wzid_1152 {
    font-size: 0.875rem;
    color: var(--text-tertiary);
    margin: 0;
    max-width: 26.25rem;
    line-height: 1.5;
}

._emptyActions_1wzid_1160 {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

._emptyAddBtn_1wzid_1166 {
    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-size: 0.875rem;
    color: white;
    cursor: pointer;
    transition: opacity 0.15s;
}

._emptyAddBtn_1wzid_1166:hover {
    opacity: 0.9;
}

._emptyHint_1wzid_1185 {
    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-size: 0.8125rem;
    color: var(--text-tertiary);
    max-width: 30rem;
}

/* ─── Processing Banner ──────────────────────────────────────────────────── */

._processingBanner_1wzid_1201 {
    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_1wzid_1211 {
    width: 1.25rem;
    height: 1.25rem;
    border: 0.1562rem solid var(--blue-200);
    border-top-color: var(--blue-600);
    border-radius: 50%;
    animation: _spin_1wzid_153 0.8s linear infinite;
    flex-shrink: 0;
}

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

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

._processingTitle_1wzid_1233 {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--blue-800);
}

._processingSubtitle_1wzid_1239 {
    font-size: 0.75rem;
    color: var(--blue-500);
}

/* ─── Pagination ─────────────────────────────────────────────────────────── */

._pagination_1wzid_1246 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.25rem 0;
}

._paginationInfo_1wzid_1253 {
    font-size: 0.8125rem;
    color: var(--text-tertiary);
}

._paginationControls_1wzid_1258 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

._paginationBtn_1wzid_1264 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
}

._paginationBtn_1wzid_1264:hover:not(:disabled) {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._paginationBtn_1wzid_1264:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

._paginationPageBtn_1wzid_1289 {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    height: 2rem;
    padding: 0 0.5rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
}

._paginationPageBtn_1wzid_1289:hover {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._paginationPageBtnActive_1wzid_1311 {
    background: rgba(239, 246, 255, 0.8);
    border-color: var(--blue-600);
    color: var(--blue-600);
    font-weight: 700;
}

._paginationEllipsis_1wzid_1318 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    font-size: 0.8125rem;
    color: var(--text-disabled);
}

/* ─── Form Row (modal) ───────────────────────────────────────────────────── */

._formRow_1wzid_1330 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.875rem;
}

/* ─── Drawer field value (read-only) ─────────────────────────────────────── */

._drawerFieldValue_1wzid_1338 {
    display: flex;
    align-items: center;
}

/* ─── Row actions (edit + delete) ────────────────────────────────────────── */

._rowActions_1wzid_1345 {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    justify-content: flex-end;
}

/* ─── Delete button (table row) ──────────────────────────────────────────── */

._deleteBtn_1wzid_1354 {
    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_1wzid_450:hover ._deleteBtn_1wzid_1354 {
    opacity: 1;
}

._deleteBtn_1wzid_1354:hover {
    background: var(--error-50);
    border-color: var(--error-50);
    color: var(--error-500);
}

/* ─── Drawer footer (delete action) ──────────────────────────────────────── */

._drawerFooter_1wzid_1381 {
    padding: 0.75rem 1rem;
    border-top: 0.0417rem solid var(--slate-100);
    flex-shrink: 0;
}

._drawerDeleteBtn_1wzid_1387 {
    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-size: 0.8125rem;
    color: var(--error-500);
    cursor: pointer;
    transition: all 0.15s;
}

._drawerDeleteBtn_1wzid_1387:hover {
    background: var(--error-50);
    border-color: var(--error-500);
}

/* ─── Confirm Delete Modal ───────────────────────────────────────────────── */

._modalDelete_1wzid_1410 {
    background: var(--surface-card);
    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_1wzid_1424 {
    width: 3rem;
    height: 3rem;
    background: var(--error-50);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.25rem;
}

._deleteTitle_1wzid_1435 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

._deleteDescription_1wzid_1442 {
    font-size: 0.875rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.5;
}

._deleteDescription_1wzid_1442 strong {
    color: var(--text-primary);
    font-weight: 700;
}

._deleteActions_1wzid_1454 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
    width: 100%;
}

._deleteActions_1wzid_1454 ._modalCancel_1wzid_702 {
    flex: 1;
}

._deleteConfirmBtn_1wzid_1466 {
    flex: 1;
    height: 2.125rem;
    padding: 0 1rem;
    background: var(--error-500);
    border: none;
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
}

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

/* ─── Workload Chips ─────────────────────────────────────────────────────── */

._chipRow_1wzid_1485 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-wrap: nowrap;
    overflow: hidden;
}

._workloadChip_1wzid_1493 {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.625rem;
    border-radius: 624.9375rem;
    font-size: 0.75rem;
    font-weight: 400;
    white-space: nowrap;
    border: 0.0417rem solid;
    line-height: 1.5;
}

._chipMore_1wzid_1505 {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    border-radius: 624.9375rem;
    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_1wzid_1520 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    overflow: hidden;
}

._dataSourceChip_1wzid_1527 {
    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_1wzid_1540 {
    color: var(--text-tertiary);
    flex-shrink: 0;
}

._dataSourceName_1wzid_1545 {
    font-size: 0.75rem;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

._dataSourceMore_1wzid_1553 {
    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-size: 0.6875rem;
    color: var(--text-tertiary);
    white-space: nowrap;
    flex-shrink: 0;
}

/* ─── Drawer sources list ────────────────────────────────────────────────── */

._drawerSourcesList_1wzid_1571 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    align-items: flex-end;
}

._drawerSourcesList_1wzid_1571 ._dataSourceChip_1wzid_1527 {
    max-width: 11.25rem;
}

/* ─── InlineMultiSelect (redesigned) ─────────────────────────────────────── */

._multiSelectField_1wzid_1584 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    width: 100%;
}

._multiSelectedChips_1wzid_1591 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

._multiChip_1wzid_1597 {
    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-size: 0.75rem;
    color: var(--text-secondary);
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
}

._multiChipRemove_1wzid_1613 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    min-width: 1.5rem;
    min-height: 1.5rem;
    background: transparent;
    border: none;
    border-radius: 0.25rem;
    color: var(--text-disabled);
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    transition: all 0.1s;
}

._multiChipRemove_1wzid_1613:hover {
    background: var(--border-subtle);
    color: var(--error-500);
}

._multiSelectTrigger_1wzid_1636 {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    height: 1.75rem;
    padding: 0 0.625rem;
    background: var(--surface-card);
    border: 0.0417rem dashed var(--border-default);
    border-radius: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    width: fit-content;
}

._multiSelectTrigger_1wzid_1636:hover {
    border-color: var(--blue-600);
    color: var(--blue-600);
    background: rgba(239, 246, 255, 0.5);
}

/* Fixed-position dropdown */
._multiSelectDropdownFixed_1wzid_1659 {
    position: fixed;
    z-index: 9000;
    background: var(--surface-card);
    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_1wzid_1659 {
    position: fixed;
    z-index: 9000;
    background: var(--surface-card);
    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_1wzid_1686 {
    padding: 0.625rem 0.75rem 0.375rem;
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--text-disabled);
    text-transform: uppercase;
    letter-spacing: 0.0312rem;
}

._multiSelectSearch_1wzid_1695 {
    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_1wzid_1704 {
    flex: 1;
    border: none;
    outline: none;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    background: transparent;
}

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

._multiSelectList_1wzid_1717 {
    max-height: 13.75rem;
    overflow-y: auto;
    padding: 0.25rem 0;
}

._multiSelectItem_1wzid_1723 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.1s;
    text-align: left;
}

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

._multiSelectItemActive_1wzid_1742 {
    color: var(--blue-600);
    background: rgba(239, 246, 255, 0.5);
}

._multiSelectEmpty_1wzid_1747 {
    display: block;
    padding: 1rem 0.75rem;
    font-size: 0.8125rem;
    color: var(--text-disabled);
    text-align: center;
}

._multiCheckbox_1wzid_1755 {
    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_1wzid_1767 {
    background: var(--blue-600);
    border-color: var(--blue-600);
    color: white;
}

/* ─── Drawer stacked field ───────────────────────────────────────────────── */

._drawerFieldStacked_1wzid_1775 {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    padding: 0.375rem 0;
}

/* ─── Form chip grid (modal) ─────────────────────────────────────────────── */

._formChipGrid_1wzid_1784 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

._formChip_1wzid_1784 {
    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-size: 0.75rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

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

._formChipSelected_1wzid_1811 {
    border-color: currentColor;
}

._formChipSelected_1wzid_1811:hover {
    opacity: 0.85;
}

._formHint_1wzid_1819 {
    font-size: 0.75rem;
    color: var(--slate-400);
    font-style: italic;
}

._formChipSourceActive_1wzid_1825 {
    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_1wzid_741 {
        grid-template-columns: 1fr;
    }

    ._drawer_1wzid_757 {
        position: relative;
        margin-left: 0;
        margin-top: 1rem;
        height: auto;
        max-height: 26.25rem;
    }
}

/* ─── ≤ 64rem: stats wrap, toolbar stacks ───────────────────────────────── */

@media (max-width: 64rem) {
    ._statsRow_1wzid_43 {
        flex-wrap: wrap;
    }

    ._statCard_1wzid_48 {
        min-width: 0;
        flex: 1 1 calc(50% - 0.5rem);
        padding: 0.625rem 0.875rem;
    }

    ._statValue_1wzid_72 {
        font-size: 1.125rem;
    }

    ._toolbar_1wzid_119 {
        flex-wrap: wrap;
    }
}

/* ─── ≤ 48rem: mobile-friendly layout ────────────────────────────────────── */

@media (max-width: 48rem) {
    ._statsRow_1wzid_43 {
        gap: 0.5rem;
    }

    ._statCard_1wzid_48 {
        flex: 1 1 calc(50% - 0.25rem);
        padding: 0.5rem 0.75rem;
    }

    ._statLabel_1wzid_67 {
        font-size: 0.75rem;
    }

    ._statValue_1wzid_72 {
        font-size: 1rem;
    }

    ._toolbar_1wzid_119 {
        flex-direction: column;
        align-items: stretch;
    }

    ._toolbarLeft_1wzid_126,
    ._toolbarRight_1wzid_127 {
        width: 100%;
    }

    ._toolbarRight_1wzid_127 {
        justify-content: stretch;
    }

    ._toolbarBtnPrimary_1wzid_208 {
        flex: 1;
        justify-content: center;
    }

    ._toolbarBtnAi_1wzid_228 {
        flex: 1;
        justify-content: center;
    }

    /* Column picker: full width on mobile */
    ._columnPicker_1wzid_254 {
        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_1wzid_994,
    ._multiSelectDropdown_1wzid_1659 {
        min-width: 11.25rem;
        max-width: calc(100vw - 3rem);
    }

    /* Pagination stacks */
    ._pagination_1wzid_1246 {
        flex-direction: column;
        gap: 0.5rem;
        align-items: center;
    }

    /* Modal form rows stack */
    ._formRow_1wzid_1330 {
        grid-template-columns: 1fr;
        gap: 0.625rem;
    }

    /* Drawer fields stack */
    ._drawerField_1wzid_913 {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    ._drawerFieldLabel_1wzid_922 {
        min-width: 0;
    }

    /* Inline values full width */
    ._inlineValue_1wzid_932 {
        max-width: 100%;
    }

    ._inlineInput_1wzid_971 {
        width: 100%;
    }

    ._inlineMetricBtn_1wzid_1034 {
        width: 100%;
    }

    /* Empty state */
    ._emptyState_1wzid_1123 {
        padding: 2.5rem 1rem;
    }

    ._emptyHint_1wzid_1185 {
        flex-direction: column;
        text-align: center;
    }
}

/* ─── ≤ 30rem: compact mobile ────────────────────────────────────────────── */

@media (max-width: 30rem) {
    ._tabTitle_1wzid_27 {
        font-size: 0.9375rem;
    }

    ._tabSubtitle_1wzid_35 {
        font-size: 0.75rem;
    }

    ._statCard_1wzid_48 {
        flex: 1 1 100%;
    }

    ._toolbarBtn_1wzid_133 {
        font-size: 0.75rem;
        padding: 0 0.625rem;
        height: 2rem;
    }

    ._toolbarBtnPrimary_1wzid_208 {
        font-size: 0.75rem;
        height: 2rem;
    }

    ._toolbarBtnAi_1wzid_228 {
        font-size: 0.75rem;
        height: 2rem;
    }

    /* Table cells tighter */
    ._th_1wzid_407,
    ._thName_1wzid_408,
    ._thActions_1wzid_409,
    ._td_1wzid_463,
    ._tdName_1wzid_464,
    ._tdActions_1wzid_465 {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }

    ._thName_1wzid_408 {
        min-width: 7.5rem;
    }

    /* Drawer compact */
    ._drawer_1wzid_757 {
        max-height: 22.5rem;
    }

    ._drawerIdentity_1wzid_838 {
        padding: 0.625rem 0.75rem;
    }

    ._drawerSection_1wzid_887 {
        padding: 0.625rem 0.75rem 0.25rem;
    }

    ._drawerServerName_1wzid_858 {
        font-size: 0.8125rem;
    }

    /* Modal compact */
    ._modal_1wzid_615 {
        max-height: 90vh;
        margin: 0.5rem;
    }

    ._modalHeader_1wzid_637 {
        padding: 1rem 1rem 0.75rem;
    }

    ._modalBody_1wzid_655 {
        padding: 1rem;
    }

    ._modalFooter_1wzid_693 {
        padding: 0.75rem 1rem;
    }

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

    /* Chip grids scroll */
    ._formChipGrid_1wzid_1784 {
        max-height: 7.5rem;
        overflow-y: auto;
    }

    /* Workload chips in table */
    ._chipRow_1wzid_1485 {
        max-width: 11.25rem;
    }

    ._dataSourceChip_1wzid_1527 {
        max-width: 10rem;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SEARCH & FILTERS
   ═══════════════════════════════════════════════════════════════════════════ */

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

/* ─── Search box ─────────────────────────────────────────────────────────── */

._searchBox_1wzid_2099 {
    position: relative;
    width: 25%;
    min-width: 12.5rem;
}

/* ─── No results (table) ─────────────────────────────────────────────────── */

._noResultsRow_1wzid_2107 {
    padding: 0 !important;
}

._noResults_1wzid_2107 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2.5rem 1.5rem;
    color: var(--text-disabled);
    font-size: 0.8125rem;
    text-align: center;
}

._noResultsClear_1wzid_2122 {
    margin-top: 0.25rem;
    padding: 0.25rem 0.75rem;
    background: transparent;
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.75rem;
    color: var(--blue-600);
    cursor: pointer;
    transition: all 0.15s;
}

._noResultsClear_1wzid_2122:hover {
    background: rgba(239, 246, 255, 0.5);
    border-color: var(--blue-600);
}

/* ─── Responsive: search & filters ───────────────────────────────────────── */

@media (max-width: 48rem) {
    ._filterChips_1wzid_2142 {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 0.25rem;
    }

    ._filterDivider_1wzid_2149 {
        display: none;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SORTING
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Sortable column headers ────────────────────────────────────────────── */

._thSortable_1wzid_2160 {
    cursor: pointer;
    user-select: none;
    transition: background 0.1s;
}

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

._thContent_1wzid_2170 {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

._sortArrow_1wzid_2176 {
    color: var(--blue-600);
    flex-shrink: 0;
    transition: transform 0.15s;
}

/* ─── Sort panel wrapper ─────────────────────────────────────────────────── */

._sortPanelWrapper_1wzid_2184 {
    position: relative;
}

._sortIndicator_1wzid_2188 {
    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);
}

/* ─── Sort panel dropdown ────────────────────────────────────────────────── */

._sortPanel_1wzid_2184 {
    position: absolute;
    top: calc(100% + 0.375rem);
    left: 0;
    z-index: 200;
    background: var(--surface-card);
    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_1wzid_2219 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._sortPanelTitle_1wzid_2225 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

._sortPanelClose_1wzid_2231 {
    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_1wzid_2231:hover {
    background: var(--slate-100);
    color: var(--text-secondary);
}

._sortPanelDesc_1wzid_2250 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* ─── Sort row ───────────────────────────────────────────────────────────── */

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

._sortRowLabel_1wzid_2265 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    white-space: nowrap;
    min-width: 5.625rem;
}

._sortSelect_1wzid_2272 {
    flex: 1;
    height: 2rem;
    padding: 0 0.625rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    cursor: pointer;
    transition: border-color 0.15s;
    min-width: 0;
}

._sortSelect_1wzid_2272:focus {
    border-color: var(--blue-600);
}

._sortDirBtn_1wzid_2291 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: var(--surface-card);
    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_1wzid_2291:hover {
    background: var(--surface-subtle);
    color: var(--blue-600);
    border-color: var(--blue-600);
}

._sortRemoveBtn_1wzid_2312 {
    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_1wzid_2312:hover {
    background: var(--error-50);
    border-color: var(--error-50);
    color: var(--error-500);
}

._sortClearAll_1wzid_2333 {
    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_1wzid_2333:hover {
    color: var(--text-primary);
}

/* ─── Responsive: sort panel ─────────────────────────────────────────────── */

@media (max-width: 48rem) {
    ._sortPanel_1wzid_2184 {
        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_1wzid_2259 {
        flex-wrap: wrap;
    }

    ._sortRowLabel_1wzid_2265 {
        min-width: 100%;
    }

    ._sortSelect_1wzid_2272 {
        flex: 1;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   SEARCH & FILTER PANEL (Jira-style)
   ═══════════════════════════════════════════════════════════════════════════ */

._searchIcon_1wzid_2381 {
    position: absolute;
    left: 0.625rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-disabled);
    pointer-events: none;
}

._searchInput_1wzid_2390 {
    width: 100%;
    height: 2.125rem;
    padding: 0 2rem 0 2.125rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

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

._searchInput_1wzid_2390:focus {
    border-color: var(--blue-600);
    box-shadow: 0 0 0 0.1875rem rgba(41, 135, 194, 0.1);
}

._searchClear_1wzid_2412 {
    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_1wzid_2412:hover {
    background: var(--border-subtle);
    color: var(--text-secondary);
}

/* ─── Filter panel wrapper ───────────────────────────────────────────────── */

._filterPanelWrapper_1wzid_2437 {
    position: relative;
}

._filterBadge_1wzid_2441 {
    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);
}

/* ─── Filter panel dropdown ──────────────────────────────────────────────── */

._filterPanel_1wzid_2437 {
    position: absolute;
    top: calc(100% + 0.375rem);
    left: 0;
    z-index: 200;
    background: var(--surface-card);
    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_1wzid_2472 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

._filterPanelTitle_1wzid_2478 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

._filterPanelClose_1wzid_2484 {
    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_1wzid_2484:hover {
    background: var(--slate-100);
    color: var(--text-secondary);
}

._filterPanelDesc_1wzid_2503 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    margin: 0;
    line-height: 1.4;
}

/* ─── Filter row ─────────────────────────────────────────────────────────── */

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

._filterSelect_1wzid_2518 {
    flex: 1;
    height: 2rem;
    padding: 0 0.625rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--border-subtle);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    outline: none;
    cursor: pointer;
    transition: border-color 0.15s;
    min-width: 0;
}

._filterSelect_1wzid_2518:focus {
    border-color: var(--blue-600);
}

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

._filterRemoveBtn_1wzid_2542 {
    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_1wzid_2542:hover {
    background: var(--error-50);
    border-color: var(--error-50);
    color: var(--error-500);
}

._filterAddBtn_1wzid_2563 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 2rem;
    padding: 0 0.75rem;
    background: var(--surface-card);
    border: 0.0417rem dashed var(--border-default);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: all 0.15s;
    width: fit-content;
}

._filterAddBtn_1wzid_2563:hover {
    background: var(--surface-subtle);
    border-color: var(--blue-600);
    color: var(--blue-600);
}

/* ─── Active filters bar ─────────────────────────────────────────────────── */

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

._filterResultCount_1wzid_2594 {
    font-size: 0.75rem;
    color: var(--text-disabled);
    white-space: nowrap;
}

._activeFilterTag_1wzid_2600 {
    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-size: 0.6875rem;
    color: var(--blue-600);
    white-space: nowrap;
}

._activeFilterRemove_1wzid_2614 {
    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_1wzid_2614:hover {
    background: rgba(41, 135, 194, 0.2);
}

._filterClearAll_1wzid_2633 {
    display: inline-flex;
    align-items: center;
    height: 1.5rem;
    padding: 0 0.625rem;
    background: var(--surface-card);
    border: 0.0417rem solid var(--error-50);
    border-radius: 0.375rem;
    font-size: 0.6875rem;
    color: var(--error-500);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

._filterClearAll_1wzid_2633:hover {
    background: var(--error-50);
    border-color: var(--error-500);
}

/* ─── Responsive: filter panel ───────────────────────────────────────────── */

@media (max-width: 48rem) {
    ._filterPanel_1wzid_2437 {
        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_1wzid_2512 {
        flex-wrap: wrap;
    }

    ._filterSelect_1wzid_2518 {
        flex: 1 1 calc(50% - 1.25rem);
    }

    ._searchBox_1wzid_2099 {
        width: 100%;
        min-width: 0;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   TOAST NOTIFICATIONS
   ═══════════════════════════════════════════════════════════════════════════ */

._toastContainer_1wzid_2686 {
    position: fixed;
    top: 4.5rem;
    right: 1.5rem;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    pointer-events: none;
}

._toast_1wzid_2686 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    background: var(--surface-card);
    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_1wzid_1 0.25s ease-out;
    max-width: 22.5rem;
}

._toast_success_1wzid_2711 {
    border-left-color: var(--success-500);
}

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

._toast_info_1wzid_2719 {
    border-left-color: var(--blue-600);
}

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

._toastClose_1wzid_2730 {
    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_1wzid_2730:hover {
    background: var(--slate-100);
    color: var(--text-secondary);
}

@keyframes _toastIn_1wzid_1 {
    from {
        opacity: 0;
        transform: translateX(1.25rem);
    }

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

@media (max-width: 30rem) {
    ._toastContainer_1wzid_2686 {
        right: 0.75rem;
        left: 0.75rem;
    }

    ._toast_1wzid_2686 {
        max-width: 100%;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   BULK SELECTION
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Checkbox ───────────────────────────────────────────────────────────── */

._thCheck_1wzid_2779,
._tdCheck_1wzid_2780 {
    width: 2.5rem;
    padding: 0.625rem 0.75rem;
    text-align: center;
    vertical-align: middle;
    border-bottom: 0.0417rem solid var(--border-subtle);
}

._thCheck_1wzid_2779 {
    background: var(--surface-card);
    font-size: 0.75rem;
}

/* Hide checkboxes by default, show on hover or selection mode */
._thCheck_1wzid_2779 ._checkboxBox_1wzid_2794,
._tdCheck_1wzid_2780 ._checkboxBox_1wzid_2794 {
    opacity: 0;
    transition: opacity 0.15s;
}

._thCheck_1wzid_2779:hover ._checkboxBox_1wzid_2794,
._tr_1wzid_450:hover ._tdCheck_1wzid_2780 ._checkboxBox_1wzid_2794,
._trChecked_1wzid_2802 ._tdCheck_1wzid_2780 ._checkboxBox_1wzid_2794,
._tableSelectionMode_1wzid_2803 ._thCheck_1wzid_2779 ._checkboxBox_1wzid_2794,
._tableSelectionMode_1wzid_2803 ._tdCheck_1wzid_2780 ._checkboxBox_1wzid_2794 {
    opacity: 1;
}

._checkboxLabel_1wzid_2808 {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

._checkboxInput_1wzid_2815 {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

._checkboxBox_1wzid_2794 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    background: var(--surface-card);
    border: 0.0938rem solid var(--border-default);
    border-radius: 0.25rem;
    transition: all 0.15s;
    color: white;
}

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

._checkboxBoxActive_1wzid_2840 {
    background: var(--blue-600);
    border-color: var(--blue-600);
}

/* ─── Selection mode class on table ──────────────────────────────────────── */

._tableSelectionMode_1wzid_2803 {
    /* marker class — used by child selectors above */
}

/* ─── Row checked state ──────────────────────────────────────────────────── */

._trChecked_1wzid_2802 {
    background: rgba(239, 246, 255, 0.4) !important;
}

/* ─── Bulk action bar ────────────────────────────────────────────────────── */

._bulkBar_1wzid_2859 {
    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_1wzid_1 0.2s ease-out;
}

._bulkCount_1wzid_2875 {
    font-size: 0.8125rem;
    color: white;
    white-space: nowrap;
}

._bulkDeselectBtn_1wzid_2881 {
    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-size: 0.75rem;
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

._bulkDeselectBtn_1wzid_2881:hover {
    background: rgba(255, 255, 255, 0.15);
    color: white;
}

._bulkDeleteBtn_1wzid_2899 {
    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-size: 0.75rem;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

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

._bulkEditBtn_1wzid_2919 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 1.875rem;
    padding: 0 0.875rem;
    background: var(--action-primary-bg, var(--blue-600));
    border: none;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-inverse);
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

._bulkEditBtn_1wzid_2919:hover {
    background: var(--action-primary-bg-active, var(--blue-700));
}

@keyframes _bulkBarIn_1wzid_1 {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(0.75rem);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

@media (max-width: 30rem) {
    ._bulkBar_1wzid_2859 {
        left: 0.75rem;
        right: 0.75rem;
        transform: none;
        bottom: 0.75rem;
    }

    @keyframes _bulkBarIn_1wzid_1 {
        from {
            opacity: 0;
            transform: translateY(0.75rem);
        }

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

/* ─── View Toggle (table / cards) ────────────────────────────────────── */

._viewToggle_1wzid_2974 {
    display: flex;
    align-items: stretch;
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
    overflow: hidden;
}

._viewToggleBtn_1wzid_2982 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 26px;
    background: var(--surface-card);
    border: none;
    cursor: pointer;
    color: var(--text-tertiary);
    padding: 0;
    transition: background 0.15s ease, color 0.15s ease;
}

._viewToggleBtn_1wzid_2982:not(:first-child) {
    border-left: 0.667px solid var(--border-subtle);
}

._viewToggleBtn_1wzid_2982:hover:not(._viewToggleBtnActive_1wzid_3000) {
    background: var(--surface-subtle);
}

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

/* ─── Server Cards (workload-level view) ─────────────────────────────── */

._serverCardsGrid_1wzid_3011 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(20.5rem, 1fr));
    gap: 1.25rem;
    padding: 0.5rem 0;
}

._serverCard_1wzid_3011 {
    background: var(--surface-card);
    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_1wzid_3011: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_1wzid_3038 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-bottom: 8px;
    border-bottom: 0.667px solid var(--border-subtle);
}

._serverCardNameRow_1wzid_3046 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._serverCardSvgIcon_1wzid_3052 {
    flex-shrink: 0;
    color: var(--slate-900);
}

._serverCardTitle_1wzid_3057 {
    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_1wzid_3070 {
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    padding: 2px 8px;
    border-radius: 9999px;
    white-space: nowrap;
    flex-shrink: 0;
}

._serverCardIp_1wzid_3080 {
    font-family: var(--font-family-mono);
    font-size: 11px;
    font-weight: 400;
    line-height: 16.5px;
    color: var(--text-tertiary);
    margin: 0;
}

/* ─── Status + Uptime row ───────────────────────────────────────────────── */

._serverCardStatusRow_1wzid_3091 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
}

._serverCardStatusInline_1wzid_3098 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._serverCardStatusDot_1wzid_3104 {
    width: 6px;
    height: 6px;
    border-radius: 9999px;
    flex-shrink: 0;
}

._serverCardStatusText_1wzid_3111 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
}

._serverCardUptime_1wzid_3117 {
    font-size: 11px;
    line-height: 16.5px;
    margin: 0;
}

._serverCardUptimeLabel_1wzid_3123 {
    color: var(--text-tertiary);
    font-weight: 400;
}

._serverCardUptimeValue_1wzid_3128 {
    color: var(--slate-900);
    font-weight: 500;
}

/* ─── Detail rows section ───────────────────────────────────────────────── */

._serverCardDetails_1wzid_3135 {
    display: flex;
    flex-direction: column;
    margin-top: 4px;
}

._serverCardDetailRow_1wzid_3141 {
    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_1wzid_3151 {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 6px 0;
    min-height: auto;
}

._serverCardDetailRowLast_1wzid_3158 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 0 0 0;
    min-height: 32px;
}

._serverCardDetailLabel_1wzid_3167 {
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    color: var(--text-tertiary);
    letter-spacing: 0.55px;
    flex-shrink: 0;
}

._serverCardDetailValue_1wzid_3176 {
    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_1wzid_3187 {
    font-family: var(--font-family-mono);
    font-size: 11px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-800);
    text-align: right;
}

._serverCardStatusDotSmall_1wzid_3196 {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 9999px;
    margin-right: 6px;
    vertical-align: middle;
}

/* ─── Bar metrics (CPU / Disco) ─────────────────────────────────────────── */

._serverCardBarGroup_1wzid_3207 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._serverCardBarTrack_1wzid_3213 {
    width: 80px;
    height: 6px;
    background: var(--border-subtle);
    border-radius: 9999px;
    overflow: hidden;
    flex-shrink: 0;
}

._serverCardBarFill_1wzid_3222 {
    height: 100%;
    border-radius: 9999px;
    transition: width 0.3s ease;
}

._serverCardBarValue_1wzid_3228 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--slate-700);
    text-align: right;
    min-width: 28px;
}

/* ─── Workload chips in card ────────────────────────────────────────────── */

._serverCardChips_1wzid_3239 {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: flex-end;
    flex: 1;
}

._serverCardChip_1wzid_3239 {
    font-size: 10px;
    font-weight: 500;
    line-height: 16px;
    padding: 2px 8px;
    border-radius: 9999px;
    white-space: nowrap;
}

._serverCardChipMore_1wzid_3256 {
    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_1wzid_3270 {
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
}

._serverCardOriginIcon_1wzid_3277 {
    flex-shrink: 0;
    color: var(--slate-900);
}

._serverCardOriginText_1wzid_3282 {
    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_1wzid_3294 {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 0 0 0;
    margin-top: 4px;
    border-top: 0.667px dashed var(--border-subtle);
    font-size: 10px;
    font-weight: 500;
    color: var(--slate-400);
    letter-spacing: 0.2px;
}

._serverCardFooter_1wzid_3294 svg {
    color: var(--slate-400);
    flex-shrink: 0;
}

._serverCardFooterHint_1wzid_3312 {
    color: var(--border-default);
}


/* ─── Skeleton Loading ──────────────────────────────────────────────────── */

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

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

._skeletonContainer_1wzid_3329 {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 16px 0;
}

._skeletonToolbar_1wzid_3336 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._skeletonBtn_1wzid_3342 {
    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_1wzid_1 1.5s infinite ease-in-out;
}

._skeletonTable_1wzid_3351 {
    display: flex;
    flex-direction: column;
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
    overflow: hidden;
}

._skeletonTableHeader_1wzid_3359 {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--surface-subtle);
    border-bottom: 0.667px solid var(--border-subtle);
}

._skeletonHeaderCell_1wzid_3368 {
    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_1wzid_1 1.5s infinite ease-in-out;
}

._skeletonTableRow_1wzid_3377 {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 0.667px solid var(--slate-100);
}

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

._skeletonCell_1wzid_3389 {
    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_1wzid_1 1.5s infinite ease-in-out;
}

._skeletonTableRow_1wzid_3377:nth-child(odd) ._skeletonCell_1wzid_3389 {
    animation-delay: 0.15s;
}

._truncateCell_1wzid_3402 {
    display: block;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}._overlay_idf1a_1 {
  position: fixed;
  inset: 0;
  background: var(--surface-overlay);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1.5rem;
}

._modal_idf1a_12 {
  background: var(--surface-card);
  border-radius: 16px;
  width: 100%;
  max-width: 680px;
  max-height: 85vh;
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow-lg);
  animation: _slideUp_idf1a_1 0.2s ease;
}

@keyframes _slideUp_idf1a_1 {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

._header_idf1a_29 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 20px 24px 16px;
  border-bottom: 1px solid var(--border-subtle);
}

._headerLeft_idf1a_37 {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

._headerIcon_idf1a_43 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--surface-ai);
  color: var(--action-ai-bg);
  flex-shrink: 0;
}

._title_idf1a_55 {
  font-size: 15px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}

._subtitle_idf1a_62 {
  font-size: 12.5px;
  color: var(--text-tertiary);
  margin: 2px 0 0;
}

._closeBtn_idf1a_68 {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  background: none;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-tertiary);
  cursor: pointer;
}

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

._body_idf1a_85 {
  padding: 16px 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow-y: auto;
  flex: 1;
}

._loadingCenter_idf1a_94 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 32px 0;
}

._emptyState_idf1a_101 {
  text-align: center;
  padding: 24px 0;
  font-size: 13px;
  color: var(--text-tertiary);
}

._selectAllRow_idf1a_108 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 8px;
}

._checkboxLabel_idf1a_115 {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

._checkbox_idf1a_115 {
  width: 18px;
  height: 18px;
  border-radius: 5px;
  border: 1.5px solid var(--border-default);
  display: grid;
  place-items: center;
  font-size: 11px;
  color: var(--text-inverse);
  transition: all 0.15s;
  flex-shrink: 0;
}

._checkboxChecked_idf1a_135 {
  background: var(--action-ai-bg);
  border-color: var(--action-ai-bg);
}

._selectAllText_idf1a_140 {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
}

._selectedCount_idf1a_146 {
  font-size: 12px;
  color: var(--text-tertiary);
}

._documentList_idf1a_151 {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

._documentItem_idf1a_157 {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 10px;
  cursor: pointer;
  transition: border-color 0.15s;
}

._documentItem_idf1a_157:hover {
  border-color: var(--border-default);
}

._fileIcon_idf1a_172 {
  color: var(--text-disabled);
  flex-shrink: 0;
}

._fileInfo_idf1a_177 {
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex: 1;
  min-width: 0;
}

._fileName_idf1a_185 {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._fileMeta_idf1a_194 {
  font-size: 11.5px;
  color: var(--text-disabled);
}

._infoNote_idf1a_199 {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 12px 14px;
  background: var(--surface-subtle);
  border-radius: 10px;
  font-size: 12.5px;
  color: var(--text-tertiary);
  line-height: 1.5;
}

._infoIcon_idf1a_211 {
  flex-shrink: 0;
  font-size: 14px;
}

._footer_idf1a_216 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px;
  border-top: 1px solid var(--border-subtle);
  gap: 12px;
  flex-wrap: nowrap;
}

._footerInfo_idf1a_226 {
  font-size: 12px;
  color: var(--text-tertiary);
  white-space: nowrap;
}

._footerActions_idf1a_232 {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}

._cancelBtn_idf1a_238 {
  height: 34px;
  padding: 0 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-card);
  font-size: 13px;
  font-weight: 500;
  color: var(--text-secondary);
  cursor: pointer;
}

._cancelBtn_idf1a_238:hover {
  border-color: var(--border-default);
}

._primaryBtn_idf1a_254 {
  height: 34px;
  padding: 0 16px;
  border: none;
  border-radius: 8px;
  background: var(--action-ai-bg);
  font-size: 13px;
  font-weight: 600;
  color: var(--action-ai-text);
  cursor: pointer;
  transition: opacity 0.15s;
  white-space: nowrap;
}

._primaryBtn_idf1a_254:hover {
  opacity: 0.9;
}

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

/* Reused project spinner */
._spinner_idf1a_278 {
  width: 20px;
  height: 20px;
  border: 2px solid var(--border-default);
  border-top-color: var(--action-ai-bg);
  border-radius: 50%;
  animation: _spin_idf1a_278 0.7s linear infinite;
}

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

.react-datepicker__navigation-icon::before, .react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-year-read-view--down-arrow {
  border-color: #ccc;
  border-style: solid;
  border-width: 3px 3px 0 0;
  content: "";
  display: block;
  height: 9px;
  position: absolute;
  top: 6px;
  width: 9px;
}
.react-datepicker__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.react-datepicker-wrapper {
  display: inline-block;
  padding: 0;
  border: 0;
}

.react-datepicker {
  font-family: "Helvetica Neue", helvetica, arial, sans-serif;
  font-size: 0.8rem;
  background-color: #fff;
  color: #000;
  border: 1px solid #aeaeae;
  border-radius: 0.3rem;
  display: inline-block;
  position: relative;
  line-height: initial;
}

.react-datepicker--time-only .react-datepicker__time-container {
  border-left: 0;
}
.react-datepicker--time-only .react-datepicker__time,
.react-datepicker--time-only .react-datepicker__time-box {
  border-bottom-left-radius: 0.375em;
  border-bottom-right-radius: 0.375em;
}

.react-datepicker-popper {
  z-index: 1;
  line-height: 0;
}
.react-datepicker-popper .react-datepicker__triangle {
  stroke: #aeaeae;
}
.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle {
  fill: #f0f0f0;
  color: #f0f0f0;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle {
  fill: #fff;
  color: #fff;
}
.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle, .react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle {
  fill: #fff;
  color: #fff;
}
.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle {
  fill: #f0f0f0;
  color: #f0f0f0;
}

.react-datepicker__header {
  text-align: center;
  background-color: #f0f0f0;
  border-bottom: 1px solid #aeaeae;
  border-top-left-radius: 0.3rem;
  padding: 8px 0;
  position: relative;
}
.react-datepicker__header--time {
  padding-bottom: 8px;
  padding-left: 5px;
  padding-right: 5px;
}
.react-datepicker__header--time:not(.react-datepicker__header--time--only) {
  border-top-left-radius: 0;
}
.react-datepicker__header:not(.react-datepicker__header--has-time-select, .react-datepicker__header--middle, .react-datepicker__header--bottom) {
  border-top-right-radius: 0.3rem;
}
.react-datepicker__header--middle {
  border-top: 1px solid #aeaeae;
  border-radius: 0;
  margin-top: 4px;
}
.react-datepicker__header--bottom {
  border-bottom: none;
  border-top: 1px solid #aeaeae;
  border-radius: 0 0 0.3rem 0.3rem;
}

.react-datepicker__header-wrapper {
  position: relative;
}
.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button) {
  right: 2px;
}

.react-datepicker__year-dropdown-container--select,
.react-datepicker__month-dropdown-container--select,
.react-datepicker__month-year-dropdown-container--select,
.react-datepicker__year-dropdown-container--scroll,
.react-datepicker__month-dropdown-container--scroll,
.react-datepicker__month-year-dropdown-container--scroll {
  display: inline-block;
  margin: 0 15px;
}

.react-datepicker__month-select,
.react-datepicker__year-select,
.react-datepicker__month-year-select {
  background-color: transparent;
  border: 1px solid #aeaeae;
  border-radius: 0.3rem;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
  font-size: inherit;
  margin-top: 5px;
  padding: 2px 5px;
}
.react-datepicker__month-select:focus-visible,
.react-datepicker__year-select:focus-visible,
.react-datepicker__month-year-select:focus-visible {
  outline: auto 1px;
}

.react-datepicker__current-month,
.react-datepicker-time__header,
.react-datepicker-year-header {
  margin-top: 0;
  color: #000;
  font-weight: bold;
  font-size: 0.944rem;
}

h2.react-datepicker__current-month {
  padding: 0;
  margin: 0;
}

.react-datepicker-time__header {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.react-datepicker__navigation {
  align-items: center;
  background: none;
  display: flex;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  position: absolute;
  top: 2px;
  padding: 0;
  border: none;
  z-index: 1;
  height: 32px;
  width: 32px;
  text-indent: -999em;
  overflow: hidden;
}
.react-datepicker__navigation--previous {
  left: 2px;
}
.react-datepicker__navigation--next {
  right: 2px;
}
.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button) {
  right: 85px;
}
.react-datepicker__navigation--years {
  position: relative;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.react-datepicker__navigation--years-previous {
  top: 4px;
}
.react-datepicker__navigation--years-upcoming {
  top: -4px;
}
.react-datepicker__navigation:hover *::before {
  border-color: rgb(165.75, 165.75, 165.75);
}

.react-datepicker__navigation-icon {
  position: relative;
  top: -1px;
  font-size: 20px;
  width: 0;
}
.react-datepicker__navigation-icon--next {
  left: -2px;
}
.react-datepicker__navigation-icon--next::before {
  transform: rotate(45deg);
  left: -7px;
}
.react-datepicker__navigation-icon--previous {
  right: -2px;
}
.react-datepicker__navigation-icon--previous::before {
  transform: rotate(225deg);
  right: -7px;
}

.react-datepicker__month-container {
  float: left;
}

.react-datepicker__year {
  margin: 0.5em;
  text-align: center;
}
.react-datepicker__year-wrapper {
  display: flex;
  flex-wrap: wrap;
  max-width: 180px;
}
.react-datepicker__year .react-datepicker__year-text {
  display: inline-block;
  width: 5em;
  margin: 2px;
}

.react-datepicker__month {
  margin: 0.5em;
  text-align: center;
}
.react-datepicker__month .react-datepicker__month-text,
.react-datepicker__month .react-datepicker__quarter-text {
  display: inline-block;
  width: 5em;
  margin: 2px;
}

.react-datepicker__input-time-container {
  clear: both;
  width: 100%;
  float: left;
  margin: 5px 0 10px 15px;
  text-align: left;
}
.react-datepicker__input-time-container .react-datepicker-time__caption {
  display: inline-block;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container {
  display: inline-block;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input {
  display: inline-block;
  margin-left: 10px;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input {
  width: auto;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time] {
  -moz-appearance: textfield;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter {
  margin-left: 5px;
  display: inline-block;
}

.react-datepicker__time-container {
  float: right;
  border-left: 1px solid #aeaeae;
  width: 85px;
}
.react-datepicker__time-container--with-today-button {
  display: inline;
  border: 1px solid #aeaeae;
  border-radius: 0.375em;
  position: absolute;
  right: -87px;
  top: 0;
}
.react-datepicker__time-container .react-datepicker__time {
  position: relative;
  background: white;
  border-bottom-right-radius: 0.375em;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box {
  width: 85px;
  overflow-x: hidden;
  margin: 0 auto;
  text-align: center;
  border-bottom-right-radius: 0.375em;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list {
  list-style: none;
  margin: 0;
  height: calc(195px + 2.125em / 2);
  overflow-y: scroll;
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  box-sizing: content-box;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item {
  height: 30px;
  padding: 5px 10px;
  white-space: nowrap;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover {
  cursor: pointer;
  background-color: #f0f0f0;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected {
  background-color: #216ba5;
  color: white;
  font-weight: bold;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover {
  background-color: #216ba5;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled {
  color: #ccc;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover {
  cursor: default;
  background-color: transparent;
}

.react-datepicker__week-number {
  color: #ccc;
  display: inline-block;
  width: 2.125em;
  line-height: 2.125em;
  text-align: center;
  margin: 0.208em;
}
.react-datepicker__week-number.react-datepicker__week-number--clickable {
  cursor: pointer;
}
.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover {
  border-radius: 0.3rem;
  background-color: #f0f0f0;
}
.react-datepicker__week-number--selected {
  border-radius: 0.3rem;
  background-color: #216ba5;
  color: #fff;
}
.react-datepicker__week-number--selected:hover {
  background-color: rgb(28.75, 93.2196969697, 143.75);
}

.react-datepicker__day-names {
  text-align: center;
  white-space: nowrap;
  margin-bottom: -8px;
}

.react-datepicker__week {
  white-space: nowrap;
}

.react-datepicker__day-name,
.react-datepicker__day,
.react-datepicker__time-name {
  color: #000;
  display: inline-block;
  width: 2.125em;
  line-height: 2.125em;
  text-align: center;
  margin: 0.208em;
}
.react-datepicker__day-name--disabled,
.react-datepicker__day--disabled,
.react-datepicker__time-name--disabled {
  cursor: default;
  color: #ccc;
}

.react-datepicker__day,
.react-datepicker__month-text,
.react-datepicker__quarter-text,
.react-datepicker__year-text {
  cursor: pointer;
}
.react-datepicker__day:not([aria-disabled=true]):hover,
.react-datepicker__month-text:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text:not([aria-disabled=true]):hover,
.react-datepicker__year-text:not([aria-disabled=true]):hover {
  border-radius: 0.3rem;
  background-color: #f0f0f0;
}
.react-datepicker__day--today,
.react-datepicker__month-text--today,
.react-datepicker__quarter-text--today,
.react-datepicker__year-text--today {
  font-weight: bold;
}
.react-datepicker__day--highlighted,
.react-datepicker__month-text--highlighted,
.react-datepicker__quarter-text--highlighted,
.react-datepicker__year-text--highlighted {
  border-radius: 0.3rem;
  background-color: #3dcc4a;
  color: #fff;
}
.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,
.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,
.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover {
  background-color: rgb(49.8551020408, 189.6448979592, 62.5632653061);
}
.react-datepicker__day--highlighted-custom-1,
.react-datepicker__month-text--highlighted-custom-1,
.react-datepicker__quarter-text--highlighted-custom-1,
.react-datepicker__year-text--highlighted-custom-1 {
  color: magenta;
}
.react-datepicker__day--highlighted-custom-2,
.react-datepicker__month-text--highlighted-custom-2,
.react-datepicker__quarter-text--highlighted-custom-2,
.react-datepicker__year-text--highlighted-custom-2 {
  color: green;
}
.react-datepicker__day--holidays,
.react-datepicker__month-text--holidays,
.react-datepicker__quarter-text--holidays,
.react-datepicker__year-text--holidays {
  position: relative;
  border-radius: 0.3rem;
  background-color: #ff6803;
  color: #fff;
}
.react-datepicker__day--holidays .overlay,
.react-datepicker__month-text--holidays .overlay,
.react-datepicker__quarter-text--holidays .overlay,
.react-datepicker__year-text--holidays .overlay {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #333;
  color: #fff;
  padding: 4px;
  border-radius: 4px;
  white-space: nowrap;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s, opacity 0.3s ease-in-out;
}
.react-datepicker__day--holidays:not([aria-disabled=true]):hover,
.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,
.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover {
  background-color: rgb(207, 82.9642857143, 0);
}
.react-datepicker__day--holidays:hover .overlay,
.react-datepicker__month-text--holidays:hover .overlay,
.react-datepicker__quarter-text--holidays:hover .overlay,
.react-datepicker__year-text--holidays:hover .overlay {
  visibility: visible;
  opacity: 1;
}
.react-datepicker__day--selected, .react-datepicker__day--in-selecting-range, .react-datepicker__day--in-range,
.react-datepicker__month-text--selected,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--selected,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--selected,
.react-datepicker__year-text--in-selecting-range,
.react-datepicker__year-text--in-range {
  border-radius: 0.3rem;
  background-color: #216ba5;
  color: #fff;
}
.react-datepicker__day--selected:not([aria-disabled=true]):hover, .react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover, .react-datepicker__day--in-range:not([aria-disabled=true]):hover,
.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,
.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,
.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,
.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,
.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,
.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover {
  background-color: rgb(28.75, 93.2196969697, 143.75);
}
.react-datepicker__day--keyboard-selected,
.react-datepicker__month-text--keyboard-selected,
.react-datepicker__quarter-text--keyboard-selected,
.react-datepicker__year-text--keyboard-selected {
  border-radius: 0.3rem;
  background-color: rgb(186.25, 217.0833333333, 241.25);
  color: rgb(0, 0, 0);
}
.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,
.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,
.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,
.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover {
  background-color: rgb(28.75, 93.2196969697, 143.75);
  color: #fff;
}
.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range),
.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range),
.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range),
.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range) {
  background-color: rgba(33, 107, 165, 0.5);
}
.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range), .react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range) {
  background-color: #f0f0f0;
  color: #000;
}
.react-datepicker__day--disabled,
.react-datepicker__month-text--disabled,
.react-datepicker__quarter-text--disabled,
.react-datepicker__year-text--disabled {
  cursor: default;
  color: #ccc;
}
.react-datepicker__day--disabled .overlay,
.react-datepicker__month-text--disabled .overlay,
.react-datepicker__quarter-text--disabled .overlay,
.react-datepicker__year-text--disabled .overlay {
  position: absolute;
  bottom: 70%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #333;
  color: #fff;
  padding: 4px;
  border-radius: 4px;
  white-space: nowrap;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s, opacity 0.3s ease-in-out;
}

.react-datepicker__input-container {
  position: relative;
  display: inline-block;
  width: 100%;
}
.react-datepicker__input-container .react-datepicker__calendar-icon {
  position: absolute;
  padding: 0.625em;
  box-sizing: content-box;
}

.react-datepicker__view-calendar-icon input {
  padding: 6px 10px 5px 25px;
}

.react-datepicker__year-read-view,
.react-datepicker__month-read-view,
.react-datepicker__month-year-read-view {
  border: 1px solid transparent;
  border-radius: 0.3rem;
  position: relative;
}
.react-datepicker__year-read-view:hover,
.react-datepicker__month-read-view:hover,
.react-datepicker__month-year-read-view:hover {
  cursor: pointer;
}
.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,
.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow {
  border-top-color: rgb(178.5, 178.5, 178.5);
}
.react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-year-read-view--down-arrow {
  transform: rotate(135deg);
  right: -16px;
  top: 0;
}

.react-datepicker__year-dropdown,
.react-datepicker__month-dropdown,
.react-datepicker__month-year-dropdown {
  background-color: #f0f0f0;
  position: absolute;
  width: 50%;
  left: 25%;
  top: 30px;
  z-index: 1;
  text-align: center;
  border-radius: 0.3rem;
  border: 1px solid #aeaeae;
}
.react-datepicker__year-dropdown:hover,
.react-datepicker__month-dropdown:hover,
.react-datepicker__month-year-dropdown:hover {
  cursor: pointer;
}
.react-datepicker__year-dropdown--scrollable,
.react-datepicker__month-dropdown--scrollable,
.react-datepicker__month-year-dropdown--scrollable {
  height: 150px;
  overflow-y: scroll;
}

.react-datepicker__year-option,
.react-datepicker__month-option,
.react-datepicker__month-year-option {
  line-height: 20px;
  width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.react-datepicker__year-option:first-of-type,
.react-datepicker__month-option:first-of-type,
.react-datepicker__month-year-option:first-of-type {
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
}
.react-datepicker__year-option:last-of-type,
.react-datepicker__month-option:last-of-type,
.react-datepicker__month-year-option:last-of-type {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border-bottom-left-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}
.react-datepicker__year-option:hover,
.react-datepicker__month-option:hover,
.react-datepicker__month-year-option:hover {
  background-color: #ccc;
}
.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,
.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,
.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming {
  border-bottom-color: rgb(178.5, 178.5, 178.5);
}
.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,
.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,
.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous {
  border-top-color: rgb(178.5, 178.5, 178.5);
}
.react-datepicker__year-option--selected,
.react-datepicker__month-option--selected,
.react-datepicker__month-year-option--selected {
  position: absolute;
  left: 15px;
}

.react-datepicker__close-icon {
  cursor: pointer;
  background-color: transparent;
  border: 0;
  outline: 0;
  padding: 0 6px 0 0;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  display: table-cell;
  vertical-align: middle;
}
.react-datepicker__close-icon::after {
  cursor: pointer;
  background-color: #216ba5;
  color: #fff;
  border-radius: 50%;
  height: 16px;
  width: 16px;
  padding: 2px;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  content: "×";
}
.react-datepicker__close-icon--disabled {
  cursor: default;
}
.react-datepicker__close-icon--disabled::after {
  cursor: default;
  background-color: #ccc;
}

.react-datepicker__today-button {
  background: #f0f0f0;
  border-top: 1px solid #aeaeae;
  cursor: pointer;
  text-align: center;
  font-weight: bold;
  padding: 5px 0;
  clear: left;
}

.react-datepicker__portal {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  left: 0;
  top: 0;
  justify-content: center;
  align-items: center;
  display: flex;
  z-index: 2147483647;
}

.react-datepicker__children-container {
  width: 17.25em;
  margin: 0.5em;
  padding-right: 0.25em;
  padding-left: 0.25em;
  height: auto;
}

.react-datepicker__aria-live {
  position: absolute;
  clip-path: circle(0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  width: 1px;
  white-space: nowrap;
}

.react-datepicker__calendar-icon {
  width: 1em;
  height: 1em;
  vertical-align: -0.125em;
}

.react-datepicker-popper-offset {
  margin-top: -0.7em;
}
/* ─── AuditLogList ────────────────────────────────────────────────────────── */
._auditLogList_v1nmq_2 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

/* ─── Filters ─────────────────────────────────────────────────────────────── */
._filtersRow_v1nmq_9 {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
  flex-wrap: wrap;
}

._advancedFilters_v1nmq_16 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
  background: var(--slate-50);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
}

._filtersGrid_v1nmq_26 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
  gap: 0.75rem;
}

._filterField_v1nmq_32 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._filterLabel_v1nmq_38 {
  font-size: 0.6875rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

._filterInput_v1nmq_44 {
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  width: 100%;
  min-width: 0;
  background: white;
}

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

._filterSelect_v1nmq_59 {
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  width: 100%;
  min-width: 0;
  background: white;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748b' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.5rem center;
  padding-right: 1.75rem;
}

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

._filterSelect_v1nmq_59:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background-color: var(--slate-50);
}

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

._filterApplyButton_v1nmq_93 {
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  background: var(--action-primary-bg, #2987c2);
  color: white;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  transition: opacity 0.15s ease;
}

._filterApplyButton_v1nmq_93:hover {
  opacity: 0.9;
}

._filterClearButton_v1nmq_111 {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  background: white;
  color: var(--text-secondary);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  transition: all 0.15s ease;
}

._filterClearButton_v1nmq_111:hover {
  border-color: #EF4444;
  color: #EF4444;
}

._filterActions_v1nmq_86 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

._filterButton_v1nmq_137 {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  background: white;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--text-secondary);
  transition: all 0.15s ease;
}

._filterButton_v1nmq_137:hover {
  background: var(--slate-50);
  border-color: var(--action-primary-bg);
  color: var(--action-primary-bg);
}

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

/* ─── Day Groups ──────────────────────────────────────────────────────────── */
._dayGroup_v1nmq_163 {
  display: flex;
  flex-direction: column;
}

._dayLabel_v1nmq_168 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.75rem;
  display: block;
}

/* ─── Log Items ───────────────────────────────────────────────────────────── */
._logItem_v1nmq_179 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 0;
  border-bottom: 1px solid var(--border-subtle);
  cursor: pointer;
  transition: background 0.15s ease;
}

._logItem_v1nmq_179:hover {
  background: var(--slate-50);
  margin: 0 -0.5rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  border-radius: 0.375rem;
}

._logIconColored_v1nmq_197 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  flex-shrink: 0;
}

._logAvatar_v1nmq_207 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  color: white;
  font-size: 0.625rem;
  font-weight: 700;
  flex-shrink: 0;
}

._logMessage_v1nmq_220 {
  font-size: 0.875rem;
  color: var(--slate-900);
  flex: 1;
  line-height: 1.4;
}

._logTime_v1nmq_227 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  white-space: nowrap;
}

/* ─── Detail Panel ────────────────────────────────────────────────────────── */
._detailPanel_v1nmq_234 {
  padding: 1.25rem;
  background: var(--slate-50);
  border-radius: 0.5rem;
  margin: 0.5rem 0 1rem;
  border-left: 3px solid var(--action-primary-bg);
}

._detailTitle_v1nmq_242 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

._detailGrid_v1nmq_250 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin-top: 1rem;
}

._detailLabel_v1nmq_257 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._detailValue_v1nmq_262 {
  font-size: 0.875rem;
  font-weight: 600;
  margin: 0.375rem 0 0;
}

._detailActorRow_v1nmq_268 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.375rem;
}

._detailActorAvatar_v1nmq_275 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  color: white;
  font-size: 0.5625rem;
  font-weight: 700;
}

._detailActionRow_v1nmq_287 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.375rem;
}

._detailDiffSection_v1nmq_294 {
  margin-top: 1rem;
}

._detailDiffPre_v1nmq_298 {
  background: #1e293b;
  color: #e2e8f0;
  padding: 1rem;
  border-radius: 0.5rem;
  font-size: 0.75rem;
  margin-top: 0.5rem;
  overflow: auto;
  line-height: 1.6;
}

._detailCloseBtn_v1nmq_309 {
  background: none;
  border: none;
  color: var(--action-primary-bg);
  font-size: 0.8125rem;
  cursor: pointer;
  margin-top: 1rem;
  padding: 0;
}

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

/* ─── States ─────────────────────────────────────────────────────────────── */
._loadingState_v1nmq_324 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 3rem;
  border-radius: 0.5rem;
  background: var(--slate-50);
  border: 1px solid var(--border-subtle);
  color: var(--text-tertiary);
  font-size: 0.875rem;
  font-weight: 500;
}

._loadingState_v1nmq_324 p {
  margin: 0;
}

._emptyState_v1nmq_343 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 3rem 1rem;
  color: var(--text-tertiary);
  font-size: 0.875rem;
}

._emptyState_v1nmq_343 p {
  margin: 0;
}

/* ─── Spin animation ─────────────────────────────────────────────────────── */
@keyframes _spin_v1nmq_1 {
  to {
    transform: rotate(360deg);
  }
}
._banner_12omb_1 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: var(--color-stale-bg-hover);
  border: 0.0625rem solid var(--color-stale);
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
  margin-top: -0.5rem;
}

._icon_12omb_13 {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  color: var(--color-stale);
}

._content_12omb_20 {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

._title_12omb_29 {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-stale-dark);
  margin: 0;
}

._message_12omb_36 {
  font-size: 0.75rem;
  color: var(--color-stale-darker);
  margin: 0;
}

._dismissButton_12omb_42 {
  flex-shrink: 0;
  align-self: center;
  padding: 0.375rem 0.75rem;
  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_12omb_42:hover {
  background: var(--color-stale-dark);
  color: white;
}
/* ProjectDetailsScreen.module.css */

._projectDetailsScreen_1e0oe_3 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  overflow: hidden;
}

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

._contentWrapper_1e0oe_18 {
  flex: 1;
  background: var(--surface-page);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

._content_1e0oe_18 {
  flex: 1;
  padding: 0 1.5rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Main white card */
._mainCard_1e0oe_35 {
  display: flex;
  flex-direction: column;
  background: var(--surface-card);
  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_1e0oe_48 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  height: 3rem;
  padding: 0 1.5rem;
  background: var(--surface-card);
  border-bottom: 1px solid var(--border-subtle);
  flex-shrink: 0;
}

._entityIcon_1e0oe_59 {
  font-size: 1.25rem;
  line-height: 1;
}

._pulsingDot_1e0oe_64 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--success-500);
  animation: _pulseGreen_1e0oe_1 2s ease-in-out infinite;
  margin-left: -0.375rem;
}

@keyframes _pulseGreen_1e0oe_1 {

  0%,
  100% {
    background: var(--success-500);
    opacity: 1;
  }

  50% {
    background: var(--success-600);
    opacity: 0.5;
  }
}

._entityLabel_1e0oe_87 {
  font-size: 0.875rem;
  font-weight: 700;
  color: #1A1A21;
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
  line-height: 1.25rem;
  flex: 1;
  position: relative;
}

._entityLabelPrefix_1e0oe_98 {
  color: #1A1A21;
}

._entityLabelName_1e0oe_102 {
  color: #1A1A21;
}

html.dark ._entityLabelPrefix_1e0oe_98 {
  color: #FFFFFF;
}

html.dark ._entityLabelName_1e0oe_102 {
  color: #2DD4BF;
}

._entityIdTooltip_1e0oe_114 {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  background: var(--slate-800);
  color: var(--slate-200);
  font-family: var(--font-family-mono);
  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_1e0oe_114::before {
  content: '';
  position: absolute;
  left: 24px;
  top: -12px;
  border: 6px solid transparent;
  border-bottom-color: var(--slate-800);
}

._entityIdTooltip_1e0oe_114:active {
  background: var(--slate-700);
}

._entityLabel_1e0oe_87:hover ._entityIdTooltip_1e0oe_114 {
  opacity: 1;
  pointer-events: auto;
}

._entityId_1e0oe_114 {
  font-family: var(--font-family-mono);
  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_1e0oe_114:hover {
  background: rgba(0, 0, 0, 0.25);
  color: white;
}

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

._cardContent_1e0oe_177 {
  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_1e0oe_177._cardContentWithFixedFooter_1e0oe_191 {
  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_1e0oe_199 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 18.75rem;
}

._emptyStateText_1e0oe_206 {
  font-size: 1rem;
  color: var(--text-disabled);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  ._content_1e0oe_18 {
    padding: 1rem;
  }
}

/* Loading and Error States */
._loadingState_1e0oe_220,
._errorState_1e0oe_221 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: var(--slate-200);
}

._loadingState_1e0oe_220 p,
._errorState_1e0oe_221 p {
  font-size: 1rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

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

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

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

._retryButton_1e0oe_255,
._logoutButton_1e0oe_256 {
  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_1e0oe_255 {
  background: var(--blue-600);
  color: white;
}

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

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

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

/* Breadcrumb Container with Delete Button */
._breadcrumbContainer_1e0oe_285 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.5rem;
  margin-top: 0.375rem;
  margin-bottom: 0.25rem;
  flex-shrink: 0;
}

/* Delete Button */
._deleteButton_1e0oe_296 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--error-500);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._deleteButton_1e0oe_296:hover {
  background: rgba(239, 68, 68, 0.1);
}

/* Delete Confirmation */
._deleteConfirmation_1e0oe_317 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  background: var(--surface-page);
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
}

._confirmationText_1e0oe_327 {
  font-size: 0.875rem;
  color: var(--error-500);
  font-weight: 500;
}

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

._confirmYes_1e0oe_338,
._confirmNo_1e0oe_339 {
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: none;
}

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

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

._confirmNo_1e0oe_339 {
  background: var(--slate-100);
  color: var(--text-tertiary);
}

._confirmNo_1e0oe_339:hover {
  background: var(--slate-200);
}

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

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

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


/* --- History Drawer ------------------------------------------------------- */
._historyOverlay_1e0oe_387 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1000;
  display: flex;
  justify-content: flex-end;
  animation: _fadeIn_1e0oe_1 0.2s ease;
}

@keyframes _fadeIn_1e0oe_1 {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

._historyDrawer_1e0oe_410 {
  width: 30rem;
  max-width: 90vw;
  height: 100%;
  background: var(--surface-card);
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  animation: _slideIn_1e0oe_1 0.25s ease;
}

@keyframes _slideIn_1e0oe_1 {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0);
  }
}

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

._historyDrawerTitle_1e0oe_440 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
}

._historyDrawerClose_1e0oe_450 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  color: var(--text-tertiary);
  transition: background 0.15s;
}

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

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

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

._historyFilterLabel_1e0oe_483 {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-secondary);
}

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

._historyDateInput_1e0oe_495 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  background: var(--surface-card);
  flex: 1;
}

._historyDateField_1e0oe_506 {
  border: none;
  outline: none;
  font-size: 0.8125rem;
  color: var(--text-primary);
  background: transparent;
  width: 100%;
}

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

._historyDateSeparator_1e0oe_519 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  flex-shrink: 0;
}

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

._historyDayLabel_1e0oe_531 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.75rem;
}

._historyItem_1e0oe_540 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--border-subtle);
}

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

._historyAvatar_1e0oe_552 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  color: white;
  font-size: 0.625rem;
  font-weight: 700;
  flex-shrink: 0;
}

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

._historyItemContent_1e0oe_570 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  flex: 1;
  min-width: 0;
}

._historyItemText_1e0oe_578 {
  font-size: 0.8125rem;
  color: var(--slate-900);
  line-height: 1.4;
}

._historyItemTime_1e0oe_584 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  white-space: nowrap;
  flex-shrink: 0;
}

/* History Pagination */
._historyPagination_1e0oe_592 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.5rem;
  border-top: 1px solid var(--border-subtle);
  flex-shrink: 0;
}

._historyPaginationInfo_1e0oe_601 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

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

._historyPaginationBtn_1e0oe_612 {
  background: none;
  border: none;
  font-size: 0.8125rem;
  color: var(--action-primary-bg);
  cursor: pointer;
  padding: 0;
  transition: opacity 0.15s;
}

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

._historyPaginationBtn_1e0oe_612:hover:not(:disabled) {
  opacity: 0.8;
}

._historyPaginationPage_1e0oe_631 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}/* Skeleton Styles - Mapinator Design System */

._skeletonContainer_mwm7k_3 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}

/* Base skeleton animation */
@keyframes _shimmer_mwm7k_1 {
  0% {
    background-position: -62.5rem 0;
  }
  100% {
    background-position: 62.5rem 0;
  }
}

._skeletonText_mwm7k_20 {
  height: 1rem;
  background: linear-gradient(
    90deg,
    var(--slate-100) 0%,
    var(--surface-card) 50%,
    var(--slate-100) 100%
  );
  background-size: 62.5rem 100%;
  animation: _shimmer_mwm7k_1 2s infinite linear;
  border-radius: 0.375rem;
  width: 100%;
}

/* Card variant - Mapinator style */
._skeletonCard_mwm7k_35 {
  background: rgba(255, 255, 255, 0.95);
  border: 0.0625rem solid rgba(226, 232, 240, 0.8);
  border-radius: 1rem;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  box-shadow: 0rem 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.05), 0rem 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.05);
}

._skeletonCardHeader_mwm7k_46 {
  height: 1.75rem;
  width: 50%;
  background: linear-gradient(
    90deg,
    var(--blue-100) 0%,
    var(--blue-50) 50%,
    var(--blue-100) 100%
  );
  background-size: 62.5rem 100%;
  animation: _shimmer_mwm7k_1 2s infinite linear;
  border-radius: 0.5rem;
}

._skeletonCardBody_mwm7k_60 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* List variant - Mapinator style */
._skeletonListItem_mwm7k_67 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0625rem solid rgba(226, 232, 240, 0.8);
  border-radius: 0.75rem;
  box-shadow: 0rem 0.125rem 0.25rem -0.0625rem rgba(0, 0, 0, 0.05);
}

._skeletonAvatar_mwm7k_78 {
  width: 3rem;
  height: 3rem;
  border-radius: 0.75rem;
  background: linear-gradient(
    90deg,
    var(--blue-200) 0%,
    var(--blue-50) 50%,
    var(--blue-200) 100%
  );
  background-size: 62.5rem 100%;
  animation: _shimmer_mwm7k_1 2s infinite linear;
  flex-shrink: 0;
}

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

/* Table variant - Mapinator style */
._skeletonTable_mwm7k_101 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  background: rgba(255, 255, 255, 0.95);
  border: 0.0625rem solid rgba(226, 232, 240, 0.8);
  border-radius: 0.75rem;
  padding: 1.25rem;
  box-shadow: 0rem 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.05);
}

._skeletonTableRow_mwm7k_112 {
  display: flex;
  gap: 1rem;
  align-items: center;
}

._skeletonTableRow_mwm7k_112 ._skeletonText_mwm7k_20 {
  background: linear-gradient(
    90deg,
    var(--blue-100) 0%,
    var(--blue-50) 50%,
    var(--blue-100) 100%
  );
  background-size: 62.5rem 100%;
  animation: _shimmer_mwm7k_1 2s infinite linear;
}

/* Spinner variant - Full screen loading */
._spinnerContainer_mwm7k_130 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: var(--surface-subtle);
  position: relative;
  overflow: hidden;
}

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

@keyframes _moveBackground_mwm7k_1 {
  0% { transform: translate(0, 0); }
  100% { transform: translate(3.125rem, 3.125rem); }
}

/* Card de loading */
._spinnerCard_mwm7k_161 {
  background: var(--surface-card);
  padding: 3rem 4rem;
  border-radius: 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);
  position: relative;
  z-index: 1;
  text-align: center;
  border: 0.0625rem solid var(--border-subtle);
}

/* Spinner */
._spinner_mwm7k_130 {
  width: 3.5rem;
  height: 3.5rem;
  border: 0.3125rem solid var(--slate-200);
  border-top: 0.3125rem solid var(--action-primary-bg);
  border-radius: 50%;
  animation: _spin_mwm7k_130 0.8s linear infinite;
  margin: 0 auto 1.5rem;
}

@keyframes _spin_mwm7k_130 {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

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

/* Progress Bar */
._progressBar_mwm7k_196 {
  width: 100%;
  max-width: 25rem;
  height: 0.5rem;
  background: var(--slate-200);
  border-radius: 0.25rem;
  overflow: hidden;
  margin: 1.5rem auto 0;
}

._progressFill_mwm7k_206 {
  height: 100%;
  background: var(--action-primary-bg);
  border-radius: 0.25rem;
  transition: width 0.3s ease;
}
._container_14gfj_1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 0.5rem;
}

._centeredContent_14gfj_9 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  max-width: 37.5rem;
  text-align: center;
  margin-top: 2rem;
}

._iconContainer_14gfj_19 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  background: var(--indigo-700);
  border-radius: 50%;
  margin-bottom: 0.5rem;
}

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

._title_14gfj_36 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 2rem;
  margin: 0;
}

._description_14gfj_44 {
  font-size: 1rem;
  color: var(--text-tertiary);
  line-height: 1.5rem;
  margin: 0;
}

._generateButton_14gfj_51 {
  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-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  margin-top: 0.5rem;
}

._generateButton_14gfj_51:not(:disabled) {
  transition: opacity 0.2s ease-in-out;
}

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

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

._generateButton_14gfj_51:disabled {
  background: var(--indigo-700);
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

._buttonIcon_14gfj_87 {
  font-size: 1.25rem;
  line-height: 1;
}

._infoBox_14gfj_92 {
  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_14gfj_104 {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.125rem;
}

._infoText_14gfj_114 {
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
  text-align: left;
}

/* Loading state styles */
._progressContainer_14gfj_123 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
  margin-top: 1.5rem;
}

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

._progressLabel_14gfj_137 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
}

._progressPercentage_14gfj_143 {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--indigo-700);
  line-height: 1rem;
}

._progressBar_14gfj_150 {
  width: 100%;
  height: 0.5rem;
  background: var(--border-subtle);
  border-radius: 624.9375rem;
  overflow: hidden;
}

._progressFill_14gfj_158 {
  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_14gfj_165 {
  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_14gfj_177 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1.2188rem;
  margin: 0;
  text-align: left;
}

._stepsList_14gfj_185 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 2rem;
  width: 100%;
}

._stepItem_14gfj_193 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  transition: opacity 0.3s ease-in-out;
}

._stepItem_14gfj_193 {
  transition: opacity 0.4s ease-in-out;
}

._stepItemActive_14gfj_204 {}

._stepDot_14gfj_206 {
  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_14gfj_219 {
  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_14gfj_1 1.4s ease-in-out infinite;
}

@keyframes _pulse_14gfj_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_14gfj_206::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_14gfj_219::after {
  width: 0.625rem;
  height: 0.625rem;
}

._stepText_14gfj_254 {
  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_14gfj_261 {
  color: var(--indigo-900);
  font-weight: 700;
  font-size: 1rem;
}

/* Loading dots for active step */
._loadingDots_14gfj_268 {
  display: inline-flex;
  gap: 0.2rem;
  margin-left: 0.25rem;
  align-items: center;
}

._loadingDots_14gfj_268 span {
  width: 0.25rem;
  height: 0.25rem;
  background: var(--indigo-700);
  border-radius: 50%;
  animation: _dot-bounce_14gfj_1 1.2s ease-in-out infinite;
}

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

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

@keyframes _dot-bounce_14gfj_1 {

  0%,
  80%,
  100% {
    transform: translateY(0);
    opacity: 0.4;
  }

  40% {
    transform: translateY(-0.3rem);
    opacity: 1;
  }
}

/* Results state styles */
._resultsContainer_14gfj_307 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
}

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

._regenerateButton_14gfj_320 {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  background: transparent;
  color: #7C3AED;
  border: none;
  border-left: 1px solid var(--border-subtle);
  border-radius: 0;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  flex-shrink: 0;
  transition: opacity 0.15s ease;
  margin-left: 0.5rem;
  padding-left: 1rem;
}

._regenerateButton_14gfj_320:hover {
  opacity: 0.7;
}

._regenerateButton_14gfj_320:focus-visible {
  outline: 2px solid var(--action-primary-bg);
  outline-offset: 2px;
}

._regenerateButton_14gfj_320:active {
  opacity: 0.5;
}

._headerIcon_14gfj_352 {
  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;
}

html.dark ._headerIcon_14gfj_352 {
  background: transparent !important;
}

._headerIcon_14gfj_352 svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--indigo-700);
}

._headerIconEmoji_14gfj_373 {
  font-size: 1.25rem;
  line-height: 1;
}

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

._resultsTitle_14gfj_385 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 2rem;
  margin: 0;
}

._resultsSubtitle_14gfj_393 {
  font-size: 0.875rem;
  color: var(--slate-600);
  line-height: 1.25rem;
  margin: 0;
}

._accordionList_14gfj_400 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._accordionItem_14gfj_406 {
  background: var(--surface-card);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  overflow: hidden;
  transition: all 0.2s ease-in-out;
}

._accordionItemExpanded_14gfj_414 {
  border-color: var(--border-default);
}

._accordionItemValidated_14gfj_418 {
  background: rgba(236, 254, 255, 0.3);
  border-color: var(--success-500) !important;
}

._accordionButton_14gfj_423 {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.125rem 1rem;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease-in-out;
  gap: 0.75rem;
}

._accordionButton_14gfj_423:hover {
  background: rgba(0, 0, 0, 0.02);
}

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

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

._headerReviewSection_14gfj_454 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
  margin-right: 0.5rem;
  padding-left: 1rem;
}

._headerReviewQuestion_14gfj_463 {
  font-size: 0.6875rem;
  font-weight: 500;
  color: var(--slate-600);
  line-height: 1rem;
  margin: 0;
  white-space: nowrap;
}

._headerReviewButtons_14gfj_472 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

._headerReviewButtonsVisible_14gfj_481 {
  opacity: 1;
  pointer-events: auto;
}

._headerReviewLabel_14gfj_486 {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--slate-600);
  white-space: nowrap;
  margin-right: 0.25rem;
}

._headerReviewButton_14gfj_472 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  background: var(--surface-page);
  border: 0.09375rem solid var(--slate-400);
  border-radius: 0.5rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  flex-shrink: 0;
}

._headerReviewButton_14gfj_472 svg {
  width: 0.875rem;
  height: 0.875rem;
}

._headerReviewButton_14gfj_472 svg path {
  stroke: var(--slate-400);
  transition: stroke 0.2s ease-in-out;
}

/* Approve button hover � light green */
._headerReviewButton_14gfj_472:first-of-type:hover {
  background: rgba(16, 185, 129, 0.08);
  border-color: var(--success-500);
}

._headerReviewButton_14gfj_472:first-of-type:hover svg path {
  stroke: var(--success-500);
}

/* Reject button hover � light red */
._headerReviewButton_14gfj_472:last-of-type:hover {
  background: rgba(239, 68, 68, 0.08);
  border-color: var(--error-500);
}

._headerReviewButton_14gfj_472:last-of-type:hover svg path {
  stroke: var(--error-500);
}

/* Approved state � light green bg + green border + green icon */
._headerReviewButtonApproved_14gfj_540 {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
  cursor: default;
}

._headerReviewButtonApproved_14gfj_540 svg path {
  stroke: var(--success-500);
}

._headerReviewButtonApproved_14gfj_540:hover {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--success-500);
}

._headerReviewButtonApproved_14gfj_540:hover svg path {
  stroke: var(--success-500);
}

/* Rejected/editing cancel state � filled red + white icon */
._headerReviewButtonRejected_14gfj_560 {
  background: var(--error-500);
  border-color: var(--error-500);
}

._headerReviewButtonRejected_14gfj_560 svg path {
  stroke: white;
}

._headerReviewButtonRejected_14gfj_560:hover {
  background: var(--error-600);
  border-color: var(--error-600);
}

._headerReviewButtonRejected_14gfj_560:hover svg path {
  stroke: white;
}

/* Editing save button � filled green + white icon */
._headerReviewButtonSave_14gfj_579 {
  background: var(--success-500);
  border-color: var(--success-500);
}

._headerReviewButtonSave_14gfj_579 svg path {
  stroke: white;
}

._headerReviewButtonSave_14gfj_579:hover {
  background: var(--success-600);
  border-color: var(--success-600);
}

._headerReviewButtonSave_14gfj_579:hover svg path {
  stroke: white;
}

._accordionIcon_14gfj_597 {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

html.dark ._accordionIcon_14gfj_597 {
  background: transparent !important;
}

._accordionIcon_14gfj_597 svg {
  width: 1.25rem;
  height: 1.25rem;
}

._accordionIconEmoji_14gfj_616 {
  font-size: 1.25rem;
  line-height: 1;
}

._accordionTitleContainer_14gfj_621 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  text-align: left;
  flex: 1;
}

._accordionTitle_14gfj_621 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  margin: 0;
}

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

._validatedBadge_14gfj_643 {
  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-size: 0.6875rem;
  font-weight: 700;
  line-height: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
}

._validatedBadge_14gfj_643 svg {
  width: 0.75rem;
  height: 0.75rem;
}

._validatedBadge_14gfj_643 svg path {
  stroke: var(--success-600);
}

._accordionDescription_14gfj_669 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._accordionChevron_14gfj_676 {
  flex-shrink: 0;
  transition: transform 0.2s ease-in-out;
}

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

._accordionCollapsible_14gfj_685 {
  overflow: hidden;
  transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

._accordionContent_14gfj_690 {
  padding: 0 1rem 1rem 1rem;
}

._contentSection_14gfj_694 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

._sectionTitle_14gfj_701 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--slate-800);
  line-height: 1.25rem;
  margin: 0;
}

._sectionText_14gfj_709 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.375rem;
  margin: 0;
  white-space: pre-wrap;
}

._painsList_14gfj_718 {
  padding: 0 0 0 0.5rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._painItem_14gfj_726 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.375rem;
  list-style: disc;
  margin-left: 1.25rem;
}

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

._contentIcon_14gfj_741 {
  font-size: 1rem;
  line-height: 1;
}

._contentTitle_14gfj_746 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.25rem;
  margin: 0;
}

._contentText_14gfj_754 {
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
  padding-left: 1.5rem;
}

._reviewSection_14gfj_762 {
  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_14gfj_772 {
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
  flex-shrink: 0;
}

._reviewButtons_14gfj_781 {
  display: flex;
  gap: 0.375rem;
  flex-shrink: 0;
}

._reviewButton_14gfj_781 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 1.75rem;
  padding: 0 0.75rem;
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.375rem;
  color: var(--slate-600);
  font-size: 0.75rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

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

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

._reviewButtonApproved_14gfj_812 {
  background: var(--success-50);
  border-color: var(--success-500);
  color: var(--success-600);
}

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

._reviewButtonReject_14gfj_822 {
  color: var(--error-600);
}

._reviewButtonRejected_14gfj_826 {
  background: var(--error-50);
  border-color: var(--error-500);
  color: var(--error-600);
}

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

._accordionText_14gfj_836 {
  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.25rem;
  margin: 0;
}

/* Strategies grid */
._strategiesGrid_14gfj_844 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-top: 0.5rem;
  align-items: stretch;
}

._strategyCard_14gfj_852 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.625rem;
  border: 2px solid;
  border-radius: 1rem;
  min-width: 0;
  overflow: hidden;
  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_14gfj_852[data-approach="conservative"] {
  background: linear-gradient(123.99deg, var(--cyan-50, rgb(236, 254, 255)) 0%, var(--surface-card) 100%);
  border-color: var(--cyan-400);
}

/* Modernized strategy - purple theme */
._strategyCard_14gfj_852[data-approach="modernized"] {
  background: linear-gradient(123.99deg, var(--indigo-50) 0%, var(--surface-page) 100%);
  border-color: var(--indigo-200);
}

._strategyCardValidated_14gfj_879 {
  background: var(--success-50);
  border-color: var(--success-500);
}

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

._strategyCard_14gfj_852 ._headerReviewButtonsVisible_14gfj_481 {
  width: 100%;
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--border-subtle);
}

._strategyCard_14gfj_852 ._headerReviewLabel_14gfj_486 {
  flex: 1;
}

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

._strategyIconContainer_14gfj_909 {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* Conservative icon background - cyan */
._strategyCard_14gfj_852[data-approach="conservative"] ._strategyIconContainer_14gfj_909 {
  background: var(--cyan-100);
}

/* Modernized icon background - purple */
._strategyCard_14gfj_852[data-approach="modernized"] ._strategyIconContainer_14gfj_909 {
  background: var(--indigo-50);
}

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

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

._strategyCardTitle_14gfj_941 {

  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  line-height: 1.5rem;
  margin: 0;
}

._recommendedBadge_14gfj_950 {
  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-size: 0.6875rem;
  font-weight: 700;
  line-height: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.0312rem;
  width: fit-content;
}

._strategySubtitle_14gfj_966 {

  font-size: 0.75rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1rem;
  margin: 0;
}

._strategySummary_14gfj_975 {

  font-size: 0.875rem;
  color: var(--slate-700);
  line-height: 1.4219rem;
  margin: 0;
  white-space: pre-wrap;
}

/* Summary accordion */
._summaryAccordionWrapper_14gfj_985 {
  position: relative;
  cursor: pointer;
  border-radius: 0.5rem;
  padding-right: 1.5rem;
  /* space for the chevron */
  transition: background 0.15s ease;
}

._summaryAccordionWrapper_14gfj_985:hover {
  background: rgba(0, 0, 0, 0.03);
}

._summaryAccordionWrapper_14gfj_985:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._summaryAccordion_14gfj_985 {
  position: relative;
  max-height: 11.375rem;
  /* ~8 lines */
  overflow: hidden;
  transition: max-height 0.35s ease;
}

._summaryExpanded_14gfj_1011 {
  max-height: 62.5rem;
  /* large enough for any content */
}

._summaryFade_14gfj_1016 {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4rem;
  pointer-events: none;
}

/* Match fade color to each card theme */
._strategyCard_14gfj_852[data-approach="conservative"] ._summaryFade_14gfj_1016 {
  background: linear-gradient(to bottom, transparent, var(--cyan-50));
}

._strategyCard_14gfj_852[data-approach="modernized"] ._summaryFade_14gfj_1016 {
  background: linear-gradient(to bottom, transparent, var(--indigo-50));
}

._summaryChevron_14gfj_1034 {
  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_14gfj_985:hover ._summaryChevron_14gfj_1034 {
  opacity: 1;
}

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

/* Metrics - individual rows with white background */
._metricsGrid_14gfj_1057 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._metricItem_14gfj_1063 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.375rem 0.75rem;
  background: var(--surface-page);
  border: 0.667px solid var(--border-subtle);
  border-radius: 0.25rem;
}

._metricLabel_14gfj_1073 {

  font-size: 0.75rem;
  font-weight: 400;
  color: var(--slate-600);
  line-height: 1rem;
}

._metricValue_14gfj_1081 {

  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.25rem;
  color: var(--slate-900);
}

/* Metric value colors */
._metricValue_14gfj_1081[data-risk="Baixo"] {
  color: var(--cyan-600);
}

._metricValue_14gfj_1081[data-efficiency="Muito Alta"],
._metricValue_14gfj_1081[data-resources="Elevado"] {
  color: var(--indigo-700);
}

/* Pr�s and Contras in 2 columns */
._prosConsGrid_14gfj_1100 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}

._prosColumn_14gfj_1106,
._consColumn_14gfj_1107 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._prosConsTitle_14gfj_1113 {
  display: flex;
  align-items: center;
  gap: 0.375rem;

  font-size: 0.75rem;
  font-weight: 600;
  color: var(--slate-900);
  line-height: 1rem;
  margin: 0 0 0.25rem 0;
}

._prosIcon_14gfj_1125,
._consIcon_14gfj_1126 {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._prosIcon_14gfj_1125 {
  background: var(--cyan-100);
}

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

._prosIcon_14gfj_1125 svg,
._consIcon_14gfj_1126 svg {
  width: 0.75rem;
  height: 0.75rem;
}

._prosList_14gfj_1150,
._consList_14gfj_1151 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

._prosItem_14gfj_1160,
._consItem_14gfj_1161 {

  font-size: 0.6875rem;
  font-weight: 400;
  color: var(--slate-600);
  line-height: 1rem;
  display: flex;
  align-items: flex-start;
  gap: 0.375rem;
}

._prosItem_14gfj_1160 svg,
._consItem_14gfj_1161 svg {
  flex-shrink: 0;
  margin-top: 0.125rem;
}

/* Detalhar Estrat�gia button */
._detailStrategyButton_14gfj_1179 {
  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-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  margin-top: auto;
  flex-shrink: 0;
}

._detailStrategyButton_14gfj_1179:hover {
  background: var(--indigo-700);
}

._detailStrategyButton_14gfj_1179:active {
  background: var(--indigo-700);
}

._detailStrategyButton_14gfj_1179:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

._detailStrategyButtonSelected_14gfj_1213 {
  background: var(--success-500);
}

._detailStrategyButtonSelected_14gfj_1213:hover {
  background: var(--success-600);
}

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

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

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

/* Review row inside strategy card */
._cardReviewRow_14gfj_1235 {
  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_14gfj_1244 {
  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_14gfj_1252 {
  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_14gfj_1263 {
  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_14gfj_1272 {
  border-color: var(--warning-500) !important;
}

/* Objectives bulleted list � same style as painsList / painItem */
._objectivesList_14gfj_1277 {
  padding: 0 0 0 0.5rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._objectivesItem_14gfj_1285 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--text-tertiary);
  line-height: 1.375rem;
  list-style: disc;
  margin-left: 1.25rem;
}

._spinnerIcon_14gfj_1294 {
  animation: _spin_14gfj_1294 0.8s linear infinite;
}

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

  to {
    transform: rotate(360deg);
  }
}

/* --- Detailed Analysis Selection Panel ------------------------------------ */
._detailedSelectionPanel_14gfj_1309 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.5rem;
  background: var(--surface-page);
  border: none;
  border-radius: 0;
  margin-top: 1rem;
  width: 100%;
  box-sizing: border-box;
}

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

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

._detailedSelectionTitle_14gfj_1328 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-secondary);
  margin: 0;
  white-space: nowrap;
}

._detailedSelectionButtons_14gfj_1342 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

._detailedSelectionBtn_14gfj_1349 {
  padding: 0.5rem 1.25rem;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 9999px;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.15s;
}

._detailedSelectionBtn_14gfj_1349:hover {
  border-color: var(--action-primary-bg);
  color: var(--action-primary-bg);
}

._detailedSelectionBtnActive_14gfj_1366 {
  padding: 0.5rem 1.25rem;
  background: var(--indigo-600);
  border: 1px solid var(--indigo-600);
  border-radius: 9999px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: white;
  cursor: pointer;
  transition: all 0.15s;
}

._detailedSelectionBtnActive_14gfj_1366:hover {
  background: var(--indigo-700);
}

._detailedSelectionCredits_14gfj_1382 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  color: var(--slate-600);
}

._creditsDot_14gfj_1390 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #F59E0B;
}

._detailedSelectionSubtitle_14gfj_1397 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: -0.5rem 0 0;
}

._detailedSelectionCards_14gfj_1403 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

._detailedSelectionCard_14gfj_1403 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.25rem;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

._detailedSelectionCardHeader_14gfj_1420 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

._detailedSelectionCardIcon_14gfj_1426 {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._detailedSelectionCardTitle_14gfj_1436 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--slate-900);
}

._detailedSelectionCardDesc_14gfj_1442 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin: 0.125rem 0 0;
  line-height: 1.25;
}

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

._detailedSelectionCardExec_14gfj_1455 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._detailedSelectionCardCost_14gfj_1460 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--slate-900);
}

._detailedSelectionCardButton_14gfj_1466 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  width: 100%;
  padding: 0.625rem;
  background: linear-gradient(135deg, #38bdf8 0%, #0ea5e9 100%);
  color: white;
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.15s;
}

._detailedSelectionCardButton_14gfj_1466:hover {
  opacity: 0.9;
}

._detailedSelectionBothButton_14gfj_1487 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.75rem;
  background: transparent;
  color: var(--action-primary-bg);
  border: 1.5px dashed var(--action-primary-bg);
  border-radius: 0.75rem;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
}

._detailedSelectionBothButton_14gfj_1487:hover {
  background: rgba(41, 135, 194, 0.05);
}


/* --- Credits Confirmation Modal ------------------------------------------- */
._creditsModalOverlay_14gfj_1510 {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

._creditsModal_14gfj_1510 {
  background: var(--surface-page);
  border-radius: 0.75rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  width: 28rem;
  max-width: 90vw;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

._creditsModalHeader_14gfj_1531 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid var(--border-subtle);
}

._creditsModalTitle_14gfj_1539 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
  flex: 1;
}

._creditsModalClose_14gfj_1547 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  color: var(--text-tertiary);
}

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

._creditsModalBody_14gfj_1564 {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

._creditsModalCostRow_14gfj_1571 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  background: var(--slate-50);
  border-radius: 0.5rem;
}

._creditsModalCostLabel_14gfj_1580 {
  font-size: 0.875rem;
  color: var(--text-secondary);
}

._creditsModalCostValue_14gfj_1585 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
}

._creditsModalInfo_14gfj_1591 {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.75rem;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 0.5rem;
}

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

._creditsModalWarning_14gfj_1608 {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.75rem;
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 0.5rem;
}

._creditsModalWarningText_14gfj_1618 {
  font-size: 0.8125rem;
  color: #92400e;
  margin: 0;
  line-height: 1.4;
}

._creditsModalRetries_14gfj_1625 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: var(--slate-50);
  border-radius: 0.5rem;
}

._creditsModalRetriesLabel_14gfj_1634 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._creditsModalRetriesDots_14gfj_1639 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

._creditsModalRetryDot_14gfj_1645 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--status-success);
}

._creditsModalRetriesCount_14gfj_1652 {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--status-success);
  margin-left: auto;
}

._creditsModalFooter_14gfj_1659 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  padding: 1rem 1.5rem;
  border-top: 1px solid var(--border-subtle);
}

._creditsModalCancelBtn_14gfj_1668 {
  padding: 0.5rem 1rem;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.15s;
}

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

._creditsModalConfirmBtn_14gfj_1684 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.5rem 1.25rem;
  background: linear-gradient(135deg, #38bdf8 0%, #0ea5e9 100%);
  border: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: white;
  cursor: pointer;
  transition: opacity 0.15s;
}

._creditsModalConfirmBtn_14gfj_1684:hover {
  opacity: 0.9;
}


/* --- Detailed Generation Loading State ------------------------------------ */
._detailedLoadingCard_14gfj_1705 {
  background: var(--surface-page);
  border-radius: 1rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  width: 24rem;
  max-width: 90vw;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
}

._detailedLoadingSpinner_14gfj_1719 {
  width: 4rem;
  height: 4rem;
  background: var(--blue-50);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

._detailedLoadingTitle_14gfj_1729 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
}

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

._detailedLoadingProgress_14gfj_1742 {
  width: 100%;
  height: 0.375rem;
  background: var(--slate-100);
  border-radius: 9999px;
  overflow: hidden;
  margin-top: 0.5rem;
}

._detailedLoadingBar_14gfj_1751 {
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, var(--action-primary-bg), #38bdf8);
  border-radius: 9999px;
  animation: _loadingPulse_14gfj_1 2s ease-in-out infinite;
}

@keyframes _loadingPulse_14gfj_1 {
  0% { width: 20%; opacity: 0.7; }
  50% { width: 80%; opacity: 1; }
  100% { width: 20%; opacity: 0.7; }
}

._detailedLoadingHint_14gfj_1765 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  margin: 0;
}


/* --- Detailed Analysis Result Panel --------------------------------------- */
._detailedResultPanel_14gfj_1773 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  margin-top: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

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

._detailedResultTitle_14gfj_1791 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
}

._detailedResultSubtitle_14gfj_1798 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: -0.5rem 0 0;
}

._detailedResultSections_14gfj_1804 {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  overflow: hidden;
}

._detailedResultSection_14gfj_1804 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid var(--border-subtle);
}

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

._detailedResultSectionTitle_14gfj_1825 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
  display: block;
}

._detailedResultSectionDesc_14gfj_1832 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: 0.25rem 0 0;
  line-height: 1.4;
}


/* --- Detailed Result Both Scenarios Grid ---------------------------------- */
._detailedResultBothGrid_14gfj_1841 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

._detailedResultCard_14gfj_1847 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.25rem;
  border: 1.5px solid var(--border-subtle);
  border-radius: 0.75rem;
  background: var(--surface-page);
}

._detailedResultCard_14gfj_1847[data-approach="conservative"] {
  border-color: var(--cyan-300);
  background: linear-gradient(180deg, rgba(236, 254, 255, 0.3) 0%, var(--surface-card) 100%);
}

._detailedResultCard_14gfj_1847[data-approach="modernized"] {
  border-color: var(--indigo-200);
  background: linear-gradient(180deg, rgba(238, 242, 255, 0.3) 0%, var(--surface-card) 100%);
}

._detailedResultCardHeader_14gfj_1867 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--border-subtle);
}

._detailedResultCardIcon_14gfj_1875 {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._detailedResultCardTitle_14gfj_1885 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--slate-900);
}


/* --- Detailed Result Chosen Card (like DetailedAnalysisSection) --------------- */
._detailedResultChosenCard_14gfj_1893 {
  border: 2px solid var(--status-success);
  border-radius: 0.75rem;
  padding: 1.25rem;
  background: var(--surface-page);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._detailedResultChosenCard_14gfj_1893[data-approach="modernized"] {
  border-color: var(--indigo-300);
}

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

._detailedResultChosenIcon_14gfj_1913 {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--blue-50);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

._detailedResultChosenTitle_14gfj_1924 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
}

._detailedResultChosenSubtitle_14gfj_1930 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: 0.125rem 0 0;
}

._detailedResultChosenBadge_14gfj_1936 {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  margin-left: auto;
  padding: 0.25rem 0.75rem;
  background: var(--status-success);
  color: white;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 600;
}

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

._detailedResultAccordionItem_14gfj_1955 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: var(--surface-page);
  border: 0.0625rem solid var(--border-subtle);
  border-radius: 0.625rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._detailedResultAccordionItem_14gfj_1955:hover {
  border-color: var(--border-default);
  background: var(--slate-50);
}

._detailedResultAccordionTitle_14gfj_1972 {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--slate-900);
  line-height: 1.25rem;
  display: block;
}

._detailedResultAccordionDesc_14gfj_1980 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin: 0.125rem 0 0;
  line-height: 1rem;
}


._detailedResultDescription_14gfj_1988 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  line-height: 1.4;
  margin: 0;
}


._detailedResultAccordionContent_14gfj_1996 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin: 0.5rem 0 0;
  padding: 0.75rem;
  background: var(--slate-50);
  border-radius: 0.375rem;
  white-space: pre-wrap;
}


/* --- Status Panel (after generation) -------------------------------------- */
._statusPanel_14gfj_2009 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem 0;
  width: 100%;
  margin-top: 1rem;
}

._statusSteps_14gfj_2018 {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

._statusStep_14gfj_2018 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._statusActions_14gfj_2030 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}

._statusActionBtn_14gfj_2037 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.15s;
}

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

._statusRegens_14gfj_2055 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  color: var(--text-secondary);
}

._statusRegenText_14gfj_2063 {
  font-size: 0.75rem;
}

._statusRegenBar_14gfj_2067 {
  height: 0.375rem;
  background: var(--slate-100);
  border-radius: 9999px;
  overflow: hidden;
}

._statusRegenFill_14gfj_2074 {
  height: 100%;
  background: var(--indigo-500);
  border-radius: 9999px;
}

._statusCredits_14gfj_2080 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.75rem;
}

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

._statusCreditsRemaining_14gfj_2091 {
  color: var(--status-success);
  font-weight: 600;
}


/* --- Inline Loading (not overlay) ----------------------------------------- */
._detailedLoadingInline_14gfj_2098 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 3rem;
  background: var(--slate-50);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  margin-top: 1.5rem;
  width: 100%;
}


/* --- Select Both Button --------------------------------------------------- */
._selectBothButton_14gfj_2114 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: auto;
  padding: 0 1.5rem;
  height: 2.25rem;
  background: var(--indigo-700);
  color: white;
  border: none;
  border-radius: 0.625rem;

  font-size: 0.875rem;
  font-weight: 400;
  cursor: pointer;
  margin: 1rem auto 0;
  transition: background 0.15s;
}

._selectBothButton_14gfj_2114:hover {
  background: var(--indigo-800);
}

/* --- Credit Info Boxes ---------------------------------------------------- */
._creditInfoBoxes_14gfj_2139 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-top: 1.25rem;
  width: 100%;
}

._creditInfoBox_14gfj_2139 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.625rem;
}

._creditInfoBox_14gfj_2139 strong {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--text-primary);
  display: block;
}

._creditInfoBox_14gfj_2139 p {
  font-size: 0.75rem;
  color: var(--text-secondary);
  margin: 0.125rem 0 0;
}

._creditInfoHint_14gfj_2170 {
  font-size: 0.6875rem;
  color: var(--text-tertiary);
  display: block;
  margin-top: 0.375rem;
}

/* --- Regenerate button inside each strategy card -------------------------- */
._regenerateCardButton_14gfj_2178 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 3rem;
  padding: 0 1.5rem;
  background: #2563EB;
  border: none;
  border-radius: 0.75rem;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  flex-shrink: 0;
  box-shadow: 0 2px 8px 0 rgba(37, 99, 235, 0.25);
  letter-spacing: 0.01em;
}

._regenerateCardButton_14gfj_2178:hover:not(:disabled) {
  background: #1d4ed8;
  box-shadow: 0 4px 14px 0 rgba(37, 99, 235, 0.35);
}

._regenerateCardButton_14gfj_2178:active:not(:disabled) {
  background: #1e40af;
  box-shadow: none;
}

._regenerateCardButton_14gfj_2178:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

._regenerateCardButton_14gfj_2178:focus-visible {
  outline: 2px solid #2563EB;
  outline-offset: 2px;
}

._regenerateCardIcon_14gfj_2220 {
  font-size: 1.125rem;
  line-height: 1;
  display: flex;
  align-items: center;
}

/* --- Dark mode overrides -------------------------------------------------- */
html.dark ._strategyCard_14gfj_852[data-approach="conservative"] {
  background: var(--surface-card) !important;
}

html.dark ._strategyCard_14gfj_852[data-approach="modernized"] {
  background: var(--surface-card) !important;
}

html.dark ._strategyCardValidated_14gfj_879 {
  background: var(--surface-card) !important;
}

html.dark ._detailedResultCard_14gfj_1847[data-approach="conservative"],
html.dark ._detailedResultCard_14gfj_1847[data-approach="modernized"] {
  background: var(--surface-card) !important;
}

html.dark ._summaryFade_14gfj_1016 {
  background: linear-gradient(to bottom, transparent, var(--surface-card)) !important;
}

html.dark ._metricItem_14gfj_1063 {
  background: var(--surface-subtle) !important;
}

html.dark ._accordionItemValidated_14gfj_418 {
  background: var(--surface-card) !important;
}

html.dark ._accordionItem_14gfj_406 {
  background: var(--surface-card) !important;
}

/* View mode toggle */
._viewModeToggleWrapper_14gfj_2262 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  margin-bottom: 1rem;
}

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

._viewModeLabel_14gfj_2275 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  white-space: nowrap;
}

._viewModeButton_14gfj_2281 {
  padding: 0.5rem 1.25rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  background: var(--surface-card);
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}

._viewModeButton_14gfj_2281:hover:not(._viewModeButtonActive_14gfj_2294):not(:disabled) {
  color: var(--text-primary);
  border-color: var(--border-default);
}

._viewModeButtonActive_14gfj_2294 {
  border: 1.5px solid var(--action-primary-bg);
  color: var(--action-primary-bg);
  background: var(--surface-card);
}

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

._selectorWrapper_14gfj_2310 {
  margin-top: 1rem;
}/* AnalysisSectionEditor.module.css */

._editor_1v4w7_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.75rem;
  background: var(--surface-card);
}

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

._fieldLabel_1v4w7_19 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
}

._textarea_1v4w7_26 {
  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-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_1v4w7_26:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

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

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

._saveError_1v4w7_56 {
  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_1v4w7_66 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

._wiggleWarning_1v4w7_73 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  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_1v4w7_1 0.4s ease-in-out;
}

@keyframes _shake_1v4w7_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-3px); }
  40% { transform: translateX(3px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

._saveButton_1v4w7_96 {
  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-size: 0.875rem;
  color: var(--surface-page);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

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

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

._saveButton_1v4w7_96:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._cancelButton_1v4w7_125 {
  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-size: 0.875rem;
  color: var(--slate-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

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

._cancelButton_1v4w7_125:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}


._container_zac0b_1 {
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  padding: 1.25rem;
  background: var(--surface-card);
  width: 100%;
}

._containerDisabled_zac0b_9 {
  opacity: 0.5;
}

._containerDisabled_zac0b_9 ._optionCard_zac0b_13 {
  cursor: not-allowed !important;
}

._optionCardDisabled_zac0b_17 {
  opacity: 0.4;
  cursor: not-allowed !important;
  pointer-events: none;
}

._header_zac0b_23 {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

._headerIcon_zac0b_30 {
  color: var(--indigo-600);
  flex-shrink: 0;
  margin-top: 0.125rem;
}

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

._subtitle_zac0b_43 {
  font-size: 0.75rem;
  color: var(--text-secondary);
  margin: 0.25rem 0 0;
}

._optionsGrid_zac0b_49 {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

._optionCard_zac0b_13 {
  flex: 1;
  min-width: 220px;
  position: relative;
  overflow: hidden;
  border-radius: 0.75rem;
  border: 1px solid var(--border-subtle);
  padding: 0.75rem 1rem;
  text-align: left;
  background: var(--surface-card);
  cursor: pointer;
  transition: all 0.2s ease;
}

._optionCard_zac0b_13:hover:not(:disabled) {
  border-color: var(--cyan-500);
  box-shadow: 0 2px 8px color-mix(in srgb, var(--cyan-500) 10%, transparent);
}

._optionCard_zac0b_13:focus-visible {
  outline: 2px solid var(--cyan-500);
  outline-offset: 2px;
}

._optionCard_zac0b_13:disabled {
  cursor: default;
}

._optionCardGenerated_zac0b_83 {
  background: color-mix(in srgb, var(--success-500) 4%, transparent);
  border-color: color-mix(in srgb, var(--success-500) 30%, transparent);
}

._optionCardGenerated_zac0b_83:hover:not(:disabled) {
  border-color: var(--success-500);
  box-shadow: 0 2px 8px color-mix(in srgb, var(--success-500) 10%, transparent);
}

._optionTopBar_zac0b_93 {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  opacity: 0.7;
  background: var(--indigo-600);
}

._optionContent_zac0b_104 {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

._optionIcon_zac0b_110 {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: color-mix(in srgb, var(--cyan-500) 10%, transparent);
  color: var(--cyan-500);
}

._optionIconGenerated_zac0b_122 {
  background: color-mix(in srgb, var(--success-500) 10%, transparent);
  color: var(--success-500);
}

._optionText_zac0b_127 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
  flex: 1;
}

._optionLabel_zac0b_135 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._optionMeta_zac0b_144 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.6875rem;
  color: var(--text-secondary);
}

._metaIconSuccess_zac0b_152 {
  width: 0.75rem;
  height: 0.75rem;
  color: var(--success-500);
}

._metaTextSuccess_zac0b_158 {
  color: var(--success-500);
  font-weight: 500;
}

._metaCredits_zac0b_163 {
  color: var(--indigo-700);
}
/* DetailedAnalysisSection.module.css */

._container_coor7_3 {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
    height: 100%;
}

._strategiesContainer_coor7_11 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
    width: 100%;
    align-items: start;
}

._strategiesContainer_coor7_11 > :only-child {
    grid-column: 1 / -1;
}

._strategiesContainerBoth_coor7_23 ._accordionButton_coor7_23 {
    position: relative;
    padding-right: 40px;
}

._strategiesContainerBoth_coor7_23 ._accordionChevron_coor7_28 {
    position: absolute;
    right: 16px;
    top: 16px;
}

._strategiesContainerBoth_coor7_23 ._accordionContent_coor7_34 > p {
    padding-left: 0;
}

/* Strategy Card - Both cards identical styling */
._strategyCard_coor7_39 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 26px;
    background: var(--surface-card);
    border: 2px solid var(--success-500);
    border-radius: 14px;
}

/* Unselected card - gray border and dark-friendly background */
._strategyCardUnselected_coor7_50 {
    background: var(--surface-card);
    border: 2px solid var(--border-subtle);
}

._strategyHeaderSection_coor7_55 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

._strategyHeader_coor7_55 {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

._strategyIconContainer_coor7_68 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

._strategyIcon_coor7_68 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}

._strategyIcon_coor7_68 svg {
    width: 20px;
    height: 20px;
}

._strategyTitleContainer_coor7_91 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

._strategyTitle_coor7_91 {
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: var(--slate-900);
    margin: 0;
}

._strategySubtitle_coor7_106 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-600);
    margin: 0;
}

._selectedBadge_coor7_114 {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 12px;
    height: 24px;
    background: var(--success-600);
    border-radius: 9999px;
    color: white;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    flex-shrink: 0;
}

._selectedBadge_coor7_114 svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

._chooseStrategyButton_coor7_135 {
    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-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_coor7_135:hover:not(:disabled) {
    background: var(--border-subtle);
    border-color: var(--slate-400);
}

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

._chooseStrategyButton_coor7_135:focus-visible {
    outline: 2px solid var(--blue-600);
    outline-offset: 2px;
}

._chooseStrategyButton_coor7_135 svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    display: block;
}

/* Loading spinner for button */
@keyframes _buttonSpin_coor7_1 {
    to {
        transform: rotate(360deg);
    }
}

._chooseStrategyButton_coor7_135:disabled svg {
    animation: _buttonSpin_coor7_1 0.8s linear infinite;
}

._strategyDescription_coor7_187 {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-700);
    margin: 0;
    white-space: pre-wrap;
}

/* Accordion List */
._accordionList_coor7_197 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._accordionItem_coor7_203 {
    display: flex;
    flex-direction: column;
    background: var(--surface-card);
    border: 0.0625rem solid var(--border-subtle);
    border-radius: 0.625rem;
    overflow: hidden;
    transition: all 0.2s ease-in-out;
}

._accordionItemExpanded_coor7_213 {
    border-color: var(--border-default);
}

._accordionButton_coor7_23 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    background: transparent;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
}

._accordionHeader_coor7_229 {
    display: flex;
    align-items: center;
    column-gap: 12px;
    flex: 1;
    flex-wrap: wrap;
}

._accordionIconContainer_coor7_237 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    flex-shrink: 0;
}

._accordionIcon_coor7_237 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
}

._accordionIcon_coor7_237 svg {
    width: 16px;
    height: 16px;
}

._accordionTitleContainer_coor7_260 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

._accordionTitle_coor7_260 {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
    white-space: nowrap;
}

._accordionSubtitle_coor7_276 {
    font-size: 11px;
    font-weight: 400;
    line-height: 14px;
    color: var(--text-tertiary);
    margin: 0;
    white-space: nowrap;
}

._accordionChevron_coor7_28 {
    flex-shrink: 0;
    transition: transform 0.2s ease-in-out;
    margin-right: 8px;
    margin-left: 12px;
}

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

._accordionContent_coor7_34 {
    padding: 0 18px 24px 18px;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: var(--slate-700);
}

._accordionCollapsible_coor7_304 {
    /* height and transition are set inline for dynamic animation */
}

._accordionContent_coor7_34>p {
    margin: 0;
    padding-left: 44px;
}

/* Pros & Cons expanded content */
._prosConsContainer_coor7_314 {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 8px;
}

._prosSection_coor7_321 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._prosSectionHeader_coor7_327 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._prosIconBadge_coor7_333 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: var(--success-50);
    border-radius: 4px;
    flex-shrink: 0;
}

._prosSectionTitle_coor7_344 {
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._prosList_coor7_352 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._prosItem_coor7_361 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 24px;
    color: var(--slate-700);
}

._prosBullet_coor7_370 {
    color: var(--success-500);
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
}

/* Divider between pros and cons */
._consDivider_coor7_378 {
    width: 100%;
    height: 0.667px;
    background: var(--border-subtle);
    margin: 16px 0;
}

._consSection_coor7_385 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._consSectionHeader_coor7_391 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._consIconBadge_coor7_397 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: var(--error-50);
    border-radius: 4px;
    flex-shrink: 0;
}

._consSectionTitle_coor7_408 {
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._consList_coor7_416 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._consItem_coor7_425 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 24px;
    color: var(--slate-700);
}

._consBullet_coor7_434 {
    color: var(--error-500);
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
}

/* Feedback Section */
._feedbackSection_coor7_442 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 0.667px solid var(--border-subtle);
}

._feedbackDivider_coor7_451 {
    display: none;
}

._feedbackQuestion_coor7_455 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-600);
    margin: 0;
}

._requiredAsterisk_coor7_463 {
    color: var(--error-600);
}

._feedbackButtons_coor7_467 {
    display: flex;
    gap: 6px;
}

._feedbackButton_coor7_467 {
    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(--slate-400);
    border-radius: 0.625rem;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-900);
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

._feedbackButton_coor7_467 svg {
    flex-shrink: 0;
    color: var(--slate-400);
    transition: color 0.2s ease-in-out;
}

._feedbackButton_coor7_467 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

/* Approve button hover — light green */
._feedbackButtonApprove_coor7_502:hover {
    background: rgba(16, 185, 129, 0.08);
    border-color: var(--success-500);
}

._feedbackButtonApprove_coor7_502:hover svg path {
    stroke: var(--success-500);
}

/* Reject button hover — light red */
._feedbackButtonReject_coor7_512:hover {
    background: rgba(239, 68, 68, 0.08);
    border-color: var(--error-500);
}

._feedbackButtonReject_coor7_512:hover svg path {
    stroke: var(--error-500);
}

/* Approved active state */
._feedbackButtonActive_coor7_522 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._feedbackButtonActive_coor7_522 svg path {
    stroke: var(--success-500);
}

._feedbackButtonActive_coor7_522:hover {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._feedbackButtonActive_coor7_522:hover svg path {
    stroke: var(--success-500);
}

/* Rejected active state — filled red */
._feedbackButtonRejectActive_coor7_541 {
    background: var(--error-500);
    border-color: var(--error-500);
}

._feedbackButtonRejectActive_coor7_541 svg path {
    stroke: white;
}

._feedbackButtonRejectActive_coor7_541:hover {
    background: var(--error-600);
    border-color: var(--error-600);
}

._feedbackButtonRejectActive_coor7_541:hover svg path {
    stroke: white;
}

/* Costs Section */
._costsContainer_coor7_560 {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 8px;
}

/* Cost Tabs */
._costTabs_coor7_568 {
    display: flex;
    border: 0.667px solid var(--border-subtle);
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 16px;
}

._costTab_coor7_568 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 8px 4px;
    background: var(--surface-card);
    border: none;
    border-right: 0.667px solid var(--border-subtle);
    cursor: pointer;
    transition: background 0.15s ease-in-out;
}

._costTab_coor7_568:last-child {
    border-right: none;
}

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

._costTabDisabled_coor7_599 {
    background: var(--slate-200);
    cursor: not-allowed;
    opacity: 0.5;
}

._costTabDisabled_coor7_599 ._costTabLabel_coor7_605,
._costTabDisabled_coor7_599 ._costTabSub_coor7_606 {
    color: var(--slate-400);
}

._costTabLabel_coor7_605 {
    font-size: 11px;
    font-weight: 600;
    color: var(--slate-600);
    white-space: nowrap;
}

._costTabActive_coor7_595 ._costTabLabel_coor7_605 {
    color: white;
}

._costTabSub_coor7_606 {
    font-size: 10px;
    font-weight: 500;
    color: var(--text-tertiary);
}

._costTabActive_coor7_595 ._costTabSub_coor7_606 {
    color: white;
}

._costTabSavingsBadge_coor7_631 {
    background: var(--success-50);
    color: var(--success-500);
    font-size: 10px;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 99px;
    white-space: nowrap;
}

._costTabSavingsBadgeActive_coor7_641 {
    background: rgba(255, 255, 255, 0.25);
    color: white;
}

._costsList_coor7_646 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._costRow_coor7_652 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 44px;
    padding: 0 12px;
    background: var(--surface-subtle);
    border-radius: 10px;
}

._costRegionColumn_coor7_662 {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    border-radius: 10px;
    background: var(--surface-subtle);
}

._costRegionLabel_coor7_672 {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--slate-500);
    margin-bottom: 4px;
}

._costRowHighlighted_coor7_681 {
    background: var(--success-50);
    border: 0.667px solid var(--success-500);
}

._costLabel_coor7_686 {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-700);
}

._costLabelHighlighted_coor7_693 {
    color: var(--success-600);
}

._costValue_coor7_697 {
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
}

._costsDivider_coor7_703 {
    width: 100%;
    height: 0.667px;
    background: var(--border-subtle);
    margin: 16px 0;
}

._costsButton_coor7_710 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 36px;
    background: var(--surface-card);
    border: 0.667px solid var(--success-500);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--success-600);
    cursor: pointer;
    transition: background 0.2s ease-in-out;
}

._costsButton_coor7_710:hover {
    background: var(--costs-btn-hover-bg, var(--success-50));
}

/* Architecture Section */
._architectureContainer_coor7_733 {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 8px;
}

._archIntro_coor7_740 {
    font-size: 14px;
    line-height: 22.75px;
    color: var(--slate-700);
    margin: 0 0 12px 0;
    white-space: pre-wrap;
}

._archList_coor7_748 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0 0 0 0;
}

._archItem_coor7_757 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
    line-height: 20px;
    color: var(--slate-700);
}

._archBullet_coor7_766 {
    color: var(--success-600);
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

._archLabel_coor7_774 {
    font-weight: 700;
    color: var(--slate-900);
}

._archText_coor7_779 {
    font-weight: 400;
    color: var(--slate-700);
    white-space: pre-wrap;
}

._sectionContent_coor7_785 {
    font-size: 14px;
    line-height: 22.75px;
    color: var(--slate-700);
    margin: 0;
    white-space: pre-wrap;
}

._archDivider_coor7_793 {
    width: 100%;
    height: 0.667px;
    background: var(--border-subtle);
    margin: 16px 0;
}

/* Pre-selection state button */
._detailStrategyButton_coor7_801 {
    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-size: 14px;
    cursor: pointer;
    opacity: 1;
    margin-top: 8px;
    flex-shrink: 0;
    transition: opacity 0.2s ease-in-out;
}

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

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

/* Pricing agent trigger button */
._pricingAgentButton_coor7_831 {
    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-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_coor7_831:hover:not(:disabled) {
    opacity: 0.9;
}

._pricingAgentButton_coor7_831:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

._pricingAgentButtonSmall_coor7_859 {
    padding: 8px 12px;
    font-size: 0.75rem;
    width: auto;
    flex-shrink: 0;
}

/* Additional Info Section */
._additionalContainer_coor7_867 {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 8px;
}

._additionalSection_coor7_874 {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

._additionalSection_coor7_874+._additionalSection_coor7_874 {
    padding-top: 12px;
    border-top: 0.667px solid var(--border-subtle);
}

._additionalTitle_coor7_885 {
    font-size: 13px;
    font-weight: 700;
    line-height: 18px;
    color: var(--slate-900);
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

._additionalList_coor7_895 {
    display: flex;
    flex-direction: column;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._additionalItem_coor7_904 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
    line-height: 20px;
    color: var(--slate-700);
}

._additionalBullet_coor7_913 {
    font-size: 14px;
    line-height: 20px;
    flex-shrink: 0;
    margin-top: 1px;
}

._additionalEmpty_coor7_920 {
    font-size: 14px;
    color: var(--text-tertiary);
    margin: 0;
    padding-top: 8px;
}

/* Loading indicator */
._loadingIndicator_coor7_928 {
    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_coor7_939 {
    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_coor7_1 0.8s linear infinite;
}

._loadingText_coor7_950 {
    font-size: 13px;
    color: var(--blue-600);
}

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

/* Cards loading state */
._cardsLoadingWrapper_coor7_962 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 80px 24px;
    flex: 1;
}

._cardsLoadingWrapper_coor7_962 ._loadingText_coor7_950 {
    font-size: 14px;
    color: var(--text-tertiary);
}

/* ─── Header review buttons — fade in when accordion is expanded ─── */
._headerReviewButtons_coor7_978 {
    display: flex;
    align-items: center;
    gap: 6px;
    pointer-events: none;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    width: 100%;
    margin-top: 0;
    padding-top: 0;
    transition: opacity 0.25s ease, max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), margin-top 0.3s ease, padding-top 0.3s ease;
}

._headerReviewButtonsVisible_coor7_992 {
    display: flex;
    pointer-events: auto;
    opacity: 1;
    max-height: 3rem;
    width: 100%;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--border-subtle);
}

/* Override: in both mode, review buttons layout when visible */
._strategiesContainerBoth_coor7_23 ._headerReviewButtonsVisible_coor7_992 {
    width: 100%;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--border-subtle);
}

._strategiesContainerBoth_coor7_23 ._headerReviewLabel_coor7_1011 {
    flex: 1;
}

._headerReviewButton_coor7_978 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    padding: 0;
    background: var(--surface-card);
    border: 0.09375rem solid var(--slate-400);
    border-radius: 0.5rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

._headerReviewButton_coor7_978 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

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

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

._headerReviewButton_coor7_978:focus-visible {
    outline: 2px solid var(--blue-600);
    outline-offset: 2px;
}

/* Approve button (check) — green hover when not selected */
._headerReviewButtonCheck_coor7_1050:hover:not(:disabled) {
    background: rgba(16, 185, 129, 0.08);
    border-color: var(--success-500);
}

._headerReviewButtonCheck_coor7_1050:hover:not(:disabled) svg path {
    stroke: var(--success-500);
}

/* Reject button (X) — red hover when not selected */
._headerReviewButtonCross_coor7_1060:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.08);
    border-color: var(--error-500);
}

._headerReviewButtonCross_coor7_1060:hover:not(:disabled) svg path {
    stroke: var(--error-500);
}

._headerReviewButtonApproved_coor7_1069 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
    cursor: default;
}

._headerReviewButtonApproved_coor7_1069 svg path {
    stroke: var(--success-500);
}

._headerReviewButtonApproved_coor7_1069:hover {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._headerReviewButtonApproved_coor7_1069:hover svg path {
    stroke: var(--success-500);
}

._headerReviewButtonSave_coor7_1088 {
    background: var(--success-500);
    border-color: var(--success-500);
    color: white;
}

._headerReviewButtonSave_coor7_1088 svg path {
    stroke: white;
}

._headerReviewButtonSave_coor7_1088:hover:not(:disabled) {
    background: var(--success-600);
    border-color: var(--success-600);
}

._headerReviewButtonSave_coor7_1088:hover:not(:disabled) svg path {
    stroke: white;
}

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

._headerReviewButtonRejected_coor7_1107 svg path {
    stroke: white;
}

._headerReviewButtonRejected_coor7_1107:hover:not(:disabled) {
    background: var(--error-600);
    border-color: var(--error-600);
}

._headerReviewButtonRejected_coor7_1107:hover:not(:disabled) svg path {
    stroke: white;
}

/* Needs review selected state — light red bg + red icon (review mode, not editing) */
._headerReviewButtonNeedsReview_coor7_1127 {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
    cursor: default;
}

._headerReviewButtonNeedsReview_coor7_1127 svg path {
    stroke: var(--error-500);
}

._headerReviewButtonNeedsReview_coor7_1127:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
}

._headerReviewButtonNeedsReview_coor7_1127:hover:not(:disabled) svg path {
    stroke: var(--error-500);
}

._headerReviewLabel_coor7_1011 {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--slate-600);
    white-space: nowrap;
    flex: 1;
}

/* ─── Editing / saved / wiggle states ─── */
._accordionItemEditing_coor7_1155 {
    border-color: var(--color-stale) !important;
}

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

/* Validated state — light green bg + green border (same as InitialAnalysisTab) */
._accordionItemValidated_coor7_1164 {
    background: rgba(236, 254, 255, 0.3);
    border-color: var(--success-500) !important;
}

/* Stale state — yellow border */
._accordionItemStale_coor7_1170 {
    border-color: var(--color-stale) !important;
    background: var(--color-stale-bg);
}



/* ─── Loading card state ─── */
._strategyCardLoading_coor7_1178 {
    border-color: var(--border-subtle);
    background: var(--surface-card);
}

._loadingCardBody_coor7_1183 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 8px 0 4px 0;
}

._loadingCardSpinnerRow_coor7_1190 {
    display: flex;
    align-items: center;
    gap: 12px;
}

._loadingCardSpinner_coor7_1190 {
    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_coor7_1 0.9s linear infinite;
}

._loadingCardTitle_coor7_1206 {
    font-size: 14px;
    font-weight: 700;
    color: var(--slate-900);
}

._loadingSteps_coor7_1212 {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-left: 4px;
}

._loadingStep_coor7_1212 {
    display: flex;
    align-items: center;
    gap: 10px;
}

._loadingStepDot_coor7_1225 {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
    transition: background 0.4s ease, transform 0.3s ease;
}

._loadingStepDotActive_coor7_1233 {
    background: var(--indigo-700);
    animation: _pulse_coor7_1 1.2s ease-in-out infinite;
}

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

@keyframes _pulse_coor7_1 {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.4;
        transform: scale(0.7);
    }
}

._loadingStepCheck_coor7_1256 {
    flex-shrink: 0;
}

._loadingStepLabel_coor7_1260 {
    font-size: 13px;
    color: var(--text-disabled);
    line-height: 18px;
    transition: color 0.4s ease, font-weight 0.2s ease;
}

._loadingStepLabelActive_coor7_1267 {
    color: var(--slate-700);
    font-weight: 600;
}

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

._loadingCardHint_coor7_1276 {
    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_coor7_1288 {
    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-size: 13px;
    color: var(--indigo-800);
    box-sizing: border-box;
}

._agentPendingSpinner_coor7_1302 {
    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_coor7_1 0.9s linear infinite;
}

/* ─── Second Region Picker Modal ─────────────────────────────────────────── */
._secondRegionOverlay_coor7_1313 { position: fixed; inset: 0; background: rgba(0,0,0,0.4); display: flex; align-items: center; justify-content: center; z-index: 1000; }
._secondRegionModal_coor7_1314 { background: var(--surface-card); border-radius: 12px; padding: 24px; width: 360px; max-height: 80vh; overflow-y: auto; }
._secondRegionTitle_coor7_1315 { margin: 0 0 16px; font-size: 16px; }
._secondRegionOption_coor7_1316 { display: block; width: 100%; padding: 10px 12px; margin-bottom: 4px; border: 1px solid #e5e7eb; border-radius: 8px; background: var(--surface-card); cursor: pointer; text-align: left; font-size: 14px; }
._secondRegionOption_coor7_1316:hover { border-color: var(--indigo-400); background: var(--slate-50); }
._secondRegionCancel_coor7_1318 { margin-top: 12px; background: none; border: none; color: #6b7280; cursor: pointer; }


/* ─── Group Headers ──────────────────────────────────────────────────────── */
._groupHeader_coor7_1322 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    margin-top: 0.75rem;
    width: 100%;
}

._groupHeader_coor7_1322:first-child {
    margin-top: 0;
}

._groupHeaderTitle_coor7_1335 {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

._groupHeaderBadge_coor7_1340 {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    background: #10B981;
    color: white;
    border-radius: 9999px;
    font-size: 0.6875rem;
    font-weight: 600;
    flex-shrink: 0;
    white-space: nowrap;
}

._groupHeaderBadgeExhausted_coor7_1353 {
    background: #EF4444;
}


._accordionItemExhausted_coor7_1358 {
    border-color: var(--error-500);
    background: rgba(239, 68, 68, 0.03);
}

/* --- Regenerate button inside each detailed strategy card ----------------- */
._regenerateCardButton_coor7_1364 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 3rem;
  padding: 0 1.5rem;
  background: #2563EB;
  border: none;
  border-radius: 0.75rem;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  flex-shrink: 0;
  box-shadow: 0 2px 8px 0 rgba(37, 99, 235, 0.25);
  letter-spacing: 0.01em;
  margin: 0 1.5rem 0.5rem;
}

._regenerateCardButton_coor7_1364:hover:not(:disabled) {
  background: #1d4ed8;
  box-shadow: 0 4px 14px 0 rgba(37, 99, 235, 0.35);
}

._regenerateCardButton_coor7_1364:active:not(:disabled) {
  background: #1e40af;
  box-shadow: none;
}

._regenerateCardButton_coor7_1364:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

._regenerateCardButton_coor7_1364:focus-visible {
  outline: 2px solid #2563EB;
  outline-offset: 2px;
}

._regenerateCardIcon_coor7_1407 {
  font-size: 1.125rem;
  line-height: 1;
  display: flex;
  align-items: center;
}
/* CostSummaryModal.module.css */

._overlay_16uo9_3 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

._modal_16uo9_13 {
    background: var(--surface-card);
    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_16uo9_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_16uo9_28:hover {
    opacity: 1;
}

/* Header */
._header_16uo9_49 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
}

._headerIcon_16uo9_56 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    flex-shrink: 0;
}

._headerIcon_16uo9_56 svg {
    width: 16px;
    height: 16px;
}

._headerText_16uo9_71 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._headerTitle_16uo9_77 {
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: var(--slate-900);
    margin: 0;
}

._headerSubtitle_16uo9_85 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

/* Body */
._body_16uo9_94 {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 12px;
    max-height: 60vh;
    overflow-y: auto;
}

/* Highlight card (Investimento Inicial) */
._highlightCard_16uo9_104 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    border-radius: 10px;
    border: 0.667px solid;
}

._highlightCardContent_16uo9_113 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._highlightCardLabel_16uo9_119 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
}

._highlightCardValue_16uo9_125 {
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
}

._highlightCardIcon_16uo9_131 {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

._highlightCardIcon_16uo9_131 svg {
    width: 28px;
    height: 28px;
}

/* Regular card */
._regularCard_16uo9_146 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px;
    background: var(--surface-subtle);
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
}

._regularCardLabel_16uo9_156 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--slate-600);
}

._regularCardValue_16uo9_163 {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: var(--slate-900);
}

._regularCardSub_16uo9_170 {
    font-size: 11px;
    font-weight: 400;
    line-height: 16px;
    color: var(--success-600);
    margin-top: 2px;
}

/* Divider section */
._section_16uo9_179 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-top: 12px;
    border-top: 0.667px solid var(--border-subtle);
}

._sectionTitle_16uo9_187 {
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

/* List */
._list_16uo9_196 {
    display: flex;
    flex-direction: column;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._listItem_16uo9_205 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-700);
}

._listItemIcon_16uo9_215 {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    margin-top: 1px;
}

/* Info box */
._infoBox_16uo9_223 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 12px;
    background: var(--blue-50);
    border: 0.667px solid var(--blue-200);
    border-radius: 10px;
}

._infoBoxHeader_16uo9_233 {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

._infoBoxIcon_16uo9_239 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1px;
}

._infoBoxContent_16uo9_246 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._infoBoxTitle_16uo9_252 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--blue-800);
    margin: 0;
}

._infoBoxText_16uo9_260 {
    font-size: 12px;
    font-weight: 400;
    line-height: 19.5px;
    color: var(--blue-600);
    margin: 0;
}

/* Footer */
._footer_16uo9_269 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
}

._closeBtn_16uo9_277 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    background: var(--surface-card);
    border: 0.667px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--slate-900);
    cursor: pointer;
    transition: background 0.2s;
}

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

._downloadBtn_16uo9_298 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: white;
    cursor: pointer;
    transition: opacity 0.2s;
}

._downloadBtn_16uo9_298:hover {
    opacity: 0.9;
}

._downloadBtn_16uo9_298:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Loading state */
._loadingState_16uo9_324 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 24px;
    color: var(--text-tertiary);
    font-size: 14px;
}

._loadingDots_16uo9_334 {
    display: inline-flex;
    gap: 3px;
    align-items: center;
}

._loadingDots_16uo9_334 span {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
    animation: _dot-bounce_16uo9_1 1s infinite;
}

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

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

@keyframes _dot-bounce_16uo9_1 {

    0%,
    80%,
    100% {
        transform: translateY(0);
        opacity: 0.4;
    }

    40% {
        transform: translateY(-4px);
        opacity: 1;
    }
}

/* Region Comparison Grid */
._compareGrid_16uo9_372 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
}

._compareColumn_16uo9_378 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-right: 32px;
    border-right: 1px solid var(--slate-100, #f1f5f9);
}

._compareColumn_16uo9_378:last-child {
    padding-right: 0;
    border-right: none;
    padding-left: 0;
}

._compareColumn_16uo9_378 ._downloadBtn_16uo9_298 {
    margin-top: auto;
}

._compareColumnHeader_16uo9_396 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--slate-200, #e2e8f0);
    margin-bottom: 4px;
}

._compareRegion_16uo9_405 {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
}

._bestBadge_16uo9_411 {
    background: var(--success-600, #16a34a);
    color: white;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 4px;
}
/* ArchitectureDiagramModal.module.css */

._overlay_wpdi2_3 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

._modal_wpdi2_13 {
    background: var(--surface-card);
    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_wpdi2_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_wpdi2_28:hover {
    opacity: 1;
}

/* Header */
._header_wpdi2_49 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

._headerIcon_wpdi2_56 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    flex-shrink: 0;
}

._headerIcon_wpdi2_56 svg {
    width: 16px;
    height: 16px;
}

._headerText_wpdi2_71 {
    display: flex;
    flex-direction: column;
}

._headerTitle_wpdi2_76 {
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    color: var(--slate-900);
    margin: 0;
}

._headerSubtitle_wpdi2_84 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

/* Body */
._body_wpdi2_93 {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 8px;
}

/* Info box (Sobre o Diagrama) */
._infoBox_wpdi2_101 {
    padding: 12px;
    border-radius: 10px;
    border: 0.667px solid;
}

._infoBoxHeader_wpdi2_107 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

._infoBoxIcon_wpdi2_113 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1px;
}

._infoBoxIcon_wpdi2_113 svg,
._infoBoxIcon_wpdi2_113 path,
._infoBoxIcon_wpdi2_113 circle {
    width: 16px;
    height: 16px;
}

._infoBoxContent_wpdi2_127 {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
}

._infoBoxTitle_wpdi2_134 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    margin: 0;
}

._infoBoxDesc_wpdi2_141 {
    font-size: 12px;
    font-weight: 400;
    line-height: 19.5px;
    margin: 0;
}

._infoBoxList_wpdi2_148 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._infoBoxListItem_wpdi2_157 {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
}

._infoBoxBullet_wpdi2_166 {
    font-size: 12px;
    line-height: 16px;
    flex-shrink: 0;
}

/* Two-column cards */
._twoColGrid_wpdi2_173 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

._metaCard_wpdi2_179 {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: var(--surface-subtle);
    border: 0.667px solid var(--border-subtle);
    border-radius: 10px;
}

._metaCardHeader_wpdi2_189 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._metaCardIcon_wpdi2_195 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

._metaCardIcon_wpdi2_195 path,
._metaCardIcon_wpdi2_195 circle,
._metaCardIcon_wpdi2_195 rect {
    stroke: var(--slate-900);
}

._metaCardTitle_wpdi2_207 {
    font-size: 12px;
    font-weight: 700;
    line-height: 16px;
    color: var(--slate-900);
    margin: 0;
}

._metaCardList_wpdi2_215 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    padding: 0;
    margin: 0;
}

._metaCardListItem_wpdi2_224 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-700);
}

/* Diagram image container */
._diagramContainer_wpdi2_232 {
    border: 2px solid;
    border-radius: 10px;
    padding: 10px;
    background: var(--surface-card);
}

._diagramImage_wpdi2_239 {
    width: 100%;
    height: 300px;
    object-fit: contain;
    border-radius: 4px;
    display: block;
}

._diagramPlaceholder_wpdi2_247 {
    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-size: 14px;
}

/* Observation box */
._observationBox_wpdi2_262 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px;
    background: var(--blue-50);
    border: 0.667px solid var(--blue-200);
    border-radius: 10px;
}

._observationHeader_wpdi2_272 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

._observationIcon_wpdi2_278 {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 1px;
}

._observationContent_wpdi2_285 {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

._observationTitle_wpdi2_291 {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--blue-800);
    margin: 0;
}

._observationText_wpdi2_299 {
    font-size: 12px;
    font-weight: 400;
    line-height: 19.5px;
    color: var(--blue-600);
    margin: 0;
}

/* Footer */
._footer_wpdi2_308 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
}

._closeBtn_wpdi2_316 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    background: var(--surface-card);
    border: 0.667px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--slate-900);
    cursor: pointer;
    transition: background 0.2s;
}

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

._downloadBtn_wpdi2_337 {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 16px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: white;
    cursor: pointer;
    transition: opacity 0.2s;
}

._downloadBtn_wpdi2_337:hover {
    opacity: 0.9;
}

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

._spinner_wpdi2_363 {
    animation: _spin_wpdi2_363 1s linear infinite;
}

/* ── Image Viewer (fullscreen) ── */

._viewerOverlay_wpdi2_369 {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
}

._viewerImageWrapper_wpdi2_379 {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    user-select: none;
}

._viewerImage_wpdi2_379 {
    max-width: 90vw;
    max-height: 90vh;
    object-fit: contain;
    transition: transform 0.05s linear;
    pointer-events: none;
}

._viewerCloseBtn_wpdi2_397 {
    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-size: 14px;
    color: white;
    cursor: pointer;
    transition: background 0.2s;
}

._viewerCloseBtn_wpdi2_397:hover {
    background: rgba(255, 255, 255, 0.25);
}

._viewerControls_wpdi2_420 {
    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_wpdi2_435 {
    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_wpdi2_435:hover {
    background: rgba(255, 255, 255, 0.3);
}

._viewerZoomLabel_wpdi2_455 {
    font-size: 13px;
    color: white;
    min-width: 44px;
    text-align: center;
}

/* Make thumbnail clickable */
._diagramImage_wpdi2_239 {
    cursor: zoom-in;
}
/* DetailedSectionEditor.module.css */

._editor_5mpdw_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.75rem;
  background: var(--surface-card);
}

._row_5mpdw_13 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}

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

._fieldLabel_5mpdw_25 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
}

._textarea_5mpdw_32 {
  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-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_5mpdw_32:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

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

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

._input_5mpdw_62 {
  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-size: 0.875rem;
  color: var(--slate-700);
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._input_5mpdw_62:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

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

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

._saveError_5mpdw_90 {
  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_5mpdw_100 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

._wiggleWarning_5mpdw_107 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  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_5mpdw_1 0.4s ease-in-out;
}

@keyframes _shake_5mpdw_1 {

  0%,
  100% {
    transform: translateX(0);
  }

  20% {
    transform: translateX(-3px);
  }

  40% {
    transform: translateX(3px);
  }

  60% {
    transform: translateX(-3px);
  }

  80% {
    transform: translateX(3px);
  }
}

._saveButton_5mpdw_146 {
  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-size: 0.875rem;
  color: var(--surface-page);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

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

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

._saveButton_5mpdw_146:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._cancelButton_5mpdw_175 {
  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-size: 0.875rem;
  color: var(--slate-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

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

._cancelButton_5mpdw_175:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

/* ─── Rotating Loading Phrases ─── */

._rotatingPhrasesWrapper_103vw_3 {
    display: inline-flex;
    align-items: center;
    overflow: hidden;
    min-width: 0;
}

._rotatingPhrase_103vw_3 {
    display: inline-block;
    transition: opacity 0.4s ease, transform 0.4s ease;
    white-space: nowrap;
    color: var(--indigo-800);
}

._fadeIn_103vw_17 {
    opacity: 1;
    transform: translateY(0);
}

._fadeOut_103vw_22 {
    opacity: 0;
    transform: translateY(6px);
}

._fadeEnter_103vw_27 {
    opacity: 0;
    transform: translateY(-6px);
}
/* StrategyCardEditor.module.css */

._editor_17kwd_3 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.75rem;
  background: var(--surface-card);
}

._row_17kwd_13 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.75rem;
}

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

._fieldLabel_17kwd_25 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.25rem;
}

._input_17kwd_32 {
  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-size: 0.875rem;
  color: var(--slate-700);
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s ease-in-out;
}

._input_17kwd_32:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

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

._select_17kwd_56 {
  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-size: 0.875rem;
  color: var(--slate-700);
  outline: none;
  box-sizing: border-box;
  cursor: pointer;
  transition: border-color 0.2s ease-in-out;
}

._select_17kwd_56:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

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

._textarea_17kwd_81 {
  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-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_17kwd_81:focus {
  border-color: var(--blue-600);
  background: var(--surface-page);
}

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

._saveError_17kwd_107 {
  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_17kwd_117 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._saveButton_17kwd_123 {
  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-size: 0.875rem;
  color: var(--surface-page);
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

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

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

._saveButton_17kwd_123:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._cancelButton_17kwd_152 {
  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-size: 0.875rem;
  color: var(--slate-600);
  cursor: pointer;
  transition: background 0.2s ease-in-out;
}

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

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

._cancelButton_17kwd_152:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 2px;
}

._wiggleWarning_17kwd_180 {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  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_17kwd_1 0.4s ease-in-out;
}

@keyframes _shake_17kwd_1 {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-3px); }
  40% { transform: translateX(3px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

._spinnerIcon_17kwd_202 {
  animation: _spin_17kwd_202 1s linear infinite;
}

@keyframes _spin_17kwd_202 {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

._container_q1s6g_1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    gap: 1rem;
    max-width: 480px;
    margin: 0 auto;
}

._title_q1s6g_12 {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 8px 0 4px;
    text-align: center;
}

._description_q1s6g_20 {
    font-size: 14px;
    color: var(--text-tertiary);
    text-align: center;
    margin: 0;
    line-height: 1.5;
}

._infoBox_q1s6g_28 {
    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_q1s6g_40 {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.125rem;
}

._infoText_q1s6g_50 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    line-height: 1.2188rem;
    margin: 0;
    text-align: left;
}

._stepsList_q1s6g_58 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 2rem;
    width: 100%;
}

._stepItem_q1s6g_66 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: opacity 0.4s ease-in-out;
}

._stepItemActive_q1s6g_73 {}

._stepDot_q1s6g_75 {
    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_q1s6g_88 {
    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_q1s6g_1 1.4s ease-in-out infinite;
}

@keyframes _pulse_q1s6g_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_q1s6g_75::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_q1s6g_88::after {
    width: 0.625rem;
    height: 0.625rem;
}

._stepText_q1s6g_116 {
    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_q1s6g_123 {
    color: var(--indigo-900);
    font-weight: 700;
    font-size: 1rem;
}

._loadingDots_q1s6g_129 {
    display: inline-flex;
    gap: 0.2rem;
    margin-left: 0.25rem;
    align-items: center;
}

._loadingDots_q1s6g_129 span {
    width: 0.25rem;
    height: 0.25rem;
    background: var(--indigo-700);
    border-radius: 50%;
    animation: _dot-bounce_q1s6g_1 1.2s ease-in-out infinite;
}

._loadingDots_q1s6g_129 span:nth-child(2) { animation-delay: 0.2s; }
._loadingDots_q1s6g_129 span:nth-child(3) { animation-delay: 0.4s; }

@keyframes _dot-bounce_q1s6g_1 {
    0%, 80%, 100% { transform: translateY(0); opacity: 0.4; }
    40% { transform: translateY(-0.3rem); opacity: 1; }
}
._container_1lfks_1 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 24px;
}

/* Header */
._header_1lfks_9 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
}

._headerTitle_1lfks_17 {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary);
}

._headerTitleRow_1lfks_24 {
    display: flex;
    align-items: center;
    gap: 12px;
}

._headerDesc_1lfks_30 {
    font-size: 13px;
    color: var(--text-tertiary);
    margin: 4px 0 0;
}

._headerProgress_1lfks_36 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._progressLabel_1lfks_42 {
    font-size: 11px;
    color: var(--text-tertiary);
}

._progressBar_1lfks_47 {
    width: 80px;
    height: 6px;
    background: var(--surface-subtle);
    border-radius: 3px;
    overflow: hidden;
}


/* Export MPA Button */
._exportMpaButton_1lfks_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-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
    white-space: nowrap;
}

._exportMpaButton_1lfks_57:hover {
    opacity: 0.9;
}

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

/* Sections */
._sections_1lfks_83 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Accordion */
._accordion_1lfks_90 {
    display: flex;
    flex-direction: column;
    background: var(--surface-card);
    border: 1px solid var(--border-subtle);
    border-radius: 0.625rem;
    overflow: hidden;
    transition: all 0.2s ease-in-out;
}

._accordionValid_1lfks_100 {
    border-color: var(--success-500);
}

._accordionButton_1lfks_104 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    background: transparent;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
}

._accordionHeader_1lfks_116 {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

._accordionIconContainer_1lfks_123 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

._accordionValid_1lfks_100 ._accordionIconContainer_1lfks_123 {
    background: var(--success-50);
}

._accordionIcon_1lfks_123 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}

._accordionIcon_1lfks_123 svg {
    width: 40px;
    height: 40px;
}

._accordionTitleContainer_1lfks_150 {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

._accordionTitle_1lfks_150 {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--slate-900);
    margin: 0;
}

._accordionSubtitle_1lfks_165 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text-tertiary);
    margin: 0;
}

._headerReviewButtons_1lfks_173 {
    display: flex;
    align-items: center;
    gap: 6px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

._headerReviewButtonsVisible_1lfks_182 {
    opacity: 1;
    pointer-events: auto;
}

._headerReviewLabel_1lfks_187 {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--slate-600);
    white-space: nowrap;
    flex-shrink: 0;
}

._headerReviewButton_1lfks_173 {
    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(--slate-400);
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    flex-shrink: 0;
}

._headerReviewButton_1lfks_173 svg path {
    stroke: var(--slate-400);
    transition: stroke 0.2s ease-in-out;
}

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

._headerReviewButtonCheck_1lfks_219:hover:not(:disabled) {
    background: rgba(16, 185, 129, 0.08);
    border-color: var(--success-500);
}

._headerReviewButtonCheck_1lfks_219:hover:not(:disabled) svg path {
    stroke: var(--success-500);
}

._headerReviewButtonCross_1lfks_228:hover:not(:disabled) {
    background: rgba(239, 68, 68, 0.08);
    border-color: var(--error-500);
}

._headerReviewButtonCross_1lfks_228:hover:not(:disabled) svg path {
    stroke: var(--error-500);
}

._headerReviewButtonApproved_1lfks_237 {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._headerReviewButtonApproved_1lfks_237 svg path {
    stroke: var(--success-500);
}

._headerReviewButtonApproved_1lfks_237:hover {
    background: rgba(16, 185, 129, 0.12);
    border-color: var(--success-500);
}

._headerReviewButtonApproved_1lfks_237:hover svg path {
    stroke: var(--success-500);
}

._headerReviewButtonNeedsReview_1lfks_255 {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
}

._headerReviewButtonNeedsReview_1lfks_255 svg path {
    stroke: var(--error-500);
}

._headerReviewButtonNeedsReview_1lfks_255:hover {
    background: rgba(239, 68, 68, 0.12);
    border-color: var(--error-500);
}

._headerReviewButtonNeedsReview_1lfks_255:hover svg path {
    stroke: var(--error-500);
}

._chevron_1lfks_273 {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: rotate(0deg);
    flex-shrink: 0;
    margin-left: 8px;
}

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

._headerReviewButtonSave_1lfks_284 {
    background: var(--success-500);
    border-color: var(--success-500);
}

._headerReviewButtonSave_1lfks_284 svg path {
    stroke: white;
}

._headerReviewButtonSave_1lfks_284:hover:not(:disabled) {
    background: var(--success-600);
    border-color: var(--success-600);
}

._headerReviewButtonSave_1lfks_284:hover:not(:disabled) svg path {
    stroke: white;
}

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

._headerReviewButtonRejected_1lfks_302 svg path {
    stroke: white;
}

._headerReviewButtonRejected_1lfks_302:hover:not(:disabled) {
    background: var(--error-600);
    border-color: var(--error-600);
}

._headerReviewButtonRejected_1lfks_302:hover:not(:disabled) svg path {
    stroke: white;
}

._accordionContent_1lfks_320 {
    padding: 16px;
    border-top: 1px solid var(--border-subtle);
}

/* Descricao */
._summaryText_1lfks_326 {
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    line-height: 1.6;
    margin: 0 0 8px;
}

._detailText_1lfks_334 {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin: 8px 0;
}

._detailText_1lfks_334 p {
    margin: 0 0 10px;
}

._detailText_1lfks_334 p:last-child {
    margin-bottom: 0;
}

._detailText_1lfks_334 strong {
    font-weight: 700;
    color: var(--text-primary);
}

._detailText_1lfks_334 ol,
._detailText_1lfks_334 ul {
    margin: 8px 0;
    padding-left: 20px;
}

._detailText_1lfks_334 li {
    margin-bottom: 6px;
}

._linkBtn_1lfks_364 {
    font-size: 12px;
    color: var(--text-link);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-top: 4px;
}

._linkBtn_1lfks_364:hover {
    text-decoration: underline;
    color: var(--text-link-hover);
}

/* Description Edit */
._descEditContainer_1lfks_380 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._descEditLabel_1lfks_386 {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

._descEditTextarea_1lfks_394 {
    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;
    background: var(--surface-card);
}

._descEditTextarea_1lfks_394:focus {
    outline: none;
    border-color: var(--action-primary-bg);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

/* Custo */
._custoSection_1lfks_413 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

._custoInfo_1lfks_419 {
    font-size: 12px;
    color: var(--text-tertiary);
    background: var(--surface-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 10px 12px;
}

._custoTotal_1lfks_428 {
    background: #00BCD4;
    color: white;
    border-radius: 12px;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    gap: 24px;
    position: relative;
}

._custoTotalCol_1lfks_439 {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

._custoTotalBadge_1lfks_445 {
    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_1lfks_454 {
    font-size: 22px;
    font-weight: 700;
}

._custoTotalSub_1lfks_459 {
    font-size: 11px;
    opacity: 0.7;
}

._custoTotalDivider_1lfks_464 {
    width: 1px;
    height: 48px;
    background: rgba(255, 255, 255, 0.3);
}

._custoTotalIcon_1lfks_470 {
    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_1lfks_484 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

._custoCard_1lfks_490 {
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 12px;
    transition: border-color 0.15s;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

._custoCard_1lfks_490:hover {
    border-color: var(--border-focus);
}

._custoLabel_1lfks_504 {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: var(--text-tertiary);
    font-weight: 500;
}

._custoInputRow_1lfks_513 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
}

._custoInputEditArea_1lfks_520 {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
}

._custoInputEditRow_1lfks_527 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._custoSelectLabel_1lfks_533 {
    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: var(--surface-card);
    text-align: center;
    flex-shrink: 0;
}

._custoSelect_1lfks_533 {
    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_1lfks_513 {
    flex: 1;
    min-width: 0;
    background: var(--surface-card);
    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_1lfks_513:focus {
    border-color: var(--action-primary-bg);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

._custoTags_1lfks_576 {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    height: 84px;
    overflow-y: auto;
    align-content: flex-start;
}

._custoTag_1lfks_576 {
    font-size: 10px;
    padding: 1px 6px;
    border-radius: 3px;
    background: var(--surface-subtle);
    color: var(--text-tertiary);
}

._custoTagEditable_1lfks_593 {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 6px;
    background: var(--surface-card);
    color: var(--text-secondary);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--border-subtle);
}

._custoTagRemove_1lfks_605 {
    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_1lfks_605:hover {
    background: rgba(239, 68, 68, 0.1);
}

._custoTagRemove_1lfks_605:focus-visible {
    outline: 2px solid var(--action-primary-bg);
    outline-offset: 2px;
}

._custoTagAddRow_1lfks_630 {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px solid var(--border-subtle);
}

._custoTagAddIcon_1lfks_639 {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-tertiary);
    flex-shrink: 0;
    line-height: 1;
}

._custoTagInput_1lfks_647 {
    font-size: 12px;
    padding: 5px 10px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    flex: 1;
    min-width: 0;
    outline: none;
    background: var(--surface-card);
    color: var(--text-primary);
    cursor: text;
    transition: all 0.15s ease-in-out;
}

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

._custoTagInput_1lfks_647:hover {
    border-color: var(--border-focus);
    background: var(--surface-card);
}

._custoTagInput_1lfks_647:focus {
    border-color: var(--action-primary-bg);
    background: var(--surface-card);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

._custoNoService_1lfks_676 {
    font-size: 11px;
    color: var(--text-tertiary);
    font-style: italic;
}

._custoEmptyHint_1lfks_682 {
    font-size: 11px;
    color: var(--text-tertiary);
    font-style: italic;
    display: flex;
    align-items: center;
    width: 100%;
}

._custoValueReadonly_1lfks_691 {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    flex: 1;
}

._custoValueLabelRow_1lfks_699 {
    display: flex;
    align-items: center;
    gap: 4px;
}

._custoValueLabel_1lfks_699 {
    font-size: 10px;
    font-weight: 500;
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.4px;
    line-height: 1;
}

._custoValueInfo_1lfks_714 {
    display: flex;
    align-items: center;
    color: var(--text-tertiary);
    cursor: help;
    opacity: 0.7;
    transition: opacity 0.15s;
}

._custoValueInfo_1lfks_714:hover {
    opacity: 1;
    color: var(--action-primary-bg);
}

._custoValueAmounts_1lfks_728 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._custoValueAmount_1lfks_728 {
    font-size: 15px;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

._custoValueSeparator_1lfks_741 {
    font-size: 14px;
    color: var(--text-tertiary);
    font-weight: 400;
    line-height: 1;
}

._custoValueSecondary_1lfks_748 {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-tertiary);
    line-height: 1.2;
}

/* Recursos */
._recursosGrid_1lfks_756 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(20.5rem, 1fr));
    gap: 1.25rem;
    padding: 0.5rem 0;
    align-items: start;
}

._recursoCard_1lfks_764 {
    background: var(--surface-card);
    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_1lfks_764: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_1lfks_782 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 0.667px solid var(--border-subtle);
}

._recursoNome_1lfks_791 {
    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_1lfks_804 {
    flex-shrink: 0;
    color: var(--slate-900);
}

._recursoTipo_1lfks_809 {
    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_1lfks_821 {
    display: flex;
    flex-direction: column;
    margin-top: 4px;
    font-size: 12px;
    color: var(--text-secondary);
    line-height: 1.5;
}

._recursoDetailRow_1lfks_830 {
    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_1lfks_840 {
    font-size: 11px;
    font-weight: 500;
    line-height: 16.5px;
    color: var(--text-tertiary);
    letter-spacing: 0.55px;
    flex-shrink: 0;
}

._recursoDetailValue_1lfks_849 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: var(--slate-800);
    text-align: right;
}

/* Recurso edit mode */
._recursoEditRow_1lfks_858 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

._recursoEditHeaderFields_1lfks_865 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

._recursoEditHeader_1lfks_865 {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border-subtle);
}

._recursoRemoveBtnCard_1lfks_881 {
    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_1lfks_881:hover {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-500);
}

._recursoDeleteCardBtn_1lfks_903 {
    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_1lfks_764:hover ._recursoDeleteCardBtn_1lfks_903 {
    opacity: 1;
}

._recursoDeleteCardBtn_1lfks_903:hover {
    color: var(--error-500);
    background: rgba(239, 68, 68, 0.04);
}

._recursoDeleteCardBtn_1lfks_903:focus-visible {
    opacity: 1;
    outline: 2px solid var(--error-500);
    outline-offset: -2px;
}

._recursoEditInput_1lfks_937 {
    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: var(--surface-card);
}

._recursoEditInput_1lfks_937:focus,
._recursoEditInputSm_1lfks_950:focus,
._recursoDetailEditLabelInput_1lfks_951:focus,
._recursoDetailEditValue_1lfks_952:focus {
    outline: none;
    border-color: var(--action-primary-bg);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

._recursoEditInputSm_1lfks_950 {
    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: var(--surface-card);
}

._recursoDetailEditRow_1lfks_969 {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    border-bottom: 1px solid var(--slate-100);
}

._recursoDetailEditRow_1lfks_969:last-of-type {
    border-bottom: none;
}

._recursoDetailEditLabel_1lfks_951 {
    width: 110px;
    flex-shrink: 0;
    padding: 6px 10px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary);
}

._recursoDetailEditLabelInput_1lfks_951 {
    width: 110px;
    flex-shrink: 0;
    padding: 5px 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    font-size: 12px;
    background: var(--surface-card);
    color: var(--text-secondary);
}

._recursoDetailEditValue_1lfks_952 {
    flex: 1;
    min-width: 0;
    padding: 5px 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 4px;
    font-size: 12px;
    background: var(--surface-card);
    color: var(--text-primary);
}

._recursoRemoveBtn_1lfks_881 {
    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_1lfks_881:hover {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-500);
}

._recursoRemoveBtn_1lfks_881:focus-visible {
    outline: 2px solid var(--action-primary-bg);
    outline-offset: 2px;
}

._recursoAddBtn_1lfks_1038 {
    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_1lfks_1038:hover {
    border-color: var(--action-primary-bg);
    color: var(--action-primary-bg);
    background: rgba(59, 130, 246, 0.04);
}

._recursoAddBtn_1lfks_1038:focus-visible {
    outline: 2px solid var(--action-primary-bg);
    outline-offset: 2px;
}

._recursoAddResourceBtn_1lfks_1067 {
    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_1lfks_1067:hover {
    border-color: var(--action-primary-bg);
    background: rgba(59, 130, 246, 0.04);
}

/* Ponto/Inacao edit mode */
._pontoEditCard_1lfks_1084 {
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

._pontoEditRow_1lfks_1094 {
    display: flex;
    align-items: center;
    gap: 8px;
}

._pontoEditTitle_1lfks_1100 {
    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_1lfks_1100:focus {
    outline: none;
    border-color: var(--action-primary-bg);
}

._pontoEditDesc_1lfks_1115 {
    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;
}

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

._pontoEditSeverity_1lfks_1131 {
    padding: 6px 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    font-size: 12px;
    background: var(--surface-card);
    cursor: pointer;
}

._pontoFieldLabel_1lfks_1140 {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

/* Diagrama */
._diagramaSection_1lfks_1149 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

._diagramaToolbar_1lfks_1155 {
    display: flex;
    justify-content: flex-end;
}

._diagramaContainer_1lfks_1160 {
    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_1lfks_1160 svg {
    max-width: 100%;
    height: auto;
}

._diagramaSection_1lfks_1149 {
    position: relative;
}

._diagramaHint_1lfks_1180 {
    font-size: 12px;
    color: var(--text-tertiary);
    text-align: center;
    margin-top: 8px;
    font-style: italic;
}

._diagramTooltip_1lfks_1188 {
    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_1lfks_1188 strong {
    display: block;
    font-size: 14px;
    color: var(--text-primary);
    margin-bottom: 4px;
}

._diagramTooltip_1lfks_1188 p {
    margin: 0 0 4px;
    font-size: 13px;
}

._tooltipDeps_1lfks_1213 {
    display: block;
    font-size: 12px;
    color: var(--action-primary-bg, #3b82f6);
    font-style: italic;
}

._mermaidFallback_1lfks_1220 {
    white-space: pre-wrap;
    font-size: 12px;
    color: var(--text-secondary);
}

/* Pontos */
._pontosGrid_1lfks_1227 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

@media (max-width: 768px) {
    ._pontosGrid_1lfks_1227 {
        grid-template-columns: 1fr;
    }
}

._pontosLabel_1lfks_1239 {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.88px;
    color: #6b7280;
    font-weight: 700;
    margin: 0 0 8px;
    line-height: 16.5px;
}

._pontoCard_1lfks_1249 {
    background: var(--surface-card);
    border: 1px solid #e6e8ef;
    border-radius: 10px;
    padding: 15px;
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

._pontoForte_1lfks_1260 {}

._pontoFraco_1lfks_1262 {}

._pontoHeader_1lfks_1264 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

._pontoTitle_1lfks_1271 {
    font-size: 13px;
    font-weight: 700;
    color: #111827;
    line-height: 19.5px;
}

._pontoImpactSection_1lfks_1278 {
    display: flex;
    flex-direction: column;
    gap: 1.3px;
}

._pontoImpactLabel_1lfks_1284 {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
    line-height: 15px;
}

._pontoImpactText_1lfks_1293 {
    font-size: 12px;
    font-weight: 400;
    color: #111827;
    line-height: 18.6px;
    margin: 0;
}

._pontoExpandButton_1lfks_1301 {
    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_1lfks_1301:hover {
    color: #1e6fa3;
}

._pontoSources_1lfks_1317 {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

._pontoSourceBadge_1lfks_1323 {
    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_1lfks_1335 {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 6px 0 0;
    line-height: 1.5;
}

/* Criticidade badges */
._critBadge_1lfks_1343 {
    font-size: 10px;
    padding: 3px 9px;
    border-radius: 999px;
    font-weight: 700;
    text-transform: capitalize;
    line-height: 15px;
}

._crit_high_1lfks_1352,
._crit_alta_1lfks_1353 {
    background: rgba(220, 38, 38, 0.1);
    color: #dc2626;
    border: 1px solid rgba(220, 38, 38, 0.2);
}

._crit_medium_1lfks_1359,
._crit_media_1lfks_1360 {
    background: rgba(245, 158, 11, 0.1);
    color: #b45309;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

._crit_low_1lfks_1366,
._crit_baixa_1lfks_1367 {
    background: rgba(22, 163, 74, 0.1);
    color: #16a34a;
    border: 1px solid rgba(22, 163, 74, 0.2);
}

._crit_critical_1lfks_1373 {
    background: rgba(220, 38, 38, 0.1);
    color: #dc2626;
    border: 1px solid rgba(220, 38, 38, 0.2);
}

/* Inacao */
._inacaoList_1lfks_1380 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

._inacaoCard_1lfks_1386 {
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 14px;
}

._inacaoHeader_1lfks_1392 {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

._inacaoTitle_1lfks_1399 {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
}

._inacaoDeadline_1lfks_1405 {
    font-size: 10px;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--surface-subtle);
    color: var(--text-tertiary);
}

._inacaoDesc_1lfks_1413 {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 8px 0 0;
    line-height: 1.5;
}

._inacaoDesc_1lfks_1413 p {
    margin: 0 0 8px;
}

._inacaoDesc_1lfks_1413 p:last-child {
    margin-bottom: 0;
}

._inacaoDesc_1lfks_1413 strong {
    font-weight: 700;
    color: var(--text-primary);
}

._inacaoDesc_1lfks_1413 ol,
._inacaoDesc_1lfks_1413 ul {
    margin: 8px 0;
    padding-left: 20px;
}

._inacaoDesc_1lfks_1413 li {
    margin-bottom: 6px;
}

/* Footer */
._footer_1lfks_1444 {
    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_1lfks_1454 {
    font-size: 12px;
    color: var(--text-tertiary);
}


/* Empty / Loading */
._emptyMsg_1lfks_1461 {
    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_1lfks_1472 {
    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_1lfks_1485 {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

._loadingTitle_1lfks_1495 {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 8px 0 4px;
    text-align: center;
}

._loadingDescription_1lfks_1503 {
    font-size: 14px;
    color: var(--text-tertiary);
    text-align: center;
    margin: 0;
    line-height: 1.5;
}

._infoBoxBlue_1lfks_1511 {
    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_1lfks_1523 {
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.125rem;
}

._infoTextSmall_1lfks_1533 {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    line-height: 1.2188rem;
    margin: 0;
    text-align: left;
}

._stepsList_1lfks_1541 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 2rem;
    width: 100%;
}

._stepItem_1lfks_1549 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: opacity 0.4s ease-in-out;
}

._stepItemActive_1lfks_1556 {}

._stepDot_1lfks_1558 {
    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_1lfks_1571 {
    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_1lfks_1 1.4s ease-in-out infinite;
}

@keyframes _pulse_1lfks_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_1lfks_1558::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_1lfks_1571::after {
    width: 0.625rem;
    height: 0.625rem;
}

._stepText_1lfks_1606 {
    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_1lfks_1613 {
    color: var(--indigo-900);
    font-weight: 700;
    font-size: 1rem;
}

/* Loading dots for active step */
._loadingDots_1lfks_1620 {
    display: inline-flex;
    gap: 0.2rem;
    margin-left: 0.25rem;
    align-items: center;
}

._loadingDots_1lfks_1620 span {
    width: 0.25rem;
    height: 0.25rem;
    background: var(--indigo-700);
    border-radius: 50%;
    animation: _dot-bounce_1lfks_1 1.2s ease-in-out infinite;
}

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

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

@keyframes _dot-bounce_1lfks_1 {

    0%,
    80%,
    100% {
        transform: translateY(0);
        opacity: 0.4;
    }

    40% {
        transform: translateY(-0.3rem);
        opacity: 1;
    }
}

/* Buttons */
._btnPrimary_1lfks_1659 {
    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_1lfks_1659:hover {
    background: var(--action-primary-bg-hover);
}

._btnSecondary_1lfks_1675 {
    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_1lfks_1675:hover {
    background: var(--surface-subtle);
}

/* Editor Modal */
._editorOverlay_1lfks_1692 {
    position: fixed;
    inset: 0;
    background: var(--surface-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(3px);
}

._editorModal_1lfks_1703 {
    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_1lfks_1715 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    border-bottom: 1px solid var(--border-subtle);
}

._editorHeader_1lfks_1715 h3 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
}

._editorDocsLink_1lfks_1730 {
    font-size: 12px;
    color: var(--text-link);
    text-decoration: none;
    padding: 4px 12px;
    border: 1px solid var(--border-focus);
    border-radius: 6px;
}

._editorDocsLink_1lfks_1730:hover {
    background: var(--action-primary-bg);
    color: var(--action-primary-text);
}

._editorBody_1lfks_1744 {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 16px 20px;
    overflow: hidden;
    min-height: 0;
}

._editorPanel_1lfks_1754 {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    overflow: hidden;
    min-height: 0;
}

._editorPanelLabel_1lfks_1763 {
    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_1lfks_1774 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 12px;
    background: var(--surface-subtle);
    border-bottom: 1px solid var(--border-subtle);
}

._editorPanelHeader_1lfks_1774 ._editorPanelLabel_1lfks_1763 {
    padding: 0;
    border: none;
    background: none;
}

._zoomControls_1lfks_1789 {
    display: flex;
    align-items: center;
    gap: 6px;
}

._zoomControls_1lfks_1789 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_1lfks_1789 button:last-child {
    width: auto;
    padding: 0 8px;
    font-size: 11px;
    font-weight: 500;
}

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

._zoomControls_1lfks_1789 span {
    font-size: 11px;
    color: var(--text-tertiary);
    min-width: 36px;
    text-align: center;
}

._editorTextarea_1lfks_1828 {
    flex: 1;
    padding: 14px;
    font-family: var(--font-family-mono);
    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_1lfks_1842 {
    flex: 1;
    padding: 20px;
    overflow: hidden;
    background: var(--color-bg-primary, white);
    min-height: 0;
    user-select: none;
}

._editorPreview_1lfks_1842 svg {
    max-width: none;
    height: auto;
}

._editorFooter_1lfks_1856 {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px;
    border-top: 1px solid var(--border-subtle);
}

/* AI Regenerate Button & Header Actions */
._headerActions_1lfks_1865 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

._aiButton_1lfks_1871 {
    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_1lfks_1871:hover:not(:disabled) {
    opacity: 0.9;
}

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

/* Regen Modal - follows RegenerateAnswersModal design */
._regenModal_1lfks_1897 {
    max-width: 37.5rem;
}

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

._regenModalDesc_1lfks_1907 {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
}

._regenSectionList_1lfks_1914 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-height: 15rem;
    overflow-y: auto;
}

._regenAllBtn_1lfks_1922 {
    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_1lfks_1922:hover:not(:disabled) {
    transform: translateY(-0.125rem);
    background: rgba(109, 40, 217, 0.05);
    border-color: rgba(109, 40, 217, 0.3);
}

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

._regenAllBtnSelected_1lfks_1947 {
    border-color: var(--indigo-700);
    background: rgba(109, 40, 217, 0.05);
}

._regenAllBtn_1lfks_1922 strong {
    display: block;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

._regenAllDesc_1lfks_1959 {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
    line-height: 1.5;
}

/* Orange variant for "regenerate all" option */
._regenAllBtnOrange_1lfks_1968:hover:not(:disabled) {
    background: rgba(251, 146, 60, 0.05);
    border-color: rgba(251, 146, 60, 0.3);
}

._regenAllBtnOrangeSelected_1lfks_1973 {
    border-color: var(--warning-500);
    background: rgba(251, 146, 60, 0.05);
}

/* Badges inside option cards */
._regenBadgePurple_1lfks_1979 {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    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_1lfks_1993 {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    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_1lfks_2008 {
    border: 0.0625rem solid var(--border-subtle);
    border-radius: 0.5rem;
    overflow: hidden;
}

._regenAccordionButton_1lfks_2014 {
    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-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

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

._regenAccordionChevron_1lfks_2033 {
    transition: transform 0.2s ease;
    color: var(--text-secondary);
}

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

._regenAccordionContent_1lfks_2042 {
    max-height: 0;
    overflow: hidden;
    background: var(--surface-card);
    border-top: 0.0625rem solid var(--border-subtle);
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
    padding: 0 1rem;
}

._regenAccordionContentOpen_1lfks_2051 {
    max-height: 31.25rem;
    padding: 1rem;
    transition: max-height 0.3s ease-in, padding 0.3s ease-in;
}

._regenCheckbox_1lfks_2057 {
    width: 1.125rem;
    height: 1.125rem;
    cursor: pointer;
    accent-color: var(--action-primary-bg);
}

/* Regen tips and context */

._regenSectionItem_1lfks_2066 {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 0.375rem;
    cursor: pointer;
    transition: background 0.2s ease;
    font-size: 0.875rem;
    color: var(--text-primary);
    width: 100%;
    text-align: left;
}

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

._regenTipsBox_1lfks_2084 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--surface-subtle);
    border-radius: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

._regenTextarea_1lfks_2096 {
    width: 100%;
    padding: 0.75rem;
    border: 0.0625rem solid var(--border-subtle);
    border-radius: 0.5rem;
    font-size: 0.875rem;
    resize: vertical;
    min-height: 6rem;
    background: var(--surface-subtle);
    transition: border-color 0.2s ease;
}

._regenTextarea_1lfks_2096:focus {
    outline: none;
    border-color: var(--indigo-700);
}

._regenNoteBox_1lfks_2113 {
    padding: 0.75rem 1rem;
    background: rgba(251, 146, 60, 0.1);
    border-radius: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--warning-500);
    line-height: 1.5;
}

._regenModalActions_1lfks_2123 {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 0.5rem;
    border-top: 0.0625rem solid var(--border-subtle);
}

._regenCancelBtn_1lfks_2131 {
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    border: 0.0625rem solid var(--border-subtle);
    background: var(--surface-card);
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

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

._regenConfirmBtn_1lfks_2148 {
    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-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

._regenConfirmBtn_1lfks_2148:hover:not(:disabled) {
    background: var(--action-primary-bg-hover);
}

._regenConfirmBtn_1lfks_2148:disabled {
    background: var(--border-default);
    cursor: not-allowed;
    opacity: 0.6;
}
._container_16l5c_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_16l5c_12 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    background: var(--indigo-700);
    border-radius: 50%;
}

._iconContainer_16l5c_12 svg,
._iconContainer_16l5c_12 img {
    width: 2.5rem;
    height: 2.5rem;
    filter: brightness(0) invert(1);
}

._title_16l5c_29 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 2rem;
    margin: 0;
}

._description_16l5c_37 {
    font-size: 1rem;
    color: var(--text-tertiary);
    line-height: 1.5rem;
    margin: 0;
}

._generateButton_16l5c_44 {
    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: var(--text-inverse);
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}

._generateButton_16l5c_44:not(:disabled) {
    transition: opacity 0.2s ease-in-out;
}

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

._generateButton_16l5c_44:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
/* WorkloadDetailsScreen.module.css */

._workloadDetailsScreen_1pc66_3 {
  display: flex;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--surface-subtle), var(--surface-page));
  overflow: hidden;
}

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

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

._content_1pc66_18 {
  flex: 1;
  padding: 0 1.5rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Main white card */
._mainCard_1pc66_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;
}

html.dark ._mainCard_1pc66_35 {
  background: var(--surface-card);
}

/* Entity Header (WORKLOAD - Nome) */
._entityHeader_1pc66_52 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  height: 3rem;
  padding: 0 1.5rem;
  background: var(--surface-card);
  border-bottom: 1px solid var(--border-subtle);
  flex-shrink: 0;
}

._entityIcon_1pc66_63 {
  font-size: 1.25rem;
  line-height: 1;
}

._pulsingDot_1pc66_68 {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--success-500);
  animation: _pulseGreen_1pc66_1 2s ease-in-out infinite;
  margin-left: -0.375rem;
}

@keyframes _pulseGreen_1pc66_1 {

  0%,
  100% {
    background: var(--success-500);
    opacity: 1;
  }

  50% {
    background: var(--success-600);
    opacity: 0.5;
  }
}

._entityLabel_1pc66_91 {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--blue-700);
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
  line-height: 1.25rem;
  flex: 1;
  position: relative;
}

._entityIdTooltip_1pc66_102 {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  background: var(--slate-800);
  color: var(--border-subtle);
  font-family: var(--font-family-mono);
  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_1pc66_102::before {
  content: '';
  position: absolute;
  left: 24px;
  top: -12px;
  border: 6px solid transparent;
  border-bottom-color: var(--slate-800);
}

._entityIdTooltip_1pc66_102:active {
  background: var(--slate-700);
}

._entityLabel_1pc66_91:hover ._entityIdTooltip_1pc66_102 {
  opacity: 1;
  pointer-events: auto;
}

._entityId_1pc66_102 {
  font-family: var(--font-family-mono);
  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_1pc66_102:hover {
  background: rgba(0, 0, 0, 0.25);
  color: white;
}

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

._cardContent_1pc66_165 {
  display: flex;
  flex-direction: column;
  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_1pc66_165._cardContentWithFixedFooter_1pc66_178 {
  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_1pc66_186 {
  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_1pc66_186 p {
  font-size: 0.875rem;
  color: var(--text-tertiary);
  margin: 0;
}

/* Responsive */
@media (max-width: 48rem) {
  ._content_1pc66_18 {
    padding: 1rem;
  }
}

/* Loading and Error States */
._loadingState_1pc66_210,
._errorState_1pc66_211 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: var(--border-subtle);
}

._loadingState_1pc66_210 p,
._errorState_1pc66_211 p {
  font-size: 1rem;
  color: var(--text-tertiary);
  font-weight: 500;
}

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

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

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

._retryButton_1pc66_245,
._logoutButton_1pc66_246 {
  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_1pc66_245 {
  background: var(--action-primary-bg);
  color: white;
}

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

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

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

/* Breadcrumb Container with Delete Button */
._breadcrumbContainer_1pc66_275 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.5rem;
  margin-top: 0.375rem;
  margin-bottom: 0.25rem;
  flex-shrink: 0;
}

/* Delete Button */
._deleteButton_1pc66_286 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  background: var(--surface-card);
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--error-500);
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

._deleteButton_1pc66_286:hover {
  background: rgba(239, 68, 68, 0.1);
}

/* Delete Confirmation */
._deleteConfirmation_1pc66_307 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  background: var(--surface-card);
  border: 0.0417rem solid var(--error-500);
  border-radius: 0.5rem;
}

._confirmationText_1pc66_317 {
  font-size: 0.875rem;
  color: var(--error-500);
  font-weight: 500;
}

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

._confirmYes_1pc66_328,
._confirmNo_1pc66_329 {
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: none;
}

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

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

._confirmNo_1pc66_329 {
  background: var(--slate-100);
  color: var(--text-tertiary);
}

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

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

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

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


/* ─── History Drawer ─────────────────────────────────────────────────────── */
._historyOverlay_1pc66_377 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1000;
  display: flex;
  justify-content: flex-end;
  animation: _fadeIn_1pc66_1 0.2s ease;
}

@keyframes _fadeIn_1pc66_1 {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

._historyDrawer_1pc66_400 {
  width: 30rem;
  max-width: 90vw;
  height: 100%;
  background: var(--surface-page);
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  animation: _slideIn_1pc66_1 0.25s ease;
}

@keyframes _slideIn_1pc66_1 {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0);
  }
}

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

._historyDrawerTitle_1pc66_430 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
}

._historyDrawerClose_1pc66_437 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: transparent;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  color: var(--text-tertiary);
  transition: background 0.15s;
}

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

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

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

._historyFilterLabel_1pc66_470 {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-secondary);
}

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

._historyDateInput_1pc66_482 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  background: var(--surface-page);
  flex: 1;
}

._historyDateField_1pc66_493 {
  border: none;
  outline: none;
  font-size: 0.8125rem;
  color: var(--text-primary);
  background: transparent;
  width: 100%;
}

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

._historyDateSeparator_1pc66_506 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  flex-shrink: 0;
}

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

._historyDayLabel_1pc66_518 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.75rem;
}

._historyItem_1pc66_527 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--border-subtle);
}

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

._historyAvatar_1pc66_539 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  color: white;
  font-size: 0.625rem;
  font-weight: 700;
  flex-shrink: 0;
}

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

._historyItemContent_1pc66_557 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  flex: 1;
  min-width: 0;
}

._historyItemText_1pc66_565 {
  font-size: 0.8125rem;
  color: var(--slate-900);
  line-height: 1.4;
}

._historyItemTime_1pc66_571 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  white-space: nowrap;
  flex-shrink: 0;
}

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

._historyPaginationInfo_1pc66_587 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

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

._historyPaginationBtn_1pc66_598 {
  background: none;
  border: none;
  font-size: 0.8125rem;
  color: var(--action-primary-bg);
  cursor: pointer;
  padding: 0;
}

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

._historyPaginationPage_1pc66_612 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}.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;
}
/* ===== 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 6rem;
  box-sizing: border-box;
  overflow: hidden;
}

/* ===== Header ===== */
.slide-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
  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);
}

/* ===== 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;
}

/* ===== Strategic Objectives Section ===== */
.slide1-objectives-section {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.slide1-section-divider {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 3rem;
  flex-shrink: 0;
}

.slide1-section-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--slide-success);
  flex-shrink: 0;
}

.slide1-section-label {
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
  white-space: nowrap;
}

.slide1-section-rule {
  flex: 1;
  height: 1px;
  background: var(--slide-border);
}

/* ===== 3x2 Grid ===== */
.slide1-objectives-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 3rem;
  flex: 1;
  min-height: 0;
}

.slide1-objective-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  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: 1rem;
  padding: 1.5rem 2.5rem;
  box-shadow: var(--slide-card-shadow);
  text-align: left;
  min-height: 0;
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.2s, transform 0.15s, box-shadow 0.2s;
}

.slide1-objective-card:hover {
  border-color: var(--slide-success);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}

.slide1-objective-number {
  position: absolute;
  top: 2rem;
  left: 2.5rem;
  font-size: 6rem;
  font-weight: 800;
  color: var(--slide-success);
  line-height: 1;
  opacity: 0.15;
  pointer-events: none;
}

.slide1-objective-goal {
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.3;
  display: block;
  width: 100%;
  text-align: left;
}

/* ===== Footer Card ===== */
.slide1-footer-card {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 3rem;
  padding: 2rem 1.5rem;
  width: 70%;
  align-self: center;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-left: 4px solid var(--slide-success);
  border-radius: 0.75rem;
  box-shadow: var(--slide-card-shadow);
}

.slide1-footer-text {
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--slide-text-primary);
  line-height: 1.4;
  text-align: center;
}

/* ===== Objective Modal ===== */
.slide1-modal-overlay {
  position: absolute;
  inset: 0;
  background: var(--slide-overlay);
  z-index: 200;
}

.slide1-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-top: 4px solid var(--slide-success);
  border-radius: 1.25rem;
  padding: 2.5rem 3rem;
  z-index: 201;
  text-align: center;
}

.slide1-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;
}

.slide1-modal-close:hover {
  color: var(--slide-text-primary);
  background: var(--slide-border);
}

.slide1-modal-icon {
  margin-bottom: 1.25rem;
}

.slide1-modal-icon-svg.slide-icon svg {
  width: 3rem;
  height: 3rem;
}

.slide1-modal-title {
  font-size: 2.8rem;
  font-weight: 800;
  color: var(--slide-text-primary);
  margin: 0 0 1.5rem;
  line-height: 1.2;
}

.slide1-modal-section {
  text-align: left;
  margin-bottom: 1.25rem;
}

.slide1-modal-text {
  font-size: 2.1rem;
  line-height: 1.5;
  color: var(--slide-text-secondary);
  margin: 0;
}


/* ===== Connector Lines ===== */
.slide1-connector-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
  z-index: 0;
}
.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;
}
/* ===== 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);
}

/* ===== Opportunities & Risks Two-Column Layout ===== */
.env-middle {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 1.25rem;
}

.env-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  flex: 1;
  min-height: 0;
}

.env-column {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.env-column-header {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 0.75rem;
}

.env-column-header h3 {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--slide-text-secondary);
}

.env-column-icon {
  font-size: 1rem;
  color: var(--slide-success);
}

.env-column-icon.danger {
  color: var(--slide-danger);
}

/* ===== Item List ===== */
.env-item-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  flex: 1;
  min-height: 0;
}

/* ===== Item Card ===== */
.env-item-card {
  position: relative;
  background: var(--slide-card-bg-transparent);
  backdrop-filter: blur(8px);
  border: 1px solid var(--slide-border);
  border-radius: 0.75rem;
  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;
}

.env-item-card:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-2px);
  box-shadow: var(--slide-card-hover-shadow);
}

.env-risk-card:hover {
  border-color: var(--slide-danger);
  box-shadow: var(--slide-card-hover-shadow-danger);
}

.env-item-card-icon-area {
  flex-shrink: 0;
  width: 4.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: 0.75rem 0 0 0.75rem;
}

.env-item-card-icon-area.env-risk-icon-area {
  background: color-mix(in srgb, var(--slide-danger) 6%, transparent);
}

.env-item-card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1;
  padding: 1rem 6rem 1rem 1.5rem;
}

.env-item-title {
  font-weight: 700;
  line-height: 1.25;
  color: var(--slide-text-primary);
}

.env-item-card-meta {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

/* ===== Item Card (shared with SidePanel) ===== */
.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);
}

.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);
}

.item-card-icon-area .slide-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.item-card-icon-area .slide-icon svg {
  width: 2.25rem;
  height: 2.25rem;
}

.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);
}

/* ===== Icon Colors ===== */
.env-item-card-icon-area .slide-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.env-item-card-icon-area .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);
}

.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 ===== */
.env-more-button {
  margin-top: 0.5rem;
  padding: 0.4rem 1.25rem;
  background: var(--slide-bg-secondary);
  border: 1px solid var(--slide-border);
  border-radius: 2rem;
  color: var(--slide-highlight);
  font-size: 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;
}

.env-more-button:hover {
  border-color: var(--slide-highlight);
  transform: translateY(-1px);
}

.env-more-button.danger {
  color: var(--slide-danger);
}

.env-more-button.danger:hover {
  border-color: var(--slide-danger);
}

@media (max-height: 900px) {
  .env-finding-pain { font-size: 0.875rem; }
  .env-finding-resolution { font-size: 0.875rem; }
}

/* ===== 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-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);
}

/* ===== Controls (period + modality tabs) ===== */
.investment-controls {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

/* ===== Period Tabs ===== */
.period-tabs {
  display: flex;
  gap: 3px;
  background: var(--slide-border);
  border-radius: 0.6rem;
  padding: 3px;
}

.period-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;
}

.period-tab.active {
  background: var(--slide-highlight);
  color: var(--slide-text-on-highlight);
}

.period-tab:hover:not(.active) {
  color: var(--slide-text-primary);
}

/* ===== Sortable headers ===== */
.investment-table th.sortable-th {
  cursor: pointer;
  user-select: none;
  transition: color 0.2s;
}

.investment-table th.sortable-th:hover {
  color: var(--slide-text-primary);
}

.investment-table th.sortable-th:focus-visible {
  outline: 2px solid var(--slide-highlight);
  outline-offset: -2px;
  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:not(:first-child) {
  font-family: var(--font-family-mono);
  font-variant-numeric: tabular-nums;
}

.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;
}

/* VMware SPI info tooltip */
.incentive-label-with-info {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}

.incentive-info {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: help;
  outline: none;
}

.incentive-info-icon {
  width: 0.85em;
  height: 0.85em;
  color: var(--slide-text-secondary);
  opacity: 0.7;
  transition: opacity 0.15s ease;
}

.incentive-info:hover .incentive-info-icon,
.incentive-info:focus-visible .incentive-info-icon {
  opacity: 1;
}

.incentive-info-tooltip {
  position: absolute;
  bottom: calc(100% + 0.4rem);
  left: 0;
  z-index: 20;
  display: none;
  flex-direction: column;
  gap: 0.28rem;
  min-width: 15rem;
  padding: 0.6rem 0.7rem;
  background: var(--slide-bg-secondary, #1e293b);
  border: 1px solid var(--slide-border);
  border-radius: 0.4rem;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
  font-size: 0.8em;
  font-weight: 400;
  color: var(--slide-text-secondary);
  text-align: left;
  white-space: normal;
}

.incentive-info:hover .incentive-info-tooltip,
.incentive-info:focus-visible .incentive-info-tooltip,
.incentive-info:focus-within .incentive-info-tooltip {
  display: flex;
}

.incentive-info-tooltip-title {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--slide-text-primary);
  margin-bottom: 0.15rem;
}

.incentive-info-row {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
}

.incentive-info-row > span:last-child {
  font-weight: 600;
  color: var(--slide-text-primary);
  white-space: nowrap;
}

.incentive-info-row-pending > span {
  opacity: 0.6;
  font-style: italic;
}

.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);
}

.investment-upfront-note {
  font-size: 0.7rem;
  color: var(--slide-text-secondary);
  margin: 0.4rem 0 0;
  text-align: center;
  font-style: italic;
}
/* ===== 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_19mf8_2 {
  display: flex;
  height: 100vh;
  overflow: hidden;
}

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

._contentWrapper_19mf8_15 {
  flex: 1;
  background: var(--slate-100);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

._breadcrumbContainer_19mf8_23 {
  flex-shrink: 0;
  padding: 0 1.5rem;
  margin-top: 1rem;
  margin-bottom: 0.75rem;
}

._content_19mf8_15 {
  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_19mf8_41 {
  display: flex;
  gap: 1rem;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

._settingsRight_19mf8_49 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 1;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  align-self: stretch;
}

/* ─── Profile Card ───────────────────────────────────────────────────────── */
._profileCard_19mf8_61 {
  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_19mf8_77 {
  display: flex;
  align-items: center;
  gap: 1rem;
}

._avatarContainer_19mf8_83 {
  position: relative;
  flex-shrink: 0;
}

._avatar_19mf8_83 {
  width: 5rem;
  height: 5rem;
  background: var(--indigo-700);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

._avatarText_19mf8_98 {
  color: var(--text-inverse);
  font-size: 1.5rem;
  font-weight: 700;
}

._avatarBadge_19mf8_104 {
  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_19mf8_120 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  align-items: center;
  text-align: center;
}

._profileName_19mf8_128 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
  letter-spacing: -0.01em;
}

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

._profileEmail_19mf8_142 {
  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_19mf8_153 {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin-top: 0.75rem;
  width: 100%;
}

._badge_19mf8_161 {
  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_19mf8_161 strong {
  color: var(--slate-900);
}

._editProfileButton_19mf8_176 {
  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_19mf8_176:hover {
  background: var(--action-primary-bg-hover);
}

/* ─── Main Card with Tabs ────────────────────────────────────────────────── */
._mainCard_19mf8_196 {
  background: white;
  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_19mf8_208 {
  background: var(--surface-page);
  border: none;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
  border-bottom: 1px solid var(--border-subtle);
}

._tabsContainer_19mf8_208>div {
  gap: 0;
  border-bottom: none;
}

._tabsContainer_19mf8_208 button {
  padding: 0.875rem 1.25rem;
  border-radius: 0;
  font-weight: 500;
  border-bottom: 2px solid transparent;
  background: transparent;
  transition: all 0.15s;
}

._tabsContainer_19mf8_208 button:hover {
  background: transparent;
}

._tabsContainer_19mf8_208 button[class*="tabActive"] {
  background: transparent;
  color: var(--action-primary-bg);
  border-bottom-color: var(--action-primary-bg);
}

html.dark ._tabsContainer_19mf8_208 button[class*="tabActive"] {
  color: #FFFFFF;
  border-bottom-color: #FFFFFF;
}

._cardContent_19mf8_246 {
  padding: 1.5rem;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}

/* ─── Tabs override (match Lovable style) ────────────────────────────────── */
._tabsContainer_19mf8_208 .tabs-list {
  gap: 0;
}

._tabsContainer_19mf8_208 .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_19mf8_208 .tab-item:hover {
  background: transparent;
}

._tabsContainer_19mf8_208 .tab-item.active {
  background: transparent;
  color: var(--action-primary-bg);
  border-bottom: 2px solid var(--action-primary-bg);
}

html.dark ._tabsContainer_19mf8_208 .tab-item.active {
  color: #FFFFFF;
  border-bottom-color: #FFFFFF;
}

/* ─── Section Header ─────────────────────────────────────────────────────── */
._sectionHeader_19mf8_284 {
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--border-subtle);
  margin-bottom: 1.5rem;
}

._sectionTitle_19mf8_290 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--slate-900);
  margin: 0 0 0.25rem;
}

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

/* ─── Region Section ─────────────────────────────────────────────────────── */
._profileDataSection_19mf8_304 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

._profileSummaryRow_19mf8_310 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 0;
}

._profileSummaryLeft_19mf8_317 {
  display: flex;
  align-items: center;
  gap: 1rem;
}

._profileAvatarLarge_19mf8_323 {
  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_19mf8_335 {
  color: white;
  font-size: 1.25rem;
  font-weight: 700;
}

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

._profileSummaryName_19mf8_347 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--slate-900);
  margin: 0;
}

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

._profileSummaryEmail_19mf8_360 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: 0;
}

._profileSummaryBadges_19mf8_369 {
  display: flex;
  gap: 0.75rem;
}

._profileStatBadge_19mf8_374 {
  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_19mf8_384 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

._profileStatValue_19mf8_392 {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--action-primary-bg);
}

._profileStatValueText_19mf8_398 {
  font-size: 1.125rem;
  font-weight: 700;
  color: #10B981;
}

._profileSaveSection_19mf8_404 {
  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_19mf8_413 {
  font-size: 0.8125rem;
  color: var(--action-primary-bg);
  margin: 0;
}

._profileSaveActions_19mf8_419 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}

._cancelButton_19mf8_426 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: var(--text-primary);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
  line-height: 1.25rem;
}

._cancelButton_19mf8_426:hover:not(:disabled) {
  background: var(--surface-subtle);
  border-color: var(--slate-400);
}

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

/* ─── Language Cards ─────────────────────────────────────────────────────── */
._languageCards_19mf8_453 {
  display: flex;
  gap: 1rem;
}

/* ─── Notification Settings ──────────────────────────────────────────────── */
._notifGroup_19mf8_459 {
  display: flex;
  flex-direction: column;
  gap: 0;
}

._notifGroupLabel_19mf8_465 {
  font-size: 0.6875rem;
  font-weight: 700;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 0.75rem;
}

._notifList_19mf8_474 {
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  overflow: hidden;
}

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

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

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

._notifItemTitle_19mf8_498 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
}

._notifItemDesc_19mf8_504 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._languageCard_19mf8_453 {
  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_19mf8_453:hover {
  border-color: var(--slate-400);
}

._languageCardActive_19mf8_527 {
  border-color: var(--action-primary-bg);
  background: var(--blue-50);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

._languageCardCode_19mf8_533 {
  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_19mf8_527 ._languageCardCode_19mf8_533 {
  background: white;
  color: var(--action-primary-bg);
}

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

._languageCardName_19mf8_555 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
}

._languageCardSub_19mf8_561 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._languageCardBadge_19mf8_566 {
  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_19mf8_575 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: white;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

._languageCardRadio_19mf8_583 {
  width: 1.25rem;
  height: 1.25rem;
  border: 2px solid var(--border-subtle);
  border-radius: 50%;
  flex-shrink: 0;
}

/* ─── Questionnaire Config ───────────────────────────────────────────────── */
._questionnaireAccordion_19mf8_592 {
  background: var(--surface-page);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

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

._questionnaireAccordionIcon_19mf8_608 {
  width: 1.75rem;
  height: 1.75rem;
  background: var(--blue-50);
  border-radius: 0.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

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

._questionnaireAccordionTitle_19mf8_626 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--slate-900);
}

._questionnaireAccordionDesc_19mf8_632 {
  font-size: 0.6875rem;
  color: var(--text-tertiary);
}

._questionnaireInfoBanner_19mf8_637 {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  background: var(--blue-50);
  border: 1px solid rgba(59, 130, 246, 0.2);
  border-radius: 0.5rem;
  padding: 0.875rem 1rem;
}

._questionnaireInfoTitle_19mf8_647 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--slate-900);
  display: block;
  margin-bottom: 0.125rem;
}

._questionnaireInfoText_19mf8_655 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin: 0;
  line-height: 1.5;
}

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

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

._questionnaireSectionBar_19mf8_675 {
  width: 3px;
  height: 1.25rem;
  border-radius: 2px;
  flex-shrink: 0;
}

._questionnaireSectionTitle_19mf8_682 {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--slate-900);
}

._questionnaireItemList_19mf8_688 {
  display: flex;
  flex-direction: column;
  border-left: 2px solid var(--border-subtle);
  margin-left: 0.125rem;
  padding-left: 0.75rem;
  gap: 0;
}

._questionnaireItem_19mf8_688 {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.625rem 0;
  border-bottom: 1px solid var(--border-subtle);
}

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

._questionnaireItemDot_19mf8_709 {
  font-size: 1rem;
  line-height: 1;
  flex-shrink: 0;
  margin-top: 0.125rem;
}

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

._questionnaireItemTitle_19mf8_722 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
}

._questionnaireItemDesc_19mf8_728 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}

._questionnaireCustomizeBtn_19mf8_733 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.75rem;
  background: none;
  border: 1.5px dashed var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--action-primary-bg);
  cursor: pointer;
  transition: all 0.15s;
}

._questionnaireCustomizeBtn_19mf8_733:hover {
  background: var(--blue-50);
  border-color: var(--action-primary-bg);
}

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

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

._regionTitle_19mf8_766 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--slate-900);
  margin: 0 0 0.25rem;
}

._regionSubtitle_19mf8_773 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: 0;
}

._infoBanner_19mf8_779 {
  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_19mf8_789 {
  font-size: 0.75rem;
  color: var(--warning-700);
  margin: 0;
  line-height: 1.5;
}

._regionSelectors_19mf8_796 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}

._regionField_19mf8_802 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._regionLabel_19mf8_808 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

._regionHint_19mf8_817 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  margin-top: 0.25rem;
}

._noteBanner_19mf8_823 {
  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_19mf8_833 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin: 0;
  line-height: 1.5;
}

._saveButton_19mf8_840 {
  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_19mf8_840:hover:not(:disabled) {
  background: var(--action-primary-bg-hover);
}

._saveButton_19mf8_840:disabled {
  background: var(--blue-300);
  cursor: not-allowed;
}

/* ─── Save section (border-top separator) ────────────────────────────────── */
._saveSection_19mf8_868 {
  padding-top: 1rem;
  border-top: 1px solid var(--border-subtle);
  margin-top: 0.5rem;
  display: flex;
  justify-content: flex-end;
}

/* ─── Region Dropdown ────────────────────────────────────────────────────── */
._regionDropdown_19mf8_877 {
  position: relative;
}

._regionTrigger_19mf8_881 {
  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_19mf8_881:hover {
  border-color: var(--slate-400);
}

._regionTrigger_19mf8_881:focus {
  border-color: var(--action-primary-bg);
  outline: none;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.1);
}

/* Read-only field: drops the affordances that make an input look editable.
   Must come after .regionTrigger:hover to win on equal specificity. */
._regionTriggerReadOnly_19mf8_909 {
  background: transparent;
  cursor: default;
}

._regionTriggerReadOnly_19mf8_909:hover {
  border-color: var(--border-subtle);
}

._regionPlaceholder_19mf8_918 {
  color: var(--text-disabled);
}

._regionChevron_19mf8_922 {
  font-size: 18px;
  color: var(--text-tertiary);
  transition: transform 0.15s;
}

._regionChevronOpen_19mf8_928 {
  transform: rotate(180deg);
}

._regionList_19mf8_932 {
  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_19mf8_946 {
  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_19mf8_955 {
  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_19mf8_955:hover {
  background: var(--slate-100);
}

._regionOptionActive_19mf8_974 {
  background: var(--blue-50);
  color: var(--action-primary-bg);
  font-weight: 500;
}

._regionOptionDisabled_19mf8_980 {
  opacity: 0.4;
  cursor: not-allowed;
}

._regionName_19mf8_985 {
  flex: 1;
}

._regionCode_19mf8_989 {
  font-size: 0.75rem;
  color: var(--text-disabled);
  font-family: var(--font-family-mono);
}

/* ─── Profile Tab ────────────────────────────────────────────────────────── */
._formGrid_19mf8_996 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}

._formField_19mf8_1002 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._formLabel_19mf8_1008 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

._formInput_19mf8_1014 {
  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_19mf8_1014:focus {
  border-color: var(--action-primary-bg);
  outline: none;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.1);
}

._formInput_19mf8_1014::placeholder {
  color: var(--text-disabled);
}

/* ─── Notifications Tab ──────────────────────────────────────────────────── */
._notificationList_19mf8_1035 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._notificationItem_19mf8_1041 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
  padding: 1rem;
}

._notificationInfo_19mf8_1051 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._notificationTitle_19mf8_1057 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

._notificationDesc_19mf8_1063 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

/* ─── Switch ─────────────────────────────────────────────────────────────── */
._switch_19mf8_1069 {
  position: relative;
  width: 2.5rem;
  height: 1.375rem;
  background: var(--slate-300);
  border-radius: 9999px;
  border: none;
  cursor: pointer;
  transition: background 0.2s;
  flex-shrink: 0;
}

._switch_19mf8_1069._active_19mf8_272 {
  background: var(--action-primary-bg);
}

._switchThumb_19mf8_1085 {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 1.125rem;
  height: 1.125rem;
  background: var(--surface-page);
  border-radius: 50%;
  transition: transform 0.2s;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

._switch_19mf8_1069._active_19mf8_272 ._switchThumb_19mf8_1085 {
  transform: translateX(1.125rem);
}

/* ─── Organization Tab ───────────────────────────────────────────────────── */
._orgAiSection_19mf8_1102 {
  margin-top: 1.75rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--border-subtle);
}

._orgAiHeader_19mf8_1108 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

._orgAiTitle_19mf8_1115 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
  margin: 0;
}

/* ─── Placeholder tabs ───────────────────────────────────────────────────── */
._placeholderContent_19mf8_1123 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 3rem;
  color: var(--text-disabled);
}

._placeholderText_19mf8_1133 {
  font-size: 0.875rem;
}

/* ─── Users Tab ──────────────────────────────────────────────────────────── */
._usersTabHeader_19mf8_1138 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

._searchBar_19mf8_1146 {
  flex: 1;
}

._searchBar_19mf8_1146>._searchInputWrapper_19mf8_1150 {
  max-width: 100%;
}

._addButton_19mf8_1154 {
  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-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s;
}

._addButton_19mf8_1154:hover {
  background: var(--action-primary-bg-hover);
}

._addButton_19mf8_1154:focus-visible {
  outline: 2px solid var(--action-primary-bg);
  outline-offset: 2px;
}

/* ─── Search ─────────────────────────────────────────────────────────────── */
._searchInputWrapper_19mf8_1150 {
  position: relative;
}

._searchIcon_19mf8_1184 {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: var(--text-tertiary);
}

._searchInput_19mf8_1150 {
  width: 100%;
  padding: 8px 12px 8px 36px;
  background: var(--slate-100);
  border: 0.667px solid transparent;
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-primary);
  outline: none;
  box-sizing: border-box;
}

._searchInput_19mf8_1150::placeholder {
  color: var(--text-tertiary);
}

._searchInput_19mf8_1150:focus {
  border-color: var(--action-primary-bg);
  background: white;
}

/* ─── Table ──────────────────────────────────────────────────────────────── */
._tableWrapper_19mf8_1215 {
  overflow-x: auto;
  margin-top: 0;
}

._table_19mf8_1215 {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

._table_19mf8_1215 colgroup col:nth-child(1) {
  width: 22%;
}

._table_19mf8_1215 colgroup col:nth-child(2) {
  width: 26%;
}

._table_19mf8_1215 colgroup col:nth-child(3) {
  width: 14%;
}

._table_19mf8_1215 colgroup col:nth-child(4) {
  width: 12%;
}

._table_19mf8_1215 colgroup col:nth-child(5) {
  width: 14%;
}

._table_19mf8_1215 colgroup col:nth-child(6) {
  width: 12%;
}

._tableHeaderRow_19mf8_1250 {
  background: var(--surface-subtle);
}

._th_19mf8_1254 {
  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_19mf8_1266 {
  text-align: right;
}

._tableRow_19mf8_1270 {
  border-bottom: 0.667px solid var(--border-subtle);
  transition: background 0.1s;
}

._tableRow_19mf8_1270:last-child {
  border-bottom: none;
}

._tableRow_19mf8_1270:hover {
  background: var(--surface-subtle);
}

._td_19mf8_1283 {
  padding: 16px;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 0;
}

._td_19mf8_1283:nth-child(3),
._td_19mf8_1283:nth-child(4) {
  overflow: visible;
}

._tdActions_19mf8_1297 {
  text-align: right;
}

/* ─── Cell content ───────────────────────────────────────────────────────── */
._userName_19mf8_1302 {
  font-size: 14px;
  font-weight: 500;
  color: var(--slate-900);
}

._emailCell_19mf8_1308 {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--text-secondary);
}

._emailText_19mf8_1315 {
  font-size: 13px;
}

._dateText_19mf8_1319 {
  font-size: 13px;
  color: var(--text-secondary);
}

/* ─── Badges ─────────────────────────────────────────────────────────────── */
._badgeAdmin_19mf8_1325,
._badgeViewer_19mf8_1326,
._badgeActive_19mf8_1327,
._badgePending_19mf8_1328,
._badgeInactive_19mf8_1329 {
  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_19mf8_1325 {
  background: var(--indigo-100);
  border-color: var(--indigo-200);
  color: var(--indigo-700);
}

._badgeViewer_19mf8_1326 {
  background: var(--blue-100);
  border-color: var(--blue-200);
  color: var(--blue-600);
}

._badgeActive_19mf8_1327 {
  background: var(--pastel-mint);
  border-color: var(--success-500);
  color: var(--success-600);
}

._badgePending_19mf8_1328 {
  background: var(--pastel-yellow);
  border-color: var(--warning-500);
  color: var(--warning-700);
}

._badgeInactive_19mf8_1329 {
  background: var(--gray-100);
  border-color: var(--gray-300);
  color: var(--gray-600);
}

._dotActive_19mf8_1371,
._dotPending_19mf8_1372,
._dotInactive_19mf8_1373 {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

._dotActive_19mf8_1371 {
  background: var(--success-600);
}

._dotPending_19mf8_1372 {
  background: var(--warning-700);
}

._dotInactive_19mf8_1373 {
  background: var(--gray-500);
}

/* ─── Action buttons ─────────────────────────────────────────────────────── */
._actionButtons_19mf8_1393 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

._actionBtn_19mf8_1400 {
  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_19mf8_1400:hover {
  background: var(--blue-50);
}

._actionBtn_19mf8_1400:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._actionBtnDanger_19mf8_1423 {
  color: var(--error-500);
}

._actionBtnDanger_19mf8_1423:hover {
  background: var(--error-50);
}

._actionBtnSave_19mf8_1431 {
  color: var(--success-500);
}

._actionBtnSave_19mf8_1431:hover:not(:disabled) {
  background: var(--pastel-mint);
}

._actionBtnResend_19mf8_1439 {
  color: #7C3AED;
}

._actionBtnResend_19mf8_1439:hover {
  background: #EDE9FE;
}

._resendLink_19mf8_1447 {
  background: none;
  border: none;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--action-primary-bg);
  cursor: pointer;
  padding: 0;
  transition: color 0.15s;
}

._resendLink_19mf8_1447:hover {
  color: var(--action-primary-bg-hover);
  text-decoration: underline;
}

._resendLink_19mf8_1447:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* ─── Inline edit ────────────────────────────────────────────────────────── */
._inlineNameInput_19mf8_1469,
._inlineRoleSelect_19mf8_1470 {
  padding: 4px 8px;
  border: 1px solid var(--action-primary-bg);
  border-radius: 6px;
  font-size: 13px;
  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_19mf8_1469 {
  font-weight: 500;
  font-size: 14px;
}

._inlineRoleSelect_19mf8_1470 {
  cursor: pointer;
}

/* ─── Edit row transition ────────────────────────────────────────────────── */
._tableRow_19mf8_1270 td {
  transition: background 0.18s;
}

._tableRow_19mf8_1270._editing_19mf8_1497 {
  background: var(--blue-50);
}

@keyframes _fadeSlideIn_19mf8_1 {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes _fadeSlideOut_19mf8_1 {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 0;
    transform: translateY(-4px);
  }
}

._inlineNameInput_19mf8_1469 {
  animation: _fadeSlideIn_19mf8_1 0.15s ease;
}

._exiting_19mf8_1529 ._inlineNameInput_19mf8_1469,
._exiting_19mf8_1529 ._roleDropdownTrigger_19mf8_1530 {
  animation: _fadeSlideOut_19mf8_1 0.15s ease forwards;
}

/* ─── Role Dropdown ──────────────────────────────────────────────────────── */
._roleDropdown_19mf8_1530 {
  position: relative;
  display: inline-block;
  min-width: 120px;
  width: 100%;
}

._roleDropdownTrigger_19mf8_1530 {
  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;
  color: var(--slate-900);
  background: white;
  cursor: pointer;
  outline: none;
  box-shadow: 0 0 0 3px rgba(41, 135, 194, 0.1);
  animation: _fadeSlideIn_19mf8_1 0.15s ease;
}

._roleChevron_19mf8_1560 {
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

._roleChevronOpen_19mf8_1565 {
  transform: rotate(180deg);
}

._roleDropdownMenu_19mf8_1569 {
  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_19mf8_1587 {
  opacity: 1;
  transform: translateY(0) scaleY(1);
  pointer-events: auto;
}

._roleDropdownOption_19mf8_1593 {
  display: block;
  width: 100%;
  padding: 8px 12px;
  text-align: left;
  background: none;
  border: none;
  font-size: 13px;
  color: var(--text-primary);
  cursor: pointer;
  transition: background 0.1s;
}

._roleDropdownOption_19mf8_1593:hover {
  background: var(--slate-100);
}

._roleDropdownOptionActive_19mf8_1610 {
  color: var(--action-primary-bg);
  font-weight: 600;
  background: var(--blue-50);
}

/* ─── States ─────────────────────────────────────────────────────────────── */
._emptyCell_19mf8_1617 {
  padding: 40px 16px;
}

._emptyState_19mf8_1621,
._loadingState_19mf8_1622,
._errorState_19mf8_1623 {
  text-align: center;
  font-size: 14px;
  color: var(--text-tertiary);
}

._errorState_19mf8_1623 {
  color: var(--error-500);
}

/* ─── Add User Modal ─────────────────────────────────────────────────────── */
._modalForm_19mf8_1634 {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

._formHintText_19mf8_1640 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: 0;
  line-height: 1.5;
}

._formGroup_19mf8_1647 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._formLabel_19mf8_1008 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
}

._formInput_19mf8_1014 {
  width: 100%;
  height: 2.75rem;
  padding: 0.75rem 1rem;
  background: white;
  border: 0.125rem solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-secondary);
  transition: border-color 0.2s;
  box-sizing: border-box;
}

._formInput_19mf8_1014::placeholder {
  color: var(--text-disabled);
}

._formInput_19mf8_1014:focus {
  outline: none;
  border-color: var(--action-primary-bg);
}

._formInput_19mf8_1014:hover:not(:focus) {
  border-color: var(--slate-300);
}

select._formInput_19mf8_1014 {
  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_19mf8_1696 {
  font-size: 0.75rem;
  color: var(--error-500);
  margin: 0;
}

._modalActions_19mf8_1702 {
  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_19mf8_1712 {
  height: 2.5rem;
  padding: 0 1.25rem;
  background: white;
  border: 0.125rem solid var(--border-subtle);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  cursor: pointer;
  transition: all 0.2s;
}

._cancelBtn_19mf8_1712:hover {
  background: var(--surface-subtle);
  border-color: var(--border-default);
  color: var(--text-secondary);
}

._cancelBtn_19mf8_1712:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._submitBtn_19mf8_1736 {
  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-size: 0.875rem;
  font-weight: 600;
  color: white;
  cursor: pointer;
  transition: opacity 0.2s;
}

._submitBtn_19mf8_1736:hover {
  opacity: 0.9;
}

._submitBtn_19mf8_1736:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}


/* ─── Activity History ───────────────────────────────────────────────────── */
._activityList_19mf8_1760 {
  display: flex;
  flex-direction: column;
  gap: 0;
}

._activityItem_19mf8_1766 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--border-subtle);
}

._activityItem_19mf8_1766:last-child {
  border-bottom: none;
}

._activityItemInfo_19mf8_1778 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._activityItemText_19mf8_1784 {
  font-size: 0.875rem;
  color: var(--slate-900);
  line-height: 1.375;
}

._activityItemDate_19mf8_1790 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}


/* ─── Language Grid ──────────────────────────────────────────────────────── */
._languageGrid_19mf8_1797 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

._languageGridItem_19mf8_1803 {
  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_19mf8_1803:hover {
  background: var(--indigo-50);
}

._languageGridItemActive_19mf8_1820 {
  border: 1px solid var(--indigo-600);
  border-radius: 0.375rem;
  background: var(--indigo-50);
}

._languageGridItemActive_19mf8_1820 ._languageGridName_19mf8_1826 {
  color: var(--indigo-700);
}

._languageGridItemDisabled_19mf8_1830 {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

._languageGridName_19mf8_1826 {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--slate-900);
}

._languageGridRegion_19mf8_1842 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
}


/* ─── Activity Filter ────────────────────────────────────────────────────── */
._activityFilter_19mf8_1849 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._activityFilterInput_19mf8_1855 {
  padding: 0.375rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  font-size: 0.8125rem;
  color: var(--text-secondary);
  background: var(--surface-page);
}

/* ─── Activity Pagination ────────────────────────────────────────────────── */
._activityPagination_19mf8_1865 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border-subtle);
}

._activityPaginationBtn_19mf8_1874 {
  padding: 0.375rem 0.75rem;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  background: var(--surface-page);
  font-size: 0.8125rem;
  color: var(--action-primary-bg);
  cursor: pointer;
  transition: background 0.15s;
}

._activityPaginationBtn_19mf8_1874:hover:not(:disabled) {
  background: var(--indigo-50);
}

._activityPaginationBtn_19mf8_1874:disabled {
  color: var(--text-disabled);
  cursor: not-allowed;
}

._activityPaginationInfo_19mf8_1894 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

/* ─── Audit Log Loading Animation ────────────────────────────────────────── */


/* Skeleton Loading Animation */
._skeleton_19mf8_1914 {
  display: block;
  background: linear-gradient(90deg, var(--slate-200) 25%, var(--slate-100) 50%, var(--slate-200) 75%);
  background-size: 200% 100%;
  animation: _shimmer_19mf8_1 1.5s ease-in-out infinite;
  border-radius: 0.375rem;
}

@keyframes _shimmer_19mf8_1 {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

/* --- Dark mode overrides -------------------------------------------------- */
html.dark ._mainCard_19mf8_196 {
  background: var(--surface-card) !important;
}

html.dark ._tabsContainer_19mf8_208 {
  background: var(--surface-card) !important;
}

html.dark ._infoBanner_19mf8_779 {
  background: rgba(245, 158, 11, 0.1) !important;
  border-color: rgba(245, 158, 11, 0.2) !important;
}

._joinRequestsSection_19mf8_1946 {
  margin-bottom: 1rem;
  padding: 1rem;
  background-color: var(--bg-secondary);
  border: 1px solid var(--border-primary);
  border-radius: 0.75rem;
}

._joinRequestsTitle_19mf8_1954 {
  margin: 0 0 0.75rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--text-primary);
}

._joinRequestsList_19mf8_1961 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._joinRequestItem_19mf8_1967 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  background-color: var(--bg-primary);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
}

._joinRequestInfo_19mf8_1977 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._joinRequestName_19mf8_1983 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

._joinRequestEmail_19mf8_1989 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._joinRequestActions_19mf8_1994 {
  display: flex;
  gap: 0.5rem;
}

._approveButton_19mf8_1999 {
  padding: 0.375rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--action-primary-text);
  background-color: var(--success-600);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

._approveButton_19mf8_1999:hover {
  opacity: 0.9;
}

._approveButton_19mf8_1999:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._denyButton_19mf8_2020 {
  padding: 0.375rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--action-primary-text);
  background-color: var(--error-500);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

._denyButton_19mf8_2020:hover {
  opacity: 0.9;
}

._denyButton_19mf8_2020:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
._overlay_14uob_1 {
  position: fixed;
  inset: 0;
  background: var(--surface-overlay);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

._modal_14uob_11 {
  background: var(--surface-card);
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border-default);
  width: 100%;
  max-width: 560px;
  max-height: 90vh;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

._header_14uob_24 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 24px 24px 0;
}

._title_14uob_31 {
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 4px 0;
}

._subtitle_14uob_38 {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}

._closeBtn_14uob_44 {
  background: none;
  border: none;
  font-size: 24px;
  color: var(--text-tertiary);
  cursor: pointer;
  padding: 0;
  line-height: 1;
}

._closeBtn_14uob_44:hover {
  color: var(--text-primary);
}

._form_14uob_58 {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

._formGroup_14uob_65 {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

._formGroupSmall_14uob_71 {
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-width: 100px;
}

._formRow_14uob_78 {
  display: flex;
  gap: 16px;
}

._formRow_14uob_78 ._formGroup_14uob_65 {
  flex: 1;
}

._label_14uob_87 {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: var(--text-secondary);
  text-transform: uppercase;
}

._input_14uob_95 {
  padding: 10px 12px;
  border: 1px solid var(--border-default);
  border-radius: 6px;
  font-size: 14px;
  color: var(--text-primary);
  background: var(--surface-card);
  transition: border-color 0.15s;
}

._input_14uob_95:focus {
  outline: none;
  border-color: var(--border-focus);
  box-shadow: var(--shadow-focus);
}

._input_14uob_95::placeholder {
  color: var(--text-disabled);
}

._input_14uob_95[readonly] {
  background: var(--surface-subtle);
  color: var(--text-secondary);
}

._inputError_14uob_120 {
  border-color: var(--error-500);
}

._inputError_14uob_120:focus {
  box-shadow: 0 0 0 2px var(--error-50);
}

._helper_14uob_128 {
  font-size: 12px;
  color: var(--text-tertiary);
}

._helperWarning_14uob_133 {
  font-size: 12px;
  color: var(--warning-600);
}

._helperError_14uob_138 {
  font-size: 12px;
  color: var(--error-600);
}

._saveError_14uob_143 {
  font-size: 13px;
  color: var(--error-600);
  padding: 8px 12px;
  background: var(--error-50);
  border-radius: 4px;
}

._footer_14uob_151 {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 24px 24px;
  border-top: 1px solid var(--border-default);
}

._cancelBtn_14uob_159 {
  padding: 10px 20px;
  border: 1px solid var(--border-default);
  border-radius: 6px;
  background: var(--surface-card);
  color: var(--text-primary);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}

._cancelBtn_14uob_159:hover {
  background: var(--action-secondary-bg-hover);
}

._saveBtn_14uob_174 {
  padding: 10px 20px;
  border: none;
  border-radius: 6px;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}

._saveBtn_14uob_174:hover {
  background: var(--action-primary-bg-hover);
}

._saveBtn_14uob_174:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._regionToggle_14uob_194 {
  display: flex;
  gap: 0;
  border: 1px solid var(--border-default);
  border-radius: 6px;
  overflow: hidden;
  width: fit-content;
}

._regionBtn_14uob_203 {
  padding: 8px 16px;
  border: none;
  background: var(--surface-card);
  color: var(--text-secondary);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.15s, color 0.15s;
}

._regionBtn_14uob_203:not(:last-child) {
  border-right: 1px solid var(--border-default);
}

._regionBtn_14uob_203:hover:not(:disabled) {
  background: var(--surface-subtle);
}

._regionBtn_14uob_203:disabled {
  cursor: not-allowed;
  opacity: 0.7;
}

._regionBtnActive_14uob_227 {
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
}

._regionBtnActive_14uob_227:hover:not(:disabled) {
  background: var(--action-primary-bg-hover);
}
._overlay_vq74a_1 {
  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;
}

._modal_vq74a_15 {
  background: var(--surface-card);
  border-radius: 12px;
  padding: 32px;
  max-width: 640px;
  width: 90%;
  max-height: 85vh;
  overflow-y: auto;
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border-default);
}

._header_vq74a_27 {
  margin-bottom: 24px;
}

._title_vq74a_31 {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}

._subtitle_vq74a_38 {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}

._packages_vq74a_44 {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

._loadingState_vq74a_50,
._emptyState_vq74a_51 {
  width: 100%;
  text-align: center;
  padding: 32px;
  color: var(--text-tertiary);
  font-size: 14px;
}

._packageCard_vq74a_59 {
  flex: 1;
  min-width: 200px;
  border: 1px solid var(--border-default);
  border-radius: 8px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

._packageHeader_vq74a_70 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._packageCredits_vq74a_76 {
  font-size: 16px;
  font-weight: 700;
  color: var(--text-primary);
  text-transform: uppercase;
}

._packagePrice_vq74a_83 {
  font-size: 14px;
  color: var(--text-secondary);
}

._packageDescription_vq74a_88 {
  font-size: 13px;
  color: var(--text-tertiary);
  margin: 0;
}

._quantityRow_vq74a_94 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

._quantityControl_vq74a_101 {
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid var(--border-default);
  border-radius: 4px;
  overflow: hidden;
}

._quantityBtn_vq74a_110 {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: var(--action-secondary-bg);
  color: var(--text-primary);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
}

._quantityBtn_vq74a_110:hover:not(:disabled) {
  background: var(--action-secondary-bg-hover);
}

._quantityBtn_vq74a_110:disabled {
  color: var(--text-disabled);
  cursor: not-allowed;
}

._quantityInput_vq74a_134 {
  width: 48px;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  border: none;
  border-left: 1px solid var(--border-default);
  border-right: 1px solid var(--border-default);
  background: var(--surface-card);
  padding: 4px 0;
  height: 28px;
  outline: none;
}

._totalCredits_vq74a_149 {
  font-size: 12px;
  color: var(--text-tertiary);
}

._buyBtn_vq74a_154 {
  width: 100%;
  padding: 10px 16px;
  border: none;
  border-radius: 6px;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s;
}

._buyBtn_vq74a_154:hover:not(:disabled) {
  background: var(--action-primary-bg-hover);
}

._buyBtn_vq74a_154:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._footer_vq74a_176 {
  margin-top: 24px;
  display: flex;
  justify-content: flex-start;
}

._cancelBtn_vq74a_182 {
  background: none;
  border: none;
  color: var(--text-secondary);
  font-size: 14px;
  cursor: pointer;
  padding: 8px 0;
}

._cancelBtn_vq74a_182:hover {
  color: var(--text-primary);
}
._overlay_rui5s_1 {
  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;
}

._modal_rui5s_15 {
  background: var(--surface-card);
  border-radius: 12px;
  padding: 32px;
  max-width: 800px;
  width: 90%;
  max-height: 85vh;
  overflow-y: auto;
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border-default);
}

._header_rui5s_27 {
  margin-bottom: 24px;
}

._title_rui5s_31 {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0 0 8px 0;
}

._subtitle_rui5s_38 {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}

._plans_rui5s_44 {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

._loadingState_rui5s_50,
._emptyState_rui5s_51 {
  width: 100%;
  text-align: center;
  padding: 32px;
  color: var(--text-tertiary);
  font-size: 14px;
}

._planCard_rui5s_59 {
  flex: 1;
  min-width: 200px;
  border: 1px solid var(--border-default);
  border-radius: 8px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  position: relative;
}

._planCardCurrent_rui5s_71 {
  border-color: var(--border-focus);
  border-width: 2px;
}

._currentBadge_rui5s_76 {
  position: absolute;
  top: -10px;
  left: 16px;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: 4px;
}

._planName_rui5s_90 {
  font-size: 18px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
}

._planPricing_rui5s_97 {
  display: flex;
  align-items: baseline;
  gap: 2px;
}

._planPrice_rui5s_103 {
  font-size: 24px;
  font-weight: 700;
  color: var(--text-primary);
}

._planInterval_rui5s_109 {
  font-size: 14px;
  color: var(--text-tertiary);
}

._planCredits_rui5s_114 {
  font-size: 14px;
  color: var(--text-link);
  font-weight: 500;
  margin: 0;
}

._planDescription_rui5s_121 {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

._selectBtn_rui5s_128 {
  width: 100%;
  padding: 10px 16px;
  border: none;
  border-radius: 6px;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s;
  margin-top: auto;
}

._selectBtn_rui5s_128:hover:not(:disabled) {
  background: var(--action-primary-bg-hover);
}

._selectBtnDisabled_rui5s_146 {
  background: var(--action-secondary-bg);
  color: var(--text-tertiary);
  cursor: default;
}

._selectBtnDisabled_rui5s_146:hover {
  background: var(--action-secondary-bg);
}

._footer_rui5s_156 {
  margin-top: 24px;
  display: flex;
  justify-content: flex-start;
}

._cancelBtn_rui5s_162 {
  background: none;
  border: none;
  color: var(--text-secondary);
  font-size: 14px;
  cursor: pointer;
  padding: 8px 0;
}

._cancelBtn_rui5s_162:hover {
  color: var(--text-primary);
}
._pagination_1mif8_1 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border-top: 1px solid var(--border-subtle);
}

._info_1mif8_10 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

._controls_1mif8_15 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

._btn_1mif8_21 {
  min-width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  background: var(--surface-card);
  color: var(--text-secondary);
  cursor: pointer;
  transition: opacity 0.15s;
}

._btn_1mif8_21:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

._pageBtn_1mif8_40 {
  min-width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border-subtle);
  border-radius: 0.375rem;
  background: var(--surface-card);
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.15s;
}

._pageBtnActive_1mif8_56 {
  border-color: var(--action-primary-bg);
  background: var(--action-primary-bg);
  color: var(--text-inverse);
}

._ellipsis_1mif8_62 {
  min-width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  color: var(--text-tertiary);
}
._container_1lnrl_1 {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
}

._loading_1lnrl_8 {
  padding: 48px;
  text-align: center;
  color: var(--text-secondary);
}

/* Top Section - Two Cards */
._topSection_1lnrl_15 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

._card_1lnrl_21 {
  background: var(--surface-card);
  border: 1px solid var(--border-default);
  border-radius: 8px;
  padding: 24px;
}

._cardHeader_1lnrl_28 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

._cardTitle_1lnrl_35 {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--text-secondary);
  margin: 0 0 16px 0;
  text-transform: uppercase;
}

._cardHeader_1lnrl_28 ._cardTitle_1lnrl_35 {
  margin-bottom: 0;
}

._editLink_1lnrl_48 {
  background: none;
  border: none;
  color: var(--text-link);
  font-size: 14px;
  cursor: pointer;
  padding: 0;
}

._editLink_1lnrl_48:hover {
  text-decoration: underline;
}

/* Balance & Plan Card */
._balanceValue_1lnrl_62 {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
}

._balanceNumber_1lnrl_69 {
  font-size: 32px;
  font-weight: 700;
  color: var(--text-primary);
}

._balanceLabel_1lnrl_75 {
  font-size: 14px;
  color: var(--text-secondary);
}

._planName_1lnrl_80 {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-link);
  margin-bottom: 4px;
}

._noPlan_1lnrl_87 {
  font-size: 14px;
  color: var(--text-tertiary);
  margin-bottom: 4px;
}

._tenure_1lnrl_93 {
  font-size: 13px;
  color: var(--text-tertiary);
  margin-bottom: 20px;
}

._actionButtons_1lnrl_99 {
  display: flex;
  gap: 12px;
}

._btnSecondary_1lnrl_104 {
  flex: 1;
  padding: 10px 16px;
  border: 1px solid var(--border-default);
  border-radius: 6px;
  background: var(--surface-card);
  color: var(--text-primary);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s;
}

._btnSecondary_1lnrl_104:hover {
  background: var(--action-secondary-bg-hover);
}

._btnPrimary_1lnrl_121 {
  flex: 1;
  padding: 10px 16px;
  border: none;
  border-radius: 6px;
  background: var(--action-primary-bg);
  color: var(--action-primary-text);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s;
}

._btnPrimary_1lnrl_121:hover {
  background: var(--action-primary-bg-hover);
}

/* Billing Data Card */
._billingFields_1lnrl_139 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

._fieldRow_1lnrl_145 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

._field_1lnrl_145 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._fieldLabel_1lnrl_157 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: var(--text-tertiary);
  text-transform: uppercase;
}

._fieldValue_1lnrl_165 {
  font-size: 14px;
  color: var(--text-primary);
}

/* Warning Banner */
._warningBanner_1lnrl_171 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 12px 16px;
  background: var(--warning-50);
  border: 1px solid var(--warning-200);
  border-radius: 6px;
  font-size: 13px;
  color: var(--warning-800);
}

._warningIcon_1lnrl_184 {
  font-size: 16px;
  color: var(--warning-500);
}

._warningLink_1lnrl_189 {
  background: none;
  border: none;
  color: var(--text-link);
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
}

/* History Section */
._historySection_1lnrl_200 {
  background: var(--surface-card);
  border: 1px solid var(--border-default);
  border-radius: 8px;
  padding: 24px;
}

._historyTabs_1lnrl_207 {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--border-default);
  margin-bottom: 16px;
}

._historyTab_1lnrl_207 {
  padding: 8px 16px;
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-secondary);
  cursor: pointer;
  transition: color 0.15s, border-color 0.15s;
}

._historyTab_1lnrl_207:hover {
  color: var(--text-primary);
}

._historyTabActive_1lnrl_230 {
  color: var(--text-link);
  border-bottom-color: var(--text-link);
}

._historyControls_1lnrl_235 {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 12px;
}

._transactionCount_1lnrl_241 {
  font-size: 13px;
  color: var(--text-tertiary);
}

/* Filter bar */
._filterBar_1lnrl_247 {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding: 0.875rem 1.25rem;
  border-bottom: 1px solid var(--border-subtle);
  background: var(--slate-50);
}

._filterGroup_1lnrl_257 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._filterGroupGrow_1lnrl_263 {
  flex: 1;
  min-width: 200px;
}

._filterLabel_1lnrl_268 {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

._filterInput_1lnrl_277 {
  height: 2rem;
  padding: 0 0.625rem;
  border: 1px solid var(--border-default);
  border-radius: 0.375rem;
  background: var(--surface-primary);
  color: var(--text-primary);
  font-size: 0.8125rem;
  outline: none;
  transition: border-color 0.15s;
  box-sizing: border-box;
}

._filterInput_1lnrl_277:focus {
  border-color: var(--action-primary-bg);
}

._filterDateInput_1lnrl_294 {
  width: 9rem;
}

._filterSelect_1lnrl_298 {
  height: 2rem;
  padding: 0 1.75rem 0 0.625rem;
  border: 1px solid var(--border-default);
  border-radius: 0.375rem;
  background: var(--surface-primary);
  color: var(--text-primary);
  font-size: 0.8125rem;
  outline: none;
  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'%3E%3Cpath fill='%236B7280' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.25rem center;
  cursor: pointer;
  transition: border-color 0.15s;
  min-width: 11rem;
}

._filterSelect_1lnrl_298:focus {
  border-color: var(--action-primary-bg);
}

._filterInputSearch_1lnrl_320 {
  width: 100%;
}

._clearFiltersBtn_1lnrl_324 {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  height: 2rem;
  padding: 0 0.75rem;
  border: 1px solid var(--border-default);
  border-radius: 0.375rem;
  background: var(--surface-primary);
  color: var(--text-secondary);
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.15s, color 0.15s;
  white-space: nowrap;
  align-self: flex-end;
}

._clearFiltersBtn_1lnrl_324:hover {
  border-color: var(--action-primary-bg);
  color: var(--action-primary-bg);
}

/* Table */
._tableContainer_1lnrl_348 {
  overflow-x: auto;
}

._table_1lnrl_348 {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

._table_1lnrl_348 th {
  text-align: left;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: var(--text-tertiary);
  border-bottom: 1px solid var(--border-default);
  text-transform: uppercase;
}

._table_1lnrl_348 td {
  padding: 10px 12px;
  color: var(--text-primary);
  border-bottom: 1px solid var(--border-subtle);
}

._alignRight_1lnrl_375 {
  text-align: right;
}

._linkCell_1lnrl_379 {
  color: var(--text-link);
  cursor: pointer;
}

._linkCell_1lnrl_379:hover {
  text-decoration: underline;
}

._emptyState_1lnrl_388 {
  text-align: center;
  padding: 32px 12px;
  color: var(--text-tertiary);
}

/* Pagination */
._paginationRow_1lnrl_395 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 16px;
}

._paginationInfo_1lnrl_402 {
  font-size: 13px;
  color: var(--text-tertiary);
}

/* Date Filters */
._dateFilters_1lnrl_408 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._dateLabel_1lnrl_414 {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--text-secondary);
}

._dateInput_1lnrl_422 {
  padding: 6px 10px;
  border: 1px solid var(--border-default);
  border-radius: 4px;
  font-size: 13px;
  color: var(--text-primary);
  background: var(--surface-card);
}

._dateSeparator_1lnrl_431 {
  color: var(--text-tertiary);
}

/* Status Badges */
._statusBadge_1lnrl_436 {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

._status_paid_1lnrl_446 {
  color: var(--success-700);
  background: var(--success-50);
}

._status_processing_1lnrl_451 {
  color: var(--warning-700);
  background: var(--warning-50);
}

._status_failed_1lnrl_456 {
  color: var(--error-700);
  background: var(--error-50);
}

/* Invoice Link */
._invoiceLink_1lnrl_462 {
  color: var(--text-link);
  text-decoration: none;
  font-size: 13px;
}

._invoiceLink_1lnrl_462:hover {
  text-decoration: underline;
}

._noInvoice_1lnrl_472 {
  color: var(--text-tertiary);
}

/* Cancel Subscription */
._cancelSection_1lnrl_477 {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--border-default);
}

._cancelSubscriptionBtn_1lnrl_483 {
  background: none;
  border: none;
  color: var(--text-tertiary);
  font-size: 13px;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
}

._cancelSubscriptionBtn_1lnrl_483:hover {
  color: var(--error-600);
}

._cancelConfirm_1lnrl_497 {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

._cancelConfirmText_1lnrl_503 {
  font-size: 13px;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

._cancelConfirmActions_1lnrl_510 {
  display: flex;
  gap: 8px;
  align-items: center;
}

._cancelConfirmBtn_1lnrl_516 {
  padding: 6px 12px;
  border: 1px solid var(--error-500);
  border-radius: 6px;
  background: var(--surface-card);
  color: var(--error-600);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
}

._cancelConfirmBtn_1lnrl_516:hover:not(:disabled) {
  background: var(--error-50);
}

._cancelConfirmBtn_1lnrl_516:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._cancelDismissBtn_1lnrl_536 {
  background: none;
  border: none;
  color: var(--text-secondary);
  font-size: 13px;
  cursor: pointer;
  padding: 6px 8px;
}

._cancelDismissBtn_1lnrl_536:hover {
  color: var(--text-primary);
}

._canceledNotice_1lnrl_549 {
  font-size: 13px;
  color: var(--warning-600);
  margin-top: 4px;
}
/* ─── Layout ─────────────────────────────────────────────────────────────── */
._pageContainer_17jfk_2 { display: flex; height: 100vh; overflow: hidden; }
._mainContent_17jfk_3 { display: flex; flex-direction: column; flex: 1; overflow: hidden; }
._contentWrapper_17jfk_4 { display: flex; flex-direction: column; flex: 1; background: var(--border-subtle); overflow: hidden; }
._breadcrumbContainer_17jfk_5 { flex-shrink: 0; padding: 0 1.5rem; margin-top: 0.75rem; margin-bottom: 0.75rem; }
._content_17jfk_4 { display: flex; flex-direction: column; flex: 1; padding: 0 1.5rem 1.5rem; overflow: hidden; gap: 1rem; }

/* ─── Header card (fixed, like Dashboard) ────────────────────────────────── */
._headerCard_17jfk_9 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--surface-card);
  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_17jfk_20 { display: flex; align-items: center; gap: 1rem; }
._pageHeaderIcon_17jfk_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_17jfk_29 { font-size: 1.5rem; font-weight: 700; color: var(--slate-900); margin: 0 0 0.25rem; line-height: 2rem; }
._pageSubtitle_17jfk_30 { font-size: 0.875rem; color: var(--text-tertiary); margin: 0; }

/* ─── Main card ──────────────────────────────────────────────────────────── */
._mainCard_17jfk_33 {
  display: flex; flex-direction: column; flex: 1; min-height: 0;
  overflow: hidden; background: var(--surface-card);
  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_17jfk_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-weight: 500; cursor: pointer; white-space: nowrap;
  transition: background 0.15s;
}
._addButton_17jfk_41:hover { background: var(--action-primary-bg-hover); }
._addButton_17jfk_41:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }

/* ─── Search ─────────────────────────────────────────────────────────────── */
._searchBar_17jfk_53 {
  flex-shrink: 0; padding: 16px 24px;
  background: var(--surface-subtle); border-bottom: 0.667px solid var(--border-subtle);
}
._searchInputWrapper_17jfk_57 { position: relative; }
._searchIcon_17jfk_58 { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); pointer-events: none; }
._searchInput_17jfk_57 {
  width: 100%; padding: 8px 12px 8px 36px;
  background: var(--slate-100); border: 0.667px solid transparent; border-radius: 8px;
  font-size: 14px; color: var(--text-primary);
  outline: none; box-sizing: border-box;
}
._searchInput_17jfk_57::placeholder { color: var(--text-tertiary); }
._searchInput_17jfk_57:focus { border-color: var(--action-primary-bg); background: var(--surface-card); }

/* ─── Table ──────────────────────────────────────────────────────────────── */
._tableWrapper_17jfk_69 { flex: 1; overflow-y: auto; }
._table_17jfk_69 { width: 100%; border-collapse: collapse; }
._tableHeaderRow_17jfk_71 { background: var(--surface-subtle); }
._th_17jfk_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_17jfk_72:nth-child(1) { width: 25%; }
._th_17jfk_72:nth-child(2) { width: 25%; }
._th_17jfk_72:nth-child(3) { width: 15%; text-align: center; }
._th_17jfk_72:nth-child(4) { width: 15%; text-align: center; }
._th_17jfk_72:nth-child(5) { width: 15%; text-align: center; }
._th_17jfk_72:nth-child(6) { width: 5%; text-align: center; }
._thRight_17jfk_85 { text-align: right; }
._tableRow_17jfk_86 { border-bottom: 0.667px solid var(--border-subtle); transition: background 0.1s; }
._tableRow_17jfk_86:last-child { border-bottom: none; }
._tableRow_17jfk_86:hover { background: var(--surface-subtle); }
._td_17jfk_89 { padding: 20px 24px; vertical-align: middle; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
._td_17jfk_89:nth-child(3), ._td_17jfk_89:nth-child(4), ._td_17jfk_89:nth-child(5), ._td_17jfk_89:nth-child(6) { text-align: center; }
._tdActions_17jfk_91 { text-align: center; }

/* ─── Cell content ───────────────────────────────────────────────────────── */
._userName_17jfk_94 { font-size: 16px; font-weight: 500; color: var(--slate-900); }
._emailCell_17jfk_95 { display: flex; align-items: center; gap: 8px; }
._emailText_17jfk_96 { font-size: 14px; color: var(--text-secondary); }
._dateText_17jfk_97 { font-size: 14px; color: var(--text-secondary); }

/* ─── Badges ─────────────────────────────────────────────────────────────── */
._badgeAdmin_17jfk_100, ._badgeViewer_17jfk_100, ._badgeActive_17jfk_100, ._badgePending_17jfk_100, ._badgeInactive_17jfk_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_17jfk_100 { background: var(--indigo-100); border-color: var(--indigo-200); color: var(--indigo-700); }
._badgeViewer_17jfk_100 { background: var(--blue-100); border-color: var(--blue-200); color: var(--blue-600); }
._badgeActive_17jfk_100 { background: var(--pastel-mint); border-color: var(--success-500); color: var(--success-600); }
._badgePending_17jfk_100 { background: var(--pastel-yellow); border-color: var(--warning-500); color: var(--warning-700); }
._badgeInactive_17jfk_100 { background: var(--gray-100); border-color: var(--gray-300); color: var(--gray-600); }
._dotActive_17jfk_111, ._dotPending_17jfk_111, ._dotInactive_17jfk_111 { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
._dotActive_17jfk_111 { background: var(--success-600); }
._dotPending_17jfk_111 { background: var(--warning-700); }
._dotInactive_17jfk_111 { background: var(--gray-500); }

/* ─── Action buttons ─────────────────────────────────────────────────────── */
._actionButtons_17jfk_117 { display: flex; align-items: center; justify-content: center; gap: 8px; }
._actionBtn_17jfk_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_17jfk_118:hover { background: var(--blue-50); }
._actionBtn_17jfk_118:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }
._actionBtn_17jfk_118:disabled { opacity: 0.5; cursor: not-allowed; }
._actionBtnDanger_17jfk_127 { color: var(--error-500); }
._actionBtnDanger_17jfk_127:hover { background: var(--error-50); color: var(--error-500); }
._actionBtnSave_17jfk_129 { color: var(--success-500); }
._actionBtnSave_17jfk_129:hover:not(:disabled) { background: var(--pastel-mint); }
._actionBtnSave_17jfk_129:disabled { opacity: 0.4; cursor: not-allowed; }

/* ─── Inline name edit ───────────────────────────────────────────────────── */
._inlineNameInput_17jfk_134 {
  padding: 4px 8px;
  border: 1px solid var(--action-primary-bg);
  border-radius: 6px;
  font-size: 16px;
  font-weight: 500;
  color: var(--slate-900);
  background: var(--surface-card);
  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_17jfk_149 { padding: 48px 24px; }
._emptyState_17jfk_150, ._loadingState_17jfk_150, ._errorState_17jfk_150 {
  text-align: center; font-size: 14px; color: var(--text-tertiary);
}
._errorState_17jfk_150 { color: var(--error-500); }

/* ─── Modal ──────────────────────────────────────────────────────────────── */
._modalBackdrop_17jfk_156 {
  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_17jfk_156 {
  background: var(--surface-card); border-radius: 10px; width: 100%; max-width: 440px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}
._modalHeader_17jfk_165 {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 24px 0;
}

._modalTitleRow_17jfk_170 {
  display: flex;
  align-items: center;
  gap: 10px;
}
._modalTitle_17jfk_170 { font-size: 18px; font-weight: 600; color: var(--text-primary); margin: 0; }
._modalClose_17jfk_176 {
  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_17jfk_176:hover { background: var(--slate-100); }
._modalClose_17jfk_176:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }
._modalForm_17jfk_183 { padding: 20px 24px 24px; display: flex; flex-direction: column; gap: 16px; }
._formGroup_17jfk_184 { display: flex; flex-direction: column; gap: 6px; }
._formLabel_17jfk_185 { font-size: 14px; font-weight: 500; color: var(--text-primary); }
._formInput_17jfk_186, ._formSelect_17jfk_186 {
  padding: 10px 12px; border: 1px solid var(--border-subtle); border-radius: 8px;
  font-size: 14px; color: var(--text-primary);
  outline: none; background: var(--surface-card);
}
._formInput_17jfk_186:focus, ._formSelect_17jfk_186:focus { border-color: var(--action-primary-bg); box-shadow: 0 0 0 3px rgba(41,135,194,0.1); }
._formError_17jfk_192 { font-size: 13px; color: var(--error-500); margin: 0; }
._formHint_17jfk_193 { font-size: 12px; color: var(--text-tertiary); margin: 0; line-height: 1.5; }
._modalActions_17jfk_194 { display: flex; gap: 12px; justify-content: flex-end; padding-top: 4px; }
._cancelBtn_17jfk_195 {
  padding: 8px 16px; border: 1px solid var(--border-subtle); border-radius: 8px;
  background: var(--surface-card); color: var(--text-secondary); font-size: 14px;
  cursor: pointer;
}
._cancelBtn_17jfk_195:hover { background: var(--surface-subtle); }
._cancelBtn_17jfk_195:disabled { opacity: 0.5; cursor: not-allowed; }
._submitBtn_17jfk_202 {
  padding: 8px 20px; border: none; border-radius: 8px;
  background: var(--action-primary-bg); color: white; font-size: 14px;
  font-weight: 500; cursor: pointer;
}
._submitBtn_17jfk_202:hover { background: var(--action-primary-bg-hover); }
._submitBtn_17jfk_202:disabled { opacity: 0.5; cursor: not-allowed; }
._submitBtn_17jfk_202:focus-visible, ._cancelBtn_17jfk_195:focus-visible { outline: 2px solid var(--action-primary-bg); outline-offset: 2px; }

/* ─── Join Requests ──────────────────────────────────────────────────────── */
._joinRequestsSection_17jfk_212 {
  margin-bottom: 1.5rem;
  padding: 1rem;
  background-color: var(--bg-secondary);
  border: 1px solid var(--border-primary);
  border-radius: 0.75rem;
}

._joinRequestsTitle_17jfk_220 {
  margin: 0 0 0.75rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--text-primary);
}

._joinRequestsList_17jfk_227 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._joinRequestItem_17jfk_233 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  background-color: var(--bg-primary);
  border: 1px solid var(--border-subtle);
  border-radius: 0.5rem;
}

._joinRequestInfo_17jfk_243 {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

._joinRequestName_17jfk_249 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

._joinRequestEmail_17jfk_255 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
}

._joinRequestActions_17jfk_260 {
  display: flex;
  gap: 0.5rem;
}

._approveButton_17jfk_265 {
  padding: 0.375rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--action-primary-text);
  background-color: var(--success-600);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

._approveButton_17jfk_265:hover {
  opacity: 0.9;
}

._approveButton_17jfk_265:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._denyButton_17jfk_286 {
  padding: 0.375rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--action-primary-text);
  background-color: var(--error-500);
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

._denyButton_17jfk_286:hover {
  opacity: 0.9;
}

._denyButton_17jfk_286:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
._formWrapper_1j493_1 {
  width: 100%;
  max-width: 460px;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

._title_1j493_9 {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}

._subtitle_1j493_16 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
  margin-top: -0.75rem;
}

._inputGroup_1j493_23 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

._label_1j493_29 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}

._input_1j493_23 {
  width: 100%;
  height: 2.5rem;
  padding: 0 1rem;
  background: var(--surface-card);
  border: 1px solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: var(--text-primary);
  transition: border-color 0.2s ease;
}

._input_1j493_23::placeholder {
  color: var(--text-tertiary);
}

._input_1j493_23:focus {
  outline: none;
  border-color: var(--border-focus);
  box-shadow: var(--shadow-focus);
}

._inputError_1j493_57 {
  border-color: var(--border-error);
}

._domainHint_1j493_61 {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin: 0;
}

._sectionTitle_1j493_67 {
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}

._sectionSubtitle_1j493_74 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
  margin: 0;
  margin-top: -0.5rem;
}

._kmsOptions_1j493_81 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._kmsOption_1j493_81 {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem;
  border: 1px solid var(--border-default);
  border-radius: 0.75rem;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
  background: var(--surface-card);
}

._kmsOption_1j493_81:hover {
  border-color: var(--border-strong);
  background: var(--surface-card-hover);
}

._kmsOptionSelected_1j493_104 {
  border-color: var(--action-primary-bg);
  background: var(--blue-50);
}

._kmsOptionSelected_1j493_104:hover {
  border-color: var(--action-primary-bg);
  background: var(--blue-50);
}

._radioOuter_1j493_114 {
  width: 1.25rem;
  height: 1.25rem;
  min-width: 1.25rem;
  border: 2px solid var(--border-default);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.125rem;
  transition: border-color 0.2s ease;
}

._radioOuterSelected_1j493_127 {
  border-color: var(--action-primary-bg);
}

._radioInner_1j493_131 {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  background: var(--action-primary-bg);
  transform: scale(0);
  transition: transform 0.2s ease;
}

._radioInnerSelected_1j493_140 {
  transform: scale(1);
}

._kmsOptionContent_1j493_144 {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

._kmsOptionTitle_1j493_150 {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
  margin: 0;
}

._kmsOptionDescription_1j493_157 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.4;
}

._arnSection_1j493_164 {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
  background: var(--surface-subtle);
  border: 1px solid var(--border-subtle);
  border-radius: 0.75rem;
}

._arnInstructions_1j493_174 {
  font-size: 0.8125rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

._launchStackButton_1j493_181 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.75rem 1.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--action-primary-text);
  background-color: var(--action-primary-bg);
  border: none;
  border-radius: 0.5rem;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

._launchStackButton_1j493_181:hover {
  background-color: var(--action-primary-bg-hover);
}

._arnInputRow_1j493_203 {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
}

._arnInput_1j493_203 {
  flex: 1;
}

._validateButton_1j493_213 {
  height: 2.5rem;
  padding: 0 1rem;
  background: var(--action-secondary-bg);
  border: 1px solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--action-secondary-text);
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.2s ease;
}

._validateButton_1j493_213:hover {
  background: var(--action-secondary-bg-hover);
}

._validateButton_1j493_213:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._validationStatus_1j493_236 {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  margin: 0;
}

._validationSuccess_1j493_244 {
  color: var(--text-success);
}

._validationError_1j493_248 {
  color: var(--text-error);
}

._primaryButton_1j493_252 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  height: 2.75rem;
  background: var(--action-primary-bg);
  border: none;
  border-radius: 0.5rem;
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--action-primary-text);
  cursor: pointer;
  transition: background-color 0.2s ease;
}

._primaryButton_1j493_252:hover {
  background: var(--action-primary-bg-hover);
}

._primaryButton_1j493_252:active {
  background: var(--action-primary-bg-active);
}

._primaryButton_1j493_252:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

._errorText_1j493_282 {
  font-size: 0.8125rem;
  color: var(--text-error);
  margin: 0;
}

._successContainer_1j493_288 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  padding: 1rem 0;
}

._successIcon_1j493_297 {
  width: 3.5rem;
  height: 3.5rem;
  background: var(--success-50);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
}

._successTitle_1j493_308 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}

._successSubtitle_1j493_315 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
}

._existingOrgContainer_1j493_321 {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  text-align: center;
  padding: 1rem 0;
}

._existingOrgActions_1j493_329 {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

._secondaryButton_1j493_335 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 2.5rem;
  background: var(--action-secondary-bg);
  border: 1px solid var(--border-default);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--action-secondary-text);
  cursor: pointer;
  transition: background-color 0.2s ease;
}

._secondaryButton_1j493_335:hover {
  background: var(--action-secondary-bg-hover);
}

._contactText_1j493_355 {
  font-size: 0.8125rem;
  color: var(--text-tertiary);
  margin: 0;
}

._supportLink_1j493_361 {
  font-size: 0.875rem;
  color: var(--text-link);
  text-decoration: none;
  margin: 0.5rem 0 1rem;
  transition: color 0.2s ease;
}

._supportLink_1j493_361:hover {
  color: var(--text-link-hover);
  text-decoration: underline;
}

._logoutButton_1j493_374 {
  background: transparent;
  border: none;
  padding: 0;
  font-size: 0.8125rem;
  color: var(--text-link);
  cursor: pointer;
  margin-top: 0.5rem;
  transition: color 0.2s ease;
}

._logoutButton_1j493_374:hover {
  color: var(--text-link-hover);
  text-decoration: underline;
}

._spinner_1j493_390 {
  width: 1rem;
  height: 1rem;
  border: 2px solid var(--action-primary-text);
  border-top-color: transparent;
  border-radius: 50%;
  animation: _spin_1j493_390 0.6s linear infinite;
}

@keyframes _spin_1j493_390 {
  to {
    transform: rotate(360deg);
  }
}

._loadingContainer_1j493_405 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 3rem 0;
  gap: 1rem;
}

._loadingText_1j493_414 {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin: 0;
}

@media (max-width: 48rem) {
  ._arnInputRow_1j493_203 {
    flex-direction: column;
  }

  ._validateButton_1j493_213 {
    width: 100%;
  }
}

._pendingContainer_1j493_430,
._deniedContainer_1j493_431 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  padding: 2rem 0;
}

._waitingText_1j493_440 {
  margin: 0;
  font-size: 0.875rem;
  color: var(--text-tertiary);
  font-style: italic;
}
._bugReportButton_1146l_1 {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--surface-card);
  border: 1px solid var(--border-subtle);
  box-shadow: var(--shadow-md);
  color: var(--text-secondary);
  cursor: pointer;
  transition: background 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  z-index: 1000;
  text-decoration: none;
}

._bugReportButton_1146l_1:hover {
  background: var(--surface-hover);
  box-shadow: var(--shadow-lg);
  color: var(--text-primary);
}

._bugReportButton_1146l_1:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
}

._bugReportIcon_1146l_32 {
  width: 1.25rem;
  height: 1.25rem;
}
