/* หอทำนาย · สัญญาณห้อง → Jev → ไม้จริงบนกราฟ (2026-10-08) · ใช้ตัวแปรสีเดิมของหน้า (--accent --up --down --line …) */
:root{--warn:#f5b65b;--warn-soft:rgba(245,182,91,.12);--rail-bg:#0b2029;--card:#0e2832;--deep:#071a24}

/* ── วางผัง: กราฟ | แผงกลยุทธ์ · ไม้ที่ติดตามใต้กราฟ · ลูกแก้ว AI ลงล่างเต็มแถว ── */
/* ซ้าย = กราฟ → ไม้ที่ติดตาม → ลูกแก้ว AI · ขวา = แผงกลยุทธ์ สูงเท่าฝั่งซ้ายพอดี (เลื่อนการ์ดในแผงเอง ไม่ดันหน้า) */
.forecast-grid{grid-template-columns:minmax(0,1fr) minmax(340px,400px);grid-template-areas:"market rail" "trades rail" "strat rail" "rank rail";grid-template-rows:auto auto auto auto;align-items:stretch}
/* ถ้าเปิดลูกแก้ว AI คืน (เอา hidden ออก) ผังกลับเป็น 4 แถวเอง */
.forecast-grid:has(>.ai-panel:not([hidden])){grid-template-areas:"market rail" "trades rail" "strat rail" "rank rail" "ai rail";grid-template-rows:auto auto auto auto 1fr}
.forecast-grid>.market-panel,.forecast-grid>.room-trades,.forecast-grid>.strategy-panel,.forecast-grid>.rank-panel{align-self:start}
.forecast-grid>.rank-panel{grid-area:rank}
.forecast-grid>.strategy-panel{grid-area:strat}
.forecast-grid>.market-panel{grid-area:market}
.forecast-grid>.room-rail{grid-area:rail}
.forecast-grid>.room-trades{grid-area:trades}
.forecast-grid>.ai-panel{grid-area:ai}
@media(min-width:901px){.forecast-grid>.ai-panel{display:flex;flex-direction:column}}   /* ลูกแก้วอยู่คอลัมน์ซ้าย = เรียงลงตามดีไซน์เดิม ไม่แบ่ง 2 คอลัมน์ (เคยเว้นช่องว่าง) */
@media(max-width:1220px){.forecast-grid{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:900px){.forecast-grid{grid-template-columns:1fr;grid-template-areas:"market" "rail" "trades" "strat" "rank" "ai";grid-template-rows:auto;align-items:start}.forecast-grid:has(>.ai-panel:not([hidden])){grid-template-areas:"market" "rail" "trades" "strat" "rank" "ai";grid-template-rows:auto}}

/* ── แผงขวา ── */
.room-rail{position:relative;min-height:620px;background:var(--rail-bg);contain:size}   /* ไม่ให้การ์ดในแผงดันความสูงแถว — สูงตามฝั่งซ้าย */
.rail-inner{position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;padding:12px}
@media(max-width:900px){.room-rail{min-height:0;contain:none}.rail-inner{position:static}.rail-view{max-height:72vh}}
.rail-top{display:flex;flex-direction:column;gap:8px}
.rail-tabs{display:flex;gap:3px;padding:3px;border-radius:12px;background:#06151e;border:1px solid var(--line)}
.rail-tabs button{flex:1;min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.rail-tabs button[aria-selected="true"]{background:#11303a;color:var(--text);font-weight:600}
.rail-badge{min-width:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:#06151e;font-size:11px;font-weight:700;line-height:18px}
.rail-badge[hidden]{display:none}
.rail-alerts{display:flex;gap:6px;flex-wrap:wrap}
.rail-toggle{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}
.rail-toggle[aria-pressed="true"]{border-color:rgba(107,218,209,.5);background:rgba(107,218,209,.08);color:var(--text)}
.rail-toggle .icon{font-size:17px}
.rail-view{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto}
.rail-view[hidden]{display:none}
.rail-filters{display:flex;flex-wrap:wrap;gap:6px}
.rail-filters button{min-height:32px;padding:0 12px;border-radius:16px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}
.rail-filters button[aria-pressed="true"]{border-color:var(--accent);background:rgba(107,218,209,.12);color:var(--text)}
.room-cards{display:flex;flex-direction:column;gap:10px}
.rail-foot{margin:0}

/* ── การ์ดสัญญาณ ── */
.room-card{border-radius:13px;border:1px solid var(--line);background:var(--card);padding:12px;display:flex;flex-direction:column;gap:10px}
.room-card.fresh{border-color:var(--accent);box-shadow:0 0 0 1px rgba(107,218,209,.25)}
.room-card.compact{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px;padding:8px 12px;background:var(--deep);cursor:pointer;color:var(--muted);font-size:13px;min-height:44px;width:100%;text-align:left;font-family:inherit}
.room-card.compact .rc-mid{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.room-card.compact .rc-sym{font-size:14px}
.room-card.compact:hover{border-color:rgba(107,218,209,.4)}
.room-card.compact .rc-sym{color:var(--text)}
.room-card.compact .rc-right{flex:none;text-align:right;white-space:nowrap;font-size:12px}
.rc-fold{margin-left:6px;min-width:32px;min-height:28px;border-radius:7px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.rc-fold .icon{font-size:16px}
.rc-older{font-size:11px;color:var(--muted);margin:4px 2px 0;letter-spacing:.02em}
.rc-done{padding:8px 10px;border-radius:9px;background:rgba(107,218,209,.08);border:1px solid rgba(107,218,209,.3);font-size:12px;color:var(--text)}
.rc-head{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.rc-head .rc-room{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rc-head .rc-time{margin-left:auto;font-family:'Space Mono',monospace;white-space:nowrap}
.rc-new{padding:1px 8px;border-radius:10px;background:var(--accent);color:#06151e;font-weight:700}
.rc-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.side-pill{padding:3px 11px;border-radius:8px;font-weight:700;font-size:13px}
.side-pill.buy{background:var(--up);color:#06251a}
.side-pill.sell{background:var(--down);color:#2a0a0c}
.side-pill.ghost.buy{background:transparent;color:var(--up);border:1px solid rgba(84,220,167,.5)}
.side-pill.ghost.sell{background:transparent;color:var(--down);border:1px solid rgba(255,130,136,.5)}
.rc-sym{font-family:'Space Mono',monospace;font-size:19px;font-weight:700}
.rc-tag{font-size:12px;color:var(--muted);border:1px solid var(--line);padding:1px 8px;border-radius:10px}
.rc-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.rc-prices div{padding:7px 8px;border-radius:8px;background:var(--deep)}
.rc-prices span{display:block;font-size:11px;color:var(--muted)}
.rc-prices .sl span{color:var(--down)}
.rc-prices .tp span{color:var(--up)}
.rc-prices b{font-family:'Space Mono',monospace;font-size:13px}
.jev-box{padding:10px 12px;border-radius:10px;background:rgba(107,218,209,.06);border:1px solid rgba(107,218,209,.22);display:flex;flex-direction:column;gap:7px}
.jev-box .jev-title{display:flex;justify-content:space-between;font-size:12px}
.jev-box .jev-title b{color:var(--accent)}
.meter{display:flex;align-items:center;gap:10px;font-size:13px}
.meter>span{width:66px}
.meter .bar{flex:1;height:8px;border-radius:4px;background:rgba(141,195,200,.16);overflow:hidden}
.meter .bar i{display:block;height:100%;border-radius:4px;background:var(--up)}
.meter .bar i.low{background:var(--muted)}
.meter b{width:42px;text-align:right;font-family:'Space Mono',monospace}
.jev-note{font-size:11px;color:var(--muted)}
.jev-warn{padding:9px 12px;border-radius:10px;background:var(--warn-soft);border:1px solid rgba(245,182,91,.55);color:#f8d9a6;font-size:13px}
.jev-warn b{color:var(--warn)}
.hold-row>span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.holds{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
.holds button{position:relative;min-height:38px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--muted);font-family:'Space Mono',monospace;font-size:12px;cursor:pointer}
.holds button[aria-pressed="true"]{border-color:var(--accent);background:rgba(107,218,209,.16);color:var(--text);font-weight:700}
.holds button .jev-pick{position:absolute;top:-8px;right:-4px;padding:0 4px;border-radius:6px;background:var(--accent);color:#06151e;font-size:9px;font-family:Anuphan,sans-serif;font-weight:700}
.size-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.size-row .seg{display:flex;padding:2px;border-radius:8px;background:#06151e;border:1px solid var(--line)}
.size-row .seg button{min-height:34px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}
.size-row .seg button[aria-pressed="true"]{background:#11303a;color:var(--text)}
.size-row input{width:76px;min-height:34px;padding:0 8px;border-radius:8px;border:1px solid var(--line);background:#06151e;color:var(--text);font-family:'Space Mono',monospace;font-size:13px}
.rc-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rc-actions button{min-height:46px;border-radius:10px;font:inherit;font-weight:700;font-size:14px;cursor:pointer}
.rc-actions .go.buy{border:0;background:var(--up);color:#06251a}
.rc-actions .go.sell{border:0;background:var(--down);color:#2a0a0c}
.rc-actions .wait{background:transparent;border:1px solid var(--accent);color:var(--accent);font-weight:600}
.rc-actions button:disabled{opacity:.45;cursor:not-allowed}
.rc-status{font-size:12px;color:var(--muted)}

/* ── ตัวเด้ง ── */
.room-pop{position:fixed;top:72px;right:20px;z-index:30;width:360px;max-width:calc(100vw - 32px);padding:14px 16px;border-radius:14px;background:#11303a;border:1px solid var(--accent);box-shadow:0 16px 40px rgba(0,0,0,.45);display:flex;gap:12px;align-items:flex-start;animation:popIn .25s ease}
.room-pop[hidden]{display:none}
.room-pop .pop-ico{width:36px;height:36px;flex:none;border-radius:10px;background:rgba(107,218,209,.15);display:flex;align-items:center;justify-content:center;color:var(--accent)}
.room-pop .pop-body{flex:1;min-width:0}
.room-pop .pop-room{font-size:12px;color:var(--muted)}
.room-pop .pop-main{font-size:15px;font-weight:700;margin:2px 0}
.room-pop .pop-jev{font-size:12px;color:var(--muted)}
.room-pop .pop-actions{display:flex;gap:6px;margin-top:10px}
.room-pop .pop-actions button{min-height:36px;padding:0 14px;border-radius:8px;font:inherit;font-size:13px;cursor:pointer}
.room-pop .pop-view{border:0;background:var(--accent);color:#06151e;font-weight:700}
.room-pop .pop-close{border:1px solid var(--line);background:transparent;color:var(--muted)}
@keyframes popIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:600px){.room-pop{top:auto;bottom:0;right:0;left:0;width:auto;max-width:none;border-radius:18px 18px 0 0;border-width:1px 0 0}}

/* ── แถบคู่ที่ติดตาม + HUD บนกราฟ ── */
.trade-chips{display:flex;gap:6px;flex-wrap:wrap;padding:0 12px 8px}
.trade-chips[hidden]{display:none}
.trade-chips button{display:flex;flex-direction:column;align-items:flex-start;min-height:44px;padding:4px 12px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--text);font:inherit;cursor:pointer}
.trade-chips button[aria-pressed="true"]{border-color:var(--accent);background:rgba(107,218,209,.10)}
.trade-chips b{font-family:'Space Mono',monospace;font-size:13px}
.trade-chips small{font-size:11px}
.trade-hud{position:absolute;z-index:3;left:14px;top:8px;display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;max-width:calc(100% - 110px)}
.trade-hud[hidden]{display:none}
.trade-hud>div{padding:6px 10px;border-radius:12px;background:rgba(6,21,30,.9);border:1px solid var(--line)}
.hud-pnl strong{display:block;font-family:'Space Mono',monospace;font-size:18px;font-weight:700}
.hud-pnl strong.gain{color:var(--up)}
.hud-pnl strong.loss{color:var(--down)}
.hud-pnl small,.hud-time small,.hud-time span{display:block;font-size:11px;color:var(--muted)}
.hud-time strong{font-family:'Space Mono',monospace;font-size:15px}
.hud-bar{width:120px;height:4px;margin:5px 0 3px;border-radius:2px;background:rgba(141,195,200,.18);overflow:hidden}
.hud-bar i{display:block;height:100%;width:0;background:var(--accent)}
.hud-close{display:inline-flex;align-items:center;gap:6px;min-height:38px;align-self:center;padding:0 14px;border-radius:10px;border:1px solid rgba(255,130,136,.6);background:rgba(6,21,30,.92);color:var(--down);font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.hud-close .icon{font-size:16px}
@media(max-width:600px){.trade-hud{left:8px;top:auto;bottom:34px;max-width:calc(100% - 16px)}.hud-bar{width:96px}.hud-pnl strong{font-size:17px}}

/* ── ไม้ที่ติดตาม ── */
.room-trades{padding:14px 16px}
.trades-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.trades-head h2{margin:0;font-size:15px;font-weight:600}
.trades-list{display:flex;flex-direction:column;gap:6px;overflow-x:auto}
.trade-row{display:grid;grid-template-columns:96px 120px minmax(110px,1fr) minmax(110px,1fr) 80px 92px 88px;align-items:center;gap:8px;min-width:680px;padding:9px 12px;border-radius:10px;background:var(--deep);border:1px solid rgba(141,195,200,.12);font-size:13px;color:var(--muted);cursor:pointer}
.trade-row.on{background:rgba(107,218,209,.08);border-color:rgba(107,218,209,.35)}
.trade-row.done{opacity:.7}
.trade-row b{font-family:'Space Mono',monospace;color:var(--text);font-weight:600}
.trade-row .pnl.gain{color:var(--up)}
.trade-row .pnl.loss{color:var(--down)}
.trade-row button{min-height:34px;border-radius:8px;border:1px solid rgba(255,130,136,.5);background:transparent;color:var(--down);font:inherit;font-size:12px;cursor:pointer}
.trade-row .st{font-size:12px}

/* ── โจทย์ถาม Jev ── */
.jev-form{display:flex;gap:8px}
.jev-form input{flex:1;min-width:0;min-height:44px;padding:0 12px;border-radius:11px;border:1px solid var(--accent);background:#06151e;color:var(--text);font:inherit;font-size:14px}
.jev-form .primary{width:auto;margin:0;flex:none;padding:0 18px}
.jev-chips{display:flex;flex-wrap:wrap;gap:6px}
.jev-chips button{min-height:32px;padding:0 12px;border-radius:16px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}
.jev-result{display:flex;flex-direction:column;gap:8px}
.zone-btn{display:block;width:100%;text-align:left;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--deep);color:var(--text);font:inherit;cursor:pointer}
.zone-btn[aria-pressed="true"]{border-color:var(--accent);background:rgba(107,218,209,.10)}
.zone-btn .zb-top{display:flex;align-items:center;gap:8px;font-size:13px}
.zone-btn .zb-range{margin-left:auto;font-family:'Space Mono',monospace}
.zone-btn .zb-pick{padding:0 8px;border-radius:8px;background:var(--accent);color:#06151e;font-size:11px;font-weight:700}
.zone-btn .meter{margin-top:7px;font-size:12px}
.zone-btn .meter>span{width:auto;flex:none;color:var(--muted)}
.plan-card{padding:12px;border-radius:12px;background:var(--card);border:1px solid rgba(107,218,209,.35);display:flex;flex-direction:column;gap:10px}
.plan-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}

/* ── dialog ── */
#roomConfirm h2,#roomCloseDlg h2{margin:0 0 12px;font-size:18px}
#roomConfirmStatus,#roomCloseStatus{min-height:20px;font-size:13px;color:#f5c451;margin:6px 0}
.primary.danger{background:var(--down);border-color:#ffb1b5;color:#2a0a0c}
.room-pick-list{display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow:auto}
.room-pick-list label{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:9px;background:var(--deep);font-size:14px}
.room-pick-list input{width:18px;height:18px;accent-color:var(--accent)}

/* ── สนาม Oracle พับเก็บ ── */
.arena-fold{margin:16px 0;border:1px solid var(--line);border-radius:11px;background:rgba(7,30,39,.5)}
.arena-fold>summary{cursor:pointer;display:flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;color:var(--muted);font-size:14px}
.arena-fold>summary .icon{font-size:18px}
.arena-fold[open]>summary{border-bottom:1px solid var(--line)}
.arena-fold>.arena-panel{margin:0;border:0;border-radius:0}

/* ── เครื่องมือเดิม (Legacy) ให้มีกรอบเหมือนส่วนอื่น ── */
.legacy-tools{margin:16px 0;border:1px solid var(--line);border-radius:11px;background:rgba(7,30,39,.5)}
.legacy-tools>summary{cursor:pointer;display:flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;color:var(--muted);font-size:14px}
.legacy-tools[open]>summary{border-bottom:1px solid var(--line)}
.legacy-tools .legacy-actions{padding:10px 16px 0}
.legacy-tools>.strategy-panel{margin:12px 16px 16px}

/* ── แผงเลือกกลยุทธ์ (ย้ายจาก Legacy มาไว้ใต้ไม้ที่ติดตาม · ย่อให้กะทัดรัด · ระบบเดิมทุกอย่าง) ── */
.forecast-grid>.strategy-panel{margin:0;padding:12px 14px;gap:8px}
.forecast-grid>.strategy-panel .strat-head{align-items:center}
.forecast-grid>.strategy-panel .strat-head h2{font-size:15px}
.forecast-grid>.strategy-panel .strat-head p{margin-top:2px;font-size:11px}
.forecast-grid>.strategy-panel .strat-tools input{height:34px;min-width:150px;font-size:12px}
.forecast-grid>.strategy-panel .strat-aipick{height:34px;padding:0 12px;font-size:12px;white-space:nowrap;flex:none}
.forecast-grid>.strategy-panel .strat-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}
.forecast-grid>.strategy-panel .strat-filters button{flex:none;height:30px;padding:0 10px}
.forecast-grid>.strategy-panel .strat-cards{grid-template-rows:auto;grid-auto-columns:minmax(150px,168px);gap:6px;padding-bottom:4px}
.forecast-grid>.strategy-panel .strat-card{min-height:54px;padding:7px 10px;gap:3px}
.forecast-grid>.strategy-panel .strat-card .strat-name{font-size:12px}
.forecast-grid>.strategy-panel .strat-detail{grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:12px;padding-top:10px}
.forecast-grid>.strategy-panel .strat-title strong{font-size:14px}
.forecast-grid>.strategy-panel .strat-signal strong{font-size:15px}
.forecast-grid>.strategy-panel .strat-risks button{height:32px;font-size:12px}
.forecast-grid>.strategy-panel .lot-stepper button,.forecast-grid>.strategy-panel .lot-stepper input{height:36px}
.forecast-grid>.strategy-panel .big-buy,.forecast-grid>.strategy-panel .big-sell{min-height:52px;font-size:16px}
/* ยังไม่ได้เลือกกลยุทธ์ = ซ่อนรายละเอียด/ปุ่มซื้อขาย (เบราว์เซอร์ที่ไม่รองรับ :has จะเห็นแบบเดิม) */
.forecast-grid>.strategy-panel:not(:has(.strat-card.active)) .strat-detail{display:none}
.forecast-grid>.strategy-panel:not(:has(.strat-card.active))::after{content:"แตะกลยุทธ์เพื่อดูสัญญาณ SL/TP และกดซื้อ/ขาย · หรือกด \"ให้ AI เลือก\"";font-size:12px;color:var(--muted)}
@media(max-width:900px){.forecast-grid>.strategy-panel .strat-detail{grid-template-columns:1fr}}
@media(max-width:580px){.forecast-grid>.strategy-panel .strat-tools input{min-width:0}}

/* ── โซนที่เจ้าของสั่งซ่อน 2026-10-08 (ลูกแก้ว AI · มุมมองของคุณ · สนาม Oracle · แท็บล่าง) — ต้องชนะ display ที่ตั้งไว้ด้านบน ── */
.forecast-grid>.ai-panel[hidden],.decision-strip[hidden],.arena-fold[hidden],.lower-panel[hidden],header nav [hidden]{display:none!important}

/* ── TF ของโจทย์ถาม Jev ── */
.jev-tf{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.jev-tf>span{margin-right:4px}
.jev-tf button{min-width:44px;min-height:32px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--muted);font-family:'Space Mono',monospace;font-size:12px;cursor:pointer}
.jev-tf button[aria-pressed="true"]{border-color:var(--accent);background:rgba(107,218,209,.15);color:var(--text);font-weight:700}

/* ── อันดับกลยุทธ์ ── */
.rank-panel{padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.rank-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rank-head h2{display:flex;align-items:center;gap:8px;margin:0;font-size:15px}
.rank-head h2 .icon{color:var(--accent)}
.rank-head p{margin:2px 0 0}
.rank-period{display:flex;gap:2px;padding:2px;border-radius:9px;background:#06151e;border:1px solid var(--line)}
.rank-period button{min-height:30px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}
.rank-period button[aria-pressed="true"]{background:#11303a;color:var(--text);font-weight:600}
.rank-table-wrap{overflow-x:auto}
.rank-table{width:100%;min-width:600px;border-collapse:collapse;font-size:13px}
.rank-table th{padding:0;text-align:right;border-bottom:1px solid var(--line)}
.rank-table th:nth-child(-n+2){text-align:left}
.rank-table th button{width:100%;min-height:34px;padding:0 8px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;text-align:inherit;white-space:nowrap}
.rank-table th button:disabled{cursor:default}
.rank-table th button[aria-sort="descending"]{color:var(--accent);font-weight:700}
.rank-table td{padding:8px;border-bottom:1px solid rgba(141,195,200,.08);text-align:right;font-family:'Space Mono',monospace;white-space:nowrap}
.rank-table td:nth-child(-n+2){text-align:left;font-family:Anuphan,sans-serif}
.rank-table td.gain{color:var(--up)}
.rank-table td.loss{color:var(--down)}
.rank-table .rk{width:34px;color:var(--muted)}
.rank-table .rk-top{color:#f5c451;font-weight:700}
.rank-tag{margin-left:6px;padding:0 6px;border-radius:6px;border:1px solid var(--line);color:var(--muted);font-size:10px;font-family:Anuphan,sans-serif}
.rank-empty td{text-align:center!important;color:var(--muted);font-family:Anuphan,sans-serif;padding:16px}

/* ── โจทย์ของฉัน (2026-10-08) ── */
.pr-section{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;border:1px solid var(--line);background:var(--card, #0e2832)}
.pr-head{display:flex;align-items:center;gap:8px}
.pr-head h3{margin:0;font-size:14px}
.pr-head .pr-run{margin-left:auto}
.pr-list{display:flex;flex-direction:column;gap:6px}
.pr-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--deep, #071a24)}
.pr-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pr-info b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pr-info small{font-size:11px;color:var(--muted)}
.pr-btns{display:flex;gap:4px;flex:none}
.pr-run{min-height:34px;padding:0 12px;border:0;border-radius:8px;background:var(--accent);color:#06151e;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.pr-ghost{min-height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}
.pr-ghost:hover{color:var(--text)}
.pr-del:hover{color:var(--down);border-color:var(--down)}
.pr-editor{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:10px;border:1px dashed var(--line)}
.pr-editor[hidden]{display:none}
.pr-editor h4{margin:0;font-size:13px}
.pr-field{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted)}
.pr-field input,.pr-field select,.pr-field textarea{min-height:36px;padding:6px 8px;border-radius:8px;border:1px solid var(--line);background:#06151e;color:var(--text);font:inherit;font-size:13px;box-sizing:border-box;width:100%}
.pr-field textarea{resize:vertical}
.pr-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.pr-act{display:flex;gap:6px;flex-wrap:wrap}
.pr-act .pr-run{flex:1}
.skill-line{margin:0;padding:6px 10px;border-radius:8px;background:rgba(107,218,209,.07);font-size:12px;color:var(--muted)}
