/* EXCALIBUR v16 — consolidated stylesheet.
   Generated from the previous cascade and grouped by responsibility.
   Do not append version patches here; edit the responsible file instead. */
@media (max-width:1150px){
.hero-grid,.two-col{grid-template-columns:1fr}
.heatmap{grid-template-columns:repeat(4,minmax(0,1fr))}
.market-tiles{grid-template-columns:repeat(3,1fr)}
.portfolio-kpis{grid-template-columns:repeat(3,1fr)}
.position-grid{grid-template-columns:1fr}
.position-cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
.topbar{height:auto;padding:14px 15px;align-items:flex-start}
.brand-block h1{font-size:16px}
.brand-block h1 span{display:block;margin:2px 0 0}
.eyebrow{font-size:8px}
.top-actions{flex-direction:column;align-items:flex-end}
.shell{padding:12px}
.panel{padding:15px;border-radius:12px}
.hero-grid{grid-template-columns:1fr}
.market-tiles{grid-template-columns:repeat(2,1fr)}
.heatmap{grid-template-columns:repeat(2,minmax(0,1fr))}
.trigger-columns{grid-template-columns:1fr}
.legend{display:none}
.risk-layout{grid-template-columns:1fr 1fr}
.lead{font-size:13px}
.table-wrap{max-height:440px}
.portfolio-kpis{grid-template-columns:repeat(2,1fr)}
.position-cards{grid-template-columns:1fr}
.position-metrics{grid-template-columns:repeat(2,1fr)}
.position-ref{grid-template-columns:1fr}
.company-sheet{width:100vw;padding:18px}
.ci-grid{grid-template-columns:repeat(2,1fr)}
.ci-title{font-size:24px}
.ci-price{font-size:30px}
.tv-chart-host{height:500px}
.ci-tabs{overflow:auto}
.fin-toolbar{display:block}
.fin-toolbar>div{margin-bottom:7px}
.dc-switch-grid{grid-template-columns:1fr}
.pro-tabs{overflow-x:auto;flex-wrap:nowrap}
.pro-tab{white-space:nowrap}
.exposure-bars>div{grid-template-columns:110px 1fr 48px}
.journal-form>*{width:100%}
}
@media (max-width:1380px){
.position-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
.position-card.asset-fund .position-company{min-height:0}
.brand-mark{width:32px;height:32px}
.eyebrow{display:none}
.top-actions::-webkit-scrollbar{display:none}
.top-actions .ghost-btn{font-size:0;padding:7px;min-width:34px}
.top-actions .ghost-btn[href="cash.html"]{font-size:0}
.top-actions .ghost-btn[href="cash.html"]:after{content:"💰";font-size:14px}
#quickCsvBtn:after{content:"CSV";font-size:9px}
#lockBtn:after{content:"🔒";font-size:12px}
#refreshBtn:after{content:"↻";font-size:15px}
.top-actions .pill{display:none}
.balance-sheet .panel-head{display:block}
.balance-sheet .panel-head>a{display:none}
.balance-sheet .section-kicker{font-size:7px}
.balance-sheet .panel-head h2{font-size:14px}
.bs-total{display:block;padding:9px 10px}
.bs-total span{font-size:8px}
.bs-total strong{font-size:26px;margin:4px 0}
.bs-total small{display:none}
.bs-grid{grid-template-columns:repeat(2,1fr)}
.bs-grid>div{min-height:48px;padding:8px}
.bs-grid b{font-size:14px}
.position-panel .panel-head{display:flex;align-items:center}
.position-panel .panel-head h2{font-size:14px}
.positionFreshness{display:none}
.portfolio-kpis{grid-template-columns:repeat(2,1fr);gap:5px}
.portfolio-kpi{padding:7px}
.portfolio-kpi .metric-label{font-size:7px}
.kpi-value{font-size:13px}
.terminal-view-label{margin-top:10px}
.portfolio-table-view{display:none!important}
.position-grid{display:block}
.position-grid>div:first-child{display:block}
.position-cards{grid-template-columns:1fr;display:grid;gap:5px}
.position-card{padding:11px;border-radius:6px;border-left-width:2px;background:#08121d;box-shadow:none;cursor:pointer}
.position-card:hover{transform:none}
.position-card-head{margin-bottom:8px}
.position-company{font-size:14px;margin-bottom:3px}
.position-code{font-size:9px}
.status-chip{font-size:7px;padding:3px 5px}
.position-metrics{grid-template-columns:repeat(2,1fr);display:grid;gap:4px}
.position-metrics>div{padding:7px 8px;border-radius:4px}
.position-metrics>div:nth-child(3){display:none}
.position-metrics span{font-size:7px}
.position-metrics strong,.position-metrics>div:first-child strong,.position-metrics>div:nth-child(4) strong{font-size:13px}
.position-ref{grid-template-columns:repeat(3,1fr);gap:4px}
.position-ref>div{padding:6px}
.position-ref strong{font-size:9px}
.exit-advisor{font-size:8px!important;padding:7px!important}
.position-meta{font-size:7px;padding-top:6px;margin-top:7px}
.position-grid>div:nth-child(2){margin-top:12px}
.position-grid .table-wrap{max-height:240px;overflow:auto}
.company-modal{padding:0!important}
.ci-title{font-size:23px!important}
.ci-tabs{overflow-x:auto;flex-wrap:nowrap!important}
.ci-tab{white-space:nowrap}
.ci-holding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ci-holding-grid .ci-card strong{font-size:13px}
.bs-grid-six{grid-template-columns:repeat(2,minmax(0,1fr))}
.broker-cash-box{display:block}
.broker-cash-entry{margin-top:10px}
.broker-cash-entry input{min-width:0;width:100%}
.broker-total-grid{grid-template-columns:1fr}
.broker-total-card{padding:13px}
.broker-total-card strong{font-size:22px}
.broker-account-total{display:block}
.broker-account-total .broker-cash-entry{margin-top:12px}
.excalibur-total strong{font-size:42px!important}
.tv-direct-frame{min-height:460px}
.cyber-topbar{min-height:auto}
.cyber-broker-grid,.cyber-mid-grid{grid-template-columns:1fr}
.cyber-stat-grid{grid-template-columns:1fr 1fr!important}
html{font-size:17px}
.topbar{height:58px;padding:13px 14px!important;align-items:center;overflow:hidden}
.brand-block h1 span{display:none!important}
.ghost-btn,.cyber-action,.pill{font-size:12px!important;min-height:42px}
.broker-neon-label{font-size:13px!important}
.broker-neon-meta{font-size:12px!important}
.cyber-block-title{font-size:14px!important}
.allocation-legend span,
  .allocation-legend b{font-size:14px!important}
.portfolio-kpi,
  .bs-grid>div{min-height:92px;padding:15px!important}
.portfolio-kpi .metric-label,
  .metric-label{font-size:12px!important}
.portfolio-kpi .kpi-value,
  .kpi-value,
  .metric-value{font-size:25px!important}
.symbol-cell strong{font-size:16px!important}
.symbol-cell small{font-size:11px!important}
.company-sheet h2,
  .company-sheet h3{font-size:23px!important}
.panel{padding:15px!important;border-radius:7px;margin-top:14px!important}
table{min-width:980px}
table thead th{font-size:13px!important;padding:13px 11px!important}
table tbody td{font-size:15px!important;padding:15px 11px!important}
.lead,.reason,.trigger-item,.context-grid p,.delta-text,.panel p{font-size:16px!important}
#dcBiasNote,
  .dc-regime-card small,
  .dc-command-sub,
  .dc-warning,
  .ci-sub,
  .ci-summary,
  .ci-note{font-size:15px!important}
.ci-card span{font-size:13px!important}
.ci-card strong{font-size:17px!important}
.ex-chart-wrap{min-height:500px;padding:12px}
.ex-jp-chart{height:320px}
.ex-chart-stats{grid-template-columns:1fr}
html,body{width:100%;max-width:100%;overflow-x:hidden!important}
body{font-size:16px!important;line-height:1.6!important}
.shell,main,.panel,.position-panel,.market-risk-block,.dc-command{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.shell{padding:8px;padding-left:10px!important;padding-right:10px!important}
.cyber-topbar,.topbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;min-width:0!important;padding:12px 10px!important;box-sizing:border-box!important}
.brand-block{width:100%!important;min-width:0!important}
.brand-block h1{font-size:22px!important;white-space:nowrap!important}
.brand-block h1 span,.eyebrow,.cyber-nav{display:none!important}
.top-actions{flex-direction:row;align-items:center;gap:8px!important;overflow-x:auto;margin-left:8px;display:grid!important;grid-template-columns:1fr 1fr 46px 46px!important;width:100%!important;min-width:0!important}
.top-actions .pill,#freshnessPill{display:none!important}
.top-actions .ghost-btn,.top-actions .cyber-action{width:100%!important;min-width:0!important;height:44px!important;padding:0 8px!important;font-size:12px!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.cyber-balance{padding:12px!important}
.cyber-hero{grid-template-columns:1fr;display:block!important;min-height:0!important}
.hero-main{padding:20px 16px!important}
.hero-label{font-size:14px!important}
.hero-total{font-size:clamp(39px,11vw,52px)!important;line-height:1.02!important;letter-spacing:-.045em!important;white-space:nowrap!important}
.hero-subline{font-size:11px!important;display:block!important;line-height:1.7!important}
.hero-subline span{display:block!important;margin-top:6px!important}
.hero-signal{display:none!important}
.cyber-broker-grid{grid-template-columns:1fr!important;gap:12px!important}
.broker-neon{min-height:0!important;padding:17px!important;width:100%!important;min-width:0!important}
.broker-neon-head{align-items:flex-start!important}
.broker-neon-head b{font-size:16px!important;line-height:1.25!important}
.broker-neon-head small{font-size:13px!important}
.broker-neon>strong{font-size:34px!important;white-space:nowrap!important}
.cyber-mid-grid{grid-template-columns:1fr!important;gap:12px!important}
.cyber-exposure-card{grid-column:auto!important}
.cyber-allocation,.cyber-stats,.cyber-exposure-card{width:100%!important;min-width:0!important;padding:16px!important}
.allocation-body{grid-template-columns:1fr!important;display:grid!important;gap:18px!important}
.allocation-ring{width:min(210px,72vw)!important;margin:4px auto 8px!important}
.allocation-legend{width:100%!important;min-width:0!important}
.allocation-legend>div{grid-template-columns:12px minmax(0,1fr) auto!important;display:grid!important;gap:10px!important;width:100%!important;min-width:0!important}
.allocation-legend span{white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important;writing-mode:horizontal-tb!important;font-size:14px!important;line-height:1.4!important}
.allocation-legend b{white-space:nowrap!important;font-size:15px!important}
.allocation-legend em{display:none!important}
.cyber-stat-grid,.position-panel .portfolio-kpis,.dc-command .portfolio-kpis{grid-template-columns:1fr!important}
.portfolio-kpi,.bs-grid>div{width:100%!important;min-width:0!important}
.position-panel .panel-head,.dc-command-head{display:block!important}
.position-panel .panel-head>*,.dc-command-head>*{max-width:100%!important}
.position-panel .panel-head .pill,.dc-command-head .pill{display:inline-flex!important;margin-top:12px!important;max-width:100%!important;white-space:normal!important;word-break:break-word!important;line-height:1.4!important}
.table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
.table-wrap table{width:max-content!important;min-width:900px!important;max-width:none!important}
.position-panel .table-wrap:first-of-type{overflow:visible!important;border:0!important;background:transparent!important}
.position-panel .table-wrap:first-of-type table,
 .position-panel .table-wrap:first-of-type thead,
 .position-panel .table-wrap:first-of-type tbody,
 .position-panel .table-wrap:first-of-type tr,
 .position-panel .table-wrap:first-of-type td{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.position-panel .table-wrap:first-of-type table{min-width:0!important}
.position-panel .table-wrap:first-of-type thead{display:none!important}
.position-panel .table-wrap:first-of-type tbody{display:grid!important;gap:12px!important}
.position-panel .table-wrap:first-of-type tr{position:relative!important;padding:16px!important;border:1px solid #2a3b4b!important;border-radius:8px!important;background:#0c141d!important}
.position-panel .table-wrap:first-of-type td{border:0!important;padding:8px 0!important;font-size:15px!important}
.position-panel .table-wrap:first-of-type td.symbol-cell,
 .position-panel .table-wrap:first-of-type td:first-child{padding-bottom:12px!important;margin-bottom:6px!important;border-bottom:1px solid #1f2d39!important}
.position-panel .table-wrap:first-of-type .symbol-cell strong,
 .position-panel .table-wrap:first-of-type td:first-child strong{font-size:19px!important}
.position-panel .table-wrap:first-of-type .symbol-cell small,
 .position-panel .table-wrap:first-of-type td:first-child small{font-size:12px!important}
.company-sheet{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;border-left:0!important;padding:18px 14px 28px!important;font-size:16px!important;position:fixed!important;inset:0!important;overflow-y:auto!important;z-index:9999!important}
.ci-grid{grid-template-columns:1fr 1fr!important}
.ci-card{min-width:0!important}
.ci-price{font-size:36px!important}
.dc-regime-grid,.dc-engine-grid{grid-template-columns:1fr!important}
.dc-mix-row{grid-template-columns:minmax(0,1fr) 80px 42px!important}
.ci-kicker-row{align-items:flex-start}
.ci-fullpage-btn{font-size:12px;white-space:nowrap}
.dc-action-center{padding:14px}
.dc-action-head{display:block}
.dc-action-badge{display:inline-block;margin-top:12px}
.dc-action-head h3{font-size:24px}
.dc-action-head p{font-size:14px!important}
.dc-action-grid strong{font-size:22px}
.dc-action-line p,.dc-trigger-row p,.dc-plan-row span{font-size:14px!important}
}
@media (min-width:1200px){
.shell{max-width:1440px}
.portfolio-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (max-width:1100px){
.company-sheet{width:min(620px,56vw)!important}
.ci-holding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bs-grid-six{grid-template-columns:repeat(3,minmax(0,1fr))}
.cyber-nav{display:none}
.cyber-mid-grid{grid-template-columns:1fr 1fr}
.cyber-exposure-card{grid-column:1/3}
body{font-size:15px!important}
.brand-block h1{font-size:18px!important}
table thead th{font-size:12px!important}
table tbody td{font-size:14px!important}
}
@media (max-width:1000px){
.dc-regime-grid{grid-template-columns:1fr 1fr}
.dc-target-panel{grid-column:auto}
.dc-command{font-size:15px}
.dc-regime-card strong{font-size:28px!important}
.dc-engine-grid{grid-template-columns:1fr!important}
}
@media (max-width:620px){
.dc-universe-table{min-width:760px}
.dc-command{font-size:16px}
.dc-command h2{font-size:24px;line-height:1.2}
.dc-command .section-kicker{font-size:11px}
.dc-command-sub{font-size:14px!important}
.dc-regime-grid{grid-template-columns:1fr!important}
.dc-regime-card{min-height:110px;padding:17px!important}
.dc-regime-card span{font-size:12px!important}
.dc-regime-card strong{font-size:30px!important}
.dc-regime-card small{font-size:12px!important}
.dc-command .cyber-block-title{font-size:13px!important}
.dc-signal-list span{font-size:13px!important}
.dc-signal-list b{font-size:14px!important}
.dc-signal-list em{font-size:12px!important}
.dc-mix-row{grid-template-columns:minmax(150px,1fr) minmax(80px,1fr) 44px!important}
.dc-mix-row strong{font-size:13px!important}
.dc-mix-row span{font-size:12px!important}
.dc-warning{font-size:12px!important}
.dc-command .portfolio-kpis{grid-template-columns:1fr 1fr!important}
.dc-command .portfolio-kpi .metric-label{font-size:11px!important}
.dc-command .portfolio-kpi .kpi-value{font-size:22px!important}
.dc-command table{min-width:900px}
.dc-command table thead th{font-size:12px!important;padding:13px 10px!important}
.dc-command table tbody td{font-size:14px!important;padding:15px 10px!important}
.dc-command .symbol-cell strong{font-size:15px!important}
.dc-switch-route strong{font-size:15px!important}
.dc-switch-card p{font-size:13px!important}
.dc-universe summary{font-size:12px!important}
}
@media (min-width:1101px){
.shell{max-width:1640px!important}
.panel{padding:18px!important}
.market-risk-block .panel{padding:22px!important}
.company-sheet{width:min(720px,46vw)!important;padding:24px 26px!important}
}
@media (max-width:900px){
.lead,
  .reason,
  .trigger-item,
  .context-grid p,
  .delta-text,
  .market-risk-block p,
  .market-risk-block li{font-size:16px!important;line-height:1.85!important}
.trigger-title{font-size:16px!important}
.context-grid .metric-label{font-size:13px!important}
.dc-action-grid,.dc-action-detail-grid{grid-template-columns:1fr}
}
@media (min-width:1100px){
.panel{padding:22px!important}
}
@media (max-width:390px){
.hero-total{font-size:38px!important}
.broker-neon>strong{font-size:31px!important}
.top-actions{grid-template-columns:1fr 1fr 42px 42px!important}
.brand-block h1{font-size:20px!important}
}

@media (max-width:760px){
  html,body{overflow-x:hidden}
  *{min-width:0}
  .top-actions{grid-template-columns:1fr 1fr}
  .top-actions .ghost-btn,.top-actions .cyber-action{min-height:44px}
  .hero-total{white-space:normal;overflow-wrap:normal;font-size:clamp(36px,10.5vw,52px)}
  #portfolioTableView{display:none}
  #positionCardView{display:grid}
  .portfolio-table-wrap{overflow-x:auto}
  .company-sheet{height:100dvh;min-height:100svh}
}
@media (max-width:390px){
  .top-actions{grid-template-columns:1fr 1fr}
  .hero-total{font-size:clamp(34px,10vw,44px)}
}


@media (max-width:760px){
  .top-actions{grid-template-columns:1fr 1fr 1fr}
  .quick-trade-btn{grid-column:auto}
  .mobile-portfolio-card{width:100vw;border-left:0;padding:14px;padding-bottom:max(22px,env(safe-area-inset-bottom))}
  .mobile-portfolio-head{top:-14px;padding-top:max(14px,env(safe-area-inset-top))}
  .mobile-portfolio-tabs{top:65px}
  .mobile-pf-two{grid-template-columns:1fr 1fr}
}
@media (max-width:390px){
  .top-actions{grid-template-columns:1fr 1fr}
  .quick-trade-btn{grid-column:1 / -1}
  .mobile-pf-two{grid-template-columns:1fr}
}
