/* ==========================================================================
   WHMCS 全局定制极客风 CSS (终极排错完美版 V6)
   特点：全局绝对直角、变量控制字号、暗黑搜索框修复、表头排版修复
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. 全局核心变量定义
-------------------------------------------------------------------------- */
:root {
    --gc-fs-base: 13px; /* ★ 全局字号，想改 14px 只需改这里 ★ */
    --gc-sidebar-width: 260px;
    --gc-sidebar-collapse: 88px;
    --gc-bg: #f5f7fb;
    --gc-panel: #ffffff;
    --gc-border: #e2e8f0;
    --gc-text: #111827;
    --gc-muted: #6b7280;
    --gc-primary: #16a34a; 
    --gc-danger: #ef4444;  
    --gc-warning: #f59e0b; 
    --gc-fs-md: 13px;
}
html[data-theme="dark"] {
    --gc-bg: #0f172a;
    --gc-panel: #111827;
    --gc-border: rgba(255, 255, 255, 0.08);
    --gc-text: #f3f4f6;
    --gc-muted: #94a3b8;
}

/* --------------------------------------------------------------------------
   2. 核弹级全局直角防线 (已剔除 font-weight Bug)
-------------------------------------------------------------------------- */
*, *::before, *::after { 
    border-radius: 0px !important; 
    box-shadow: none !important; 
    box-sizing: border-box; 
    /* 绝对不能在这里加 font-weight: 400，否则图标会消失！ */
}
/* 当外层是无侧边栏状态(gc-main-full)时，内部的容器自动缩至 80% */
.gc-main-full .gc-dashboard-container {
    width: 82% !important;
    max-width: 82% !important;
}

/* 手机端依然保持 96%，防止屏幕太小挤在一起 */
@media (max-width: 768px) {
    .gc-main-full .gc-dashboard-container {
        width: 96% !important;
        max-width: 96% !important;
    }
}
/* 特例：头像、小红点和单选圆圈保持正圆 */
.gc-topbar-badge, .checkmark, .lc-user-avatar, input[type="radio"] { 
    border-radius: 50% !important; 
}

body { background: var(--gc-bg) !important; color: var(--gc-text) !important; font-family:
  "Inter",
  "HarmonyOS Sans SC",
  "PingFang SC",
  "Microsoft YaHei",
  sans-serif; font-size: var(--gc-fs-base) !important; line-height: 1.6 !important; margin: 0; }

.page-header, .breadcrumb, #page-title, .header-lined, .section-header, #order-standard_cart #frmCheckout .sub-heading { display: none !important; }


button:focus, a:focus, input:focus, .js-theme-toggle:focus, .gc-sidebar-toggle:focus { outline: none !important; box-shadow: none !important; }

/* --------------------------------------------------------------------------
   3. 基础组件与状态标签 (Inputs, Buttons, Badges)
-------------------------------------------------------------------------- */
input, select, textarea, .form-control, .btn, button, .input-group-text { border: 1px solid var(--gc-border); background: var(--gc-panel); color: var(--gc-text); font-size: var(--gc-fs-base) !important; transition: all 0.2s ease; }
input:focus, select:focus, textarea:focus, .form-control:focus { border-color: var(--gc-primary) !important; outline: none !important; }
.btn-primary, .gc-btn-primary { background: var(--gc-primary) !important; border-color: var(--gc-primary) !important; color: #ffffff !important; font-size: var(--gc-fs-base) !important; }
.btn-primary:hover, .gc-btn-primary:hover { background: #15803d !important; }
.btn-default, .gc-btn-default { background: var(--gc-panel) !important; color: var(--gc-text) !important; }
.btn-default:hover, .gc-btn-default:hover { background: var(--gc-bg) !important; color: var(--gc-primary) !important; border-color: var(--gc-primary) !important; }

.status-badge { display: inline-block !important; padding: 2px 10px !important; font-size: 12px !important; font-weight: 500 !important; border: 1px solid transparent !important; color: #ffffff !important; white-space: nowrap !important;}
.status-Active, .status-active, .status-Paid, .status-paid { background: var(--gc-primary) !important; border-color: var(--gc-primary) !important; }
.status-Pending, .status-pending, .status-Unpaid, .status-unpaid { background: var(--gc-warning) !important; border-color: var(--gc-warning) !important; }
.status-Suspended, .status-suspended, .status-Cancelled, .status-cancelled, .status-Fraud, .status-fraud { background: var(--gc-muted) !important; border-color: var(--gc-muted) !important; }
.text-green { color: var(--gc-primary) !important; }

.gc-universal-status-bar .gc-status-btn { padding: 6px 14px !important; border: 1px solid var(--gc-border) !important; background: var(--gc-panel) !important; color: var(--gc-text) !important; font-size: var(--gc-fs-base) !important; cursor: pointer !important; transition: 0.2s !important; display: flex !important; align-items: center !important; gap: 6px !important; outline: none !important; position: relative; z-index: 10; }
.gc-universal-status-bar .gc-status-btn:hover { border-color: var(--gc-primary) !important; color: var(--gc-primary) !important; }
.gc-universal-status-bar .gc-status-btn.active { background: var(--gc-primary) !important; color: #fff !important; border-color: var(--gc-primary) !important; }
.gc-universal-status-bar .gc-status-btn .badge { background: rgba(128,128,128,0.1) !important; color: inherit !important; padding: 2px 6px !important; font-size: 11px !important; }
.gc-universal-status-bar .gc-status-btn.active .badge { background: rgba(255,255,255,0.2) !important; color: #fff !important; }

/* --------------------------------------------------------------------------
   4. 表格排版与箭头修复 (Tables & DataTables)
-------------------------------------------------------------------------- */
.table, .table-list, .dataTables_wrapper table { width: 100% !important; border-collapse: collapse !important; border-spacing: 0 !important; background: transparent !important; }
.table thead th { background: transparent !important; border: none !important; color: var(--gc-muted) !important; font-size: var(--gc-fs-base) !important; text-transform: uppercase !important; padding: 16px !important; }
.table tbody td { background: var(--gc-panel) !important; color: var(--gc-text) !important; font-size: var(--gc-fs-base) !important; padding: 16px !important; vertical-align: middle !important; border: none !important; border-bottom: 1px solid var(--gc-border) !important; }
.table tbody tr:hover td { background: rgba(22, 163, 74, 0.03) !important; }
.dataTables_paginate .paginate_button { background: var(--gc-panel) !important; border: 1px solid var(--gc-border) !important; color: var(--gc-text) !important; font-size: var(--gc-fs-base) !important; padding: 6px 12px !important; margin: 0 2px !important; }
.dataTables_paginate .paginate_button.current { background: var(--gc-text) !important; border-color: var(--gc-text) !important; color: var(--gc-panel) !important; }

/* ★ 修复表头排序箭头：禁止换行，相对文字留出安全距离 ★ */
table.dataTable thead th { 
    display: table-cell !important; 
    padding-right: 20px !important; 
    white-space: nowrap !important; /* 禁止换行防粘连 */
    vertical-align: middle !important; 
}
table.dataTable thead th.sorting::after, 
table.dataTable thead th.sorting_asc::after, 
table.dataTable thead th.sorting_desc::after { 
    content: "" !important; 
    display: inline-block !important; 
    position: relative !important; /* 相对定位跟在文字后 */
    width: 10px !important; 
    height: 14px !important; 
    margin-left: 8px !important;   /* 距离文字的间距 */
    vertical-align: middle !important; 
    -webkit-mask-size: contain !important; 
    mask-size: contain !important; 
    -webkit-mask-repeat: no-repeat !important; 
    mask-repeat: no-repeat !important; 
    -webkit-mask-position: center !important; 
    mask-position: center !important; 
    opacity: 1 !important; 
}
table.dataTable thead th.sorting::after { background-color: #d1d5db !important; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm238-64H41c-21.4 0-32.1-25.9-17-41l119-119c9.4-9.4 24.6-9.4 33.9 0l119 119c15.1 15.1 4.4 41-17 41z'/%3E%3C/svg%3E") !important; mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm238-64H41c-21.4 0-32.1-25.9-17-41l119-119c9.4-9.4 24.6-9.4 33.9 0l119 119c15.1 15.1 4.4 41-17 41z'/%3E%3C/svg%3E") !important; }
table.dataTable thead th.sorting_asc::after { background-color: var(--gc-primary) !important; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M279 224H41c-21.4 0-32.1-25.9-17-41l119-119c9.4-9.4 24.6-9.4 33.9 0l119 119c15.1 15.1 4.4 41-17 41z'/%3E%3C/svg%3E") !important; mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M279 224H41c-21.4 0-32.1-25.9-17-41l119-119c9.4-9.4 24.6-9.4 33.9 0l119 119c15.1 15.1 4.4 41-17 41z'/%3E%3C/svg%3E") !important; }
table.dataTable thead th.sorting_desc::after { background-color: var(--gc-primary) !important; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41z'/%3E%3C/svg%3E") !important; mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41z'/%3E%3C/svg%3E") !important; }

/* --------------------------------------------------------------------------
   5. 全局布局、侧边栏与顶栏 (Layout & Navigation)
-------------------------------------------------------------------------- */
.gc-layout { display: flex !important; flex-direction: row !important; min-height: 100vh !important; width: 100% !important; }
.gc-main, .gc-main-full { flex: 1 !important; min-width: 0 !important; display: flex !important; flex-direction: column !important; }
.gc-panel { background: var(--gc-panel) !important; border: 1px solid var(--gc-border) !important; margin-bottom: 24px; }
.gc-panel-header { padding: 14px 20px !important; border-bottom: 1px solid var(--gc-border) !important; font-size: var(--gc-fs-base) !important; color: var(--gc-text); }
.gc-desktop-only, .gc-mobile-only { display: block; }
.gc-mobile-trigger { background: transparent; border: none; color: var(--gc-text); padding: 4px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: 0.2s; }
.gc-mobile-trigger i { font-size: 26px !important; } /* ★ 修复：手机端汉堡菜单变大 */
.gc-mobile-trigger:hover { color: var(--gc-primary); }

/* 侧边栏 */
.gc-sidebar { background: var(--gc-panel) !important; border-right: 1px solid var(--gc-border) !important; width: 260px !important; min-width: 260px !important; flex-shrink: 0 !important; transition: width 0.3s ease !important; overflow-y: auto !important; overflow-x: hidden !important; }
.gc-sidebar-top { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 12px 20px !important; min-height: 64px !important; border-bottom: 1px solid var(--gc-border) !important; }
.gc-logo { display: flex !important; align-items: center !important; width: calc(100% - 40px) !important; overflow: hidden !important; text-decoration: none !important; color: var(--gc-text) !important; }
.gc-logo-img { max-height: 40px !important; width: auto !important; max-width: 100% !important; object-fit: contain !important; }
.gc-logo-text { font-size: var(--gc-fs-base) !important; font-weight: 500 !important; }
.gc-sidebar-toggle { flex-shrink: 0 !important; background: transparent !important; border: none !important; color: var(--gc-muted) !important; cursor: pointer !important; padding: 4px !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: 0.2s !important; }
.gc-sidebar-toggle i { font-size: 22px !important; } /* ★ 修复：收起菜单图标变大 */
.gc-sidebar-toggle:hover { color: var(--gc-primary) !important; }

/* 左侧菜单项 */
.gc-nav-parent { width: 100% !important; display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 12px 20px !important; background: transparent !important; border: none !important; color: var(--gc-text) !important; cursor: pointer !important; font-size: var(--gc-fs-base) !important; }
.gc-nav-parent-left { display: flex !important; align-items: center !important; gap: 12px !important; }
.gc-nav-parent:hover { color: var(--gc-primary) !important; }
.gc-nav-item { display: flex !important; align-items: center !important; padding: 10px 20px 10px 48px !important; color: var(--gc-text) !important; text-decoration: none !important; font-size: var(--gc-fs-base) !important; border-left: 3px solid transparent !important; }
.gc-nav-group > .gc-nav-item { padding-left: 20px !important; }
.gc-nav-text { font-size: 14px !important; color: var(--gc-text) !important; }
.gc-nav-item.active { color: var(--gc-primary) !important; background: rgba(22, 163, 74, 0.04) !important; border-left-color: var(--gc-primary) !important; font-weight: 500 !important; }
.gc-nav-item:hover { color: var(--gc-primary) !important; background: rgba(0,0,0,0.02) !important; }
.gc-nav-icon { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 24px !important; margin-right: 12px !important; opacity: 0.8 !important; }
.gc-nav-icon i, .gc-nav-item .gc-nav-icon i { font-size: 16px !important; opacity: 0.8 !important; }
.gc-badge { margin-left: auto !important; background: var(--gc-primary) !important; color: #ffffff !important; font-size: 11px !important; padding: 2px 6px !important; }
.gc-nav-children { display: none; background: rgba(0, 0, 0, 0.02) !important; border-top: 1px solid rgba(0,0,0,0.02) !important; border-bottom: 1px solid rgba(0,0,0,0.02) !important; }

/* 侧边栏极致收缩 */
.gc-sidebar.gc-sidebar-collapsed { width: 64px !important; min-width: 64px !important; }
.gc-sidebar.gc-sidebar-collapsed .gc-logo, .gc-sidebar.gc-sidebar-collapsed .gc-logo-text, .gc-sidebar.gc-sidebar-collapsed .gc-nav-text, .gc-sidebar.gc-sidebar-collapsed .gc-badge, .gc-sidebar.gc-sidebar-collapsed .gc-nav-arrow { display: none !important; }
.gc-sidebar.gc-sidebar-collapsed .gc-sidebar-toggle { display: flex !important; margin: 0 auto !important; padding: 8px !important; }
.gc-sidebar.gc-sidebar-collapsed .gc-nav-parent, .gc-sidebar.gc-sidebar-collapsed .gc-sidebar-top { justify-content: center !important; padding-left: 0 !important; padding-right: 0 !important; }
.gc-sidebar.gc-sidebar-collapsed .gc-nav-item { padding-left: 20px !important; }
.gc-sidebar.gc-sidebar-collapsed .gc-nav-icon { margin-right: 0 !important; }

/* 顶栏控制 */
.lc-topbar-wrapper { display: flex; flex-direction: column; width: 100%; z-index: 999; background: var(--gc-panel) !important; border-bottom: 1px solid var(--gc-border) !important; }
.lc-topbar-main { display: flex; align-items: center; justify-content: space-between; height: 64px; padding: 0 24px; background: var(--gc-panel); border-bottom: 1px solid var(--gc-border); }
.lc-topbar-left { display: flex; align-items: center; gap: 48px; }
.lc-topbar-right { display: flex; align-items: center; gap: 16px; }
.lc-public-logo { display: flex; align-items: center; text-decoration: none; font-weight: 500; font-size: var(--gc-fs-base); color: var(--gc-text);}
.lc-public-logo img { height: 40px; width: auto; display: block; max-width: none;}
.lc-public-menu { display: flex; align-items: center; gap: 24px; list-style: none; margin: 0; padding: 0; }
.lc-public-menu a { color: var(--gc-text); font-size: var(--gc-fs-base); text-decoration: none; transition: 0.2s; }
.lc-public-menu a:hover { color: var(--gc-primary); }
.lc-auth-group { display: flex; align-items: center; gap: 12px; }
.lc-btn-text { font-size: var(--gc-fs-base); color: var(--gc-text); text-decoration: none; padding: 8px 12px; transition: 0.2s; }
.lc-btn-text:hover { color: var(--gc-primary); }
.lc-btn-primary { background: #1e293b; color: #ffffff; padding: 8px 20px; font-size: var(--gc-fs-base); text-decoration: none; transition: 0.2s; border: 1px solid #1e293b; white-space: nowrap; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; }
.lc-btn-primary:hover { background: #0f172a; color: #ffffff; border-color: #0f172a; }

.lc-theme-toggle { background: transparent; border: none; color: var(--gc-text); padding: 4px; display: flex; align-items: center; justify-content: center; transition: 0.2s; cursor: pointer; }
.lc-theme-toggle i { font-size: 18px !important; } /* ★ 修复：黑白月亮太阳变大 */
.lc-theme-toggle:hover { color: var(--gc-primary); }

/* 用户下拉菜单 */
.lc-user-wrapper { position: relative; display: flex; align-items: center; cursor: pointer; }
.lc-user-trigger { display: flex; align-items: center; gap: 6px; font-size: var(--gc-fs-base); color: var(--gc-text); font-weight: 500; transition: 0.2s; }
.lc-user-trigger:hover { color: var(--gc-primary); }
.lc-user-meta { text-align: right; }
.lc-user-name { font-weight: 500; display: flex; align-items: center; gap: 4px; font-size: var(--gc-fs-base); color: var(--gc-text); }
.lc-user-name i { font-size: var(--gc-fs-base); color: var(--gc-muted); transition: transform 0.2s ease; }
.lc-user-avatar { width: 25px; height: 25px; display: flex; align-items: center; justify-content: center; background: var(--gc-primary); color: #ffffff; font-weight: 500; font-size: var(--gc-fs-base); }
.lc-dropdown-menu { position: absolute; top: 100%; right: 0; margin-top: 12px; min-width: 160px; background: var(--gc-panel); border: 1px solid var(--gc-border); padding: 6px 0; display: none; z-index: 99999 !important; box-shadow: 0 10px 25px -5px rgba(0,0,0,0.05); list-style: none !important; padding-left: 0 !important; margin-left: 0 !important; }
.lc-dropdown-item { display: flex; align-items: center; padding: 10px 20px; font-size: var(--gc-fs-base); color: var(--gc-text); text-decoration: none; transition: 0.2s; }
.lc-dropdown-item i.ti-point { display: none !important; }
.lc-dropdown-item i:not(.ti-point) { margin-right: 8px; font-size: 15px; opacity: 0.7; }
.lc-dropdown-item:hover { background: var(--gc-bg); color: var(--gc-primary); }
.lc-dropdown-divider { border-top: 1px solid var(--gc-border); margin: 6px 0; }
.lc-dropdown-balance { padding: 12px 20px; background: rgba(22, 163, 74, 0.04); border-bottom: 1px solid var(--gc-border); margin-bottom: 6px; }
.lc-balance-label { font-size: 11px; color: var(--gc-muted); text-transform: uppercase; margin-bottom: 4px; }
.lc-balance-value { font-size: 14px; color: var(--gc-primary); font-weight: 500;}

/* 副信息条 (面包屑) */
.lc-sub-infobar { display: flex; align-items: center; height: 50px; padding: 0 24px; gap: 12px; background: rgba(0, 0, 0, 0.01); border-bottom: 1px solid var(--gc-border); }
.lc-sub-title { font-size: var(--gc-fs-base); font-weight: 500; color: var(--gc-text); white-space: nowrap; letter-spacing: 0.5px; }
.lc-sub-divider { width: 1px; height: 14px; background: var(--gc-border); opacity: 0.8; }
.lc-sub-breadcrumb { font-size: var(--gc-fs-base); color: var(--gc-muted); display: flex; align-items: center; gap: 4px; font-weight: 400; }
.lc-breadcrumb-sep { opacity: 0.5; padding: 0 2px; }
.lc-sub-breadcrumb a { color: var(--gc-muted); text-decoration: none; transition: 0.2s; }
.lc-sub-breadcrumb a:hover { color: var(--gc-primary); }
.lc-sub-breadcrumb .breadcrumb { margin: 0; padding: 0; background: transparent; display: flex; align-items: center; gap: 4px; }
.lc-sub-breadcrumb .breadcrumb-item + .breadcrumb-item::before { content: "•"; color: var(--gc-muted); opacity: 0.5; padding: 0 4px; }

/* 巨幕下拉导航与手机双栏菜单 */
.lc-mega-trigger { position: relative; }
.lc-mega-link { text-decoration: none; font-size: var(--gc-fs-base); font-weight: 500; color: var(--gc-text); display: flex; align-items: center; gap: 4px; transition: color 0.2s; }
.lc-mega-link:hover { color: var(--gc-primary); }
.lc-mega-icon { font-size: var(--gc-fs-base); color: var(--gc-muted); transition: transform 0.2s; }
.lc-mega-trigger:hover .lc-mega-icon { transform: rotate(180deg); }

.lc-ultimate-mega-panel { position: absolute; left: 0; right: 0; top: 0; width: 100%; background: var(--gc-panel); border-bottom: 1px solid var(--gc-border); box-shadow: 0 10px 25px -5px rgba(0,0,0,0.05); visibility: hidden; opacity: 0; transform: translateY(-10px); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); z-index: 99999 !important; }
.lc-ultimate-mega-panel.ultimate-active { visibility: visible !important; opacity: 1 !important; transform: translateY(0) !important; }
.lc-pc-mega-wrapper { display: flex; margin: 0 auto !important; width: 92% !important; max-width: 1800px !important; min-height: 300px; padding: 0 !important; }
.lc-pc-mega-sidebar { width: 220px; border-right: 1px solid var(--gc-border); padding: 20px 0; background: var(--gc-bg); }
.lc-pc-mega-side-item { display: block; padding: 12px 24px !important; color: var(--gc-text); font-size: var(--gc-fs-base); text-decoration: none; border-left: none !important; border-right: 3px solid transparent !important; transition: 0.2s; text-align: right !important; }
.lc-pc-mega-side-item:hover { background: rgba(0,0,0,0.02); }
.lc-pc-mega-side-item.lc-pc-side-active { background: var(--gc-panel); color: var(--gc-primary); border-right-color: var(--gc-primary) !important; font-weight: 500; }
.lc-pc-mega-content-box { flex: 1; padding: 32px; background: var(--gc-panel); }
.lc-pc-mega-pane { display: none; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.lc-pc-mega-pane.lc-pane-active { display: grid; }
.lc-pc-pane-card { display: block; padding: 16px; border: 1px solid var(--gc-border); background: var(--gc-panel); text-decoration: none; transition: 0.2s; }
.lc-pc-pane-card-title { font-size: var(--gc-fs-base); font-weight: 500; color: var(--gc-text); display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; }
.lc-pc-pane-card-headline { font-size: var(--gc-fs-base); color: var(--gc-muted); line-height: 1.5; }
.lc-pure-hot { background: var(--gc-danger); color: #ffffff; padding: 2px 6px; font-size: 10px; font-weight: bold; }

/* 手机端：双栏联动菜单 */
#lc-pure-mobile-double-layout { display: flex; align-items: stretch !important; width: 100%; height: auto !important; min-height: 400px !important; border-bottom: 1px solid var(--gc-border); }
.lc-pure-sidebar { width: 140px !important; background: var(--gc-bg); height: auto !important; overflow-y: visible !important; border-right: 1px solid var(--gc-border); }
.lc-pure-side-item { display: block; padding: 14px 16px; font-size: var(--gc-fs-base); color: var(--gc-text); text-decoration: none; border-left: none !important; border-right: 3px solid transparent !important; }
.lc-pure-side-item.lc-pure-active { background: var(--gc-panel); color: var(--gc-primary); border-right-color: var(--gc-primary) !important; font-weight: 500; }
.lc-pure-content-wrapper { flex: 1; background: var(--gc-panel); height: auto !important; overflow-y: visible !important; }
.lc-pure-panel { padding: 0; }
.lc-pure-accordion { border-bottom: 1px solid var(--gc-border); }
.lc-pure-acc-header { display: flex; justify-content: space-between; padding: 14px 16px; font-size: var(--gc-fs-base); font-weight: 500; color: var(--gc-text); background: rgba(0,0,0,0.02); cursor: pointer; }
.lc-pure-acc-header i { transition: transform 0.2s; }
.lc-pure-acc-content { padding: 12px; background: var(--gc-panel); }
.lc-pure-card { display: block; padding: 12px; border: 1px solid var(--gc-border); margin-bottom: 10px; text-decoration: none; }
.lc-pure-card:last-child { margin-bottom: 0; }
.lc-pure-card-name { font-size: var(--gc-fs-base); font-weight: 500; color: var(--gc-text); display: flex; justify-content: space-between; }
.lc-pure-card-desc { font-size: 11px; color: var(--gc-muted); margin-top: 4px; }
.lc-mobile-panel { padding: 16px 24px 24px; background: var(--gc-panel); border-bottom: 1px solid var(--gc-border); display: none; }
.lc-mobile-panel-inner { display: flex; gap: 12px; width: 100%; padding-bottom: 16px !important; margin-bottom: 16px !important; border-bottom: 1px solid var(--gc-border) !important; }
.lc-mobile-btn-outline { flex: 1; display: flex; justify-content: center; align-items: center; height: 42px; background: transparent; border: 1px solid var(--gc-border); color: var(--gc-text); font-size: var(--gc-fs-base); text-decoration: none; transition: 0.2s; }
.lc-mobile-btn-primary { flex: 1; display: flex; justify-content: center; align-items: center; height: 42px; background: #1e293b; border: 1px solid #1e293b; color: #ffffff; font-size: var(--gc-fs-base); text-decoration: none; transition: 0.2s; }

/* --------------------------------------------------------------------------
   6. 登录页面 (Login)
-------------------------------------------------------------------------- */
.gc-login-page { display: flex; width: 100%; min-height: 100vh; background: transparent; }
.gc-login-left { flex: 1; padding: 60px; background: #f8fafc !important; border-right: 1px solid var(--gc-border) !important; }
.gc-login-right { flex: 1; padding: 60px; background: var(--gc-panel) !important; display: flex; align-items: center; justify-content: center; }


/* --------------------------------------------------------------------------
   7. 深度暗黑模式适配集中区 (Dark Mode Overrides)
-------------------------------------------------------------------------- */
/* ★ 核心修复：暗黑模式 LOGO 智能反转洗白 */
[data-theme="dark"] .gc-logo-img,
[data-theme="dark"] .lc-public-logo img,
[data-theme="dark"] .lc-topbar-left img {
    filter: brightness(0) invert(1) !important;
    transition: filter 0.3s ease !important;
}

[data-theme="dark"] input, [data-theme="dark"] select, [data-theme="dark"] textarea, [data-theme="dark"] .form-control { background-color: #1e293b !important; color: #f8fafc !important; border-color: rgba(255, 255, 255, 0.1) !important; }
[data-theme="dark"] .btn-default { background: #334155 !important; color: #e2e8f0 !important; border-color: rgba(255, 255, 255, 0.1) !important; }
[data-theme="dark"] .btn-default:hover { background: #475569 !important; color: #ffffff !important; }
[data-theme="dark"] .gc-login-left { background: #0f172a !important; border-right-color: rgba(255, 255, 255, 0.05) !important; }
[data-theme="dark"] .gc-login-title, [data-theme="dark"] .gc-login-feature-title { color: #ffffff !important; }
[data-theme="dark"] .gc-login-desc, [data-theme="dark"] .gc-login-feature-text { color: #cbd5e1 !important; }
[data-theme="dark"] .dropdown-menu { background: #111827 !important; border: 1px solid rgba(255, 255, 255, 0.08) !important; }
[data-theme="dark"] .dropdown-item { color: #cbd5e1 !important; }
[data-theme="dark"] .dropdown-item:hover { background: rgba(255, 255, 255, 0.04) !important; color: #ffffff !important;}
[data-theme="dark"] .lc-btn-primary, [data-theme="dark"] .lc-mobile-btn-primary { background: #334155; border-color: #334155; color: #f8fafc; }
[data-theme="dark"] .lc-btn-primary:hover, [data-theme="dark"] .lc-mobile-btn-primary:hover { background: #475569; border-color: #475569; }
[data-theme="dark"] .lc-sub-infobar { background: rgba(255, 255, 255, 0.02); }
[data-theme="dark"] .lc-ultimate-mega-panel, [data-theme="dark"] .lc-pc-mega-content-box, [data-theme="dark"] .lc-pc-pane-card, [data-theme="dark"] .lc-pure-content-wrapper, [data-theme="dark"] .lc-pure-acc-content, [data-theme="dark"] .lc-pure-card { background: var(--gc-panel); border-color: rgba(255,255,255,0.05); }
[data-theme="dark"] .lc-pc-mega-sidebar, [data-theme="dark"] .lc-pure-sidebar { background: var(--gc-bg); border-color: rgba(255,255,255,0.05); }
[data-theme="dark"] .lc-pc-mega-side-item.lc-pc-side-active, [data-theme="dark"] .lc-pure-side-item.lc-pure-active { background: var(--gc-panel); }
[data-theme="dark"] .lc-pure-acc-header { background: rgba(255,255,255,0.02); border-color: rgba(255,255,255,0.05); }
[data-theme="dark"] .lc-mobile-panel-inner { border-bottom-color: rgba(255, 255, 255, 0.05) !important; }
[data-theme="dark"] .lc-pc-mega-content-box { background: #0f172a !important; }
[data-theme="dark"] .lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card { background: #1e293b !important; border: 1px solid rgba(255, 255, 255, 0.05) !important; box-shadow: none !important; }
[data-theme="dark"] .lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card:hover, [data-theme="dark"] .lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card.active { background: #2d3748 !important; border-color: var(--gc-primary) !important; }
[data-theme="dark"] select, [data-theme="dark"] select.form-control, [data-theme="dark"] select.field { background-color: #1e293b !important; color: #f8fafc !important; }
[data-theme="dark"] select option { background-color: #1e293b !important; color: #f8fafc !important; }
[data-theme="dark"] .modal-content { background-color: var(--gc-panel) !important; border: 1px solid rgba(255, 255, 255, 0.1) !important; color: var(--gc-text) !important; box-shadow: 0 10px 40px rgba(0,0,0,0.5) !important; }
[data-theme="dark"] .modal-header, [data-theme="dark"] .modal-body, [data-theme="dark"] .modal-footer { background-color: transparent !important; color: var(--gc-text) !important; border-color: rgba(255, 255, 255, 0.1) !important; }
[data-theme="dark"] .modal-title { color: var(--gc-text) !important; font-size: var(--gc-fs-md) !important; }
[data-theme="dark"] .close { color: var(--gc-text) !important; text-shadow: none !important; opacity: 0.8 !important; }
[data-theme="dark"] .close:hover { color: var(--gc-danger) !important; opacity: 1 !important; }

/* ★ 核心修复：暗黑模式下全局搜索放大镜消失的问题 (强制显现实心灰色) ★ */
[data-theme="dark"] .gc-search-input-group i,
[data-theme="dark"] .gc-search-icon,
[data-theme="dark"] .input-group-text,
[data-theme="dark"] .input-group-prepend i,
[data-theme="dark"] form[action*="knowledgebase"] i.fa-search,
[data-theme="dark"] form[action*="knowledgebase"] .input-group-text {
    color: #94a3b8 !important; 
    background-color: transparent !important;
    border: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 99 !important; 
    font-weight: 900 !important; 
}
[data-theme="dark"] .gc-search-input,
[data-theme="dark"] form[action*="knowledgebase"] input.form-control {
    position: relative !important;
    z-index: 1 !important; 
}

/* --------------------------------------------------------------------------
   8. 全局响应式与移动端断点 (Mobile & Responsive)
-------------------------------------------------------------------------- */
/* 电脑端 (>= 992px) */
@media (min-width: 992px) {
    .gc-mobile-only, .gc-mobile-trigger { display: none !important; } 
}

/* 平板与手机界限 (< 991px) */
@media (max-width: 991px) {
    .gc-desktop-only { display: none !important; }
    .gc-mobile-only { display: block !important; width: 100% !important; } 
    .gc-mobile-trigger { display: flex !important; align-items: center !important; justify-content: center !important; }
    .lc-topbar-right { gap: 12px !important; }
    .lc-dropdown-menu { right: -12px; min-width: 200px; }
    
    .gc-login-page { flex-direction: column; }
    .gc-login-left, .gc-login-right { border-right: none !important; border-bottom: 1px solid var(--gc-border); padding: 40px 24px; }
    .gc-dashboard-grid, .lc-stats-grid { grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
    .lc-main-layout, .lc-left-split-row { grid-template-columns: 1fr !important; }
    .lc-ultimate-mega-panel { display: none !important; }
    .lc-user-trigger .lc-user-meta { display: none !important; }
    
    .gc-sidebar { position: fixed !important; top: 0 !important; left: -260px !important; width: 260px !important; min-width: 260px !important; height: 100vh !important; z-index: 9999 !important; transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; box-shadow: 10px 0 25px rgba(0,0,0,0.1) !important; }
    .gc-sidebar.mobile-active { left: 0 !important; }
    .gc-sidebar-toggle { display: none !important; }
    .gc-sidebar-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.5); z-index: 9998; }
    .gc-sidebar-overlay.active { display: block; }
}

/* 竖向手机终极断点 (< 768px) */
@media (max-width: 768px) {
    .table, .table tbody, .table tr, .table td { display: block !important; width: 100% !important; box-sizing: border-box !important; text-align: left !important; }
    .table thead { display: none !important; } 
    .table tbody tr { background: var(--gc-panel) !important; border: 1px solid var(--gc-border) !important; margin-bottom: 16px !important; padding: 16px !important; }
    .table tbody td { padding: 8px 0 !important; border: none !important; display: flex !important; flex-direction: column !important; align-items: flex-start !important; }
    .table tbody td::before { content: attr(data-label) !important; display: block !important; color: var(--gc-muted) !important; font-size: 11px !important; margin-bottom: 4px; }
    .table tbody td:not([data-label])::before { display: none !important; }
    .gc-user-trigger .gc-user-meta { display: none !important; } 
    .gc-status-group { display: none !important; } 
}

/* ==========================================================================
   9. 大通栏动效与连接线强杀 (Mega Menu Overrides)
   ========================================================================== */
.lc-pc-pane-card:hover,
.lc-pc-pane-card.active,
[data-theme="dark"] .lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card:hover,
[data-theme="dark"] .lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card.active {
    transform: none !important;
    box-shadow: none !important;
}

.lc-ultimate-mega-panel a,
.lc-ultimate-mega-panel a:hover,
.lc-ultimate-mega-panel a:focus,
.lc-ultimate-mega-panel a.active,
.lc-pc-mega-side-item,
.lc-pc-mega-side-item:hover,
.lc-auth-group a,
.lc-auth-group a:hover,
.lc-auth-group a:focus,
.lc-auth-group .lc-btn-text:hover,
.lc-auth-group .lc-btn-primary:hover {
    text-decoration: none !important;
    transform: none !important; 
    box-shadow: none !important; 
}


table.dataTable thead th {
    white-space: nowrap !important; /* 强制表头文字不换行 */
}
table.dataTable thead th.sorting::after,
table.dataTable thead th.sorting_asc::after,
table.dataTable thead th.sorting_desc::after {
    content: "" !important;
    display: inline-block !important;
    position: static !important;    /* ★ 核心：干掉 absolute，变为普通内联元素 */
    float: none !important;         /* ★ 核心：干掉原生的向右浮动 */
    width: 12px !important;
    height: 14px !important;
    margin: 0 0 0 8px !important;   /* ★ 核心：只在左边留出 8px 安全距离，不粘连 */
    vertical-align: middle !important;
    transform: translateY(-2px) !important; /* 微调垂直居中对齐文字 */
    
    /* 恢复颜色与 SVG 掩码 */
    background-color: #d1d5db !important;
    -webkit-mask-size: contain !important; mask-size: contain !important;
    -webkit-mask-repeat: no-repeat !important; mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important; mask-position: center !important;
    opacity: 1 !important;
}
table.dataTable thead th.sorting_asc::after,
table.dataTable thead th.sorting_desc::after {
    background-color: var(--gc-primary) !important;
}
/* 隐藏原生的第二个箭头，防止出现上下双箭头打架 */
table.dataTable thead th.sorting::before,
table.dataTable thead th.sorting_asc::before,
table.dataTable thead th.sorting_desc::before {
    display: none !important;
    content: none !important;
}

/* 2. 彻底修复按钮全屏宽 (图349)：强制压制 WHMCS 原生的 .btn-block 和 Flex 拉伸 */
.gc-panel-body .btn-block,
.gc-invite-box .btn,
.gc-invite-box .lc-btn {
    width: auto !important;
    display: inline-flex !important;
    padding-left: 32px !important;
    padding-right: 32px !important;
    flex: 0 0 auto !important; /* 防止被外层的 display: flex 强行拉伸充满 */
}

/* 让变短后的邀请按钮保持居中显示 */
.gc-invite-box {
    text-align: center !important;
}
/* ==========================================================================
   修复：我的报价列表第一列 (报价单 #) 贴边与对齐问题
   ========================================================================== */
#tableQuotesList th:first-child,
#tableQuotesList td:first-child {
    padding-left: 24px !important; /* 增加左侧安全内边距，避免贴边 */
    text-align: left !important;   /* 强制左对齐，与表头文字保持一致 */
    width: 120px !important;       /* 锁定列宽，防止因为数字太短导致排版比例失调 */
}

/* 顺便修复暗黑模式下，悬浮时的底色高亮层次 */
[data-theme="dark"] #tableQuotesList tbody tr:hover td {
    background: rgba(22, 163, 74, 0.05) !important;
}
/* ==========================================================================
   订单完成页专属 UI (Order Complete - 极致左对齐版)
   ========================================================================== */
/* 重写外框：解除居中，改为纯左对齐，加入左侧高亮边框 */
.gc-complete-layout {
    max-width: 100% !important;
    margin: 24px 0 !important; /* 靠左显示，不再使用 auto 居中 */
    background: var(--gc-panel) !important;
    border: 1px solid var(--gc-border) !important;
    border-left: 1px solid var(--gc-primary) !important; /* 左侧粗边框点缀 */
    padding: 32px 40px !important;
    text-align: left !important; /* 强制左对齐 */
    border-radius: 0 !important; /* 强制直角 */
    box-shadow: none !important;
}

/* 头部横幅：包含图标和标题 */
.gc-complete-header {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px dashed var(--gc-border);
}
.gc-complete-icon {
    font-size: 32px !important;
    color: var(--gc-primary);
    margin-right: 16px !important;
    margin-bottom: 0 !important;
}
.gc-complete-title {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: var(--gc-text) !important;
    margin: 0 !important;
}

/* 描述文本 */
.gc-complete-desc {
    color: var(--gc-muted);
    font-size: 13px !important;
    line-height: 1.6;
    margin-bottom: 16px;
}

/* 订单号高亮显示框 */
.gc-order-number-box {
    background: rgba(128, 128, 128, 0.03);
    border: 1px solid var(--gc-border);
    padding: 16px 20px;
    font-size: 13px !important;
    color: var(--gc-text);
    margin-bottom: 24px;
    display: inline-block; /* 随内容宽度自适应 */
}
.gc-order-number-box span {
    font-size: 18px;
    font-weight: 600;
    color: var(--gc-primary);
    margin-left: 8px;
}

/* 手机端排版缩放 */
@media (max-width: 768px) {
    .gc-complete-layout {
        margin: 20px auto !important; /* 手机端依然保持居中避免贴边 */
        padding: 24px 20px !important;
    }
}
/* ==========================================================================
   批量付款页专属 UI (Mass Pay - 70/30 双栏与极客表格) - 严格防泄漏隔离版
   ========================================================================== */

/* 核心双栏布局 */
.gc-masspay-layout {
    display: flex !important;
    gap: 24px !important;
    align-items: flex-start !important;
    margin-top: 24px !important;
}

/* 左侧账单明细区 (70%) */
.gc-masspay-left {
    flex: 1 !important; 
    background: var(--gc-panel) !important;
    border: 1px solid var(--gc-border) !important;
    padding: 32px !important;
    min-width: 0 !important; 
}

/* 右侧收银操作区 (30%) - 采用粘性悬浮 */
.gc-masspay-right {
    width: 30% !important; 
    flex-shrink: 0 !important;
    position: sticky !important;
    top: 24px !important; 
}

/* 头部标题区 */
.gc-masspay-header {
    margin-bottom: 24px !important;
    border-bottom: 1px solid var(--gc-border) !important;
    padding-bottom: 16px !important;
}

/* ★ 隔离修复：强制限定只在批量付款页内生效，绝不影响其他页面 ★ */
.gc-masspay-layout .gc-list-title {
    font-size: 15px !important;
    font-weight: 400 !important;
    color: var(--gc-text) !important;
    margin: 0 0 8px 0 !important;
}
.gc-masspay-layout .gc-masspay-desc {
    font-size: 13px !important;
    color: var(--gc-muted) !important;
    margin: 0 !important;
}

/* 账单明细表格 */
.gc-masspay-table-wrapper {
    width: 100% !important;
    overflow-x: auto !important;
}
.gc-masspay-table {
    width: 100% !important;
    border-collapse: collapse !important;
}
.gc-masspay-table th {
    border-bottom: 2px solid var(--gc-border) !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    color: var(--gc-muted) !important;
    font-weight: 600 !important;
    background: transparent !important;
}
.gc-masspay-item-row td {
    padding: 16px !important;
    border-bottom: 1px solid var(--gc-border) !important;
    vertical-align: middle !important;
    font-size: 13px !important;
    color: var(--gc-text) !important;
    background: transparent !important;
}
.gc-masspay-item-row:hover td {
    background: rgba(128, 128, 128, 0.02) !important;
}

/* 表格内微元素 */
.gc-masspay-badge {
    background: var(--gc-primary) !important;
    color: #ffffff !important;
    padding: 2px 8px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    margin-right: 12px !important;
    display: inline-block !important;
}
.gc-masspay-indent {
    color: var(--gc-muted) !important;
    margin: 0 12px 0 8px !important;
    opacity: 0.5 !important;
}
.gc-masspay-layout .gc-masspay-empty {
    text-align: center !important;
    padding: 40px !important;
    color: var(--gc-muted) !important;
}

/* 金额与等宽字体排版 */
.gc-masspay-layout .gc-masspay-amount, 
.gc-masspay-layout .gc-amount-mono, 
.gc-masspay-layout .gc-amount-strong, 
.gc-masspay-layout .gc-amount-success {
    font-size: 14px !important;
}
.gc-masspay-layout .gc-amount-strong {
    font-weight: 600 !important;
    color: var(--gc-text) !important;
}
.gc-masspay-layout .gc-amount-success {
    color: var(--gc-primary) !important;
}

/* 小计与汇总行 */
.gc-masspay-totals-row td {
    padding: 10px 16px !important;
    font-size: 13px !important;
    border: none !important;
    background: transparent !important;
}

/* ★ 隔离修复：防止误伤其他页面的 td 边框 ★ */
.gc-masspay-layout .gc-border-top td {
    border-top: 1px solid var(--gc-border) !important;
    padding-top: 20px !important;
}
.gc-masspay-final-row td {
    padding: 20px 16px !important;
    background: rgba(128, 128, 128, 0.03) !important;
    border-top: 2px solid var(--gc-border) !important;
    vertical-align: middle !important;
}

/* ★ 隔离修复：防止误伤其他页面的金额字体（牛一样大） ★ */
.gc-masspay-layout .gc-final-price {
    font-size: 22px !important;
    color: var(--gc-primary) !important;
    font-weight: 600 !important;
}

/* 右侧收银卡片 */
.gc-masspay-checkout-card {
    background: var(--gc-panel) !important;
    border: 1px solid var(--gc-border) !important;
    padding: 24px !important;
}

/* ★ 隔离修复：防止误伤其他结账页的标题和标签 ★ */
.gc-masspay-layout .gc-checkout-title {
    font-size: 15px !important;
    font-weight: 400 !important;
    margin: 0 0 20px 0 !important;
    padding-bottom: 16px !important;
    border-bottom: 1px dashed var(--gc-border) !important;
    color: var(--gc-text) !important;
}
.gc-masspay-layout .gc-checkout-label {
    font-size: 13px !important;
    color: var(--gc-muted) !important;
    margin-bottom: 8px !important;
    display: block !important;
}
.gc-masspay-layout .gc-secure-badge {
    text-align: center !important;
    font-size: 12px !important;
    color: var(--gc-muted) !important;
    margin-top: 20px !important;
}

/* 按钮微调：拉高高度 */
.gc-masspay-layout #btnMassPayMakePayment {
    height: 44px !important;
    font-size: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 手机端响应式堆叠 */
@media (max-width: 991px) {
    .gc-masspay-layout {
        flex-direction: column !important;
    }
    .gc-masspay-right {
        width: 100% !important;
        position: static !important;
    }
    .gc-masspay-left {
        padding: 20px !important;
    }
}
/* ==========================================================================
   全新登录页面专属 UI (左右分栏 + 框内头部彻底靠左 + 按钮高度修复)
   ========================================================================== */

/* 全局大容器 */
.gc-auth-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 200px);
    padding: 150px 20px 60px; /* 页面整体下移 */
    background-color: var(--gc-bg);
}

.gc-auth-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 1200px;
    gap: 80px;
}

/* 左侧：促销文案区 */
/* 左侧大容器 */
.gc-auth-left {
    flex: 1;
    text-align: left !important;
    padding-right: 60px; /* 让左侧文字和右侧登录框保持安全距离，不再拥挤 */
    transform: translateY(-100px); /* 整体稍微向上提一点 */
}

/* 主标题 */
.gc-auth-promo-title {
    font-size: 32px !important; /* 字号加大，撑起气场 */
    font-weight: 700 !important;
    margin-bottom: 12px !important;
    color: var(--gc-text) !important;
}

/* 副标题 */
.gc-auth-promo-desc {
    font-size: 15px;
    color: #64748b; /* 用灰蓝色弱化副标题 */
    margin-bottom: 45px !important; /* 在列表上方留出巨大的“呼吸空间” */
}

/* 列表容器 */
.gc-auth-promo-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 28px; /* ★ 核心技巧：用 gap 直接拉开每个列表项的上下间距 */
}

/* 列表单项 */
.gc-auth-promo-list li {
    display: flex;
    align-items: flex-start; /* 让图标和文字顶部对齐 */
    gap: 16px; /* ★ 核心技巧：图标和文字的左右间距 */
}

/* 列表图标 */
.gc-auth-promo-list li i {
    font-size: 20px;
    color: #10b981; /* 换成现代感的翠绿色对勾，提亮整体视觉 */
    margin-top: 2px; /* 微调图标与文字的垂直对齐 */
}

/* 列表文字内容 */
.gc-auth-promo-list li span {
    font-size: 14px;
    color: #64748b; /* 描述文字用较浅的颜色 */
    line-height: 1.6;
}

/* 列表重点标题加粗 */
.gc-auth-promo-list li span strong {
    font-size: 16px;
    color: var(--gc-text); /* 标题用深色深字 */
    display: block; /* ★ 核心技巧：让加粗标题独立成行 */
    margin-bottom: 4px; /* 标题和描述之间留一点空隙 */
}

/* 右侧：登录面板固定空间 */
.gc-auth-right {
    width: 500px;
    flex-shrink: 0;
}

/* 确保卡片内部头部区域所有元素彻底向左看齐 */
.gc-auth-header-block {
    text-align: left !important;
}

.gc-auth-card-main-title {
    font-size: 20px !important; 
    font-weight: 400 !important;
    text-align: left !important;
    margin-left: 0 !important;
}
.gc-auth-card-subtitle {
    font-size: 13px !important;
    text-align: left !important;
    margin-left: 0 !important;
}

/* 统一输入框内部物理高度 + 直角处理 */
.gc-login-field {
    height: 40px !important;
    font-size: 14px !important;
    border-radius: 0 !important; /* 直角 */
}

/* 包含：邮件地址、密码这两个 Label 标签 */
.gc-auth-right .form-group label {
    font-size: 13px !important;
    text-transform: none !important; /* 防止原生强制全大写 */
}
/* 包含：忘记密码？ 链接 */
.gc-auth-right a[href*="password-reset-begin"] {
    font-size: 13px !important;
}
/* 包含：还没注册？ 以及 创建账户 容器与内部链接 */
.gc-auth-right .mt-4.pt-4.text-center,
.gc-auth-right .mt-4.pt-4.text-center span,
.gc-auth-right .mt-4.pt-4.text-center a {
    font-size: 13px !important;
}

/* 密码框与小眼睛按钮极客拼合 + 直角处理 */
.gc-login-input-group {
    border: 1px solid var(--gc-border) !important;
    border-radius: 0 !important; /* 直角 */
    overflow: hidden;
    background: var(--gc-input);
    transition: all 0.2s;
    display: flex;
}
.gc-login-input-group:focus-within {
    border-color: var(--gc-primary) !important;
}
.gc-login-input-group .form-control {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}
.gc-login-eye {
    border: none !important;
    background: transparent !important;
    color: var(--gc-muted) !important;
    box-shadow: none !important;
    padding: 0 16px !important;
    display: flex;
    align-items: center;
    height: 100% !important;
    outline: none !important;
    border-radius: 0 !important;
}
.gc-login-eye:hover {
    color: var(--gc-primary) !important;
}

/* 拉高登录大按钮的高度 + 直角处理 ★ */
.gc-auth-right #login,
.gc-auth-right button[type="submit"] {
    height: 43px !important;       
    font-size: 14px !important;    
    font-weight: 600 !important;
    border-radius: 0 !important;   /* 强改直角，呼应硬朗风格 */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}
/* 手机端响应式：隐藏左侧，居中登录框，并整体上提 */
@media (max-width: 991px) {
    /* 缩小手机端的顶部留白，把整个容器往上拉 */
    .gc-auth-wrapper {
        padding-top: 60px !important; /* 把原来的 150px 缩小到 60px，你可以根据需要微调这个数值 */
        align-items: flex-start !important; /* 放弃绝对垂直居中，改为靠上对齐，防止键盘遮挡 */
    }

    .gc-auth-container {
        justify-content: center !important; 
        gap: 0;
    }
    
    /* 彻底隐藏左侧文案区 */
    .gc-auth-left {
        display: none !important;
    }
    
    /* 右侧登录框居中 */
    .gc-auth-right {
        width: 100%;
        max-width: 420px;
        margin: 0 auto; 
    }
}
/* ==========================================================================
   注册页专属追加样式（其余全部复用登录页 CSS）
   ========================================================================== */

/* 注册卡片略宽，容纳双列表单 */
.gc-register-box {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}

/* 内部区块分隔线 */
.gc-form-section {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px dashed rgba(226, 232, 240, 0.8);
}

/* 小标题 */
.gc-section-title {
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* 第三方登录居中 */
.gc-register-oauth .providerLinkedLogin {
    display: flex;
    justify-content: center;
    margin-bottom: 24px;
}

/* 折叠按钮 */
.gc-collapse-header {
    cursor: pointer;
    user-select: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.gc-collapse-icon {
    transition: transform 0.3s ease;
    font-size: 13px;
    color: #94a3b8;
}
.gc-collapse-header[aria-expanded="true"] .gc-collapse-icon {
    transform: rotate(180deg);
}
/* 注册页专属：左侧文案区强制顶部对齐，不随高卡片下移 */
.gc-register-page .gc-auth-container {
    align-items: flex-start;
}

.gc-register-page .gc-auth-left {
    transform: translateY(10px); /* 按注册页卡片高度调大 */
}
/* 手机端注册卡片去边距 */
@media (max-width: 768px) {
    .gc-register-box {
        padding: 24px 20px;
        box-shadow: none;
        border: none;
        max-width: 100%;
    }
}
/* ==========================================================================
   全站核弹级去加粗指令 (无差别覆盖所有元素)
   ========================================================================== */

/* 1. 强制所有元素字重为 400，但严格排除所有图标组件以防图标消失 */
*:not(i):not(.fas):not(.far):not(.fal):not(.fab):not(.fa):not(.ti):not([class*="ti-"]):not([class*="fa-"]) {
    font-weight: 400 !important;
}

/* 2. 强行镇压 HTML 原生自带加粗属性的标签 */
b, strong, th, h1, h2, h3, h4, h5, h6, label, dt {
    font-weight: 400 !important;
}
/* ==========================================================================
   修复：手机端双栏导航菜单，激活状态绿线改回左侧
   ========================================================================== */

/* 1. 取消右侧边框占位，改在左侧预留 3px 的透明边框 */
.lc-pure-side-item {
    border-right: none !important;
    border-left: 3px solid transparent !important;
}

/* 2. 激活状态时，彻底干掉右侧绿线，让左侧绿线亮起 */
.lc-pure-side-item.lc-pure-active {
    border-right-color: transparent !important;
    border-left-color: var(--gc-primary) !important;
}
/* ==========================================================================
   修复：大通栏右侧产品卡片（白天模式） Hover 与选中状态边框丢失的问题
   ========================================================================== */
.lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card:hover,
.lc-ultimate-mega-panel .lc-pc-mega-pane a.lc-pc-pane-card.active {
    border-color: var(--gc-primary) !important; /* 唤醒绿色边框 */
    background: rgba(22, 163, 74, 0.03) !important; /* 附加一个极淡的绿色底纹，质感更好 */
}

.social-signin-btns .btn {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}
.bootstrap-switch {
    min-width: 30px !important;
}

.my-custom-affiliate-alert {
    width: 100%;
    display: flex !important;
    justify-content: center !important;
    padding: 10px 0;
}
.my-custom-affiliate-alert {
    width: 100%;
    display: flex !important;
    justify-content: center !important;
    padding: 10px 0;
}
