/* ============================================================
   portal.css —— 后台门户页（站点根 index.html）
   ------------------------------------------------------------
   门户只做两件事：承载华为账号单点登录、给出进控制台的入口。
   视觉沿用控制台的设计令牌（tokens.css / shell.css），不引入旧样式。
   ============================================================ */

/* 公共外壳（mz-shell.js）接管顶栏后，门户主体要自己撑满页面宽度 */
#ccShell { width: 100%; }

.cc-portal .cc-main {
    padding-top: var(--cc-sp-6);
    width: 100%;
    max-width: var(--mz-wrap, 1280px);
    margin: 0 auto;
    padding-left: var(--mz-gutter, 20px);
    padding-right: var(--mz-gutter, 20px);
    box-sizing: border-box;
}

.pt-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: var(--cc-sp-4);
    padding: 7px 14px;
    border-radius: var(--cc-r-full);
    /* 登录态只是一个标签：只描边，不铺底（门户底是那张带冷光的纸） */
    border: 1px solid var(--mz-line);
    background: transparent;
    color: var(--cc-text-2);
    font-size: var(--cc-fs-sm);
}

.pt-status[data-kind="in"] {
    background: var(--cc-ok-soft);
    color: var(--cc-ok);
}

.pt-status[data-kind="error"] {
    background: var(--cc-danger-soft);
    color: var(--cc-danger);
}

.pt-section-head {
    display: flex;
    align-items: baseline;
    gap: var(--cc-sp-3);
    flex-wrap: wrap;
    margin: var(--cc-sp-6) 0 var(--cc-sp-3);
}

.pt-section-head h2 {
    font-size: var(--cc-fs-xl);
}

.pt-section-head p {
    color: var(--cc-text-3);
    font-size: var(--cc-fs-sm);
}

.pt-domains {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--cc-sp-4);
}

/* 域卡 = 全站统一的「基础卡」(.quick：眉标 / 标题 / 简介)。
   下面只补门户特有的排布：胶囊在卡内换行（不横滑）、胶囊高度收小一档、
   「进入」按钮不拉满整行。选择器多带一层 .pt-domains，压过公共层的
   同名规则（.mz-chips / .mz-chip 是后注入的，仅同权重时会赢）。 */
.pt-domains .quick {
    gap: 10px;
}

.pt-domains .pt-dom-chips {
    flex-wrap: wrap;
    overflow: visible;
    margin: 2px 0 0;
    padding: 0;
    gap: 6px;
}

.pt-domains .pt-dom-chips .mz-chip {
    min-height: 30px;
    padding: 4px 12px;
    font-size: .78rem;
    text-decoration: none;
}

.pt-domains .pt-dom-go {
    align-self: flex-start;
    margin-top: auto;
}

/* 右侧没有最近操作时（未登录 / 非管理员）合回单列，别留一条空栏 */
.cc-portal .tz-hero:has(> .tz-panel[hidden]) {
    grid-template-columns: minmax(0, 1fr);
}

/* ---------- 最近操作（右侧唯一内容）：沿用 .tz-ch 的入口行格式 ---------- */
#ptRecentList .tz-ch {
    cursor: default;
}

#ptRecentList .tz-ch__name {
    min-width: 0;
    overflow: hidden;
}

#ptRecentList .tz-ch__id {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#ptRecentList .tz-ch__state {
    white-space: nowrap;
    font-family: var(--mz-mono);
    font-size: .72rem;
    color: var(--mz-ink-4);
}

#ptRecent .tz-mono--right {
    text-decoration: none;
}

#ptRecent .tz-mono--right:hover {
    color: var(--mz-accent);
}
