/* Climate Disclosure Bench · demo-specific layout on top of app-base.css */
.title{font-size:34px;font-weight:700;letter-spacing:-.02em;margin:6px 0 10px}
.tabs{display:flex;gap:6px;margin:26px 0 22px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.tabs [role=tab]{appearance:none;border:0;background:none;font:600 13px var(--sans);color:var(--cap);padding:10px 14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs [role=tab][aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent)}
.tablede{max-width:82ch;color:var(--body);margin:0 0 16px}

.lensbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.seg{display:flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.seg button{appearance:none;border:0;background:var(--surface);font:600 12.5px var(--sans);color:var(--cap);padding:9px 16px;cursor:pointer}
.seg button.on{background:var(--ink);color:#fff}
.lensnote{font-size:12.5px;color:var(--body);max-width:60ch;line-height:1.5}

.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:18px}
.pill{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 14px}
.pill .t{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--cap)}
.pill .v{font-family:var(--mono);font-size:22px;font-weight:600;margin-top:4px}
.pill .v.g{color:var(--ok)} .pill .v.a{color:var(--warn)} .pill .v.r{color:var(--danger)}
.pill .d{font-size:11px;color:var(--cap);margin-top:2px}

.req{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:13px 16px;margin-bottom:10px}
.req.v-ready{border-left:3px solid var(--ok)}
.req.v-narr{border-left:3px solid var(--warn)}
.req.v-partial{border-left:3px solid var(--warn)}
.req.v-absent{border-left:3px solid var(--danger)}
.req .rh{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.req .rid{font-family:var(--mono);font-size:10px;color:var(--cap);letter-spacing:.06em;white-space:nowrap}
.req .rt{flex:1;font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.4;min-width:240px}
.vb{font-family:var(--mono);font-size:10px;letter-spacing:.05em;padding:2.5px 9px;border-radius:20px;border:1px solid;white-space:nowrap}
.vb.ready{color:var(--ok);background:var(--allow-bg);border-color:#CDE6D7}
.vb.narr{color:var(--warn);background:var(--esc-bg);border-color:#E9D9B8}
.vb.partial{color:var(--warn);background:var(--esc-bg);border-color:#E9D9B8}
.vb.absent{color:var(--danger);background:var(--block-bg);border-color:#EAC8C4}
.req .quote{margin-top:9px;padding:9px 13px;background:var(--wash);border-left:3px solid var(--line);border-radius:0 6px 6px 0;font-size:12.5px;color:var(--body2);font-style:italic}
.req .quote .src{font-family:var(--mono);font-size:9.5px;font-style:normal;color:var(--accent);margin-left:8px}
.req .note{margin-top:8px;font-size:12.5px;color:var(--body);line-height:1.55}
.req .note b{color:var(--ink)}

.report{max-width:78ch}
.report .para{padding:12px 15px;border:1px solid var(--line);border-radius:8px;background:var(--surface);margin-bottom:9px;font-size:13.5px;line-height:1.65;color:var(--body2)}
.report .para .pid{font-family:var(--mono);font-size:9.5px;color:var(--accent);display:block;margin-bottom:4px}
.report .para.cited{border-color:#CDE6D7}
.report .para.uncited{border-style:dashed}
.report .para h4{margin:0 0 6px;font-size:13px;color:var(--ink)}
.pnote{font-size:12px;color:var(--cap);margin:16px 0 0;max-width:82ch;line-height:1.55}
.pnote b{color:var(--ink)}
.foot{margin-top:34px;font-family:var(--mono);font-size:11px;color:var(--cap)}
