169 lines
6.0 KiB
CSS
169 lines
6.0 KiB
CSS
/* ════════════════════════════════════════════════════════
|
||
* page-monthly-summary.css — Turn A
|
||
* ────────────────────────────────────────────────────────
|
||
* monthly_summary_analysis.html 內嵌 <style> 的 token 化版本。
|
||
* 對應 data-page-group="analytics"(caramel/honey 分組)。
|
||
*
|
||
* 純 token 替換,不改 class 名稱,可直接替換原 inline <style>。
|
||
* 後續 BEM 命名與結構重構放在 Turn B 的 -bem.css。
|
||
* ════════════════════════════════════════════════════════ */
|
||
|
||
/* ── 1. 頁面外殼 ──────────────────────────────────────── */
|
||
.monthly-analysis-page {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: var(--momo-space-4, 18px);
|
||
}
|
||
|
||
/* ── 2. Hero(標題 + 版本標籤) ────────────────────────── */
|
||
.monthly-analysis-hero {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1fr) auto;
|
||
gap: var(--momo-space-3, 16px);
|
||
align-items: center;
|
||
padding: var(--momo-space-5, 22px);
|
||
border: 1px solid var(--momo-border-strong);
|
||
border-radius: var(--momo-radius-md, 8px);
|
||
background: var(--momo-surface-raised);
|
||
box-shadow: var(--momo-shadow-soft);
|
||
}
|
||
|
||
.monthly-analysis-title {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 10px;
|
||
margin: 0;
|
||
color: var(--momo-text-primary);
|
||
font-family: var(--momo-font-display);
|
||
font-size: clamp(1.45rem, 2vw, 2.08rem);
|
||
font-weight: var(--momo-font-weight-black, 800);
|
||
letter-spacing: 0;
|
||
}
|
||
|
||
.monthly-analysis-title i {
|
||
color: var(--momo-warm-caramel) !important;
|
||
}
|
||
|
||
.monthly-version-pill {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
gap: 7px;
|
||
border: 1px solid var(--momo-border);
|
||
border-radius: 999px;
|
||
background: rgba(250, 246, 238, 0.7);
|
||
color: var(--momo-text-secondary);
|
||
font-family: var(--momo-font-mono);
|
||
font-size: var(--momo-text-meta, 12px);
|
||
font-weight: var(--momo-font-weight-black, 800);
|
||
padding: 6px 10px;
|
||
}
|
||
|
||
/* ── 3. Card 統一樣式(覆寫 Bootstrap) ────────────────── */
|
||
.monthly-analysis-page .card {
|
||
border: 1px solid var(--momo-border-light) !important;
|
||
border-radius: var(--momo-radius-md, 8px);
|
||
box-shadow: var(--momo-shadow-soft);
|
||
margin-bottom: 1.5rem;
|
||
background: rgba(250, 246, 238, 0.84);
|
||
}
|
||
|
||
.monthly-analysis-page .card-header {
|
||
background: var(--momo-surface-2, rgba(250, 247, 240, 0.88)) !important;
|
||
border-bottom: 1px solid var(--momo-border-light);
|
||
font-weight: var(--momo-font-weight-bold, 700);
|
||
padding: 1.25rem;
|
||
}
|
||
|
||
/* ── 4. Filter Section(深色暖棕) ───────────────────── */
|
||
.monthly-analysis-page .filter-section {
|
||
background: var(--momo-surface-raised);
|
||
border-radius: var(--momo-radius-md, 8px);
|
||
padding: var(--momo-space-4, 20px);
|
||
color: var(--momo-text-inverse, var(--momo-on-accent, #fff8ef));
|
||
margin-bottom: 2rem;
|
||
box-shadow: var(--momo-shadow-deep);
|
||
}
|
||
|
||
.monthly-analysis-page .form-label {
|
||
font-weight: var(--momo-font-weight-semibold, 600);
|
||
font-size: var(--momo-text-body-sm, 0.85rem);
|
||
color: rgba(255, 248, 239, 0.9);
|
||
margin-bottom: 0.4rem;
|
||
}
|
||
|
||
/* ── 5. 自訂 Dropdown(對齊業績分析頁) ─────────────── */
|
||
.monthly-analysis-page .custom-dropdown-btn {
|
||
background-color: var(--momo-on-accent, #fff8ef) !important;
|
||
border: 1px solid var(--momo-border) !important;
|
||
text-align: left;
|
||
position: relative;
|
||
padding: 0.75rem 1.25rem;
|
||
border-radius: var(--momo-radius-md, 8px);
|
||
font-size: 1rem;
|
||
font-weight: var(--momo-font-weight-medium, 500);
|
||
color: var(--momo-text-primary);
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.monthly-analysis-page .custom-dropdown-btn::after {
|
||
position: absolute;
|
||
right: 15px;
|
||
top: 50%;
|
||
transform: translateY(-50%);
|
||
}
|
||
|
||
/* ── 6. Stat / KPI 卡 ─────────────────────────────────── */
|
||
.monthly-analysis-page .stat-card {
|
||
border-left: 4px solid var(--momo-warm-caramel) !important;
|
||
transition: transform 0.3s;
|
||
}
|
||
|
||
.monthly-analysis-page .stat-card:hover {
|
||
transform: translateY(-5px);
|
||
}
|
||
|
||
.monthly-analysis-page .kpi-value {
|
||
font-size: 2.2rem;
|
||
font-weight: var(--momo-font-weight-black, 800);
|
||
color: var(--momo-text-primary);
|
||
font-family: var(--momo-font-mono);
|
||
}
|
||
|
||
/* ── 7. Loading overlay ──────────────────────────────── */
|
||
.monthly-analysis-page #loadingOverlay,
|
||
.loading-overlay {
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
background: rgba(250, 246, 238, 0.8);
|
||
z-index: 9999;
|
||
display: none;
|
||
justify-content: center;
|
||
align-items: center;
|
||
backdrop-filter: blur(2px);
|
||
}
|
||
|
||
/* ── 8. 表頭統一(DataTable / table-light 一視同仁) ── */
|
||
.monthly-analysis-page .table thead th,
|
||
.monthly-analysis-page .table-light th {
|
||
background: var(--momo-surface-2, rgba(250, 247, 240, 0.96)) !important;
|
||
color: var(--momo-text-secondary);
|
||
font-weight: var(--momo-font-weight-black, 800);
|
||
}
|
||
|
||
/* ── 9. 全域微調 ─────────────────────────────────────── */
|
||
.monthly-analysis-page .small {
|
||
font-size: 1rem !important;
|
||
}
|
||
|
||
/* ── 10. 響應式 ──────────────────────────────────────── */
|
||
@media (max-width: 768px) {
|
||
.monthly-analysis-hero {
|
||
grid-template-columns: 1fr;
|
||
}
|
||
}
|