:root{color-scheme:light;--bg: #f5f8f7;--surface: #ffffff;--surface-strong: #eef7f4;--ink: #17201d;--muted: #63716b;--border: #d8e3df;--teal: #18a999;--market-red: #c94431;--market-green: #237a48;--accent: #ba4937;--green: var(--market-green);--coral: var(--accent);--gain: var(--market-red);--loss: var(--market-green);--buy: #2563eb;--sell: #b45309;--amber: #b98521;--indigo: #4f57c8;--shadow: 0 18px 55px rgba(18, 42, 35, .12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.invest-shell[data-market-colors=western]{--gain: var(--market-green);--loss: var(--market-red)}*{box-sizing:border-box;letter-spacing:0}html{background:var(--bg);color:var(--ink)}body{margin:0;min-width:320px}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.invest-shell{min-height:100vh;background:linear-gradient(140deg,rgba(24,169,153,.12),transparent 28rem),linear-gradient(315deg,rgba(228,111,82,.12),transparent 24rem),var(--bg)}.invest-topbar{align-items:center;background:#f5f8f7db;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;min-height:4.25rem;padding:.75rem clamp(1rem,3vw,2.5rem);position:sticky;top:0;z-index:10;backdrop-filter:blur(18px)}.brand{align-items:center;display:flex;gap:.75rem;min-width:13rem}.brand-mark{display:block;flex:0 0 auto;height:2.75rem;width:2.75rem;filter:drop-shadow(0 10px 22px rgba(18,42,35,.18))}.brand strong,.brand small{display:block}.brand strong{font-size:.98rem}.brand small{color:var(--muted);font-size:.76rem;margin-top:.1rem}.topbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.icon-link,.mode-button{align-items:center;background:#ffffffc7;border:1px solid var(--border);border-radius:8px;color:var(--ink);display:inline-flex;gap:.45rem;min-height:2.35rem;padding:.48rem .72rem;transition:background .16s ease,border-color .16s ease,transform .16s ease}.mode-button-active{background:var(--ink);border-color:var(--ink);color:#fff}.preference-button{min-width:7.2rem}.icon-link:hover,.mode-button:hover{border-color:var(--teal);transform:translateY(-1px)}.icon-link:focus-visible,.mode-button:focus-visible{border-color:var(--teal);outline:3px solid rgba(24,169,153,.28);outline-offset:2px}.dashboard{margin:0 auto;max-width:1440px;padding:clamp(1rem,2.5vw,2.5rem)}.hero-band{align-items:end;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto;margin:0 0 1rem}.eyebrow,.panel-heading p{color:var(--coral);font-size:.74rem;font-weight:800;margin:0 0 .32rem;text-transform:uppercase}h1,h2,p{margin-top:0}h1{font-size:clamp(2rem,3vw,3.7rem);line-height:1.02;margin-bottom:.7rem;white-space:nowrap}.hero-copy{color:var(--muted);font-size:1rem;line-height:1.6;margin-bottom:0;max-width:48rem}.status-stack{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.status-pill{align-items:center;border:1px solid var(--border);border-radius:999px;display:inline-flex;font-size:.82rem;font-weight:700;gap:.42rem;padding:.44rem .72rem;white-space:nowrap}.status-pill-safe{background:#2d7d461a;color:var(--green)}.status-pill-warning{background:#b985211f;color:var(--amber)}.status-pill-neutral{background:#fff;color:var(--muted)}.publication-notice{align-items:flex-start;background:#ffffffdb;border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;gap:.7rem;line-height:1.55;margin:0 0 1rem;padding:.85rem 1rem}.publication-notice svg{color:var(--teal);flex:0 0 auto;margin-top:.15rem}.publication-notice p{margin:0}.publication-notice strong{color:var(--ink)}.metric-grid{display:grid;gap:.75rem;grid-template-columns:repeat(6,minmax(0,1fr));margin:1rem 0}.metric-card,.panel{background:#ffffffe6;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.metric-card{align-items:center;display:flex;gap:.72rem;min-height:4.85rem;padding:.78rem .86rem}.metric-icon{align-items:center;background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;color:var(--teal);display:flex;flex:0 0 auto;height:2.05rem;justify-content:center;width:2.05rem}.metric-card p{color:var(--muted);font-size:.8rem;margin-bottom:.18rem}.metric-card strong{display:block;font-size:1.25rem;line-height:1.15;overflow-wrap:anywhere}.metric-card-gain .metric-icon,.metric-card-gain strong{color:var(--gain)}.metric-card-loss .metric-icon,.metric-card-loss strong{color:var(--loss)}.signed-value{font-variant-numeric:tabular-nums;font-weight:800}.signed-value-gain{color:var(--gain)}.signed-value-loss{color:var(--loss)}.signed-value-neutral{color:var(--muted)}.dashboard-grid{align-items:stretch;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(18rem,23rem);margin-bottom:1rem}.dashboard-grid-wide-left{grid-template-columns:minmax(0,1.85fr) minmax(23rem,.9fr)}.panel{display:flex;flex-direction:column;min-width:0;padding:1rem}.panel-heading{align-content:start;display:grid;gap:.22rem;margin-bottom:.95rem;min-height:2.85rem}.panel-heading h2{font-size:1.12rem;line-height:1.12;margin:0}.chart-wrap{--chart-tone: var(--muted);min-height:18rem;overflow:visible;position:relative}.chart-wrap-gain{--chart-tone: var(--gain)}.chart-wrap-loss{--chart-tone: var(--loss)}.chart-canvas-shell{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;min-height:24.25rem;overflow:hidden;position:relative}.chart-canvas{height:20.8rem;min-width:0;overflow:hidden;position:relative;width:100%}.chart-loading{align-items:center;color:var(--muted);display:flex;font-size:.84rem;inset:3.45rem 0 0;justify-content:center;position:absolute}.chart-control-layer{align-items:center;background:linear-gradient(180deg,#fffffff5,#ffffffe0),var(--surface);border-bottom:1px solid var(--border);display:flex;gap:.85rem;justify-content:space-between;min-height:3.45rem;padding:.48rem .65rem;z-index:3}.chart-summary{align-items:start;background:transparent;border:0;display:grid;gap:.22rem;min-width:0;padding:0}.chart-summary-main{align-items:baseline;display:flex;flex-wrap:wrap;gap:.55rem;min-width:0}.chart-summary span{color:var(--muted);font-size:.72rem}.chart-summary strong{color:var(--ink)}.chart-view-context{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;gap:.32rem;min-width:0}.chart-view-context span{background:#eef7f4c7;border:1px solid rgba(216,227,223,.78);border-radius:999px;font-size:.66rem;font-weight:800;line-height:1;padding:.18rem .38rem;white-space:nowrap}.chart-summary-title{color:var(--ink)!important;font-weight:900;text-transform:uppercase;white-space:nowrap}.chart-summary-value{align-items:baseline;display:inline-flex;gap:.36rem;white-space:nowrap}.chart-summary-total{color:var(--muted);font-weight:800;white-space:nowrap}.chart-range-toolbar{align-items:center;background:#ffffffd1;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 20px #122a2314;display:inline-flex;flex:0 0 auto;gap:.18rem;max-width:min(100%,19rem);overflow-x:auto;padding:.22rem;scrollbar-width:none}.chart-range-toolbar::-webkit-scrollbar{display:none}.chart-view-context::-webkit-scrollbar{display:none}.chart-range-button{background:transparent;border:0;border-radius:6px;color:var(--muted);font-size:.72rem;font-weight:850;line-height:1;min-height:1.65rem;min-width:2.02rem;padding:.35rem .45rem}.chart-range-button:hover,.chart-range-button:focus-visible,.chart-range-button-active{background:var(--ink);color:#fff;outline:none}.chart-range-button:focus-visible{box-shadow:0 0 0 3px #18a99947}.chart-hover-card{background:#fffffffa;border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 38px #122a2329;color:var(--ink);display:grid;gap:.48rem;left:var(--tooltip-left);max-width:min(22rem,calc(100vw - 2rem));min-width:min(17rem,calc(100vw - 2rem));padding:.65rem;pointer-events:none;position:absolute;top:var(--tooltip-top);z-index:4}.chart-hover-card-left{transform:translate(.75rem,-50%)}.chart-hover-card-right{transform:translate(calc(-100% - .75rem),-50%)}.chart-hover-topline{align-items:center;display:flex;gap:.8rem;justify-content:space-between}.chart-hover-topline span{color:var(--muted);font-size:.78rem;font-weight:800}.chart-hover-topline strong{font-size:.92rem;white-space:nowrap}.chart-hover-metrics{display:grid;gap:.42rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.chart-hover-metrics div{min-width:0}.chart-hover-metrics dt,.chart-hover-metrics dd{margin:0}.chart-hover-metrics dt{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.chart-hover-metrics dd{font-size:.8rem;font-weight:850;margin-top:.12rem;overflow-wrap:anywhere}.chart-hover-trades,.trade-detail-card{display:grid;gap:.45rem}.chart-footer-row{align-items:center;display:flex;gap:.7rem;justify-content:space-between;margin-top:.65rem;min-width:0}.trade-event-rail{align-items:center;display:flex;flex:1 1 auto;gap:.46rem;min-width:0;overflow-x:auto;padding-bottom:.1rem}.chart-attribution{color:var(--muted);flex:0 0 auto;font-size:.72rem;font-weight:800}.chart-attribution:hover,.chart-attribution:focus-visible{color:var(--ink);outline:none}.trade-event-rail>span{color:var(--muted);flex:0 0 auto;font-size:.76rem;font-weight:850;text-transform:uppercase}.trade-event-button{align-items:center;background:#fff;border:1px solid var(--border);border-radius:999px;color:var(--ink);display:inline-flex;flex:0 0 auto;font-size:.76rem;font-weight:800;gap:.32rem;min-height:2rem;padding:.28rem .56rem .28rem .34rem;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.trade-marker-label{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:900;height:1.28rem;justify-content:center;width:1.28rem}.trade-event-button-buy .trade-marker-label{background:var(--buy)}.trade-event-button-sell .trade-marker-label{background:var(--sell)}.trade-event-button-mixed .trade-marker-label{background:var(--indigo)}.trade-event-button:hover,.trade-event-button:focus-visible,.trade-event-button-active{border-color:var(--chart-tone);box-shadow:0 8px 22px #122a231f;outline:none;transform:translateY(-1px)}.trade-event-button-unplotted{border-style:dashed;color:var(--muted)}.trade-event-button:focus-visible{outline:3px solid rgba(24,169,153,.25);outline-offset:2px}.trade-detail-card{background:#fffffff0;border:1px solid var(--border);border-radius:8px;margin-top:.65rem;padding:.65rem}.trade-tooltip-topline{align-items:center;display:flex;gap:.6rem;justify-content:space-between;margin-bottom:.45rem}.trade-tooltip-date{color:var(--muted);font-size:.78rem;font-weight:800}.trade-tooltip-action{border-radius:999px;color:#fff;font-size:.7rem;font-weight:900;line-height:1;padding:.26rem .44rem;white-space:nowrap}.trade-tooltip-action-buy{background:var(--buy)}.trade-tooltip-action-sell{background:var(--sell)}.trade-tooltip-action-mixed{background:var(--indigo)}.trade-tooltip-list{display:grid;gap:.36rem}.trade-tooltip-row{align-items:center;background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:.48rem;grid-template-columns:auto minmax(0,1fr) auto;padding:.48rem}.trade-tooltip-row span{font-size:.78rem;min-width:0;overflow-wrap:anywhere}.trade-tooltip-main{display:grid;gap:.1rem}.trade-tooltip-main strong{font-size:.86rem}.trade-tooltip-main span{color:var(--muted);overflow-wrap:normal;white-space:nowrap}.trade-tooltip-cash{font-weight:900;text-align:right;white-space:nowrap}.trade-side{border-radius:999px;color:#fff;display:inline-flex;font-size:.68rem;font-weight:900;justify-content:center;min-width:2.35rem;padding:.2rem .34rem;white-space:nowrap}.trade-side-buy{background:var(--buy)}.trade-side-sell{background:var(--sell)}.empty-chart,.empty-state{align-items:center;background:linear-gradient(135deg,#18a9991a,#4f57c814),var(--surface);border:1px dashed var(--border);border-radius:8px;color:var(--muted);display:flex;flex-direction:column;gap:.45rem;justify-content:center;min-height:16rem;padding:1.4rem;text-align:center}.empty-state{min-height:10rem}.empty-chart strong,.empty-state strong{color:var(--ink);font-size:1rem}.balance-list{display:grid;gap:.5rem}.balance-row{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;min-height:2.65rem;padding-bottom:.46rem}.balance-row:last-child{border-bottom:0}.balance-row span{color:var(--muted);font-size:.86rem}.balance-row strong{font-size:.95rem;overflow-wrap:anywhere;text-align:right}.account-status-card{align-items:start;background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:.65rem;grid-template-columns:minmax(0,1fr) auto;padding:.68rem}.account-status-card div{display:grid;gap:.18rem;min-width:0}.account-status-card span:first-child,.account-status-card small{color:var(--muted);font-size:.76rem}.account-status-card span:first-child{font-weight:800;text-transform:uppercase}.account-status-card strong{font-size:1rem;line-height:1.2}.account-status-card small{line-height:1.35}.account-status-badge{border-radius:999px;font-size:.68rem;font-weight:900;line-height:1;padding:.34rem .52rem;white-space:nowrap}.account-status-badge-neutral{background:#fff;border:1px solid var(--border);color:var(--muted)}.account-status-badge-safe{background:#2d7d461a;color:var(--green)}.account-status-badge-warning{background:#b9852124;color:var(--amber)}.macro-empty-state{min-height:7rem}.macro-regime-panel{display:grid;gap:.78rem;min-width:0}.macro-regime-head{align-items:start;display:flex;gap:.8rem;justify-content:space-between}.macro-regime-head>div{display:grid;gap:.2rem;min-width:0}.macro-regime-head strong{font-size:1.2rem;line-height:1.2;overflow-wrap:anywhere}.macro-regime-head small{color:var(--muted);font-size:.78rem;line-height:1.35}.macro-kicker,.macro-list-title,.macro-sensitivity-heading{align-items:center;color:var(--muted);display:inline-flex;font-size:.72rem;font-weight:900;gap:.28rem;letter-spacing:0;text-transform:uppercase}.macro-score-badge{border-radius:999px;flex:0 0 auto;font-size:.72rem;font-weight:900;line-height:1;padding:.38rem .56rem;white-space:nowrap}.macro-score-badge.macro-score-high{background:#c944311f}.macro-score-badge.macro-score-medium{background:#b9852124}.macro-score-badge.macro-score-low{background:#2d7d461a}.macro-score-badge.macro-score-neutral{background:#ffffffd6;border:1px solid var(--border)}.macro-metric-grid{display:grid;gap:.45rem;grid-template-columns:repeat(8,minmax(0,1fr))}.macro-metric{background:#ffffffc7;border:1px solid var(--border);border-radius:8px;display:grid;gap:.18rem;min-width:0;padding:.54rem}.macro-metric span{color:var(--muted);font-size:.66rem;font-weight:850;text-transform:uppercase}.macro-metric strong{font-size:.82rem;line-height:1.15;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.macro-regime-columns{display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.macro-list-block{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:.45rem;min-width:0;padding:.68rem}.macro-list-block ol{display:grid;gap:.48rem;list-style:none;margin:0;padding:0}.macro-list-block li{display:grid;gap:.16rem;min-width:0}.macro-list-block strong{font-size:.82rem;line-height:1.18;overflow-wrap:anywhere}.macro-list-block span:last-child{color:var(--muted);font-size:.76rem;line-height:1.35;overflow-wrap:anywhere}.table-wrap{overflow-x:auto}.holding-card-list{display:none}table{border-collapse:collapse;font-variant-numeric:tabular-nums;min-width:48rem;width:100%}th{color:var(--muted);font-size:.76rem;font-weight:800;padding:.7rem .55rem;text-align:left;text-transform:uppercase}td{border-top:1px solid var(--border);padding:.82rem .55rem;vertical-align:middle}th:not(:first-child),td:not(:first-child){text-align:right}td strong,td span{display:block}td span{color:var(--muted);font-size:.78rem;margin-top:.16rem}.operation-list{display:grid;gap:.62rem;list-style:none;margin:0;max-height:24rem;overflow:auto;padding:0}.operation-list li{align-items:center;border:1px solid var(--border);border-radius:8px;display:grid;gap:.75rem;grid-template-columns:5.6rem minmax(0,1fr) auto;min-height:4.85rem;padding:.72rem .78rem}.operation-date{align-self:start;color:var(--coral);font-size:.76rem;font-weight:800;font-variant-numeric:tabular-nums;margin-top:.16rem;white-space:nowrap}.operation-main{display:grid;gap:.18rem;min-width:0}.operation-badge{align-self:start;border-radius:999px;color:#fff;font-size:.66rem;font-weight:900;line-height:1;padding:.24rem .42rem;text-transform:uppercase}.operation-badge-buy{background:var(--buy)}.operation-badge-sell{background:var(--sell)}.operation-badge-deposit{background:var(--teal)}.operation-list strong{font-size:.95rem;line-height:1.2}.operation-main span{color:var(--muted);font-size:.82rem;line-height:1.45;min-width:0;overflow-wrap:anywhere}.operating-runs-preview{display:grid;gap:.75rem}.operating-runs-toolbar{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.operating-runs-toolbar>span{align-items:center;color:var(--muted);display:inline-flex;font-size:.78rem;font-weight:900;gap:.35rem;text-transform:uppercase}.operating-run-card-list,.operating-run-index{display:grid;gap:.7rem;list-style:none;margin:0;padding:0}.operating-run-card-list{grid-template-columns:repeat(3,minmax(0,1fr))}.operating-run-card,.operating-run-index-card,.operating-run-section{background:#ffffffc7;border:1px solid var(--border);border-radius:8px;display:grid;gap:.58rem;min-width:0;padding:.72rem}.operating-run-card-head{align-items:start;display:flex;gap:.7rem;justify-content:space-between}.operating-run-card-head div{display:grid;gap:.16rem;min-width:0}.operating-run-card-head span:first-child{color:var(--coral);font-size:.72rem;font-weight:850}.operating-run-card-head strong,.operating-run-card-head h2{font-size:1rem;line-height:1.2;margin:0;overflow-wrap:anywhere}.operating-run-card p,.operating-run-index-card p,.operating-run-section p{color:var(--muted);font-size:.86rem;line-height:1.48;margin:0;overflow-wrap:anywhere}.operating-run-status{border-radius:999px;flex:0 0 auto;font-size:.66rem;font-weight:900;line-height:1;max-width:100%;overflow:hidden;padding:.34rem .5rem;text-overflow:ellipsis;white-space:normal}.operating-run-status-completed_with_confirmed_execution{background:#2d7d461a;color:var(--green)}.operating-run-status-completed_no_action,.operating-run-status-local_unpublished_actionable_decision,.operating-run-status-expired_no_execution,.operating-run-status-superseded{background:#b9852124;color:var(--amber)}.operating-run-meta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.76rem;font-weight:800;gap:.45rem;justify-content:space-between}.operating-run-detail-link{align-items:center;color:var(--indigo);display:inline-flex;font-size:.78rem;font-weight:850;gap:.3rem;width:fit-content}.operating-run-detail-link:hover,.operating-run-detail-link:focus-visible{color:var(--ink);outline:none;text-decoration:underline}.research-workspace{--research-detail-sticky-top: 5.3rem;--research-left-column-height: 100vh;align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(22rem,.46fr)}.research-display-toolbar{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.78rem;font-weight:850;gap:.7rem;justify-content:space-between;margin-bottom:.72rem}.research-display-control-group{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.research-display-toggle{align-items:center;background:#ffffffd1;border:1px solid var(--border);border-radius:8px;display:inline-flex;gap:.18rem;padding:.18rem}.sparkline-window-toggle .chart-range-button{min-width:2.15rem}.sparkline-window-custom{align-items:center;background:#ffffffd1;border:1px solid var(--border);border-radius:8px;display:inline-flex;gap:.28rem;min-height:2rem;padding:.18rem .48rem .18rem .24rem;transition:border-color .16s ease,box-shadow .16s ease}.sparkline-window-custom-active,.sparkline-window-custom:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #18a99929}.sparkline-window-custom input{background:transparent;border:0;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;font-weight:850;outline:none;width:3.1rem}.sparkline-window-custom span{color:var(--muted);font-size:.66rem}.watchlist-grid{display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.watch-card{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--ink);display:grid;gap:.62rem;min-height:11rem;padding:.85rem;position:relative;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.watch-card:hover,.watch-card:focus-visible,.watch-card-selected{border-color:#18a999b8;box-shadow:0 14px 32px #122a231f;outline:none;transform:translateY(-1px)}.watch-card:focus-visible{outline:3px solid rgba(24,169,153,.24);outline-offset:2px}.watch-card-topline,.watch-card-symbol-row,.watch-card-meta{display:flex;gap:.48rem}.watch-card-topline{align-items:start;justify-content:space-between;min-width:0}.watch-card-symbol-row{align-items:center;flex-wrap:wrap;min-width:0;row-gap:.18rem}.watch-card strong,.research-symbol{color:var(--indigo);font-size:1.04rem;font-weight:900}.watch-card-name{color:var(--muted);flex:1 1 auto;font-size:.78rem;min-width:0;overflow-wrap:anywhere;text-align:right}.watch-card-theme{color:var(--ink);font-size:.9rem;line-height:1.35}.mini-sparkline{align-items:center;border-block:1px solid rgba(216,227,223,.72);display:flex;height:2.95rem;min-width:0;padding:.18rem 0;position:relative}.mini-sparkline svg{display:block;height:2.55rem;overflow:visible;width:100%}.mini-sparkline polyline{fill:none;stroke:var(--muted);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2}.mini-sparkline-gain polyline{stroke:var(--gain)}.mini-sparkline-loss polyline{stroke:var(--loss)}.mini-sparkline-empty{color:var(--muted);font-size:.76rem}.watch-card-return-grid{display:grid;gap:.28rem;grid-template-columns:repeat(3,minmax(0,1fr))}.watch-card-return{background:#eef7f4ad;border:1px solid rgba(216,227,223,.72);border-radius:6px;display:grid;gap:.06rem;min-width:0;padding:.26rem .28rem}.watch-card-return b{font-size:.68rem;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-card-return small{color:var(--muted);font-size:.54rem;font-weight:850;line-height:1;text-transform:uppercase}.watch-card-return-gain b{color:var(--gain)}.watch-card-return-loss b{color:var(--loss)}.watch-card-meta{align-items:end;color:var(--muted);flex-direction:column;font-size:.78rem;line-height:1.35;margin-top:auto}.watch-card .rank,.research-detail-panel .rank{background:#4f57c81a;border-radius:999px;color:var(--indigo);display:inline-flex;font-size:.7rem;font-weight:850;justify-content:center;line-height:1;padding:.25rem .45rem;white-space:nowrap;width:fit-content}.watch-preview{background:#fffffffa;border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 42px #122a232e;color:var(--ink);display:grid;gap:.42rem;max-width:min(23.5rem,calc(100vw - 1.5rem));min-width:min(19rem,calc(100vw - 1.5rem));opacity:1;padding:.68rem;pointer-events:none;position:fixed;transform:translateY(0);transition:opacity 70ms ease,transform 70ms ease;z-index:40}.watch-preview span{color:var(--muted);font-size:.78rem;line-height:1.4;overflow-wrap:anywhere}.watch-preview strong{color:var(--ink);font-size:.86rem}.watch-preview b,.watch-preview-kicker{color:var(--coral);font-weight:850;text-transform:uppercase}.research-detail-panel{background:linear-gradient(180deg,#eef7f4d1,#fffffff0),#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 14px 34px #122a231a;align-self:start;display:grid;grid-auto-rows:max-content;gap:.9rem;max-height:min(var(--research-left-column-height),calc(100vh - var(--research-detail-sticky-top) - 1rem));min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:.95rem;position:sticky;scrollbar-gutter:stable;top:var(--research-detail-sticky-top)}.research-detail-kicker,.research-detail-title,.analysis-history-heading{align-items:center;display:flex;gap:.48rem}.research-detail-kicker,.analysis-history-heading{color:var(--coral);font-size:.74rem;font-weight:850;text-transform:uppercase}.research-detail-title{align-items:start;justify-content:space-between}.research-detail-title h3{font-size:1.15rem;line-height:1.15;margin:.12rem 0 0}.research-theme{color:var(--muted);line-height:1.45;margin:0}.research-meta-grid{display:grid;gap:.45rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.research-meta-grid div,.research-brief-section{background:#ffffffb8;border:1px solid var(--border);border-radius:8px;min-width:0;padding:.6rem}.research-meta-grid dt,.research-meta-grid dd{margin:0}.research-meta-grid dt,.research-brief-section h4,.analysis-date,.analysis-meta{color:var(--muted);font-size:.7rem;font-weight:850;text-transform:uppercase}.research-meta-grid dd{font-size:.82rem;font-weight:850;margin-top:.16rem;overflow-wrap:anywhere}.research-action-row{display:flex;flex-wrap:wrap;gap:.4rem}.research-action-link{align-items:center;background:#ffffffc7;border:1px solid var(--border);border-radius:8px;color:var(--ink);display:inline-flex;font-size:.76rem;font-weight:850;gap:.28rem;min-height:2rem;padding:.38rem .5rem;transition:background .16s ease,border-color .16s ease,transform .16s ease}.research-action-link:hover,.research-action-link:focus-visible{border-color:var(--teal);outline:none;transform:translateY(-1px)}.market-metric-strip{display:grid;gap:.45rem;grid-template-columns:repeat(4,minmax(0,1fr))}.market-metric{background:#ffffffc2;border:1px solid var(--border);border-radius:8px;display:grid;gap:.16rem;min-width:0;padding:.52rem}.market-metric span{color:var(--muted);font-size:.66rem;font-weight:850;text-transform:uppercase}.market-metric strong{font-size:.82rem;line-height:1.15;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.macro-sensitivity-block{background:#ffffffc2;border:1px solid var(--border);border-radius:8px;display:grid;gap:.5rem;min-width:0;padding:.6rem}.macro-sensitivity-grid{display:grid;gap:.38rem;grid-template-columns:repeat(3,minmax(0,1fr))}.macro-score{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:.12rem;min-width:0;padding:.46rem}.macro-score span{color:var(--muted);font-size:.64rem;font-weight:850;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.macro-score strong{font-size:.82rem;line-height:1.15}.macro-score-high{color:var(--coral)}.macro-score-medium{color:var(--amber)}.macro-score-low{color:var(--green)}.macro-score-neutral{color:var(--muted)}.stock-chart-wrap{--chart-tone: var(--muted);background:#ffffffc2;border:1px solid var(--border);border-radius:8px;display:grid;gap:.48rem;min-width:0;overflow:hidden;padding:.6rem}.stock-chart-wrap.chart-wrap-gain{--chart-tone: var(--gain)}.stock-chart-wrap.chart-wrap-loss{--chart-tone: var(--loss)}.stock-chart-heading,.stock-chart-footer{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.stock-chart-heading div{display:grid;gap:.12rem;min-width:0}.stock-chart-heading span,.stock-chart-footer{color:var(--muted);font-size:.72rem}.stock-chart-heading strong{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-chart-move-row{display:grid;gap:.35rem;grid-template-columns:repeat(2,minmax(0,1fr))}.stock-chart-move-pill{background:#eef7f4ad;border:1px solid rgba(216,227,223,.74);border-radius:8px;display:grid;gap:.12rem;min-width:0;padding:.45rem .55rem}.stock-chart-move-pill small{color:var(--muted);font-size:.66rem;font-weight:850}.stock-chart-move-pill strong{font-size:.9rem;line-height:1.15;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-chart-move-pill-gain strong{color:var(--gain)}.stock-chart-move-pill-loss strong{color:var(--loss)}.stock-chart-range-toolbar{display:flex;gap:.28rem;overflow-x:auto;padding-bottom:.08rem;scrollbar-width:none}.stock-chart-range-toolbar::-webkit-scrollbar{display:none}.stock-chart-canvas-shell{background:var(--surface);border:1px solid rgba(216,227,223,.72);border-radius:8px;min-height:15.65rem;overflow:hidden;position:relative}.stock-chart-canvas{height:15.6rem;min-width:0;overflow:hidden;width:100%}.stock-chart-loading{align-items:center;background:#ffffffb8;color:var(--muted);display:flex;font-size:.78rem;inset:0;justify-content:center;position:absolute}.stock-chart-footer{flex-wrap:wrap}.stock-chart-empty{align-items:center;background:#ffffffc2;border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;gap:.45rem;min-height:4rem;padding:.7rem}.tradingview-preview{background:#ffffffc2;border:1px solid var(--border);border-radius:8px;overflow:hidden}.tradingview-preview summary{align-items:center;cursor:pointer;display:flex;font-size:.78rem;font-weight:850;gap:.35rem;justify-content:space-between;list-style:none;min-height:2.35rem;padding:.55rem .65rem}.tradingview-preview summary::-webkit-details-marker{display:none}.tradingview-preview-title,.tradingview-preview-caption{align-items:center;display:inline-flex;gap:.35rem;min-width:0}.tradingview-preview-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tradingview-preview-caption{color:var(--muted);flex:0 1 auto;font-size:.64rem;justify-content:flex-end;line-height:1.2;text-align:right}.tradingview-widget-container{height:24rem}.tradingview-widget-container-compact{height:20rem;min-height:20rem}.tradingview-widget-container-compact iframe{height:20rem!important;width:100%!important}.research-brief-stack{display:grid;gap:.55rem}.research-brief-section h4,.research-brief-section p,.analysis-history-block p{margin:0}.research-brief-section p,.analysis-history-block p{font-size:.84rem;line-height:1.48;overflow-wrap:anywhere}.research-brief-section h4{margin-bottom:.28rem}.analysis-history-block{display:grid;gap:.6rem}.analysis-timeline{border-left:1px solid var(--border);display:grid;gap:.7rem;list-style:none;margin:0;padding:0 0 0 .72rem}.analysis-timeline li{display:grid;gap:.28rem;min-width:0;position:relative}.analysis-timeline li:before{background:var(--teal);border:2px solid white;border-radius:999px;content:"";height:.55rem;left:-1.02rem;position:absolute;top:.22rem;width:.55rem}.analysis-timeline strong{font-size:.9rem}.analysis-date{color:var(--coral)}.analysis-meta{text-transform:none}.research-source-link{align-items:center;color:var(--indigo);display:inline-flex;font-size:.78rem;font-weight:850;gap:.28rem;width:fit-content}.research-source-link:hover,.research-source-link:focus-visible{color:var(--ink);outline:none;text-decoration:underline}.research-page-shell{min-height:100vh}.research-page{display:grid;gap:1rem;margin:0 auto;max-width:1440px;padding:clamp(1rem,2.5vw,2.5rem)}.research-page-nav{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.research-page-nav a{align-items:center;background:#fffc;border:1px solid var(--border);border-radius:8px;display:inline-flex;font-size:.82rem;font-weight:850;gap:.35rem;min-height:2.35rem;padding:.5rem .72rem}.research-page-hero{align-items:end;background:linear-gradient(140deg,rgba(24,169,153,.12),transparent 28rem),#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto;padding:clamp(1rem,2vw,1.4rem)}.research-page-hero h1{color:var(--indigo);font-size:clamp(2.4rem,5vw,5.2rem);line-height:.95;margin-bottom:.35rem}.research-page-hero p:last-child{color:var(--muted);font-size:1rem;margin:0}.research-page-price{background:#eef7f4d1;border:1px solid var(--border);border-radius:8px;display:grid;gap:.18rem;min-width:13rem;padding:.8rem}.research-page-price span,.research-page-price small,.research-page-source-note{color:var(--muted);font-size:.74rem}.research-page-price strong{font-size:1.5rem}.research-page-grid{align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(23rem,.36fr)}.research-page-main,.research-page-side,.research-page-card,.research-page-history{display:grid;gap:.8rem;min-width:0}.research-page-chart,.research-page-card,.research-page-history,.research-page-tradingview{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 14px 34px #122a2314;min-width:0;padding:.9rem}.research-page-chart{--chart-tone: var(--muted)}.research-page-chart>.chart-range-toolbar{max-width:100%}.research-page-chart.chart-wrap-gain{--chart-tone: var(--gain)}.research-page-chart.chart-wrap-loss{--chart-tone: var(--loss)}.research-page-chart-heading{align-items:end;display:flex;gap:1rem;justify-content:space-between}.research-page-chart-heading h2{font-size:1.45rem;margin:0 0 .2rem}.research-page-chart-heading span{color:var(--muted);font-size:.84rem}.research-page-chart-latest{display:grid;justify-items:end}.research-page-chart-latest strong{font-size:1.35rem}.research-page-chart-canvas-shell{border:1px solid var(--border);border-radius:8px;min-height:26.35rem;overflow:hidden;position:relative}.research-page-chart-canvas{height:26.25rem;min-width:0;overflow:hidden;width:100%}.research-trade-event-rail{align-items:center;display:flex;gap:.55rem;margin-top:.65rem;min-width:0}.research-trade-event-rail>span{color:var(--muted);flex:0 0 auto;font-size:.7rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.research-trade-event-rail>div{display:flex;gap:.4rem;min-width:0;overflow-x:auto;padding:.1rem 0 .2rem;scrollbar-width:thin}.research-trade-event{align-items:center;background:var(--surface-strong);border:1px solid var(--border);border-radius:999px;display:inline-flex;flex:0 0 auto;gap:.35rem;min-height:2rem;padding:.28rem .58rem .28rem .34rem}.research-trade-event strong,.research-trade-event small{font-size:.72rem;white-space:nowrap}.research-trade-event small{color:var(--muted)}.research-trade-event-buy .trade-marker-label{background:var(--buy)}.research-trade-event-sell .trade-marker-label{background:var(--sell)}.research-trade-event-mixed .trade-marker-label{background:var(--indigo)}.research-page-chart-empty{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;gap:.6rem;min-height:12rem;padding:1rem}.research-page-tradingview{padding:0}.research-page-tradingview summary{align-items:center;cursor:pointer;display:flex;font-weight:850;gap:.4rem;justify-content:space-between;list-style:none;min-height:2.8rem;padding:.75rem .9rem}.research-page-tradingview summary::-webkit-details-marker{display:none}.research-page-facts,.research-page-snapshot{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.research-page-facts div,.research-page-snapshot div{background:#eef7f4ad;border:1px solid rgba(216,227,223,.78);border-radius:8px;display:grid;gap:.12rem;min-width:0;padding:.58rem}.research-page-facts span,.research-page-snapshot span{color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase}.research-page-facts strong,.research-page-snapshot strong{font-size:.86rem;overflow-wrap:anywhere}.research-page-block{border-top:1px solid var(--border);display:grid;gap:.28rem;padding-top:.7rem}.research-page-block h3{color:var(--muted);font-size:.72rem;margin:0;text-transform:uppercase}.research-page-block p,.research-page-history p{font-size:.9rem;line-height:1.55;margin:0}.operating-runs-page .research-page-hero h1,.operating-run-detail-page .research-page-hero h1{font-size:clamp(2rem,4vw,4.2rem);line-height:1;white-space:normal}.operating-run-index{grid-template-columns:1fr}.operating-run-index-card{background:#fff;box-shadow:0 14px 34px #122a2314;padding:.9rem}.operating-run-index-grid{display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.operating-run-index-grid div,.research-page-snapshot section{background:#eef7f4ad;border:1px solid rgba(216,227,223,.78);border-radius:8px;display:grid;gap:.16rem;min-width:0;padding:.58rem}.operating-run-index-grid dt,.research-page-snapshot h4{color:var(--muted);font-size:.68rem;font-weight:850;margin:0;text-transform:uppercase}.operating-run-index-grid dd,.research-page-snapshot p{color:var(--ink);font-size:.84rem;line-height:1.35;margin:0;overflow-wrap:anywhere}.operating-run-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.operating-run-detail-grid{align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(22rem,.35fr)}.operating-run-detail-main,.operating-run-detail-side{display:grid;gap:.8rem;min-width:0}.operating-run-detail-side .research-page-snapshot{grid-template-columns:1fr}.operating-run-source-list{display:grid;gap:.48rem}.operating-run-source-empty{align-items:center;color:var(--muted);display:inline-flex;font-size:.78rem;font-weight:850;gap:.28rem}.decision-coverage-list{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.decision-coverage-item{background:#eef7f4ad;border:1px solid rgba(216,227,223,.78);border-radius:8px;display:grid;gap:.42rem;min-width:0;padding:.62rem}.decision-coverage-item header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.38rem .55rem;justify-content:space-between;min-width:0}.decision-coverage-item strong{color:var(--ink);font-size:.98rem;line-height:1.2}.decision-coverage-item span{background:#ffffffb3;border:1px solid rgba(216,227,223,.78);border-radius:999px;color:var(--muted);font-size:.65rem;font-weight:850;line-height:1.15;max-width:100%;overflow-wrap:anywhere;padding:.28rem .45rem;text-transform:uppercase}.decision-coverage-item p{color:var(--muted);font-size:.82rem;line-height:1.45}.run-ledger-table-wrap{overflow-x:auto}.run-ledger-table{min-width:42rem}.run-ledger-card-list{display:none}.run-ledger-card{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:.55rem;padding:.64rem}.run-ledger-card header{align-items:center;display:flex;gap:.7rem;justify-content:space-between}.run-ledger-card header span,.run-ledger-card small,.run-ledger-card dt{color:var(--muted);font-size:.72rem;font-weight:800}.run-ledger-card header strong{font-size:.94rem}.run-ledger-card dl{display:grid;gap:.42rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.run-ledger-card dt,.run-ledger-card dd{margin:0}.run-ledger-card dd{font-size:.86rem;font-weight:900;overflow-wrap:anywhere}.run-ledger-table td:first-child,.run-ledger-table th:first-child{text-align:left}@media(max-width:1120px){h1{white-space:normal}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.macro-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.operating-run-card-list,.operating-run-detail-grid,.decision-coverage-list,.operating-run-index-grid,.dashboard-grid,.dashboard-grid-wide-left,.research-workspace{grid-template-columns:1fr}.research-detail-panel{align-self:start;overflow:visible;max-height:none;position:static}.research-page-grid,.research-page-hero{grid-template-columns:1fr}.research-page-price,.research-page-chart-latest{justify-items:start}.watchlist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.invest-topbar,.hero-band{align-items:stretch;grid-template-columns:1fr}.invest-topbar{display:grid;gap:.8rem;position:static}.brand{min-width:0}.topbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.icon-link,.mode-button{justify-content:center;min-width:0;width:100%}.hero-band{display:grid}.status-stack{align-items:flex-start}.metric-grid,.watchlist-grid{grid-template-columns:1fr}.macro-regime-head,.macro-regime-columns{display:grid;grid-template-columns:1fr}.macro-score-badge{justify-self:start}.macro-metric-grid,.macro-sensitivity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-display-toolbar{justify-content:flex-start}.watch-card{min-height:9rem}.watch-preview{display:none}.watch-card-meta{align-items:start}.watch-card-name{text-align:left}.research-meta-grid,.research-page-facts,.research-page-snapshot{grid-template-columns:1fr}.run-ledger-table-wrap{display:none}.run-ledger-card-list{display:grid;gap:.55rem}.run-ledger-card dl{grid-template-columns:1fr}.operating-runs-toolbar,.operating-run-card-head{align-items:stretch;display:grid;grid-template-columns:1fr}.operating-run-status{justify-self:start}.research-page-chart-heading{align-items:start;display:grid}.research-page-chart-canvas-shell{min-height:21rem}.research-page-chart-canvas{height:20.9rem}.market-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-chart-heading{align-items:start;display:grid}.tradingview-widget-container{height:20rem}.metric-card{min-height:4.6rem}.holdings-table-wrap{display:none}.holding-card-list{display:grid;gap:.65rem}.holding-card{border:1px solid var(--border);border-radius:8px;display:grid;gap:.7rem;padding:.78rem}.holding-card header{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.holding-card header span:first-child{display:grid;gap:.12rem}.holding-card strong{font-size:1rem}.holding-card small,.holding-card dt{color:var(--muted);font-size:.72rem}.holding-card dl{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.holding-card div{min-width:0}.holding-card dt,.holding-card dd{margin:0}.holding-card dd{font-size:.86rem;font-weight:800;overflow-wrap:anywhere}.operation-list{display:flex;flex-direction:column}.operation-list li{display:block;flex:0 0 auto;min-height:0;padding-right:4.25rem;position:relative}.operation-date{display:block;margin-top:0}.operation-main{margin-top:.45rem}.operation-badge{float:none;position:absolute;right:.78rem;top:.72rem}.chart-canvas-shell{min-height:24.35rem}.chart-canvas{height:20rem}.chart-control-layer{align-items:stretch;display:grid;gap:.45rem;min-height:5.75rem;padding:.55rem .65rem}.chart-loading{inset:5.75rem 0 0}.chart-summary-main{gap:.5rem}.chart-view-context{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.chart-deposit-context{display:none}.chart-range-toolbar{justify-content:flex-start;max-width:none;width:100%}.chart-hover-card,.chart-hover-card-left,.chart-hover-card-right{bottom:.75rem;left:.75rem;max-width:none;min-width:0;padding:.68rem;right:.75rem;top:auto;transform:none}.chart-hover-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-footer-row{align-items:stretch;display:grid;gap:.45rem}.chart-attribution{justify-self:end}.trade-tooltip-row{align-items:start;grid-template-columns:auto minmax(0,1fr)}.trade-tooltip-cash{grid-column:2;text-align:left}}
