/* Una ubicación estable; el catálogo aparece sólo cuando se solicita. */
.workspace-navigation{position:sticky;top:0;z-index:20;background:var(--bg);width:100%;max-width:1440px;margin:0 auto;padding:0 54px}
.workspace-bar{position:relative;display:flex;align-items:center;gap:18px;min-height:68px;border-bottom:1px solid var(--border)}
.workspace-back{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;font-size:13px;white-space:nowrap;color:var(--text)}
.workspace-location{display:grid;gap:3px;min-width:0;flex:1;padding:10px 0}
.workspace-location>span{font-size:10px;letter-spacing:.04em;color:var(--muted)}
.workspace-location>strong{font-size:14px;font-weight:550;line-height:1.3;overflow-wrap:anywhere}
.workspace-sections{flex-shrink:0}
.workspace-sections>summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 0 8px 8px;list-style:none;cursor:pointer;font-size:13px;color:var(--text)}
.workspace-sections>summary::-webkit-details-marker{display:none}
.workspace-sections>summary>span{font-size:20px;font-weight:400}
.workspace-sections[open]>summary>span{transform:rotate(45deg)}
.workspace-menu-panel{position:absolute;right:0;top:100%;z-index:1;width:min(580px,calc(100vw - 40px));max-height:min(65vh,600px);max-height:min(65dvh,600px);overflow:auto;overscroll-behavior:contain;padding:14px 18px 20px;border:1px solid var(--border);border-radius:0 0 12px 12px;background:var(--surface);box-shadow:0 14px 28px var(--v-shadow)}
.workspace-menu-label{font-size:11px;color:var(--muted);margin:12px 0 6px;letter-spacing:.04em}
.workspace-primary,.workspace-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px;margin:0;padding:0;border:0}
.workspace-primary a,.workspace-secondary a{display:flex;align-items:center;min-height:44px;padding:10px;font-size:13px;line-height:1.4;color:var(--text);border:1px solid transparent;border-radius:6px}
.workspace-primary a[aria-current=page],.workspace-secondary a[aria-current=page]{color:var(--accent);border-color:var(--border);background:var(--surface-2);font-weight:600}
.workspace-primary a:hover,.workspace-secondary a:hover,.workspace-back:hover{color:var(--accent);background:var(--surface-2)}
.workspace-navigation a:focus-visible,.workspace-sections>summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.context-selector{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:16px 0;border-block:1px solid var(--border);margin:20px 0 8px}
.context-selector label{display:flex;align-items:center;gap:14px;margin:0;max-width:100%;font-size:12px}
.context-selector select{max-width:100%;min-width:230px}
.context-help{font-size:12px;color:var(--muted);margin:8px 0 20px}.context-help summary{cursor:pointer}
.kpi-discovery{display:flex;align-items:end;flex-wrap:wrap;gap:18px;padding:18px 0;border-bottom:1px solid var(--border)}
.kpi-discovery label{display:block;font-size:12px;margin:0}.kpi-discovery input,.kpi-discovery select{display:block;margin-top:7px;width:100%}
.kpi-search-label{flex:1;min-width:200px}.v3-ui .kpi-discovery button{background:transparent;color:var(--text);border-color:var(--border)}.v3-ui .kpi-discovery button:hover{background:var(--v-neutral)}
.kpi-count{font-size:12px;color:var(--muted);margin:12px 0}.kpi-company{margin:28px 0}.kpi-cargo{padding:18px 0;border-top:1px solid var(--border)}
.kpi-row{display:flex;align-items:start;gap:18px;border-bottom:1px solid var(--border)}.kpi-row details{padding:14px 0;flex:1;min-width:0}.kpi-row summary{cursor:pointer}.kpi-row> a{padding:14px 0;flex-shrink:0}
.kpi-row .kpi-preview{font-size:12px;color:var(--muted);margin:6px 0 0}.kpi-empty{padding:28px 0}.map-legend{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:12px 0 20px}
.kpi-preview{display:block}.kpi-fieldset{border:0;border-top:1px solid var(--border);margin:26px 0;padding:0}.kpi-fieldset legend{font-size:18px;padding-right:16px}.kpi-fieldset .kpi-fields{margin:20px 0}.v3-ui .kpi-actions{position:sticky;top:var(--workspace-nav-height,0px);background:var(--bg);z-index:5;padding:16px 0;border-bottom:1px solid var(--border)}
.v3-ui .kpi-fields input,.v3-ui .kpi-fields select,.v3-ui .kpi-fields textarea{scroll-margin-top:calc(var(--workspace-nav-height,0px) + 100px)}
.map-gradient{display:inline-block;width:100px;height:8px;background:linear-gradient(to right,var(--v-surface),var(--v-accent))}
.v3-ui [hidden]{display:none!important}
@media(max-width:760px){.workspace-navigation{padding:0 30px}.workspace-bar{gap:12px;min-height:64px}.workspace-location>strong{font-size:13px}.workspace-back{gap:5px}.workspace-sections>summary{font-size:12px;gap:6px}.workspace-primary,.workspace-secondary{grid-template-columns:1fr;gap:2px}.context-selector label{flex-wrap:wrap;gap:8px}.context-selector select{min-width:0;width:100%}.kpi-discovery{gap:12px}.kpi-search-label{flex-basis:100%}.kpi-row{gap:10px}.kpi-row> a{font-size:12px}}
@media(max-width:400px){.workspace-navigation{padding:0 20px}.workspace-bar{gap:8px}.workspace-back{justify-content:center;min-width:44px}.workspace-sections>summary{padding-left:2px}}
@media print{.workspace-navigation,.kpi-discovery,.context-selector,.context-help,.kpi-row>a{display:none!important}}

/* Jerarquía común sin alterar el lenguaje visual aprobado. */
.v3-ui .primary-metrics .kpi b{font-weight:450;font-size:clamp(32px,3.1vw,46px);letter-spacing:-1.3px}
.v3-ui .secondary-metrics .kpi b{font-size:28px;font-weight:450}
.attention-strip{border-block:1px solid var(--border);margin:30px 0;padding:20px 0;display:grid;grid-template-columns:1fr 1fr;gap:22px 38px}
.attention-strip>h2{grid-column:1/-1;margin:0;font-size:20px}.attention-strip article{border-left:2px solid var(--accent);padding-left:20px}.attention-strip h3{margin:8px 0;font-size:23px;letter-spacing:-.5px;font-weight:450}.attention-strip p{font-size:13px}.attention-strip .muted{font-size:12px}.attention-strip a{font-size:13px;text-decoration:underline}
.empty-state{padding:24px 0;border-block:1px solid var(--border);margin:24px 0;max-width:850px}.empty-state h2,.empty-state h3{font-size:23px;font-weight:450;margin:0 0 10px}.empty-state p{color:var(--muted);max-width:740px}.empty-state a{font-size:13px;text-decoration:underline}
.data-sources{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:36px;margin:32px 0}.data-sources article{border-top:1px solid var(--border);padding:22px 0}.data-sources h2{margin:0;font-size:24px;font-weight:450}.data-sources p{color:var(--muted);font-size:13px}.data-sources a{display:block;margin:16px 0;font-size:13px;text-decoration:underline}
.kpi-reading{display:grid;grid-template-columns:minmax(0,2fr) minmax(60px,.5fr) minmax(110px,1fr);gap:20px;font-size:12px;margin-top:12px;color:var(--muted)}.kpi-reading small{display:block;font-size:10px;letter-spacing:.7px;text-transform:uppercase;margin-bottom:4px}.v3-ui .kpi-reading .badge.gris{background:var(--v-neutral);color:var(--v-muted)}
.v3-ui .holding-period.report-filter{background:transparent;border-radius:0;padding:20px 0;box-shadow:none}.holding-period .period-shortcuts{flex-wrap:wrap}.v3-ui input[type=date]{min-width:150px}.v3-ui input[type=date]::-webkit-calendar-picker-indicator{display:block;cursor:pointer;opacity:.65}
@media(max-width:760px){.attention-strip{grid-template-columns:1fr;gap:24px}.kpi-reading{gap:12px;grid-template-columns:minmax(0,1.7fr) minmax(28px,.4fr) minmax(80px,1fr)}.holding-period-form{width:100%}.v3-ui .secondary-metrics .kpi b{font-size:24px}}

/* Una sola fecha visible, independiente del idioma del navegador. */
.locale-date { position:relative; display:flex; width:100%; align-items:center; }
.locale-date > input[type=text] { padding-right:44px; width:100%; min-width:0; box-sizing:border-box; }
.locale-date .locale-date-native { position:absolute; inset:0; width:100%; height:100%; opacity:0; pointer-events:none; margin:0; }
.locale-date .locale-date-picker { position:absolute; right:4px; top:50%; transform:translateY(-50%); border:0; background:transparent; color:var(--ink,var(--v-ink)); padding:8px; min-width:36px; min-height:36px; border-radius:4px; }
.locale-date .locale-date-picker:hover { background:var(--paper,var(--v-paper)); }
.locale-date .locale-date-picker:focus-visible { outline:2px solid var(--rust,var(--v-accent)); outline-offset:1px; }
.locale-date .locale-date-picker svg { display:block; width:19px; height:19px; }

@media(max-width:360px){.workspace-back>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
