/* ========================================
 * 富友自助进件服务平台 - 样式表
 * 基于 Bootstrap 5 CDN
 * ======================================== */

:root {
    --primary: #2563eb;
    --primary-dark: #1d4ed8;
    --success: #16a34a;
    --danger: #dc2626;
    --warning: #f59e0b;
    --gray-50: #f9fafb;
    --gray-100: #f3f4f6;
    --gray-200: #e5e7eb;
    --gray-600: #4b5563;
    --gray-800: #1f2937;
}
body { background: var(--gray-50); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif; }
.card { border: 1px solid var(--gray-200); border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.card-header { background: #fff; border-bottom: 1px solid var(--gray-200); font-weight: 600; }
.btn-primary { background: var(--primary); border-color: var(--primary); }
.btn-primary:hover { background: var(--primary-dark); border-color: var(--primary-dark); }
.form-label { font-weight: 500; color: var(--gray-800); }
.form-label .text-danger { margin-left: 2px; }
.navbar-brand { font-weight: 700; letter-spacing: 1px; }
.page-header { padding: 20px 0; margin-bottom: 24px; border-bottom: 1px solid var(--gray-200); }
.page-header h2 { margin: 0; font-size: 1.5rem; }
.stat-card { text-align: center; padding: 24px 16px; }
.stat-card .num { font-size: 2rem; font-weight: 700; color: var(--primary); }
.stat-card .label { color: var(--gray-600); margin-top: 4px; }
.badge-status-0 { background: var(--warning); color: #fff; }
.badge-status-1 { background: #3b82f6; color: #fff; }
.badge-status-2 { background: var(--success); color: #fff; }
.badge-status-3 { background: #6366f1; color: #fff; }
.badge-status-4 { background: var(--danger); color: #fff; }
.badge-status-5 { background: #059669; color: #fff; }
.badge-status-6 { background: #6b7280; color: #fff; }
.sidebar { background: var(--gray-800); min-height: 100vh; }
.sidebar a { color: #d1d5db; text-decoration: none; display: block; padding: 10px 20px; border-radius: 6px; margin: 2px 8px; }
.sidebar a:hover, .sidebar a.active { background: rgba(255,255,255,.1); color: #fff; }
#bankSearchResult { max-height: 300px; overflow-y: auto; position: absolute; z-index: 1000; width: 100%; background: #fff; border: 1px solid var(--gray-200); border-radius: 0 0 6px 6px; display: none; }
#bankSearchResult .list-group-item { cursor: pointer; }
#bankSearchResult .list-group-item:hover { background: var(--gray-100); }
.step-indicator { display: flex; justify-content: center; margin-bottom: 30px; }
.step-indicator .step { display: flex; align-items: center; }
.step-indicator .step-num { width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: .9rem; background: var(--gray-200); color: var(--gray-600); }
.step-indicator .step.active .step-num { background: var(--primary); color: #fff; }
.step-indicator .step.done .step-num { background: var(--success); color: #fff; }
.step-indicator .step-line { width: 60px; height: 2px; background: var(--gray-200); margin: 0 8px; }
.step-indicator .step-line.done { background: var(--success); }
