/* Research workspace: two axes, optional filters, then evidence. */
.research-page { background:#f4f6f9; border:1px solid #e2e8f0; border-top:0; border-radius:0 0 8px 8px; padding:0 18px 22px; color:#203e57; }
.research-page .pf-main-row { display:block; margin:0; }
.research-page .pf-tab-col { width:100%; max-width:none; padding:0; min-width:0; }
.research-controls,.research-results { background:#fff; border:1px solid #dce5ee; border-radius:7px; }
.research-controls { padding:18px 20px 0; margin-bottom:16px; }
.research-heading { display:flex; align-items:baseline; gap:16px; margin-bottom:18px; }
.research-heading h2 { margin:0; font:600 23px var(--font-display,Arial,sans-serif); color:#173f60; }
.research-heading>span { font-size:12px; color:#7b8e9e; }
.research-axes { display:grid; grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr); gap:14px; align-items:center; }
.research-axis { background:#f5f8fb; border:1px solid #dce6ef; border-top:3px solid #305e80; border-radius:5px; padding:12px 14px; min-width:0; }
.research-axis-caption { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:6px; margin-bottom:8px; }
.research-axis-caption>span { font-size:11px; font-weight:600; color:#244c6b; text-transform:uppercase; letter-spacing:.04em; }
.research-axis-caption small { font-size:12px; color:#768b9e; }
.research-page .research-metric { width:100%; min-height:44px; color:#173f60; background:white; font-size:16px; font-weight:500; padding:9px 12px; border:1px solid #cbdbe8; border-radius:4px; white-space:normal; text-align:left; }
.research-page .disp-swap-axes-btn { width:36px; height:36px; border:1px solid #cddce7; background:#fff; color:#527590; border-radius:50%; font-size:20px; }
.research-context { display:grid; grid-template-columns:minmax(115px,.55fr) minmax(0,1fr) minmax(0,1.4fr) minmax(150px,.55fr); align-items:start; gap:20px; padding:0 0 10px; }
.research-minutes-control { display:flex; align-items:center; height:38px; border:1px solid #c5d7e6; background:white; border-radius:4px; overflow:hidden; }
.research-minutes-input { width:100%; min-width:0; height:100%; border:0; padding:7px 10px; font:inherit; color:#204f73; background:transparent; }
.research-minutes-control>span { padding:0 12px 0 4px; color:#71879a; }
.research-minutes-control:has(input:disabled) { opacity:.5; background:#edf2f6; }
@media(max-width:1000px) and (min-width:561px) { .research-context { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.research-comparison { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:start; padding:16px 0; }
.research-scope { margin:14px 0 0; padding:12px 14px; border:1px solid #dce5ee; border-radius:5px; background:#f5f8fb; }
.research-scope>.research-field { width:100%; max-width:620px; }
.research-page .research-scope-select { width:100%; min-width:0; font-size:14px; }
.research-page .research-scope-select .Select-control { width:100%; box-shadow:none; }
.research-page .research-scope-select .Select-value { max-width:100%; }
.research-position-rule { display:block; margin:0 0 12px; font-size:11px; color:#7c8fa0; }
.research-empty { padding:42px 24px; text-align:center; border:1px solid #dce5ee; border-radius:7px; background:#fff; color:#668097; }
.research-empty h3 { margin:0 0 8px; font:500 25px var(--font-display,Arial,sans-serif); color:#325a78; }
.research-empty p { margin:0; font-size:13px; }
.research-field { min-width:0; }
.research-field>label { display:block; margin:0 0 7px; font-size:12px; font-weight:500; color:#58718a; }
.research-comparison>.disp-btn-depor { margin:24px 0 0; min-height:38px; width:auto; padding:8px 16px; font-size:12px; border-radius:4px; }
.research-page .Select-control { min-height:38px; border-color:#ccdbe7; font-size:13px; }
.research-page .Select-placeholder,.research-page .Select-value-label { line-height:36px; }
.research-page .Select-menu-outer { z-index:50; font-size:13px; }
.research-page .disp-dest-input { width:100%; height:38px; border:1px solid #ccdbe7; border-radius:4px; padding:8px 12px; font:inherit; font-size:13px; background:#fff; }
.research-search { position:relative; }
.research-page .disp-dest-results:not(:empty) { position:absolute; top:64px; left:0; right:0; z-index:40; background:white; box-shadow:0 8px 22px #173f6020; max-height:340px; overflow:auto; }
.research-coverage { display:block; font-size:12px; color:#93631c; padding-bottom:8px; }
.research-coverage:empty { display:none; }
.research-filters { border-top:1px solid #e4ebf2; }
.research-filters>summary { padding:14px 0; cursor:pointer; display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:#305c7b; list-style:none; }
.research-filters>summary::-webkit-details-marker { display:none; }
.research-filters>summary::before { content:'+'; font-size:18px; width:12px; }
.research-filters[open]>summary::before { content:'−'; }
.research-filters>summary>span { font-size:11px; color:#365c7a; font-weight:500; background:#eaf1f7; padding:3px 9px; border-radius:12px; }
.research-filters>summary>span:empty { display:none; }
.research-filters-grid { display:grid; grid-template-columns:1fr 1.2fr 1fr; gap:12px; padding:0; }
.research-filter-card { min-width:0; background:#f5f8fb; border:1px solid #e0e8ef; border-radius:6px; padding:16px; }
.research-filter-card>small { display:block; margin-top:12px; color:#7c8b9a; font-size:11px; line-height:1.5; }
.research-filter-caption { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin-bottom:20px; }
.research-filter-card label,.research-filter-caption label { font-size:13px; color:#385771; font-weight:600; }
.research-filter-caption output { color:#173f60; font-weight:600; font-size:13px; background:white; border:1px solid #dce5ee; border-radius:4px; padding:3px 8px; }
.research-market-card .rc-slider { margin:0 8px; width:calc(100% - 16px); }
.research-contract-card .rc-slider { margin:0 20px 0 5px; width:calc(100% - 25px); }
.research-contract-card .rc-slider-mark-text { font-size:10px; }
.research-contract-card>small { margin-top:29px; }
.research-market-card>small { margin-top:29px; }
.research-filter-footer { display:flex; justify-content:flex-end; padding:12px 0 15px; }
.research-page .research-reset { border:0; padding:5px 0 5px 12px; background:transparent; color:#60788c; font:inherit; font-size:12px; cursor:pointer; }
.research-page .research-reset:hover { color:#164d78; text-decoration:underline; }
.research-contract { display:flex; flex-wrap:wrap; gap:7px; }
.research-contract .campo-filter-btn { margin:0; padding:8px 11px; font-size:12px; border-radius:4px; }
.research-ratings { display:flex; flex-wrap:wrap; gap:8px; padding-top:0; font-size:13px; }
.research-ratings>label { display:flex; align-items:center; min-height:38px; padding:8px 10px; border:1px solid #d4e0ea; border-radius:4px; background:white; font-size:12px; font-weight:500; cursor:pointer; }
.research-ratings>label:has(input:checked) { border-color:#4e799b; background:#e7f0f7; color:#123e62; }
.research-ratings input { margin-right:7px; accent-color:#244f72; }
.research-page .rc-slider-track { background:#447da8; }
.research-page .rc-slider-handle { border-color:#447da8; }
.research-results { padding:16px; }
.research-page .disp-quad-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0 0 16px; }
.research-page .disp-quad-box { border:1px solid #e3eaf0; border-radius:5px; padding:10px 14px; background:#f8fafc; display:flex; align-items:center; gap:10px; }
.research-page .disp-quad-box strong { font-size:24px; color:#244d6c; }
.research-page .disp-quad-box span { font-size:12px; color:#6f8395; }
.research-page .disp-quad-best { background:#edf6f1; border-color:#d2e7db; }
.research-page .disp-quad-best strong { color:#287252; }
.research-page .disp-graph-rank-row { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; }
.research-page .disp-graph-wrap { min-width:0; width:100%; background:#fff; border:1px solid #e4ebf1; border-radius:6px; overflow:visible; }
.research-page .disp-rank-col { width:100%; min-width:0; background:#f8fafc; border:1px solid #dde6ee; border-radius:6px; padding:12px; }
.research-page .disp-rank-title { color:#214967; font-size:20px; font-family:var(--font-display,Arial,sans-serif); }
.research-page .disp-rank-list { max-height:505px; }
.research-page .disp-rank-search { font-size:12px; height:36px; background:#fff; }
.research-page .research-missing { display:block; margin-top:3px; color:#8697a6; font-size:10px; font-weight:400; }
.research-page .disp-note { margin:12px 0 0; color:#7a8d9f; font-size:11px; }
.research-page .disp-legend-row { padding-top:6px; }
.research-page .disp-legend-chip { background:#f4f7fa; border-color:#e3eaf0; font-size:11px; }
.research-page .disp-fis-help { border:0; border-top:1px solid #e4ebf2; background:transparent; margin:12px 0 0; padding:10px 0 0; }
.research-page .disp-modal-panel { background:#fff; border-radius:8px; border:1px solid #dce5ee; }
.research-page .disp-modal-head { background:#173f60; color:#fff; padding:17px 20px; }
.research-page .disp-modal-title { font:500 23px var(--font-display,Arial,sans-serif); color:#fff; }
.research-page .disp-modal-close { color:#fff; }
.research-modal-tools { display:flex; align-items:center; gap:12px; padding:16px 20px 0; }
.research-back { border:1px solid #d3dfe9; border-radius:4px; padding:8px 14px; background:#f7f9fb; color:#3e6582; font:inherit; font-size:12px; }
.research-modal-search { flex:1; min-width:0; border:1px solid #ccdbe7; border-radius:4px; padding:8px 12px; font:inherit; font-size:13px; }
.research-page .disp-opt { box-shadow:none; border:1px solid #dbe5ee; border-radius:5px; background:#f8fafc; color:#315674; font-size:13px; padding:12px; }
.research-page .disp-opt:hover,.research-page .disp-opt.active { background:#eaf2f9; border-color:#5b87aa; color:#194d74; }
.research-page .disp-opt strong { font-size:19px; display:block; }
.research-page .disp-opt small { display:block; margin-top:6px; font-size:11px; font-weight:400; color:#778d9f; }
.research-page .disp-itemcol-head { background:#edf3f8; color:#305878; font-size:13px; padding:10px; }
.research-page .research-physical-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:start}
.research-page .research-physical-metrics .disp-itemcol{min-width:0}
.research-page .research-physical-metrics .disp-itemcol-head{background:#1b4562;color:#fff;text-transform:none;font-size:14px;border-radius:5px 5px 0 0}
.research-page .research-physical-metrics .disp-opt{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;width:100%;padding:11px 9px;white-space:normal;line-height:1.35}
.research-page .research-physical-unit{font-size:10px;color:#71869a;font-weight:400}
@media(max-width:1100px){.research-page .research-physical-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.research-page .research-physical-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:450px){.research-page .research-physical-metrics{grid-template-columns:1fr}}
.research-page .research-source-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.research-page .research-source-grid>.disp-opt { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; min-height:90px; text-align:left; }
.research-other-metrics { margin:0 20px 20px; border-top:1px solid #dce5ee; padding-top:12px; }
.research-other-metrics>summary { cursor:pointer; color:#426681; font-size:13px; font-weight:500; padding:5px 0 12px; }
.research-other-metrics .Select { width:100%; min-width:0; }
.research-other-metrics .Select-menu-outer { position:relative; max-height:260px; }
.research-page .rc-slider-mark-text { white-space:nowrap; }
.research-page .disp-quad-box { flex-direction:row; justify-content:flex-start; }
.research-page .disp-quad-box span { text-transform:none; letter-spacing:normal; text-align:left; }
.research-page button:focus-visible,.research-page summary:focus-visible { outline:2px solid #558daf; outline-offset:3px; }
@media(max-width:1150px) { .research-page .disp-graph-rank-row { grid-template-columns:minmax(0,1fr) 255px; } .research-filters-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:850px) { .research-page { padding:0 10px 16px; } .research-heading { display:block; } .research-heading>span { display:block; margin-top:5px; } .research-filters-grid { grid-template-columns:1fr; } .research-page .disp-graph-rank-row { grid-template-columns:1fr; } .research-page .disp-rank-list { max-height:350px; } .research-page .disp-quad-row { grid-template-columns:1fr 1fr; } }
@media(max-width:560px) { .research-controls { padding:14px 12px 0; } .research-results { padding:10px; } .research-axes { grid-template-columns:1fr; gap:8px; } .research-page .disp-swap-axes-btn { justify-self:center; } .research-context,.research-filters-grid { grid-template-columns:1fr; } .research-axis-caption { display:block; } .research-axis-caption small { display:block; margin-top:4px; } .research-page .disp-quad-box { padding:8px; } }
@media(max-width:560px) { .research-page .research-source-grid { grid-template-columns:1fr; } }
@media(max-width:560px) { .research-comparison { grid-template-columns:1fr; } .research-comparison>.disp-btn-depor { margin:0; justify-self:start; } }
