:root{--q-bg:var(--bg,#f4f7fb);--q-panel:var(--panel,#fff);--q-panel2:var(--panel2,#f9fbfe);--q-line:var(--line,#dbe4ef);--q-text:var(--text,#172033);--q-muted:var(--muted,#607088);--q-brand:var(--brand,#17803d);--q-brand2:var(--brand2,#0f6d32);--q-soft:var(--brandSoft,#e8f6ee);--q-red:#dc5264;--q-amber:#c78316;--q-blue:#3478d4}.quant-page{max-width:1540px;margin:0 auto;padding:28px 28px 54px}.quant-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.quant-eyebrow{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;font-weight:800;color:var(--q-brand)}.quant-title{font-size:28px;letter-spacing:-.7px;margin:4px 0;color:var(--q-text)}.quant-subtitle{color:var(--q-muted);font-size:14px}.quant-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.q-btn{border:1px solid var(--q-line);border-radius:8px;background:var(--q-panel);color:var(--q-text);padding:9px 12px;font-size:13px;font-weight:700;cursor:pointer}.q-btn:hover{border-color:var(--q-brand);color:var(--q-brand2)}.q-btn.primary{background:var(--q-brand);border-color:var(--q-brand);color:#fff}.quant-ticker{display:flex;align-items:center;gap:12px;padding:17px 19px;background:linear-gradient(120deg,var(--q-panel),var(--q-panel2));border:1px solid var(--q-line);border-radius:12px;box-shadow:0 1px 0 rgba(23,32,51,.03);margin-bottom:18px}.quant-ticker-symbol{font:800 24px/1 var(--mono,"Consolas",monospace);letter-spacing:-1px}.quant-ticker-name{font-size:14px;color:var(--q-muted);border-left:1px solid var(--q-line);padding-left:12px}.quant-ticker-meta{margin-left:auto;color:var(--q-muted);font-size:12px;text-align:right}.quant-periods,.quant-tabs{display:flex;gap:7px;flex-wrap:wrap}.quant-periods{margin-bottom:18px}.q-toggle,.q-tab{border:1px solid var(--q-line);background:var(--q-panel);color:var(--q-muted);border-radius:7px;padding:7px 11px;font-size:12px;font-weight:750;cursor:pointer}.q-toggle.active,.q-tab.active{background:var(--q-soft);border-color:color-mix(in srgb,var(--q-brand) 36%,var(--q-line));color:var(--q-brand2)}.quant-tabs{border-bottom:1px solid var(--q-line);padding-bottom:12px;margin-bottom:18px}.q-score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.q-score{padding:16px;background:var(--q-panel);border:1px solid var(--q-line);border-radius:11px;min-height:132px}.q-score-label{font-size:11px;color:var(--q-muted);font-weight:800;text-transform:uppercase;letter-spacing:.65px}.q-score-value{font-size:31px;font-weight:850;letter-spacing:-1.2px;color:var(--q-text);margin-top:6px}.q-score-value small{font-size:13px;color:var(--q-muted);letter-spacing:0}.q-score-bar{height:5px;border-radius:4px;background:var(--q-panel2);overflow:hidden;margin:8px 0}.q-score-bar i{display:block;height:100%;border-radius:inherit;background:var(--q-brand)}.q-score-note{font-size:12px;color:var(--q-muted);line-height:1.35}.quant-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:18px}.q-card{background:var(--q-panel);border:1px solid var(--q-line);border-radius:11px;overflow:hidden}.q-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 18px 12px;border-bottom:1px solid var(--q-line)}.q-card-title{font-size:14px;font-weight:800;color:var(--q-text)}.q-card-sub{font-size:12px;color:var(--q-muted);margin-top:2px}.q-chart{height:270px;padding:12px 14px}.q-chart svg{width:100%;height:100%;overflow:visible}.q-metrics{display:grid;grid-template-columns:1fr 1fr;gap:0}.q-metric{padding:13px 18px;border-bottom:1px solid var(--q-line);display:flex;justify-content:space-between;gap:10px;font-size:13px}.q-metric:nth-child(odd){border-right:1px solid var(--q-line)}.q-metric span{color:var(--q-muted)}.q-metric strong{font-variant-numeric:tabular-nums}.q-pos{color:var(--q-brand2)}.q-neg{color:var(--q-red)}.q-neutral{color:var(--q-text)}.q-driver{padding:14px 16px;border-bottom:1px solid var(--q-line);display:flex;gap:11px;align-items:flex-start}.q-driver:last-child{border-bottom:0}.q-driver-dot{width:8px;height:8px;border-radius:50%;background:var(--q-brand);margin-top:5px;flex:none}.q-driver.warning .q-driver-dot{background:var(--q-amber)}.q-driver.bad .q-driver-dot{background:var(--q-red)}.q-driver strong{font-size:13px;display:block}.q-driver p{font-size:12px;color:var(--q-muted);margin:3px 0 0;line-height:1.4}.quant-wide{margin-top:18px}.q-table-wrap{overflow:auto;max-height:500px}.q-table{width:100%;border-collapse:collapse;font-size:12.5px;min-width:760px}.q-table th{position:sticky;top:0;background:var(--q-panel2);color:var(--q-muted);font-size:10.5px;text-align:right;text-transform:uppercase;letter-spacing:.55px;padding:11px 14px;border-bottom:1px solid var(--q-line)}.q-table th:first-child,.q-table td:first-child{text-align:left}.q-table td{padding:10px 14px;text-align:right;border-bottom:1px solid var(--q-line);font-variant-numeric:tabular-nums}.q-table tbody tr:hover{background:var(--q-soft)}.q-table td:first-child{font-weight:700;color:var(--q-text)}.q-empty{padding:60px 25px;text-align:center;color:var(--q-muted)}.q-empty i{display:block;font-size:25px;color:var(--q-brand);margin-bottom:10px}.q-loading{min-height:360px;display:flex;align-items:center;justify-content:center;color:var(--q-muted);font-size:14px}.q-loading:before{content:"";width:22px;height:22px;border:3px solid var(--q-line);border-top-color:var(--q-brand);border-radius:50%;animation:qspin .8s linear infinite;margin-right:9px}@keyframes qspin{to{transform:rotate(360deg)}}.q-disclosure{margin-top:17px;color:var(--q-muted);font-size:11px;line-height:1.5}.q-tooltip{font-size:11px;fill:var(--q-muted)}.q-axis{stroke:var(--q-line);stroke-width:1}.q-bar{fill:#397dd9}.q-line{fill:none;stroke:var(--q-brand);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.q-line-secondary{fill:none;stroke:#397dd9;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.q-legend{display:flex;gap:14px;color:var(--q-muted);font-size:11px;align-items:center}.q-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--q-brand);margin-right:4px}.q-legend i.blue{background:#397dd9}@media(max-width:1040px){.quant-score-grid{grid-template-columns:repeat(2,1fr)}.quant-layout{grid-template-columns:1fr}.quant-ticker-meta{display:none}}@media(max-width:720px){.quant-page{padding:20px 14px 42px}.quant-hero{display:block}.quant-actions{margin-top:14px}.quant-title{font-size:24px}.quant-ticker{align-items:flex-start}.quant-ticker-name{font-size:12px}.quant-score-grid{grid-template-columns:1fr 1fr;gap:9px}.q-score{padding:13px;min-height:120px}.q-score-value{font-size:25px}.q-metrics{grid-template-columns:1fr}.q-metric:nth-child(odd){border-right:0}.q-chart{height:235px}.q-card-head{padding:14px}.q-metric{padding:12px 14px}.quant-tabs{overflow:auto;flex-wrap:nowrap}.q-tab{white-space:nowrap}}

/* The global toolbar styles target the chart's SVG and #searchInput only. */
.quant-search{width:min(100%,560px);}
.quant-search .search-box{height:42px;padding-left:13px;overflow:visible;gap:10px;}
.quant-search .search-box>i{color:var(--soft);font-size:15px;line-height:1;flex:0 0 auto;}
.quant-search #searchInput{height:40px;min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:14px;padding:0;}
.quant-search #searchInput::placeholder{color:var(--soft);}
.quant-search #goBtn{height:32px;margin:0 5px 0 0;padding:0 15px;border-radius:7px;flex:0 0 auto;}
body.theme-dark[data-page="quant-research"] .quant-search .search-box{background:#10141d;border-color:#344052;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
body.theme-dark[data-page="quant-research"] .quant-search .search-box:focus-within{border-color:#398f87;box-shadow:0 0 0 3px rgba(38,166,154,.14);}
body.theme-dark[data-page="quant-research"] .quant-search #searchInput{color:#e4e9ef;}
@media(max-width:720px){.quant-search .search-box{height:42px}.quant-search #goBtn{display:block;height:32px;padding:0 11px;font-size:12px}.quant-search #searchInput{height:40px;}}

/* Quant Research deliberately shares the chart workstation's dark surfaces. */
body.theme-dark[data-page="quant-research"]{
  --q-bg:#0b0e11;
  --q-panel:#131722;
  --q-panel2:#0d1017;
  --q-line:#1e2433;
  --q-text:#d1d5dc;
  --q-muted:#8993a4;
  --q-brand:#26a69a;
  --q-brand2:#64d8cb;
  --q-soft:rgba(38,166,154,.14);
  --q-red:#ef6a72;
  --q-amber:#d9a441;
  background:var(--q-bg);
}
body.theme-dark[data-page="quant-research"] .content{background:var(--q-bg);}
body.theme-dark[data-page="quant-research"] .quant-ticker{background:linear-gradient(118deg,#131722,#101722);box-shadow:0 1px 0 rgba(255,255,255,.025);}
body.theme-dark[data-page="quant-research"] .q-card,
body.theme-dark[data-page="quant-research"] .q-score{box-shadow:0 9px 24px rgba(0,0,0,.16);}
body.theme-dark[data-page="quant-research"] .q-toggle,
body.theme-dark[data-page="quant-research"] .q-tab,
body.theme-dark[data-page="quant-research"] .q-btn{background:#10141d;}
body.theme-dark[data-page="quant-research"] .q-toggle:hover,
body.theme-dark[data-page="quant-research"] .q-tab:hover,
body.theme-dark[data-page="quant-research"] .q-btn:hover{background:#172331;border-color:#34465a;}
body.theme-dark[data-page="quant-research"] .q-toggle.active,
body.theme-dark[data-page="quant-research"] .q-tab.active{background:rgba(38,166,154,.16);border-color:rgba(100,216,203,.38);color:#8ee9df;}
body.theme-dark[data-page="quant-research"] .q-table tbody tr:hover{background:rgba(38,166,154,.09);}
body.theme-dark[data-page="quant-research"] .q-score-bar{background:#222938;}
body.theme-dark[data-page="quant-research"] .q-axis{stroke:#252d3d;}
body.theme-dark[data-page="quant-research"] .q-bar{fill:#4d8ee8;}
body.theme-dark[data-page="quant-research"] .q-line-secondary{stroke:#5a9bed;}

.q-chart canvas{width:100%!important;height:100%!important;}
.q-workbench-card{min-height:360px}.q-source-badge{border:1px solid var(--q-line);background:var(--q-panel2);color:var(--q-muted);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.q-peer-context{padding:12px 18px;color:var(--q-muted);font-size:12px;border-bottom:1px solid var(--q-line)}.q-peer-table td a{display:block}.q-peer-table td small{display:block;color:var(--q-muted);max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.q-peer-focus{background:var(--q-soft)}.q-lab-grid{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(280px,1.1fr);gap:22px;padding:20px}.q-lab-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.q-lab-inputs label{display:flex;flex-direction:column;gap:6px;color:var(--q-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}.q-lab-inputs input{height:38px;padding:0 10px;border:1px solid var(--q-line);border-radius:7px;background:var(--q-panel2);color:var(--q-text);font:700 13px var(--mono)}.q-dcf-result{border-left:1px solid var(--q-line);padding-left:22px;display:grid;align-content:center;grid-template-columns:1fr auto;gap:7px;color:var(--q-muted);font-size:13px}.q-dcf-result strong{font:800 24px var(--mono);color:var(--q-text)}.q-dcf-result small{grid-column:1/-1;margin-top:9px;line-height:1.45}.q-sensitivity{border-top:1px solid var(--q-line);padding:16px 20px 20px}.q-dcf-table{width:100%;border-collapse:collapse;margin-top:10px}.q-dcf-table th,.q-dcf-table td{padding:9px 12px;border:1px solid var(--q-line);text-align:right;font:700 12px var(--mono)}.q-dcf-table th{background:var(--q-panel2);color:var(--q-muted)}.q-timeline{padding:7px 20px 20px}.q-timeline-event{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:15px 0;border-bottom:1px solid var(--q-line);position:relative}.q-timeline-event:before{content:"";position:absolute;left:113px;top:22px;width:8px;height:8px;border-radius:50%;background:var(--q-brand)}.q-timeline-event.negative:before{background:var(--q-red)}.q-timeline-event time{font:800 11px var(--mono);color:var(--q-muted)}.q-timeline-event strong{font-size:13px}.q-timeline-event p{font-size:12px;color:var(--q-muted);margin-top:3px}.q-notes{padding:20px}.q-notes textarea{width:100%;resize:vertical;padding:13px;border:1px solid var(--q-line);border-radius:8px;background:var(--q-panel2);color:var(--q-text);line-height:1.55;margin-bottom:12px}.q-note-status{margin-left:10px;font-size:12px;color:var(--q-brand2);font-weight:700}.q-screen-rules{padding:24px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.q-screen-rules span{border:1px solid var(--q-line);background:var(--q-panel2);padding:8px 10px;border-radius:7px;font:700 12px var(--mono);color:var(--q-text)}.q-screen-rules b{color:var(--q-brand2);font-size:11px}.q-screen-copy{padding:0 24px 18px;color:var(--q-muted);font-size:13px}.q-workbench-card>.q-btn{margin:0 24px 24px}@media(max-width:720px){.q-lab-grid{grid-template-columns:1fr;padding:14px}.q-lab-inputs{grid-template-columns:1fr}.q-dcf-result{border-left:0;border-top:1px solid var(--q-line);padding:16px 0 0}.q-timeline{padding:7px 14px 15px}.q-timeline-event{grid-template-columns:1fr;padding-left:15px;gap:4px}.q-timeline-event:before{left:0;top:19px}}
.q-compare-card{overflow:visible}.q-compare-controls{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin-bottom:14px}.q-compare-controls label{display:grid;gap:6px;color:var(--q-muted);font-size:12px;font-weight:700}.q-compare-controls input,.q-compare-controls select{height:36px;border:1px solid var(--q-line);border-radius:7px;background:var(--q-panel2);color:var(--q-text);padding:0 10px;font:inherit;min-width:155px}.q-compare-add{position:relative}.q-compare-add>div{display:flex}.q-compare-add input{border-radius:7px 0 0 7px;min-width:140px}.q-compare-add .q-btn{border-radius:0 7px 7px 0;min-height:36px;padding:0 13px}.q-compare-suggestions{position:absolute;z-index:10;top:100%;left:0;width:300px;background:var(--q-panel);border:1px solid var(--q-line);border-radius:7px;box-shadow:0 14px 28px rgba(0,0,0,.28);overflow:hidden}.q-compare-suggestions:empty{display:none}.q-compare-suggestions button{display:flex;width:100%;gap:10px;padding:9px 11px;border:0;border-bottom:1px solid var(--q-line);background:transparent;color:var(--q-text);text-align:left;cursor:pointer}.q-compare-suggestions button:hover{background:rgba(38,166,154,.1)}.q-compare-suggestions span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--q-muted)}.q-compare-period{display:flex;border:1px solid var(--q-line);border-radius:7px;overflow:hidden;height:36px}.q-compare-period button{border:0;border-right:1px solid var(--q-line);background:var(--q-panel2);color:var(--q-muted);padding:0 12px;cursor:pointer}.q-compare-period button:last-child{border-right:0}.q-compare-period button.active{background:var(--q-brand);color:#fff}.q-compare-chips{display:flex;gap:8px;flex-wrap:wrap;margin:2px 0 12px}.q-compare-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 8px 5px 10px;border:1px solid rgba(38,166,154,.45);border-radius:999px;background:rgba(38,166,154,.09);color:var(--q-text);font-size:12px;font-weight:700}.q-compare-chip small{font-weight:500;color:var(--q-muted)}.q-compare-chip.unavailable{border-color:rgba(239,107,115,.5);color:var(--q-muted)}.q-compare-chip button{border:0;background:transparent;color:var(--q-muted);font-size:17px;line-height:14px;cursor:pointer}.q-compare-chip button:hover{color:#ef6b73}.q-compare-status{min-height:20px;color:var(--q-muted);font-size:12px;margin-bottom:8px}.q-compare-chart{height:390px;position:relative;margin:4px -2px 18px}.q-compare-chart canvas{width:100%!important;height:100%!important}@media(max-width:640px){.q-compare-controls{align-items:stretch}.q-compare-add,.q-compare-controls label{width:100%}.q-compare-controls select{width:100%}.q-compare-chart{height:300px}.q-compare-suggestions{width:100%}}
.q-compare-card .q-compare-controls{padding:18px 18px 0;margin:0}.q-compare-card .q-compare-chips,.q-compare-card .q-compare-status{margin-left:18px;margin-right:18px}.q-compare-card .q-compare-chart{margin:10px 18px 18px}.q-compare-card .q-compare-table{max-height:none;border-top:1px solid var(--q-line)}.q-compare-card .q-compare-table .q-table{min-width:560px}.q-compare-add label{line-height:1}.q-compare-controls select{cursor:pointer}.q-compare-controls input:focus,.q-compare-controls select:focus{outline:2px solid color-mix(in srgb,var(--q-brand) 45%,transparent);outline-offset:1px;border-color:var(--q-brand)}
