/* Fthyrk Control workspace tabs + support viewport hardening — 2026-09-18 */
:root{
  --ws-tabs-h:46px;
  --ws-bg:#0d1b2c;
  --ws-surface:#14273b;
  --ws-surface-active:#1b3349;
  --ws-line:#2d4359;
  --ws-text:#c9d8e8;
  --ws-text-strong:#f5f9fd;
  --ws-accent:#75dec4;
  --ws-focus:#9df0d9;
}
.workspace-tabs-shell{
  position:sticky;
  top:0;
  z-index:70;
  display:flex;
  align-items:center;
  min-width:0;
  min-height:var(--ws-tabs-h);
  margin:-4px 0 14px;
  border:1px solid var(--ws-line);
  border-radius:12px;
  background:color-mix(in srgb,var(--ws-bg) 94%,transparent);
  box-shadow:0 8px 26px rgba(2,10,20,.10);
  backdrop-filter:blur(14px);
}
.workspace-tabs-bar{display:flex;align-items:stretch;min-width:0;width:100%;height:44px;}
.workspace-tabs-caption{display:flex;align-items:center;padding:0 12px;border-right:1px solid var(--ws-line);color:#8fa6bd;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;}
.workspace-tablist{
  display:flex;
  flex:1 1 auto;
  min-width:0;
  align-items:stretch;
  gap:2px;
  padding:4px;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  scroll-behavior:smooth;
}
.workspace-tablist::-webkit-scrollbar{display:none;}
.workspace-tab{
  position:relative;
  display:flex;
  flex:0 0 auto;
  align-items:center;
  min-width:118px;
  max-width:220px;
  height:36px;
  padding:0 8px 0 11px;
  border:1px solid transparent;
  border-radius:9px;
  color:var(--ws-text);
  background:transparent;
  cursor:pointer;
  outline:none;
  user-select:none;
}
.workspace-tab:hover{background:rgba(255,255,255,.045);color:var(--ws-text-strong);}
.workspace-tab[aria-selected="true"]{border-color:#35546a;background:var(--ws-surface-active);color:var(--ws-text-strong);}
.workspace-tab[aria-selected="true"]::before{content:"";position:absolute;left:9px;right:9px;bottom:0;height:2px;border-radius:2px;background:var(--ws-accent);}
.workspace-tab:focus-visible{box-shadow:0 0 0 2px var(--ws-focus);}
.workspace-tab-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;}
.workspace-tab-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 24px;
  width:24px;
  height:24px;
  margin-left:5px;
  padding:0;
  border:0;
  border-radius:7px;
  color:#8fa4b8;
  background:transparent;
  font-size:16px;
  line-height:1;
  cursor:pointer;
}
.workspace-tab-close:hover{color:#fff;background:rgba(255,255,255,.09);}
.workspace-tab-close:focus-visible{outline:2px solid var(--ws-focus);outline-offset:1px;}
.workspace-tab[data-pinned="true"]{min-width:104px;padding-right:11px;}
.workspace-tab[data-pinned="true"] .workspace-tab-close{display:none;}
.workspace-tabs-actions{display:flex;align-items:center;gap:4px;padding:4px;border-left:1px solid var(--ws-line);}
.workspace-tabs-more{width:34px;height:34px;border:1px solid transparent;border-radius:9px;color:#a8bacb;background:transparent;cursor:pointer;font-size:18px;}
.workspace-tabs-more:hover,.workspace-tabs-more[aria-expanded="true"]{border-color:#38526a;background:#172c41;color:#fff;}
.workspace-tabs-more:focus-visible{outline:2px solid var(--ws-focus);outline-offset:1px;}
.workspace-tabs-menu{
  position:absolute;
  top:calc(100% + 6px);
  right:0;
  z-index:120;
  width:min(300px,calc(100vw - 32px));
  max-height:min(420px,70dvh);
  padding:7px;
  overflow:auto;
  border:1px solid #365069;
  border-radius:12px;
  background:#102236;
  box-shadow:0 18px 48px rgba(2,10,20,.34);
}
.workspace-tabs-menu[hidden]{display:none!important;}
.workspace-tabs-menu button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  min-height:38px;
  padding:7px 9px;
  border:0;
  border-radius:8px;
  color:#c7d7e7;
  background:transparent;
  text-align:left;
  cursor:pointer;
  font-size:11px;
}
.workspace-tabs-menu button:hover{background:#1a3147;color:#fff;}
.workspace-tabs-menu button[aria-current="page"]{background:#203c52;color:#fff;}
.workspace-tabs-menu .workspace-tabs-menu-separator{height:1px;margin:6px 3px;background:#294258;}
.workspace-tabs-menu .workspace-tabs-menu-action{color:#a7bacd;}
.workspace-tab-select{
  display:none;
  min-width:0;
  flex:1;
  height:36px;
  margin:4px 6px;
  padding:0 34px 0 10px;
  border:1px solid #365069;
  border-radius:9px;
  background:#14283c;
  color:#e8f0f7;
  font-size:12px;
}
.workspace-tabs-shell[data-overflow="true"] .workspace-tabs-more::after{
  content:"";
  position:absolute;
  width:6px;
  height:6px;
  margin:-4px 0 0 -2px;
  border-radius:50%;
  background:var(--ws-accent);
}
html[data-admin-theme="light"] .workspace-tabs-shell{
  --ws-bg:#ffffff;
  --ws-surface:#f4f7fa;
  --ws-surface-active:#e9f4f0;
  --ws-line:#d4e0e9;
  --ws-text:#4b6279;
  --ws-text-strong:#1f3a50;
  --ws-accent:#16836f;
  --ws-focus:#08786e;
  background:rgba(255,255,255,.94);
  box-shadow:0 7px 24px rgba(34,65,85,.08);
}
html[data-admin-theme="light"] .workspace-tabs-caption{color:#62788c;}
html[data-admin-theme="light"] .workspace-tab:hover{background:#f1f6f8;}
html[data-admin-theme="light"] .workspace-tab[aria-selected="true"]{border-color:#c5ddd5;background:#e5f3ed;color:#163f39;}
html[data-admin-theme="light"] .workspace-tab-close{color:#6d8194;}
html[data-admin-theme="light"] .workspace-tab-close:hover{color:#24465a;background:#dceae6;}
html[data-admin-theme="light"] .workspace-tabs-more{color:#526c81;}
html[data-admin-theme="light"] .workspace-tabs-more:hover,
html[data-admin-theme="light"] .workspace-tabs-more[aria-expanded="true"]{border-color:#c8d8e2;background:#eef4f7;color:#21445a;}
html[data-admin-theme="light"] .workspace-tabs-menu{border-color:#cfdee7;background:#fff;box-shadow:0 18px 48px rgba(28,56,75,.18);}
html[data-admin-theme="light"] .workspace-tabs-menu button{color:#405b72;}
html[data-admin-theme="light"] .workspace-tabs-menu button:hover{background:#edf5f3;color:#173f3a;}
html[data-admin-theme="light"] .workspace-tabs-menu button[aria-current="page"]{background:#e1f2ea;color:#145d50;}
html[data-admin-theme="light"] .workspace-tabs-menu .workspace-tabs-menu-separator{background:#dce6ed;}
html[data-admin-theme="light"] .workspace-tab-select{border-color:#cedce6;background:#fff;color:#234158;}

/* Support: the conversation remains the primary task. */
#supportView .support-grid{
  height:clamp(520px,calc(100dvh - 236px),960px)!important;
  min-height:520px!important;
}
#supportView #supportThread{min-height:0!important;}
#supportView .support-account-context{
  flex:0 0 auto;
  max-width:100%;
  overflow:hidden;
}
#supportView .support-account-context>summary{
  min-height:42px;
  padding-right:2px;
}
#supportView .support-account-context>summary::after{
  content:"Ver detalhes";
  flex:0 0 auto;
  margin-left:auto;
  padding:5px 8px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:7px;
  font-size:9px;
  font-weight:750;
}
#supportView .support-account-context[open]>summary::after{content:"Ocultar";}
#supportView .support-account-context[open]{
  max-height:min(24dvh,180px);
  overflow:auto;
  scrollbar-gutter:stable;
}
#supportView .support-account-context[open]>summary{
  position:sticky;
  top:0;
  z-index:2;
  margin:-11px -13px 0;
  padding:11px 13px 9px;
  background:inherit;
  border-bottom:1px solid rgba(148,163,184,.12);
}
#supportView .support-account-invoices{overflow-x:auto;}
#supportView #supportMessages{
  flex:1 1 260px!important;
  min-height:150px!important;
}
#supportView .support-reply{flex:0 0 auto;}
html[data-admin-theme="light"] #supportView .support-account-context>summary::after{
  border-color:#c9d8e2;
  color:#49677c;
  background:#fff;
}
@media(min-height:900px) and (min-width:1025px){
  #supportView .support-account-context[open]{max-height:min(26dvh,240px);}
  #supportView #supportMessages{min-height:200px!important;}
}
@media(max-width:1180px) and (min-width:1025px){
  .workspace-tabs-caption{display:none;}
  .workspace-tab{min-width:102px;max-width:180px;}
  #supportView .support-account-context[open]{max-height:min(27dvh,230px);}
}
@media(max-width:1024px){
  .workspace-tabs-shell{top:61px;z-index:80;margin:0 0 14px;border-radius:10px;}
  #supportView .support-grid{height:auto!important;min-height:0!important;}
  #supportView .support-account-context[open]{max-height:320px;}
  #supportView #supportMessages{min-height:360px!important;}
}
@media(max-width:680px){
  .workspace-tabs-caption,.workspace-tablist{display:none;}
  .workspace-tab-select{display:block;}
  .workspace-tabs-actions{border-left:0;}
  .workspace-tabs-shell{min-height:46px;}
  #supportView .support-account-grid{grid-template-columns:1fr!important;}
  #supportView .support-account-context[open]{max-height:300px;}
  #supportView #supportMessages{min-height:320px!important;}
}
@media(prefers-reduced-motion:reduce){
  .workspace-tablist{scroll-behavior:auto;}
}
@media(forced-colors:active){
  .workspace-tabs-shell,.workspace-tab,.workspace-tabs-more,.workspace-tab-select{border:1px solid CanvasText;}
  .workspace-tab[aria-selected="true"]{outline:2px solid Highlight;}
}
/* 2026-09-18: DRE becomes a dedicated workspace module. */
body.fthyrk-nova .menu button[data-view="dashboard"]{order:1;}
body.fthyrk-nova .menu button[data-view="tenants"]{order:2;}
body.fthyrk-nova .menu button[data-view="campanhas"]{order:3;}
body.fthyrk-nova .menu button[data-view="caixa"]{order:4;}
body.fthyrk-nova .menu button[data-view="dre"]{order:5;}
body.fthyrk-nova .menu button[data-view="fiscal"]{order:6;}
body.fthyrk-nova .menu button[data-view="fiscalcentral"]{order:7;}
body.fthyrk-nova .menu button[data-view="provedores"]{order:8;}
body.fthyrk-nova .menu button[data-view="whatsapp"]{order:9;}
body.fthyrk-nova .menu button[data-view="compliance"]{order:10;}
body.fthyrk-nova .menu button[data-view="support"]{order:11;}
body.fthyrk-nova .menu button[data-view="gmail"]{order:12;}
body.fthyrk-nova .menu button[data-view="alerts"]{order:13;}
body.fthyrk-nova .menu button[data-view="users"]{order:14;}
body.fthyrk-nova .menu button[data-view="approvals"]{order:15;}
body.fthyrk-nova .menu button[data-view="audit"]{order:16;}
body.fthyrk-nova .menu button[data-view="codex"]{order:17;}
body.fthyrk-nova .menu button[data-view="dre"]::before{content:"∑";}
body.fthyrk-nova #dreView #superadmin-erp-widget{margin:0!important;}

/* Support is a full-height operational workspace on desktop. */
@media(min-width:1025px){
  body.fthyrk-nova[data-admin-view="support"]{overflow:hidden;}
  body.fthyrk-nova[data-admin-view="support"] .main-content{
    height:100dvh!important;
    min-height:0!important;
    padding:10px 14px 12px!important;
    overflow:hidden!important;
  }
  body.fthyrk-nova[data-admin-view="support"] .view-header{display:none!important;}
  body.fthyrk-nova[data-admin-view="support"] #workspaceTabs{
    margin:0 0 10px!important;
    flex:0 0 auto;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView{
    height:calc(100dvh - 68px)!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-grid{
    height:100%!important;
    min-height:0!important;
    grid-template-columns:minmax(300px,330px) minmax(0,1fr)!important;
    gap:10px!important;
  }
}
@media(min-width:1025px){
  body.fthyrk-nova[data-admin-view="support"] #supportView :is(.support-list,.support-thread){
    height:100%;
    min-height:0!important;
    border-radius:13px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-inbox-head{
    padding:10px 12px 9px!important;
    gap:8px;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-inbox-head h3{
    font-size:15px;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView #supportList{
    min-height:0;
    padding:10px 9px 12px!important;
    gap:8px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-thread-head{
    padding:10px 12px!important;
    gap:8px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-thread-actions{
    gap:4px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-thread-actions .btn{
    min-height:30px!important;
    padding:5px 8px!important;
    font-size:10px!important;
  }
}
@media(min-width:1025px){
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-takeover-toggle{
    min-height:30px;
    padding:4px 7px;
    gap:6px;
    border-radius:9px;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-takeover-track{
    width:30px;
    height:17px;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-takeover-track i{
    width:13px;
    height:13px;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-takeover-toggle input:checked + .support-takeover-track i{
    transform:translateX(13px);
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-takeover-toggle strong{font-size:9px;}
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-takeover-toggle small{font-size:8px;}
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-account-context{
    margin:7px 10px 0!important;
    padding:8px 10px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-account-context.technical-only{
    min-height:42px;
    gap:10px;
  }
}
@media(min-width:1025px){
  body.fthyrk-nova[data-admin-view="support"] #supportView #supportMessages{
    flex:1 1 auto!important;
    min-height:0!important;
    padding:14px 16px 12px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-reply{
    padding:8px 10px 10px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-reply textarea{
    min-height:52px!important;
    max-height:140px!important;
    padding:10px 11px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-compose-head{
    margin-bottom:6px!important;
  }
  body.fthyrk-nova[data-admin-view="support"] #supportView .support-compose-footer{
    margin-top:6px!important;
  }
}

/* The tab already identifies Support; remove the redundant page header everywhere. */
body.fthyrk-nova[data-admin-view="support"] .view-header{display:none!important;}

.workspace-theme-choice{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  padding:0;
  border:1px solid transparent;
  border-radius:8px;
  color:#9fb2c4;
  background:transparent;
  cursor:pointer;
  font-size:13px;
}
.workspace-theme-choice:hover{border-color:#38526a;background:#172c41;color:#fff;}
.workspace-theme-choice[aria-pressed="true"]{border-color:#477166;background:#1a3b37;color:#a7f3d6;}
.workspace-theme-choice:focus-visible{outline:2px solid var(--ws-focus);outline-offset:1px;}
html[data-admin-theme="light"] .workspace-theme-choice{color:#60788e;}
html[data-admin-theme="light"] .workspace-theme-choice:hover{border-color:#c8d8e2;background:#eef4f7;color:#21445a;}
html[data-admin-theme="light"] .workspace-theme-choice[aria-pressed="true"]{border-color:#b9d8cd;background:#e5f3ed;color:#116653;}
