/* 阅读式行情界面：只重排现有元素；计算、文字和交互职责不进入样式层。 */
:root{--page:#F2F3F5;--paper:#fff;--ink:#252830;--muted:#727782;--rule:#E5E7EB;--accent:#79551F;--buy:#BD2630;--sell:#087850}
body{background:var(--page);color:var(--ink);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
button,input{font:inherit}button{transition:background .15s,border-color .15s;min-height:36px;border-radius:7px;color:var(--ink)}button:hover{border-color:#B7A5A8;color:var(--accent);background:#FAF7F7}button:disabled{opacity:.45}button:focus-visible,input:focus-visible{outline:3px solid #C9A3A8;outline-offset:3px}button.primary{background:var(--ink);border-color:var(--ink);color:white}button.primary:hover{background:#444752;color:white}input{min-width:0}
header{height:72px;padding:0 32px;background:var(--paper);border-bottom:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;position:relative;z-index:10}.brand{display:flex;gap:11px;align-items:center;font-size:22px;letter-spacing:-.6px;font-weight:650}.brand .brand-mark{display:grid;place-items:center;width:29px;height:32px;background:var(--accent);color:#fff;border-radius:6px;font-size:23px;line-height:1;margin:0;transform:none}.header-right{display:flex;align-items:center;gap:18px}.provider{font-size:11px;color:var(--muted)}#navAccount{height:36px;width:36px;min-height:36px;padding:0;border:1px solid #E3D8DA;background:#F4EDEF;border-radius:50%;color:var(--accent);font-size:11px}#localMode{font-size:10px;color:#9397A0;border-left:1px solid var(--rule);padding-left:14px}
.layout{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:1560px;gap:0;padding:0;margin:auto;align-items:start}.layout aside{position:sticky;top:0;max-height:100vh;overflow:auto;padding:34px 21px;background:transparent;border-right:1px solid #E2E4E8}.watch-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.watch-heading h3{font-size:17px;color:var(--ink);margin:0;letter-spacing:0}.watch-heading h3 span{font-weight:400;font-size:12px;color:var(--muted);margin-left:8px}#watchAdd{padding:4px 9px;font-size:12px;min-height:32px}.side-search{display:flex;gap:6px}.side-search #q{flex:1;padding:10px 11px;font-size:12px;border:1px solid #DFE2E7;border-radius:7px;background:white}.side-search #go{padding:7px 9px;font-size:12px}.watch-filters{display:flex;gap:21px;margin:20px 0 15px}.watch-filters button{font-size:12px;min-height:30px;border:0;border-radius:0;background:none;padding:4px 0;color:var(--muted)}.watch-filters button.active{color:var(--ink);border-bottom:2px solid var(--accent)}#watchlist{display:flex;flex-direction:column;gap:5px;margin:0}.watch-item{position:relative;padding:15px 12px;border:1px solid transparent;border-radius:8px}.watch-item.selected{background:white;border-color:#E0DADD;box-shadow:inset 3px 0 0 var(--accent)}.watch-item:hover{background:#FFFFFFAA}.watch-name{display:block;text-align:left;width:100%;border:0;min-height:0;border-radius:0;background:transparent;padding:0 18px 0 0}.watch-name strong{display:block;font-size:14px;font-weight:550}.watch-name small{display:block;font-size:11px;color:#888D98;margin-top:4px}.watch-budget{display:block;min-height:28px;background:transparent;border:0;padding:6px 0 0;font-size:11px;color:#8A5860}.watch-remove{position:absolute;right:7px;top:10px;border:0;background:transparent;min-height:24px;padding:0 4px;color:#A2A4AC;font-size:17px}.empty{font-size:12px;color:var(--muted);line-height:1.9;margin:15px 0}.layout main{min-width:0;padding:38px 42px 70px}
/* 行情信息独立于正文，股价、时间、仓位与操作不相互抢占。 */
.quote-panel{position:relative;margin:0 0 27px;padding:0 0 24px;border-bottom:1px solid #DADDE3}#quoteHeader .card{border:0;background:none;box-shadow:none;margin:0;padding:0}#quoteHeader h1{font-size:26px;letter-spacing:-.7px;font-weight:600;margin:0 0 10px}#quoteHeader .sub{font-size:11px;color:#7A808B;line-height:1.8}#quoteHeader p{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;padding-top:9px;line-height:1.7}#quoteHeader .quote-value{font-size:38px;letter-spacing:-1px;font-weight:500;line-height:1.35;color:#252830}.quote-time{color:#7C828D;font-size:11px}.report-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:13px}.report-actions button{font-size:12px;padding:9px 15px;border-color:#DADCE2;min-height:39px;background:white}#refresh{background:var(--ink);border-color:var(--ink);color:#fff}#refresh:hover{background:#454852}#cacheTag{color:#888D97;font-size:11px;margin-right:6px}.status{max-width:1560px;padding:8px 30px;color:var(--muted);font-size:12px}.status.error{color:var(--buy)}
/* 一张连续报告纸，而不是重复的卡片边框。章节和原有文字完整保留。 */
#report .wrap{max-width:none;padding:0;background:white;border:1px solid #E2E5E9;border-radius:12px;overflow:hidden}#report .card{margin:0;padding:30px 29px 32px;border:0;border-bottom:1px solid #E8E9ED;border-radius:0;box-shadow:none;background:white}#report .card:last-child{border-bottom:0}#report .card:first-child{margin-top:0}#report h2{font-size:19px;font-weight:600;color:var(--ink);padding:0;border:0;letter-spacing:-.35px;margin:0 0 7px;line-height:1.5}#report .sub{font-size:12px;color:#7A818B;margin:0 0 18px;line-height:1.8}#report .wul{margin:0;line-height:1.9}#report .wul>li{font-size:15px}#report .wul>li>ul{padding:0;list-style:none;margin:14px 0 23px}#report .wul>li>ul li{font-size:13px;line-height:1.95;margin:0;padding:9px 0;border-bottom:1px solid #F0F1F4}#report .wul>li>ul li:last-child{border-bottom:0}#report .big{font-size:20px;font-weight:600;color:var(--accent)}#report .svgbox{border:1px solid #E8EAEE;border-radius:9px;margin-top:19px;overflow:hidden}#report .pos{white-space:normal;font-weight:550;color:var(--accent)}#report .badge,#quoteHeader .badge{border-radius:5px;padding:4px 9px;font-size:11px}#report .cgrid{gap:0;margin:16px 0 0;border:1px solid #E4E6EB;border-radius:9px;overflow:hidden}#report .ccol{flex:1 1 0;min-width:0;margin:0;border:0;border-right:1px solid #E4E6EB;border-radius:0;padding:19px 12px;background:#F8FAF9}#report .ccol:last-child{border-right:0}#report .ccol.noc{background:#FAFAFC}#report .clab{font-size:13px;color:#3C414B;font-weight:550}#report .cico{font-size:27px;line-height:1.65}#report .cnote{font-size:12px;color:#545D68;overflow-wrap:anywhere}#report .csub{color:#7A818C;font-size:11px;line-height:1.8}#report .hint{font-size:12px;line-height:1.85;color:#727985;border-top:0;margin-top:13px;padding-top:0}#report ol{font-size:13px;line-height:1.95;margin-top:10px;padding-left:23px}#report ol li{padding:8px 0;border-bottom:1px solid #F0F1F4;margin:0}#report ol li:last-child{border:0}#report ol li::marker{color:#9C8287;font-size:11px;font-weight:600}#report table{margin-top:14px;font-size:13px}#report th{background:#F3F5F7;color:#777E88;font-size:11px;font-weight:500;padding:10px 12px;border-color:#E9EBEF}#report td{padding:15px 12px;border-color:#E9EBEF;line-height:1.75}#report td.act>b{font-weight:600;font-size:13px}#report .act .pos{margin-top:5px;font-size:12px}#report .why{font-size:12px;color:#727A86;line-height:1.85}#report .price-met{background:#F3F8F5}#report .price-check{font-size:10px;color:#33765C;margin-left:0;display:block}#report .action-quote{padding:12px 15px;background:#F5F6F8;border-radius:7px;margin-top:15px}#report .action-quote>b{font-size:24px}#report .dis{font-size:11px;color:#9196A0;border-color:#E5E8EC;padding-top:13px}
/* 图下交易说明常驻：编号与日期在左，句子在右，红绿仅对应买卖。 */
#report .annotated-panel,#chartContent .annotated-panel{border:0}#report .chart-heading{padding:15px 17px 8px;align-items:center}#report .chart-heading strong{font-size:13px;font-weight:550}#report .chart-range{padding:0 17px 13px;color:#9398A1;font-size:10px}#report .chart-range button{font-size:11px;border-color:#E1E4E9}#report .chart-actions{padding:12px 17px;color:#737B86;font-size:11px;background:#FBFCFD;line-height:1.8}#report .signal-evidence,#chartContent .signal-evidence{padding:20px 18px 5px;background:#FAFBFC;border-top:1px solid #E8EBEF}#report .signal-title,#chartContent .signal-title{margin:0 0 8px;font-size:13px;font-weight:600;color:#49525E}#report .recent-explanation,#chartContent .recent-explanation{display:grid;grid-template-columns:130px minmax(0,1fr);column-gap:20px;align-items:start;padding:17px 0;border-top:1px solid #E6E9ED}#report .recent-explanation>strong,#chartContent .recent-explanation>strong{grid-column:1;grid-row:1;font-size:12px;font-weight:600;justify-self:start;padding:3px 9px;border-radius:5px;background:#FBEDEE;color:#A5333D}#report .recent-explanation.signal-sell>strong,#chartContent .signal-sell>strong{background:#E7F3ED;color:#126747}#report .recent-explanation>small,#chartContent .recent-explanation>small{grid-column:1;grid-row:2;margin:6px 0 0 2px;font-size:10px;color:#9097A2}#report .recent-explanation>p,#chartContent .recent-explanation>p{grid-column:2;grid-row:1 / span 2;margin:0;max-width:76ch;font-size:13px;line-height:1.95;color:#555F6B}#report .recent-explanation p b{color:#303945;font-weight:600}
/* 既有弹窗、搜索、账户与移动导航。 */
dialog{border:1px solid #E0E3E9;border-radius:13px;padding:24px;width:min(560px,calc(100vw - 28px));max-height:90vh;overflow:auto;color:var(--ink);box-shadow:0 24px 70px #20263220}dialog::backdrop{background:#1D24314D;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:14px}.dialog-head h2{font-size:18px;margin:0;font-weight:600}.dialog-head button{border:0;background:none;min-height:30px;padding:0 6px;font-size:23px;color:#8A909B}.search-bar{display:flex;gap:8px}dialog input{padding:11px 12px;border:1px solid #DCE1E8;border-radius:7px}#watchQuery{flex:1}.search-result{display:flex;align-items:center;gap:8px;border-bottom:1px solid #EBEEF2;padding:15px 0}.search-result>span{flex:1}.search-result b{font-size:13px;font-weight:550}.search-result small{display:block;color:#8B929C;font-size:11px;margin-top:4px}.search-result button{font-size:12px;padding:6px 9px}.dialog-note{color:#818994;font-size:12px;line-height:1.85}#budgetInput{display:block;width:100%;margin-top:8px}#budgetError{color:var(--buy);font-size:12px}#chartDialog{width:min(1200px,96vw)}#accountDialog .userbox{display:flex;flex-wrap:wrap;white-space:normal;margin:0}#passWrap{position:fixed;inset:0;background:#2227;z-index:101;display:flex;align-items:center;justify-content:center;padding:20px}#passWrap .panel{background:white;padding:24px;border-radius:12px;width:min(440px,100%)}#passWrap h2{display:flex;justify-content:space-between;font-size:18px}#passClose{cursor:pointer}.pwform .f{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.pwform input{padding:10px;border:1px solid #DCE1E8;border-radius:7px}.bottom-nav{display:none}
@media(min-width:821px) and (max-width:1100px){.layout{grid-template-columns:230px minmax(0,1fr)}.layout aside{padding:27px 16px}.layout main{padding:28px 24px 60px}#report .card{padding:25px 20px}#report .recent-explanation{grid-template-columns:100px minmax(0,1fr);column-gap:15px}}
@media(max-width:820px){header{height:62px;padding:0 16px}.brand{font-size:20px;gap:9px}.brand .brand-mark{width:25px;height:28px;font-size:20px}.header-right{gap:10px}.provider{font-size:9px;max-width:104px;line-height:1.5}#localMode{font-size:9px;padding-left:9px}#navAccount{width:31px;height:31px;min-height:31px}.layout{display:block}.layout aside{position:static;border:0;max-height:none;padding:24px 18px 95px}.layout main{padding:24px 11px 95px}body[data-pane="analysis"] .layout aside{display:none}body[data-pane="watch"] .layout main{display:none}.watch-heading h3{font-size:21px}.watch-name strong{font-size:15px}.watch-item{padding:17px 13px}.watch-budget{font-size:12px;padding-top:8px}.quote-panel{padding:0 5px 20px;margin-bottom:18px}#quoteHeader h1{font-size:22px;letter-spacing:-.45px}#quoteHeader .sub{font-size:10px}#quoteHeader p{font-size:11px;gap:8px}#quoteHeader .quote-value{font-size:34px}.quote-time{flex-basis:100%;font-size:10px}.report-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:16px}#cacheTag{flex-basis:100%;font-size:10px}.report-actions button{padding:8px 13px;font-size:12px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:space-around;background:#FFFFFFF2;backdrop-filter:blur(12px);border-top:1px solid var(--rule);padding:9px 15px max(10px,env(safe-area-inset-bottom));z-index:15}.bottom-nav button{border:0;background:none;padding:8px 28px;color:#90949E}.bottom-nav .active{color:var(--accent);font-weight:600}#report .wrap{border-radius:10px}#report .card{padding:23px 13px 25px}#report h2{font-size:17px}#report .sub{font-size:11px;margin-bottom:14px}#report .wul>li{font-size:14px}#report .wul>li>ul li{font-size:12px;line-height:1.9}#report .big{font-size:18px}#report .cgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}#report .ccol{padding:12px 5px}#report .clab{font-size:11px}#report .cico{font-size:23px}#report .cnote,#report .csub{font-size:10px}#report .hint{font-size:11px}#report ol{font-size:12px;padding-left:20px}#report table{font-size:11px}#report th{font-size:10px;padding:8px 6px}#report td{padding:12px 7px}#report td.act>b{font-size:12px}#report .act .pos{font-size:11px}#report .why{font-size:11px}#report .price-check{font-size:10px;white-space:normal}#report .signal-evidence,#chartContent .signal-evidence{padding:17px 12px 3px}#report .recent-explanation,#chartContent .recent-explanation{grid-template-columns:1fr auto;gap:9px 8px;padding:15px 0}#report .recent-explanation>strong,#chartContent .recent-explanation>strong{grid-column:1;grid-row:1}#report .recent-explanation>small,#chartContent .recent-explanation>small{grid-column:2;grid-row:1;margin:5px 0 0}#report .recent-explanation>p,#chartContent .recent-explanation>p{grid-column:1 / span 2;grid-row:2;font-size:12px;line-height:1.95}#report .chart-heading{padding:12px 11px 8px}#report .chart-heading strong{font-size:12px}#report .chart-range{padding:0 11px 10px;flex-wrap:wrap}#report .chart-actions{padding:11px;font-size:10px}.status{padding:8px 16px}.search-result{flex-wrap:wrap}.search-result>span{min-width:130px}.userbox{width:auto!important}dialog{padding:19px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* 当前判断独立于历史B/S事件，沿用同一解释行结构。 */
#report .recent-explanation.signal-current,#chartContent .recent-explanation.signal-current{border-top:1px solid #D9DEE5;background:#F0F3F6;margin:0 -8px;padding:17px 8px;border-radius:6px}
#report .recent-explanation.signal-current>strong,#chartContent .recent-explanation.signal-current>strong{background:#E0E6EC;color:#3B4B5A}

/* 品牌标志与favicon共享同一矢量几何。 */
.brand-logo{display:block;width:34px;height:34px;flex:0 0 auto;border-radius:9px}.brand{letter-spacing:-.5px}@media(max-width:820px){.brand-logo{width:29px;height:29px;border-radius:7px}}

/* 轻量报告布局：沿用参考图的独立卡片、柔色摘要，不采用厚标题条。 */
:root{--page:#F7F7FA;--ink:#2D2F39;--accent:#79551F;--rule:#E9E7EF}body{background:var(--page)}header{height:76px;border-bottom-color:#EAE8F0}.layout{max-width:1600px;grid-template-columns:280px minmax(0,1fr)}.layout aside{background:#FAFAFC;border-right-color:#EAE8F0;padding:34px 23px}.layout main{padding:40px 46px 70px}.watch-item.selected{background:#FFF3D5;border-color:transparent;box-shadow:none}.watch-budget{color:#8B672A}.watch-filters button.active{border-color:#2D2F39}.watch-heading h3{font-size:18px}.watch-item{padding:17px 13px}.provider{background:#F3F2F7;padding:6px 11px;border-radius:6px;color:#9A96A4}#navAccount{background:#EEEAF7;color:#79551F;border-color:transparent}#report .wrap{border:0;border-radius:0;background:none;overflow:visible}#report .card{margin:0 0 22px;padding:26px 27px 28px;border:1px solid #EBE9F0;border-radius:14px;background:white;box-shadow:none}#report .card:last-child{border-bottom:1px solid #EBE9F0}#report .card > h2{margin:0 0 7px;padding:0;border:0;background:none;font-size:19px;font-weight:600;line-height:1.5;letter-spacing:-.4px}#report .card > h2::before{display:none}#report .sub{margin-bottom:19px;color:#92909B}#report .wul>li>ul{margin-bottom:16px}#report .wul>li>ul li{padding:8px 0;border-color:#F2F0F5}#report .big{color:#AD5B62}#report .cgrid{gap:10px;background:none;border:0;border-radius:0}#report .ccol{border:1px solid #EADCB5;border-radius:10px;background:#FFFAEB;padding:18px 12px}#report .ccol:last-child{border-right:1px solid #EADCB5}#report .ccol.noc{border-color:#E8E7ED;background:#FAFAFC}#report .svgbox{border-color:#EEEAF3;border-radius:10px}#report .chart-actions{background:#FCFBFE}#report .signal-evidence,#chartContent .signal-evidence{background:#FCFBF7}#report .recent-explanation.signal-current{background:#FFF3D5;border:0;margin:5px -6px 8px;padding:16px 10px;border-radius:9px}#report .signal-current>strong{background:#F3E3BB;color:#795A24}#report table th{background:#F6F5F9}#report .action-quote{background:#FBF6E9}.quote-panel{margin-bottom:22px;border-color:#E8E5EE}.report-actions button{border-color:#E4DCCB}#refresh{background:white;color:#36343E;border-color:#E4DCCB}#refresh:hover{background:#FFF7E5}.overview-budget{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 19px;background:white;border-radius:12px;border:1px solid #EFEDF4;margin-bottom:17px;font-size:12px}.overview-budget button{font-size:11px;border:0;background:none;color:#8A6425;padding:4px 6px}.overview-budget strong{font-size:14px;font-weight:500;margin-left:13px}.report-overview{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 30px;background:#EEEAF6;border-radius:16px;margin-bottom:23px}.report-overview.is-exit{background:#F4E9EB}.overview-caption{font-size:11px;color:#9C855F;margin-bottom:12px}.overview-main{font-size:22px;font-weight:550;line-height:1.6;letter-spacing:-.4px}.overview-main .big{font-size:24px;color:#79551F}.is-exit .overview-main .big{color:#AD5B62}.overview-count{min-width:110px;text-align:center;color:#866020}.overview-count b{font-size:37px;font-weight:450;line-height:1.4}.overview-count span{display:block;font-size:11px;color:#A08E6F;margin-top:4px}.overview-nav{display:flex;flex-wrap:wrap;gap:20px;margin:-1px 0 23px;padding:0 0 17px;border-bottom:1px solid #E8E3D9}.overview-nav a{font-size:11px;color:#918979;text-decoration:none;padding:3px 0}.overview-nav a:hover{color:#79551F}.card[id]{scroll-margin-top:20px}.brand-logo{border-radius:0;object-fit:contain}button:hover{border-color:#D7BB80;color:#79551F}
@media(min-width:821px) and (max-width:1100px){.layout{grid-template-columns:240px minmax(0,1fr)}.layout main{padding:30px 24px}#report .card{padding:23px 20px}.report-overview{padding:24px}.overview-main{font-size:20px}}
@media(max-width:820px){header{height:64px}.layout{display:block}.layout aside{padding:25px 19px 90px}.layout main{padding:24px 12px 90px}#report .card{padding:21px 14px 23px;margin-bottom:16px;border-radius:12px}#report .card > h2{font-size:18px;margin-bottom:7px}#report .cgrid{gap:6px}#report .ccol{padding:12px 4px}.overview-budget{padding:14px;font-size:11px;margin-bottom:13px}.overview-budget strong{font-size:13px;margin-left:8px}.report-overview{padding:21px 18px;gap:14px;border-radius:14px;margin-bottom:19px}.overview-main{font-size:17px}.overview-main .big{font-size:20px}.overview-count{min-width:65px}.overview-count b{font-size:28px}.overview-count span{font-size:10px}.overview-caption{font-size:10px;margin-bottom:8px}.overview-nav{gap:15px;margin-bottom:20px;padding-bottom:14px}.overview-nav a{font-size:10px}#localMode{padding-left:7px}.provider{padding:4px 7px;font-size:9px}}

/* 金币配套主题：亮金只用于操作，浅金承载摘要，深棕保证阅读对比。 */
:root{--page:#F8F8F6;--paper:#FFFFFF;--ink:#332D23;--muted:#857B6C;--rule:#EAE5DA;--accent:#79551F;--gold:#F4BE45;--gold-soft:#FFF4D6}
body{background:var(--page);color:var(--ink)}header{background:#FFFFFF;border-bottom:1px solid var(--rule)}.brand{font-weight:600;letter-spacing:-.6px;gap:10px;color:#332D23}.brand-logo{width:39px;height:39px;border-radius:0;object-fit:contain}.layout aside{background:#FBFAF6;border-right-color:#EBE7DC}.watch-item.selected{background:#FFF3D3;color:#674817;border-color:#EBD69B}.watch-item:hover{background:#FFF9EC}.watch-filters button.active{border-color:#CD9628;color:#664817}.watch-budget{color:#8B672A}.watch-remove:hover{background:#F6EACD;color:#614719}.watch-heading h3{color:#3B3328}.provider{background:#F5F1E7;color:#91836B}.quote-panel{border-color:#E9E4D8}#quoteHeader h1,#quoteHeader .quote-value{color:#332D23}.quote-time,#quoteHeader .sub{color:#8A8275}button:focus-visible,input:focus-visible{outline-color:#C69A3E}.side-search #q{border-color:#E6DECF}.side-search #q:focus{border-color:#C79A3A}.side-search #go{border-color:#DEC895;color:#765521;background:#FFFAEE}
#refresh,#watchAdd,button.primary{background:#F4BE45;border:1px solid #E5AD33;color:#49330F;box-shadow:inset 0 1px 0 #FFE6A0}#refresh:hover,#watchAdd:hover,button.primary:hover{background:#EFB335;border-color:#D99C25;color:#3D290A}.report-actions button{border-color:#E4DCCB;color:#6A5837}.report-actions button:hover{background:#FFF7E5;border-color:#D7BB80;color:#674819}#navAccount{background:#FFF1CE;color:#7B5A20;border-color:#F0DFB3}.bottom-nav{border-color:#EAE5DA}.bottom-nav .active{color:#79551F}.bottom-nav .active::after{content:"";display:block;height:3px;width:16px;margin:4px auto 0;border-radius:3px;background:#E5B23E}
.report-overview{background:#FFF3D5;border:1px solid #F0DFB2}.overview-main{color:#493B25}.overview-main .big,.overview-count{color:#866020}.overview-caption{color:#9C855F}.overview-count span{color:#A08E6F}.report-overview.is-exit{background:#F7ECEA;border-color:#EBD7D1}.report-overview.is-exit .overview-main .big{color:#A5636B}.overview-budget{border-color:#EDE7DC}.overview-budget button,.overview-nav a:hover{color:#8A6425}.overview-nav{border-color:#E8E3D9}.overview-nav a{color:#918979}
#report .card{border-color:#EAE6DE}#report .card > h2{color:#373128}#report .pos,#report .big{color:#876322}#report .sub{color:#898274}#report .ccol.okc{background:#FFFAEB;border-color:#EADCB5}#report .ccol.noc{background:#FAF9F6;border-color:#E9E5DC}#report .clab{color:#5C5140}#report .svgbox{border-color:#EEE8DC}#report .chart-actions{background:#FDFBF6}#report .signal-evidence,#chartContent .signal-evidence{background:#FCFBF7}#report .signal-title,#chartContent .signal-title{color:#675B47}#report .recent-explanation.signal-current,#chartContent .recent-explanation.signal-current{background:#FFF4D9;border-color:#E9DDBF}#report .recent-explanation.signal-current>strong,#chartContent .recent-explanation.signal-current>strong{background:#F3E3BB;color:#795A24}#report table th{background:#F7F4ED;color:#837661}#report td,#report th{border-color:#ECE6DA}#report .action-quote{background:#FBF6E9}#report .price-check{color:#33765C}#report .price-met{background:#F3F8F5}
dialog{border-color:#E9DFCA}dialog input{border-color:#E4DCCA}.dialog-head h2{color:#493D29}.brand-logo:hover{transform:rotate(-8deg);transition:transform .15s ease}
@media(max-width:820px){.brand-logo{width:33px;height:33px}.brand{font-size:20px}.overview-main .big{font-size:19px}.overview-count b{font-size:28px}.layout aside{background:#FBFAF6}}
@media(prefers-reduced-motion:reduce){.brand-logo:hover{transform:none;transition:none}}

/* 用户主题只控制界面，不覆盖图表交易红绿和MA配色。 */
#themeOpen{height:36px;width:36px;padding:0;border:1px solid var(--rule);border-radius:50%;font-size:22px;background:var(--paper);color:var(--accent)}
.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.theme-options>button{padding:10px;text-align:left;border:2px solid transparent;background:#F7F7F9;border-radius:12px;white-space:normal}.theme-options>button[aria-pressed="true"]{border-color:var(--accent)}.theme-options strong,.theme-options small{display:block;margin:7px 4px}.theme-options small{font-size:11px;color:#85808C}.theme-preview{display:block;height:88px;border-radius:7px;position:relative;background:#FFFDF7;overflow:hidden}.theme-preview i{position:absolute;left:0;top:0;bottom:0;width:25%;background:#F1E9D5}.theme-preview b{position:absolute;left:34%;right:10%;top:17px;height:26px;border-radius:5px;background:#FFE6A1}.theme-preview em{position:absolute;left:34%;right:10%;bottom:15px;height:13px;border-radius:4px;background:white}.theme-violet{background:#F6F4FA}.theme-violet i{background:#EAE5F2}.theme-violet b{background:#D9CDEE}.theme-violet em{background:white}.overview-headline{font-size:25px;font-weight:550;line-height:1.55;letter-spacing:-.6px;margin-bottom:9px}.overview-main{font-size:13px;font-weight:400}.overview-main .big{font-size:16px}.overview-count{border:1px solid #DACCAB;outline:1px solid #E8DCBF;outline-offset:9px;border-radius:50%;width:112px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.overview-count b{font-size:32px}.overview-count span{font-size:10px}.chapter-original{font-size:11px;color:#96909E;margin:1px 0 7px}.login-brand{display:flex;align-items:center;gap:11px;margin-bottom:12px}#gate .login-brand h1{font-size:24px;color:var(--ink)}#gate{background:var(--page)}#gate .box{border-color:var(--rule);border-radius:18px;box-shadow:0 16px 50px #3028160B}#gate button{background:var(--gold,#F4BE45);color:#49330F}#gate input:focus{border-color:var(--accent)}#adminActionInput{display:block;width:100%;margin:9px 0 16px}#adminActionInput[hidden],#adminActionLabel[hidden]{display:none}#adminActionError{color:#B53F4A;font-size:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}#adminWrap{z-index:105}#adminWrap .panel{border-radius:14px}.newuser button{background:var(--accent)}
html[data-theme="violet"]{--page:#F7F7FA;--paper:#FFFFFF;--ink:#292B35;--muted:#85828F;--rule:#E8E5ED;--accent:#74638E;--gold:#D9CDEE;--gold-soft:#EEEBF4}
html[data-theme="violet"] .layout aside{background:#FAFAFC;border-color:#EAE8F0}html[data-theme="violet"] .watch-item.selected{background:#EDE9F3;border-color:transparent;color:#514762}html[data-theme="violet"] .watch-item:hover{background:#F3F0F8}html[data-theme="violet"] .watch-filters button.active{border-color:#74638E;color:#514762}html[data-theme="violet"] .watch-budget{color:#857295}html[data-theme="violet"] .provider{background:#F3F2F7;color:#92909B}html[data-theme="violet"] .quote-panel{border-color:#E8E5EE}html[data-theme="violet"] #quoteHeader h1,html[data-theme="violet"] #quoteHeader .quote-value{color:#292B35}html[data-theme="violet"] .side-search #q,html[data-theme="violet"] .side-search #go{border-color:#E4DFEC;background:white;color:#74638E}html[data-theme="violet"] #refresh,html[data-theme="violet"] button.primary{background:#74638E;color:white;border-color:#74638E;box-shadow:none}html[data-theme="violet"] #watchAdd{background:#292B35;color:white;border-color:#292B35;box-shadow:none}html[data-theme="violet"] .report-actions button{border-color:#DDD6E8}html[data-theme="violet"] #refresh:hover{background:#665579}html[data-theme="violet"] #navAccount{background:#F0ECF6;color:#7B6B92;border-color:transparent}html[data-theme="violet"] .bottom-nav .active{color:#74638E}html[data-theme="violet"] .bottom-nav .active::after{background:#AD9AC4}
html[data-theme="violet"] .report-overview{background:#EEEBF4;border-color:#E7E0F1}html[data-theme="violet"] .overview-headline{color:#33303B}html[data-theme="violet"] .overview-main,html[data-theme="violet"] .overview-main .big,html[data-theme="violet"] .overview-count{color:#7A668F}html[data-theme="violet"] .overview-count{border-color:#CBBEDC;outline-color:#E0D5EC}html[data-theme="violet"] .overview-caption,html[data-theme="violet"] .overview-count span{color:#94859E}html[data-theme="violet"] .overview-budget,html[data-theme="violet"] .overview-nav{border-color:#E8E3EE}html[data-theme="violet"] .overview-budget button,html[data-theme="violet"] .overview-nav a:hover{color:#827093}html[data-theme="violet"] #report .card{border-color:#EAE7EF}html[data-theme="violet"] #report .pos,html[data-theme="violet"] #report .big{color:#745E86}html[data-theme="violet"] #report .ccol.okc{background:#F8F6FB;border-color:#E4DDEE}html[data-theme="violet"] #report .svgbox{border-color:#EEEAF3}html[data-theme="violet"] #report .signal-evidence,html[data-theme="violet"] #chartContent .signal-evidence{background:#FAF9FC}html[data-theme="violet"] #report .signal-current,html[data-theme="violet"] #chartContent .signal-current{background:#F0EDF5}html[data-theme="violet"] #report .signal-current>strong,html[data-theme="violet"] #chartContent .signal-current>strong{background:#E1DAEE;color:#766193}html[data-theme="violet"] #report th{background:#F6F5F9;color:#777080}html[data-theme="violet"] #report td,html[data-theme="violet"] #report th{border-color:#EAE6EF}html[data-theme="violet"] #report .action-quote{background:#F6F4FA}html[data-theme="violet"] dialog{border-color:#E7E0EF}html[data-theme="violet"] #gate button{background:#74638E;color:white}
@media(max-width:820px){.overview-headline{font-size:20px}.overview-main{font-size:12px}.overview-main .big{font-size:15px}.overview-count{width:75px;height:75px;min-width:75px;outline-offset:5px}.overview-count b{font-size:24px}.overview-count span{font-size:8px}.report-overview{gap:16px}.theme-options{gap:10px}#themeOpen{width:31px;height:31px;font-size:19px;min-height:31px}.header-right{gap:7px}.provider{max-width:80px;font-size:8px}}

/* 登录页与主题同步；小尺寸切换器不继承登录主按钮的整行样式。 */
#gate .box{width:100%;max-width:380px;padding:30px 28px;border:1px solid var(--rule);background:var(--paper)}
#gate .gsub{color:var(--muted);font-size:12px;margin-bottom:15px}#gate label{color:var(--muted)}#gate input{border-color:var(--rule);background:var(--paper);color:var(--ink);padding:11px 12px}#gate input:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 15%,transparent);outline-offset:1px}
#gate .login-themes{display:flex;gap:8px;margin-bottom:23px;padding-bottom:17px;border-bottom:1px solid var(--rule)}#gate .login-themes button{display:inline-flex;align-items:center;gap:6px;width:auto;min-height:30px;padding:5px 10px;background:transparent;border:1px solid transparent;border-radius:7px;font-size:11px;color:var(--muted)}#gate .login-themes button[aria-pressed="true"]{border-color:var(--rule);background:var(--gold-soft);color:var(--accent)}.login-themes i{width:9px;height:9px;border-radius:50%;display:inline-block}.gold-dot{background:#EDB841}.violet-dot{background:#A995C6}#gate #lgBtn{padding:12px;border-radius:9px;font-weight:550}.login-brand img{object-fit:contain}html[data-theme="violet"] #gate .box{box-shadow:0 18px 55px #4433550B}html[data-theme="gold"] #gate .box{box-shadow:0 18px 55px #7B58160B}

/* 代登录始终显式提示，不把管理员操作伪装成用户本人登录。 */
#impersonationBanner{display:flex;align-items:center;justify-content:center;gap:20px;padding:10px 18px;background:#FFF0C6;border-bottom:1px solid #E8D193;color:#70521E;font-size:12px;position:sticky;top:0;z-index:25}#impersonationBanner button{min-height:30px;background:white;color:#70521E;border-color:#DEC690;font-size:12px;padding:4px 12px}html[data-theme="violet"] #impersonationBanner{background:#EEE5FA;border-color:#CDB8E4;color:#634881}html[data-theme="violet"] #impersonationBanner button{color:#634881;border-color:#CDB8E4}@media(max-width:820px){#impersonationBanner{justify-content:space-between;gap:8px;font-size:11px}#impersonationBanner span{max-width:70%}}
