/* Panel 02 — arquitectura sin dependencias; estilos encapsulados en p2- */
.p2-shell{margin-top:100px;border-top:7px solid #123449;background:#f2f5f7;scroll-margin-top:14px}
.p2-heading{background:linear-gradient(120deg,#142b3f 0%,#173d49 100%);padding:58px clamp(22px,5vw,76px) 46px;color:#fff;position:relative;overflow:hidden}
.p2-heading:after{content:"";position:absolute;right:-120px;top:-240px;width:680px;height:680px;pointer-events:none;opacity:.12;background:repeating-radial-gradient(circle at center,transparent 0 48px,#c4d9d5 49px 50px,transparent 51px 91px)}
.p2-topline{display:flex;justify-content:space-between;gap:18px;align-items:center;position:relative;z-index:1;color:#c9dade;font-size:11px;letter-spacing:.17em;font-weight:750}
.p2-topline i{display:inline-block;width:23px;height:1px;background:#e9af72;vertical-align:middle;margin:0 8px}
.p2-heading h2{position:relative;z-index:1;font-size:clamp(35px,4.2vw,59px);font-weight:700;letter-spacing:-.044em;line-height:1.12;margin:56px 0 20px;max-width:1000px}
.p2-heading h2 em{font-style:normal;color:#efbd8c}
.p2-heading>p{position:relative;z-index:1;color:#cedde4;line-height:1.83;max-width:870px;font-size:14px}
.p2-heading>p strong{color:#fff}
.p2-intro-note{position:relative;z-index:1;display:flex;align-items:flex-start;gap:13px;margin-top:35px;max-width:1030px;border-top:1px solid #61818a;padding-top:20px;font-size:12.5px;color:#d5e2e8}
.p2-intro-note>span{width:23px;height:23px;border:1px solid #e9af72;color:#e9af72;display:flex;align-items:center;justify-content:center;border-radius:50%;flex:none;font-weight:760}
.p2-intro-note strong{color:#fff}
.p2-readme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid #d9e2e6}
.p2-readme-grid>div{padding:28px 27px 28px 0;min-height:157px}.p2-readme-grid>div+div{padding-left:25px;border-left:1px solid #e5edf0}
.p2-readme-no{display:inline-block;font-size:12px;font-weight:850;letter-spacing:.12em;color:#17818a;margin-bottom:12px}
.p2-readme-grid strong{display:block;font-size:14px;color:#193348}.p2-readme-grid p{margin:8px 0 0;font-size:12.5px;color:#607184;line-height:1.6;max-width:315px}
.p2-explorer{padding:61px clamp(22px,5vw,76px) 0}
.p2-explorer-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}
.p2-overline{font-size:11px;letter-spacing:.15em;color:#138b91;font-weight:820;margin-bottom:8px}
.p2-explorer-head h3{font-size:clamp(25px,3vw,37px);letter-spacing:-.038em;margin:0 0 8px}
.p2-explorer-head p{font-size:13px;color:#607084;line-height:1.7;max-width:755px;margin:0}
.p2-filter-label{font-size:11px;font-weight:750;color:#52697a;min-width:210px}.p2-filter-label select{display:block;margin-top:5px;border:1px solid #d3dfe4;padding:11px 9px;border-radius:7px;background:#fff;color:#193348;font-size:12px;width:100%}
.p2-layout{display:grid;grid-template-columns:minmax(225px,.93fr) minmax(0,2.36fr);gap:13px;align-items:start}
.p2-route-menu{position:relative;border:1px solid #dce6eb;background:white;border-radius:14px;padding:8px;box-shadow:0 9px 23px #19334808}
.p2-route-list{display:grid;gap:4px}
.p2-route-btn{display:grid;grid-template-columns:26px 1fr 16px;align-items:center;gap:9px;width:100%;background:transparent;border:1px solid transparent;border-radius:9px;color:#183047;text-align:left;padding:15px 8px;min-height:71px}
.p2-route-btn:hover{background:#f2f6f8}.p2-route-btn.is-active{background:#e9f2f4;border-color:#bad6da}
.p2-route-btn>span:first-child{align-self:start;margin-top:3px;color:#19818c;font-size:11px;font-weight:850;letter-spacing:.03em}
.p2-route-btn strong{display:block;font-size:13px;line-height:1.35}.p2-route-btn small{display:block;font-size:11px;font-weight:500;color:#65768a;line-height:1.4;margin-top:5px}
.p2-route-btn>span:last-child{font-size:14px;color:#24838f}.p2-route-empty{padding:20px;color:#64758a;font-size:13px}
.p2-main{background:white;border:1px solid #dce6eb;border-radius:14px;padding:27px 29px 30px;box-shadow:0 9px 23px #19334808;min-width:0}
.p2-route-header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:9px}.p2-meta{color:#16828d;font-size:11px;font-weight:810;letter-spacing:.075em}.p2-export{color:#284a5c;background:#f1f5f7;border:1px solid #d7e4e8;border-radius:6px;font-size:11px;font-weight:720;padding:8px 11px;white-space:nowrap}
.p2-main>h4{font-size:clamp(22px,2.35vw,31px);line-height:1.22;letter-spacing:-.034em;margin:11px 0 9px}.p2-route-deck{font-size:13.5px;line-height:1.65;color:#526678;margin:0 0 21px}
.p2-mode-switch{display:flex;gap:5px;border-bottom:1px solid #e3e9ee;padding-bottom:10px;margin-bottom:18px;flex-wrap:wrap}.p2-mode-switch button{background:transparent;color:#586d80;border:1px solid transparent;border-radius:6px;padding:9px 10px;font-size:11.5px;font-weight:760}.p2-mode-switch button.is-active{background:#172e44;color:white}.p2-mode-switch button:not(.is-active):hover{background:#edf3f4}
.p2-legend{display:flex;gap:16px;flex-wrap:wrap;color:#62798c;font-size:11px;margin-bottom:15px}.p2-legend>span{display:flex;align-items:center;gap:6px}.p2-dot{width:8px;height:8px;display:inline-block;border-radius:50%}.p2-dot.resources{background:#bc9246}.p2-dot.institutions{background:#197b8a}.p2-dot.victims{background:#b45b60}.p2-dot.outcomes{background:#596bb2}
.p2-step-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.p2-step-list.steps-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.p2-step{position:relative;border:1px solid #dee5ea;background:#fcfdfe;border-top:4px solid #197b8a;border-radius:9px;padding:17px 14px 13px;min-width:0}
.p2-step.kind-recursos{border-top-color:#bc9246}.p2-step.kind-victimizacion{border-top-color:#b45b60}.p2-step.kind-consecuencias{border-top-color:#596bb2}
.p2-step:not(:last-child):after{content:"⇢";position:absolute;top:43%;right:-21px;color:#91a4af;font-size:21px;z-index:2}
.p2-step-list.is-parallel .p2-step:not(:last-child):after{content:"≈";right:-20px;color:#9daab2}
.p2-step-list.steps-4 .p2-step:not(:last-child):after{right:-17px}
.p2-step-index{display:block;font-size:10.5px;color:#8696a1;font-weight:800;letter-spacing:.12em}.p2-step h5{font-size:13px;line-height:1.37;margin:16px 0 9px;letter-spacing:-.008em;color:#1b344b}.p2-step p{font-size:11.5px;color:#617286;line-height:1.6;margin:0 0 13px}.p2-step-sources{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto}.p2-evidence-jump{font-size:10px;font-weight:800;background:#eff4f6;border:1px solid #d6e2e7;color:#286577;border-radius:4px;padding:4px 5px}.p2-evidence-jump:hover{background:#dfeef2}
.p2-graph-foot{margin:18px 0 0;background:#f4f6f8;border-left:3px solid #9bb2bb;padding:11px 13px;font-size:12px;color:#4e6375;line-height:1.65}
.p2-actor-head h5{font-size:14px;margin:0 0 6px}.p2-actor-head p{font-size:12px;color:#697b8b;line-height:1.6;margin:0 0 15px}.p2-interactions-list{display:grid;gap:9px;max-height:440px;overflow-y:auto;padding-right:2px}
.p2-actor-row{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);align-items:center;gap:8px;padding:11px 12px;border:1px solid #e2e9ed;border-radius:9px;background:#fbfcfd}.p2-actor-row .p2-ac{font-weight:730;color:#1f4257;font-size:11.5px;overflow-wrap:anywhere}.p2-actor-row .p2-arrow{color:#119197;text-align:center;font-size:18px}.p2-actor-row .p2-interaction-text{grid-column:1/-1;color:#617181;font-size:11.5px}.p2-actor-row button{grid-column:1/-1;justify-self:start;background:transparent;border:0;padding:0;color:#14818d;font-size:11px;font-weight:800}.p2-actor-row .p2-source-line{grid-column:1/-1;font-size:10.5px;color:#798b97}
.p2-evidence-head{border-top:1px solid #e1e8ed;margin-top:25px;padding-top:17px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#26475c}.p2-evidence-head span{font-size:11px;color:#81929e}
.p2-evidence-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.p2-evidence-card{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #dce5eb;border-radius:7px;background:#fff;text-align:left;padding:11px 12px}.p2-evidence-card:hover{background:#f4f9fa;border-color:#93bcc4}.p2-evidence-card strong{color:#26445a;font-size:11.5px;line-height:1.35}.p2-evidence-card small{display:block;font-size:10px;color:#778796;margin-top:4px}.p2-evidence-card>span:last-child{color:#1c8290;font-size:14px}
.p2-analysis{display:grid;grid-template-columns:1.12fr 1fr .95fr;gap:0;background:white;border:1px solid #dae4ea;border-radius:12px;margin-top:14px}
.p2-analysis-col{padding:24px 25px 21px;min-width:0}.p2-analysis-col+.p2-analysis-col{border-left:1px solid #e0e8ec}.p2-analysis-label{font-size:11px;color:#18848e;font-weight:830;letter-spacing:.12em;margin-bottom:12px}
.p2-analysis-col>p{font-size:12.5px;line-height:1.72;color:#4c6073;margin:0 0 12px}.p2-analysis-caution{color:#915858;font-size:12px;line-height:1.65;background:#fff8f7;padding:11px 12px;border-radius:7px;border:1px solid #f1dedd}.p2-analysis-col ul{margin:0;padding:0 0 0 17px;color:#506376;font-size:12.5px;line-height:1.7}.p2-analysis-col li{padding-bottom:8px}.p2-analysis-question{background:#f9fcfc}.p2-analysis-question p{font-size:17px;letter-spacing:-.02em;font-weight:700;color:#1a374b;line-height:1.5}.p2-analysis-question a{font-size:12px;color:#147a86;font-weight:760}
.p2-bottom-note{padding:28px clamp(22px,5vw,76px) 68px;font-size:12px;color:#657789;line-height:1.8}.p2-bottom-note strong{color:#183b4b}
body.panel2-only .hero,body.panel2-only .editorial-intro,body.panel2-only .discovery-guide,body.panel2-only .opening-finding,body.panel2-only .intro-stats,body.panel2-only .timeline-section,body.panel2-only .matrix-section,body.panel2-only .evidence-section,body.panel2-only .compare-section{display:none!important}
body.panel1-only .p2-shell{display:none!important}body.panel2-only .p2-shell{margin-top:0}body.panel2-only .site-footer{margin-top:0}
@media(max-width:1150px){.p2-layout{grid-template-columns:minmax(210px,.8fr) minmax(0,1.8fr)}.p2-main{padding:20px}.p2-step-list,.p2-step-list.steps-4{display:grid;grid-template-columns:1fr 1fr;gap:16px}.p2-step:not(:last-child):after{content:""}.p2-step-list.is-parallel .p2-step:not(:last-child):after{content:""}.p2-analysis{grid-template-columns:1fr 1fr}.p2-analysis-col:last-child{grid-column:1/-1;border-top:1px solid #e0e8ec;border-left:0}}
@media(max-width:770px){.p2-heading{padding-top:35px}.p2-heading h2{margin-top:38px;font-size:36px}.p2-topline{flex-wrap:wrap;line-height:1.6}.p2-readme-grid{grid-template-columns:1fr;gap:0}.p2-readme-grid>div{min-height:auto;padding:15px 0}.p2-readme-grid>div+div{padding:15px 0;border-left:0;border-top:1px solid #e6edef}.p2-explorer-head{align-items:stretch;flex-direction:column}.p2-layout{grid-template-columns:1fr}.p2-route-menu{overflow:auto}.p2-route-list{grid-template-columns:repeat(2,minmax(0,1fr))}.p2-route-btn{padding:10px;grid-template-columns:20px 1fr}.p2-route-btn>span:last-child{display:none}.p2-analysis{grid-template-columns:1fr}.p2-analysis-col+.p2-analysis-col{border-left:0;border-top:1px solid #e0e8ec}.p2-analysis-col:last-child{grid-column:auto}}
@media(max-width:510px){.p2-heading h2{font-size:31px}.p2-route-list{grid-template-columns:1fr}.p2-route-btn{min-height:58px}.p2-main{padding:18px 14px}.p2-step-list,.p2-step-list.steps-4{grid-template-columns:1fr;gap:9px}.p2-step-list .p2-step:not(:last-child):after{content:""}.p2-evidence-list{grid-template-columns:1fr}.p2-route-header{align-items:start;flex-wrap:wrap}}

/* Versión 2.2: distinción visual entre alcance probatorio, ramas y tipos de entidades. */
.p2-route-header{flex-wrap:wrap}.p2-scope{font-size:11px;font-weight:720;line-height:1.5;background:#eaf3f4;color:#165d68;border:1px solid #c5dfe2;padding:7px 9px;border-radius:6px;order:3;flex-basis:100%;width:max-content;max-width:100%}
.p2-mechanisms-lead{font-size:13px;line-height:1.7;margin:0 0 15px;color:#38566a;border-left:3px solid #33909b;padding:12px 15px;background:#edf6f6;border-radius:0 7px 7px 0}
.p2-mechanisms-lead[hidden]{display:none}
.p2-step-list.is-branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.p2-step-list.is-branches .p2-step{background:#f9fcfc;min-height:160px}
.p2-step-list.is-branches .p2-step:after{display:none!important}
.p2-step-list.is-episode.steps-5{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.p2-step-list.is-episode.steps-5 .p2-step:first-child{grid-column:1/-1;border-top-color:#bc9246;background:#fdfbf6}
.p2-step-list.is-episode.steps-5 .p2-step:after{display:none!important}
.p2-step-list .p2-step.kind-documental{border-top-color:#626b81;background:#f7f8fb}
.p2-dot.documentary{background:#626b81}
.p2-entity-kind{display:block;font-size:10.5px;color:#587181;margin-bottom:5px;line-height:1.35;font-weight:700}
.p2-ac-entity{min-width:0;max-width:100%}
.p2-action-object,.p2-action-caveat{grid-column:1/-1;line-height:1.55;font-size:11px;color:#587080;border-left:2px solid #aec7cf;padding:7px 9px;background:#f2f6f8}
.p2-action-caveat{border-left-color:#d6ae9a;background:#fdf8f5;color:#845f55}
.p2-route-btn small{line-height:1.5}
@media(max-width:650px){.p2-step-list.is-branches,.p2-step-list.is-episode.steps-5{grid-template-columns:1fr}.p2-step-list.is-episode.steps-5 .p2-step:first-child{grid-column:1}}

.p2-proof-context{font-size:13px;line-height:1.75;color:var(--ink2);margin:9px 0 14px}.p2-analysis-label{line-height:1.5}
