/* Frecuencias · Overpass forzada · estilos del widget */
@import url('https://fonts.googleapis.com/css2?family=Overpass:wght@400;600;700;800&display=swap');

:root{
  --brand:#2b587d; --brand-2:#6795ba; --ink:#1c1c1c;
  --bg:#ffffff; --muted:#f8fafc; --line:#e5e7eb;
  /* Paleta por servicio */
  --sv-twr:#943128; --sv-gnd:#2b587d; --sv-app:#006645; --sv-atis:#004767;
  --sv-afis:#2462eb; --sv-ctaf:#8a5a00; --sv-ctr:#6795ba; --sv-info:#5b5b5b; --sv-mil:#7d1e7a;
}

#freq-wrap{
  font-family:'Overpass',system-ui,Segoe UI,Roboto,Arial,sans-serif !important;
  max-width:1100px; margin:0 auto; color:var(--ink); font-size:15px;
}
#freq-wrap *, #freq-wrap input, #freq-wrap button, #freq-wrap select, #freq-wrap table{ font-family:inherit !important; }

/* Header */
#freq-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0 12px;}
#freq-search{flex:1 1 360px;display:flex;gap:8px;}
.uy-input{
  flex:1;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:15px;background:#fff;outline:none;
}
.uy-input:focus{border-color:var(--brand); box-shadow:0 0 0 3px rgba(43,88,125,0.18);} 
.uy-btn{
  display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:7px;border:1px solid var(--brand);
  background:var(--brand);color:#fff;text-decoration:none;font-weight:700;font-size:16px;cursor:pointer;
  box-shadow:0 2px 6px rgba(43,88,125,0.25);transition:background .2s ease,border-color .2s ease,transform .05s ease;
}
.uy-btn:hover{background:var(--brand-2);border-color:var(--brand-2);} 
.uy-btn:active{transform:translateY(1px);} 
.uy-btn--sm{font-size:14px;padding:8px 10px;border-radius:7px;}

/* Filtros */
#freq-filters{display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:0 0 10px;}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex:1 1 auto;min-width:260px;}
.dept-group{display:flex;align-items:center;gap:8px;margin-left:auto;} /* SIEMPRE a la derecha */
.filter-label{font-size:14px;color:#475569;margin-right:4px;}

.uy-chip{
  display:inline-flex;align-items:center;gap:6px;font-size:14px;line-height:1.2;padding:6px 12px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:var(--ink);white-space:nowrap; cursor:pointer;
}
.uy-chip.active{background:#f8fafc; box-shadow:0 0 0 2px rgba(2,6,23,.05) inset;}
.svc-chip{border-color:currentColor;}
.svc-ALL{color:var(--brand); background:#f1f5f9; border-color:var(--brand);} 
.svc-CTAF{color:var(--sv-ctaf); background:#fff6e5;}
.svc-AFIS{color:var(--sv-afis); background:#eef2ff;}
.svc-ATIS{color:var(--sv-atis); background:#eaf2f5;}
.svc-GND{color:var(--sv-gnd); background:#eef2ff;}
.svc-TWR{color:var(--sv-twr); background:#faecea;}
.svc-APP{color:var(--sv-app); background:#e9f6f0;}
.svc-CTR{color:var(--sv-ctr); background:#eef3f8;}

.dept-select{
  appearance:none; border:1px solid var(--line); background:#fff; color:var(--ink);
  font-size:14px;padding:6px 12px;border-radius:999px; cursor:pointer;
}
.dept-select:focus{border-color:var(--brand); box-shadow:0 0 0 3px rgba(43,88,125,0.18); outline:none;}

/* Contador */
#freq-count{font-size:14px;color:#334155;margin:6px 0;}

/* Tabla */
.tbl{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);background:var(--bg);border-radius:12px;}
.tbl thead th{
  background:var(--muted);text-align:left;font-weight:800;font-size:14px;color:#334155;
  padding:10px;border-bottom:1px solid var(--line); user-select:none;
}
.th-sort{cursor:pointer;}
.th-sort::after{
  content:''; display:inline-block; width:0; height:0; margin-left:6px;
  border-left:5px solid transparent; border-right:5px solid transparent; border-top:6px solid transparent; border-bottom:6px solid transparent;
  opacity:.35; transform:translateY(1px);
}
.th-sort[data-order="asc"]::after{ border-top-color:#334155; border-bottom-color:transparent; transform:rotate(180deg) translateY(-1px); opacity:.9; }
.th-sort[data-order="desc"]::after{ border-bottom-color:#334155; opacity:.9; }

.tbl tbody td{padding:10px;border-bottom:1px solid var(--line);font-size:15px;vertical-align:top;}
.tbl tbody tr:hover{background:#fafbfe;}
.mono{font-variant-numeric:tabular-nums;}
.muted{color:#637186;font-size:14px;}
.td-l{margin:0 0 2px;font-weight:800;font-size:16px;}
.td-svc .badge{
  display:inline-flex;align-items:center;gap:6px;font-size:14px;line-height:1;
  padding:4px 10px;border-radius:999px;border:1px solid; background:#fff;
}

/* Responsive */
@media (max-width:720px){
  .tbl thead{display:none;}
  .tbl, .tbl tbody, .tbl tr, .tbl td{display:block;width:100%;}
  .tbl tbody tr{border-bottom:1px solid var(--line);padding:10px;}
  .tbl tbody td{border-bottom:none;padding:6px 0;}
}


/* Notas: evitar cortes raros dentro de palabras */
.td-notas{
  word-break: normal;           /* no cortar palabras arbitrariamente */
  overflow-wrap: break-word;    /* cortar solo si es necesario (palabras muy largas) */
  hyphens: auto;                /* permitir guionado automático según idioma */
  line-height: 1.35;
}


/* Chips: texto blanco al hover + fondo sólido por servicio para contraste */
.uy-chip:hover { color:#fff; }
.svc-ALL:hover { background: var(--brand); border-color: var(--brand); color:#fff; }
.svc-CTAF:hover { background: var(--sv-ctaf); border-color: var(--sv-ctaf); color:#fff; }
.svc-AFIS:hover { background: var(--sv-afis); border-color: var(--sv-afis); color:#fff; }
.svc-ATIS:hover { background: var(--sv-atis); border-color: var(--sv-atis); color:#fff; }
.svc-GND:hover  { background: var(--sv-gnd);  border-color: var(--sv-gnd);  color:#fff; }
.svc-TWR:hover  { background: var(--sv-twr);  border-color: var(--sv-twr);  color:#fff; }
.svc-APP:hover  { background: var(--sv-app);  border-color: var(--sv-app);  color:#fff; }
.svc-CTR:hover  { background: var(--sv-ctr);  border-color: var(--sv-ctr);  color:#fff; }
