/* Shared compact Conecta tables. Keep section + table IDs to beat legacy view/mobile rules. */
#adminConnect.panel { row-gap:0; }
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) {
  width:100%; border-collapse:collapse; border-spacing:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif; font-size:11px;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) thead th {
  height:auto; padding:6px 8px; font-size:10px; font-weight:700; line-height:1.2;
  letter-spacing:0; text-transform:none; white-space:nowrap;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) tbody tr { height:42px; min-height:42px; }
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) tbody td {
  box-sizing:border-box; height:42px; min-height:42px; padding:0 8px; font-size:11px;
  line-height:1.25; vertical-align:middle; white-space:nowrap;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) tbody td :is(strong,.muted,small) { font-size:11px; line-height:1.25; }
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) tbody td :is(.pill,.connect-active-pill,.connect-deleted-pill) {
  min-height:24px; padding:3px 8px; font-size:11px; line-height:1; white-space:nowrap;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) tbody td :is(.session-note-button,.connect-note-button) {
  box-sizing:border-box; width:30px; min-width:30px; height:30px; min-height:30px;
  display:inline-grid; place-items:center; margin:0; padding:0; border-radius:8px; font-size:11px;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) tbody td :is(.session-note-button,.connect-note-button) svg { width:16px; height:16px; }
:is(#adminConnect #adminConnectEmptyRow, #connectView #userConnectEmptyRow) td { white-space:normal; }
:is(#adminConnect #adminConnectTableWrap, #connectView #userConnectTableWrap) {
  max-height:calc(100vh - 250px); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin;
  scrollbar-color:#c5d0dc transparent;
}
:is(#adminConnect #adminConnectTableWrap, #connectView #userConnectTableWrap)::-webkit-scrollbar { width:12px; height:12px; }
:is(#adminConnect #adminConnectTableWrap, #connectView #userConnectTableWrap)::-webkit-scrollbar-track { background:transparent; }
:is(#adminConnect #adminConnectTableWrap, #connectView #userConnectTableWrap)::-webkit-scrollbar-thumb {
  border:3px solid transparent; border-radius:999px; background:#c5d0dc; background-clip:content-box;
}
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectTableWrap, #connectView #userConnectTableWrap) { scrollbar-color:#3a4658 transparent; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectTableWrap, #connectView #userConnectTableWrap)::-webkit-scrollbar-thumb { background-color:#3a4658; }

/* One horizontal toolbar; small screens scroll instead of squeezing dates or wrapping. */
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar).connect-table-filterbar {
  display:flex; flex-flow:row nowrap; align-items:center; gap:7px; min-width:0; padding:10px 12px;
  overflow-x:auto; scrollbar-width:thin; white-space:nowrap;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > input[type="search"] {
  box-sizing:border-box; width:auto; min-width:190px; height:32px; min-height:32px; flex:1.35 1 220px;
  margin:0; padding:6px 9px; border:1px solid #dfe3ea; border-radius:6px; background:#fff;
  color:#3c4257; font-size:11px; line-height:1.2; box-shadow:none;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > .wuim-searchable-select {
  width:auto; min-width:132px; flex:1 1 150px; margin:0;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > .wuim-searchable-select > .wss-trigger {
  box-sizing:border-box; width:100%; min-width:0; height:32px; min-height:32px; margin:0; padding:6px 9px;
  border:1px solid #dfe3ea; border-radius:6px; background:#fff; color:#3c4257;
  font-size:11px; line-height:1.2; box-shadow:none; transform:none;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > .wuim-searchable-select > .wss-trigger:hover { background:#f8f9fc; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > select {
  box-sizing:border-box; width:145px; min-width:132px; height:32px; min-height:32px; flex:1 1 150px;
  margin:0; padding:5px 8px; border:1px solid #dfe3ea; border-radius:6px; background:#fff;
  color:#3c4257; font-size:11px; line-height:1.2; box-shadow:none;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range {
  min-width:300px; display:grid; flex:1.3 0 300px; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range > label {
  position:relative; display:block; min-width:0; margin:0; color:inherit; font-size:0; line-height:0;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range > label > span {
  position:absolute; z-index:1; top:50%; left:9px; color:#697386; font-size:9px;
  font-weight:700; line-height:1; transform:translateY(-50%); pointer-events:none;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range input[type="date"] {
  box-sizing:border-box; width:100%; min-width:0; height:32px; min-height:32px; margin:0;
  padding:6px 7px 6px 43px; border:1px solid #dfe3ea; border-radius:6px; background:#fff;
  color:#3c4257; font-family:inherit; font-size:10px; font-weight:600; line-height:1.2; box-shadow:none;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range input[type="date"]::-webkit-datetime-edit { padding:0; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range input[type="date"]::-webkit-calendar-picker-indicator { margin:0; padding:0; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-meta {
  min-width:max-content; display:flex; flex:0 0 auto; grid-column:auto; align-items:center;
  justify-content:flex-end; gap:7px; margin-left:auto; font-size:11px;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > button,
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-meta > button,
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .filter-result {
  box-sizing:border-box; width:auto; min-width:0; height:32px; min-height:32px; flex:0 0 auto;
  grid-column:auto; align-self:center; justify-self:auto; display:inline-flex; align-items:center;
  justify-content:center; margin:0; padding:6px 9px; border:1px solid transparent; border-radius:6px;
  background:#f0f2f5; color:#4f566b; font-size:12px; font-weight:700; line-height:1.2;
  white-space:nowrap; box-shadow:none; transform:none;
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > button:hover,
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-meta > button:hover { background:#e7ebf0; transform:none; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) :is(input,select,button):focus-visible {
  outline:0; border-color:#635bff; box-shadow:0 0 0 3px rgba(99,91,255,.16);
}
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-error { color:#dc2626; font-size:10px; line-height:1.2; white-space:nowrap; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar)::-webkit-scrollbar { height:7px; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar)::-webkit-scrollbar-thumb { border-radius:999px; background:rgba(100,116,139,.38); }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > input[type="search"],
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > select,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > .wuim-searchable-select > .wss-trigger,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range input[type="date"] {
  border-color:#2b394e; background:#0d1727; color:#e8edf6; color-scheme:dark;
}
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > .wuim-searchable-select > .wss-trigger:hover { background:#172338; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range > label > span { color:#9daac0; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > button,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-meta > button,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .filter-result {
  border-color:#2b394e; background:#182335; color:#d9e3ef;
}
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > button:hover,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-meta > button:hover { background:#223047; }
:is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range input[type="date"]:focus-visible,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > input[type="search"]:focus-visible,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > select:focus-visible,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) > .wuim-searchable-select > .wss-trigger:focus-visible,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectFilterbar, #connectView #userConnectFilterbar) .connect-filter-date-range input[type="date"]:focus-visible {
  outline:0; border-color:#635bff; box-shadow:0 0 0 3px rgba(99,91,255,.16);
}

/* One action button per row. Proxy controls keep existing event handlers out of the layout. */
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) td.connect-table-action-cell { width:52px; min-width:52px; text-align:center; }
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) span.connect-action-proxies { display:none !important; }
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle {
  box-sizing:border-box; display:inline-grid; width:30px; min-width:30px; height:30px; min-height:30px;
  place-items:center; margin:0; padding:0; border:1px solid #d8e2eb; border-radius:8px;
  background:#fff; color:#64748b; box-shadow:none; transform:none;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle:hover,
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle[aria-expanded="true"] {
  border-color:#9b95ff; background:#f4f3ff; color:#635bff; box-shadow:none; transform:none;
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle:focus-visible {
  outline:0; border-color:#635bff; box-shadow:0 0 0 3px rgba(99,91,255,.16);
}
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle svg { width:17px; height:17px; fill:currentColor; }
:is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle:disabled { opacity:.5; cursor:not-allowed; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle { border-color:#2f3b4a; background:#182335; color:#9aa8ba; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle:hover,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnect #adminConnectTable, #connectView #userConnectTable) button.connect-row-menu-toggle[aria-expanded="true"] { border-color:#8179ff; background:#292653; color:#b7b3ff; }

#adminConnect .connect-update-status{display:flex;align-items:center;gap:12px;padding:8px 16px;font-size:12px;color:#637187;background:transparent}
#adminConnect .connect-update-status[hidden],#adminConnect .connect-update-status button[hidden]{display:none!important}
#adminConnect .connect-update-status button{font:inherit;padding:4px 8px;border:1px solid #d8e2eb;border-radius:6px;background:transparent;color:inherit}
html[data-theme=dark] #adminConnect .connect-update-status{color:#a4b1c3}
/* Usuario has one direct action; keep the same compact row height as Admin. */
#connectView #userConnectTable td.connect-table-action-cell { width:164px; min-width:164px; text-align:center; padding-inline:20px!important; }
#connectView #userConnectTable th:last-child { text-align:center; padding-inline:20px!important; }
#connectView #userConnectTable button.connect-send-button {
  box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:6px;
  width:auto; min-width:0; height:30px; min-height:30px; margin:0; padding:0 10px;
  border:1px solid #d8e2eb; border-radius:8px; background:#fff; color:#3c4257;
  font-family:inherit; font-size:11px; font-weight:650; line-height:1.2; white-space:nowrap;
  box-shadow:none; transform:none;
}
#connectView #userConnectTable button.connect-send-button svg {
  flex:0 0 16px; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8;
  stroke-linecap:round; stroke-linejoin:round;
}
#connectView #userConnectTable button.connect-send-button:hover { border-color:#9b95ff; background:#f4f3ff; color:#635bff; box-shadow:none; transform:none; }
#connectView #userConnectTable button.connect-send-button:focus-visible { outline:0; border-color:#635bff; box-shadow:0 0 0 3px rgba(99,91,255,.16); }
/* Existing User dark-theme CTA rules are important; override only this table button. */
:is(html[data-theme="dark"],body.dark-mode) #connectView #userConnectTable button.connect-send-button { border-color:#2f3b4a !important; background:#182335 !important; color:#d9e3ef !important; }
:is(html[data-theme="dark"],body.dark-mode) #connectView #userConnectTable button.connect-send-button:hover { border-color:#8179ff !important; background:#292653 !important; color:#b7b3ff !important; }

/* Portaled menus are deliberately independent of section ancestors and table overflow. */
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu {
  box-sizing:border-box; position:fixed; z-index:331; display:grid; width:224px;
  max-width:calc(100vw - 16px); max-height:calc(100vh - 16px); overflow:auto; padding:6px;
  border:1px solid #e3e7ee; border-radius:10px; background:#fff;
  box-shadow:0 16px 36px rgba(50,50,93,.16),0 4px 10px rgba(0,0,0,.07);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;
}
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu[hidden],
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu [hidden] { display:none !important; }
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"] {
  box-sizing:border-box; display:grid; width:100%; min-height:40px; grid-template-columns:18px minmax(0,1fr);
  align-items:center; gap:10px; margin:0; padding:8px 10px; border:0; border-radius:7px;
  background:transparent; color:#263247; font-family:inherit; font-size:12px; font-weight:650;
  line-height:1.3; text-align:left; box-shadow:none; transform:none;
}
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"]:hover,
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"]:focus-visible { outline:0; background:#f6f9fc; box-shadow:none; transform:none; }
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"]:disabled { opacity:.5; cursor:not-allowed; }
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"] svg {
  width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;
}
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"][data-danger="true"] { color:#d92d20; }
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu hr { height:1px; margin:5px 8px; padding:0; border:0; background:#e6e8ee; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu,
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu.is-dark { border-color:#30415b; background:#182335; box-shadow:0 14px 32px rgba(0,0,0,.35); }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"],
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu.is-dark button[role="menuitem"] { color:#d9e3ef; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"]:hover,
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"]:focus-visible,
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu.is-dark button[role="menuitem"]:hover,
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu.is-dark button[role="menuitem"]:focus-visible { background:#223047; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu button[role="menuitem"][data-danger="true"],
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu.is-dark button[role="menuitem"][data-danger="true"] { color:#ff8585; }
:is(html[data-theme="dark"],body.dark-mode) :is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu hr,
:is(#adminConnectRowMenu,#userConnectRowMenu).connect-row-menu.is-dark hr { background:#34465f; }
