:root{--bg:#071018;--panel:#0d1722;--panel2:#111d2a;--line:#1f3347;--text:#e7f0fb;--muted:#91a4b8;--good:#10d68a;--bad:#ff4d5c;--warn:#f7b955;--info:#38a8ff;--accent:#1598ff;--shadow:0 16px 40px rgba(0,0,0,.34);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC",Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(circle at 50% -20%,#1b2e44 0,#071018 40%,#05090e 100%);color:var(--text);overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}.up{color:var(--good)!important}.down{color:var(--bad)!important}.error{margin:8px 14px;padding:10px 12px;border:1px solid rgba(255,77,92,.42);background:rgba(255,77,92,.12);border-radius:10px;color:#ffb7bf}.btn{border:1px solid var(--line);background:#101c29;color:var(--text);border-radius:10px;padding:9px 14px}.btn.primary{background:linear-gradient(135deg,#0f9b67,#14c983);border-color:#17d991;color:#fff;font-weight:800}.btn.ghost{background:transparent}.link-btn{background:transparent;border:0;color:#8fd0ff;font-weight:800;padding:4px 6px}.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid currentColor;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;white-space:nowrap}.pill.good{color:var(--good);background:rgba(16,214,138,.11)}.pill.bad{color:var(--bad);background:rgba(255,77,92,.10)}.pill.warn{color:var(--warn);background:rgba(247,185,85,.12)}.pill.info{color:var(--info);background:rgba(56,168,255,.12)}
.topbar{height:64px;display:flex;align-items:center;gap:16px;padding:0 18px;background:rgba(4,10,16,.82);border-bottom:1px solid #182838;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px;min-width:210px}.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#2164f3,#00d084);font-weight:900}.brand b{display:block;font-size:18px}.brand small{display:block;color:var(--muted);font-size:11px}.nav{display:flex;gap:8px}.nav button{border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:10px;font-weight:800}.nav button.active{background:#102942;color:#55bbff}.nav button:disabled{opacity:.45}.symbol-box{margin-left:auto;display:flex;gap:8px;align-items:center}.symbol-box input{width:160px;background:#0d1824;border:1px solid var(--line);border-radius:10px;color:var(--text);padding:10px 12px;font-weight:900;text-transform:uppercase}.status-row{display:flex;gap:8px}.user{color:var(--muted);font-size:13px}.public-banner{margin:10px 14px 0;padding:8px 12px;border-radius:10px;border:1px solid rgba(247,185,85,.38);background:rgba(247,185,85,.1);color:var(--warn);font-weight:800}.market-layout{height:calc(100vh - 64px);padding:12px;display:grid;grid-template-columns:320px minmax(560px,1fr) 360px;grid-template-rows:1fr;gap:10px}.left{display:grid;grid-template-rows:minmax(420px,1fr) 164px;gap:10px;min-height:0}.center{display:grid;grid-template-rows:245px minmax(310px,1fr) 205px;gap:10px;min-height:0}.right{min-height:0}.card{background:linear-gradient(180deg,rgba(17,30,43,.96),rgba(10,20,31,.96));border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:14px;min-height:0;overflow:hidden}.panel-title,.sub-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-title h2,.sub-title h3{margin:0;font-size:17px}.sub-title{border-top:1px solid var(--line);padding-top:12px;margin-top:14px}.panel-title small{color:var(--muted)}.quote-panel{min-height:0}.quote-head{display:flex;justify-content:space-between;align-items:flex-start}.quote-head h1{font-size:28px;margin:4px 0}.quote-head small{color:var(--muted)}.last-price{font-size:58px;line-height:1;font-weight:900;margin:18px 0 4px;letter-spacing:-1px}.change-line{font-weight:800}.quote-grid{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-grid span{display:block;color:var(--muted);font-size:12px}.quote-grid b{display:block;margin-top:4px;font-size:16px}.scope-note{margin-top:18px;color:var(--muted);font-size:12px;line-height:1.5}.source-health{min-height:0}.health-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.health-grid div{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:10px}.health-grid span{display:block;color:var(--muted);font-size:12px}.health-grid b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-panel{height:100%;display:flex;flex-direction:column}.bbo-top{display:grid;grid-template-columns:1fr 1fr 1fr;text-align:center;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--line)}.bbo-top span,.bbo-top small{display:block;color:var(--muted)}.bbo-top b{font-size:26px;display:block;margin:6px 0}.imbalance{margin:16px 0}.imbalance span{color:var(--muted)}.imbalance b{float:right}.imbalance-bar{clear:both;margin-top:8px;height:10px;background:linear-gradient(90deg,rgba(16,214,138,.20),rgba(255,77,92,.20));border-radius:999px;overflow:hidden}.imbalance-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--good),#17c878);border-radius:999px}.bbo-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--line);padding-top:14px;color:var(--muted)}.bbo-meta b{color:var(--text)}.tape-list{min-height:0;overflow:auto}.tape-list.compact{height:calc(100vh - 430px);min-height:260px}.tape-row{display:grid;grid-template-columns:78px 1fr 70px 62px;gap:8px;align-items:center;border-bottom:1px solid rgba(255,255,255,.07);padding:7px 4px;font-variant-numeric:tabular-nums}.tape-row b{font-size:15px}.tape-row.buy b,.tape-row.buy em{color:var(--good)}.tape-row.sell b,.tape-row.sell em{color:var(--bad)}.tape-row span{color:var(--muted)}.tape-row em{font-style:normal;font-size:12px;text-align:right}.signals{min-height:0}.signal-list{height:calc(100% - 74px);overflow:auto}.signal-list.four{height:148px}.signal-row{display:grid;grid-template-columns:72px 190px 72px 70px 54px 54px 70px 1fr;gap:8px;align-items:start;border-bottom:1px solid rgba(255,255,255,.07);padding:8px 4px;font-size:13px}.signal-row b{color:#8fd0ff}.signal-row em{font-style:normal;border-radius:999px;padding:3px 8px;text-align:center;background:rgba(255,255,255,.08)}.signal-row.notify em{color:var(--good);background:rgba(16,214,138,.12)}.signal-row p{margin:0;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.signal-foot{font-size:12px;color:var(--muted);padding-top:8px;border-top:1px solid var(--line)}.inline-tools{display:flex;gap:8px;align-items:center}.inline-tools select,.panel-title select{background:#07121d;border:1px solid var(--line);border-radius:8px;color:var(--text);padding:6px 8px}.company{overflow:auto}.company-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.company-grid div{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:10px}.company-grid span{display:block;color:var(--muted);font-size:12px}.company-grid b{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.news-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.news-list a{display:block;text-decoration:none;color:var(--text);padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.news-list b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.news-list span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.fmp-chart{position:relative}.chart-host{height:310px;position:relative}.lw-chart{width:100%;height:300px}.chart-svg{width:100%;height:300px;display:block}.chart-bg{fill:#09131e}.grid-line{stroke:#1e3144;stroke-width:1}.axis-text{fill:var(--muted);font-size:11px}.c-up .body,.c-up .vol{fill:var(--good)}.c-up .wick{stroke:var(--good)}.c-down .body,.c-down .vol{fill:var(--bad)}.c-down .wick{stroke:var(--bad)}.wick{stroke-width:1.2}.body{opacity:.96}.vol{opacity:.68}.empty{display:grid;place-items:center;text-align:center;color:var(--muted);min-height:120px;padding:20px}.empty b{display:block;color:var(--text);margin-bottom:6px}.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}.modal{width:min(1160px,96vw);max-height:86vh;background:#0d1722;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px;overflow:hidden;display:flex;flex-direction:column}.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}.modal-head h2{margin:0}.modal-list{height:70vh;overflow:auto}.login-page{height:100%;display:grid;place-items:center;background:radial-gradient(circle at 20% 0,#173552,transparent 35%),#071018}.login-card{width:min(420px,calc(100vw - 32px));padding:30px;border-radius:24px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.logo-badge{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#2164f3,#00d084);display:grid;place-items:center;font-weight:900;font-size:24px}.login-card h1{margin:0}.login-card p{color:var(--muted);margin:0 0 8px}.login-card input{padding:12px;border-radius:12px;border:1px solid var(--line);background:#07121d;color:var(--text)}.fatal{margin:40px;padding:20px;border:1px solid var(--bad);border-radius:14px;background:rgba(255,77,92,.08)}
@media(max-width:1280px){body{overflow:auto}.market-layout{height:auto;grid-template-columns:1fr;grid-template-rows:auto}.left,.center,.right{grid-column:1;grid-row:auto}.left,.center{grid-template-rows:auto}.right{height:auto}.tape-list.compact{height:320px}.topbar{height:auto;flex-wrap:wrap;padding:12px}.symbol-box{margin-left:0}.company-grid{grid-template-columns:1fr 1fr}.news-list{grid-template-columns:1fr}.signal-row{grid-template-columns:70px 1fr 60px 60px 54px 54px 70px}.signal-row p{grid-column:1/-1}.status-row{flex-wrap:wrap}}

/* v1.0.13 inherited refinements */
.topbar .top-health{margin-left:0;flex-wrap:wrap;max-width:560px;justify-content:flex-end}.mini-status{display:inline-flex;align-items:center;border:1px solid rgba(145,164,184,.35);border-radius:999px;padding:5px 10px;color:#a9bdd2;background:rgba(255,255,255,.035);font-size:12px;font-weight:800;white-space:nowrap}.market-layout{grid-template-columns:320px minmax(560px,1fr) 360px}.left{grid-template-rows:minmax(315px,360px) minmax(260px,1fr);gap:10px}.center{grid-template-rows:245px minmax(390px,1fr);gap:10px}.quote-grid{grid-template-columns:1fr 1fr;gap:12px}.company{min-height:0}.left .company-grid{grid-template-columns:1fr 1fr}.left .news-list{grid-template-columns:1fr}.left .news-list a:nth-child(n+4){display:none}.left .company .panel-title h2{font-size:16px}.market-panel .panel-title h2{font-size:18px}.imbalance-label{display:flex;justify-content:space-between;gap:10px;align-items:center}.imbalance-label b{float:none;color:var(--text);font-size:13px}.imbalance-bar.dual{display:flex;background:#1a2633}.imbalance-bar.dual i{height:100%;border-radius:0}.imbalance-bar.dual i.bid{background:linear-gradient(90deg,var(--good),#13c987)}.imbalance-bar.dual i.ask{background:linear-gradient(90deg,#cc4050,var(--bad))}.tape-list.compact{height:auto;min-height:0;max-height:310px}.market-panel .tape-list.compact{max-height:calc(100vh - 505px);min-height:220px}.fmp-chart{min-height:0}.chart-host{height:310px}.signal-list.four{height:148px}.source-health{display:none}.empty b{font-size:16px}.empty p{margin:0;color:var(--muted)}
@media(max-width:1280px){.topbar .top-health{max-width:none;justify-content:flex-start}.left{grid-template-rows:auto}.center{grid-template-rows:auto}.market-panel .tape-list.compact{max-height:320px}.left .company-grid{grid-template-columns:1fr 1fr}}

/* v1.0.13 product polish: compact header, wrapped news, mobile responsive */
html,body,#root{width:100%;max-width:100%;overflow-x:hidden}
body{overflow-x:hidden}.market-page{width:100%;max-width:100vw;overflow-x:hidden}.topbar.compact-topbar{gap:14px}.topbar.compact-topbar .brand{min-width:200px}.topbar.compact-topbar .top-health{max-width:none;gap:8px;flex-wrap:nowrap}.topbar.compact-topbar .user,.topbar.compact-topbar .mini-status{display:none!important}.company-grid.slim{grid-template-columns:1fr 1fr;margin-bottom:10px}.company-grid.slim div{min-width:0}.company-grid.slim b{white-space:normal;overflow-wrap:anywhere}.news-list{overflow:visible}.news-list a{min-width:0;overflow:hidden}.news-list b,.news-title{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;word-break:break-word;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.news-list span{white-space:normal;overflow-wrap:anywhere}.left .news-list a:nth-child(n+5){display:none}.left .news-list a:nth-child(n+4){display:block}.company{overflow:hidden}.left,.center,.right,.card,.company,.market-panel,.fmp-chart{min-width:0}.status-row .pill{font-size:11px;padding:4px 9px}.symbol-box{min-width:0}.symbol-box input{min-width:0}
@media(max-width:900px){
  body{overflow:auto!important;overflow-x:hidden!important;background:#071018}.topbar{width:100%;max-width:100vw;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:10px 12px}.topbar.compact-topbar .brand{min-width:0}.brand b{font-size:15px}.brand small{display:none}.brand-mark{width:32px;height:32px;border-radius:9px}.nav{grid-column:1/-1;order:3;width:100%;overflow:hidden}.nav button{padding:8px 10px}.nav button:disabled{display:none}.symbol-box{grid-column:1/-1;order:2;width:100%;display:grid;grid-template-columns:1fr auto auto;gap:8px;margin-left:0}.symbol-box input{width:100%;max-width:none}.topbar.compact-topbar .top-health{grid-column:1/-1;order:4;width:100%;justify-content:flex-start;overflow:hidden;flex-wrap:wrap}.topbar.compact-topbar .top-health .pill{max-width:32%;overflow:hidden;text-overflow:ellipsis}.public-banner{margin:8px 10px 0;font-size:13px;line-height:1.35}.market-layout{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100vw!important;height:auto!important;padding:10px!important;gap:10px!important;grid-template-columns:none!important;grid-template-rows:none!important}.left,.center,.right{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:10px!important;grid-template-columns:none!important;grid-template-rows:none!important}.card{width:100%!important;max-width:100%!important;min-width:0!important;padding:12px;border-radius:11px}.quote-panel{order:1}.company{order:2}.right{order:3}.center{order:4}.signals{order:1}.fmp-chart{order:2}.last-price{font-size:48px}.quote-grid{grid-template-columns:1fr 1fr}.company-grid.slim{grid-template-columns:1fr 1fr}.left .news-list{grid-template-columns:1fr!important}.news-list a{width:100%;max-width:100%;white-space:normal;overflow:hidden}.news-title{-webkit-line-clamp:3}.bbo-top{grid-template-columns:1fr 1fr 1fr}.bbo-top b{font-size:22px}.bbo-meta{grid-template-columns:1fr 1fr}.tape-list.compact,.market-panel .tape-list.compact{max-height:260px;height:auto;min-height:0}.tape-row{grid-template-columns:70px 1fr 58px 56px}.signal-list.four{height:auto;max-height:210px}.signal-row{grid-template-columns:70px 1fr 64px 58px;gap:6px}.signal-row span:nth-child(5),.signal-row span:nth-child(6),.signal-row em{display:none}.signal-row p{grid-column:1/-1;white-space:normal;overflow-wrap:anywhere}.chart-host,.lw-chart,.chart-svg{height:260px!important}.modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}
}
@media(max-width:520px){
  .quote-grid{grid-template-columns:1fr}.company-grid.slim{grid-template-columns:1fr}.bbo-top{grid-template-columns:1fr}.bbo-top>div{border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:8px}.symbol-box{grid-template-columns:1fr 82px 98px}.btn{padding:8px 10px}.topbar.compact-topbar .top-health .pill{max-width:100%;font-size:10px}.last-price{font-size:42px}.panel-title h2,.sub-title h3{font-size:16px}.chart-host,.lw-chart,.chart-svg{height:230px!important}
}

/* v1.0.14 realtime diagnostics */
.diagnose-btn{border:1px solid rgba(247,185,85,.55);background:rgba(247,185,85,.10);color:var(--warn);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:900;white-space:nowrap}.diagnostics-body{display:block;line-height:1.55;color:var(--text);overflow:auto}.diagnostics-body .muted{color:var(--muted);margin:10px 0 14px}.diag-status{display:flex;align-items:center;gap:10px;margin:6px 0 12px}.diagnostics-body h3{margin:16px 0 8px;font-size:15px}.diagnostics-body ul,.diagnostics-body ol{margin:8px 0 8px 20px;padding:0}.diagnostics-body li{margin:4px 0}.diag-command{white-space:pre-wrap;word-break:break-word;background:#07121d;border:1px solid var(--line);border-radius:10px;padding:12px;color:#b8d8ff;max-height:120px;overflow:auto}
@media(max-width:900px){.diagnose-btn{padding:4px 8px}.diagnostics-body{font-size:13px}.diag-command{font-size:12px}}

/* v1.0.17 tablet portrait + Daily Report */
.muted{color:var(--muted)}
.report-topbar{height:64px}.daily-page{width:100%;max-width:100vw;min-height:100%;overflow-x:hidden}.daily-layout{height:calc(100vh - 64px);padding:12px;display:grid;grid-template-columns:260px 360px minmax(420px,1fr);gap:10px;min-width:0}.daily-filter{display:flex;flex-direction:column;gap:10px}.daily-filter label{font-size:12px;color:var(--muted);font-weight:800}.daily-filter select{width:100%;background:#07121d;border:1px solid var(--line);border-radius:10px;color:var(--text);padding:10px}.daily-list,.daily-viewer{min-height:0}.report-list{display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:calc(100vh - 140px)}.report-row{display:block;width:100%;text-align:left;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03);border-radius:10px;color:var(--text);padding:10px}.report-row.active{border-color:var(--accent);background:rgba(21,152,255,.12)}.report-row b{display:block;line-height:1.35;overflow-wrap:anywhere}.report-row span,.report-row em{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-style:normal}.report-head{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:12px}.report-head h1{margin:4px 0 0;font-size:22px;line-height:1.3;overflow-wrap:anywhere}.report-head small{color:var(--muted)}.report-content{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;line-height:1.65;margin:0;color:var(--text);font-family:inherit;font-size:14px;overflow:auto;max-height:calc(100vh - 168px);background:#07121d;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px}
@media (min-width:1024px) and (max-width:1280px){
  body{overflow:hidden}.market-layout{height:calc(100vh - 64px);display:grid!important;grid-template-columns:280px minmax(360px,1fr) 280px!important;grid-template-rows:1fr!important;padding:10px!important;gap:8px!important}.left{display:grid!important;grid-template-rows:minmax(285px,330px) minmax(240px,1fr)!important}.center{display:grid!important;grid-template-rows:230px minmax(340px,1fr)!important}.right{display:block!important}.card{padding:12px}.last-price{font-size:48px}.quote-grid{grid-template-columns:1fr 1fr}.bbo-top b{font-size:20px}.signal-row{grid-template-columns:64px 1fr 58px 52px}.signal-row span:nth-child(5),.signal-row span:nth-child(6),.signal-row em{display:none}.signal-row p{grid-column:1/-1;white-space:normal}.market-panel .tape-list.compact{max-height:calc(100vh - 485px);min-height:190px}.topbar{height:auto;min-height:64px;flex-wrap:wrap;padding:10px 12px}.topbar .symbol-box{margin-left:auto}.topbar.compact-topbar .top-health{flex-wrap:wrap}.daily-layout{grid-template-columns:240px 320px minmax(360px,1fr)}
}
@media (min-width:768px) and (max-width:1023px){
  html,body,#root{width:100%!important;max-width:100%!important;overflow-x:hidden!important}body{overflow:auto!important}.market-page,.daily-page{width:100%!important;max-width:100vw!important;overflow-x:hidden!important}.topbar{width:100%!important;max-width:100vw!important}.market-layout{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100vw!important;height:auto!important;padding:12px!important;gap:10px!important}.left,.center,.right{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:10px!important}.quote-panel,.company,.signals,.fmp-chart,.market-panel,.card{width:100%!important;max-width:100%!important;min-width:0!important}.left{order:1}.right{order:2}.center{order:3}.last-price{font-size:56px}.chart-host,.lw-chart,.chart-svg{height:300px!important}.market-panel .tape-list.compact{max-height:300px;min-height:180px}.signal-list.four{height:auto;max-height:210px}.daily-layout{height:auto;display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:100vw!important;padding:12px!important}.report-list{max-height:320px}.report-content{max-height:none;min-height:420px}.report-head{flex-direction:column}.news-title{-webkit-line-clamp:3}
}
@media (max-width:767px){
  .daily-layout{height:auto;display:flex!important;flex-direction:column!important;width:100%!important;max-width:100vw!important;padding:10px!important}.report-list{max-height:280px}.report-content{max-height:none;min-height:360px}.report-head{flex-direction:column}.report-topbar{height:auto}.daily-filter,.daily-list,.daily-viewer{width:100%!important;max-width:100%!important}.topbar.compact-topbar .top-health .pill{max-width:100%}.topbar.compact-topbar .top-health{overflow:visible}
}

/* v1.0.17 Daily Report Telegram HTML safe renderer */
.report-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px}.report-tools .btn.active{border-color:var(--accent);background:rgba(21,152,255,.16);color:#dbeafe}.report-viewer-html{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;line-height:1.68;margin:0;color:var(--text);font-family:inherit;font-size:14px;overflow:auto;max-height:calc(100vh - 210px);background:#07121d;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px}.report-viewer-html b,.report-viewer-html strong{font-weight:800;color:#f5f7fb}.report-viewer-html i,.report-viewer-html em{color:#b9c2d0}.report-viewer-html u{text-underline-offset:3px}.report-viewer-html code{padding:1px 5px;border-radius:5px;background:rgba(148,163,184,.16);color:#dbeafe;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.94em}.report-viewer-html pre{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;padding:12px;border-radius:10px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.20);overflow-x:auto;line-height:1.55}.report-viewer-html blockquote{margin:12px 0;padding:10px 12px;border-left:3px solid rgba(96,165,250,.75);background:rgba(59,130,246,.08);border-radius:8px;color:#d8e6f8}.report-viewer-html a{color:#93c5fd;text-decoration:none;border-bottom:1px solid rgba(147,197,253,.45)}.report-viewer-html a:hover{color:#bfdbfe}.report-content-raw{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
@media (min-width:768px) and (max-width:1023px){.report-viewer-html{max-height:none;min-height:420px}}
@media (max-width:767px){.report-viewer-html{max-height:none;min-height:360px}.report-tools .btn{padding:7px 9px}}


/* v1.0.18 Daily Report one-step filter UX */
.daily-layout-v1018{grid-template-columns:280px 390px minmax(420px,1fr)}
.daily-filter-title{align-items:center;flex-wrap:nowrap}.daily-filter-title h2{white-space:nowrap;flex-shrink:0;margin-right:auto}.daily-filter-title .pill{max-width:82px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:8px;padding-right:8px}
.filter-help{font-size:12px;line-height:1.45;margin:0 0 4px}.filter-mode-note{display:flex;align-items:center;gap:8px;min-width:0}.filter-mode-note span:last-child{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.report-list-title{font-weight:800;line-height:1.35;white-space:normal;overflow-wrap:anywhere;color:var(--text)}
.report-list-meta{font-size:12px;color:rgba(203,213,225,.75);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-row em{display:none!important}
.report-tools-compact{justify-content:flex-end}.report-tools-compact .btn{padding:7px 10px;font-size:12px}.daily-viewer .report-head{align-items:flex-start}.daily-viewer .report-head .muted{white-space:nowrap}
@media (min-width:1024px) and (max-width:1280px){.daily-layout-v1018{grid-template-columns:245px 330px minmax(360px,1fr)}}
@media (min-width:768px) and (max-width:1023px){.daily-layout-v1018{grid-template-columns:1fr!important}.daily-filter-title .pill{max-width:120px}.report-list-meta{white-space:normal}.report-tools-compact{justify-content:flex-start}.daily-viewer .report-head .muted{white-space:normal}}
@media (max-width:767px){.daily-filter-title .pill{max-width:92px}.report-list-meta{white-space:normal}.report-tools-compact{justify-content:flex-start}.daily-viewer .report-head .muted{white-space:normal}}

/* v1.0.19 Dynamic Report module */
.dynamic-layout{grid-template-columns:260px 420px minmax(420px,1fr)}
.dynamic-report-row .report-list-title{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.45;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.dynamic-filter .filter-help{line-height:1.55}.dynamic-viewer .report-viewer-html pre{max-width:100%;overflow-x:auto}.dynamic-page .nav button{white-space:nowrap}
@media (min-width:1024px) and (max-width:1280px){.dynamic-layout{grid-template-columns:235px 370px minmax(360px,1fr)}}
@media (min-width:768px) and (max-width:1023px){.dynamic-layout{grid-template-columns:1fr!important}.dynamic-report-row .report-list-meta{white-space:normal}}
@media (max-width:767px){.dynamic-layout{grid-template-columns:1fr!important}.dynamic-report-row .report-list-title{font-size:12px}.dynamic-page .nav{overflow-x:auto}.dynamic-page .nav button{flex:0 0 auto}}

/* v1.1.0 Report Rendering Engine v2: WeasyPrint-friendly HTML iframe renderer */
.report-document-shell{width:100%;max-width:100%;overflow:auto;background:#0b1220;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;max-height:calc(100vh - 210px)}
.report-document-frame{display:block;width:100%;min-width:760px;min-height:calc(100vh - 240px);border:0;border-radius:8px;background:#fff;box-shadow:0 16px 48px rgba(0,0,0,.22)}
.report-document-shell + .report-content-raw{margin-top:8px}.report-tools-compact .muted{line-height:1.35}.daily-viewer.dynamic-viewer .report-document-frame{min-height:calc(100vh - 240px)}
@media (min-width:768px) and (max-width:1023px){.report-document-shell{max-height:none;min-height:540px}.report-document-frame{min-height:520px}}
@media (max-width:767px){.report-document-shell{max-height:none;min-height:520px;padding:8px}.report-document-frame{min-width:720px;min-height:500px}}

/* v1.1.1 WeasyPrint HTML embedded reading mode: no small iframe by default */
.report-focus-viewer{padding:0!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;overflow:visible!important}.report-focus-viewer .report-head,.report-focus-viewer .report-tools{margin-left:0;margin-right:0}.report-focus-viewer .report-head{background:rgba(7,18,29,.88);border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:14px;margin-bottom:10px}.report-focus-viewer .report-tools{background:rgba(7,18,29,.74);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:10px 12px}.report-document-embedded-shell{width:100%;max-width:100%;max-height:none!important;min-height:0!important;overflow:visible!important;background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(2,6,23,.55));border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:clamp(10px,1.5vw,20px);box-shadow:0 18px 60px rgba(0,0,0,.24)}.report-document-surface{width:100%;max-width:1280px;margin:0 auto;background:#fff;color:#111827;border-radius:18px;padding:clamp(20px,3vw,44px);box-shadow:0 24px 80px rgba(0,0,0,.32);overflow:hidden}.zq-report-document-scope{width:100%;max-width:100%;color:#111827;background:#fff;font-size:clamp(13px,1.08vw,16px);line-height:1.68;overflow-wrap:anywhere}.zq-report-document-scope h1{font-size:clamp(28px,3vw,44px)!important;letter-spacing:-.02em}.zq-report-document-scope h2{font-size:clamp(21px,1.8vw,28px)!important}.zq-report-document-scope h3{font-size:clamp(17px,1.35vw,22px)!important}.zq-report-document-scope p,.zq-report-document-scope li,.zq-report-document-scope td,.zq-report-document-scope th{font-size:inherit;line-height:1.68}.zq-report-document-scope .cover{min-height:auto!important;padding-top:0!important;margin-bottom:32px!important;border-bottom:1px solid #e5e7eb;padding-bottom:24px}.zq-report-document-scope .doc-header{position:static!important;margin-bottom:18px}.zq-report-document-scope .meta-grid,.zq-report-document-scope .risk-cards,.zq-report-document-scope .score-row{display:flex;flex-wrap:wrap;gap:14px}.zq-report-document-scope .meta-item,.zq-report-document-scope .risk-card,.zq-report-document-scope .score-item{min-width:min(100%,260px)}.zq-report-table-scroll{width:100%;max-width:100%;overflow-x:auto;margin:14px 0;border-radius:12px;-webkit-overflow-scrolling:touch}.zq-report-table-scroll table{margin:0!important;min-width:680px}.zq-report-document-scope table{width:100%;border-collapse:collapse}.zq-report-document-scope th,.zq-report-document-scope td{overflow-wrap:anywhere;word-break:normal}.zq-report-document-scope pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;overflow-x:auto}.zq-report-document-scope code{white-space:pre-wrap}.zq-report-document-scope img,.zq-report-document-scope svg,.zq-report-document-scope iframe{display:none!important}.report-tools-compact .muted{color:#93a4b7}
@media (min-width:1440px){.report-focus-viewer{grid-column:auto}.report-document-surface{max-width:1360px}}
@media (min-width:1024px){.report-focus-viewer .report-content,.report-focus-viewer .report-viewer-html{max-height:none}.daily-layout:has(.report-focus-viewer){grid-template-columns:260px 320px minmax(640px,1fr)}.dynamic-layout:has(.report-focus-viewer){grid-template-columns:240px 360px minmax(680px,1fr)}}
@media (min-width:768px) and (max-width:1023px){.report-document-surface{padding:24px;border-radius:14px}.zq-report-table-scroll table{min-width:640px}.zq-report-document-scope .cover{padding-bottom:18px;margin-bottom:22px!important}}
@media (max-width:767px){.report-document-embedded-shell{padding:8px;border-radius:14px}.report-document-surface{padding:18px 16px;border-radius:12px;max-width:100%}.zq-report-document-scope{font-size:13px}.zq-report-table-scroll table{min-width:620px}.zq-report-document-scope h1{font-size:25px!important}.zq-report-document-scope h2{font-size:20px!important}.report-focus-viewer .report-head,.report-focus-viewer .report-tools{border-radius:12px}}
