/* =========================================================
   LEER ANTES DE SEGUIR · EG FLAT 26 · ARCHIVO ORQUESTADOR
   =========================================================
   Imports + tokens globales. No agregar componentes ni módulos aquí.
   Usar tokens para colores, sombras, radios, z-index, scrollbars y medidas repetibles.
   Antes de crear tokens, revisar equivalentes y consolidar similares.
   BREAKPOINTS OFICIALES:
   - 1180px: desktop angosto.
   - 1024px: tablet / módulos densos.
   - 920px : shell mobile.
   - 640px : mobile.
   NOMENCLATURA: base .eg-*, variantes .is-*, hooks JS data-eg-*.
   GRUPOS: imports, tokens, reset mínimo y utilidades críticas.
   ========================================================= */

@import url('./egFlat26_core.css');
@import url('./egFlat26_forms.css');
@import url('./egFlat26_modals.css');
@import url('./egFlat26_tables.css');
@import url('./egFlat26_utils.css');

:root {
  /* =========================================================
     EG FLAT 26 · TOKENS BASE
     Paleta base: Alternativa 2 · Industrial flat
     ========================================================= */

  --eg_color_bg_app: #e4ded3;
  --eg_color_bg_app_alt: #eee9df;
  --eg_color_bg_surface: #fffdf8;
  --eg_color_bg_surface_2: #f7f2e9;
  --eg_color_bg_surface_3: #eee7dd;
  --eg_color_bg_soft: #efe1aa;
  --eg_color_bg_row: #f7f2e9;

  --eg_color_text: #232323;
  --eg_color_text_soft: #4b5257;
  --eg_color_text_muted: #70767b;
  --eg_color_text_inverse: #f7f3ea;
  --eg_color_text_inverse_soft: #ddd5c6;

  --eg_color_line: #d7d2c8;
  --eg_color_line_strong: #c9c1b5;
  --eg_color_line_inverse: rgba(255, 255, 255, 0.08);
  --eg_color_line_inverse_soft: rgba(255, 255, 255, 0.04);

  --eg_color_sidebar: #25282a;
  --eg_color_sidebar_2: #1f2224;
  --eg_color_sidebar_3: #35393c;
  --eg_color_sidebar_hover: #40464a;

  --eg_color_primary: #e3b505;
  --eg_color_primary_hover: #bb8f00;
  --eg_color_primary_active: #a77f00;
  --eg_color_primary_soft: rgba(227, 181, 5, 0.16);
  --eg_color_primary_soft_strong: rgba(227, 181, 5, 0.24);

  --eg_color_success: #4e8b57;
  --eg_color_success_soft: rgba(78, 139, 87, 0.14);
  --eg_color_warning: #a87400;
  --eg_color_warning_soft: rgba(168, 116, 0, 0.14);
  --eg_color_danger: #b64545;
  --eg_color_danger_soft: rgba(182, 69, 69, 0.14);
  --eg_color_info: #4d6a7a;
  --eg_color_info_soft: rgba(77, 106, 122, 0.14);

  --eg_shadow_xs: 0 6px 14px rgba(22, 22, 22, 0.04);
  --eg_shadow_sm: 0 10px 22px rgba(22, 22, 22, 0.06);
  --eg_shadow_md: 0 16px 34px rgba(22, 22, 22, 0.08);
  --eg_shadow_lg: 0 24px 60px rgba(20, 20, 20, 0.16);
  --eg_shadow_brand_logo: 0 10px 18px rgba(0, 0, 0, 0.12);

  --eg_radius_xs: 8px;
  --eg_radius_sm: 12px;
  --eg_radius_md: 16px;
  --eg_radius_lg: 22px;
  --eg_radius_xl: 28px;
  --eg_radius_round: 999px;

  --eg_space_1: 4px;
  --eg_space_2: 8px;
  --eg_space_3: 12px;
  --eg_space_4: 16px;
  --eg_space_5: 20px;
  --eg_space_6: 24px;
  --eg_space_7: 28px;
  --eg_space_8: 32px;

  --eg_font_family_base: Inter, 'Segoe UI', Arial, sans-serif;
  --eg_font_size_xs: 12px;
  --eg_font_size_sm: 13px;
  --eg_font_size_md: 14px;
  --eg_font_size_base: var(--eg_font_size_md);
  --eg_font_size_lg: 15px;
  --eg_font_size_xl: 18px;
  --eg_font_size_2xl: 22px;
  --eg_font_size_3xl: 28px;

  --eg_line_height_tight: 1.15;
  --eg_line_height_base: 1.5;
  --eg_line_height_relaxed: 1.65;

  --eg_sidebar_width: 280px;
  --eg_sidebar_width_collapsed: 74px;
  --eg_sidebar_width_expanded: 280px;
  --eg_topbar_height: 72px;
  --eg_control_height: 46px;
  --eg_tab_height: 40px;
  --eg_button_height: 46px;
  --eg_modal_width_md: 560px;
  --eg_modal_width_lg: 760px;
  --eg_modal_width_sm: 420px;
  --eg_modal_width_xl: 980px;

  --eg_scrollbar_size: 10px;
  --eg_scrollbar_size_sm: 6px;
  --eg_scrollbar_track: var(--eg_color_bg_surface_3);
  --eg_scrollbar_thumb: var(--eg_color_line_strong);
  --eg_scrollbar_thumb_hover: var(--eg_color_primary_hover);
  --eg_scrollbar_thumb_border: var(--eg_color_bg_surface_3);

  --eg_z_topbar: 100;
  --eg_z_sidebar: 120;
  --eg_z_modal: 1000;

  --eg_transition_fast: 0.18s ease;
  --eg_transition_base: 0.24s ease;


  /* =========================================
     EXTENSIÓN DE TOKENS (NORMALIZACIÓN)
     ========================================= */

  /* Skin tierra calido y fuerte */
  --eg_color_earth_mustard: #d79a16;
  --eg_color_earth_mustard_hover: #b9780f;
  --eg_color_earth_mustard_active: #935f0c;
  --eg_color_earth_mustard_soft: rgba(215, 154, 22, 0.24);

  --eg_color_earth_terracotta: #c44d2c;
  --eg_color_earth_terracotta_soft: rgba(196, 77, 44, 0.20);

  --eg_color_earth_blue: #285f7d;
  --eg_color_earth_blue_soft: rgba(40, 95, 125, 0.24);
  --eg_color_earth_blue_deep: #1f4b63;
  --eg_color_earth_blue_deep_hover: #285f7d;

  --eg_color_earth_olive: #587b35;
  --eg_color_earth_olive_soft: rgba(88, 123, 53, 0.22);

  --eg_color_earth_gray: #5f6258;
  --eg_color_earth_gray_soft: rgba(95, 98, 88, 0.24);

  --eg_color_earth_sand: #efe0c8;
  --eg_color_earth_coffee: #332923;
  --eg_color_earth_gray_lift: #6d6f63;

  --eg_color_form_glass_10: rgba(255, 255, 255, 0.10);
  --eg_color_form_glass_12: rgba(255, 255, 255, 0.12);
  --eg_color_form_glass_16: rgba(255, 255, 255, 0.16);
  --eg_color_form_glass_18: rgba(255, 255, 255, 0.18);
  --eg_color_form_glass_20: rgba(255, 255, 255, 0.20);
  --eg_color_form_glass_22: rgba(255, 255, 255, 0.22);
  --eg_color_form_glass_30: rgba(255, 255, 255, 0.30);
  --eg_color_form_glass_38: rgba(255, 255, 255, 0.38);

  --eg_color_form_sand_soft: rgba(242, 230, 212, 0.72);
  --eg_color_form_sand_line_focus: rgba(242, 230, 212, 0.85);
  --eg_color_form_sand_ring: rgba(242, 230, 212, 0.34);
  --eg_color_form_mustard_focus: rgba(217, 162, 39, 0.95);
  --eg_shadow_form_filter: 0 18px 34px rgba(23, 46, 63, 0.28);
  --eg_shadow_form_process: 0 20px 36px rgba(44, 39, 34, 0.30);

  --eg_color_summary_bg_start: #c25a39;
  --eg_color_summary_bg_end: #9f4329;
  --eg_color_summary_border: rgba(255, 236, 216, 0.24);
  --eg_color_summary_text: var(--eg_color_white);
  --eg_color_summary_text_soft: rgba(247, 243, 234, 0.84);
  --eg_color_summary_title: var(--eg_color_white);
  --eg_color_summary_item_bg: rgba(255, 246, 236, 0.10);
  --eg_color_summary_item_bg_hover: rgba(255, 246, 236, 0.14);
  --eg_color_summary_item_border: rgba(255, 236, 216, 0.22);
  --eg_color_summary_label: rgba(247, 243, 234, 0.82);
  --eg_color_summary_value: #fff7ed;
  --eg_color_summary_detail: rgba(247, 243, 234, 0.86);
  --eg_color_summary_divider: rgba(255, 236, 216, 0.24);
  --eg_color_summary_pill_bg: rgba(255, 246, 236, 0.10);
  --eg_color_summary_pill_border: rgba(255, 236, 216, 0.22);
  --eg_color_summary_pill_text: var(--eg_color_white);
  --eg_color_summary_pill_strong: #ffe8cc;
  --eg_shadow_summary: 0 16px 34px rgba(71, 28, 14, 0.28);

  --eg_color_result_panel_bg: var(--eg_color_bg_surface_2);
  --eg_color_result_panel_border: var(--eg_color_line);
  --eg_color_result_panel_title: var(--eg_color_earth_coffee);
  --eg_color_result_panel_title_soft: var(--eg_color_earth_gray);
  --eg_color_result_list_bg: var(--eg_color_bg_surface);
  --eg_color_result_item_bg: var(--eg_color_bg_surface);
  --eg_color_result_item_bg_hover: var(--eg_color_bg_surface_2);
  --eg_color_result_item_border: var(--eg_color_line);
  --eg_color_result_item_border_hover: var(--eg_color_line_strong);
  --eg_color_result_item_title: var(--eg_color_earth_coffee);
  --eg_color_result_item_meta: var(--eg_color_earth_gray);
  --eg_color_result_item_selected_bg: var(--eg_color_earth_olive_soft);
  --eg_color_result_item_selected_border: var(--eg_color_earth_olive);
  --eg_color_result_item_selected_accent: var(--eg_color_earth_olive);
  --eg_color_result_empty_bg: var(--eg_color_surface_warm_subtle);
  --eg_color_result_empty_border: var(--eg_color_line_strong);
  --eg_color_result_empty_text: var(--eg_color_earth_gray);
  --eg_color_result_action_bg: var(--eg_color_earth_coffee);
  --eg_color_result_action_bg_hover: var(--eg_color_earth_blue);
  --eg_color_result_action_selected_bg: var(--eg_color_earth_olive);
  --eg_color_result_action_selected_bg_hover: var(--eg_color_earth_blue_deep);
  --eg_shadow_result_panel: var(--eg_shadow_sm);
  --eg_shadow_result_item: var(--eg_shadow_xs);
  --eg_shadow_result_item_selected: 0 10px 22px rgba(94, 122, 61, 0.16);

  --eg_color_primary: var(--eg_color_earth_mustard);
  --eg_color_primary_hover: var(--eg_color_earth_mustard_hover);
  --eg_color_primary_active: var(--eg_color_earth_mustard_active);
  --eg_color_primary_soft: var(--eg_color_earth_mustard_soft);

  --eg_color_info: var(--eg_color_earth_blue);
  --eg_color_info_soft: var(--eg_color_earth_blue_soft);
  --eg_color_success: var(--eg_color_earth_olive);
  --eg_color_success_soft: var(--eg_color_earth_olive_soft);
  --eg_color_danger: var(--eg_color_earth_terracotta);
  --eg_color_danger_soft: var(--eg_color_earth_terracotta_soft);
  --eg_color_warning: var(--eg_color_earth_mustard_hover);
  --eg_color_warning_soft: rgba(185, 120, 15, 0.22);

  --eg_color_focus_ring_dark: rgba(62, 50, 42, 0.3);
  --eg_summary_cols: 4;

  --eg_color_white: #ffffff;

  --eg_color_surface_soft: #faf6ee;
  --eg_color_surface_soft_2: #f3ede3;

  --eg_color_text_placeholder: #8a8176;
  --eg_color_text_disabled: #8c857b;

  --eg_color_overlay: rgba(16, 16, 16, 0.46);
  --eg_color_black: #000000;

  --eg_color_topbar_bg: rgba(255, 253, 248, 0.88);
  --eg_color_footer_line_soft: rgba(88, 72, 32, 0.10);
  --eg_color_footer_bg_soft: rgba(255, 252, 245, 0.62);
  --eg_shadow_footer: 0 12px 28px rgba(61, 47, 18, 0.06);
  --eg_color_nav_text_soft: rgba(247, 243, 234, 0.92);

  --eg_color_modal_border_soft: rgba(0, 0, 0, 0.08);
  --eg_color_modal_body_bg: var(--eg_color_bg_surface);
  --eg_color_modal_footer_bg: var(--eg_color_surface_soft_2);
  --eg_color_modal_footer_border: rgba(88, 72, 32, 0.10);
  --eg_color_modal_title_text: var(--eg_color_white);
  --eg_color_modal_title_text_soft: rgba(247, 243, 234, 0.78);
  --eg_color_modal_close_bg: rgba(255, 255, 255, 0.16);
  --eg_color_modal_close_bg_hover: rgba(255, 255, 255, 0.24);
  --eg_color_modal_close_border: rgba(255, 255, 255, 0.20);
  --eg_color_modal_info_bg: #faf7f1;
  --eg_color_modal_header_neutral: var(--eg_color_earth_coffee);
  --eg_color_modal_header_document: var(--eg_color_earth_gray);
  --eg_color_modal_header_info: var(--eg_color_earth_blue);
  --eg_color_modal_header_confirm: var(--eg_color_earth_olive);
  --eg_color_modal_header_warning: var(--eg_color_earth_mustard_hover);
  --eg_color_modal_header_danger: var(--eg_color_earth_terracotta);
  --eg_color_modal_action_neutral: var(--eg_color_earth_coffee);
  --eg_color_modal_action_neutral_hover: #4b3c33;
  --eg_color_modal_action_document: var(--eg_color_earth_gray);
  --eg_color_modal_action_document_hover: #5d554b;
  --eg_color_modal_action_info: var(--eg_color_earth_blue_deep);
  --eg_color_modal_action_info_hover: var(--eg_color_earth_blue_deep_hover);
  --eg_color_modal_action_confirm: var(--eg_color_earth_olive);
  --eg_color_modal_action_confirm_hover: #516933;
  --eg_color_modal_action_warning: var(--eg_color_earth_mustard_hover);
  --eg_color_modal_action_warning_hover: var(--eg_color_earth_mustard_active);
  --eg_color_modal_action_warning_text: var(--eg_color_earth_coffee);
  --eg_color_modal_action_danger: var(--eg_color_earth_terracotta);
  --eg_color_modal_action_danger_hover: #a74025;
  --eg_color_modal_ghost_bg: rgba(255, 255, 255, 0.58);
  --eg_color_modal_ghost_bg_hover: rgba(255, 255, 255, 0.82);
  --eg_color_modal_ghost_line: rgba(88, 72, 32, 0.16);
  --eg_shadow_modal: 0 28px 60px rgba(34, 28, 22, 0.20);
  --eg_color_message_text: var(--eg_color_text_inverse);
  --eg_color_message_text_soft: var(--eg_color_text_inverse_soft);
  --eg_color_message_icon_bg: rgba(255, 255, 255, 0.18);
  --eg_color_message_close_bg_hover: rgba(255, 255, 255, 0.16);
  --eg_color_message_info_bg: var(--eg_color_earth_blue_deep);
  --eg_color_message_info_border: var(--eg_color_earth_blue);
  --eg_color_message_success_bg: var(--eg_color_earth_olive);
  --eg_color_message_success_border: #6f8b4d;
  --eg_color_message_warning_bg: var(--eg_color_earth_mustard_hover);
  --eg_color_message_warning_border: var(--eg_color_earth_mustard);
  --eg_color_message_danger_bg: var(--eg_color_earth_terracotta);
  --eg_color_message_danger_border: #d36a4d;
  --eg_shadow_message: 0 24px 52px rgba(28, 22, 18, 0.24);
  --eg_color_print_bg: #ffffff;

  --eg_color_surface_glass_low: rgba(255, 255, 255, 0.08);
  --eg_color_surface_glass_mid: rgba(255, 255, 255, 0.10);
  --eg_color_surface_glass_soft: rgba(255, 255, 255, 0.14);
  --eg_color_surface_glass_high: rgba(255, 255, 255, 0.18);
  --eg_color_surface_glass_strong: rgba(255, 255, 255, 0.22);
  --eg_color_surface_glass_max: rgba(255, 255, 255, 0.24);

  --eg_color_surface_glass_near_opaque: rgba(255, 255, 255, 0.98);
  --eg_color_surface_warm_subtle: rgba(255, 255, 255, 0.32);

  --eg_color_module_meta_text: rgba(255, 255, 255, 0.96);
  --eg_color_module_meta_line: rgba(255, 255, 255, 0.08);
  --eg_color_module_meta_bg_start: rgba(60, 63, 69, 0.98);
  --eg_color_module_meta_bg_end: rgba(42, 45, 51, 0.98);
  --eg_color_module_meta_shine: rgba(255, 255, 255, 0.06);
  --eg_color_module_meta_shadow: rgba(19, 22, 29, 0.16);
  --eg_color_module_meta_button_line: rgba(255, 255, 255, 0.22);
  --eg_color_module_meta_button_bg_hover: rgba(255, 255, 255, 0.08);

  --eg_color_sunday_border: rgba(198, 93, 41, 0.28);
  --eg_color_sunday_bg_start: rgba(255, 246, 239, 0.96);
  --eg_color_sunday_bg_end: rgba(255, 251, 247, 1);
  --eg_color_sunday_head_border: rgba(198, 93, 41, 0.16);
  --eg_color_sunday_head_bg_start: rgba(255, 231, 216, 0.96);
  --eg_color_sunday_head_bg_end: rgba(255, 242, 233, 0.98);
  --eg_color_sunday_overline: #9a4a1f;
  --eg_color_sunday_title: #7d3510;

  --eg_color_pending_text: #3f3100;
  --eg_color_pending_accent_text: #5c4300;
  --eg_color_pending_badge_bg: rgba(255, 248, 210, 0.72);
  --eg_color_pending_icon_border: rgba(92, 67, 0, 0.18);
  --eg_color_pending_icon_bg: rgba(255, 250, 230, 0.92);


  --eg_state_pending_border: #ae7e22;
  --eg_state_pending_bg: linear-gradient(180deg, #ba8b2f 0%, #8a6524 100%);
  --eg_state_pending_shadow: 0 12px 28px rgba(98, 69, 20, 0.28);

  --eg_state_finished_border: #254d65;
  --eg_state_finished_bg: linear-gradient(180deg, #3a6784 0%, #2f5d7a 100%);
  --eg_state_finished_shadow: 0 12px 28px rgba(36, 72, 95, 0.24);

  --eg_state_production_border: #6f594c;
  --eg_state_production_bg: linear-gradient(180deg, #8a7260 0%, #6f594c 100%);
  --eg_state_production_shadow: 0 12px 28px rgba(62, 50, 42, 0.22);

  --eg_state_billed_border: #58723a;
  --eg_state_billed_bg: linear-gradient(180deg, #6d8a49 0%, #5e7a3d 100%);
  --eg_state_billed_shadow: 0 12px 28px rgba(62, 85, 36, 0.24);

  --eg_state_cancelled_border: #a8462b;
  --eg_state_cancelled_bg: linear-gradient(180deg, #c15a3a 0%, #9f4329 100%);
  --eg_state_cancelled_shadow: 0 12px 28px rgba(120, 43, 24, 0.24);

  --eg_state_warning_border: #8e2e25;
  --eg_state_warning_bg: linear-gradient(180deg, #b94635 0%, #7d281f 100%);
  --eg_state_warning_shadow: 0 12px 30px rgba(94, 26, 19, 0.28);
  
}

/* =========================================================
   RESET / DIRECTIVAS GENERALES
   ========================================================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  font-family: var(--eg_font_family_base);
  font-size: var(--eg_font_size_md);
  line-height: var(--eg_line_height_base);
  color: var(--eg_color_text);
  background: linear-gradient(180deg, var(--eg_color_bg_app_alt) 0%, var(--eg_color_bg_app) 100%);
}

a {
  color: inherit;
  text-decoration: none;
}

img,
picture,
svg,
canvas {
  display: block;
  max-width: 100%;
}

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

button {
  cursor: pointer;
}

:focus-visible {
  outline: 0;
}

::selection {
  background: var(--eg_color_primary_soft_strong);
  color: var(--eg_color_text);
}

/* =========================================================
   TIPOGRAFÍA BASE
   ========================================================= */

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  color: var(--eg_color_text);
  line-height: var(--eg_line_height_tight);
}

p {
  margin: 0;
  color: var(--eg_color_text_soft);
}

small {
  font-size: var(--eg_font_size_xs);
}

/* =========================================================
   UTILIDADES GENÉRICAS MÍNIMAS
   ========================================================= */

.eg-hidden {
  display: none !important;
}

.eg-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.eg-scrollable {
  overflow: auto;
}

.eg-scrollable::-webkit-scrollbar {
  width: var(--eg_scrollbar_size);
  height: var(--eg_scrollbar_size);
}

.eg-scrollable::-webkit-scrollbar-track {
  background: var(--eg_scrollbar_track);
}

.eg-scrollable::-webkit-scrollbar-thumb {
  background: var(--eg_scrollbar_thumb);
  border-radius: var(--eg_radius_round);
  border: 2px solid var(--eg_scrollbar_thumb_border);
}

.eg-scrollable::-webkit-scrollbar-thumb:hover {
  background: var(--eg_scrollbar_thumb_hover);
}

/* =========================================================
   SHELL RESPONSIVO BASE
   ========================================================= */

@media (max-width: 1180px) {
  :root {
    --eg_sidebar_width: 248px;
  }
}

@media (max-width: 920px) {
  :root {
    --eg_topbar_height: auto;
    --eg_modal_width_md: min(560px, calc(100vw - 32px));
    --eg_modal_width_lg: min(760px, calc(100vw - 32px));
  }
}

@media (max-width: 640px) {
  :root {
    --eg_button_height: 44px;
    --eg_control_height: 44px;
    --eg_tab_height: 38px;
    --eg_radius_lg: 18px;
    --eg_radius_xl: 22px;
  }
}
