/* ==========================================================================
   客户门户企业级覆写（与官网同一设计语言）
   ========================================================================== */

.customer-sidebar {
    background: #0A2540 !important;
    border-right: 0 !important;
}
.customer-sidebar .sidebar-brand {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    padding: 1rem 1.25rem !important;
}
.customer-sidebar .sidebar-brand-icon {
    background: #fff !important;
    color: var(--ent-navy) !important;
    font-weight: 800 !important;
    border-radius: 4px !important;
}
.customer-sidebar .sidebar-brand-text {
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
}
.customer-sidebar .sidebar-brand-sub {
    color: #94A3B8 !important;
    font-size: 0.625rem !important;
    letter-spacing: 0.14em !important;
}
.customer-sidebar .sidebar-section-title {
    color: #C9A961 !important;
    font-size: 0.625rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    padding: 1rem 1.25rem 0.5rem !important;
}
.customer-sidebar .nav-link {
    color: #E2E8F0 !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    padding: 0.625rem 1.25rem !important;
    border-left: 3px solid transparent !important;
    border-radius: 0 !important;
    transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease !important;
}
.customer-sidebar .nav-link:hover {
    color: #FFFFFF !important;
    background: rgba(255, 255, 255, 0.1) !important;
}
.customer-sidebar .nav-link.active {
    color: #FFFFFF !important;
    background: rgba(201, 169, 110, 0.2) !important;
    border-left-color: #C9A961 !important;
}
.customer-sidebar .nav-link i {
    color: #C9A961 !important;
}
.customer-sidebar .nav-link.active i { color: #E8C88A !important; }
.customer-sidebar .sidebar-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}
.customer-sidebar .sidebar-footer .nav-link {
    color: #FCA5A5 !important;
}

/* 顶栏 */
.customer-header {
    background: #fff !important;
    border-bottom: 1px solid var(--ent-line) !important;
    box-shadow: 0 1px 12px rgba(10, 22, 40, 0.04) !important;
}
.customer-header .page-title-text {
    color: var(--ent-ink) !important;
    font-weight: 800 !important;
    letter-spacing: -0.015em !important;
}
.customer-header .sidebar-toggle-btn {
    color: var(--ent-ink-2) !important;
}
.customer-header .user-name { color: var(--ent-ink-2) !important; font-weight: 600 !important; }

/* 主区 */
.customer-main { background: var(--ent-paper-2) !important; }

/* 卡片与表格 */
.customer-main .card {
    border: 1px solid var(--ent-line) !important;
    border-radius: 0.5rem !important;
    box-shadow: 0 1px 3px rgba(10, 22, 40, 0.04) !important;
}
.customer-main .card-header {
    background: #fff !important;
    border-bottom: 2px solid var(--ent-ink) !important;
    font-weight: 800 !important;
    color: var(--ent-ink) !important;
    letter-spacing: -0.01em !important;
}
.customer-main .table thead th {
    background: var(--ent-paper-2) !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    color: var(--ent-ink-2) !important;
    border-bottom: 2px solid var(--ent-ink) !important;
    text-transform: uppercase !important;
}
.customer-main .btn-primary {
    background: var(--ent-navy) !important;
    border-color: var(--ent-navy) !important;
    font-weight: 700 !important;
}
.customer-main .btn-primary:hover {
    background: var(--ent-gold) !important;
    border-color: var(--ent-gold) !important;
    color: #1a1408 !important;
}
.customer-main .btn-outline-primary {
    color: var(--ent-navy) !important;
    border-color: var(--ent-navy) !important;
    font-weight: 600 !important;
}
.customer-main .btn-outline-primary:hover {
    background: var(--ent-navy) !important;
    color: #fff !important;
}
.customer-main h1 { font-weight: 900 !important; letter-spacing: -0.03em !important; color: var(--ent-ink) !important; }
.customer-main h2, .customer-main h3 { font-weight: 800 !important; color: var(--ent-ink) !important; letter-spacing: -0.015em !important; }
.customer-main .text-muted { color: var(--ent-ink-3) !important; }

/* 服务线徽标 */
.svc-line-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    padding: 0.25rem 0.625rem;
    border: 1px solid rgba(201, 169, 110, 0.45);
    color: var(--ent-gold);
    background: rgba(201, 169, 110, 0.08);
    border-radius: 9999px;
    white-space: nowrap;
}

/* 仪表盘服务线总览 */
.svc-line-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 1.5rem; }
.svc-line-card {
    background: #fff;
    border: 1px solid var(--ent-line);
    border-top: 3px solid var(--ent-navy);
    padding: 1.25rem;
    text-decoration: none;
    display: block;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.svc-line-card:hover { border-color: var(--ent-gold); box-shadow: 0 8px 24px -8px rgba(10, 22, 40, 0.12); text-decoration: none; }
.svc-line-card-no {
    font-size: 0.625rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    color: var(--ent-gold);
    margin-bottom: 0.5rem;
}
.svc-line-card-name { font-size: 1rem; font-weight: 800; color: var(--ent-ink); margin-bottom: 0.25rem; }
.svc-line-card-desc { font-size: 0.75rem; color: var(--ent-ink-3); line-height: 1.7; }
.svc-line-card-count {
    margin-top: 0.875rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--ent-line);
    font-size: 0.75rem;
    color: var(--ent-ink-3);
}
.svc-line-card-count strong { color: var(--ent-navy); font-size: 1.125rem; font-weight: 900; margin-right: 0.25rem; }

@media (max-width: 991px) {
    .svc-line-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575px) {
    .svc-line-grid { grid-template-columns: 1fr; }
}
