/* Panel privado: los mismos materiales y tipografías de ALS, con lectura operacional. */
:root { color-scheme:dark; --ink:#071a2f; --ink-deep:#041224; --panel:#0d2746; --panel-soft:#123353; --mint:#65d49d; --blue:#91c2ff; --paper:#f5f8fb; --muted:#b0c1d3; --line:#34506b; --danger:#ffb5b5; }
* { box-sizing:border-box; }
body { margin:0; min-height:100dvh; display:flex; flex-direction:column; background:var(--ink-deep); color:var(--paper); font:400 14px/1.6 'DM Sans',sans-serif; }
body::before { content:''; display:block; position:absolute; top:0; width:100%; height:360px; z-index:-1; background:linear-gradient(130deg,#0d2746 0%,transparent 70%); }
[hidden] { display:none!important; }
a { color:var(--blue); text-underline-offset:4px; }
button,input,select { font:inherit; }
button,input,select { min-height:44px; border:1px solid #52718e; border-radius:8px; }
button { cursor:pointer; color:var(--paper); background:var(--panel); padding:10px 15px; transition:background-color .16s,border-color .16s; }
button:hover { background:var(--panel-soft); border-color:var(--mint); }
button:disabled { opacity:.65; cursor:default; }
input,select { width:100%; min-width:0; padding:10px 12px; color:var(--paper); background:var(--ink-deep); }
:focus-visible { outline:3px solid var(--mint); outline-offset:4px; }
:focus { scroll-margin:24px; }
.admin-skip { position:fixed; top:8px; left:16px; padding:12px 16px; z-index:5; color:var(--ink-deep); background:var(--mint); clip-path:inset(50%); width:1px; height:1px; overflow:hidden; white-space:nowrap; }
.admin-skip:focus { clip-path:none; width:auto; height:auto; }
.admin-header { width:100%; max-width:1600px; margin-inline:auto; padding:14px 24px; display:flex; justify-content:space-between; align-items:center; gap:20px; border-bottom:1px solid var(--line); }
.admin-brand { min-height:44px; display:inline-flex; align-items:center; gap:5px; color:var(--paper); font:600 20px/1.2 'Chakra Petch',sans-serif; text-decoration:none; white-space:nowrap; }
.admin-brand span { color:var(--mint); }
#admin-identity { margin:0; color:var(--muted); font:400 11px/1.5 'IBM Plex Mono',monospace; overflow-wrap:anywhere; text-align:right; }
.admin-account { display:flex; justify-content:flex-end; align-items:center; gap:14px; min-width:0; }
.admin-account button { flex-shrink:0; font-size:12px; }
.admin-access { width:min(100%,520px); margin:auto; padding:32px; border:1px solid var(--line); border-radius:16px; background:var(--ink); box-shadow:0 24px 80px #0003; }
.admin-login { margin:0; }
.admin-login > p { color:var(--muted); }
.admin-login .admin-primary { width:100%; }
.admin-login[aria-busy="true"] { opacity:.8; }
.admin-main { width:100%; flex:1; max-width:1600px; margin-inline:auto; padding:32px 24px; }
body:not([data-admin-state="ready"]) .admin-main { display:flex; flex-direction:column; justify-content:center; }
.admin-intro { display:flex; flex-direction:column; align-items:flex-start; gap:20px; margin-bottom:20px; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:10px; font:600 32px/1.15 'Chakra Petch',sans-serif; letter-spacing:-.02em; }
.admin-intro p { color:var(--muted); margin:0; max-width:650px; }
.admin-intro img { object-fit:contain; flex-shrink:0; }
.admin-notification { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
#admin-status { color:var(--mint); font-size:12px; margin:0 0 16px; overflow-wrap:anywhere; }
#admin-status[data-error] { color:var(--danger); }
#admin-retry { margin-bottom:16px; }
body[data-admin-state="ready"] .admin-header { padding-block:8px; }
body[data-admin-state="ready"] .admin-main { padding-block:16px; }
body[data-admin-state="ready"] .admin-access { width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 12px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
body[data-admin-state="ready"] .admin-intro { flex-direction:row; align-items:center; gap:10px; margin:0; }
body[data-admin-state="ready"] .admin-intro img { width:32px; height:32px; }
body[data-admin-state="ready"] h1 { font-size:22px; margin:0; }
body[data-admin-state="ready"] .admin-intro p { display:none; }
body[data-admin-state="ready"] #admin-status { margin:0; font-size:11px; }
.admin-workspace-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px 24px; flex-wrap:wrap; flex-shrink:0; border-bottom:1px solid var(--line); margin-bottom:12px; }
.admin-workspace-tools { display:flex; align-items:center; gap:16px; flex-wrap:wrap; min-width:0; }
.admin-consumption { position:relative; min-width:0; color:var(--muted); font-size:12px; overflow-wrap:anywhere; }
.admin-consumption > summary { display:flex; align-items:center; gap:8px; min-height:44px; cursor:pointer; list-style:none; color:var(--paper); }
.admin-consumption > summary span { color:var(--muted); font-size:11px; }
.admin-consumption > summary::before { content:'+'; color:var(--blue); font:400 18px 'IBM Plex Mono',monospace; }
.admin-consumption[open] > summary::before { content:'−'; }
.admin-consumption > summary::-webkit-details-marker { display:none; }
.admin-consumption-content { position:absolute; right:0; top:100%; z-index:5; width:min(420px,calc(100vw - 32px)); max-height:min(600px,70dvh); overflow-y:auto; overscroll-behavior:contain; scrollbar-color:var(--line) transparent; padding:16px; border:1px solid var(--line); border-radius:10px; background:var(--panel); box-shadow:0 12px 40px #0008; }
.admin-consumption-content p { margin:0 0 10px; }
.admin-consumption-period { color:var(--paper); font-weight:600; }
.admin-consumption-content dl { display:grid; gap:10px; padding-block:12px; margin:0 0 12px; border-block:1px solid var(--line); }
.admin-consumption-content dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:4px 14px; }
.admin-consumption-content dd { margin:0; grid-column:2; color:var(--mint); font:400 11px/1.6 'IBM Plex Mono',monospace; text-align:right; overflow-wrap:anywhere; }
.admin-consumption-note { color:var(--muted); font-size:11px; line-height:1.6; }
.admin-consumption-warning { color:#ffd498; font-size:11px; }
.admin-consumption-content button { min-height:44px; margin-top:4px; padding:7px 12px; font-size:12px; }
.admin-retention { position:relative; margin:0; color:var(--muted); font-size:12px; }
.admin-retention summary { display:flex; align-items:center; gap:8px; min-height:44px; cursor:pointer; list-style:none; }
.admin-retention summary::-webkit-details-marker { display:none; }
.admin-retention summary::before { content:'+'; color:var(--blue); font:400 18px 'IBM Plex Mono',monospace; }
.admin-retention[open] summary::before { content:'−'; }
#admin-maintenance-warning { color:#ffd498; font-size:11px; }
.admin-retention p { color:var(--muted); font-size:12px; margin:0; }
.admin-maintenance { position:absolute; z-index:4; right:0; top:100%; width:min(420px,calc(100vw - 32px)); padding:16px; border:1px solid var(--line); border-radius:10px; background:var(--panel); box-shadow:0 12px 40px #0008; }
#admin-test-sarin { display:inline-flex; align-items:center; min-height:44px; font-size:12px; }
.admin-retention .admin-purge { margin-top:12px; font:400 11px/1.6 'IBM Plex Mono',monospace; color:var(--mint); border-left:2px solid var(--mint); padding-left:12px; }
.admin-retention .admin-purge[data-warning] { color:#ffd498; border-color:#ffd498; }
.admin-filters { display:grid; grid-template-columns:1fr 1fr 1.3fr 1.1fr auto; align-items:end; gap:10px; margin-bottom:20px; }
.admin-filters > div { min-width:0; }
label { display:block; color:var(--muted); font-size:11px; margin-bottom:5px; }
.admin-primary { color:var(--ink-deep); background:var(--mint); border-color:var(--mint); font-weight:600; }
.admin-primary:hover { background:#90e5b9; }
.admin-columns { display:grid; grid-template-columns:280px minmax(0,1fr); gap:16px; align-items:start; }
.admin-conversations { min-width:0; }
.admin-section-heading { min-height:32px; display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; gap:8px; }
.admin-section-heading h2 { font:600 18px/1.3 'Chakra Petch',sans-serif; margin:0; }
#admin-count { color:var(--muted); font:400 11px/1.4 'IBM Plex Mono',monospace; }
#admin-list { display:grid; grid-auto-rows:max-content; align-content:start; gap:8px; }
.admin-conversation { width:100%; min-width:0; display:block; padding:12px; text-align:left; background:var(--ink); border-color:var(--line); border-left:3px solid var(--line); }
.admin-conversation[aria-pressed="true"] { background:var(--panel); border-left-color:var(--mint); }
.admin-conversation strong { display:block; font-size:14px; line-height:1.4; font-weight:600; color:var(--paper); margin-bottom:4px; }
.admin-conversation strong,.admin-contact-email { overflow-wrap:anywhere; }
.admin-contact { padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid var(--line); }
.admin-context h3 { font:600 16px/1.3 'Chakra Petch',sans-serif; margin-bottom:12px; }
.admin-contact .admin-detail-meta { margin:0; }
.admin-conversation span { display:block; color:var(--muted); font-size:11px; line-height:1.5; margin-top:3px; }
.admin-conversation .admin-reference { font-size:9px; }
.admin-conversation .admin-signal { color:#ffd498; }
.admin-more { width:100%; margin-top:16px; }
.admin-detail { min-width:0; display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.admin-detail > .admin-note { grid-column:1/-1; margin:0; padding:24px; border:1px solid var(--line); border-radius:12px; background:var(--ink); }
.admin-transcript,.admin-context,.admin-detail-empty { min-width:0; padding:20px; border:1px solid var(--line); border-radius:12px; background:var(--ink); }
.admin-transcript { min-height:480px; }
.admin-detail-empty { grid-column:1/-1; min-height:480px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; color:var(--muted); }
.admin-detail-empty > p { color:var(--paper); font:600 25px/1.2 'Chakra Petch',sans-serif; margin-bottom:10px; }
.admin-detail-empty span { max-width:330px; font-size:13px; }
#admin-detail-title { font:600 24px/1.2 'Chakra Petch',sans-serif; margin-bottom:8px; }
.admin-reference { font:400 11px/1.6 'IBM Plex Mono',monospace; color:var(--blue); overflow-wrap:anywhere; }
.admin-detail-meta { display:grid; grid-template-columns:1fr; gap:10px; font-size:12px; margin:12px 0 20px; }
.admin-detail-meta div { min-width:0; }
.admin-detail-meta dt { color:var(--muted); }
.admin-detail-meta dd { margin:3px 0 0; overflow-wrap:anywhere; }
.admin-actions { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 20px; }
.admin-action-section .admin-actions { flex-direction:column; }
.admin-action-section button { text-align:left; font-size:12px; }
.admin-danger { border-color:#c48181; color:var(--danger); }
.admin-danger:hover { background:#3d2639; border-color:var(--danger); }
.admin-usage { border-block:1px solid var(--line); padding:18px 0; margin:18px 0; }
.admin-usage h3,.admin-timeline-title { font:600 18px/1.3 'Chakra Petch',sans-serif; margin-bottom:14px; }
.admin-usage dl { display:grid; grid-template-columns:1fr; gap:12px; margin:0; }
.admin-usage dt { color:var(--muted); font-size:11px; }
.admin-usage dd { color:var(--mint); font:500 14px/1.6 'IBM Plex Mono',monospace; margin:3px 0 0; overflow-wrap:anywhere; }
.admin-note { color:var(--muted); font-size:12px; margin:12px 0 0; }
.admin-signals { padding:14px 16px; border-left:2px solid #dcb779; background:#263344; font-size:12px; color:#f2d8ab; margin-bottom:24px; }
.admin-signals p { margin:0; }
.admin-signals p + p { margin-top:7px; }
.admin-timeline { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.admin-message { border:1px solid var(--line); border-radius:10px; padding:16px; background:var(--ink-deep); }
.admin-message--assistant { background:var(--panel); }
.admin-message-header { color:var(--mint); font:400 11px/1.6 'IBM Plex Mono',monospace; margin:0 0 10px; }
.admin-message-content { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; }
.admin-event { font-size:12px; color:var(--muted); border-left:2px solid #52718e; padding:6px 16px; }
.admin-consent { border-top:1px solid var(--line); margin-top:24px; padding-top:18px; }
.admin-consent summary { cursor:pointer; min-height:44px; font-weight:600; color:var(--blue); }
.admin-consent dl { font:400 11px/1.6 'IBM Plex Mono',monospace; }
.admin-consent dt { color:var(--muted); margin-top:12px; }
.admin-consent dd { margin:3px 0 0; overflow-wrap:anywhere; }
.admin-footer { width:100%; max-width:1600px; padding:10px 24px; margin-inline:auto; display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.admin-footer a { display:inline-flex; align-items:center; min-height:44px; }
.admin-confirm { width:min(460px,calc(100% - 32px)); max-height:calc(100dvh - 32px); padding:28px; border:1px solid #7892ac; border-radius:14px; background:var(--panel); color:var(--paper); }
.admin-confirm::backdrop { background:#000b; }
.admin-confirm h2 { font:600 26px/1.2 'Chakra Petch',sans-serif; }
.admin-confirm p { color:var(--muted); font-size:14px; }
.admin-confirm .admin-actions { margin:24px 0 0; }
@media(min-width:1280px) {
  body[data-admin-state="ready"] { height:100dvh; min-height:720px; }
  .admin-header,.admin-footer { flex-shrink:0; }
  body[data-admin-state="ready"] .admin-main { display:flex; flex-direction:column; min-height:0; padding-block:16px; }
  body[data-admin-state="ready"] .admin-access { flex-shrink:0; }
  #admin-workspace { flex:1; min-height:0; display:flex; flex-direction:column; }
  .admin-retention,.admin-filters { flex-shrink:0; }
  .admin-columns { flex:1; min-height:0; grid-template-rows:minmax(0,1fr); align-items:stretch; }
  .admin-conversations { min-height:0; display:flex; flex-direction:column; }
  .admin-section-heading,.admin-more { flex-shrink:0; }
  .admin-conversations #admin-list { flex:1; min-height:0; max-height:none; }
  .admin-detail { min-height:0; grid-template-columns:minmax(0,1fr) 280px; grid-template-rows:minmax(0,1fr); align-items:stretch; }
  .admin-transcript,.admin-context { min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-color:#7892ac var(--ink-deep); scrollbar-gutter:stable; scroll-padding:12px; }
  .admin-detail-empty { min-height:0; }
  .admin-context .admin-detail-meta { gap:8px; }
  .admin-information .admin-detail-meta > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:8px; }
  .admin-information .admin-detail-meta dd { margin-top:0; }
}
@media(max-width:1100px) { .admin-filters { grid-template-columns:repeat(4,minmax(0,1fr)); } .admin-filters > button { grid-column:1/-1; } }
@media(min-width:681px) { #admin-list { max-height:max(320px,calc(100dvh - 380px)); overflow-y:auto; padding:8px; margin:-8px; scrollbar-color:var(--line) transparent; } }
@media(max-width:900px) { .admin-columns { grid-template-columns:240px minmax(0,1fr); } .admin-transcript,.admin-context { padding:18px; } .admin-retention { gap:20px; } }
@media(max-width:680px) { .admin-main { padding:24px 16px; } .admin-header,.admin-footer { padding:12px 16px; } .admin-header { align-items:flex-start; gap:10px; } .admin-brand { font-size:18px; } .admin-account { max-width:50%; flex-direction:column; align-items:flex-end; gap:6px; } .admin-account #admin-identity { max-width:100%; } .admin-account button { font-size:11px; padding-inline:10px; } .admin-access { padding:24px 20px; } h1 { font-size:28px; } .admin-intro p { font-size:13px; } body[data-admin-state="ready"] h1 { font-size:23px; } body[data-admin-state="ready"] .admin-intro { align-items:flex-start; gap:10px; } body[data-admin-state="ready"] .admin-intro img { width:40px; height:40px; } .admin-retention { display:block; } .admin-maintenance { margin-top:12px; } .admin-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } .admin-columns { grid-template-columns:1fr; gap:24px; } .admin-transcript,.admin-context { padding:18px; } .admin-transcript { min-height:0; } .admin-detail-empty { min-height:180px; } .admin-message { padding:14px; } .admin-footer { font-size:11px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
.admin-sections { display:flex; gap:20px; flex-wrap:wrap; margin:0; flex-shrink:0; }
.admin-sections button { background:none; border:0; border-bottom:2px solid transparent; border-radius:0; padding-inline:0; }
.admin-sections [aria-pressed="true"] { border-color:var(--mint); color:var(--mint); }
.admin-channel-panel { min-width:0; }
.wa-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:14px 0; }
.wa-channel-title { display:flex; align-items:center; gap:12px; }
.wa-channel-title h2 { font:600 20px/1.3 'Chakra Petch',sans-serif; margin:0; }
.wa-channel-title .admin-note { margin:2px 0 0; }
.wa-channel-icon { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border:1px solid #65d49d55; border-radius:12px; background:#65d49d12; color:var(--mint); font:600 13px 'IBM Plex Mono',monospace; }
#wa-pilot { display:flex; align-items:center; justify-content:flex-end; gap:16px; min-width:0; flex-wrap:wrap; }
.wa-pilot-state { margin:0; color:var(--mint); font-size:12px; font-weight:600; }
.wa-pilot-state::before { content:''; display:inline-block; width:6px; height:6px; margin-right:8px; border-radius:50%; background:currentColor; }
#wa-pilot[data-enabled="false"] .wa-pilot-state { color:var(--muted); }
#wa-pilot > .admin-note { flex-basis:100%; color:#ffd498; margin:0; }
#wa-pilot button { font-size:12px; padding:8px 14px; }
.wa-pilot-summary .admin-note { margin:0; }
.wa-pilot-info { position:relative; margin:0 0 0 auto; font-size:12px; color:var(--muted); }
.wa-pilot-info summary,.wa-contact-info summary,.wa-delivery summary { cursor:pointer; min-height:44px; display:flex; align-items:center; gap:10px; list-style:none; }
.wa-pilot-info summary::before,.wa-contact-info summary::before,.wa-delivery summary::before { content:'+'; font:400 18px 'IBM Plex Mono',monospace; color:var(--blue); }
.wa-pilot-info[open] > summary::before,.wa-contact-info[open] > summary::before,.wa-delivery[open] > summary::before { content:'−'; }
.wa-pilot-info summary::-webkit-details-marker,.wa-contact-info summary::-webkit-details-marker,.wa-delivery summary::-webkit-details-marker { display:none; }
.wa-pilot-info > div { padding:14px 18px; background:var(--panel); border:1px solid var(--line); border-radius:10px; }
.wa-pilot-info p { margin:0 0 8px; }
.wa-pilot-info p:last-child { margin:0; }
.wa-warning { border-left:2px solid #dcb779; padding-left:12px; color:#f2d8ab; }
#wa-status { color:var(--mint); margin:0 0 10px; font-size:12px; }
#wa-status:empty { display:none; }
.wa-columns { display:grid; grid-template-columns:260px minmax(0,1fr); gap:0; min-width:0; border:1px solid var(--line); border-radius:14px; background:var(--ink); overflow:hidden; }
.wa-contacts { display:flex; flex-direction:column; min-width:0; padding:18px 12px; background:#091e35; border-right:1px solid var(--line); }
.wa-contacts .admin-section-heading { padding-inline:8px; margin-bottom:16px; }
.wa-contacts h2 { font-size:16px; }
.wa-private-label { color:var(--muted); font-size:11px; }
#wa-list { display:grid; grid-auto-rows:max-content; align-content:start; gap:8px; min-height:0; max-height:480px; overflow-y:auto; scrollbar-color:#7892ac var(--ink-deep); }
#wa-load-more { flex-shrink:0; margin-top:12px; }
#wa-list button { line-height:1.6; overflow-wrap:anywhere; border-color:transparent; border-left-width:2px; border-radius:8px; background:transparent; padding:14px 12px; }
#wa-list button[aria-pressed="true"] { border-color:#65d49d30; border-left-color:var(--mint); background:#14334a; }
#wa-list button:hover { background:var(--panel-soft); }
#wa-list button strong { font:600 16px/1.5 'Chakra Petch',sans-serif; }
#wa-list .wa-contact-time { margin-top:12px; color:#91a9bf; font:400 10px/1.5 'IBM Plex Mono',monospace; }
#wa-detail { display:flex; flex-direction:column; min-width:0; min-height:0; }
.wa-contact-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 24px; border-bottom:1px solid var(--line); background:#0d2746; flex-shrink:0; }
.wa-contact-identity { min-width:0; }
#wa-detail-title { margin:0 0 4px; font:600 22px/1.3 'Chakra Petch',sans-serif; overflow-wrap:anywhere; }
.wa-contact-phone { margin:0 0 6px; color:var(--muted); font:400 12px/1.5 'IBM Plex Mono',monospace; overflow-wrap:anywhere; }
.wa-contact-phone[hidden] { display:none; }
.wa-contact-state { margin:0; color:var(--mint); font-size:12px; }
.wa-contact-state[data-paused="true"],#wa-list .wa-contact-state[data-paused="true"] { color:#ffd498; }
.wa-contact-toolbar button { flex-shrink:0; min-height:44px; }
.wa-thread { overflow-y:auto; overscroll-behavior:contain; min-height:0; height:clamp(280px,55dvh,680px); padding:8px 24px 24px; scrollbar-color:#6887a3 var(--ink); scrollbar-gutter:stable; scroll-padding:16px; }
.wa-thread:focus-visible { outline-offset:-4px; }
.wa-contact-info { color:var(--muted); font-size:12px; padding-bottom:4px; border-bottom:1px solid #34506b88; }
.wa-contact-info .admin-detail-meta { grid-template-columns:1fr 1fr; margin:8px 0 12px; }
.wa-contact-info .admin-note { margin-bottom:14px; }
#wa-detail .admin-timeline-title { margin:20px 0; color:var(--muted); font:400 11px/1.5 'IBM Plex Mono',monospace; text-align:center; }
.wa-thread > .admin-timeline { gap:18px; }
.wa-thread .admin-message { max-width:84%; width:fit-content; padding:14px 18px; background:#132e48; border-color:#2b465f; border-radius:3px 14px 14px; }
.wa-thread .admin-message--assistant { justify-self:end; background:#0d353b; border-color:#225053; border-radius:14px 3px 14px 14px; }
.wa-thread .admin-message-header { color:#a0c6e8; font-size:10px; margin-bottom:7px; }
.wa-thread .admin-message--assistant .admin-message-header { color:var(--mint); }
.wa-thread .admin-message-content { font-size:14px; line-height:1.7; }
.wa-thread .wa-human-event { justify-self:center; border:0; padding:8px 12px; border-radius:20px; background:#ffd4980c; text-align:center; }
.wa-thread .wa-human-event .admin-message-header { color:#ffd498; margin:0; }
.wa-delivery { margin-top:28px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.wa-delivery[data-attention="true"] > summary { color:#ffd498; }
.wa-delivery > ol { padding-block:12px; }
#wa-detail .admin-event p:last-child { margin-bottom:0; }
.wa-empty { flex:1; min-height:340px; display:flex; flex-direction:column; justify-content:center; align-items:center; padding:32px; text-align:center; }
.wa-empty-icon { display:grid; place-items:center; height:52px; width:52px; color:var(--mint); font:600 26px 'Chakra Petch',sans-serif; border:1px solid var(--line); border-radius:16px; margin-bottom:20px; }
.wa-empty h3 { font:600 23px/1.3 'Chakra Petch',sans-serif; margin-bottom:8px; }
.wa-empty p { color:var(--muted); font-size:13px; max-width:320px; margin:0; }
/* Bandeja operacional: acciones fuera del historial, también en ventanas bajas. */
body:has(#wa-panel:not([hidden])) .admin-retention,body:has(#wa-panel:not([hidden])) #admin-test-sarin { display:none; }
body:has(#wa-panel:not([hidden])) .admin-workspace-toolbar { margin-bottom:0; }
body:has(#wa-panel:not([hidden])) .admin-footer { padding-block:0; }
@media(min-width:1280px) {
  .admin-channel-panel { display:flex; flex-direction:column; flex:1; min-height:0; }
  body[data-admin-state="ready"]:has(#wa-panel:not([hidden])) { min-height:640px; }
  .wa-heading,.wa-pilot-info,#wa-status { flex-shrink:0; }
  .wa-columns { flex:1; min-height:260px; grid-template-rows:minmax(0,1fr); }
  .wa-contacts { min-height:0; overflow:hidden; }
  #wa-list { flex:1; max-height:none; }
  .wa-thread { height:auto; flex:1; }
}
@media(min-width:681px) {
  .wa-pilot-info[open] > div { position:absolute; z-index:3; right:0; top:100%; width:min(480px,65vw); box-shadow:0 12px 40px #0008; }
}
@media(max-width:900px) {
  .wa-columns { grid-template-columns:220px minmax(0,1fr); }
  body[data-admin-state="ready"] .admin-access { align-items:flex-start; flex-wrap:wrap; gap:6px 12px; }
  .wa-contact-toolbar { gap:12px; padding:16px; }
  .wa-thread { padding-inline:16px; }
}
@media(max-width:680px) {
  body[data-admin-state="ready"] .admin-header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 10px; }
  body[data-admin-state="ready"] .admin-account { display:contents; }
  body[data-admin-state="ready"] #admin-identity { grid-column:1/-1; grid-row:2; text-align:right; font-size:10px; }
  body[data-admin-state="ready"] #admin-logout { grid-column:2; grid-row:1; }
  body[data-admin-state="ready"] .admin-main { padding-block:12px; }
  body[data-admin-state="ready"] .admin-intro { align-items:center; }
  body[data-admin-state="ready"] .admin-intro img { width:28px; height:28px; }
  body[data-admin-state="ready"] h1 { font-size:20px; }
  .admin-workspace-toolbar { gap:0 12px; }
  .admin-workspace-tools { gap:0 16px; width:100%; }
  .admin-consumption[open] { flex-basis:100%; }
  .admin-consumption-content { position:static; width:100%; max-height:none; margin-bottom:12px; box-shadow:none; }
  .admin-maintenance { left:0; right:auto; margin:0; }
  .wa-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .wa-pilot-info { margin:0; width:100%; order:2; }
  #wa-pilot { width:100%; justify-content:space-between; gap:10px; }
  .wa-columns { grid-template-columns:1fr; }
  .wa-contacts { padding:12px; border-right:0; border-bottom:1px solid var(--line); }
  .wa-contacts .admin-section-heading { margin-bottom:8px; }
  #wa-list { max-height:180px; overflow-y:auto; }
  #wa-list button { padding:10px 12px; }
  #wa-list button span:not(.wa-contact-state):not(.wa-contact-phone) { display:none; }
  .wa-contact-toolbar { flex-wrap:wrap; position:sticky; top:0; z-index:1; }
  #wa-detail-title { font-size:20px; }
  .wa-contact-toolbar button { flex:1 0 auto; }
  .wa-thread { height:60dvh; min-height:280px; padding-inline:12px; }
  .wa-thread .admin-message { max-width:94%; padding:12px 14px; }
  .wa-contact-info .admin-detail-meta { grid-template-columns:1fr; }
}
