/**
 * 管理后台全局样式（纯 CSS，无需 npm run build）
 * 由 layouts/admin.blade.php 引用
 * .admin-module：与各 *-admin 页面一致的标题区，关闭内容区 h1 左边条
 */

.card-shadow {
    box-shadow: 0 12px 40px rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(226, 232, 240, 0.95);
}

.btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #fff;
    background: linear-gradient(135deg, #1d4ed8, #2563eb);
    border-radius: 0.5rem;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: filter 0.15s ease, box-shadow 0.15s ease;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
}

.btn-primary:hover {
    filter: brightness(1.07);
    box-shadow: 0 6px 18px rgba(37, 99, 235, 0.45);
    color: #fff;
}

.btn-success {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #fff;
    background: linear-gradient(135deg, #047857, #059669);
    border-radius: 0.5rem;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: filter 0.15s ease, box-shadow 0.15s ease;
    box-shadow: 0 4px 14px rgba(5, 150, 105, 0.35);
}

.btn-success:hover {
    filter: brightness(1.07);
    color: #fff;
}

.btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.9rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #334155;
    background: #fff;
    border: 1px solid #cbd5e1;
    border-radius: 0.5rem;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-outline:hover {
    background: #f8fafc;
    border-color: #94a3b8;
    color: #0f172a;
}

.stat-card {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 40px rgba(15, 23, 42, 0.12);
}

.status-active {
    padding: 0.125rem 0.5rem;
    display: inline-flex;
    align-items: center;
    font-size: 0.75rem;
    line-height: 1.25rem;
    font-weight: 600;
    border-radius: 9999px;
    background: #dcfce7;
    color: #166534;
}

.status-inactive {
    padding: 0.125rem 0.5rem;
    display: inline-flex;
    align-items: center;
    font-size: 0.75rem;
    line-height: 1.25rem;
    font-weight: 600;
    border-radius: 9999px;
    background: #fee2e2;
    color: #991b1b;
}

.type-global {
    padding: 0.125rem 0.5rem;
    display: inline-flex;
    font-size: 0.75rem;
    line-height: 1.25rem;
    font-weight: 600;
    border-radius: 9999px;
    background: #dbeafe;
    color: #1e40af;
}

.type-merchant {
    padding: 0.125rem 0.5rem;
    display: inline-flex;
    font-size: 0.75rem;
    line-height: 1.25rem;
    font-weight: 600;
    border-radius: 9999px;
    background: #f1f5f9;
    color: #1e293b;
}

@media (max-width: 1023px) {
    .admin-sidebar-open .admin-sidebar {
        transform: translateX(0);
    }

    .admin-sidebar-open .admin-sidebar-overlay {
        opacity: 1;
        pointer-events: auto;
    }
}

/* -------------------------------------------------------------------------
 * 内容区统一润色（各业务 Blade 未改结构，靠 main.admin-content 作用域生效）
 * ------------------------------------------------------------------------- */

.admin-content h1.text-2xl,
.admin-content h1.text-xl {
    color: #0f172a;
    letter-spacing: -0.02em;
    border-left: 4px solid #6366f1;
    padding-left: 0.65rem;
    margin-left: -0.15rem;
}

/* 子模块自带标题区，关闭全局 h1 左边条以免重复 */
.product-admin h1.text-2xl,
.product-admin h1.text-xl,
.country-admin h1.text-2xl,
.country-admin h1.text-xl,
.numbers-admin h1.text-2xl,
.numbers-admin h1.text-xl,
.renewal-admin h1.text-2xl,
.renewal-admin h1.text-xl,
.coupon-admin h1.text-2xl,
.coupon-admin h1.text-xl,
.admin-module h1.text-2xl,
.admin-module h1.text-xl {
    border-left: none;
    padding-left: 0;
    margin-left: 0;
}

.admin-content > .mb-8 > p.text-gray-500,
.admin-content p.text-gray-500.mt-1 {
    color: #64748b;
}

/* 筛选 / 表单卡片：与顶栏同系的浅底 */
.admin-content .bg-white.rounded-xl.card-shadow,
.admin-content .bg-white.rounded-2xl.card-shadow,
.admin-content .bg-white.rounded-lg.card-shadow {
    background: linear-gradient(180deg, #ffffff 0%, #fafbff 100%);
}

/* 数据表：深色表头（与侧栏顶栏一致） */
.admin-content table.min-w-full thead {
    background: linear-gradient(135deg, #1e293b 0%, #312e81 55%, #1e3a5f 100%) !important;
}

.admin-content table.min-w-full thead th {
    color: #e2e8f0 !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}

.admin-content table.min-w-full tbody tr {
    transition: background-color 0.12s ease;
}

.admin-content table.min-w-full tbody tr:nth-child(even) {
    background-color: #f8fafc;
}

.admin-content table.min-w-full tbody tr:hover {
    background-color: #eef2ff !important;
}

.admin-content table.min-w-full tbody td {
    border-color: #e2e8f0;
}

/* 主操作链接：从默认蓝改为靛青 */
.admin-content a.text-blue-600 {
    color: #4f46e5 !important;
    font-weight: 500;
}

.admin-content a.text-blue-600:hover,
.admin-content a.hover\:text-blue-900:hover {
    color: #3730a3 !important;
}

.admin-content a.text-green-600 {
    color: #059669 !important;
}

.admin-content a.text-green-600:hover,
.admin-content a.hover\:text-green-900:hover {
    color: #065f46 !important;
}

/* 表单控件：统一圆角与聚焦色 */
.admin-content select.border-gray-300,
.admin-content input.border-gray-300,
.admin-content textarea.border-gray-300 {
    border-color: #cbd5e1;
    border-radius: 0.5rem;
}

.admin-content select:focus,
.admin-content input:focus,
.admin-content textarea:focus {
    outline: none;
    border-color: #6366f1;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
}
