/* public/assets/css/tools/data/movie-box-office.css */

.mbo-wrapper { padding: 32px; }
.mbo-header { text-align: center; margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--border-color); }
.mbo-title { margin: 0 0 10px 0; font-size: 1.6rem; color: var(--text-main); }
.mbo-subtitle { margin: 0; color: var(--text-muted); font-size: 1rem; line-height: 1.6; }

/* 仪表盘 */
.mbo-dashboard { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 24px; flex-wrap: wrap; gap: 16px; }
.mbo-total-card { background: linear-gradient(135deg, #0f172a, #1e293b); padding: 24px 32px; border-radius: var(--radius-lg); color: #fff; box-shadow: 0 10px 20px rgba(0,0,0,0.1); flex: 1; min-width: 280px; position: relative; overflow: hidden; }
.mbo-total-card::after { content: '🎬'; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); font-size: 5rem; opacity: 0.05; }
.mbo-total-label { font-size: 1rem; color: #94a3b8; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; }
.mbo-total-value { font-size: 2.8rem; font-weight: 800; color: #fde047; font-family: ui-monospace, SFMono-Regular, monospace; line-height: 1; margin-bottom: 8px; }
.mbo-update-time { font-size: 0.85rem; color: #64748b; }

.mbo-btn-refresh { background: var(--primary-color); color: #fff; border: none; border-radius: var(--radius-md); padding: 14px 24px; font-size: 1.05rem; font-weight: bold; cursor: pointer; transition: 0.2s; box-shadow: 0 4px 12px rgba(0, 102, 204, 0.2); flex-shrink: 0; display: flex; align-items: center; gap: 8px; height: 50px; }
.mbo-btn-refresh:hover { background: var(--primary-hover); transform: translateY(-2px); }
.mbo-btn-refresh.loading { animation: pulse 1.5s infinite; pointer-events: none; opacity: 0.8; }
@keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(0.98); } 100% { transform: scale(1); } }

/* 表格容器 */
.mbo-table-container { width: 100%; overflow-x: auto; background: var(--bg-surface); border: 1px solid var(--border-color); border-radius: var(--radius-lg); box-shadow: 0 4px 6px -1px rgba(0,0,0,0.02); }
.mbo-table { width: 100%; border-collapse: collapse; min-width: 600px; }
.mbo-table th { background: #f8fafc; padding: 16px; font-size: 0.95rem; color: var(--text-muted); font-weight: 700; text-align: right; border-bottom: 2px solid var(--border-color); }
.mbo-table td { padding: 16px; font-size: 1.05rem; color: var(--text-main); font-weight: 500; text-align: right; border-bottom: 1px solid var(--border-color); font-family: ui-monospace, SFMono-Regular, monospace; }
.mbo-table tbody tr { transition: background-color 0.2s; }
.mbo-table tbody tr:hover { background-color: #f1f5f9; }
.mbo-table tbody tr:last-child td { border-bottom: none; }

/* 排名与特殊列样式 */
.mbo-rank-badge { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 6px; background: #e2e8f0; color: #475569; font-weight: 800; font-size: 0.9rem; }
.mbo-rank-1 { background: #fef08a; color: #854d0e; box-shadow: 0 2px 4px rgba(234, 179, 8, 0.2); }
.mbo-rank-2 { background: #e2e8f0; color: #334155; box-shadow: 0 2px 4px rgba(148, 163, 184, 0.2); }
.mbo-rank-3 { background: #fed7aa; color: #9a3412; box-shadow: 0 2px 4px rgba(249, 115, 22, 0.2); }

.mbo-movie-title { font-family: ui-sans-serif, system-ui, sans-serif !important; font-weight: 700; color: var(--text-main); font-size: 1.1rem; }
.mbo-movie-days { display: block; font-size: 0.8rem; color: var(--text-muted); font-weight: normal; margin-top: 4px; }
.mbo-highlight { color: #ef4444; font-weight: 800; } /* 单日票房标红 */

/* 骨架屏 */
.mbo-skeleton-container { width: 100%; display: flex; flex-direction: column; gap: 1px; border: 1px solid var(--border-color); border-radius: var(--radius-lg); overflow: hidden; }
.mbo-skeleton-row { height: 60px; background: #f1f5f9; animation: shimmer 1.5s infinite linear; }
@keyframes shimmer { 0% { opacity: 0.5; } 50% { opacity: 1; } 100% { opacity: 0.5; } }

.mbo-error-box { padding: 24px; text-align: center; color: #ef4444; background: #fef2f2; font-weight: bold; }

/* 暗黑模式 */
[data-theme="dark"] .mbo-table-container { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .mbo-table th { background: #0f172a; border-color: #334155; color: #94a3b8; }
[data-theme="dark"] .mbo-table td { border-color: #334155; color: #f8fafc; }
[data-theme="dark"] .mbo-table tbody tr:hover { background-color: #0f172a; }
[data-theme="dark"] .mbo-skeleton-row { background: #1e293b; }
[data-theme="dark"] .mbo-error-box { background: rgba(239, 68, 68, 0.1); }