/* [AZURE OCT 2026] Sección «☁️ Azure» (Administración de pre) — look & feel Apple (tokens --ad-* de admin-apple-redesign.css,
   mismo patrón de tarjetas/pestañas que organizacion.css y unidad-publico.css). */
#azureSection { font-family: var(--ad-font, -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', Roboto, sans-serif); color: var(--ad-text, #1d1d1f); }
#azureSection .az-wrap { display: flex; flex-direction: column; gap: 16px; max-width: 1400px; }

/* Reset de la regla global `.section button` para los botones propios */
#azureSection .az-btn, #azureSection .az-tabs button, #azureSection .az-seg button {
  margin: 0 !important; position: static !important; overflow: visible !important; box-shadow: none !important; background-image: none !important;
  transform: none !important; font-family: inherit !important; line-height: 1.2 !important; width: auto !important;
}
#azureSection .az-btn::before, #azureSection .az-tabs button::before, #azureSection .az-seg button::before { content: none !important; display: none !important; }

#azureSection .az-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; flex-wrap: wrap; }
#azureSection .az-title { font-size: 26px; font-weight: 700; letter-spacing: -.02em; margin: 0; }
#azureSection .az-sub { color: var(--ad-text-2, #6e6e73); font-size: 14px; margin: 4px 0 0; max-width: 760px; }
#azureSection .az-head-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
#azureSection .az-chip { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: var(--ad-r-pill, 980px); font-size: 12px; font-weight: 600; background: var(--ad-card, #fff); border: 1px solid var(--ad-border-2, rgba(0,0,0,.14)); color: var(--ad-text-2, #6e6e73); }
#azureSection .az-chip--ok { color: #1f7a3f; background: #e8f6ec; border-color: #bfe5cb; }
#azureSection .az-chip--ko { color: #b42318; background: #fdecea; border-color: #f5c2bd; }
#azureSection .az-chip--warn { color: #8a5a00; background: #fff4d6; border-color: #f3dc9a; }

#azureSection .az-tabs { display: inline-flex; gap: 4px; padding: 4px; background: rgba(0,0,0,.05); border-radius: var(--ad-r-pill, 980px); align-self: flex-start; flex-wrap: wrap; }
#azureSection .az-tabs button { padding: 8px 14px !important; border-radius: var(--ad-r-pill, 980px) !important; border: 0 !important; background: transparent !important; color: var(--ad-text-2, #6e6e73) !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important; }
#azureSection .az-tabs button.active { background: var(--ad-card, #fff) !important; color: var(--ad-text, #1d1d1f) !important; box-shadow: 0 1px 3px rgba(0,0,0,.12) !important; }

#azureSection .az-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); gap: 14px; }
#azureSection .az-card { background: var(--ad-card, #fff); border: 1px solid var(--ad-border, rgba(0,0,0,.08)); border-radius: var(--ad-r-card, 18px); padding: 18px 20px; box-shadow: 0 1px 2px rgba(0,0,0,.04); display: flex; flex-direction: column; gap: 10px; }
#azureSection .az-card--wide { grid-column: 1 / -1; }
#azureSection .az-card-t { font-size: 15px; font-weight: 700; margin: 0; letter-spacing: -.01em; }
#azureSection .az-p { margin: 0; font-size: 13px; color: var(--ad-text-2, #6e6e73); line-height: 1.45; }
#azureSection .az-p code, #azureSection .az-lista code { background: rgba(0,0,0,.05); padding: 1px 5px; border-radius: 5px; font-size: 12px; }
#azureSection .az-aviso { margin: 0; font-size: 13px; color: #8a5a00; background: #fff4d6; border-radius: 10px; padding: 8px 10px; }
#azureSection .az-lista { list-style: none; margin: 0; padding: 0; font-size: 13px; display: flex; flex-direction: column; gap: 5px; }
#azureSection .az-lista small { color: var(--ad-text-3, #a1a1a6); }
#azureSection .ok { color: #1f7a3f; } #azureSection .ko { color: #b42318; }
#azureSection .az-var-grupo { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 6px; font-size: 12px; }
#azureSection .az-var-grupo b { width: 70px; text-transform: capitalize; color: var(--ad-text-2, #6e6e73); }
#azureSection .az-var { padding: 3px 8px; border-radius: 8px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; }
#azureSection .az-var.ok { background: #e8f6ec; } #azureSection .az-var.ko { background: #fdecea; }

#azureSection .az-acciones { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
#azureSection .az-acciones--der { justify-content: flex-end; }
#azureSection .az-btn { display: inline-flex !important; align-items: center !important; gap: 6px !important; padding: 9px 16px !important; border-radius: var(--ad-r-pill, 980px) !important; border: 1px solid transparent !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important; white-space: nowrap !important; text-decoration: none !important; transition: transform .1s ease, filter .15s ease, background .15s ease, box-shadow .15s ease !important; }
#azureSection .az-btn:disabled { opacity: .5 !important; cursor: default !important; }
#azureSection .az-btn--pri { background: linear-gradient(135deg, #4a8df0 0%, #2563eb 100%) !important; background-image: linear-gradient(135deg, #4a8df0 0%, #2563eb 100%) !important; color: #fff !important; box-shadow: 0 4px 14px rgba(37,99,235,.28) !important; }
#azureSection .az-btn--pri:hover:not(:disabled) { transform: translateY(-1px) !important; filter: saturate(1.08) !important; }
#azureSection .az-btn--rojo { background: linear-gradient(135deg, #ef5350 0%, #c62828 100%) !important; background-image: linear-gradient(135deg, #ef5350 0%, #c62828 100%) !important; color: #fff !important; box-shadow: 0 4px 14px rgba(198,40,40,.28) !important; }
#azureSection .az-btn--rojo:hover:not(:disabled) { transform: translateY(-1px) !important; filter: saturate(1.08) !important; }
#azureSection .az-btn--sec { background: var(--ad-card, #fff) !important; color: var(--ad-text, #1d1d1f) !important; border-color: var(--ad-border-2, rgba(0,0,0,.14)) !important; }
#azureSection .az-btn--sec:hover:not(:disabled) { background: rgba(0,0,0,.04) !important; }
#azureSection .az-mini { padding: 5px 10px !important; font-size: 12px !important; }
#azureSection .az-ultimo, #azureSection .az-ultimos { font-size: 12px; color: var(--ad-text-3, #a1a1a6); display: inline-flex; gap: 12px; flex-wrap: wrap; }

#azureSection .az-seg { display: inline-flex; gap: 4px; padding: 4px; background: rgba(0,0,0,.05); border-radius: var(--ad-r-pill, 980px); align-self: flex-start; flex-wrap: wrap; }
#azureSection .az-seg button { padding: 7px 14px !important; border-radius: var(--ad-r-pill, 980px) !important; border: 0 !important; background: transparent !important; color: var(--ad-text-2, #6e6e73) !important; font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important; }
#azureSection .az-seg button.active { background: var(--ad-card, #fff) !important; color: var(--ad-text, #1d1d1f) !important; box-shadow: 0 1px 3px rgba(0,0,0,.12) !important; }
#azureSection .az-seg button.az-seg--rojo { background: #c62828 !important; color: #fff !important; }

#azureSection .az-label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; font-weight: 600; color: var(--ad-text-2, #6e6e73); }
#azureSection .az-input { font: inherit; font-size: 13px; padding: 8px 10px; border-radius: var(--ad-r-el, 12px); border: 1px solid var(--ad-border-2, rgba(0,0,0,.14)); background: var(--ad-card-2, #fbfbfd); color: var(--ad-text, #1d1d1f); width: 100%; box-sizing: border-box; }
#azureSection .az-opciones { display: flex; flex-wrap: wrap; gap: 8px 16px; }
#azureSection .az-check { font-size: 13px; display: inline-flex; align-items: center; gap: 6px; }

#azureSection .az-tabla { width: 100%; border-collapse: separate; border-spacing: 0; background: var(--ad-card, #fff); border: 1px solid var(--ad-border, rgba(0,0,0,.08)); border-radius: var(--ad-r-card, 18px); overflow: hidden; font-size: 13px; }
#azureSection .az-tabla th { text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--ad-text-3, #a1a1a6); padding: 10px 12px; border-bottom: 1px solid var(--ad-border, rgba(0,0,0,.08)); }
#azureSection .az-tabla td { padding: 9px 12px; border-bottom: 1px solid var(--ad-border, rgba(0,0,0,.08)); vertical-align: middle; }
#azureSection .az-fila--error td:first-child { box-shadow: inset 3px 0 0 #c62828; } #azureSection .az-fila--ok td:first-child { box-shadow: inset 3px 0 0 #1f7a3f; } #azureSection .az-fila--en_curso td:first-child { box-shadow: inset 3px 0 0 #e88732; }
#azureSection .az-tag-rojo { font-size: 10px; font-weight: 700; color: #fff; background: #c62828; padding: 2px 6px; border-radius: 6px; vertical-align: middle; }
#azureSection .az-vacio { color: var(--ad-text-3, #a1a1a6); text-align: center; padding: 32px; }

#azureSection .az-consola { background: #1d1d1f; color: #e8e8ed; border-radius: var(--ad-r-card, 18px); padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; }
#azureSection .az-consola-head { display: flex; justify-content: space-between; align-items: center; font-weight: 700; font-size: 14px; }
#azureSection .az-consola-head div { display: flex; gap: 6px; }
#azureSection .az-pasos { display: flex; flex-wrap: wrap; gap: 6px; }
#azureSection .az-paso { font-size: 12px; padding: 4px 10px; border-radius: var(--ad-r-pill, 980px); background: rgba(255,255,255,.1); }
#azureSection .az-paso.ok { background: rgba(31,122,63,.35); } #azureSection .az-paso.ko { background: rgba(198,40,40,.4); }
#azureSection .az-log { margin: 0; max-height: 360px; overflow: auto; font: 12px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: pre-wrap; word-break: break-word; background: rgba(0,0,0,.35); border-radius: 10px; padding: 10px 12px; }

#azureSection .az-modal { position: fixed; inset: 0; background: rgba(0,0,0,.35); display: flex; align-items: center; justify-content: center; z-index: 9000; padding: 20px; }
#azureSection .az-modal[hidden] { display: none; }
#azureSection .az-modal-card { background: var(--ad-card, #fff); border-radius: var(--ad-r-card, 18px); padding: 22px 24px; max-width: 720px; width: 100%; max-height: 85vh; overflow: auto; box-shadow: 0 20px 60px rgba(0,0,0,.25); display: flex; flex-direction: column; gap: 12px; }
#azureSection .az-modal-t { margin: 0; font-size: 18px; font-weight: 700; }
#azureSection .az-modal-aviso { margin: 0; font-size: 13px; color: #b42318; background: #fdecea; border-radius: 10px; padding: 8px 10px; }
#azureSection .az-plan { margin: 0; padding-left: 20px; font-size: 13px; display: flex; flex-direction: column; gap: 8px; }
#azureSection .az-plan code { font-size: 11px; background: rgba(0,0,0,.05); padding: 1px 5px; border-radius: 5px; word-break: break-all; }
#azureSection .az-plan small { color: var(--ad-text-3, #a1a1a6); }
@media (prefers-color-scheme: dark) { #azureSection .az-log { background: rgba(0,0,0,.5); } }
