/* Presentation only. Approved PDF sheets deliberately excluded. */
.visual-message{border:1px solid #cbd8e3;border-radius:16px;padding:28px;max-width:520px;width:calc(100% - 60px);color:#23445e;box-shadow:0 16px 65px #0a233a33}
.visual-message::backdrop{background:#112c4866}
.visual-message h3{margin:0 0 14px;color:#174a73}
.visual-message p{white-space:pre-wrap;line-height:1.6;margin-bottom:24px}
.visual-message button{float:right}
@media print{.visual-message{display:none!important}}
#app{--bg:#dfe7ee;--line:#d3dee8;background:var(--bg)}
#app .content{padding:28px;max-width:1900px;margin:auto}
#app h1{font-size:28px;letter-spacing:-.6px;color:#15324c}
#app .card,#app .tablewrap{border:1px solid #d3dee8;box-shadow:0 3px 12px #12334b08;border-radius:14px}
#app .toolbar{padding:14px;background:#f8fafc;border:1px solid #d3dee8;border-radius:12px;margin-bottom:18px;gap:10px}
#app input,#app select,#actModal input,#actModal select,#actModal textarea{border-color:#c4d2df;border-radius:9px;min-height:42px}
#app button,#actModal button{transition:background .15s,box-shadow .15s}
#app button:focus-visible,#app input:focus-visible,#app select:focus-visible,#actModal button:focus-visible,#actModal input:focus-visible,#actModal select:focus-visible,#actModal textarea:focus-visible,.visual-tools summary:focus-visible{outline:3px solid #73b9ec;outline-offset:2px}
#app .nav{padding-right:5px;scrollbar-width:thin;scrollbar-color:#76a1c7 #0a4073}
#app .nav button{display:flex;align-items:center;gap:13px;min-height:48px;line-height:1.35}
.visual-icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#app .nav button span:first-child{display:flex;align-items:center;justify-content:center}
#app .metric{position:relative;padding:22px;border-top:3px solid #246aa5;min-height:155px}
#app .metric strong{font-size:36px;color:#15324c;margin:12px 0}
#app .metric .visual-icon{position:absolute;right:16px;top:16px;color:#397fae;background:#eaf3fa;border-radius:10px;box-sizing:content-box;padding:9px}
#app .metric>span:first-child{padding-right:43px;font-weight:600;color:#39536b}
#app .inventory-scroll{overflow:auto;max-height:calc(100vh - 315px);border-radius:12px;border:1px solid #d3dee8;background:white}
#app .inventory-scroll table{border-collapse:separate;border-spacing:0}
#app .inventory-scroll th{position:sticky;top:0;z-index:3;background:#edf3f8;color:#39536b;font-size:12px;text-transform:uppercase;letter-spacing:.3px}
#app .inventory-scroll td{background:#fff;border-bottom:1px solid #e6edf3}
#app .inventory-scroll tr:nth-child(even) td{background:#f5f8fb}
#app .inventory-scroll tr:hover td,#app .inventory-scroll tr.visual-selected td{background:#e6f1fa}
#app .inventory-scroll td:first-child,#app .inventory-scroll th:first-child{min-width:145px}
#app .pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-weight:600;border-radius:7px;padding:5px 9px}
#app .pill.green{background:#e0f3eb;color:#136646}
#app .pill.red{background:#f9e7e8;color:#9e3036}
#app .pill.amber{background:#fff0d2;color:#81590c}
#app .pill.visual-neutral{background:#e8edf2;color:#536477}
#app .pill .visual-icon{width:14px;height:14px}
#actModal .body{background:#dfe7ee;padding:24px 30px}
#actModal .act-section{background:#fff;border:1px solid #cbd8e3;border-radius:13px;padding:23px;margin:18px 0;box-shadow:0 2px 7px #15324c06}
#actModal .act-section h4{display:flex;align-items:center;gap:11px;color:#173e61;font-size:17px;margin-top:0}
#actModal .visual-step{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;background:#e8f1f9;color:#0a568e;border-radius:8px;font-size:13px}
#actModal label{color:#344e66;font-weight:600;display:block;margin-bottom:7px;font-size:13px}
#actModal input[readonly],#actModal input:disabled{background:#eef3f7;color:#495f74}
#actModal header,#actModal footer{background:#f8fafc;border-color:#cbd8e3}
#actModal footer{box-shadow:0 -4px 15px #16364b09;padding:16px 26px}
#actModal .line-items{overflow:auto;border-radius:9px;border:1px solid #d6e1ea}
#actModal .line-items th{background:#edf3f8;color:#3b5369;font-size:12px}
#actModal .notice{background:#eaf2f8;color:#284d6a;border-left:3px solid #428ac1;border-radius:8px;line-height:1.6}
#app .visual-tools{background:#f8fafc;border:1px solid #d3dee8;border-radius:10px;margin-top:12px}
#app .visual-tools summary{cursor:pointer;padding:14px;font-weight:600;color:#274d70}
#app .visual-tools .map-placement{margin:0;border:0;border-top:1px solid #dae3eb;border-radius:0;padding:14px}
#app #maleconMapTabs{gap:8px;margin-bottom:14px}
#app .map-detail{border-radius:13px;background:#fff;border:1px solid #d3dee8;padding:18px}
#app .map-asset{border-radius:9px;background:#f3f7fb;padding:12px;margin:9px 0}
#app .visual-priorities{margin:18px 0;padding:18px;background:#fff;border:1px solid #d3dee8;border-radius:13px}
#app .visual-priorities h3{margin:0 0 12px;color:#27435d}
#app .visual-priority{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:9px;background:#f1f6fa;margin-top:8px;gap:12px}
#app .visual-priority button{white-space:nowrap}
#app .visual-mobile-assets{display:none}
.draft-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:158px;padding:4px 0}
.draft-actions button{width:100%;margin:0!important;white-space:nowrap;justify-content:center}
.draft-actions .danger{color:#a12c2c;border-color:#e6b9b9;background:#fffafa}
.draft-actions .danger:hover{background:#fdecec;border-color:#d99898}
.valuation-dashboard{margin:24px 0 28px;display:grid;gap:16px}
.valuation-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.valuation-heading h2{margin:0 0 5px;font-size:24px;color:#102d47}
.valuation-heading p,.valuation-heading>span{margin:0;color:#60778a;font-size:13px}
.valuation-heading>span{background:#edf4f9;padding:8px 12px;border-radius:999px;white-space:nowrap}
.valuation-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.valuation-kpis article{background:#fff;border:1px solid #d7e2eb;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:7px;min-width:0}
.valuation-kpis article>span{font-size:13px;color:#5d7488;font-weight:600}
.valuation-kpis article>strong{font-size:25px;line-height:1.15;color:#0b487d;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.valuation-kpis article>small{color:#6b7f90}
.valuation-track,.valuation-category-progress{height:7px;background:#e3ebf1;border-radius:99px;overflow:hidden}
.valuation-track i,.valuation-category-progress i{display:block;height:100%;background:#1971b8;border-radius:inherit}
.valuation-breakdown{background:#fff;border:1px solid #d7e2eb;border-radius:14px;padding:18px}
.valuation-breakdown h3{margin:0 0 8px;color:#173a57}
.valuation-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(310px,1fr) minmax(120px,.6fr) 58px;gap:18px;align-items:center;padding:14px 0;border-top:1px solid #e5edf3}
.valuation-row:first-of-type{border-top:0}
.valuation-row>div:first-child{display:flex;flex-direction:column;gap:4px;color:#244660}
.valuation-row small{color:#6b7f90}
.valuation-values{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.valuation-values span{display:flex;flex-direction:column;gap:3px}
.valuation-values b,.valuation-percent{font-variant-numeric:tabular-nums;color:#173a57}
.valuation-percent{text-align:right}
@media(max-width:1100px){.valuation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.valuation-row{grid-template-columns:1fr 1fr}.valuation-category-progress{grid-column:1/-1}.valuation-percent{display:none}}
@media(max-width:620px){.valuation-heading{align-items:flex-start;flex-direction:column}.valuation-heading>span{white-space:normal}.valuation-kpis{grid-template-columns:1fr}.valuation-row{grid-template-columns:1fr}.valuation-values{grid-template-columns:1fr 1fr}.valuation-category-progress{grid-column:auto}}
#app .visual-asset-card{background:white;border:1px solid #d0dde8;border-radius:13px;padding:17px;margin:12px 0}
#app .visual-asset-card h3{font-size:17px;margin:9px 0;color:#173d60}
#app .visual-asset-card dl{display:grid;grid-template-columns:100px 1fr;gap:8px;margin:14px 0}
#app .visual-asset-card dt{color:#5f7386;font-size:13px}
#app .visual-asset-card dd{margin:0;overflow-wrap:anywhere;font-size:14px}
#app .visual-asset-card .actions{border-top:1px solid #e1e9f0;padding-top:12px}
@media(max-width:760px){#app .content{padding:17px}#app h1{font-size:23px}#app .inventory-scroll{display:none}#app .visual-mobile-assets{display:block}#app .toolbar{flex-wrap:wrap}#app .toolbar>*{min-width:0;flex:1 1 140px}#actModal .body{padding:13px}#actModal .act-section{padding:16px}#app .visual-priority{align-items:flex-start}#app .metric{padding:18px}#actModal footer{padding:12px;gap:8px}}
@media(prefers-reduced-motion:reduce){#app *,#actModal *{transition:none!important;animation:none!important}}

/* Actas por custodio organizadas por Gerencia */
#custodios .custody-source-table{display:none!important}
.custody-folder-filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:14px 0 18px;padding:16px;background:#f6f9fc;border:1px solid #d4e0ea;border-radius:14px}
.custody-folder-filters label{display:flex;flex-direction:column;gap:6px;min-width:0;color:#36566f;font-size:12px;font-weight:700}
.custody-folder-filters input,.custody-folder-filters select{width:100%;min-width:0;background:#fff}
.custody-folder-list{display:grid;gap:14px}
.custody-folder{overflow:hidden;background:#fff;border:1px solid #d3e0ea;border-radius:15px;box-shadow:0 4px 14px rgba(29,67,96,.05)}
.custody-folder>summary{display:flex;align-items:center;gap:16px;padding:18px 20px;cursor:pointer;list-style:none;background:linear-gradient(100deg,#fff 0%,#f4f8fb 100%);transition:background .2s ease}
.custody-folder>summary::-webkit-details-marker{display:none}
.custody-folder>summary:hover{background:#eef5fa}
.custody-folder[open]>summary{border-bottom:1px solid #d9e4ec;background:#edf5fb}
.custody-folder-icon{position:relative;display:block;flex:0 0 auto;width:39px;height:28px;border-radius:5px;background:#0b5b9e;box-shadow:inset 0 -3px 0 rgba(0,0,0,.08)}
.custody-folder-icon:before{content:"";position:absolute;left:3px;top:-6px;width:17px;height:8px;border-radius:4px 4px 0 0;background:#2879ba}
.custody-folder-title{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}
.custody-folder-title strong{color:#123d60;font-size:16px;overflow-wrap:anywhere}
.custody-folder-title small{color:#60788b;font-weight:500}
.custody-folder-arrow{font-size:23px;color:#2f648c;transition:transform .2s ease}
.custody-folder[open] .custody-folder-arrow{transform:rotate(180deg)}
.custody-folder-content{padding:14px}
.custody-folder-table{margin:0;box-shadow:none}
.custody-folder-table table{min-width:980px}
.custody-folder-empty{padding:30px;text-align:center;background:#fff;border:1px dashed #bacbd8;border-radius:14px;color:#637b8e}
@media(max-width:1050px){.custody-folder-filters{grid-template-columns:repeat(2,minmax(150px,1fr))}}
@media(max-width:620px){.custody-folder-filters{grid-template-columns:1fr}.custody-folder>summary{padding:16px}.custody-folder-content{padding:8px}}
.component-choice{display:block;margin-top:6px;min-width:245px}.component-selector{width:100%;border:1px solid #9eb4c7;background:#f7fbff;color:#17324d;font-size:12px;padding:7px;border-radius:7px}.component-selector:focus{outline:2px solid #2f80c9;outline-offset:1px}
