/* CRM Agentes Prime — Responsive Global 1.4
   Ajuste fino del shell aprobado:
   - Inicio intacto.
   - Navegación, Centro de coordinación y calendario forman una columna izquierda estable.
   - Márgenes laterales pequeños y constantes.
   - Sin columna derecha global. */

body.ap5-crm-body{
  --ap5-topbar-height:72px;
  --ap5-shell-edge:clamp(14px,1.15vw,24px);
  --ap5-left-tools-offset:374px;
  background:
    radial-gradient(circle at 8% 0%,rgba(183,158,34,.12),transparent 34rem),
    var(--ap5-bg)!important;
}

.ap5-app{min-width:0;min-height:100dvh;}
.ap5-topbar{
  position:sticky;
  top:0;
  z-index:1200;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:var(--ap5-topbar-height);
  padding:calc(10px + var(--ap5-safe-top)) max(var(--ap5-shell-edge),var(--ap5-safe-right)) 10px max(var(--ap5-shell-edge),var(--ap5-safe-left));
  border-bottom:1px solid rgba(210,191,125,.72);
  background:rgba(255,255,255,.92);
  box-shadow:0 6px 22px rgba(73,62,20,.05);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.ap5-brand{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  color:var(--ap5-green)!important;
  text-decoration:none!important;
}
.ap5-brand:hover{text-decoration:none!important;}
.ap5-brand-logo{width:42px;height:42px;flex:0 0 42px;object-fit:contain;}
.ap5-brand-copy{display:grid;gap:1px;min-width:0;}
.ap5-brand-copy strong{font-size:18px;line-height:1.05;letter-spacing:-.025em;}
.ap5-brand-copy small{color:var(--ap5-muted);font-size:11px;line-height:1.2;}
.ap5-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0;}

.ap5-user-menu{position:relative;min-width:0;}
.ap5-user-trigger{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  max-width:min(330px,42vw);
  padding:5px 10px 5px 6px;
  border:1px solid var(--ap5-border-strong);
  border-radius:999px;
  background:#fff;
  color:var(--ap5-green);
  font:inherit;
  font-size:13px;
  font-weight:750;
  cursor:pointer;
}
.ap5-user-trigger:hover{background:var(--ap5-surface-soft);}
.ap5-user-avatar{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border-radius:50%;background:var(--ap5-green);color:#fff;font-size:11px;font-weight:850;}
.ap5-user-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ap5-user-caret{color:var(--ap5-muted);font-size:11px;}
.ap5-user-dropdown{
  position:absolute;
  z-index:2500;
  top:calc(100% + 9px);
  right:0;
  display:grid;
  width:min(290px,calc(100vw - 24px));
  padding:8px;
  border:1px solid var(--ap5-border);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--ap5-shadow-strong);
}
.ap5-user-dropdown-head{display:grid;gap:2px;margin:2px 3px 7px;padding:8px 9px 12px;border-bottom:1px solid var(--ap5-border);}
.ap5-user-dropdown-head strong{color:var(--ap5-green);font-size:14px;}
.ap5-user-dropdown-head small{color:var(--ap5-muted);font-size:11px;}
.ap5-user-dropdown a,.ap5-user-dropdown button{
  display:flex;
  align-items:center;
  width:100%;
  min-height:42px;
  padding:9px 11px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--ap5-text)!important;
  font:inherit;
  font-size:13px;
  font-weight:650;
  text-align:left;
  text-decoration:none!important;
  cursor:pointer;
}
.ap5-user-dropdown a:hover,.ap5-user-dropdown button:hover{background:var(--ap5-green-soft);color:var(--ap5-green)!important;}
.ap5-user-dropdown form{margin:0;padding:0;}

.ap5-workspace{
  display:grid;
  grid-template-columns:218px minmax(0,1fr);
  grid-template-rows:auto;
  align-items:start;
  gap:12px;
  width:100%;
  max-width:none;
  margin:0;
  padding:12px max(var(--ap5-shell-edge),var(--ap5-safe-right)) calc(34px + var(--ap5-safe-bottom)) max(var(--ap5-shell-edge),var(--ap5-safe-left));
}
/* Navegación y herramientas comparten la misma vía izquierda.
   Así Coordinación y Calendario nacen justo bajo la navegación y permanecen fijos. */
.ap5-nav-area{
  grid-column:1;
  grid-row:1;
  min-width:0;
  position:sticky;
  top:calc(var(--ap5-topbar-height) + 10px);
  z-index:850;
}
.ap5-main-area{grid-column:2;grid-row:1;min-width:0;width:100%;overflow:visible;outline:none;}
.ap5-main-area>*{min-width:0;max-width:100%;}
.ap5-tools-area{
  grid-column:1;
  grid-row:1;
  display:grid;
  gap:10px;
  min-width:0;
  align-content:start;
  position:sticky;
  top:calc(var(--ap5-topbar-height) + var(--ap5-left-tools-offset) + 10px);
  margin-top:var(--ap5-left-tools-offset);
  max-height:calc(100dvh - var(--ap5-topbar-height) - var(--ap5-left-tools-offset) - 28px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-gutter:stable;
  padding:0 2px 2px 0;
}
.ap5-tool-section{min-width:0;}

/* Navegación: sobria, clara y sin competir con el trabajo. */
.ap5-nav-card,.ap5-sidebar-card{
  min-width:0;
  padding:10px;
  border:1px solid var(--ap5-border);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,253,246,.98),rgba(255,250,235,.94));
  box-shadow:var(--ap5-shadow);
}
.ap5-nav-heading,.ap5-sidebar-title{margin:2px 4px 9px;color:var(--ap5-muted);font-size:11px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;}
.ap5-nav{display:grid;gap:5px;min-width:0;}
.ap5-nav-home,.ap5-nav-trigger{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  width:100%;
  min-width:0;
  min-height:48px;
  padding:6px 9px;
  border:1px solid transparent;
  border-radius:13px;
  background:transparent;
  color:var(--ap5-text)!important;
  font:inherit;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  text-align:left;
  text-decoration:none!important;
  cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;
}
.ap5-nav-home:hover,.ap5-nav-trigger:hover{background:#fff5cf;border-color:var(--ap5-gold);text-decoration:none!important;}
.ap5-nav-home.is-active,.ap5-nav-module.is-active>.ap5-nav-trigger,.ap5-nav-module.is-open>.ap5-nav-trigger{
  background:linear-gradient(180deg,var(--ap5-green),var(--ap5-green-2));
  border-color:var(--ap5-green);
  color:#fff!important;
  box-shadow:0 8px 20px rgba(48,69,31,.16);
}
.ap5-nav-icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border:1px solid var(--ap5-border-strong);
  border-radius:11px;
  background:#fffdf7;
  color:var(--ap5-green);
}
.ap5-nav-icon img{width:29px;height:29px;object-fit:contain;}
.ap5-nav-icon svg{width:21px;height:21px;}
.ap5-nav-home.is-active .ap5-nav-icon,.ap5-nav-module.is-active>.ap5-nav-trigger .ap5-nav-icon,.ap5-nav-module.is-open>.ap5-nav-trigger .ap5-nav-icon{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.13);color:#fff;}
.ap5-nav-label{min-width:0;overflow-wrap:anywhere;}
.ap5-nav-caret{color:var(--ap5-muted);font-size:18px;line-height:1;transition:transform .15s ease;}
.ap5-nav-module.is-active>.ap5-nav-trigger .ap5-nav-caret,.ap5-nav-module.is-open>.ap5-nav-trigger .ap5-nav-caret{color:#fff;}
.ap5-nav-module.is-open .ap5-nav-caret{transform:rotate(90deg);}
.ap5-nav-module{position:relative;min-width:0;}
.ap5-nav-flyout{
  position:absolute;
  z-index:2600;
  top:0;
  left:calc(100% + 10px);
  display:none;
  width:270px;
  padding:8px;
  border:1px solid var(--ap5-border);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--ap5-shadow-strong);
}
.ap5-nav-module.is-open>.ap5-nav-flyout{display:grid;gap:3px;}
.ap5-nav-flyout-title{padding:8px 10px 9px;color:var(--ap5-muted);font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;}
.ap5-nav-flyout a{display:flex;align-items:center;min-height:43px;padding:9px 11px;border-radius:10px;color:var(--ap5-text)!important;font-size:13px;font-weight:650;text-decoration:none!important;}
.ap5-nav-flyout a:hover,.ap5-nav-flyout a.is-active{background:var(--ap5-green-soft);color:var(--ap5-green)!important;}
.ap5-nav-backdrop{display:none;}

/* Herramientas laterales: útiles, pero deliberadamente silenciosas. */
.ap5-tools-area .ap-sidebar-card,.ap5-tools-area .ap-coordination-sidebar,.ap5-tools-area .ap-card,.ap5-tools-area .module{
  margin:0!important;
  padding:12px!important;
  border-radius:17px!important;
  box-shadow:none!important;
  background:linear-gradient(180deg,rgba(255,253,246,.96),rgba(255,250,235,.90))!important;
}
.ap5-tools-area .ap-coordination-sidebar{font-size:12px;}
.ap5-tools-area .crm-btn,.ap5-tools-area .ap-btn,.ap5-tools-area .button{min-height:34px!important;padding:7px 10px!important;font-size:11px!important;}
.ap5-calendar-card #calendario-mes{min-height:265px;width:100%;overflow:hidden;border-radius:12px;background:#fffdf7;}
.ap5-calendar-card .fc{font-size:10px;}
.ap5-calendar-card .fc-toolbar{gap:3px!important;}
.ap5-calendar-card .fc-toolbar-title{font-size:14px!important;}
.ap5-calendar-card .fc-button{min-height:29px!important;padding:4px 7px!important;border-radius:8px!important;}

/* El contenido manda. Ningún contenedor global lo recorta. */
.ap5-main-area,.ap5-main-area>*,.ap5-main-area section,.ap5-main-area article{min-width:0;}
.ap5-main-area{container-type:inline-size;}
.ap5-main-area .ap-page-head,.ap5-main-area .ap-page-head-v4{margin-bottom:20px;}
.ap5-main-area .ap-page-title{letter-spacing:-.035em;}
.ap5-main-area .ap-table-wrap,.ap5-main-area .crm-table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain;}
.ap5-main-area .ap-form-grid,.ap5-main-area .ap-detail-grid,.ap5-main-area .ap-detail-grid-v4{max-width:100%;}
.ap5-main-area .ap-actions-row{max-width:100%;flex-wrap:wrap!important;}

.ap-confirm-overlay,.ap-agenda-modal-overlay{
  padding:max(16px,var(--ap5-safe-top)) max(16px,var(--ap5-safe-right)) max(16px,var(--ap5-safe-bottom)) max(16px,var(--ap5-safe-left))!important;
}
.ap-confirm-dialog,.ap-agenda-dialog{max-height:calc(100dvh - 32px - var(--ap5-safe-top) - var(--ap5-safe-bottom));overflow:auto;overscroll-behavior:contain;}

@media(min-width:1600px){
  .ap5-workspace{grid-template-columns:224px minmax(0,1fr);}
}

@media(min-width:1025px) and (max-height:820px){
  body.ap5-crm-body{--ap5-left-tools-offset:344px;}
  .ap5-nav-home,.ap5-nav-trigger{min-height:44px;}
  .ap5-nav-icon{width:33px;height:33px;}
}

@media(max-width:1240px){
  body.ap5-crm-body{--ap5-shell-edge:clamp(10px,1vw,16px);--ap5-left-tools-offset:370px;}
  .ap5-workspace{grid-template-columns:198px minmax(0,1fr);gap:10px;}
  .ap5-nav-home,.ap5-nav-trigger{grid-template-columns:35px minmax(0,1fr) auto;padding-inline:7px;font-size:12px;}
  .ap5-nav-icon{width:34px;height:34px;}
}

@media(max-width:1024px){
  body.ap5-crm-body{--ap5-topbar-height:68px;--ap5-shell-edge:12px;}
  .ap5-workspace{
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"nav" "main" "tools";
    grid-template-rows:auto;
    gap:14px;
    padding:12px max(var(--ap5-shell-edge),var(--ap5-safe-right)) calc(34px + var(--ap5-safe-bottom)) max(var(--ap5-shell-edge),var(--ap5-safe-left));
  }
  .ap5-nav-area{grid-area:nav;top:calc(var(--ap5-topbar-height) + 6px);}
  .ap5-main-area{grid-area:main;}
  .ap5-nav-card{padding:7px;border-radius:16px;}
  .ap5-nav-heading{display:none;}
  .ap5-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;overflow:visible;}
  .ap5-nav-home,.ap5-nav-trigger{
    display:grid;
    grid-template-columns:1fr;
    place-items:center;
    width:100%;
    min-width:0;
    min-height:50px;
    padding:5px;
    border-color:var(--ap5-border);
    background:#fff;
  }
  .ap5-nav-label,.ap5-nav-caret{display:none;}
  .ap5-nav-icon{width:38px;height:38px;border:0;background:transparent;}
  .ap5-nav-icon img{width:32px;height:32px;}
  .ap5-nav-home.is-active,.ap5-nav-module.is-active>.ap5-nav-trigger,.ap5-nav-module.is-open>.ap5-nav-trigger{background:var(--ap5-green);}
  .ap5-nav-home.is-active .ap5-nav-icon,.ap5-nav-module.is-active>.ap5-nav-trigger .ap5-nav-icon,.ap5-nav-module.is-open>.ap5-nav-trigger .ap5-nav-icon{background:transparent;border:0;}
  .ap5-nav-flyout{
    position:fixed;
    z-index:3200;
    top:auto!important;
    right:max(12px,var(--ap5-safe-right));
    bottom:max(12px,var(--ap5-safe-bottom));
    left:max(12px,var(--ap5-safe-left))!important;
    width:auto!important;
    max-height:min(72dvh,560px);
    overflow:auto;
    padding:10px;
    border-radius:20px;
    transform:translateY(12px);
    opacity:0;
  }
  .ap5-nav-module.is-open>.ap5-nav-flyout{display:grid;transform:none;opacity:1;}
  .ap5-nav-flyout-title{padding:10px 11px 12px;font-size:12px;}
  .ap5-nav-flyout a{min-height:50px;padding:12px 13px;border:1px solid transparent;font-size:14px;}
  .ap5-nav-backdrop{
    position:fixed;
    z-index:3100;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:rgba(21,32,23,.36);
    backdrop-filter:blur(2px);
    -webkit-backdrop-filter:blur(2px);
  }
  .ap5-tools-area{grid-area:tools;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;position:static;top:auto;margin-top:0;max-height:none;overflow:visible;padding:0;}
  .ap5-calendar-card #calendario-mes{min-height:320px;}
}

@media(max-width:700px){
  body.ap5-crm-body{--ap5-topbar-height:64px;}
  body.ap5-crm-body{--ap5-shell-edge:8px;}
  .ap5-topbar{min-height:var(--ap5-topbar-height);padding-top:calc(7px + var(--ap5-safe-top));padding-bottom:7px;padding-inline:max(10px,var(--ap5-safe-left)) max(10px,var(--ap5-safe-right));}
  .ap5-brand{gap:8px;}
  .ap5-brand-logo{width:35px;height:35px;flex-basis:35px;}
  .ap5-brand-copy strong{font-size:15px;}
  .ap5-brand-copy small{font-size:9px;}
  .ap5-user-trigger{max-width:190px;min-height:38px;padding:4px 7px 4px 5px;}
  .ap5-user-avatar{width:29px;height:29px;flex-basis:29px;}
  .ap5-user-name{max-width:115px;}
  .ap5-workspace{padding-top:8px;padding-inline:max(var(--ap5-shell-edge),var(--ap5-safe-left)) max(var(--ap5-shell-edge),var(--ap5-safe-right));}
  .ap5-nav-area{top:calc(var(--ap5-topbar-height) + 4px);}
  .ap5-nav{gap:5px;}
  .ap5-nav-home,.ap5-nav-trigger{min-height:48px;padding:4px;border-radius:11px;}
  .ap5-nav-icon{width:36px;height:36px;}
  .ap5-nav-icon img{width:30px;height:30px;}
  .ap5-tools-area{grid-template-columns:1fr;}
  .ap5-main-area{scroll-margin-top:126px;}
  .ap-confirm-overlay,.ap-agenda-modal-overlay{align-items:flex-end!important;padding:0!important;}
  .ap-confirm-dialog,.ap-agenda-dialog{width:100vw!important;max-width:none!important;max-height:calc(94dvh - var(--ap5-safe-top))!important;border-radius:22px 22px 0 0!important;padding-bottom:var(--ap5-safe-bottom)!important;}
}

@media(max-width:430px){
  .ap5-brand-copy small{display:none;}
  .ap5-user-name{display:none;}
  .ap5-user-trigger{width:42px;justify-content:center;padding:4px;}
  .ap5-user-caret{display:none;}
  .ap5-nav-card{padding:6px;}
  .ap5-nav{gap:4px;}
  .ap5-nav-home,.ap5-nav-trigger{min-height:46px;border-radius:10px;}
  .ap5-nav-icon{width:34px;height:34px;}
  .ap5-nav-icon img{width:29px;height:29px;}
}
@media(max-width:1024px){body.ap5-nav-sheet-open .ap5-nav-area{z-index:3300}}
