/* Concilio: jerarquía editorial, legibilidad y operación táctil. */
:root{--muted:#53677e;--line:#dce4ee;--gold:#8c6329}
body{font-size:14px;line-height:1.65}
main{padding-top:34px}
h1{font-size:34px;line-height:1.2;max-width:900px}
h2{font-size:22px}.page-heading{margin-bottom:28px}.page-heading p{font-size:14px;max-width:740px}
.eyebrow,.workspace-label{font-size:11px;letter-spacing:1.3px}.nav-item{font-size:13px;min-height:46px}.nav-item .badge{font-size:11px}.sidebar-bottom button,.sidebar-bottom small,.workspace-status{font-size:11px}.sidebar-bottom button{min-height:32px}.tenant small{font-size:11px}.profile-switch>span{font-size:11px}.profile-switch select{min-height:36px;font-size:13px}.icon-button{min-width:44px;min-height:44px;justify-content:center}
.btn,.btn.small{min-height:44px;font-size:12px;padding:10px 16px;border-radius:8px}.text-button{font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:6px}.filters input,.filters select,.filter-tabs button{font-size:13px;min-height:44px}.filters input{min-width:180px}.filter-tabs{flex-wrap:wrap}.filter-tabs button{padding:8px 13px}.help{min-width:28px;width:28px;height:28px;font-size:12px}.date-chip{font-size:12px}
.stats{border:0;border-radius:0;background:transparent;padding:8px 0 24px;border-bottom:1px solid var(--line);margin-bottom:28px}.stat{padding:0 24px}.stat:first-child{padding-left:0}.stat span{font-size:12px}.stat strong{font-size:32px;line-height:1.45}.stat small{font-size:11px}.pill,.company-mini{font-size:11px;line-height:1.5}.pill{padding:4px 8px}.company-mini{padding:3px 7px;background:#edf2f8;color:#445c77}.pill.gold{color:#80591e;background:#f7eddc}.pill.gray{color:#526479}.pill.purple{color:#665184}.pill.outline{color:#526479}.small-note,.wide-note,.map-attribution,.media-label{font-size:12px;line-height:1.6}.notice{font-size:13px;line-height:1.65}
.panel{border-color:#e0e7ef;border-radius:12px}.panel-head{padding:22px 24px}.panel-head h2{font-size:18px}.panel-head p{font-size:12px}.map-legend{font-size:12px;flex-wrap:wrap;gap:10px 18px}.map-marker{font-size:12px}.hero-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:28px}.executive-map{box-shadow:0 8px 28px #12345306}.executive-map .map-wrap{height:470px}.role-agenda{background:transparent;border:0;border-radius:0}.role-agenda .panel-head{padding:3px 0 18px}.role-agenda .next-row{padding:20px 0;border-top:1px solid var(--line)}.next-row h3{font-size:15px}.next-row p,.strip p{font-size:13px}.strip h3{font-size:14px}.role-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;background:#eaf1f9;border-radius:9px;margin-bottom:25px;font-size:13px}.role-strip p{font-size:13px}.role-strip .eyebrow{margin-bottom:3px}.agenda-action{display:flex;align-items:flex-start;gap:14px;padding:19px 0;border-top:1px solid var(--line)}.agenda-action h3{font-size:15px}.agenda-action p{font-size:13px}.data-origin{font-size:11px;line-height:1.65;color:#53677e;margin-top:12px}.review-summary{background:var(--navy);color:#fff;padding:22px 24px;border-radius:10px;margin-bottom:22px}.review-summary p{color:#d6e2f0;font-size:13px}.review-summary .eyebrow{color:#bcd5f1}.review-summary .btn.secondary{background:#fff}.editorial-opportunities{display:block;border-top:1px solid var(--line)}.opportunity-line{padding:23px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;background:transparent;border-radius:0}.opportunity-line h3{font-size:16px}.opportunity-line p{font-size:13px;margin-top:6px;max-width:780px}.opportunity-line .company-stack{margin-top:12px}.opportunity-line>.btn{flex-shrink:0}.coordination-list{display:grid;gap:0}.coordination-item{padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.coordination-item:last-child{border-bottom:0}
.op-card{padding:22px;border-radius:9px;box-shadow:none}.op-card p{font-size:13px}.section-title{margin-top:32px}.section-title h2{font-size:21px}.section-title p{font-size:13px}table{font-size:13px}th{font-size:11px;letter-spacing:.5px;color:#52677f}td h3,.table-name{font-size:13px}td p{font-size:12px}.progress-label{font-size:12px}.progress{height:6px}.matrix th{font-size:11px}.matrix button{min-width:36px;min-height:36px}.intro-band p{font-size:13px}.intro-band h2{font-size:24px}.company-top p,.company-detail .metricline,.integration-legend{font-size:12px}.flow-step span{font-size:12px}.flow-step small{font-size:11px}.workflow-banner{font-size:12px;line-height:1.8}.kanban-col>h3{font-size:14px}.kanban-card h3{font-size:14px}.kanban-card p,.board-footer{font-size:12px}.decision-rank p{font-size:13px}.decision-rank h3{font-size:16px}.criteria{font-size:12px}.score small{font-size:11px}.control label,.control output{font-size:13px}.basis,.basis p{font-size:13px}.list-row p{font-size:13px}.form-field label,.form-field input,.form-field select,.form-field textarea{font-size:13px}.form-field input,.form-field select{min-height:44px}.form-field small,.checkbox-row{font-size:12px}.checkbox-row{min-height:36px;align-items:center}.checkbox-row input{min-width:20px;min-height:20px;margin-top:0}.config-section p{font-size:13px}.detail-grid small{font-size:11px}.detail-grid b{font-size:13px}.event small{font-size:11px}.event p{font-size:13px!important}.record{border:0;border-left:3px solid #a5bbd5;border-radius:0;background:#fff;padding:18px 22px}.record h3{font-size:15px!important}.record p{font-size:13px!important}.source-item h3{font-size:15px}.source-item p{font-size:13px}.source-item small{font-size:11px}.check-status{font-size:12px}#modal p{font-size:13px}#modal .close{width:44px;height:44px;top:12px;right:12px}.chat-message{font-size:14px;line-height:1.8}.chat-input input{min-height:48px}.chat-input button{min-height:48px}.assistant-fab{min-height:48px}.top-tools{display:flex;align-items:center;gap:10px}.mobile-tools{display:none}
@media(min-width:1650px){.executive-map .map-wrap{height:520px}}
@media(max-width:1150px){.hero-grid{grid-template-columns:1fr}.role-agenda{display:block}.role-agenda .next-row{padding:18px 0}.executive-map .map-wrap{height:440px}.decision-layout{grid-template-columns:260px minmax(0,1fr)}.matrix th{font-size:10px}.stats .stat{padding:0 15px}.stats .stat:first-child{padding-left:0}}
@media(max-width:780px){
.topbar{height:auto;min-height:116px;display:flex;flex-wrap:wrap;gap:8px 12px;padding:10px 16px;align-items:center}.brand,.brand img{width:108px}.tenant{flex:1;min-width:0}.tenant b{font-size:14px}.tenant small{display:block;font-size:10px}.top-spacer,.avatar{display:none}.topbar .icon-button{display:flex;min-width:44px;min-height:44px}.profile-switch{order:5;width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:5px}.profile-switch>span{margin:0;font-size:11px}.profile-switch select{font-size:13px;max-width:calc(100% - 100px);min-height:38px;flex:1;text-align:right}.top-tools{margin-left:auto;gap:4px}.top-tools .profile-switch{width:auto;min-width:0;flex:1}.top-tools:has(.profile-switch){order:5;width:100%;border-top:1px solid var(--line);padding-top:4px}.top-tools .profile-switch{border:0;padding:0}.sidebar{position:sticky;top:116px;padding:7px 12px 9px;z-index:900}.sidebar nav{scrollbar-width:thin;scrollbar-color:#8fa7c2 #edf2f8;padding-bottom:5px}.sidebar nav::-webkit-scrollbar{height:4px}.sidebar nav::-webkit-scrollbar-thumb{background:#8fa7c2;border-radius:4px}.nav-item{font-size:12px;min-height:44px;padding:9px 12px}.nav-item .icon{width:17px;height:17px}.mobile-tools{display:flex;gap:7px;align-items:center}.mobile-tools button{font-size:11px;min-height:40px;padding:7px 10px;background:#edf3fa;border-radius:6px}main{padding:25px 16px 104px}h1{font-size:28px;letter-spacing:-.8px}.page-heading{margin-bottom:24px;gap:15px}.page-heading p{font-size:13px}.page-actions{width:100%;gap:8px}.page-actions .btn{flex:1}.btn,.btn.small{min-height:44px;font-size:12px;padding:10px 14px}.text-button{min-height:44px;font-size:12px}.stats{row-gap:20px;padding-bottom:23px}.stats .stat,.stats .stat:first-child{padding:0 14px}.stats .stat:nth-child(odd){padding-left:0}.stat strong{font-size:29px}.stat span{font-size:12px}.stat small{font-size:11px}.role-strip{flex-direction:column;align-items:flex-start;padding:17px;gap:12px}.executive-map .map-wrap,.map-wrap{height:360px}.map-wrap.large{height:440px}.panel-head{padding:18px}.panel-head h2{font-size:17px}.map-legend{padding:13px 17px;font-size:11px}.opportunity-line{flex-direction:column;align-items:flex-start;gap:16px;padding:21px 0}.opportunity-line>.btn{align-self:flex-start}.section-title{align-items:flex-start;gap:10px}.section-title h2{font-size:19px}.section-title p{font-size:12px}.filters{gap:9px}.filters input{flex-basis:100%;min-width:0;font-size:13px}.filters select{min-width:0;flex:1;font-size:12px}.filter-tabs{width:100%;padding:4px;gap:3px}.filter-tabs button{font-size:11px;min-height:44px;padding:7px 9px;flex:1;white-space:normal}.company-mini,.pill{font-size:11px}.decision-layout{grid-template-columns:1fr}.decision-rank{grid-template-columns:26px minmax(0,1fr) 48px;padding:21px 16px;gap:10px}.decision-rank h3{font-size:15px}.decision-rank p{font-size:13px}.criteria{font-size:11px;gap:8px}.score{font-size:25px}.control label,.control output{font-size:13px}.control{margin-bottom:25px}input[type=range]{min-height:40px}.help{width:32px;height:32px;min-width:32px}.workflow-banner{font-size:12px}.list-row{gap:10px;align-items:flex-start}.list-row p{font-size:12px;overflow-wrap:anywhere}.list-row .text-button{flex-shrink:0}.agenda-date{min-width:42px;width:42px}.agenda-date small{font-size:11px}.form-field label,.form-field input,.form-field select,.form-field textarea{font-size:14px}.form-field input,.form-field select,.form-field textarea{font-size:16px}.detail-grid{grid-template-columns:1fr;gap:15px}.project-flow{scrollbar-width:thin;padding-bottom:8px}.flow-step{min-width:145px}.flow-step span{font-size:12px}.flow-step small{font-size:11px}.modal-actions .btn{flex:1;min-width:130px}#modal{padding:30px 20px 100px}#modal h2{font-size:25px;margin-right:35px}.assistant-fab{right:16px;bottom:16px;font-size:12px}.toast{bottom:80px;width:max-content;max-width:calc(100% - 32px);font-size:13px}.table-wrap:has(td[data-label]){background:transparent;border:0;overflow:visible}.table-wrap:has(td[data-label]) table,.table-wrap:has(td[data-label]) tbody{display:block;width:100%}.table-wrap:has(td[data-label]) thead{display:none}.table-wrap:has(td[data-label]) tr{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:14px;padding:7px 16px}.table-wrap:has(td[data-label]) td{display:flex;justify-content:space-between;gap:15px;text-align:right;padding:11px 0;border-bottom:1px solid #edf1f6;overflow-wrap:anywhere;font-size:13px}.table-wrap:has(td[data-label]) td:before{content:attr(data-label);text-align:left;flex:0 0 88px;color:var(--muted);font-size:11px}.table-wrap:has(td[data-label]) td:first-child{display:block;text-align:left;padding-top:12px}.table-wrap:has(td[data-label]) td:first-child:before{display:block;margin-bottom:5px}.table-wrap:has(td[data-label]) td:last-child{border:0}.table-wrap:has(td[data-label]) .company-stack{justify-content:flex-end}.table-wrap:has(td[data-label]) .table-name{font-size:15px;min-height:44px}.table-wrap:has(td[data-label]) td p{text-align:left;font-size:12px}.table-wrap:has(td[data-label]) td .progress{min-width:60px}.project-mobile{display:grid;gap:13px}.project-mobile article{background:#fff;padding:18px;border:1px solid var(--line);border-radius:10px}.project-mobile h3{font-size:16px}.project-mobile p{font-size:13px}
}
@media(max-width:390px){.topbar{gap:7px 9px}.tenant small{font-size:9px}.profile-switch>span{font-size:10px}.profile-switch select{max-width:calc(100% - 88px);font-size:12px}.stat span{font-size:11px}.map-legend{gap:8px}.decision-rank{grid-template-columns:22px minmax(0,1fr) 42px;gap:7px}.criteria{font-size:11px}.detail-grid b{overflow-wrap:anywhere}}
@media print{.role-strip,.mobile-tools,.top-tools{display:none}.stats{padding-bottom:15px}.executive-map .map-wrap{height:300px}.opportunity-line,.agenda-action{break-inside:avoid}}
/* Additional council components. */
.role-agenda{padding:6px 0}.role-agenda>h2{font-size:25px;line-height:1.35;margin:12px 0}.role-agenda>p{font-size:14px;line-height:1.8}.agenda-row{padding:18px 0;border-top:1px solid var(--line)}.agenda-row h3{font-size:14px}.agenda-row p{font-size:12px;margin-top:5px}.agenda-metrics{display:flex;gap:30px;margin:22px 0}.agenda-metrics>div{flex:1}.agenda-metrics strong{font-size:30px;font-weight:600;display:block}.agenda-metrics span{font-size:12px;color:var(--muted)}.op-index{font-size:22px;color:#8ea2ba;font-weight:500;flex:0 0 38px}.data-origin{display:inline-block;margin:5px 0;font-size:11px;line-height:1.6;font-weight:500;color:#45668e}.data-origin>span{color:var(--muted);font-weight:400}.data-origin.potential{color:#88632d}.review-summary{display:flex;justify-content:space-between;align-items:center;gap:25px}.review-summary p{margin-top:10px;max-width:780px}.coordination-item{display:flex;align-items:center;justify-content:space-between;gap:22px}.coordination-item>div{flex:1}.coordination-item p{font-size:13px;margin:8px 0}.coordination-item>.btn{flex-shrink:0}.coordination-item .inline-flex{gap:8px 18px}.relation-select{padding:10px 12px;border:1px solid var(--line);background:#fff;border-radius:7px;font-size:13px;min-height:44px;max-width:100%}.relationship-row{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.relationship-row p{font-size:12px;margin-top:4px}.decision-explanation{padding:20px 23px;background:#edf3fa;border-radius:9px;margin-bottom:15px}.decision-explanation p{font-size:13px;margin-top:7px}.comparison-metrics{display:flex;gap:22px;flex-wrap:wrap;margin:15px 0}.comparison-metrics strong{font-size:17px;display:block;font-weight:600}.comparison-metrics span{font-size:11px;color:var(--muted)}.decision-rank{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:14px}.context-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#eaf0f8;padding:13px 18px;border-radius:8px;margin-bottom:20px;font-size:12px}.utility-list{display:grid;gap:14px;margin:25px 0}.portfolio-table td[data-label="Participación"]{min-width:200px}.portfolio-table td[data-label="Cobertura"]{min-width:145px}.portfolio-table td[data-label="Iniciativa"]{min-width:240px}.portfolio-table .data-origin{display:block}.topbar .icon-button i{min-width:17px}body:has(#overlay:not([hidden])) .assistant-fab{visibility:hidden}.assistant-fab{box-shadow:0 5px 20px #102a4922}.role-strip{flex-wrap:wrap}.role-strip .pill{white-space:nowrap}
@media(max-width:780px){.topbar{display:grid;grid-template-columns:108px minmax(0,1fr) 44px 44px;grid-template-rows:44px auto;column-gap:10px;row-gap:8px;min-height:116px}.topbar .brand{grid-column:1;grid-row:1}.topbar .tenant{grid-column:2;grid-row:1;overflow:hidden}.topbar>.icon-button{grid-column:3;grid-row:1;padding:0}.topbar>.top-tools{grid-column:4;grid-row:1;margin:0}.topbar>.profile-switch{grid-column:1/-1;grid-row:2;width:100%}.topbar .tenant small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-strip{gap:7px}.role-strip>span{font-size:12px}.review-summary,.coordination-item{flex-direction:column;align-items:flex-start}.opportunity-line{position:relative;padding-left:0}.op-index{font-size:19px;flex-basis:auto}.portfolio-table td[data-label]{min-width:0!important;display:block!important;text-align:left!important}.portfolio-table td[data-label]:before{display:block!important;font-size:11px;margin-bottom:4px}.portfolio-table .company-stack{justify-content:flex-start!important}.portfolio-table .progress{width:100%}.portfolio-table .progress-label{margin-top:4px}.relationship-row{align-items:flex-start;flex-direction:column;gap:6px}.section-title{flex-wrap:wrap}.relation-select{width:100%}.context-strip{align-items:flex-start;flex-direction:column;gap:4px}.comparison-metrics{gap:14px}.role-agenda{padding-top:15px}.decision-rank .inline-flex{flex-direction:column;align-items:flex-start}}
.decision-summary{display:block}.decision-layout>*,.hero-grid>*{min-width:0}.decision-layout select{max-width:100%}.opportunity-line>div{min-width:0}.utility-list .btn{justify-content:flex-start}
