/* ============================================================================
   提案版：LOGO 霧藍／淡紫／暖杏 淺色護眼主題（Preview only）
   來源色：heart-logo.png（白底柔霧藍心形）＋ CODEX 提案的色票方向
   載入位置：board.css 之後（同權重者後載入者勝）
   ⚠️ 這是「模擬用的覆蓋層」，不是定案檔；現行 board_web/ 完全沒被改動。
   ============================================================================ */

/* ---------- 1. 色票 ---------- */
:root{
  --bg:#FAFAF8;            /* 暖白 */
  --card:#FFFFFF;          /* 卡片純白 */
  --line:#E4E9F0;          /* 淡霧藍分隔線 */
  --txt:#2C3A47;           /* 深藍灰主文字 */
  --sub:#718093;           /* 霧藍灰次要文字 */
  --accent:#3F6E9E;        /* 霧藍（加深版，白底才看得清）*/
  --gold:#B8860B;          /* ⚠️ 鐵律 #19 原寫 #ffd166，白底上等於看不見，這裡先加深 */
  --hi:#6A4FB6;            /* 淡紫加深版 */
  --up:#D64545;            /* 柔和紅（漲）*/
  --down:#1E9E63;          /* 柔和綠（跌）*/

  --brand-blue:#8AB2D8;    /* LOGO 霧藍（裝飾用）*/
  --brand-purple:#B5A8D5;  /* LOGO 淡紫（裝飾用）*/
  --brand-apricot:#FCE0C5; /* LOGO 暖杏（選中底色）*/
  --brand-apricot-deep:#E9A96B;
}

/* ---------- 2. 底色與外框 ---------- */
body{
  background:radial-gradient(1200px 600px at 82% -12%,#E9F1F9 0%,#FAFAF8 55%) fixed;
  color:var(--txt);
  padding:18px 22px 48px;
}
.aurora{display:none}   /* 淺色版不需要會動的光暈（護眼、靜態）*/

/* ---------- 3. 頂部固定列 ---------- */
.top-dock{background:linear-gradient(180deg,#FAFAF8 86%,rgba(250,250,248,.94) 100%);box-shadow:0 6px 14px rgba(140,160,185,.14)}
.top-dock header,header{background:#FFFFFF;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 3px rgba(140,160,185,.10)}
header h1{color:var(--txt)}
.pill{background:#F2F5F9;border-color:var(--line);color:#5C6E80}
.pill b{color:var(--txt)}
.dot{background:var(--down);box-shadow:none;animation:none}
.dot.off{background:var(--brand-apricot-deep);box-shadow:none}

/* 白底上 screen 混合會讓 LOGO 整顆消失 ⇒ 必須改成 multiply（白色背景自動隱形）*/
.brand-logo{mix-blend-mode:multiply;filter:none}

/* 狀態燈（連線／期貨／個股）：白底要加深才看得見 */
#connPill.conn-online,#futPill.fut-on,#monPill.mon-on{color:#1E9E63}
#connPill.conn-offline,#futPill.fut-off,#monPill.mon-off{color:#D64545}
#futPill.fut-stale,#monPill.mon-stale{color:#C07A00}
#connPill::before,#futPill::before,#monPill::before{background:#9AA9B8}
#connPill.conn-online::before,#futPill.fut-on::before,#monPill.mon-on::before{background:#1E9E63;box-shadow:0 0 0 3px rgba(30,158,99,.16)}
#connPill.conn-offline::before,#futPill.fut-off::before,#monPill.mon-off::before{background:#D64545;box-shadow:0 0 0 3px rgba(214,69,69,.16)}
#futPill.fut-stale::before,#monPill.mon-stale::before{background:#E0A800;box-shadow:0 0 0 3px rgba(224,168,0,.18)}
#reviewPill{color:#9C7412;border-color:#E7D6A8;background:#FDF7E6}
#reviewPill:hover{background:#FBF0D2;border-color:#D9BE7A;color:#7E5C05}

/* 搜尋框：改霧藍細框、白底 */
.stock-search input{background:#FFFFFF;border-color:#C8D5E2;color:var(--txt)}
.stock-search input::placeholder{color:#9AA9B8}
.stock-search input:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(138,178,216,.22)}
.stock-search button{background:#EAF2FA;border-color:#BFD3E6;color:#3D5F80}
.stock-search button:hover{background:#DCEAF7}

/* ---------- 4. 跑馬燈 ---------- */
.ticker-line{background:#FFFFFF;border-color:var(--line)}
.ticker-line.market b{color:#9C7412}
.ticker-line.news b{color:var(--accent)}
.ticker-line.alert b{color:#B03A86}
.ticker-line .ticker-copy,.ticker-link{color:#46586B}
.ticker-line.news .ticker-link.news-item{color:#4B6C8C!important}
.ticker-link.news-tone-0{color:#9C7412}
.ticker-link.news-tone-1{color:#0E7A6B}
.ticker-link.stock-tone-0{color:#B03A86}
.ticker-link.stock-tone-1{color:#9C7412}
.ticker-link.stock-tone-2{color:#0E7A6B}
.ticker-link.stock-tone-3{color:#2F6C9E}
.ticker-link.stock-tone-4{color:#6A4FB6}
.ticker-sep{color:#B7C2CE}
.ticker-line .ticker-sum{color:#54677A}
.ticker-line .ticker-sum-sep{color:#C2CCD6}
.ticker-toggle{background:#EAF2FA;border-color:#BFD3E6;color:#3D5F80}
.ticker-toggle:hover{background:#DCEAF7;color:#2C3A47}

/* ---------- 5. 導覽（三層分類＋戰法鈕）---------- */
.nav-group-label{background:#FFFFFF;border-color:var(--line);color:#5C6E80}
.nav-group:nth-child(1) .nav-group-label{color:#4B6C8C;border-color:#CFDCE8;background:#F2F7FC}
.nav-group:nth-child(2) .nav-group-label{color:#0E7A6B;border-color:#C4E3DC;background:#F0F9F7}
.nav-group:nth-child(3) .nav-group-label{color:#8C6410;border-color:#EADFC0;background:#FDF9EF}
nav button{background:#FFFFFF;border-color:var(--line);color:#5C6E80;box-shadow:none}
nav button:hover{background:#F4F8FC;border-color:var(--brand-blue);color:var(--txt)}
nav button.on{background:var(--brand-apricot);border-color:var(--brand-apricot-deep);color:#5A3B12;box-shadow:none}
.top-dock nav .nav-group-list button{background:#FFFFFF}
.top-dock nav .nav-group-list button:hover{background:#F4F8FC}
.nav-empty{border-color:#D3DBE4;color:#93A2B1}
.nav-count,nav button .nav-count{background:rgba(63,110,158,.10);color:#3D5F80}

/* ---------- 6. 分區卡片與表格 ---------- */
.sections{gap:14px}
.sec{border-color:var(--line);background:#FFFFFF;box-shadow:0 1px 4px rgba(140,160,185,.10);animation:none}
.sec-head{background:#F7FAFD;padding:13px 20px}
.sec-head:hover{background:#EFF5FA}
.sec-head .ti{color:var(--txt)}
.sec-head .date,.sec-head .cnt{color:var(--sub)}
.sec-head .cpy{background:#EAF2FA;border-color:#BFD3E6;color:#3D5F80}
.sec-head .cpy:hover{background:#DCEAF7;color:#2C3A47}
.sec-head .cpy.ok{background:#E4F6EC;border-color:#8ED3AC;color:#1E7B4D}
.sec-head .cpy.bad{background:#FCE9E9;border-color:#E7B0B0;color:#B33B3B}

table{background:#FFFFFF}
thead th{color:var(--sub);border-bottom:1px solid var(--line)}
tbody tr{border-bottom-color:#F0F3F7;animation:none}
tbody tr:hover{background:#F7FAFD}
td{padding:9px clamp(4px,.55vw,9px)}

.c{color:var(--accent)}
.n{color:var(--txt)}
.t,.vol{color:var(--sub)}
.mkt,.subtag{border-color:#D9E1EA;background:#F2F5F9;color:#5C6E80}
.new{color:#C07A00}
th.leg-h,th.hl-h,th.time-h{color:#B03A86}

/* 命中／績效（鐵律 #19 語意不變：命中黃、漲紅跌綠，只把顏色加深到白底看得見）*/
td.hl,td.hl .hi,td.hl .lo,td.hit,td.feng-hit,td.note.hl,td.note.ts,
td.ppx,td.ppx .pxa,td.ppx .pxb,td.px,td.px .pxa,td.px .pxb{color:var(--gold)}
.hi{color:var(--hi)}.lo{color:var(--gold)}.pxa.hi{color:var(--hi)}.pxa.lo{color:var(--gold)}
td.leg1{color:var(--gold)}
td.leg1:hover{background:#FBF3DC;color:#8C6410}
td.ppf.win,td.psc.win,.pfp.win,.pf-diff.win{color:var(--up)}
td.ppf.lose,td.psc.lose,.pfp.lose,.pf-diff.lose{color:var(--down)}
.up .p,.up .chg{color:var(--up)}
.down .p,.down .chg{color:var(--down)}

/* 日期橫帶 */
tr.dayhead td{background:#F2F7FC;color:#3D5F80;border-top-color:var(--line)}
tr.dayhead:hover td{background:#E9F1F9}
tr.dayhead .dcnt{color:var(--sub)}
tr.monthhead td{background:#F2F7FC;color:#3D5F80;border-top-color:var(--line)}
tr.monthhead:hover td{background:#E9F1F9}
tr.monthhead .dcnt{color:var(--sub)}

/* ---------- 7. 均線／標籤色塊（原為深底亮字，白底要反過來）---------- */
.mav{color:#2F6C9E;background:#E8F1F9;border-color:rgba(47,108,158,.28)}
.mas{color:#2F6C9E;background:#E8F1F9}
.mav.maW,.mas.maW{background:#EFEAF9;color:#6A4FB6;border-color:rgba(106,79,182,.30)}
.mav.maM,.mas.maM{background:#FBF0D8;color:#8C6410;border-color:rgba(140,100,16,.30)}
.mas.maLow{background:#E1F4F0;color:#0B7A6B}
.trk.t-up{color:#C05621}.trk.t-mid{color:#9C7412}.trk.t-low{color:#0E7A6B}
.ptrack{color:#6A4FB6}
.itdate{color:var(--sub)}
tr.itnone td{background:#F7FAFD}
tr.itnone td.note{color:var(--sub)}
.lim.up,td.p.limbg-up{background:#D64545;color:#FFFFFF;border-color:#C43A3A;box-shadow:none}
.lim.down,td.p.limbg-down{background:#1E9E63;color:#FFFFFF;border-color:#178753;box-shadow:none}

/* 剔除區 */
.excl{border-top-color:var(--line)}
.excl-bar b,.excl-gt .n{color:#C0504D}
.excl-chip{background:#F4F6F9;border-color:var(--line);color:#5C6E80}

/* 金框聚焦列（心波精選）*/
tr.ticker-focus{outline-color:var(--brand-apricot-deep)}
tr.ticker-focus td{background:linear-gradient(90deg,rgba(252,224,197,.55),rgba(252,224,197,.16))}
tr.ticker-focus td.n.cn .nm{color:#8C6410;text-shadow:none}

/* 滑鼠移過去的整格底色 */
td.p:hover,td.chg:hover,td.vol:hover,td.turn:hover,td.pturn:hover,td.hl:hover,td.hit:hover,
td.note:hover,td.pt:hover,td.t:hover,td.px:hover,td.scorev:hover,td.score:hover,
td.perf:hover,td.pfp:hover,td.ppx:hover,td.ppf:hover,td.psc:hover{background:#EFF5FA;color:var(--txt)}
td.n.cn:hover{background:#F2F7FC}
td.n .nm{border-bottom-color:#BFD3E6}
td.n .nm:hover{color:#0E7A6B;border-bottom-color:#0E7A6B;text-shadow:none}
.buyrec{border-bottom-color:#BFD3E6}
.buyrec:hover{color:#0E7A6B;text-shadow:none}
td.n.cn .cd{color:#9AA9B8}
td.n.cn .code{color:var(--accent)}

/* 浮動表頭 */
.float-head{background:#FFFFFF;border-color:var(--line);box-shadow:0 8px 20px rgba(140,160,185,.22)}

/* 空狀態／頁尾 */
.empty{border-top-color:var(--line);color:var(--sub)}
footer{color:#93A2B1}
tr.flash{animation:none}

/* ---------- 8. 彈窗（基本面／K 線）---------- */
#pfModal,#klineModal{background:rgba(60,75,95,.32)}
#pfCard,#kmCard{background:#FFFFFF;border-color:var(--line);box-shadow:0 24px 70px rgba(90,110,135,.28)}
#pfHead,#kmHead{border-bottom-color:var(--line)}
#pfTitle,#kmTitle{color:var(--txt)}
#pfTitle b,#kmTitle b{color:var(--accent)}
.pf-sec{background:#F8FAFC;border-color:var(--line)}
.pf-sec h4{color:#8C6410}
.pf-lbl{color:var(--sub)}
.pf-v{color:var(--txt)}
.pf-wait{color:#9AA9B8}
.pf-chip,#kmTabs button,#kmIndicators button,#kmHLBtn,#kmFut button,#kmMode button,#kmNav button{background:#F2F5F9;border-color:#D9E1EA;color:#5C6E80}
.pf-chip.mk{color:#9C7412;border-color:#E7D6A8}
#kmTabs button.on,#kmMode button.on,#kmHLBtn.on{background:var(--brand-blue);border-color:var(--brand-blue);color:#FFFFFF}
#kmIndicators button.on,#kmFut button.on{background:#DCEAF7;border-color:#BFD3E6;color:#2C3A47}
#pfClose,#kmClose{border-color:#E7B0B0;background:#FCE9E9;color:#B33B3B}
#pfClose:hover,#kmClose:hover{background:#F7D9D9}
#kmNote{color:#5C7A94}
#bhTip{background:#FFFFFF;border-color:var(--line);box-shadow:0 14px 34px rgba(90,110,135,.22)}
#bhTip td{color:var(--txt)}
#bhTip .bh-t{color:var(--accent)}

/* ---------- 9. 選配：一次只看一個戰法（CODEX 的「中央單一明細區」）----------
   預設關閉；由右上「📐 一次看一區」按鈕切換，切換後只顯示被點到的那一區。 */
body.one-sec .sections .sec{display:none}
body.one-sec .sections .sec.on{display:block}
body.one-sec .sections .sec{scroll-margin-top:0}

/* ---------- 10. 預覽工具列（只存在於預覽頁，不會進正式版）---------- */
#pvBar{position:fixed;right:12px;bottom:12px;z-index:99999;display:flex;gap:6px;align-items:center;
  background:#FFFFFF;border:1px solid var(--line);border-radius:999px;padding:6px 10px;
  box-shadow:0 8px 24px rgba(90,110,135,.22);font-size:12px;color:#5C6E80}
#pvBar b{color:#2C3A47}
#pvBar button{border:1px solid #BFD3E6;background:#EAF2FA;color:#3D5F80;border-radius:999px;
  padding:4px 10px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}
#pvBar button:hover{background:#DCEAF7}
#pvBar button.on{background:var(--brand-apricot);border-color:var(--brand-apricot-deep);color:#5A3B12}

/* 🆕 2026-09-28 整合概念股（垂直共好）：主題可點開（淺色系配色） */
.pf-theme{background:#F2F5F9;border-color:#CBD6E2;color:#5C6E80}
.pf-theme:hover{border-color:#E7D6A8;color:#8C6410}
.pf-theme.on{background:#FFF9EC;border-style:solid;border-color:#E7D6A8;color:#8C6410}
