:root{--yellow:#F2D200;--yellow-hover:#D4BA00;--black:#1E1E1E;--white:#FFFFFF;--bg:#F5F5F5;--border:#D9D9D9;--text:#555555;--success:#1F8B4C;--error:#B42318;--warning:#B7791F;--info:#2563EB;--shadow:0 16px 42px rgba(30,30,30,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--black);font-family:Arial,Helvetica,sans-serif}.app-shell{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#171717;border-right:1px solid #2b2b2b;padding:22px 16px}.brand-mark{display:grid;place-items:center;min-height:128px;background:var(--yellow);border-radius:8px;padding:8px;box-shadow:0 10px 26px rgba(0,0,0,.16)}.brand-mark img{display:block;width:100%;max-height:108px;object-fit:contain}.nav-menu{display:grid;gap:8px;margin-top:26px}.nav-item,.tab,.btn{min-height:40px;border:0;border-radius:8px;font:inherit;cursor:pointer;transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.nav-item{width:100%;padding:12px 14px;background:transparent;color:#d8d8d8;text-align:left}.nav-item:hover,.nav-item.active{background:var(--yellow);color:var(--black)}.main{min-width:0;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:22px 24px;background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.topbar h1,.section-head h2,.panel h2{margin:0;letter-spacing:0}.topbar h1{font-size:clamp(24px,3vw,34px)}.topbar span,.empty-state p,td,.muted{color:var(--text)}.eyebrow{margin:0 0 7px;color:#7a6a00;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.status-pill,.badge{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.status-pill{background:#f8ed91;color:var(--black)}.filters-panel,.panel,.table-wrap,.empty-state,.catalog-filters,.dialog-card,.catalog-card{background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.filters-panel{padding:18px;margin-bottom:20px}.filters-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}label{display:grid;gap:6px;color:var(--text);font-size:12px;font-weight:700}input,select,textarea{width:100%;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:9px 11px;color:var(--black);font:inherit;background:var(--white)}textarea{resize:vertical}.wide{grid-column:span 2}.filter-actions,.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:14px}.dialog-actions.inline{margin-top:0}.btn{padding:10px 14px;font-weight:700}.btn.primary{background:var(--yellow);color:var(--black)}.btn.primary:hover{background:var(--yellow-hover)}.btn.ghost{background:var(--white);border:1px solid var(--border);color:var(--black)}.btn.dark{background:var(--black);color:var(--white)}.btn:hover,.tab:hover,.nav-item:hover{transform:translateY(-1px)}.content-section{display:none}.content-section.active{display:block}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.kpi-card{min-height:112px;padding:18px;background:var(--white);border:1px solid var(--border);border-left:5px solid var(--yellow);border-radius:8px;box-shadow:var(--shadow)}.kpi-card span,.catalog-card span,.status-dialog-info span,.kv-grid span{display:block;color:var(--text);font-size:12px;font-weight:700;text-transform:uppercase}.kpi-card strong{display:block;margin-top:12px;font-size:28px;letter-spacing:0}.compact .kpi-card{min-height:92px}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.panel{min-height:330px;padding:18px}.panel h2{margin-bottom:14px;font-size:16px}.panel canvas{width:100%!important;height:260px!important}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:6px 0 14px}.table-wrap{overflow:auto;max-height:70vh}.table-wrap.mini{max-height:280px;box-shadow:none}table{width:100%;min-width:1100px;border-collapse:separate;border-spacing:0}th,td{padding:13px 14px;border-bottom:1px solid #ececec;text-align:left;vertical-align:top;font-size:13px}th{position:sticky;top:0;z-index:1;background:#fbfbfb;color:var(--black);font-size:12px;text-transform:uppercase}tr:hover td{background:#fffbe2}.details-row td{background:#fafafa}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px}.detail-grid strong{display:block;margin-bottom:6px;color:var(--black)}.badge.success{background:rgba(31,139,76,.12);color:var(--success)}.badge.error{background:rgba(180,35,24,.12);color:var(--error)}.badge.warning{background:rgba(183,121,31,.14);color:var(--warning)}.badge.info{background:rgba(37,99,235,.12);color:var(--info)}.badge.neutral{background:#eee;color:#555}.badge.darkred{background:#4a0e0a;color:#fff2f0}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.tab{padding:10px 13px;background:var(--white);border:1px solid var(--border)}.tab.active{background:var(--yellow);border-color:var(--yellow);font-weight:700}.catalog-meta{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.catalog-card{padding:14px}.catalog-card strong{display:block;margin-top:7px}.catalog-card p{margin:8px 0 0;color:var(--text);line-height:1.45}.wide-card{grid-column:span 2}.catalog-filters{display:grid;grid-template-columns:repeat(8,minmax(120px,1fr));gap:10px;padding:14px;margin-bottom:14px}.catalog-filters input,.catalog-filters select{display:none}.catalog-filters.mode-reglas #ruleQ,.catalog-filters.mode-reglas #ruleRegimen,.catalog-filters.mode-reglas #ruleCategoria,.catalog-filters.mode-reglas #ruleRegion,.catalog-filters.mode-reglas #ruleEstadoAplicable,.catalog-filters.mode-reglas #ruleSeveridad,.catalog-filters.mode-reglas #ruleEstadoRegla,.catalog-filters.mode-reglas #ruleActivo{display:block}.catalog-filters.mode-cp-frontera #catCodigoPostal,.catalog-filters.mode-cp-frontera #catEstado,.catalog-filters.mode-cp-frontera #catMunicipio,.catalog-filters.mode-cp-frontera #catRegion,.catalog-filters.mode-cp-frontera #catActivo{display:block}.catalog-filters button{display:block}.empty-state{padding:46px;text-align:center}.empty-state strong{display:block;margin-bottom:8px;font-size:22px}.toast{position:fixed;right:22px;bottom:22px;max-width:360px;padding:14px 16px;background:var(--black);color:var(--white);border-radius:8px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease}.toast.show{opacity:1;transform:translateY(0)}dialog{width:min(760px,calc(100vw - 28px));border:0;padding:0;background:transparent}#detailDialog{width:min(1100px,calc(100vw - 28px))}dialog::backdrop{background:rgba(0,0,0,.44)}.dialog-card{padding:22px}.dialog-card h2{margin:0 0 16px}.dialog-card label{margin-bottom:12px}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.status-dialog-info,.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.status-dialog-info div,.kv-grid div{padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafafa;min-width:0}.status-dialog-info strong,.kv-grid strong{display:block;margin-top:5px;overflow-wrap:anywhere}.warning-copy,.manual-status{background:#fff8c5;border-left:5px solid var(--yellow);border-radius:8px;color:#6b5300;padding:14px}.manual-status{grid-column:1/-1;display:grid;gap:12px}.manual-status p{margin:6px 0 0;color:#6b5300}.manual-grid{display:grid;grid-template-columns:minmax(180px,240px) 1fr auto auto;gap:10px;align-items:end}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.timeline-item{border-top:1px solid rgba(0,0,0,.12);padding-top:8px;margin-top:8px}.timeline-item p{margin:4px 0;color:var(--text)}.danger{color:var(--error)}.detail-section{padding:14px 0;border-top:1px solid #ececec}.detail-section h3{margin:0 0 10px}.skeleton{min-height:64px;border-radius:8px;background:linear-gradient(90deg,#eee 25%,#fafafa 37%,#eee 63%);background-size:400% 100%;animation:shimmer 1.1s ease infinite}@keyframes shimmer{0%{background-position:100% 0}100%{background-position:0 0}}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav-menu{grid-template-columns:repeat(3,minmax(0,1fr))}.filters-grid,.catalog-filters,.kpi-grid,.chart-grid,.catalog-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.wide-card{grid-column:span 2}.manual-grid{grid-template-columns:1fr 1fr}}@media (max-width:680px){.main{padding:14px}.topbar,.section-head,.dialog-head{align-items:flex-start;flex-direction:column}.nav-menu,.filters-grid,.catalog-filters,.kpi-grid,.chart-grid,.detail-grid,.catalog-meta,.status-dialog-info,.kv-grid,.manual-grid{grid-template-columns:1fr}.wide,.wide-card{grid-column:auto}.filter-actions{justify-content:stretch}.btn{width:100%}}
 .topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.org-switcher{min-width:260px;display:grid;gap:5px}.org-switcher span{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text)}.org-switcher select{min-height:36px;background:#fff}.permission-hidden{display:none!important}.btn[disabled],.nav-item[disabled],.tab[disabled]{cursor:not-allowed;opacity:.48;transform:none}.permission-note{padding:10px 12px;border:1px solid rgba(183,121,31,.28);border-left:5px solid var(--warning);border-radius:8px;background:#fff8ed;color:#6b5300;font-weight:700}@media (max-width:680px){.topbar-actions,.org-switcher{width:100%}}
.security-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:16px;align-items:start}.security-form,.security-policy{padding:18px}.security-form h2,.security-policy h2{margin:0 0 12px}.security-form form{display:grid;gap:10px;margin-bottom:20px}.security-form form:last-child{margin-bottom:0}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:8px;margin:14px 0}.check-row{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:13px;color:var(--black)}.check-row input{width:auto;min-height:auto;margin-top:2px}.check-row span{display:block;color:var(--text);font-size:12px}.security-policy .catalog-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px}@media (max-width:900px){.security-layout,.permission-grid,.security-policy .catalog-form{grid-template-columns:1fr}}
.brand-mark{display:flex;align-items:center;justify-content:center;min-height:104px;padding:18px;border-radius:8px;background:var(--yellow,#f2d200);color:var(--black,#1e1e1e);font-weight:800;text-align:center;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.brand-mark img{max-width:100%;max-height:92px;object-fit:contain}
.brand-mark strong{font-size:18px;line-height:1.15}
.user-context{margin-top:8px;color:#4b5563;font-size:13px;font-weight:600}
.permission-hidden{display:none!important}

#operationalChrome:empty{display:none}
.drillbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;padding:16px 18px;background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}
.breadcrumbs{font-weight:800;color:var(--black)}
.filter-chips{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:8px}
.filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:30px;border:1px solid rgba(242,210,0,.62);border-radius:999px;background:#fff8c5;color:#4d4000;padding:5px 10px;font-size:12px;font-weight:700}
.filter-chip b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:rgba(30,30,30,.12);font-size:11px}

.tenant-tree{min-height:auto;margin-bottom:18px;padding:18px;border-left:5px solid var(--yellow)}
.tenant-tree-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.tenant-tree-head h2{margin:0;font-size:22px;letter-spacing:0}
.tenant-tree-head p{margin:6px 0 0;color:var(--text)}
.decision-flow{display:grid;grid-template-columns:minmax(220px,280px) 36px minmax(0,1fr) minmax(240px,320px);gap:14px;align-items:stretch}
.org-node,.exception-node{position:relative;display:grid;align-content:start;gap:8px;min-height:142px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff;text-align:left;color:var(--black);box-shadow:0 10px 26px rgba(30,30,30,.06)}
button.org-node{cursor:pointer}
.org-node:hover{border-color:var(--yellow);box-shadow:0 14px 32px rgba(30,30,30,.1)}
.org-node span,.exception-node span{color:#7a6a00;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.org-node strong,.exception-node strong{font-size:18px;line-height:1.2}
.org-node em,.exception-node em{color:var(--text);font-style:normal;font-size:13px}
.org-node b{font-size:20px}
.org-node small{color:var(--success);font-weight:800}
.org-node.parent{border-top:4px solid var(--black);background:linear-gradient(180deg,#fff,#fffdf0)}
.org-node.child{border-top:4px solid var(--success)}
.muted-node{border-style:dashed;box-shadow:none}
.tree-connector{align-self:center;height:3px;background:linear-gradient(90deg,var(--black),var(--yellow));border-radius:999px}
.tree-connector:after{content:"";display:block;width:12px;height:12px;margin:-4px 0 0 auto;border-top:3px solid var(--yellow);border-right:3px solid var(--yellow);transform:rotate(45deg)}
.child-grid{display:grid;grid-template-columns:repeat(2,minmax(190px,1fr));gap:12px}
.exception-node{border-left:5px solid var(--error);background:#fff7f6}
.exception-node .btn{justify-self:start;margin-top:auto}

@media (max-width:1180px){.decision-flow{grid-template-columns:1fr}.tree-connector{height:28px;width:3px;justify-self:center;background:linear-gradient(180deg,var(--black),var(--yellow))}.tree-connector:after{margin:18px 0 0 -4px;transform:rotate(135deg)}.child-grid{grid-template-columns:1fr 1fr}}
@media (max-width:680px){.drillbar,.tenant-tree-head{flex-direction:column}.child-grid{grid-template-columns:1fr}.tenant-tree{padding:14px}}

/* Visual Admin inspired shell, adapted to BLADE/Casa Diaz colors. */
body{font-family:"Open Sans",Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;background:#efefef}
.app-shell{grid-template-columns:300px minmax(0,1fr)}
.sidebar{background:#1f2124;border-right:1px solid #18191b;padding:25px 0}
.brand-mark{margin:0 30px;min-height:92px;border-radius:0;background:var(--yellow);box-shadow:none}
.brand-mark img{max-height:76px}
.nav-menu{gap:0;margin-top:36px}
.nav-item{border-left:8px solid transparent;border-radius:0;padding:22px 30px;color:#e9e9ea;font-size:12px;font-weight:300;letter-spacing:.04em;text-transform:uppercase}
.nav-item:hover,.nav-item.active{background:#18191b;border-left-color:var(--yellow);color:#fff;transform:none}
.main{padding:0;background:#efefef}
.visual-topbar{min-height:74px;margin:0;padding:0 32px;background:#fff;border:0;border-radius:0;box-shadow:0 0 2px 2px rgba(161,159,159,.18)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.top-nav{display:flex;align-items:center;min-height:74px}
.top-nav-item{min-height:22px;padding:0 42px;background:transparent;border:0;border-left:2px solid #c5c5c5;color:#7f7f7f;font:inherit;font-size:12px;font-weight:400;text-transform:uppercase;cursor:pointer}
.top-nav-item:last-child{border-right:2px solid #c5c5c5}
.top-nav-item:hover,.top-nav-item.active{color:#7a6a00}
.topbar-actions{gap:14px}
.user-context{margin:0;color:#7f7f7f;font-size:12px;font-weight:400}
.org-switcher span{font-size:10px;font-weight:600;color:#7f7f7f}
.org-switcher select{min-height:34px;border-radius:0}
.status-pill{border-radius:0;background:#fff8c5;color:#4d4000;text-transform:uppercase}
.content-section{padding:40px 50px}
.filters-panel,.drillbar,.panel,.table-wrap,.empty-state,.catalog-filters,.dialog-card,.catalog-card,.tenant-tree{border:1px solid #e4e4e4;border-radius:0;box-shadow:0 0 1px 1px rgba(161,159,159,.1)}
.panel,.tenant-tree{padding:30px}
.panel h2,.section-head h2{font-size:1.45em;font-weight:300;text-transform:uppercase;color:#333}
.section-head{margin:0 0 20px}
.eyebrow{color:#7a6a00;font-size:11px;font-weight:700}
.btn{border-radius:0;font-size:12px;font-weight:700;text-transform:uppercase}
input,select,textarea{border-radius:0}
.kpi-grid{gap:20px}
.kpi-card{border-radius:0;box-shadow:0 0 1px 1px rgba(161,159,159,.1)}
.kpi-card span{font-size:11px;font-weight:700}
.kpi-card strong{font-size:26px;font-weight:700}
.tenant-tree-head h2{font-size:1.6em;font-weight:300;text-transform:uppercase}
.org-node,.exception-node{border-radius:0;box-shadow:0 0 1px 1px rgba(161,159,159,.1)}
.tabs .tab{border-radius:0}
@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto}.top-nav{flex-wrap:wrap}.content-section{padding:24px}.visual-topbar{padding:16px 20px}.top-nav-item{padding:10px 18px}}
@media (max-width:680px){.content-section{padding:18px}.visual-topbar{align-items:stretch}.top-nav{width:100%}.top-nav-item{flex:1 1 50%;border:1px solid #e4e4e4}.topbar-actions{width:100%}}

/* Enterprise shell refinements */
.sidebar{padding-top:0}
.brand-mark{width:100%;min-height:146px;margin:0;padding:22px 28px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-mark img{width:100%;max-height:112px}
.brand-mark strong{font-size:24px}
.visual-topbar{justify-content:flex-end}
.visual-topbar .topbar-actions{width:100%;justify-content:flex-end}
#topLogoutBtn{min-width:132px}
.about-health{display:inline-flex;margin-top:18px}
.tenant-summary{display:grid;gap:4px;min-width:220px;padding:14px 18px;border:1px solid #e4e4e4;background:#fff}
.tenant-summary strong{font-size:22px;color:#111827}
.tenant-summary span{color:#555;font-size:12px;font-weight:700;text-transform:uppercase}
.tenant-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.company-summary-card{min-height:154px}
.company-summary-card small{line-height:1.45}
.role-admin-panel{min-height:auto}
.role-admin-head{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:22px;align-items:end;margin-bottom:18px}
.role-admin-head h2{margin:3px 0 4px}
.role-admin-head p{margin:0;color:var(--text)}
.role-admin-head label{font-size:12px;text-transform:uppercase}
@media (max-width:900px){.role-admin-head{grid-template-columns:1fr}.visual-topbar .topbar-actions{justify-content:flex-start}.tenant-summary{width:100%}}

/* Tenant theming, secure catalogs and Visual Admin navigation polish */
:root{--brand-primary:var(--yellow);--brand-secondary:var(--black);--brand-bg:var(--bg);--brand-surface:var(--white);--brand-on-primary:var(--black)}
.brand-mark{background:var(--brand-primary);overflow:hidden}
.brand-mark img{width:100%;max-height:112px;object-fit:contain;border-radius:0}
.brand-mark strong{font-size:24px;line-height:1.1;overflow-wrap:anywhere}
.logo-circle{display:inline-grid;place-items:center;overflow:hidden;border:2px solid var(--brand-primary);border-radius:50%;background:var(--brand-primary);color:var(--brand-on-primary);font-weight:800;text-align:center;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.logo-circle img{width:100%;height:100%;object-fit:cover}
.logo-circle.sm{width:32px;height:32px;font-size:11px}.logo-circle.md{width:48px;height:48px;font-size:14px}.logo-circle.lg{width:72px;height:72px;font-size:20px}
.logo-circle{border-color:var(--company-secondary,var(--brand-secondary));background:var(--company-primary,var(--brand-primary))}
.nav-group{border-left:0}
.nav-group summary{display:flex;align-items:center;gap:10px;padding:18px 30px;border-left:8px solid transparent;color:#bdbfc3;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;list-style:none}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group[open] summary{color:#fff}
.nav-group .nav-item{padding-left:58px;font-size:11px}
.nav-icon{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:8px;color:var(--brand-primary)}
.nav-item.active{border-left-color:var(--brand-primary)}
.btn.primary{background:var(--brand-button,var(--brand-primary));border-color:var(--brand-button,var(--brand-primary));color:var(--brand-on-primary)}
.tab.active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-on-primary)}
.kpi-card{border-top:4px solid var(--brand-primary);border-left:1px solid #e4e4e4}
.kpi-delta{display:block;margin-top:8px;font-size:11px;font-weight:700;text-transform:none}.kpi-delta.up{color:var(--success)}.kpi-delta.down{color:var(--error)}.kpi-delta.neutral{color:var(--text)}
.wide-panel{grid-column:span 2}.compact-empty{min-height:auto;margin-bottom:18px;padding:24px}
.company-summary-card{grid-template-columns:58px 1fr;column-gap:12px;align-items:center;border-top-color:var(--brand-primary)}
.company-summary-card .logo-circle{grid-row:1 / span 5}
.company-summary-card.ok{border-top-color:var(--success)}.company-summary-card.warning{border-top-color:var(--warning)}.company-summary-card.critical{border-top-color:var(--error)}
.business-catalog-card{grid-column:span 2;border-left:5px solid var(--brand-primary)}
.technical-mode{border-left:5px solid var(--warning);background:#fff8ed}
.brand-preview{display:flex;align-items:center;gap:16px;margin:14px 0 22px;padding:16px;border:1px solid #e4e4e4;border-top:4px solid var(--company-primary,var(--brand-primary));background:#fff}
.brand-preview span{display:block;color:#7f7f7f;font-size:11px;font-weight:800;text-transform:uppercase}
.brand-preview strong{display:block;margin-top:4px;color:var(--company-secondary,var(--brand-secondary));font-size:20px}
.brand-preview p{margin:4px 0 0;color:#555}
.catalog-card strong,.kpi-card strong{color:#111827}
.filters-grid{grid-template-columns:repeat(4,minmax(160px,1fr))}
@media (max-width:900px){.company-summary-card{grid-template-columns:1fr}.company-summary-card .logo-circle{grid-row:auto}.filters-grid{grid-template-columns:1fr 1fr}.wide-panel{grid-column:auto}}
@media (max-width:680px){.filters-grid{grid-template-columns:1fr}.nav-group .nav-item{padding-left:30px}}

/* Active company selector and collapsible filters */
.org-switcher{display:grid;grid-template-columns:auto minmax(220px,360px) minmax(260px,1fr);align-items:center;gap:12px;min-width:min(820px,100%)}
.org-switcher span{white-space:nowrap}
.org-switcher select{min-width:0}
.org-switcher strong{justify-self:end;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111827;font-size:13px;font-weight:700;text-align:right}
.filters-panel{overflow:hidden;transition:padding .18s ease,box-shadow .18s ease}
.filters-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.filters-head strong{display:block;color:#111827;font-size:14px;text-transform:uppercase}
.filters-head span{display:block;margin-top:3px;color:#7f7f7f;font-size:12px;font-weight:700}
.filters-body{display:grid;grid-template-rows:1fr;gap:14px;margin-top:16px;opacity:1;transition:grid-template-rows .18s ease,opacity .16s ease,margin .18s ease}
.filters-panel.is-collapsed .filters-body{grid-template-rows:0fr;margin-top:0;opacity:0;pointer-events:none}
.filters-panel.is-collapsed .filters-body>*{overflow:hidden}
.filter-toggle{min-width:132px}
@media (max-width:980px){.org-switcher{grid-template-columns:auto minmax(180px,1fr);min-width:0}.org-switcher strong{grid-column:1/-1;justify-self:start;text-align:left}.visual-topbar .topbar-actions{align-items:stretch}}
@media (max-width:680px){.org-switcher{grid-template-columns:1fr;width:100%}.org-switcher strong{white-space:normal}.filters-head{align-items:stretch;flex-direction:column}.filter-toggle{width:100%}}


/* Hotfix: aislamiento estricto de secciones y administración por contexto */
.content-section:not(.active),
.content-section[hidden] {
  display: none !important;
}
.permission-group-hidden,
.context-group-hidden,
.group-admin-context-hidden {
  display: none !important;
}
