:root{
  --bg:#06120c;
  --panel:#0a1d13;
  --panel-2:#0d2819;
  --line:rgba(180,220,120,.18);
  --line-strong:rgba(180,220,120,.38);
  --text:#edf5e9;
  --muted:#a9baa9;
  --lime:#9ad34a;
  --green:#4f9c58;
  --cyan:#4ab8c7;
  --amber:#e2b84d;
  --red:#dd705f;
  --purple:#a67ad6;
}

*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,select,input{font:inherit}
button{cursor:pointer}

body{
  background:
    radial-gradient(circle at 80% 10%,rgba(51,106,63,.16),transparent 35%),
    linear-gradient(180deg,#07170f,#041009 70%);
}

.v2-shell{
  display:grid;
  grid-template-columns:255px minmax(0,1fr) 330px;
  min-height:100vh;
}

.v2-sidebar{
  position:sticky;
  top:0;
  height:100vh;
  overflow:auto;
  border-right:1px solid var(--line);
  background:rgba(5,17,10,.96);
  padding:16px 12px 24px;
}

.v2-brand{
  display:flex;
  align-items:center;
  gap:11px;
  padding:7px 8px 17px;
  border-bottom:1px solid var(--line);
}

.v2-logo{
  width:46px;height:46px;border-radius:50%;
  border:1px solid var(--lime);
  display:grid;place-items:center;
  color:var(--lime);font-weight:900;
  background:radial-gradient(circle,rgba(154,211,74,.12),transparent 68%);
}

.v2-brand h1{font-size:.92rem;margin:0;line-height:1.2}
.v2-brand p{margin:3px 0 0;color:var(--muted);font-size:.62rem}

.v2-nav-section{margin-top:16px}
.v2-nav-section h2{
  margin:0 8px 8px;color:#809483;
  font-size:.58rem;letter-spacing:.18em;text-transform:uppercase
}

.v2-workspace{
  width:100%;
  display:grid;
  grid-template-columns:28px 1fr auto;
  gap:8px;
  align-items:center;
  text-align:left;
  border:1px solid transparent;
  border-radius:9px;
  color:var(--text);
  background:transparent;
  padding:9px 8px;
  margin-bottom:4px;
}

.v2-workspace:hover,.v2-workspace.active{
  background:var(--panel-2);
  border-color:var(--line-strong);
}
.v2-workspace .icon{font-size:1rem}
.v2-workspace .label{font-size:.72rem;font-weight:700}
.v2-status-dot{width:7px;height:7px;border-radius:50%;background:#8c938d}
.v2-status-dot.live{background:#72d256}
.v2-status-dot.demonstrator{background:var(--amber)}
.v2-status-dot.planned{background:#8c938d}

.v2-main{min-width:0;padding:16px 16px 28px}

.v2-topbar{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:6px 2px 14px;
}

.v2-title h2{margin:0;font-size:1.12rem}
.v2-title p{margin:4px 0 0;color:var(--muted);font-size:.68rem}
.v2-top-actions{display:flex;gap:8px;align-items:center}
.v2-pill{
  padding:6px 9px;border-radius:999px;border:1px solid var(--line-strong);
  background:#08190f;font-size:.62rem;color:#dce8da
}
.v2-help{
  border:0;border-radius:999px;background:linear-gradient(180deg,#a6da4b,#7fb62c);
  color:#071006;padding:8px 12px;font-weight:800;font-size:.66rem
}

.v2-flow{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;margin-bottom:12px
}
.v2-step{
  padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);
}
.v2-step strong{display:block;font-size:.7rem}
.v2-step span{display:block;margin-top:3px;color:var(--muted);font-size:.6rem;line-height:1.35}
.v2-step.active{border-color:var(--lime);background:#102d1c}

.v2-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);
  gap:12px;
}

.v2-card{
  border:1px solid var(--line);
  border-radius:12px;background:rgba(8,26,17,.92);
  overflow:hidden;
}
.v2-card-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:11px 13px;border-bottom:1px solid var(--line)
}
.v2-card-head h3{margin:0;font-size:.78rem}
.v2-card-head small{color:var(--muted);font-size:.58rem}

.v2-map{
  position:relative;min-height:480px;
  background:
    radial-gradient(circle at 48% 48%,rgba(74,184,199,.17),transparent 18%),
    radial-gradient(circle at 55% 60%,rgba(92,155,71,.28),transparent 34%),
    linear-gradient(145deg,#12301f,#07170f);
  overflow:hidden
}
.v2-map img{
  width:100%;height:100%;min-height:480px;object-fit:cover;display:block;
  filter:saturate(.92) brightness(.72) contrast(1.05)
}
.v2-map-fallback{
  position:absolute;inset:0;
  background:
    repeating-radial-gradient(circle at 50% 50%,rgba(154,211,74,.08) 0 1px,transparent 1px 34px),
    linear-gradient(130deg,transparent 30%,rgba(74,184,199,.13) 31% 34%,transparent 35%),
    radial-gradient(circle at 58% 40%,rgba(107,154,65,.28),transparent 42%);
}
.v2-map-overlay{
  position:absolute;inset:0;pointer-events:none;opacity:.62;transition:.35s ease
}
.v2-map-overlay.baseline{background:linear-gradient(135deg,rgba(70,110,70,.02),rgba(70,110,70,.06))}
.v2-map-overlay.young{background:radial-gradient(circle at 46% 56%,rgba(121,212,71,.4),transparent 35%)}
.v2-map-overlay.riparian{background:linear-gradient(100deg,transparent 30%,rgba(45,195,179,.31) 48%,rgba(112,218,95,.32) 54%,transparent 67%)}
.v2-map-overlay.disturbance{background:radial-gradient(circle at 63% 44%,rgba(221,74,54,.38),transparent 40%)}

.v2-map-label{
  position:absolute;padding:5px 7px;border-radius:7px;
  background:rgba(3,12,8,.82);border:1px solid var(--line-strong);
  color:#eaf4e5;font-size:.58rem;box-shadow:0 5px 16px rgba(0,0,0,.28)
}
.v2-map-label.moa{left:48%;top:23%}
.v2-map-label.gola{left:20%;top:42%}
.v2-map-label.upper{left:55%;top:8%}
.v2-map-label.farm{left:40%;top:64%}

.v2-map-toolbar{
  position:absolute;left:12px;bottom:12px;display:flex;flex-wrap:wrap;gap:6px
}
.v2-map-toolbar button{
  border:1px solid var(--line-strong);border-radius:7px;background:rgba(4,15,9,.86);
  color:#dfe9db;padding:7px 9px;font-size:.58rem
}

.v2-controls{padding:12px}
.v2-field{display:grid;gap:5px;margin-bottom:11px}
.v2-field label{font-size:.62rem;color:#c1d0c0}
.v2-field select,.v2-field input{
  width:100%;border:1px solid var(--line-strong);border-radius:8px;
  background:#05140c;color:var(--text);min-height:40px;padding:0 9px
}
.v2-slider-line{display:grid;grid-template-columns:1fr 42px;gap:8px;align-items:center}
.v2-value{
  text-align:center;padding:6px;border-radius:7px;background:#10281a;
  border:1px solid var(--line);font-size:.62rem
}
.v2-run{
  width:100%;min-height:44px;border:0;border-radius:9px;
  background:linear-gradient(180deg,#a8da4b,#78ad27);color:#071006;font-weight:900
}
.v2-run[disabled]{opacity:.55;cursor:progress}

.v2-progress{display:none;margin-top:10px}
.v2-progress.visible{display:block}
.v2-progress-row{font-size:.61rem;color:#becbbe;padding:4px 0}

.v2-metrics{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px
}
.v2-metric{
  padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--panel)
}
.v2-metric small{display:block;color:var(--muted);font-size:.56rem}
.v2-metric strong{display:block;margin-top:4px;font-size:1.05rem}
.v2-metric span{font-size:.58rem;color:#b9c5b9}
.v2-metric.up strong{color:var(--lime)}
.v2-metric.down strong{color:var(--red)}

.v2-results{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px
}
.v2-result-card{
  padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--panel)
}
.v2-result-card h4{margin:0 0 7px;font-size:.67rem}
.v2-result-card p,.v2-result-card li{font-size:.61rem;line-height:1.48;color:#b8c7b8}
.v2-result-card p{margin:0}.v2-result-card ul{margin:0;padding-left:16px}

.v2-right{
  position:sticky;top:0;height:100vh;overflow:auto;
  border-left:1px solid var(--line);padding:16px 12px 24px;background:rgba(5,17,10,.95)
}
.v2-right .v2-card{margin-bottom:10px}
.v2-right-body{padding:12px}
.v2-summary-line{
  display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)
}
.v2-summary-line:last-child{border-bottom:0}
.v2-summary-line span{font-size:.61rem;color:var(--muted)}
.v2-summary-line strong{font-size:.66rem}
.v2-actions{display:grid;gap:7px}
.v2-actions button{
  min-height:38px;border-radius:8px;border:1px solid var(--line-strong);
  background:#0b2417;color:#eaf4e7;font-weight:750;font-size:.64rem
}
.v2-actions .primary{background:linear-gradient(180deg,#a8da4b,#7fb62c);color:#071006;border:0}

.v2-modal{
  display:none;position:fixed;inset:0;z-index:100;
  background:rgba(0,0,0,.68);place-items:center;padding:18px
}
.v2-modal.open{display:grid}
.v2-modal-box{
  width:min(620px,96vw);max-height:86vh;overflow:auto;
  border:1px solid var(--line-strong);border-radius:14px;background:#07180f;padding:18px
}
.v2-modal-box h2{margin:0 0 7px}
.v2-modal-box p,.v2-modal-box li{font-size:.72rem;color:#bdcbbd;line-height:1.55}
.v2-modal-actions{display:flex;gap:8px;justify-content:flex-end}
.v2-modal-actions button{padding:8px 11px;border-radius:8px;border:1px solid var(--line-strong);background:#0d2819;color:white}

@media(max-width:1180px){
  .v2-shell{grid-template-columns:220px minmax(0,1fr)}
  .v2-right{grid-column:1/-1;position:static;height:auto;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
}
@media(max-width:850px){
  .v2-shell{grid-template-columns:1fr}
  .v2-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}
  .v2-nav-section{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}
  .v2-nav-section h2{grid-column:1/-1}
  .v2-grid{grid-template-columns:1fr}
  .v2-flow{grid-template-columns:repeat(2,1fr)}
  .v2-metrics{grid-template-columns:repeat(2,1fr)}
  .v2-right{grid-template-columns:1fr}
}
@media(max-width:560px){
  .v2-main{padding:10px}
  .v2-topbar{align-items:flex-start;flex-direction:column}
  .v2-nav-section{grid-template-columns:1fr}
  .v2-flow,.v2-results,.v2-metrics{grid-template-columns:1fr}
  .v2-map,.v2-map img{min-height:340px}
}

.v2-simulation-meta{display:flex;justify-content:space-between;gap:8px;min-height:24px;margin-top:4px;color:var(--muted);font-size:.58rem}
.v2-simulation-status{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:#08190f}
.v2-simulation-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#909790}
.v2-simulation-status.live:before{background:#72d256}
.v2-simulation-status.demonstrator:before{background:var(--amber)}
.v2-simulation-status.planned:before{background:#909790}
#v2-simulation-search{margin-bottom:5px}

.v2-simulation-meta{display:flex;justify-content:space-between;gap:8px;min-height:24px;margin-top:4px;color:var(--muted);font-size:.58rem}
.v2-simulation-status{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:#08190f}
.v2-simulation-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#909790}
.v2-simulation-status.live:before{background:#72d256}
.v2-simulation-status.demonstrator:before{background:var(--amber)}
.v2-simulation-status.planned:before{background:#909790}
#v2-simulation-search{margin-bottom:5px}

.v2-simulation-meta{display:flex;justify-content:space-between;gap:8px;min-height:24px;margin-top:4px;color:var(--muted);font-size:.58rem}
.v2-simulation-status{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:#08190f}
.v2-simulation-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#909790}
.v2-simulation-status.live:before{background:#72d256}
.v2-simulation-status.demonstrator:before{background:var(--amber)}
.v2-simulation-status.planned:before{background:#909790}
#v2-simulation-search{margin-bottom:5px}

.v2-landscape-control{display:grid;gap:4px;min-width:220px}
.v2-landscape-control label{color:var(--muted);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase}
.v2-landscape-control select{min-height:36px;border-radius:8px;border:1px solid var(--line-strong);background:#07170f;color:var(--text);padding:0 9px;font-size:.64rem}
.v2-dynamic-map-label{position:absolute;transform:translate(-50%,-50%);padding:5px 8px;border-radius:7px;border:1px solid rgba(183,220,119,.42);background:rgba(3,12,8,.84);color:#eef6ea;font-size:.58rem;z-index:4}
.v2-map.landscape-forest .v2-map-overlay{background:radial-gradient(circle at 43% 50%,rgba(75,171,74,.42),transparent 48%)}
.v2-map.landscape-gola .v2-map-overlay{background:linear-gradient(105deg,rgba(61,158,75,.25),transparent 45%,rgba(154,211,74,.22))}
.v2-map.landscape-tiwai .v2-map-overlay{background:radial-gradient(ellipse at 50% 48%,rgba(121,211,72,.38),transparent 31%),linear-gradient(90deg,rgba(50,164,194,.22),transparent 36%,transparent 64%,rgba(50,164,194,.22))}
.v2-map.landscape-moa .v2-map-overlay{background:linear-gradient(105deg,transparent 26%,rgba(47,175,215,.35) 45%,rgba(47,175,215,.2) 55%,transparent 72%)}
.v2-map.landscape-mano .v2-map-overlay{background:linear-gradient(70deg,rgba(45,165,197,.25),transparent 38%,rgba(79,163,94,.2))}
.v2-map.landscape-farm .v2-map-overlay{background:radial-gradient(circle at 48% 55%,rgba(154,211,74,.18),transparent 43%)}

.v2-landscape-control{display:grid;gap:4px;min-width:220px}
.v2-landscape-control label{color:var(--muted);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase}
.v2-landscape-control select{min-height:36px;border-radius:8px;border:1px solid var(--line-strong);background:#07170f;color:var(--text);padding:0 9px;font-size:.64rem}
.v2-dynamic-map-label{position:absolute;transform:translate(-50%,-50%);padding:5px 8px;border-radius:7px;border:1px solid rgba(183,220,119,.42);background:rgba(3,12,8,.84);color:#eef6ea;font-size:.58rem;z-index:4}
.v2-map.landscape-forest .v2-map-overlay{background:radial-gradient(circle at 43% 50%,rgba(75,171,74,.42),transparent 48%)}
.v2-map.landscape-gola .v2-map-overlay{background:linear-gradient(105deg,rgba(61,158,75,.25),transparent 45%,rgba(154,211,74,.22))}
.v2-map.landscape-tiwai .v2-map-overlay{background:radial-gradient(ellipse at 50% 48%,rgba(121,211,72,.38),transparent 31%),linear-gradient(90deg,rgba(50,164,194,.22),transparent 36%,transparent 64%,rgba(50,164,194,.22))}
.v2-map.landscape-moa .v2-map-overlay{background:linear-gradient(105deg,transparent 26%,rgba(47,175,215,.35) 45%,rgba(47,175,215,.2) 55%,transparent 72%)}
.v2-map.landscape-mano .v2-map-overlay{background:linear-gradient(70deg,rgba(45,165,197,.25),transparent 38%,rgba(79,163,94,.2))}
.v2-map.landscape-farm .v2-map-overlay{background:radial-gradient(circle at 48% 55%,rgba(154,211,74,.18),transparent 43%)}

.v2-landscape-legend{position:absolute;top:12px;right:12px;width:min(240px,42%);padding:10px;border-radius:10px;border:1px solid rgba(183,220,119,.34);background:rgba(3,12,8,.84);backdrop-filter:blur(8px);z-index:5}
.v2-landscape-legend h4{margin:0 0 7px;font-size:.62rem;color:#edf6e9}
.v2-landscape-legend ul{margin:0;padding-left:16px}
.v2-landscape-legend li{margin:3px 0;color:#c2d0c2;font-size:.56rem;line-height:1.35}
.v2-landscape-summary{position:absolute;left:12px;right:12px;bottom:50px;padding:9px 11px;border-radius:9px;border:1px solid rgba(183,220,119,.26);background:rgba(3,12,8,.82);color:#dce8da;font-size:.59rem;line-height:1.45;z-index:5}
.v2-map .v2-map-label{display:none !important}
.v2-map.landscape-forest{background:radial-gradient(circle at 37% 50%,rgba(59,132,61,.45),transparent 32%),linear-gradient(135deg,#0a2a16,#07140d)}
.v2-map.landscape-gola{background:linear-gradient(115deg,rgba(37,111,52,.34),transparent 47%),radial-gradient(circle at 68% 38%,rgba(143,198,67,.28),transparent 28%),#08180f}
.v2-map.landscape-tiwai{background:radial-gradient(ellipse at 50% 52%,rgba(85,158,65,.42),transparent 28%),linear-gradient(90deg,rgba(41,136,171,.32),transparent 38%,transparent 62%,rgba(41,136,171,.32)),#071a14}
.v2-map.landscape-moa{background:linear-gradient(104deg,transparent 24%,rgba(42,151,195,.42) 45%,rgba(42,151,195,.24) 57%,transparent 73%),radial-gradient(circle at 54% 50%,rgba(69,126,64,.23),transparent 43%),#07161a}
.v2-map.landscape-mano{background:linear-gradient(68deg,rgba(40,139,178,.3),transparent 38%,rgba(74,143,77,.25)),radial-gradient(circle at 62% 56%,rgba(70,138,74,.2),transparent 34%),#071613}
.v2-map.landscape-farm{background:radial-gradient(circle at 48% 55%,rgba(143,198,67,.24),transparent 37%),linear-gradient(135deg,#102b1b,#07160f)}
@media(max-width:760px){.v2-landscape-legend{position:static;width:auto;margin:10px}.v2-landscape-summary{position:static;margin:10px}}
.v2-map.scenario-gola-connectivity .v2-map-overlay{background:linear-gradient(105deg,transparent 22%,rgba(137,219,80,.34) 38%,transparent 53%),linear-gradient(65deg,transparent 45%,rgba(98,188,73,.26) 58%,transparent 74%)}
.v2-map.scenario-gola-fragmentation .v2-map-overlay{background:repeating-linear-gradient(120deg,rgba(221,112,95,.24) 0 18px,transparent 18px 38px),radial-gradient(circle at 62% 46%,rgba(221,112,95,.28),transparent 34%)}
.v2-map.scenario-gola-restoration .v2-map-overlay{background:radial-gradient(circle at 34% 52%,rgba(154,211,74,.38),transparent 24%),radial-gradient(circle at 68% 44%,rgba(74,184,199,.28),transparent 27%),linear-gradient(110deg,transparent 34%,rgba(154,211,74,.22) 50%,transparent 67%)}
.v2-map.scenario-moa-floodplain .v2-map-overlay{background:radial-gradient(ellipse at 56% 58%,rgba(50,156,211,.38),transparent 36%),linear-gradient(105deg,transparent 26%,rgba(50,156,211,.26) 47%,transparent 69%)}
.v2-map.scenario-moa-water-quality .v2-map-overlay{background:linear-gradient(105deg,transparent 27%,rgba(62,188,181,.32) 47%,rgba(215,176,78,.18) 54%,transparent 71%)}
.v2-map.scenario-moa-sediment .v2-map-overlay{background:linear-gradient(105deg,transparent 24%,rgba(180,116,70,.35) 45%,rgba(206,150,82,.27) 57%,transparent 74%),radial-gradient(circle at 63% 61%,rgba(190,101,58,.22),transparent 26%)}

.v2-map[data-landscape-asset-status="SCHEMATIC"] img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:center center !important;
  background:#06140d;
  filter:none !important;
}
.v2-map[data-landscape-id="cacao_eleggua_farm"] img{
  object-fit:contain !important;
  object-position:center center !important;
  background:#06140d;
  filter:saturate(.96) brightness(.86) contrast(1.03);
}
.v2-map[data-landscape-asset-status="SCHEMATIC"] .v2-map-overlay{
  opacity:.22;
}

/* TT-OS canonical map-controller ownership */
.v2-map { position: relative; overflow: hidden; }
.v2-map > #v2-map-image { width: 100%; height: 100%; object-fit: contain !important; object-position: center center !important; }
.v2-dynamic-map-label { position: absolute; transform: translate(-50%, -50%); z-index: 8; max-width: 240px; padding: 6px 10px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; background: rgba(2,12,18,.78); color: #eef9f2; font-size: 12px; line-height: 1.2; pointer-events: none; }


.v2-connected-landscape {
  margin: 24px 0;
}

.v2-connected-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.v2-connected-grid > div {
  padding:18px;
  border:1px solid #d8d0bd;
  background:#f8f5ec;
}

.v2-connected-grid strong {
  display:block;
  margin-bottom:8px;
}

.v2-connected-grid small {
  font-size:11px;
  letter-spacing:.08em;
  opacity:.7;
}

@media(max-width:900px){
  .v2-connected-grid {
    grid-template-columns:1fr;
  }
}



.v2-living-collection {
  margin: 24px 0;
}

.v2-collection-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:20px;
}

.v2-collection-grid > div {
  padding:16px;
  background:#f8f5ec;
  border:1px solid #d8d0bd;
}

.v2-collection-grid strong {
  display:block;
  margin-bottom:8px;
}

.v2-collection-grid small {
  opacity:.75;
}

@media(max-width:900px){
  .v2-collection-grid {
    grid-template-columns:1fr;
  }
}



.v2-loop-title {
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  opacity:.65;
  margin:18px 0 8px;
}

.v2-step {
  transition:all .2s ease;
}

.v2-step.active {
  border-left:4px solid #4C7A5D;
}



/* =========================================================
   TT-OS Decision Intelligence Studio — presentation recovery
   ========================================================= */

.v2-intelligence-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 18px 0;
}

.v2-intelligence-grid > .v2-card {
  min-height: 150px;
  padding: 18px;
}

.v2-intelligence-grid h3 {
  margin: 0 0 10px;
}

[data-intelligence-state] {
  position: relative;
  overflow: hidden;
}

[data-intelligence-state]::after {
  content: attr(data-intelligence-state);
  position: absolute;
  top: 12px;
  right: 12px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  opacity: .68;
}

.v2-report-control {
  max-width: 1180px;
  margin: 0 auto;
}

.v2-report-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 18px;
  margin-bottom: 20px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.v2-report-hero h2 {
  margin: 4px 0 6px;
  font-size: clamp(24px, 3vw, 34px);
}

.v2-report-hero p {
  margin: 0;
  max-width: 720px;
  opacity: .72;
}

.v2-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  opacity: .65;
}

.v2-truth-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  white-space: nowrap;
}

.v2-report-provenance {
  padding: 18px;
  margin: 0 0 20px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
}

.v2-report-provenance h3 {
  margin-top: 0;
}

.v2-report-provenance .v2-summary-line {
  display: grid;
  grid-template-columns: minmax(110px, .35fr) minmax(0, 1.65fr);
  gap: 14px;
  align-items: start;
  padding: 9px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.v2-report-provenance strong {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", monospace;
  font-size: 12px;
}

#v2-report-selector {
  width: 100%;
  margin: 8px 0 14px;
}

.v2-report-governance {
  margin-top: 20px;
}

.v2-report-governance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.v2-governance-stage {
  position: relative;
  min-width: 0;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
}

.v2-governance-stage h4 {
  margin: 0 0 6px;
  padding-right: 34px;
  font-size: 15px;
}

.v2-governance-stage p {
  min-height: 42px;
  margin: 0 0 14px;
  font-size: 12px;
  line-height: 1.45;
  opacity: .66;
}

.v2-stage-number {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  font-size: 11px;
  font-weight: 700;
}

.v2-governance-stage label {
  display: block;
  margin-top: 10px;
  margin-bottom: 5px;
  font-size: 11px;
  font-weight: 650;
  opacity: .76;
}

.v2-governance-stage select,
.v2-governance-stage input,
.v2-governance-stage textarea {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 9px;
}

.v2-governance-stage button {
  width: 100%;
  margin-top: 8px;
}

#v2-report-governance-status {
  margin-top: 16px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  font-size: 12px;
  font-weight: 650;
}

/* Hidden workspace surfaces must remain genuinely absent. */
[hidden] {
  display: none !important;
}

@media (max-width: 980px) {
  .v2-intelligence-grid,
  .v2-report-governance-grid {
    grid-template-columns: 1fr;
  }

  .v2-report-hero {
    flex-direction: column;
  }

  .v2-report-provenance .v2-summary-line {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

.v2-scenario-catalogue-tools {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
}

#v2-scenario-search {
  width: 100%;
}

#v2-scenario-count {
  font-size: 11px;
  font-weight: 650;
  opacity: .68;
  white-space: nowrap;
}

#v2-scenario option:disabled {
  opacity: .55;
}

@media (max-width: 720px) {
  .v2-scenario-catalogue-tools {
    grid-template-columns: 1fr;
  }
}

/* Canonical dark surfaces for landscape and living-intelligence cards */
.v2-connected-grid > div,
.v2-collection-grid > div {
  background:rgba(8,18,14,.72);
  border:1px solid rgba(255,255,255,.10);
  color:inherit;
  border-radius:12px;
  box-shadow:none;
}

.v2-connected-grid > div strong,
.v2-collection-grid > div strong {
  color:inherit;
}

.v2-connected-grid > div small,
.v2-collection-grid > div small {
  color:inherit;
  opacity:.72;
}
