/* MDI CORE · capa visual 2026: conversación + mapa horizontal de decisión */
.mdi-stage-map{position:sticky;top:58px;z-index:18;margin:10px 0 18px;padding:8px;border:1px solid rgba(23,61,53,.10);border-radius:16px;background:rgba(247,244,239,.92);backdrop-filter:blur(12px);box-shadow:0 8px 28px rgba(24,42,36,.05)}
.mdi-stage-track{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding:1px}.mdi-stage-track::-webkit-scrollbar{display:none}
.mdi-stage{position:relative;flex:1 0 auto;min-width:118px;border:0;border-radius:12px;padding:10px 12px;background:transparent;color:#78817d;text-align:left;cursor:default;transition:.2s ease}.mdi-stage:not(:disabled):hover{transform:translateY(-1px)}
.mdi-stage span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:3px}.mdi-stage strong{display:block;font-size:12px;line-height:1.2;font-weight:750}
.mdi-stage.is-completed{background:#e8f1ec;color:#315c4d;cursor:pointer}.mdi-stage.is-completed span:before{content:'✓ ';font-weight:900}
.mdi-stage.is-active{background:#173d35;color:#fff;box-shadow:0 8px 22px rgba(23,61,53,.18);cursor:pointer}.mdi-stage.is-active span{color:#bcd1c8}.mdi-stage.is-active:after{content:'';position:absolute;left:12px;right:12px;bottom:5px;height:2px;border-radius:3px;background:#88b3a2;animation:mdiStagePulse 1.55s ease-in-out infinite}
.mdi-stage.is-editing{outline:2px solid #9abaae;outline-offset:2px}.mdi-stage.is-future{opacity:.58}.mdi-stage.is-report.is-ready{background:#f0eadc;color:#5f4d19;cursor:pointer}
@keyframes mdiStagePulse{0%,100%{opacity:.3;transform:scaleX(.55)}50%{opacity:1;transform:scaleX(1)}}
.question-card{box-shadow:0 18px 50px rgba(28,38,34,.07)!important;border:1px solid rgba(23,61,53,.08)!important}.question-card .eyebrow{color:#6f847c}.question-card h2{max-width:760px}
.decision-panel{margin-top:16px}.reading-head{padding-top:2px}.decision-sticky>h2{max-width:780px}
.section-card{position:relative}.section-active{padding:23px 24px;border-color:#8dab9f;background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%);box-shadow:0 20px 52px rgba(23,61,53,.09)}
.section-active:after{content:'Parte que estamos construyendo';display:inline-flex;margin-top:14px;padding:5px 8px;border-radius:999px;background:#eef4f1;color:#577068;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.section-completed{padding:15px 18px;background:#edf4f0;border-color:#d5e2db;box-shadow:none}.section-completed.is-collapsed .section-message,.section-completed.is-collapsed .fact-row,.section-completed.is-collapsed .cost-group,.section-completed.is-collapsed .professional-detail,.section-completed.is-collapsed .finance-viability,.section-completed.is-collapsed .service-groups,.section-completed.is-collapsed .environment-facts{display:none}.section-completed h3{margin:0}.section-completed h3:before{content:'Concluido · ';font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#70847c}.section-completed h3:after{content:' ✓';color:#36735c}.mdi-section-toggle{margin-top:9px;border:0;padding:0;background:transparent;color:#315d4e;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.section-completed:not(.is-collapsed) .mdi-section-toggle{margin-bottom:8px}
.section-message{font-size:13px!important;color:#65706b!important;margin:0 0 12px!important;line-height:1.5}.fact-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:9px 0;border-top:1px solid #efede8;color:#5d6863;font-size:13px}.section-completed .fact-row{border-color:#dce9e1}.fact-row:first-of-type{border-top:0}.fact-row strong{color:var(--ink);text-align:right;font-size:14px}.fact-copy{min-width:0}.fact-copy span,.fact-copy small{display:block}.fact-copy small{font-size:11px;line-height:1.35;color:#88918d;margin-top:3px}.fact-emphasis{margin:8px 0 2px;padding:13px 14px;border:0;border-radius:13px;background:#eaf1ed;color:var(--ink)}.fact-emphasis span{font-weight:800}.fact-emphasis strong{font-size:19px;color:#173d35}
.detail-block{border:1px solid #e2dfd9;background:rgba(255,255,255,.62);border-radius:17px;padding:0;margin-top:12px;overflow:hidden}.detail-block summary{cursor:pointer;font-size:14px;font-weight:780;padding:16px 18px;list-style:none}.detail-block summary::-webkit-details-marker{display:none}.detail-block summary:after{content:'+';float:right;color:#6b7771}.detail-block[open] summary:after{content:'–'}.detail-block>div{color:#59655f;font-size:13px;line-height:1.5;padding:0 18px 18px}.professional-detail{margin-top:12px;background:#f5f7f6}
.cost-group{border-top:1px solid #e8e6e1;margin-top:13px}.cost-group summary{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 0 12px;cursor:pointer;list-style:none}.cost-group summary::-webkit-details-marker{display:none}.cost-group summary span{display:block;min-width:0}.cost-group summary strong,.cost-group summary small{display:block}.cost-group summary strong{font-size:14px;color:var(--ink)}.cost-group summary small{font-size:11px;color:#7c8782;line-height:1.4;margin-top:3px;max-width:590px}.cost-group summary b{white-space:nowrap;color:#173d35;font-size:14px}.cost-items{padding:2px 0 4px}.cost-item{padding:14px 0;border-top:1px solid #efede8}.cost-item-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.cost-item-head>div:first-child strong,.cost-item-head>div:first-child small{display:block}.cost-item-head>div:first-child strong{font-size:13px}.cost-item-head>div:first-child small{font-size:11px;color:#89928e;margin-top:3px}.cost-current{text-align:right}.cost-current b,.cost-current em{display:block}.cost-current b{font-size:13px}.cost-current em{font-style:normal;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#7b8781;margin-top:3px}.cost-real .cost-current em{color:#28604c}.cost-pending .cost-current em{color:#8b5c16}.cost-edit{margin-top:10px;padding:11px 12px;border-radius:12px;background:#f4f6f5}.cost-edit label{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#65716b;margin-bottom:7px}.cost-edit>div{display:flex;gap:7px;flex-wrap:wrap}.cost-edit input{flex:1 1 140px;min-width:0;border:1px solid #d8ddd9;border-radius:10px;background:white;padding:10px 11px;font-size:14px}.cost-edit button{border:0;border-radius:10px;background:#1b493e;color:white;padding:10px 12px;font-size:11px;font-weight:750}.cost-edit .cost-reset{background:transparent;color:#5d6963;border:1px solid #d4dad7}
.finance-viability{margin-top:16px;padding:16px;border:1px solid #dfe6e2;border-radius:16px;background:#f8faf9}.finance-viability-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:13px}.finance-viability-head span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#718079}.finance-viability-head h4{margin:3px 0 0;font-size:15px;color:#173d35}.finance-viability-head>strong{font-size:11px;border-radius:999px;padding:6px 9px;background:#edf1ef;color:#59665f}.finance-fit .finance-viability-head>strong{background:#e1efe8;color:#285b48}.finance-no_fit .finance-viability-head>strong{background:#f6e5e2;color:#813a32}.finance-criteria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.finance-criterion{padding:12px;border-radius:13px;border:1px solid #e0e5e2;background:#fff}.criterion-top{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}.criterion-top span{font-size:10px;font-weight:800;color:#52615b}.criterion-top em{font-size:8px;font-style:normal;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 6px;background:#eef1ef;color:#69736f}.finance-criterion.is-ok .criterion-top em{background:#e4f0ea;color:#2f624e}.finance-criterion.is-fail{border-color:#ecd2cd;background:#fff9f8}.finance-criterion.is-fail .criterion-top em{background:#f5dfdc;color:#863c34}.finance-criterion>strong{display:block;margin-top:9px;font-size:18px;color:#17201d}.finance-criterion>small{display:block;margin-top:5px;font-size:10px;line-height:1.4;color:#7a8580}.finance-age{margin:11px 0 0;padding:9px 11px;border-radius:10px;background:#eef3f0;color:#5d6c66;font-size:10px}.finance-age.is-fail{background:#f7e7e4;color:#873d34}.finance-solutions{margin-top:13px;border-top:1px solid #e2e7e4;padding-top:13px}.finance-solutions h5{margin:0 0 8px;font-size:12px;color:#173d35}.finance-solution{padding:9px 0;border-top:1px solid #edf0ee}.finance-solution:first-of-type{border-top:0}.finance-solution strong,.finance-solution span{display:block}.finance-solution strong{font-size:12px;color:#26342f}.finance-solution span{font-size:10px;line-height:1.45;color:#77827d;margin-top:3px}.finance-solution ul{margin:6px 0 0;padding-left:18px;color:#59665f;font-size:10px}
.section-divider{margin-top:16px;padding:13px 0 9px;border-top:2px solid #dfe7e3}.section-divider span,.section-divider small{display:block}.section-divider span{font-size:12px;font-weight:850;color:#173d35}.section-divider small{margin-top:3px;font-size:10px;color:#7b8781;line-height:1.4}.service-group{padding:11px 0;border-top:1px solid #e9ecea}.service-group-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}.service-group-title strong{font-size:12px;color:#26342f}.service-group-title span{font-size:9px;color:#7e8984}.service-item{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:7px 9px;border-radius:10px;background:#f7f9f8}.service-item.is-primary{background:#eef4f1}.service-item>div strong,.service-item>div small{display:block}.service-item>div strong{font-size:11px;color:#17201d}.service-item>div small{font-size:9px;color:#7a8580;margin-top:2px}.service-item>b{white-space:nowrap;font-size:11px;color:#1f5a49}.service-more{margin-top:6px}.service-more summary{cursor:pointer;list-style:none;font-size:10px;font-weight:800;color:#2e6250;padding:5px 0}.service-more summary::-webkit-details-marker{display:none}.service-more summary:after{content:' +';}.service-more[open] summary:after{content:' –';}.service-more-list{display:grid;gap:5px;margin-top:4px}.service-freshness{display:block;margin-top:9px;font-size:9px;line-height:1.4;color:#89928e}.environmental-divider{margin-top:20px;border-top-color:#cfded7}.environment-facts .fact-row{border-color:#e7ebe9}
.study-side{width:100%;margin-top:14px;border:1px solid #cfd9d4;background:#edf3f0;color:#173d35;border-radius:13px;padding:13px;font-weight:800}.captured-data{margin:14px 0 0;padding:0;border:0;background:transparent}.captured-data details{border-top:1px solid #e4e1db;padding-top:12px}.captured-data summary{cursor:pointer;color:#6b7671;font-size:11px}.captured-grid{margin-top:10px}.captured-item{background:white}
.mdi-context-note{display:flex;align-items:flex-start;gap:9px;margin:12px 0 0;padding:11px 13px;border-radius:12px;background:#f2f5f3;color:#607069;font-size:11px;line-height:1.45}.mdi-context-dot{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#5e8a79;box-shadow:0 0 0 4px #e0ebe6;flex:0 0 auto}
/* Edición directa desde el mapa superior */
body.mdi-editor-open{overflow:hidden}.mdi-editor-backdrop{position:fixed;inset:0;z-index:95;display:flex;justify-content:flex-end;background:rgba(20,31,27,.28);backdrop-filter:blur(3px)}.mdi-editor-backdrop.hidden{display:none}.mdi-editor{width:min(520px,94vw);height:100%;overflow:auto;background:#fbfaf7;border-left:1px solid rgba(23,61,53,.12);box-shadow:-22px 0 60px rgba(18,31,26,.16);padding:22px}.mdi-editor-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:13px;border-bottom:1px solid #e5e2dc}.mdi-editor-head span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:#76837d}.mdi-editor-head h3{margin:4px 0 0;font-size:24px;color:#173d35}.mdi-editor-close{width:38px;height:38px;border:0;border-radius:50%;background:#edf2ef;color:#31483f;font-size:25px;line-height:1;cursor:pointer}.mdi-editor-lead{margin:14px 0 18px;color:#69746f;font-size:12px;line-height:1.55}.mdi-editor-body{display:grid;gap:11px}.mdi-edit-field{padding:13px;border:1px solid #e3e5e2;border-radius:14px;background:#fff}.mdi-edit-field>label{display:block;font-size:11px;font-weight:800;color:#45564f;margin-bottom:7px}.mdi-edit-field>div{display:flex;gap:7px;align-items:center}.mdi-edit-field input,.mdi-edit-field select{flex:1 1 auto;min-width:0;width:100%;border:1px solid #d7ddd9;border-radius:10px;background:#fff;padding:10px 11px;font-size:14px;color:#17201d}.mdi-edit-field button{border:0;border-radius:10px;background:#173d35;color:#fff;padding:10px 12px;font-size:10px;font-weight:800;cursor:pointer}.mdi-edit-field small{display:block;margin-top:6px;color:#8a938f;font-size:9px}.mdi-edit-unit{white-space:nowrap;color:#68736e;font-size:10px}.mdi-editor-address{padding:13px;border-radius:14px;background:#edf4f0}.mdi-editor-address span,.mdi-editor-address strong{display:block}.mdi-editor-address span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#718078}.mdi-editor-address strong{margin-top:4px;font-size:13px;color:#173d35}.mdi-editor-reset-location{width:100%;border:1px solid #cfdad4;border-radius:12px;background:#f1f5f3;color:#264f42;padding:12px;font-size:11px;font-weight:800;cursor:pointer}.mdi-editor-hint{margin:3px 0 0;padding:11px 12px;border-radius:12px;background:#f2efe8;color:#6b665a;font-size:10px;line-height:1.5}.mdi-editor-error{padding:10px 12px;margin-top:12px;border-radius:11px;background:#f8e6e3;color:#833b33;font-size:11px}.mdi-editor-error.hidden{display:none}
@media(max-width:900px){.mdi-stage-map{top:52px;margin:8px -2px 14px;border-radius:14px}.mdi-stage{min-width:106px;padding:9px 10px}.mdi-stage strong{font-size:11px}.section-active{padding:20px 18px}.finance-criteria{grid-template-columns:1fr}}
@media(max-width:620px){.mdi-stage-map{top:48px;margin-left:-4px;margin-right:-4px;padding:6px}.mdi-stage{min-width:102px}.mdi-stage span{font-size:8px}.question-card{border-radius:18px!important}.section-active{padding:18px 15px}.section-completed{padding:14px}.decision-sticky>h2{font-size:22px}.finance-viability{padding:13px}.finance-viability-head{display:block}.finance-viability-head>strong{display:inline-block;margin-top:8px}.service-group-title{align-items:flex-start}.mdi-editor-backdrop{align-items:flex-end}.mdi-editor{width:100%;height:min(84vh,760px);border-left:0;border-top:1px solid rgba(23,61,53,.12);border-radius:22px 22px 0 0;padding:18px 15px}.mdi-editor-head h3{font-size:21px}.mdi-edit-field>div{flex-wrap:wrap}.mdi-edit-field button{flex:0 0 auto}}
@media(prefers-reduced-motion:reduce){.mdi-stage.is-active:after{animation:none}}
