/* Income research uses the same visual hierarchy as the FCN workbench. */
.dividend-page{background:#101416;color:#f0f5f7;--div-mint:#bbf17b;--div-blue:#8adcf1;--div-muted:#aebcc3;--income-line:#344149}
.dividend-page main{max-width:1560px;padding:26px 40px 124px}
.dividend-page .dividend-heading{padding-bottom:22px;gap:28px}
.dividend-page .dividend-heading h1{font-size:34px;font-weight:650;margin-bottom:10px}
.dividend-page .dividend-heading .eyebrow{font-size:10px;color:#bbf17b}
.dividend-page .dividend-heading p:not(.eyebrow){font-size:14px;line-height:1.6}
.dividend-page .feed-status{border-left:1px solid var(--income-line);padding-left:24px;min-width:260px;max-width:380px}
.dividend-page .feed-status>span{color:#8adcf1;font-size:13px}
.dividend-page .feed-status>small{font-size:11px;line-height:1.6}
.dividend-page .notice{font-size:12px;line-height:1.7;padding:12px 16px;border:1px solid #514831;border-left:3px solid #f1cb78;background:#231f17;border-radius:4px;margin-bottom:20px}
.dividend-page .dividend-summary{grid-template-columns:repeat(4,minmax(0,1fr));padding:22px 0;margin-bottom:28px;border-color:var(--income-line)}
.dividend-page .dividend-summary>div{padding:0 24px;border-color:var(--income-line)}
.dividend-page .dividend-summary>div:first-child{padding-left:0}
.dividend-page .dividend-summary strong{font-size:30px;line-height:1.4;color:#bbf17b;margin:6px 0;overflow-wrap:anywhere}
.dividend-page .dividend-summary>div:nth-child(2) strong{color:#8adcf1}
.dividend-page .dividend-summary>div:nth-child(3) strong{color:#f0f5f7}
.dividend-page .dividend-summary>div:last-child strong{color:#f1cb78;font-size:27px}
.dividend-page .dividend-summary span{font-size:12px}
.dividend-page .dividend-summary small{font-size:11px;line-height:1.6}
.dividend-workbench{display:grid;grid-template-columns:290px minmax(0,1fr);gap:32px;align-items:start}
.dividend-page .income-scenario-section{position:sticky;top:24px;padding:0 28px 24px 0;border:0;border-right:1px solid var(--income-line);margin:0}
.dividend-page .income-scenario-heading{align-items:flex-start;gap:12px;margin-bottom:24px}
.dividend-page .income-scenario-heading h2{font-size:20px;font-weight:600;line-height:1.4}
.dividend-page .income-scenario-heading p{font-size:12px;line-height:1.7;margin-top:8px}
.dividend-page .income-scenario{grid-template-columns:1fr;gap:24px}
.dividend-page .income-scenario>label{grid-column:auto;gap:9px;font-size:13px}
.dividend-page .income-scenario label>span{font-size:11px}
.dividend-page .income-scenario input{height:54px;border-color:#4c5d63;background:#1a2327;font-size:23px;font-weight:500;padding:10px 14px}
.dividend-page #income-investment{color:#f1cb78}
.dividend-page #income-leverage{color:#8adcf1}
.dividend-page .income-assumptions{font-size:11px;line-height:1.8;margin-top:24px;padding-top:20px;border-top:1px solid var(--income-line)}
.dividend-page .income-validation{line-height:1.7}
.dividend-page .dividend-workspace{container-type:inline-size;container-name:income-list;min-width:0}
.dividend-page .dividend-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 44px;gap:16px 12px;background:#192226;border:1px solid var(--income-line);border-radius:6px;padding:18px}
.dividend-page .dividend-filters .search-field{grid-column:1/-1;min-width:0}
.dividend-page .dividend-filters>label{font-size:12px;min-width:0}
.dividend-page .dividend-filters input[type=search],.dividend-page .dividend-filters select{width:100%;min-width:0;background:#10181c;border-color:#45565d;margin-top:6px;font-size:13px}
.dividend-page .dividend-filters input[type=search]{font-size:15px;margin-top:0;padding-left:14px}
.dividend-page .dividend-filters .check-filter{font-size:12px;white-space:normal;line-height:1.5;min-height:38px}
.dividend-page .check-filter input{accent-color:#bbf17b;flex:none}
.dividend-page #dividend-reset{grid-column:4;grid-row:2;align-self:end}
.dividend-page .icon-button{background:#1a2327;color:#cfdee2;border-color:#45565d;transition:background .16s,border-color .16s}
.dividend-page .icon-button:hover{background:#29363c;border-color:#8adcf1}
.dividend-page .results-line{padding:26px 0 18px;gap:12px 18px}
.dividend-page .results-line h2{font-size:21px;font-weight:600;line-height:1.4}
.dividend-page .results-line>span{font-size:12px}
.dividend-page .results-line>a{color:#bbf17b;font-size:12px}
.dividend-page .dividend-rows{gap:18px}
.dividend-page .dividend-row{background:#161f23;border:1px solid #3d4c54;border-left:3px solid #bbf17b;border-radius:6px}
.dividend-page .dividend-row:nth-child(even){background:#1a2327}
.dividend-page .dividend-row.caution{border-left-color:#f1cb78}
.dividend-page .dividend-row.unranked{border-left-color:#839aa7}
.dividend-page .candidate-line{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(98px,.65fr) minmax(108px,.65fr) minmax(135px,.85fr) 44px;gap:20px 16px;padding:22px 22px 16px;align-items:start}
.dividend-page .candidate-name{grid-column:1;grid-row:1;gap:10px}
.dividend-page .candidate-rank{width:27px;height:27px;color:#bbf17b;border-color:#52636b;margin-top:1px;font-size:11px}
.dividend-page .candidate-name strong{font-size:21px;line-height:1.3}
.dividend-page .candidate-name small{font-size:11px;line-height:1.6}
.dividend-page .candidate-name .sector{font-size:10px}
.dividend-page .candidate-line>.metric{min-width:0}
.dividend-page .candidate-line>.yield-metric{grid-column:2;grid-row:1}
.dividend-page .candidate-line>.growth-metric{grid-column:3;grid-row:1}
.dividend-page .candidate-line>.income-metric{grid-column:4;grid-row:1}
.dividend-page .candidate-line>.score-metric{grid-column:1;grid-row:2;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center}
.dividend-page .score-metric>strong{font-size:14px;text-align:right}
.dividend-page .score-metric>small{grid-column:1;font-size:10px;margin:0}
.dividend-page .score-meter{grid-column:2;width:100%;height:4px;margin:0}
.dividend-page .score-meter>i{background:#8adcf1}
.dividend-page .candidate-line>.price-metric{display:flex!important;grid-column:2/5;grid-row:2;align-items:baseline;gap:8px 12px;flex-wrap:wrap;border-top:1px solid #33424a;padding-top:9px}
.dividend-page .price-metric>strong{font-size:14px}
.dividend-page .price-metric>:is(span,small){margin:0}
.dividend-page .candidate-line>.row-detail{grid-column:5;grid-row:1;width:44px;height:44px}
.dividend-page .metric>span{font-size:11px;line-height:1.5;margin-bottom:7px}
.dividend-page .metric>strong{font-size:23px;line-height:1.35;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dividend-page .metric>small{font-size:10px;line-height:1.7;margin-top:7px;color:#acbec7}
.dividend-page .candidate-line>.score-metric>strong{font-size:16px}
.dividend-page .candidate-line>.price-metric>strong{font-size:16px}
.dividend-page .yield-metric>strong{color:#bbf17b}
.dividend-page .growth-metric>strong{color:#8adcf1}
.dividend-page .income-metric>strong{color:#f1cb78}
.dividend-page .income-breakdown{gap:16px;margin:0 22px 16px;padding-top:15px;border-color:#33424a}
.dividend-page .income-breakdown dt{font-size:10px;line-height:1.6;margin-bottom:6px}
.dividend-page .income-breakdown dd{font-size:13px;line-height:1.5}
.dividend-page .candidate-flags{padding:0 22px 18px;font-size:11px;line-height:1.7;gap:8px 16px}
.dividend-page .candidate-detail{padding:24px 22px;background:#11191d;gap:24px;border-color:#3d4c54}
.dividend-page .candidate-detail h3{font-size:14px;margin-bottom:16px;line-height:1.5}
.dividend-page .history-chart{height:140px}
.dividend-page .payment-list{font-size:12px;gap:6px 18px}
.dividend-page .candidate-notes p{font-size:12px}
.dividend-page .data-footnote{font-size:11px;line-height:1.8;padding-top:18px;border-top:1px solid var(--income-line)}
.dividend-page .dividend-method{margin-top:32px;border-color:var(--income-line)}
.dividend-page .dividend-footer{padding-top:28px}
@container income-list (min-width:901px){
 .dividend-page .dividend-filters{grid-template-columns:minmax(180px,1.3fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(150px,1fr) 44px;gap:12px}
 .dividend-page .dividend-filters .search-field{grid-column:1;grid-row:1;align-self:end}
 .dividend-page .dividend-filters>label:has(#dividend-sector){grid-column:2;grid-row:1}
 .dividend-page .dividend-filters>label:has(#dividend-min-yield){grid-column:3;grid-row:1}
 .dividend-page .dividend-filters>label:has(#dividend-sort){grid-column:4;grid-row:1}
 .dividend-page #dividend-reset{grid-column:5;grid-row:1}
 .dividend-page .dividend-filters>label:has(#dividend-monthly){grid-column:1;grid-row:2;min-height:30px}
 .dividend-page .dividend-filters>label:has(#dividend-ranked-only){grid-column:2/4;grid-row:2;min-height:30px}
}
@container income-list (max-width:800px){
 .dividend-page .candidate-line{grid-template-columns:minmax(145px,1fr) repeat(2,minmax(90px,.7fr)) 44px;gap:18px 14px}
 .dividend-page .candidate-name{grid-column:1;grid-row:1}
 .dividend-page .candidate-line>.yield-metric{grid-column:2;grid-row:1}
 .dividend-page .candidate-line>.growth-metric{grid-column:3;grid-row:1}
 .dividend-page .candidate-line>.row-detail{grid-column:4;grid-row:1}
 .dividend-page .candidate-line>.income-metric{grid-column:2/5;grid-row:2}
 .dividend-page .candidate-line>.score-metric{grid-column:1;grid-row:2;align-self:center}
 .dividend-page .candidate-line>.price-metric{grid-column:1/-1;grid-row:3}
}
@container income-list (max-width:520px){
 .dividend-page .dividend-filters{grid-template-columns:1fr 1fr 44px;gap:14px 12px;padding:16px}
 .dividend-page .dividend-filters .search-field{grid-column:1/3;grid-row:1}
 .dividend-page #dividend-reset{grid-column:3;grid-row:1;justify-self:end}
 .dividend-page .dividend-filters>label:has(#dividend-sector){grid-column:1;grid-row:2}
 .dividend-page .dividend-filters>label:has(#dividend-min-yield){grid-column:2/4;grid-row:2}
 .dividend-page .dividend-filters>label:has(#dividend-sort){grid-column:1/-1;grid-row:3}
 .dividend-page .dividend-filters>label:has(#dividend-monthly){grid-column:1;grid-row:4}
 .dividend-page .dividend-filters>label:has(#dividend-ranked-only){grid-column:2/4;grid-row:4}
 .dividend-page .candidate-line{grid-template-columns:1fr 1fr 44px;padding:18px 16px;gap:18px 14px}
 .dividend-page .candidate-name{grid-column:1/3;grid-row:1}
 .dividend-page .candidate-line>.row-detail{grid-column:3;grid-row:1}
 .dividend-page .candidate-line>.yield-metric{grid-column:1;grid-row:2}
 .dividend-page .candidate-line>.growth-metric{grid-column:2/4;grid-row:2}
 .dividend-page .candidate-line>.income-metric{grid-column:1/-1;grid-row:3;border-top:1px solid #33424a;padding-top:14px}
 .dividend-page .candidate-line>.score-metric{grid-column:1;grid-row:4;display:block}
 .dividend-page .candidate-line>.score-metric>strong{font-size:16px;text-align:left}
 .dividend-page .candidate-line>.score-metric>.score-meter{margin-top:8px}
 .dividend-page .candidate-line>.price-metric{grid-column:2/4;grid-row:4;border-top:0;padding-top:0;display:block!important}
 .dividend-page .income-breakdown{grid-template-columns:1fr 1fr;margin-inline:16px}
 .dividend-page .candidate-flags{padding-inline:16px}
 .dividend-page .candidate-detail{grid-template-columns:1fr;padding-inline:16px}
}
@media(max-width:1100px){.dividend-workbench{grid-template-columns:245px minmax(0,1fr);gap:24px}.dividend-page .income-scenario-section{padding-right:22px}.dividend-page main{padding-inline:24px}}
@media(max-width:900px){.dividend-workbench{grid-template-columns:1fr}.dividend-page .income-scenario-section{position:static;padding:0 0 24px;border-right:0;border-bottom:1px solid var(--income-line)}.dividend-page .income-scenario{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dividend-page .income-scenario-heading{margin-bottom:18px}.dividend-page .income-assumptions{border:0;padding:0;margin-top:16px}.dividend-page .dividend-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0}.dividend-page .dividend-summary>div:nth-child(odd){padding-left:0}.dividend-page .dividend-summary>div:nth-child(even){border:0}.dividend-page .dividend-summary strong{font-size:27px}}
@media(max-width:600px){.dividend-page main{padding:24px 16px 120px}.dividend-page .dividend-heading h1{font-size:28px}.dividend-page .feed-status{border-left:0;border-top:1px solid var(--income-line);padding:16px 0 0;min-width:0;max-width:none}.dividend-page .dividend-summary>div{padding:0 14px}.dividend-page .dividend-summary>div:nth-child(3),.dividend-page .dividend-summary>div:last-child{grid-column:auto}.dividend-page .dividend-summary strong,.dividend-page .dividend-summary>div:last-child strong{font-size:23px}.dividend-page .income-scenario{grid-template-columns:1fr 1fr}.dividend-page .income-scenario>label:first-child{grid-column:1/-1}.dividend-page .income-scenario input{font-size:21px}.dividend-page .metric>strong{font-size:22px}.dividend-page .candidate-line>.score-metric>strong,.dividend-page .candidate-line>.price-metric>strong{font-size:14px}.dividend-page .results-line{padding-top:0}.dividend-page .results-line>a{margin-left:0}.dividend-page .dividend-footer{gap:18px}}
@media(prefers-reduced-motion:reduce){.dividend-page .icon-button{transition:none}}
