/* FORGE 3.2: explicação executiva e inventário; reutiliza a identidade existente. */
.bf-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:3.5rem;align-items:start}
.bf-lead{max-width:640px;font-size:1rem;line-height:1.85;color:#abb4bf;margin-top:1.3rem}
.bf-definitions{display:grid;gap:1.4rem;padding-top:.35rem}
.bf-definitions>div{border-left:2px solid #566a32;padding-left:1.2rem}
.bf-definitions dt{font-size:1rem;font-weight:700;color:#d8ff57;margin-bottom:.45rem}
.bf-definitions dd{font-size:.85rem;line-height:1.8;color:#abb4bf}
.bf-evolution{display:grid;grid-template-columns:1fr auto 1fr;gap:1.8rem;align-items:center;margin:2.6rem 0;padding:1.5rem 0;border-block:1px solid #363b40}
.bf-kicker{display:block;font-family:'JetBrains Mono',monospace;font-size:.64rem;line-height:1.7;letter-spacing:.08em;text-transform:uppercase;color:#d8ff57}
.bf-evolution p{font-size:.85rem;line-height:1.8;color:#abb4bf;margin-top:.5rem}
.bf-evolution-arrow{font-size:1.6rem;color:#d8ff57}
.bf-flow{border:1px solid #3b4147;border-radius:12px;overflow:hidden;background:#181b1c}
.bf-flow figcaption{padding:1.3rem 1.6rem;border-bottom:1px solid #363b40;font-size:.95rem;font-weight:600;color:#dde1e6}
.bf-flow-grid{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:stretch}
.bf-origin,.bf-steps,.bf-outcome{padding:1.8rem 1.6rem;min-width:0}
.bf-origin p,.bf-outcome p{font-size:.77rem;line-height:1.8;color:#abb4bf}
.bf-systems{list-style:none;display:grid;gap:.55rem;margin:1rem 0}
.bf-systems li{display:flex;align-items:center;gap:.65rem;padding:.65rem .8rem;border:1px solid #424951;border-radius:5px;color:#dde1e6;background:#222629;font-size:.76rem}
.bf-systems li span{color:#d8ff57}
.bf-steps{list-style:none;border-inline:1px solid #363b40;display:grid;gap:1.25rem;position:relative}
.bf-steps li{display:grid;grid-template-columns:1.9rem 1fr;gap:.7rem;position:relative}
.bf-step-number{font:500 .63rem 'JetBrains Mono',monospace;color:#d8ff57;border:1px solid #536136;border-radius:50%;width:1.9rem;height:1.9rem;display:grid;place-items:center;background:#22291b}
.bf-steps li:not(:last-child)::after{content:'';position:absolute;top:2.1rem;bottom:-1rem;left:.9rem;border-left:1px solid #4d5936}
.bf-steps h3{font-size:.91rem;font-weight:700;line-height:1.6;color:#dde1e6;margin:0 0 .25rem}
.bf-steps p{font-size:.77rem;line-height:1.75;color:#abb4bf}
.bf-outcome{background:linear-gradient(145deg,rgba(216,255,87,.08),transparent 80%)}
.bf-outcome h3{font:700 1.9rem/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#d8ff57;margin:1rem 0}
.bf-outcome ul{list-style:none;display:grid;gap:.6rem;margin-top:1.15rem}
.bf-outcome li{font-size:.72rem;line-height:1.6;color:#dde1e6;padding-left:.9rem;position:relative}
.bf-outcome li::before{content:'+';position:absolute;left:0;color:#d8ff57}
.bf-close{display:flex;align-items:center;gap:2rem;justify-content:space-between;margin-top:1.5rem}
.bf-close p{max-width:590px;font-size:.85rem;line-height:1.8;color:#abb4bf}
.bf-close a,.evolution-links a{display:inline-flex;align-items:center;min-height:44px;color:#d8ff57;font-size:.8rem;line-height:1.6;text-underline-offset:4px}
.bf-close a{max-width:280px;flex-shrink:0}
.bf-status{border-top:1px solid #363b40;margin-top:1.4rem;padding-top:1.2rem;font-size:.74rem;line-height:1.8;color:#abb4bf;max-width:950px}
.bf-status strong{color:#dde1e6}
.evolution-count{font-family:'Barlow Condensed',sans-serif;font-size:1.65rem;font-weight:700;line-height:1.3;color:#d8ff57;margin:2rem 0 .7rem}
.evolution-reading,.evolution-footnote{font-size:.8rem;line-height:1.8;color:#abb4bf;max-width:880px}
.evolution-scroll-hint{font-size:.74rem;line-height:1.8;color:#abb4bf;margin-top:.6rem}
.evolution-scroll{max-width:100%;overflow:auto;border:1px solid #41464b;border-radius:10px;margin-top:1.4rem;overscroll-behavior-x:contain;scrollbar-color:#8a9c62 #202224}
.evolution-scroll:focus-visible{outline:2px solid #d8ff57;outline-offset:4px}
.evolution-table{width:100%;min-width:880px;border-collapse:collapse;table-layout:fixed;background:#191b1d}
.evolution-table caption{padding:1rem;text-align:left;color:#abb4bf;background:#202426;font-size:.74rem}
.evolution-table th,.evolution-table td{padding:1.1rem;vertical-align:top;text-align:left;border-bottom:1px solid #343a3f;font-size:.77rem;line-height:1.75;color:#abb4bf;overflow-wrap:anywhere}
.evolution-table thead th{font-family:'JetBrains Mono',monospace;font-size:.62rem;line-height:1.7;text-transform:uppercase;letter-spacing:.035em;background:#232729;color:#c5cbd2;border-top:1px solid #41464b}
.evolution-table thead th:first-child{width:19%}
.evolution-table thead th:nth-child(2){width:22%}
.evolution-table thead th:nth-child(3){width:20%}
.evolution-table thead th:last-child{width:39%;color:#d8ff57;border-top:2px solid #d8ff57}
.evolution-table tbody th{font-weight:600;color:#dde1e6}
.evolution-table td:last-child{background:rgba(216,255,87,.025)}
.evolution-table tr[data-axis-group="brownfield"] th{border-left:3px solid #d8ff57;color:#d8ff57}
.evolution-table tr[data-axis-group="foundation"]+tr[data-axis-group="brownfield"] th{border-top:2px solid #d8ff57}
.evolution-state{display:block;font-size:.64rem;font-weight:600;line-height:1.6;color:#c5d7a8;margin-bottom:.45rem}
.evolution-table a{display:inline-flex;align-items:center;min-height:44px;color:#bdc6d0;font-size:.65rem;text-underline-offset:3px;margin-top:.1rem}
.evolution-table a:hover{color:#d8ff57}
.evolution-table a:focus-visible,.bf-close a:focus-visible,.evolution-links a:focus-visible{outline:2px solid #d8ff57;outline-offset:3px}
.evolution-footnote{margin-top:1rem}
.evolution-links{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.5rem}
@media(max-width:1000px){.bf-intro{gap:2rem}.bf-flow-grid{grid-template-columns:1fr 1.3fr}.bf-outcome{grid-column:1/-1;border-top:1px solid #363b40}.bf-outcome h3 br{display:none}.bf-outcome ul{grid-template-columns:repeat(3,1fr)}.bf-steps{border-right:0}}
@media(max-width:700px){.bf-intro{grid-template-columns:1fr;gap:1.7rem}.bf-evolution{grid-template-columns:1fr;gap:1rem}.bf-evolution-arrow{transform:rotate(90deg);justify-self:start}.bf-flow-grid{grid-template-columns:1fr}.bf-origin,.bf-steps,.bf-outcome{padding:1.4rem 1.2rem}.bf-steps{border-inline:0;border-top:1px solid #363b40}.bf-outcome ul{grid-template-columns:1fr}.bf-close{display:block}.bf-close a{margin-top:.8rem;max-width:100%}.bf-flow figcaption{padding:1.2rem}.evolution-count{font-size:1.45rem}.evolution-table{min-width:820px}.evolution-links{display:grid;gap:0}}
