/* Portal structure adapter for the Tencent Cloud production UI.
   It preserves the five-section navigation without replacing the production visual system. */
:root{
  --portal-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI","PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif;
}

html,
body,
button,
input,
select,
textarea,
summary,
h1,
h2,
h3,
h4,
h5,
h6{
  font-family:var(--portal-font)!important;
  letter-spacing:0!important;
}

.skip-link{
  position:fixed;
  top:10px;
  left:12px;
  z-index:1400;
  padding:9px 12px;
  color:#fff;
  background:var(--sage-dark,#4d665b);
  border-radius:8px;
  transform:translateY(-160%);
  transition:transform .18s ease;
}

.skip-link:focus{
  transform:translateY(0);
}

.home-module-fold{
  display:none!important;
}

.topbar .business-nav{
  display:flex;
  align-items:center;
  gap:2px;
  overflow:visible;
}

.top-nav-group{
  position:relative;
  flex:0 0 auto;
}

.top-nav-group > summary{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:36px;
  padding:7px 12px;
  color:#55555a;
  background:transparent;
  border:1px solid transparent;
  border-radius:8px;
  list-style:none;
  white-space:nowrap;
  cursor:pointer;
  font-size:13px;
  font-weight:600;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}

.top-nav-group > summary::-webkit-details-marker{
  display:none;
}

.top-nav-group > summary::after{
  content:"";
  width:6px;
  height:6px;
  margin-top:-3px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);
  transition:transform .16s ease,margin .16s ease;
}

.top-nav-group[open] > summary::after{
  margin-top:3px;
  transform:rotate(225deg);
}

.top-nav-group > summary:hover{
  color:var(--ink,#29251f);
  background:rgba(95,119,107,.08);
}

.top-nav-group[open] > summary,
.top-nav-group.active > summary{
  color:var(--sage-dark,#4d665b);
  background:var(--paper-strong,#fffaf0);
  border-color:rgba(126,107,77,.18);
  box-shadow:0 1px 4px rgba(65,53,34,.08);
}

.top-nav-group.permission-locked > summary{
  opacity:.48;
}

.top-nav-menu{
  position:absolute;
  top:calc(100% + 20px);
  left:0;
  z-index:800;
  display:grid;
  gap:3px;
  width:max-content;
  min-width:210px;
  max-width:min(290px,calc(100vw - 24px));
  padding:7px;
  background:rgba(255,250,240,.98);
  border:1px solid rgba(126,107,77,.20);
  border-radius:12px;
  box-shadow:0 16px 40px rgba(65,53,34,.16);
}

.top-nav-group:last-child .top-nav-menu{
  right:0;
  left:auto;
}

.topbar .top-nav-menu button{
  width:100%;
  min-height:36px;
  justify-content:flex-start;
  padding:8px 10px;
  color:var(--sage-dark,#4d665b);
  background:transparent;
  border:1px solid transparent;
  border-radius:8px;
  box-shadow:none;
  text-align:left;
  font-size:13px;
  font-weight:600;
}

.topbar .top-nav-menu button:hover{
  color:#32473d;
  background:#eef3e9;
  border-color:#c7d2c3;
}

.topbar .top-nav-menu button.active{
  color:#32473d;
  background:#e7eee4;
  border-color:#c7d2c3;
}

.top-nav-menu-empty{
  min-width:170px;
}

.top-nav-empty,
.agent-tree-empty{
  display:block;
  padding:9px 10px;
  color:var(--ink-soft,#716a5d);
  font-size:12px;
  line-height:1.5;
}

.agent-tree-empty{
  padding:0 2px 11px;
}

/* Keep wide AI result tables inside the assistant workspace. */
#agent-panel{
  grid-template-columns:minmax(0,1fr) minmax(240px,290px)!important;
  max-width:100%;
  min-width:0;
  overflow:hidden;
}

#agent-panel > *{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

#agent-panel > .agent-recent{
  grid-column:1!important;
  width:100%;
  min-width:0;
  max-width:100%;
}

#agent-panel .agent-recent-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) 32px;
  align-items:center;
  gap:12px;
  cursor:pointer;
  border-radius:8px;
}

#agent-panel .agent-recent-head::-webkit-details-marker{
  display:none;
}

#agent-panel .agent-recent-head::marker{
  content:"";
}

#agent-panel .agent-recent-head span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:right;
}

#agent-panel .agent-recent-head::after{
  content:"\25BC";
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  color:var(--sage-dark,#4d665b);
  background:var(--paper-strong,#fffaf0);
  border:1px solid rgba(95,119,107,.28);
  border-radius:8px;
  box-shadow:0 2px 8px rgba(65,53,34,.08);
  font-size:10px;
  line-height:1;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}

#agent-panel .agent-recent[open] > .agent-recent-head::after{
  content:"\25B2";
  background:#eef3e9;
  border-color:#c7d2c3;
}

#agent-panel .agent-recent-head:hover::after{
  background:#e7eee4;
  border-color:#b9c9b5;
}

#agent-panel .agent-recent-head:focus-visible{
  outline:3px solid rgba(95,119,107,.22);
  outline-offset:3px;
}

#agent-panel .agent-module-tree{
  width:100%;
  min-width:0;
  max-width:290px;
}

#agent-panel .agent-tasks,
#agent-panel .agent-task,
#agent-panel .agent-result,
#agent-panel .agent-result-scroll{
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

#agent-panel .agent-tasks{
  overflow-x:hidden!important;
}

#agent-panel .agent-result-scroll{
  overflow-x:auto!important;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
}

#agent-panel .agent-result-table{
  width:max-content;
  min-width:980px!important;
  max-width:none!important;
}

[data-module].permission-locked{
  opacity:.45!important;
  filter:grayscale(.45)!important;
}

#module-view{
  height:100dvh;
  padding-top:64px;
}

#module-view iframe{
  height:calc(100dvh - 64px);
}

@media(max-width:780px){
  .topbar .business-nav{
    display:flex;
    width:100%;
    gap:3px;
    overflow:visible;
  }

  .top-nav-group{
    flex:1 1 0;
    min-width:0;
  }

  .top-nav-group > summary{
    width:100%;
    gap:5px;
    min-height:36px;
    padding:6px 4px;
    font-size:12px;
  }

  .top-nav-menu{
    min-width:210px;
  }

  .top-nav-group:nth-child(2) .top-nav-menu,
  .top-nav-group:nth-child(3) .top-nav-menu,
  .top-nav-group:nth-child(4) .top-nav-menu{
    left:50%;
    transform:translateX(-50%);
  }

  .top-nav-group:last-child .top-nav-menu{
    right:0;
    left:auto;
    transform:none;
  }

  #session-info{
    display:none!important;
  }

  #module-view{
    padding-top:116px;
  }

  #module-view iframe{
    height:calc(100dvh - 116px);
  }
}

@media(max-width:980px){
  #agent-panel{
    grid-template-columns:minmax(0,1fr)!important;
  }

  #agent-panel .agent-module-tree{
    max-width:none;
  }
}

@media(max-width:480px){
  .top-nav-group > summary{
    gap:4px;
    font-size:11px;
  }

  .top-nav-group > summary::after{
    width:5px;
    height:5px;
  }
}

@media(prefers-reduced-motion:reduce){
  .top-nav-group > summary,
  .top-nav-group > summary::after,
  #agent-panel .agent-recent-head::after{
    transition:none;
  }
}
