.question-hero{padding:46px 0 25px;display:flex;align-items:end;justify-content:space-between;gap:24px}.question-hero h1{font-size:clamp(28px,3.5vw,46px);margin:0}.question-hero p{color:var(--muted);line-height:1.7}.question-tools{margin:35px 0 15px}.question-tools a{color:var(--accent)}.question-group{border:1px solid var(--line);border-radius:10px;margin:16px 0;background:#1b2d3a;overflow:hidden}.question-group-head{padding:18px 20px;display:flex;justify-content:space-between;background:linear-gradient(90deg,color-mix(in srgb,var(--sdg-color),#111f2b 50%),#1b2d3a)}.question-group-head h3{margin:5px 0}.question-group-head a,.question-main a{color:var(--accent);font-size:12px}.question-group-head strong{font-size:28px}.question-sdg{font-size:11px;font-weight:800}.question-row{display:grid;grid-template-columns:85px minmax(210px,320px) minmax(0,1fr);gap:16px;padding:17px 20px;border-top:1px solid var(--line)}.question-row.empty{background:#111f2b44}.question-code{color:var(--accent);font-weight:850}.mapping-edit{display:block;margin-top:7px;padding:6px;border:1px solid var(--accent);border-radius:5px;background:transparent;color:var(--accent);font-size:11px}.question-main h4{margin:0 0 6px;font-size:15px}.question-main p,.question-doc p{font-size:12px;color:var(--muted);line-height:1.6}.question-evidence{display:grid;gap:10px}.question-doc{border:1px solid var(--line);border-radius:8px;padding:12px;background:#ffffff09}.question-doc:target{outline:2px solid var(--accent);scroll-margin-top:20px}.question-title{border:0;background:transparent;color:var(--ink);font-weight:800;cursor:pointer;text-align:left}.match-reason{border-left:3px solid var(--accent);padding:8px;background:#ffffff0a!important;color:var(--ink)!important}.question-links a{color:var(--accent);font-size:12px}.unmapped-results{padding:14px 20px;border-top:1px solid var(--line)}.unmapped-results summary{cursor:pointer;color:var(--accent);font-size:12px}.unmapped-grid{display:grid;gap:7px;padding:12px}.unmapped-grid a{font-size:12px;color:var(--accent)}.mapping-dialog{width:min(710px,95vw);max-height:88vh;background:#1b2d3a;color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:20px}.mapping-dialog::backdrop{background:#000b}.mapping-head{display:flex;justify-content:space-between}.mapping-head h2{margin:0}.mapping-head button{background:none;color:var(--ink);border:0}.mapping-dialog input{background:#111f2b;color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:8px}.mapping-options{max-height:48vh;overflow:auto;display:grid;gap:6px}.mapping-option{padding:10px;border:1px solid var(--line)}.mapping-option[hidden],.mapping-detail[hidden]{display:none}.mapping-detail{display:grid;grid-template-columns:1fr 110px;gap:7px}.mapping-detail input:last-child{grid-column:1/-1}.mapping-actions{display:flex;justify-content:space-between;margin-top:15px}.mapping-actions button{padding:9px;border:1px solid var(--accent);background:transparent;color:var(--accent)}.rescan-status{color:var(--accent)}@media(max-width:800px){.question-row{display:block}.question-code,.question-main{margin-bottom:10px}.question-hero{display:block}.mapping-detail{grid-template-columns:1fr}}
.question-group:target{outline:2px solid var(--accent);scroll-margin-top:15px}.unmapped-item{border:1px solid var(--line);padding:8px;border-radius:5px}.unmapped-item p{font-size:12px;color:var(--muted);line-height:1.6}
.group-count{font-size:20px!important;white-space:nowrap}.group-count small{font-size:10px;color:#d4dfef}.nstc-question-links{border:1px solid #7d91ad69;border-radius:8px;padding:10px;background:#9fc5ff0a}.nstc-question-links summary{color:var(--accent);font-size:12px;font-weight:700;cursor:pointer}.nstc-question-items{max-height:480px;overflow:auto;display:grid;gap:8px;margin-top:10px}.nstc-question-item{display:grid;gap:6px;border-top:1px solid var(--line);padding:10px 4px;overflow-wrap:anywhere}.nstc-question-item:target{outline:2px solid var(--accent);scroll-margin-top:20px}.nstc-question-item strong{font-size:13px;line-height:1.5}.nstc-question-item small{color:var(--muted)}.nstc-evidence-type{font-size:10px;color:#f4cd9d;letter-spacing:.05em}.nstc-question-item .question-links{display:flex;flex-wrap:wrap;gap:12px}

.exact-indicators {margin: 1.5rem 0; border: 1px solid #60728a; border-radius: .65rem; padding: 1rem}
.exact-indicators summary {font-weight: 700; cursor: pointer; padding: .4rem}
.exact-indicator {padding: .8rem .4rem; border-top: 1px solid #4c5f78; scroll-margin-top: 1rem}
.exact-indicator h4 {margin: 0 0 .5rem}
.exact-evidence {display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; padding: .4rem .6rem; margin: .4rem 0; border-left: 3px solid #9fc5ff; background: #203247; scroll-margin-top: 2rem}
.exact-evidence a {color: #c5ddff}
.exact-evidence span {font-size: .9rem}

.exact-evidence .pdf-open,.nstc-question-item .pdf-open {font: inherit; color: #c5ddff; text-decoration: underline; text-underline-offset: .2em; background: transparent; border: 0; padding: 0; cursor: pointer; text-align: left}

.indicator-controls {margin: 1rem 0 1.5rem; padding: 1rem; border: 1px solid var(--line); border-radius: 10px; display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; background: #1b2d3a}
.indicator-controls > label:first-child {font-weight: 700}
#indicator-search {flex: 1 1 220px; min-width: 0; padding: .65rem; border: 1px solid #748aa5; border-radius: 6px; background: #111f2b; color: var(--ink)}
.indicator-filter {display: inline-flex; align-items: center; gap: .4rem; white-space: nowrap}
#indicator-search-count {font-size: .85rem; color: var(--muted)}
.indicator-sdgs {width: 100%; display: flex; gap: .4rem; overflow-x: auto; padding: .35rem 0; scrollbar-width: thin}
.indicator-sdgs a {flex: 0 0 auto; color: var(--accent); border: 1px solid #748aa580; border-radius: 5px; padding: .4rem .6rem; text-decoration: none; white-space: nowrap}
.indicator-sdgs a small {margin-left: .3rem; color: var(--muted)}
.indicator-topic-list {padding: .6rem 1rem 1rem; display: grid; gap: .55rem}
.indicator-topic {border: 1px solid var(--line); border-radius: 8px; background: #111f2b80}
.indicator-topic > summary {display: flex; flex-wrap: wrap; gap: .6rem; align-items: baseline; cursor: pointer; padding: .85rem; list-style-position: inside}
.indicator-topic > summary strong {flex: 1 1 180px}
.topic-code,.indicator-code {color: var(--accent); font-weight: 800}
.topic-count,.indicator-count {font-size: .78rem; color: var(--muted); white-space: nowrap}
.topic-subquestions {padding: 0 .8rem .7rem}
.exact-indicator {padding: .8rem .45rem; border-top: 1px solid #4c5f78; scroll-margin-top: 1rem}
.exact-indicator[hidden],.indicator-topic[hidden] {display: none}
.indicator-heading {display: flex; flex-wrap: wrap; gap: .6rem; align-items: baseline}
.indicator-heading h4 {flex: 1 1 220px; margin: 0}
.copy-anchor-link {font: inherit; font-size: .78rem; color: var(--accent); background: transparent; border: 1px solid #748aa580; border-radius: 5px; padding: .28rem .5rem; cursor: pointer; white-space: nowrap}
.copy-anchor-link:hover,.copy-anchor-link:focus-visible {background: #c5ddff1a}
.indicator-evidence {margin-top: .4rem}
.indicator-evidence summary {cursor: pointer; color: var(--accent); font-size: .85rem}
.result-type-group {margin: .45rem 0; border: 1px solid #ffffff18; border-radius: 7px; background: #111f2b70; padding: .35rem .5rem}
.result-type-group > summary {cursor: pointer; color: #dceee9; font-size: .82rem; font-weight: 800}
.result-type-group[open] > summary {color: var(--accent)}
.result-type-group .exact-evidence {margin-left: .25rem}
.lazy-result-list{display:grid;gap:.35rem;margin-top:.4rem}
.lazy-hint{margin:.3rem 0;color:var(--muted);font-size:.82rem}
.exact-evidence:target,.exact-indicator:target {outline: 2px solid var(--accent); border-radius: 4px}
.legacy-topic-mapping {border-top: 1px solid var(--line); padding: 1rem}
.legacy-topic-mapping > summary {cursor: pointer; color: var(--accent); font-weight: 700}
.legacy-topic-mapping .question-table {margin-top: 1rem}
.question-group.no-indicators {opacity: .55}
@media(max-width:670px){.indicator-controls {padding: .75rem}.indicator-sdgs {gap: .25rem}.indicator-topic-list {padding: .5rem}.indicator-topic > summary {padding: .6rem}}

.paper-page-open {font: inherit; color: #c5ddff; text-align: left; line-height: 1.5; overflow-wrap: anywhere; background: transparent; border: 0; padding: 0; cursor: pointer}
.paper-page-open:hover,.paper-page-open:focus-visible {text-decoration: underline; text-underline-offset: .2em}
.nstc-question-item .paper-page-open {font-weight: 700}
.paper-viewer {width: min(1240px, 98vw); height: min(94vh, 1040px); max-width: none; max-height: none; padding: 0; border: 1px solid #617389; border-radius: 10px; background: #182b3b; color: var(--ink); box-shadow: 0 20px 80px #000a; overflow: hidden}
.paper-viewer[open] {display: flex; flex-direction: column}
.paper-viewer::backdrop {background: #081421e8}
.paper-viewer-head {display: flex; gap: 1rem; align-items: center; padding: .8rem 1rem; border-bottom: 1px solid var(--line)}
.paper-viewer-head strong {min-width: 0; flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis}
.paper-viewer-head button,.paper-viewer-sources button {background: transparent; border: 1px solid #748aa5; color: var(--ink); border-radius: 5px; padding: .4rem .6rem; cursor: pointer}
.paper-viewer-sources {display: flex; gap: .5rem; padding: .5rem 1rem}
.paper-viewer-sources button[hidden] {display: none}
.paper-viewer-sources button[aria-pressed="true"] {background: #c5ddff; color: #1b2d3a}
#paper-viewer-frame {width: 100%; flex: 1; border: 0; background: white}
.paper-viewer-video {width: 100%; flex: 1; min-height: 0; background: #000; object-fit: contain}
.paper-viewer-video[hidden],.paper-viewer-sources[hidden] {display: none}
.paper-viewer-message {flex: 1; display: grid; place-content: center; gap: .5rem; padding: 2rem; text-align: center; background: #e6e8e8; color: #1b2d3a}
.paper-viewer-message[hidden] {display: none}
.paper-viewer-message strong {font-size: 1.1rem}
.paper-viewer-message p {margin: 0; color: #526170}
.paper-viewer-help {margin: 0; padding: .5rem 1rem; font-size: .8rem; color: var(--muted)}
.paper-viewer-help a {color: var(--accent)}
@media(max-width:670px) {.paper-viewer {width: 100vw; height: 100dvh; border-radius: 0}.paper-viewer-head {padding: .55rem}.paper-viewer-help {font-size: .7rem}}

.related-research {margin: .5rem 1rem 1rem; border: 1px solid var(--line); border-radius: 8px; padding: .7rem 1rem}
.related-research summary {cursor: pointer; color: var(--accent); font-weight: 700}
.related-research > p {font-size: .85rem; color: var(--muted)}
.related-research-list {max-height: 460px; overflow: auto; display: grid; gap: .5rem}
.related-research-list > div {display: grid; gap: .2rem; border-bottom: 1px solid var(--line); padding: .45rem 0; font-size: .9rem}
.related-research-list a,.related-research-list button {color: var(--accent)}
.related-research-list button {width: fit-content; text-align: left; background: none; border: 0; padding: .2rem 0; cursor: pointer}



