/* 沉浸式背景 - 加深遮罩适配深色主题 */
body {
    background-color: #0a0a1a;
    background-image:
        linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url('../img/bg.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    position: relative;
    color: #e5e5ea;
}

/* ========== 卡片布局（前台/登录） ========== */
.query-card,
.authorize-card,
.login-card,
.result-box,
.contact-info,
.success-info,
.license-key-box,
.info-box {
    background: rgba(25, 25, 40, 0.55) !important;
    backdrop-filter: blur(24px);
    border-color: rgba(255, 255, 255, 0.06) !important;
}
.query-title,
.authorize-title,
.login-title {
    color: #e5e5ea;
}
.query-title i,
.authorize-title i,
.login-title i {
    color: #0A84FF;
}
.form-label,
.authorize-card .form-label {
    color: #c7c7cc !important;
}
.result-success code {
    background: rgba(48, 209, 88, 0.15);
    color: #e5e5ea;
}
.contact-item {
    color: #98989d;
}
.contact-item i {
    color: #0A84FF;
}
.admin-link a,
.back-link a,
a.text-decoration-none {
    color: #0A84FF;
}
.code-input {
    background: rgba(20, 20, 35, 0.60) !important;
    color: #e5e5ea;
    border-color: rgba(255, 255, 255, 0.08) !important;
}
.bg-light.rounded {
    background: rgba(0, 132, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.06);
}

/* ========== 侧栏 ========== */
.sidebar {
    background: rgba(25, 25, 40, 0.60) !important;
    backdrop-filter: blur(24px);
    border-right-color: rgba(255, 255, 255, 0.06) !important;
    color: #e5e5ea;
}
.sidebar h4 {
    color: #0A84FF;
}
.sidebar .nav-link {
    color: #98989d;
}
.sidebar .nav-link:hover {
    background-color: rgba(10, 132, 255, 0.12);
    color: #0A84FF;
}
.sidebar .nav-link.active {
    background-color: rgba(10, 132, 255, 0.18);
    color: #0A84FF;
}
.sidebar small {
    color: #636366;
}

/* ========== 统计卡片 / 表格卡片 / 表单卡片 ========== */
.stat-card,
.table-card,
.form-card,
.settings-card,
.password-card,
.code-card,
.info-card,
.content-header,
.card {
    background: rgba(25, 25, 40, 0.55) !important;
    backdrop-filter: blur(20px);
    border-color: rgba(255, 255, 255, 0.06) !important;
}
.stat-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}
.stat-card h6,
.stat-card-blue h6,
.stat-card-green h6,
.stat-card-orange h6,
.stat-card-red h6 {
    color: #98989d !important;
}
.stat-card h2 {
    color: inherit;
}
.stat-card-blue { border-left-color: #0A84FF; color: #0A84FF; }
.stat-card-green { border-left-color: #30D158; color: #30D158; }
.stat-card-orange { border-left-color: #FF9F0A; color: #FF9F0A; }
.stat-card-red { border-left-color: #FF453A; color: #FF453A; }
.stat-card-gray { border-left-color: #636366; color: #636366; }
.table-card h4,
.info-card h5,
.card-header h5 {
    color: #e5e5ea;
}
.table-card h4 i,
.info-card h5 i,
.card-header h5 i,
h2 i,
.content-header h3 i {
    color: #0A84FF;
}
.content-header h3 {
    color: #e5e5ea;
}
.section-title {
    color: #0A84FF;
    border-bottom-color: rgba(10, 132, 255, 0.2);
}
.card-header {
    border-bottom-color: rgba(255, 255, 255, 0.06) !important;
}
.card-header.bg-success {
    background: rgba(48, 209, 88, 0.18) !important;
}
.card-header.bg-success h5 {
    color: #30D158;
}
.code-display {
    color: #0A84FF;
    background: rgba(10, 132, 255, 0.08);
    border-color: rgba(10, 132, 255, 0.15);
}
.info-row {
    border-bottom-color: rgba(255, 255, 255, 0.06);
}

/* ========== 表单控件 ========== */
.form-control,
.form-select {
    background: rgba(20, 20, 35, 0.55) !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    color: #e5e5ea !important;
}
.form-control:focus,
.form-select:focus {
    border-color: #0A84FF !important;
    box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.2) !important;
}
.form-control::placeholder {
    color: #636366;
}
.form-check-input:checked {
    background-color: #0A84FF;
    border-color: #0A84FF;
}

/* ========== 按钮 ========== */
.btn-primary {
    background: #0A84FF;
    border: none;
}
.btn-primary:hover {
    background: #0066CC;
}
.btn-secondary {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #0A84FF !important;
}
.btn-secondary:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    color: #0A84FF !important;
}
.btn-danger {
    background: #FF453A;
    border: none;
}
.btn-danger:hover {
    background: #D70015;
}
.btn-success {
    background: #30D158;
    border: none;
}
.btn-success:hover {
    background: #28A745;
}
.btn-info {
    background: rgba(10, 132, 255, 0.12) !important;
    border: none;
    color: #0A84FF !important;
}
.btn-info:hover {
    background: rgba(10, 132, 255, 0.22) !important;
    color: #0066CC !important;
}
.btn-warning {
    background: rgba(255, 159, 10, 0.12) !important;
    border: none;
    color: #FF9F0A !important;
}
.btn-warning:hover {
    background: rgba(255, 159, 10, 0.22) !important;
    color: #CC7A00 !important;
}
.code-card .btn-light {
    background: #0A84FF;
    border: none;
    color: white;
}
.code-card .btn-light:hover {
    background: #0066CC;
}
.btn-query,
.btn-authorize,
.btn-login {
    background: #0A84FF;
}
.btn-query:hover,
.btn-authorize:hover,
.btn-login:hover {
    background: #0066CC;
    box-shadow: 0 4px 12px rgba(10, 132, 255, 0.35);
}

/* ========== 表格 ========== */
.table thead th {
    color: #636366;
    border-bottom-color: rgba(255, 255, 255, 0.08);
}
.table td {
    color: #e5e5ea;
    border-bottom-color: rgba(255, 255, 255, 0.04);
}
.table-hover tbody tr:hover {
    background-color: rgba(10, 132, 255, 0.04);
}

/* ========== Badge 标签 ========== */
.badge.bg-primary { background: rgba(10, 132, 255, 0.2) !important; color: #0A84FF; }
.badge.bg-info { background: rgba(90, 200, 250, 0.2) !important; color: #5AC8FA; }
.badge.bg-success { background: rgba(48, 209, 88, 0.2) !important; color: #30D158; }
.badge.bg-secondary { background: rgba(99, 99, 102, 0.25) !important; color: #98989d; }
.badge.bg-danger { background: rgba(255, 69, 58, 0.2) !important; color: #FF453A; }
.badge.bg-warning { background: rgba(255, 159, 10, 0.2) !important; color: #FF9F0A; }
.badge-active { background-color: #30D158; }
.badge-expired { background-color: #FF453A; }
.badge-suspended { background-color: #FF9F0A; }

/* ========== 分页 ========== */
.pagination .page-link {
    background: rgba(25, 25, 40, 0.50);
    border: none;
    color: #0A84FF;
}
.pagination .page-item.active .page-link {
    background: #0A84FF;
    color: white;
}
.pagination .page-link:hover {
    background: rgba(10, 132, 255, 0.15);
}

/* ========== 提示框 ========== */
.alert {
    background: rgba(25, 25, 40, 0.50);
    border: none;
    color: #e5e5ea;
}
.alert-info {
    background: rgba(10, 132, 255, 0.12) !important;
    color: #0A84FF !important;
}
.alert-danger {
    background: rgba(255, 69, 58, 0.12) !important;
    color: #FF453A !important;
}
.alert-success {
    background: rgba(48, 209, 88, 0.12) !important;
    color: #30D158 !important;
}
.alert-warning {
    background: rgba(255, 159, 10, 0.12) !important;
    color: #FF9F0A !important;
}

/* ========== 颜色辅助类 ========== */
.text-primary { color: #0A84FF !important; }
.text-success { color: #30D158 !important; }
.text-warning { color: #FF9F0A !important; }
.text-danger { color: #FF453A !important; }
.text-muted { color: #636366 !important; }
.text-secondary { color: #98989d !important; }
.page-link { color: #0A84FF; }

/* ========== Bootstrap 表格覆盖 ========== */
.table {
    color: #e5e5ea;
}

/* ========== 密码强度 ========== */
.strength-weak { background-color: #FF453A; }
.strength-medium { background-color: #FF9F0A; }
.strength-strong { background-color: #30D158; }
