/* 寻风 · 房产看板 明亮换肤
   只作用于网站发布副本（在 board/index.html 里以 link 引入），
   源看板 D:/我的文档/文档/DeepSeek Harness/上海一手房数据看板 一个字节都不改。
   目标：把区域筛选条及以下整片提亮、去掉灰底与重描边，与门户首页的浅色体系统一。 */

:root {
  --bg: #FCFDFF;
  --panel: #FFFFFF;
  --panel-2: #F5F9FF;
  --ink: #26344B;
  --muted: #8794A8;
  --line: #E9EFF7;
  --brand: #2B72E0;
  --brand-2: #0FA89B;
  --warn: #E39426;
  --danger: #E35C54;
  --ok: #18B471;
  --shadow: 0 1px 2px rgba(36,78,150,.03), 0 8px 22px rgba(36,78,150,.05);
  --table-stripe: rgba(43,114,224,.022);
  --table-hover: rgba(43,114,224,.055);
}

/* ---------- 顶部：纯白、淡边界 ---------- */
.top-shell { background: #FFFFFF; box-shadow: 0 1px 0 #EEF3FA; }
.app-header { background: #FFFFFF; border-bottom: 1px solid #EEF3FA; }
.brand-mark {
  background: linear-gradient(135deg, #4A90F7 0%, #1D5FD6 100%);
  box-shadow: 0 3px 10px rgba(43,114,224,.22);
}
.brand-title { color: #1E3A63; }
.brand-sub { color: #98A6B9; }
.nav-link { color: #8D9AB0; }
.nav-link.is-active { color: #2B72E0; border-bottom-color: #2B72E0; }
.snapshot-badge, .icon-btn { background: #FFFFFF; border-color: #E4ECF7; color: #7C8AA0; }
.icon-btn:hover { border-color: #A8C8F5; color: #2B72E0; background: #F5F9FF; }

/* ---------- 区域筛选条：去灰底、去重描边 ---------- */
.filterbar {
  background: linear-gradient(180deg, #F4F8FF 0%, #FFFFFF 100%);
  border-bottom: 1px solid #E9EFF7;
}
.filter-label, .filter-note { color: #97A4B7; }
.chip {
  background: #FFFFFF;
  border-color: #DBE7F6;
  color: #607592;
  box-shadow: 0 1px 2px rgba(43,114,224,.035);
}
.chip:hover { background: #F2F7FF; border-color: #A9C9F5; color: #2B72E0; }
.chip.is-on {
  background: #E9F2FF;
  border-color: #9CC0F2;
  color: #1C62D0;
  box-shadow: none;
}
.btn { background: #FFFFFF; border-color: #E2EAF5; color: #40516B; }
.btn:hover { border-color: #A9C9F5; color: #2B72E0; background: #F5F9FF; }

/* ---------- 主体：白底、淡边界、柔阴影 ---------- */
.app-main { background: #FCFDFF; }
.card, .kpi {
  background: #FFFFFF;
  border-color: #EAF0F8;
  box-shadow: 0 1px 2px rgba(36,78,150,.03), 0 6px 18px rgba(36,78,150,.045);
}
.card-title { color: #2C3B54; }
.card-sub, .kpi-label, .kpi-note { color: #8997AB; }
.kpi-value { color: #1D4ED8; letter-spacing: -.5px; }
.kpi-value .kpi-unit { color: #93A1B5; }

.table-wrap { border-color: #EAF0F8; box-shadow: 0 2px 10px rgba(36,78,150,.03); }
.data-table th { background: #F5F9FF; color: #7C8AA0; border-bottom-color: #EAF0F8; }
.data-table td { border-bottom-color: #F0F4FA; }
.data-table tfoot td { background: #F5F9FF; }
.data-table td.cell-addr { color: #8794A8; }

/* 页脚三行（含本机绝对路径 / 生成器 / 免责声明）对外不展示，改为导航与门户页脚统一收口 */
.app-footer { display: none !important; }

/* ============================================================
 * SVG 图表提亮
 * charts.js 用 setAttribute('fill'|'stroke', color) 把色值写进 SVG 属性，
 * 且颜色来自 app.js 里的硬编码常量（PALETTE / L2_COLOR / PROJECT_STATUS_COLOR
 * 等），CSS 变量完全管不到 —— 这正是「区域筛选条及以下」仍偏暗的原因。
 * SVG 的 presentation attribute 优先级低于 CSS，因此用属性选择器即可
 * 无侵入整体换色：看板源文件与 data/ 一个字节都不改。
 * ============================================================ */

/* 主蓝：住宅 / 即将开售 / 系列 1 */
svg [fill="#1264A3"] { fill: #4A90F7; }
svg [stroke="#1264A3"] { stroke: #4A90F7; }
/* 青绿：办公 / 在售 */
svg [fill="#0E9384"] { fill: #22BCA6; }
svg [stroke="#0E9384"] { stroke: #22BCA6; }
/* 橙：商业 / 暂停销售 */
svg [fill="#DC6803"] { fill: #F5A640; }
svg [stroke="#DC6803"] { stroke: #F5A640; }
/* 灰紫：售完 / 其他 / 未纳入网上销售 —— 面积最大，是「偏暗」的主因 */
svg [fill="#98A2B3"] { fill: #D3DEEE; }
svg [stroke="#98A2B3"] { stroke: #D3DEEE; }
/* 中灰：配套用房 / 户室消失 */
svg [fill="#667085"] { fill: #A6B4C8; }
svg [stroke="#667085"] { stroke: #A6B4C8; }
/* 图表文字与网格 */
svg [fill="#17202A"] { fill: #3E4F6B; }
svg [stroke="#17202A"] { stroke: #3E4F6B; }
svg [fill="#E4E7EC"] { fill: #EEF3FA; }
svg [stroke="#E4E7EC"] { stroke: #EEF3FA; }
svg [fill="#D0D5DD"] { fill: #E2EAF4; }
svg [stroke="#D0D5DD"] { stroke: #E2EAF4; }
svg [fill="#F5F6F8"] { fill: #F8FAFD; }
svg [stroke="#F5F6F8"] { stroke: #F8FAFD; }
/* 其余调色板色：统一提亮、降浓度 */
svg [fill="#7A5AF8"] { fill: #A294FB; }
svg [stroke="#7A5AF8"] { stroke: #A294FB; }
svg [fill="#D92D20"] { fill: #F0756A; }
svg [stroke="#D92D20"] { stroke: #F0756A; }
svg [fill="#12B76A"] { fill: #3FD08F; }
svg [stroke="#12B76A"] { stroke: #3FD08F; }
svg [fill="#F79009"] { fill: #F8B942; }
svg [stroke="#F79009"] { stroke: #F8B942; }
svg [fill="#F04438"] { fill: #F58173; }
svg [stroke="#F04438"] { stroke: #F58173; }
svg [fill="#EE46BC"] { fill: #F582CF; }
svg [stroke="#EE46BC"] { stroke: #F582CF; }
svg [fill="#175CD3"] { fill: #5B9BF8; }
svg [stroke="#175CD3"] { stroke: #5B9BF8; }
svg [fill="#B54708"] { fill: #DDA068; }
svg [stroke="#B54708"] { stroke: #DDA068; }
svg [fill="#EFF8FF"] { fill: #F4F9FF; }
svg [stroke="#EFF8FF"] { stroke: #F4F9FF; }

/* HTML 图例小色块（inline style 写死色值） */
[style*="#98A2B3"] { background-color: #D3DEEE !important; }
[style*="#0E9384"] { background-color: #22BCA6 !important; }
[style*="#1264A3"] { background-color: #4A90F7 !important; }
[style*="#DC6803"] { background-color: #F5A640 !important; }
[style*="#667085"] { background-color: #A6B4C8 !important; }

/* 卡片标题 / 说明文字一并提亮，避免大片近黑文字压暗画面 */
.card-title { color: #3B4C68; }
.card-sub, .chart-note, .kpi-label, .kpi-note { color: #94A2B6; }
