/* ============================================================
   APEX — Centro de soporte
   Superficies deliberadamente sobrias: una lista, una conversación y un
   formulario. Hereda color, tipografía, spacing y dark mode de base.css.
   ============================================================ */
.support-head{display:flex;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-6);}
.support-eyebrow,.support-form-kicker{display:block;color:var(--blue);font-family:var(--font-mono);font-size:var(--text-label-size);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-3);}
.support-actions{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-6);}
.support-actions .btn{width:auto;margin:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;}
.support-actions .btn svg,.support-form-footer .btn svg,.support-reply-footer .btn svg{flex:0 0 auto;}
.support-panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--space-6);}
.support-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-5);border-bottom:1px solid var(--border-soft);}
.support-panel-head h3,.support-form-intro h3{font-family:var(--font-display);font-size:20px;letter-spacing:-.02em;margin:0 0 5px;}
.support-panel-head p,.support-form-intro p{color:var(--muted);font-size:var(--text-body-sm-size);line-height:1.5;margin:0;}
.support-count{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:var(--text-caption-size);color:var(--muted);}
.support-ticket-list{display:flex;flex-direction:column;}
.support-ticket-row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:17px 0;background:transparent;border:0;border-bottom:1px solid var(--border-soft);color:var(--text);text-align:left;cursor:pointer;}
.support-ticket-row:last-child{border-bottom:0;padding-bottom:2px;}
.support-ticket-row:hover .support-ticket-main strong{color:var(--blue);}
.support-ticket-row:focus-visible,.support-back:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--r-xs);}
.support-ticket-main{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1;}
.support-ticket-main strong{font-size:var(--text-body-size);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--dur-fast) var(--ease);}
.support-ticket-main span{font-size:var(--text-caption-size);color:var(--muted2);}
.support-ticket-main .support-requester{color:var(--text);font-weight:600;}
.support-row-chevron{color:var(--muted2);flex-shrink:0;}
.support-status{display:inline-flex;align-items:center;justify-content:center;min-width:82px;padding:5px 9px;border-radius:var(--r-pill);font-size:10px;font-weight:700;letter-spacing:.03em;white-space:nowrap;}
.support-status-open{color:var(--blue);background:var(--blue-soft);}
.support-status-in_review{color:var(--amber);background:var(--amber-soft);}
.support-status-answered{color:var(--green);background:var(--green-soft);}
.support-status-resolved{color:var(--green);background:color-mix(in srgb,var(--green-soft) 72%,var(--surface3));}
.support-status-closed{color:var(--muted);background:var(--surface3);}
.support-priority{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:5px 8px;border-radius:var(--r-pill);font-size:10px;font-weight:700;white-space:nowrap;}
.support-priority-urgent{color:var(--red);background:var(--red-soft);}
.support-priority-high{color:var(--amber);background:var(--amber-soft);}
.support-priority-normal{color:var(--muted);background:var(--surface3);}
.support-priority-low{color:var(--muted2);background:var(--surface2);}
.support-detail-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.support-unread{display:inline-block;width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px var(--blue-soft);margin-right:2px;}
.support-ticket-row.is-needs-attention{background:linear-gradient(90deg,var(--blue-soft),transparent 72%);}
.support-ticket-row.is-needs-attention .support-ticket-main strong{font-weight:700;}
.support-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:auto;border-radius:var(--r-pill);background:var(--red);color:#fff;font:700 10px/1 var(--font-mono);}
.support-admin-filters{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(130px,1fr)) auto auto;gap:8px;align-items:center;margin:0 0 var(--space-5);}
.support-admin-filters label,.support-admin-filters select,.support-admin-filters input{min-width:0;width:100%;}
.support-admin-filters input,.support-admin-filters select{height:40px;padding:9px 11px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font:inherit;font-size:var(--text-caption-size);outline:none;}
.support-admin-filters input:focus,.support-admin-filters select:focus{border-color:var(--blue);box-shadow:var(--shadow-focus);}
.support-admin-filters .btn{width:auto;margin:0;height:40px;padding:0 14px;font-size:var(--text-caption-size);}
.support-filter-clear{height:40px;padding:0 8px;border:0;background:transparent;color:var(--muted);font:600 var(--text-caption-size) var(--font-body);cursor:pointer;white-space:nowrap;}
.support-filter-clear:hover{color:var(--text);}
.support-queue-meta{display:flex;align-items:center;gap:18px;padding:13px 0;color:var(--muted);font-size:var(--text-caption-size);}
.support-queue-meta strong{color:var(--red);font-family:var(--font-mono);font-size:15px;}
.support-queue-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:var(--space-5) 0 4px;}
.support-queue-stats>div{display:flex;flex-direction:column;gap:3px;padding:14px 15px;background:var(--surface2);border:1px solid var(--border-soft);border-radius:var(--r-sm);}
.support-queue-stats strong{font:700 22px/1.15 var(--font-display);letter-spacing:-.03em;color:var(--text);}
.support-queue-stats>div:first-child strong{color:var(--red);}
.support-queue-stats span:not(.support-stat-label){color:var(--muted2);font-size:var(--text-label-size);}
.support-stat-label{color:var(--muted);font-size:var(--text-label-size);font-weight:700;letter-spacing:.05em;text-transform:uppercase;}
.support-user-hint{display:flex;align-items:center;gap:12px;margin:var(--space-5) 0 4px;padding:13px 15px;background:var(--blue-soft);border:1px solid var(--blue-soft-border);border-radius:var(--r-sm);}
.support-user-hint>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--surface);color:var(--blue);}
.support-user-hint p{margin:0;color:var(--muted);font-size:var(--text-caption-size);line-height:1.45;}
.support-user-hint strong{color:var(--text);}
.support-live-note{display:inline-flex;align-items:center;gap:7px;color:var(--muted2);font-size:var(--text-label-size);}
.support-live-note i{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px var(--green-soft);}
.support-owner{margin-left:5px;color:var(--text);font-weight:600;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.support-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:var(--space-9) var(--space-5);color:var(--muted);font-size:var(--text-body-sm-size);text-align:center;}
.support-empty strong{color:var(--text);font-size:var(--text-body-size);}
.support-error{border:1px solid var(--red-soft-border);border-radius:var(--r-md);}
.support-empty-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:50%;font-family:var(--font-mono);font-size:20px;color:var(--muted2);margin-bottom:var(--space-2);}
.support-empty .btn{width:auto;margin-top:var(--space-3);}
.support-back{display:inline-flex;align-items:center;margin:0 0 var(--space-4);padding:7px 0;background:transparent;border:0;color:var(--muted);font-size:var(--text-body-sm-size);cursor:pointer;}
.support-back:hover{color:var(--text);}
.support-form{padding:var(--space-7);}
.support-form-intro{padding-bottom:var(--space-5);margin-bottom:var(--space-5);border-bottom:1px solid var(--border-soft);}
.support-form-steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:var(--space-5);}
.support-form-steps span{padding:6px 9px;border:1px solid var(--border-soft);border-radius:var(--r-pill);color:var(--muted2);font-size:var(--text-label-size);}
.support-form-steps span.is-active{color:var(--blue);border-color:var(--blue-soft-border);background:var(--blue-soft);}
.support-form-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--space-4);}
.support-field{display:flex;flex-direction:column;gap:8px;margin-top:var(--space-5);}
.support-field:first-of-type{margin-top:0;}
.support-field>span{font-size:var(--text-caption-size);font-weight:600;color:var(--text);}
.support-field input,.support-field select,.support-field textarea{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font:inherit;font-size:var(--text-body-sm-size);padding:12px 13px;outline:none;resize:vertical;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);}
.support-field input:focus,.support-field select:focus,.support-field textarea:focus{border-color:var(--blue);box-shadow:var(--shadow-focus);}
.support-field textarea{line-height:1.55;min-height:120px;}
.support-field small{align-self:flex-end;color:var(--muted2);font-size:var(--text-label-size);margin-top:-3px;}
.support-field em{font-style:normal;color:var(--muted2);font-weight:400;}
.support-form-note,.support-closed-note{margin-top:var(--space-5);padding:12px 14px;border:1px solid var(--border-soft);border-radius:var(--r-sm);color:var(--muted);font-size:var(--text-caption-size);line-height:1.5;}
.support-form-footer,.support-reply-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-6);}
.support-form-footer .btn,.support-reply-footer .btn{width:auto;margin:0;}
.support-form-error{min-height:18px;color:var(--red);font-size:var(--text-caption-size);line-height:1.4;}
.support-detail{padding-top:var(--space-6);}
.support-admin-controls{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin:var(--space-5) 0 0;padding:12px 14px;background:var(--surface2);border:1px solid var(--border-soft);border-radius:var(--r-sm);}
.support-admin-controls label{color:var(--muted);font-size:var(--text-caption-size);font-weight:600;}
.support-admin-controls select{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xs);color:var(--text);font:inherit;font-size:var(--text-caption-size);padding:8px 10px;}
.support-admin-controls .btn{width:auto;margin:0;padding:8px 12px;font-size:var(--text-caption-size);}
.support-admin-controls .support-form-error{flex-basis:100%;min-height:0;}
.support-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-6);border-bottom:1px solid var(--border-soft);}
.support-detail-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;}
.support-detail-live{display:inline-flex;align-items:center;gap:7px;color:var(--muted2);font-size:var(--text-label-size);}
.support-detail-live i{width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 3px var(--amber-soft);}
.support-detail-live.is-connected{color:var(--green);}
.support-detail-live.is-connected i{background:var(--green);box-shadow:0 0 0 3px var(--green-soft);}
.support-detail-live.is-fallback i{background:var(--amber);}
.support-detail-head h3{font-family:var(--font-display);font-size:22px;letter-spacing:-.02em;margin:0 0 6px;}
.support-detail-head p{color:var(--muted2);font-size:var(--text-caption-size);margin:0;}
.support-conversation{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6) 0;}
.support-message{max-width:88%;padding:14px 16px;border:1px solid var(--border-soft);border-radius:var(--r-md);background:var(--surface2);}
.support-message.is-user{align-self:flex-end;background:var(--blue-soft);border-color:var(--blue-soft-border);}
.support-message-meta{display:flex;align-items:center;gap:10px;margin-bottom:7px;font-size:var(--text-caption-size);}
.support-message-meta time{color:var(--muted2);font-size:var(--text-label-size);}
.support-message p{margin:0;font-size:var(--text-body-sm-size);line-height:1.6;overflow-wrap:anywhere;}
.support-message-images{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px;}
.support-message-image{display:flex;flex-direction:column;gap:5px;width:116px;padding:5px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-xs);text-decoration:none;overflow:hidden;}
.support-message-image:hover{border-color:var(--blue-soft-border);}
.support-message-image img{width:104px;height:78px;object-fit:cover;border-radius:5px;background:var(--surface3);}
.support-message-image span{display:flex;align-items:center;gap:4px;min-width:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.support-message-image span svg{flex:0 0 auto;width:13px;height:13px;}
.support-reply{border-top:1px solid var(--border-soft);padding-top:var(--space-5);}
.support-reply .support-field small{align-self:flex-start;}
.support-attachments{margin-top:var(--space-4);}
.support-attachment-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.support-attach-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-xs);color:var(--text);font:600 var(--text-caption-size) var(--font-body);cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);}
.support-attach-btn:hover{background:var(--surface3);border-color:var(--blue-soft-border);color:var(--blue);}
.support-attachment-hint{color:var(--muted2);font-size:var(--text-label-size);}
.support-attachment-previews{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.support-attachment-preview{position:relative;display:flex;align-items:center;gap:7px;max-width:220px;padding:5px 8px 5px 5px;background:var(--surface2);border:1px solid var(--border-soft);border-radius:var(--r-xs);}
.support-attachment-preview img{width:38px;height:38px;object-fit:cover;border-radius:5px;background:var(--surface3);}
.support-attachment-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:var(--text-label-size);}
.support-attachment-preview button{display:grid;place-items:center;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:var(--surface3);color:var(--muted);font-size:16px;line-height:1;cursor:pointer;}
.support-attachment-preview button:hover{background:var(--red-soft);color:var(--red);}
.support-attachments>.support-form-error{min-height:0;margin-top:7px;}
.support-reply-footer small{color:var(--muted2);font-size:var(--text-label-size);}
.support-closed-note{margin-top:0;color:var(--muted);}
.support-dashboard-entry{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin:0 0 var(--space-5);padding:13px 16px;border:1px solid var(--border-soft);border-radius:var(--r-md);background:var(--surface);}
.support-dashboard-entry span{color:var(--muted);font-size:var(--text-body-sm-size);}
.support-dashboard-entry button{border:0;background:transparent;color:var(--blue);font-size:var(--text-body-sm-size);font-weight:600;cursor:pointer;white-space:nowrap;}
.support-dashboard-entry button:hover{text-decoration:underline;}
.support-topbar-btn{display:none;align-items:center;justify-content:center;width:34px;height:34px;margin-left:auto;margin-right:8px;background:transparent;border:1px solid var(--border);border-radius:50%;color:var(--muted);cursor:pointer;}
.support-topbar-btn:hover{color:var(--text);background:var(--surface2);}
@media(max-width:900px){
  .support-topbar-btn{display:inline-flex;}
}
@media(max-width:640px){
  .support-actions{align-items:stretch;}
  .support-actions .btn{flex:1;padding-left:10px;padding-right:10px;}
  .support-panel,.support-form{padding:var(--space-5);}
  .support-form-grid{grid-template-columns:1fr;gap:0;}
  .support-queue-stats{grid-template-columns:1fr;}
  .support-ticket-row{gap:8px;}
  .support-status{min-width:0;padding-left:7px;padding-right:7px;}
  .support-detail-head{flex-direction:column;}
  .support-detail-side{align-items:flex-start;}
  .support-message{max-width:96%;}
  .support-form-footer,.support-reply-footer{align-items:stretch;flex-direction:column;}
  .support-form-footer .btn,.support-reply-footer .btn{width:100%;}
  .support-form-error{order:2;}
  .support-admin-controls{align-items:stretch;flex-direction:column;}
  .support-admin-controls .btn{width:100%;}
  .support-dashboard-entry{align-items:flex-start;flex-direction:column;gap:7px;}
  .support-admin-filters{grid-template-columns:1fr 1fr;}
  .support-admin-filters .support-filter-search{grid-column:1 / -1;}
  .support-admin-filters .btn{width:100%;}
  .support-filter-clear{width:100%;}
  .support-queue-meta{align-items:flex-start;flex-direction:column;gap:4px;}
  .support-detail-badges{justify-content:flex-start;}
}
