:root{
  --bg:#0a0a0b;--p1:#111113;--p2:#18181b;--p3:#232327;--line:#2a2a2f;--line2:#3a3a40;
  --tx:#ececee;--tx2:#b4b4bb;--mut:#85858e;--or:#fb923c;--or2:#f97316;--orbg:rgba(249,115,22,.12);
  --up:#22c55e;--dn:#f05252;--upbg:rgba(34,197,94,.14);--dnbg:rgba(240,82,82,.14);
  --s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#008300;--s7:#9085e9;--s8:#e66767;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;background:var(--bg);color:var(--tx);font:14px/1.5 var(--sans)}
a{color:var(--or)}
button{font:inherit;color:inherit;cursor:pointer}
.up{color:var(--up)}.dn{color:var(--dn)}.flat{color:var(--mut)}
.mono{font-family:var(--mono)}
/* top bar */
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:18px;padding:0 16px;height:52px;background:#0d0d0f;border-bottom:1px solid var(--or2)}
.logo{font:700 16px/1 var(--mono);letter-spacing:.06em;color:var(--tx);text-decoration:none;white-space:nowrap}
.or{color:var(--or)}
.tabs{display:flex;gap:4px;height:100%}
.tab{background:none;border:0;border-bottom:2px solid transparent;padding:0 14px;height:100%;font:600 13px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--mut)}
.tab:hover{color:var(--tx)}
.tab.on{color:var(--or);border-bottom-color:var(--or)}
.top-r{margin-left:auto;display:flex;align-items:center;gap:12px}
.clock{font:12px var(--mono);color:var(--tx2)}
.live{font:700 11px var(--mono);border:1px solid var(--line2);background:var(--p2);border-radius:4px;padding:5px 9px;color:var(--mut)}
.live.on{background:var(--or2);border-color:var(--or2);color:#111}
/* tape */
.tape{overflow:hidden;border-bottom:1px solid var(--line);background:#0c0c0e;height:30px;position:relative}
.tape-in{display:inline-flex;gap:28px;white-space:nowrap;padding:6px 0;font:12px var(--mono);animation:tape 140s linear infinite;will-change:transform}
.tape:hover .tape-in{animation-play-state:paused}
.tape-in span b{color:var(--tx2);font-weight:600;margin-right:6px}
@keyframes tape{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tape-in{animation:none}}
main{min-height:70vh}
.view{display:none}.view.on{display:block}
/* terminal grid */
.term{display:grid;grid-template-columns:300px minmax(0,1fr) 320px;gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.pane{background:var(--p1);min-width:0}
.left{display:flex;flex-direction:column;max-height:calc(100vh - 82px);position:sticky;top:82px}
.grp-chips{display:flex;flex-wrap:wrap;gap:4px;padding:10px;border-bottom:1px solid var(--line)}
.grp-chips button{background:var(--p2);border:1px solid var(--line);border-radius:4px;padding:3px 7px;font:11px var(--mono);color:var(--tx2)}
.grp-chips button.on{border-color:var(--or);color:var(--or);background:var(--orbg)}
.wl{overflow:auto;flex:1}
.wl-h{position:sticky;top:0;background:#141417;font:600 11px var(--mono);letter-spacing:.08em;color:var(--or);padding:8px 12px 6px;border-bottom:1px solid var(--line);z-index:1}
.row{display:grid;grid-template-columns:minmax(0,1fr) 52px auto;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid #1b1b1f;cursor:pointer;font:12px var(--mono)}
.row:hover{background:var(--p2)}
.row.sel{background:var(--orbg);box-shadow:inset 2px 0 0 var(--or)}
.row .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tx)}
.row .nm small{display:block;color:var(--mut);font-size:10.5px}
.row .px{text-align:right;white-space:nowrap}
.row .px small{display:block;font-size:11px}
.row canvas{width:52px;height:22px}
/* center */
.center{padding:12px 16px 16px;display:flex;flex-direction:column;gap:10px}
.cmdbar{display:flex;gap:6px}
.cmd{flex:1;min-width:0;background:#0c0c0e;border:1px solid var(--line2);border-radius:4px;color:var(--tx);font:13px var(--mono);padding:8px 10px}
.cmd:focus{outline:none;border-color:var(--or)}
.go{background:var(--or2);border:0;border-radius:4px;color:#111;font:700 12px var(--mono);padding:0 14px}
.recent{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.recent button{flex:none;background:var(--p2);border:1px solid var(--line);border-radius:4px;padding:4px 8px;font:12px var(--mono);color:var(--tx2);white-space:nowrap}
.recent button.on{border-color:var(--or);color:var(--tx)}
.qhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px}
.qhead .sym{font:700 13px var(--mono);color:var(--or)}
.qhead h2{margin:0;font:600 20px var(--sans);width:100%}
.qhead .big{font:600 30px var(--mono);letter-spacing:-.01em}
.qhead .chg{font:600 16px var(--mono)}
.qhead .meta{font:12px var(--mono);color:var(--mut)}
.chartwrap{position:relative;height:420px;background:#0c0c0e;border:1px solid var(--line);border-radius:6px}
#chart{width:100%;height:100%;display:block}
.tip{position:absolute;pointer-events:none;background:rgba(17,17,19,.96);border:1px solid var(--line2);border-radius:5px;padding:7px 9px;font:12px var(--mono);color:var(--tx);white-space:nowrap;z-index:2;box-shadow:0 6px 20px rgba(0,0,0,.45)}
.tip b{color:var(--tx2);font-weight:600}
.chart-msg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--mut);font:13px var(--mono)}
.chartctl{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.seg{display:flex;gap:2px;background:var(--p2);border:1px solid var(--line);border-radius:5px;padding:2px}
.seg button{background:none;border:0;border-radius:3px;padding:4px 10px;font:12px var(--mono);color:var(--mut)}
.seg button.on{background:var(--or2);color:#111;font-weight:700}
.qstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.qstats div{background:var(--p1);padding:8px 10px;font:12px var(--mono)}
.qstats div span{display:block;color:var(--mut);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase}
.rng{position:relative;height:4px;background:var(--p3);border-radius:2px;margin-top:6px}
.rng i{position:absolute;top:-3px;width:2px;height:10px;background:var(--or)}
/* right */
.right{display:flex;flex-direction:column}
.box{border-bottom:1px solid var(--line);padding:10px 12px}
.h{font:600 11px var(--mono);letter-spacing:.08em;color:var(--or);margin-bottom:8px}
.h small{color:var(--mut);letter-spacing:0;font-weight:400;margin-left:6px;text-transform:none}
.clocks{display:grid;grid-template-columns:1fr;gap:3px;font:11.5px var(--mono)}
.clocks div{display:flex;justify-content:space-between;gap:6px;white-space:nowrap}
.clocks .st{font-size:10.5px}
.st.open{color:var(--up)}.st.closed{color:var(--mut)}.st.brk{color:var(--s4)}
.movers{display:grid;grid-template-columns:1fr 1fr;gap:10px;font:12px var(--mono)}
.movers h4{margin:0 0 4px;font:600 10.5px var(--mono);color:var(--mut);letter-spacing:.06em}
.movers a{display:flex;justify-content:space-between;gap:6px;color:var(--tx);text-decoration:none;padding:2px 0;cursor:pointer}
.movers a:hover{color:var(--or)}
.heat{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}
.heat button{border:0;border-radius:3px;padding:6px 2px;font:11px/1.25 var(--mono);color:#fff;text-align:center;min-height:42px}
.heat button b{display:block;font-weight:700}
.news{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto}
.news a{color:var(--tx);text-decoration:none;font-size:13px;line-height:1.35}
.news a:hover{color:var(--or)}
.news small{display:block;color:var(--mut);font:11px var(--mono);margin-top:2px}
/* board */
.board{padding:24px 16px 40px;max-width:1500px;margin:0 auto}
.board-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:12px}
.board-h h2{margin:0;font:600 20px var(--sans)}
.board-h p{margin:0;color:var(--mut);font-size:12.5px}
.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}
.bcard{background:var(--p1);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.bcard h3{margin:0;padding:9px 12px;font:600 11.5px var(--mono);letter-spacing:.08em;color:var(--or);border-bottom:1px solid var(--line);background:#141417}
.bcard table{width:100%;border-collapse:collapse;font:12px var(--mono)}
.bcard td{padding:5px 12px;border-bottom:1px solid #1b1b1f;white-space:nowrap}
.bcard tr{cursor:pointer}.bcard tr:hover td{background:var(--p2)}
.bcard td:first-child{max-width:150px;overflow:hidden;text-overflow:ellipsis}
.r{text-align:right}
/* analysis */
.an-head{max-width:1400px;margin:0 auto;padding:26px 20px 6px}
.an-head h1{margin:0 0 4px;font:600 28px var(--sans)}
.an-head p{margin:0;color:var(--tx2);max-width:900px}
.an-head #anStamp{color:var(--mut);font:12px var(--mono)}
.an-tabs{position:sticky;top:82px;z-index:5;background:var(--bg);display:flex;gap:4px;overflow-x:auto;padding:12px 20px;max-width:1400px;margin:0 auto;border-bottom:1px solid var(--line);scrollbar-width:none}
.an-tabs button{flex:none;background:var(--p1);border:1px solid var(--line);border-radius:5px;padding:7px 12px;font:600 12px var(--mono);color:var(--tx2)}
.an-tabs button.on{background:var(--orbg);border-color:var(--or);color:var(--or)}
.an-body{max-width:1400px;margin:0 auto;padding:18px 20px 50px}
.an-panel{display:none}.an-panel.on{display:block}
.loading{color:var(--mut);font:13px var(--mono);padding:40px 0}
.an-panel h2{font:600 20px var(--sans);margin:26px 0 8px}
.an-panel h2:first-child{margin-top:4px}
.an-panel h3{font:600 15px var(--sans);margin:18px 0 6px}
.an-panel p,.an-panel li{color:var(--tx2);max-width:920px}
.an-panel p b,.an-panel li b{color:var(--tx)}
.lead{font-size:15.5px;line-height:1.6}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:14px 0}
.kpi{background:var(--p1);border:1px solid var(--line);border-radius:8px;padding:12px 14px}
.kpi .k{font:10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--mut)}
.kpi .v{font:600 22px var(--mono);margin:3px 0 1px}
.kpi .d{font:12px var(--mono)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:12px 0}
.card{background:var(--p1);border:1px solid var(--line);border-radius:8px;padding:14px 16px}
.card h4{margin:0 0 6px;font:600 13px var(--mono);color:var(--or);letter-spacing:.04em}
.card p{margin:0;font-size:13.5px}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--p1);margin:10px 0}
table.t{width:100%;border-collapse:collapse;font:12.5px var(--mono)}
.t th{position:sticky;top:0;background:#141417;color:var(--mut);font-weight:600;font-size:11px;letter-spacing:.05em;text-transform:uppercase;text-align:left;padding:8px 10px;border-bottom:1px solid var(--line2);white-space:nowrap;cursor:pointer;user-select:none}
.t th.r{text-align:right}
.t th.sorted{color:var(--or)}
.t td{padding:6px 10px;border-bottom:1px solid #1b1b1f;white-space:nowrap}
.t tr:hover td{background:#16161a}
.t td.nm{color:var(--tx);max-width:220px;overflow:hidden;text-overflow:ellipsis}
.t td.nm small{color:var(--mut);margin-left:6px}
.t .grp td{background:#141417;color:var(--or);font-weight:600;font-size:11px;letter-spacing:.06em}
.cell{border-radius:3px;padding:2px 6px;display:inline-block;min-width:62px;text-align:right}
.ctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.ctl label{font:12px var(--mono);color:var(--mut)}
select,.inp{background:var(--p2);border:1px solid var(--line2);border-radius:4px;color:var(--tx);font:12.5px var(--mono);padding:6px 8px}
.btn{background:var(--p2);border:1px solid var(--line2);border-radius:4px;padding:6px 10px;font:12px var(--mono);color:var(--tx2)}
.btn:hover,.btn.on{border-color:var(--or);color:var(--or)}
.plot{position:relative;background:var(--p1);border:1px solid var(--line);border-radius:8px;margin:10px 0}
.plot canvas{display:block;width:100%}
.plot .ttl{position:absolute;left:12px;top:8px;font:600 11px var(--mono);color:var(--tx2);letter-spacing:.04em;pointer-events:none}
.legend{display:flex;flex-wrap:wrap;gap:4px 14px;font:12px var(--mono);color:var(--tx2);margin:4px 2px}
.legend i{display:inline-block;width:14px;height:3px;border-radius:2px;vertical-align:middle;margin-right:6px}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.corr{border-collapse:separate;border-spacing:2px;font:11px var(--mono)}
.corr th{color:var(--tx2);font-weight:600;padding:2px 4px;white-space:nowrap}
.corr th.rot{height:110px;vertical-align:bottom}
.corr th.rot span{writing-mode:vertical-rl;transform:rotate(180deg)}
.corr td{width:44px;height:30px;text-align:center;border-radius:3px;color:#fff}
.gauge{height:12px;border-radius:6px;background:linear-gradient(90deg,#c0392b,#383835 50%,#1f8a4c);position:relative;margin:10px 0 4px;max-width:520px}
.gauge i{position:absolute;top:-5px;width:4px;height:22px;background:#fff;border-radius:2px;box-shadow:0 0 0 2px #000}
.gscale{display:flex;justify-content:space-between;max-width:520px;font:11px var(--mono);color:var(--mut)}
.bars{display:flex;flex-direction:column;gap:5px;margin:8px 0;max-width:760px}
.bars .b{display:grid;grid-template-columns:170px 1fr 70px;gap:10px;align-items:center;font:12px var(--mono)}
.bars .trk{position:relative;height:14px}
.bars .trk .mid{position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:var(--line2)}
.bars .trk i{position:absolute;top:0;height:100%;border-radius:3px}
.note{font:12px var(--mono);color:var(--mut);margin:6px 0}
.sig{display:inline-block;font:600 11px var(--mono);padding:2px 7px;border-radius:3px;margin-right:6px}
.sig.pos{background:var(--upbg);color:var(--up)}.sig.neg{background:var(--dnbg);color:var(--dn)}.sig.neu{background:var(--p3);color:var(--tx2)}
.wts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin:10px 0}
.wts div{display:flex;gap:6px;align-items:center}
.wts select{flex:1;min-width:0}
.wts .inp{width:70px;text-align:right}
.months{border-collapse:separate;border-spacing:2px;font:11px var(--mono)}
.months th{color:var(--mut);font-weight:600;padding:2px 4px}
.months td{min-width:46px;height:26px;text-align:center;border-radius:3px;color:#fff}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:14px 16px;border-top:1px solid var(--line);color:var(--mut);font:11.5px var(--mono)}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--p2);border:1px solid var(--or);color:var(--tx);padding:8px 14px;border-radius:6px;font:12px var(--mono);z-index:50}
/* responsive */
@media (max-width:1250px){.term{grid-template-columns:270px minmax(0,1fr)}.right{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.right .box{border-right:1px solid var(--line)}}
@media (max-width:820px){
  .top{gap:10px;padding:0 10px}.logo{font-size:13px}.tab{padding:0 8px;font-size:11px}.clock{display:none}
  .term{grid-template-columns:1fr}.left{position:static;max-height:none}.wl{max-height:340px}
  .chartwrap{height:300px}.qstats{grid-template-columns:repeat(2,minmax(0,1fr))}.qhead .big{font-size:24px}
  .two{grid-template-columns:1fr}.bars .b{grid-template-columns:110px 1fr 60px}.an-tabs{top:82px;padding:10px}
  .an-head,.an-body{padding-left:12px;padding-right:12px}.board{padding:18px 10px 30px}.board-grid{grid-template-columns:1fr}
}
/* economics */
.ec-filters{max-width:1400px;margin:0 auto;padding:12px 20px 0;display:flex;flex-direction:column;gap:8px}
.ec-chips{display:flex;flex-wrap:wrap;gap:5px}
.ec-chips button{background:var(--p1);border:1px solid var(--line);border-radius:14px;padding:4px 11px;font:12px var(--mono);color:var(--tx2)}
.ec-chips button.on{background:var(--orbg);border-color:var(--or);color:var(--or)}
.ec-chips button small{color:var(--mut);margin-left:4px}
.ec-grid{max-width:1400px;margin:0 auto;padding:10px 20px 50px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}
.ec-side{display:flex;flex-direction:column;gap:12px;position:sticky;top:96px}
.ec-day{font:600 11px var(--mono);letter-spacing:.08em;color:var(--or);margin:18px 0 6px;padding-bottom:5px;border-bottom:1px solid var(--line)}
.ec-day:first-child{margin-top:4px}
.ec-it{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;padding:11px 0;border-bottom:1px solid #1b1b1f}
.ec-it time{font:12px var(--mono);color:var(--mut);padding-top:2px}
.ec-it a{color:var(--tx);text-decoration:none;font:600 15px/1.35 var(--sans)}
.ec-it a:hover{color:var(--or)}
.ec-it p{margin:4px 0 0;color:var(--tx2);font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ec-meta{margin-top:6px;display:flex;flex-wrap:wrap;gap:5px;align-items:center;font:11px var(--mono);color:var(--mut)}
.ec-meta .src{color:var(--tx2);font-weight:600;margin-right:4px}
.ec-meta .tg{background:var(--p2);border:1px solid var(--line);border-radius:3px;padding:0 5px;cursor:pointer}
.ec-meta .tg:hover{border-color:var(--or);color:var(--or)}
.ec-glance{display:grid;grid-template-columns:1fr auto auto;gap:4px 10px;font:12px var(--mono)}
.ec-glance span:nth-child(3n+1){color:var(--tx2)}
.ec-glance span:nth-child(3n+2),.ec-glance span:nth-child(3n){text-align:right}
.ec-mini{display:flex;flex-direction:column;gap:8px}
.ec-mini a{color:var(--tx);text-decoration:none;font-size:13px;line-height:1.35}
.ec-mini a:hover{color:var(--or)}
.ec-mini small{display:block;color:var(--mut);font:11px var(--mono)}
.ec-side .bars .b{grid-template-columns:110px 1fr 34px}
@media (max-width:1000px){.ec-grid{grid-template-columns:1fr}.ec-side{position:static}}
@media (max-width:820px){.ec-filters,.ec-grid{padding-left:12px;padding-right:12px}.ec-it{grid-template-columns:1fr;gap:2px}}
:root{--hh:52px}
.an-tabs{top:var(--hh)}.left{top:var(--hh);max-height:calc(100vh - var(--hh))}.ec-side{top:calc(var(--hh) + 14px)}
@media (max-width:820px){
  :root{--hh:86px}
  .top{flex-wrap:wrap;height:auto;padding:6px 10px 0;gap:6px 10px}
  .top-r{margin-left:auto}
  .tabs{order:3;width:100%;height:38px;overflow-x:auto;scrollbar-width:none;border-top:1px solid var(--line)}
  .tab{flex:none;padding:0 12px;font-size:11.5px}
  .center{order:-1}
  .left{max-height:none}
}
@media (max-width:820px){.tab .lg{display:none}}

/* economics details */
.ec-row{display:flex;gap:14px;align-items:flex-start}
.ec-txt{flex:1;min-width:0}
.ec-it p{-webkit-line-clamp:3}
.ec-th{flex:none;width:132px;height:84px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:var(--p2)}
.ec-more{margin-left:auto;background:none;border:1px solid var(--line2);border-radius:4px;color:var(--or);font:11px var(--mono);padding:2px 8px}
.ec-more:hover{border-color:var(--or)}
.ec-det{margin-top:10px;padding:12px 14px;background:var(--p1);border:1px solid var(--line);border-left:3px solid var(--or);border-radius:6px}
.ec-det p{-webkit-line-clamp:unset!important;display:block!important;overflow:visible!important}
.ec-facts{display:flex;flex-wrap:wrap;gap:4px 14px;font:11.5px var(--mono);color:var(--mut);margin-bottom:8px}
.ec-sum{color:var(--tx)!important;font-size:14px!important;margin:0 0 10px!important}
.ec-ex .h{margin-bottom:4px}
.ec-ex p{color:var(--tx2)!important;font-size:14px!important;line-height:1.55!important;margin:0 0 8px!important;padding-left:10px;border-left:2px solid var(--line2)}
.ec-go{display:inline-block;margin-top:6px;font:600 12.5px var(--mono);color:var(--or)!important}
.ec-big{float:right;width:220px;height:140px;object-fit:cover;border-radius:6px;margin:0 0 8px 14px}
.ec-det::after{content:'';display:block;clear:both}
.ec-tops{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:8px}
.ec-top{display:flex;flex-direction:column;gap:6px;background:var(--p1);border:1px solid var(--line);border-radius:8px;overflow:hidden;text-decoration:none;color:var(--tx);padding-bottom:12px}
.ec-top:hover{border-color:var(--or)}
.ec-top img{width:100%;height:170px;object-fit:cover;background:var(--p2)}
.ec-top b{font:600 15px/1.35 var(--sans);padding:0 12px}
.ec-top span{font-size:13px;color:var(--tx2);padding:0 12px;line-height:1.45}
.ec-top small{font:11px var(--mono);color:var(--mut);padding:0 12px}
@media (max-width:820px){.ec-tops{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:6px}.ec-top{flex:0 0 80%;scroll-snap-align:start}.ec-big{float:none;width:100%;height:160px;margin:0 0 8px}.ec-th{width:86px;height:60px}.ec-top img{height:120px}}

.upd{font:11px var(--mono);color:var(--mut)}
.upd.flash{animation:fl 1.2s ease-out}
@keyframes fl{from{color:var(--up)}to{color:var(--mut)}}
@media (max-width:820px){.upd{display:none}}

/* SI summary */
.si{background:linear-gradient(160deg,rgba(249,115,22,.08),var(--p1) 55%);border:1px solid var(--or2);border-radius:10px;padding:16px 18px;margin:4px 0 18px}
.si-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font:12px var(--mono)}
.si-h .btn{margin-left:auto;padding:3px 9px;font-size:11px}
.si-badge{background:var(--or2);color:#111;font:700 11px var(--mono);letter-spacing:.08em;padding:3px 8px;border-radius:3px}
.si-hl{font:600 19px/1.35 var(--sans);margin:12px 0 6px;color:var(--tx)}
.si-ov{color:var(--tx2);font-size:14.5px;line-height:1.6;margin:0 0 12px;max-width:none}
.si-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.si-sec h4,.si-watch h4{margin:6px 0 4px;font:600 11.5px var(--mono);letter-spacing:.06em;color:var(--or);text-transform:uppercase}
.si-sec ul,.si-watch ul{margin:0;padding-left:18px}
.si-sec li,.si-watch li{color:var(--tx2);font-size:13.5px;line-height:1.5;margin-bottom:6px}
.si-sec li b,.si-watch li b{color:var(--tx);font-weight:600}
.si-ref{display:inline-block;min-width:16px;padding:0 4px;margin-left:2px;border-radius:3px;background:var(--p3);color:var(--or)!important;font:10.5px/16px var(--mono);text-align:center;text-decoration:none;vertical-align:1px}
.si-ref:hover{background:var(--or2);color:#111!important}
.si-watch{margin-top:8px;border-top:1px solid var(--line);padding-top:6px}
@media (max-width:820px){.si-grid{grid-template-columns:1fr}.si{padding:12px}}

/* financial engineering */
.fe-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 12px;margin:10px 0}
.fe-in{display:flex;flex-direction:column;gap:4px;font:11px var(--mono);color:var(--mut);letter-spacing:.03em}
.fe-in .inp,.fe-in select{width:100%}
@media (max-width:820px){.fe-form{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* economic analysis */
.ea{border-color:#3987e5;background:linear-gradient(160deg,rgba(57,135,229,.08),var(--p1) 55%)}
.ea .si-badge{background:#3987e5;color:#fff}
.ea-h{margin:14px 0 8px;font:600 11.5px var(--mono);letter-spacing:.06em;color:#6da7ec;text-transform:uppercase}
.ea-list{display:flex;flex-direction:column;gap:10px}
.ea-item{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:10px 12px;background:var(--p1);border:1px solid var(--line);border-left:3px solid var(--line2);border-radius:6px}
.ea-item.high{border-left-color:var(--dn)}
.ea-n{font:700 15px var(--mono);color:var(--mut)}
.ea-item b{font-size:14.5px;color:var(--tx)}
.ea-item p{margin:4px 0 0;color:var(--tx2);font-size:13.5px;line-height:1.5}
.ea-imp span{font:600 11px var(--mono);color:#6da7ec;text-transform:uppercase;letter-spacing:.04em;margin-right:4px}
.ea-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ea-area{background:var(--p1);border:1px solid var(--line);border-radius:6px;padding:10px 12px}
.ea-area h5{margin:0 0 4px;font:600 11px var(--mono);color:var(--or);letter-spacing:.05em;text-transform:uppercase}
.ea-area p{margin:0;color:var(--tx2);font-size:13px;line-height:1.5}
@media (max-width:820px){.ea-grid{grid-template-columns:1fr}}
