#gisJuridicoPanel {
    --gj-accent: #f97316;
    position: fixed;
    inset: 0 auto 0 0;
    width: 430px;
    max-width: 96vw;
    z-index: 6450;
    display: flex;
    flex-direction: column;
    color: #e2e8f0;
    background:
        radial-gradient(circle at 10% 0, rgba(249, 115, 22, .18), transparent 34%),
        linear-gradient(180deg, rgba(15, 23, 42, .99), rgba(2, 6, 23, .99));
    border-right: 1px solid rgba(249, 115, 22, .32);
    box-shadow: 24px 0 70px rgba(0, 0, 0, .58);
    transform: translateX(-105%);
    transition: transform .35s cubic-bezier(.16, 1, .3, 1);
    font-family: Inter, system-ui, sans-serif;
}
#gisJuridicoPanel.open { transform: translateX(0); }
.gj-head { padding: 15px 16px 13px; border-bottom: 1px solid rgba(255,255,255,.08); }
.gj-title-row { display:flex; gap:11px; align-items:center; }
.gj-logo { width:40px; height:40px; display:grid; place-items:center; border-radius:13px; color:#fdba74; background:rgba(249,115,22,.14); border:1px solid rgba(249,115,22,.3); }
.gj-title { min-width:0; flex:1; }
.gj-title h3 { margin:0; color:white; font-size:14px; font-weight:900; }
.gj-title p { margin:3px 0 0; color:#94a3b8; font-size:9px; text-transform:uppercase; letter-spacing:.13em; font-weight:800; }
.gj-close { width:31px; height:31px; border:1px solid rgba(255,255,255,.08); border-radius:10px; color:#94a3b8; background:rgba(255,255,255,.05); cursor:pointer; }
.gj-search { display:flex; gap:8px; margin-top:13px; }
.gj-search-box { flex:1; position:relative; }
.gj-search-box i { position:absolute; left:12px; top:11px; color:#fb923c; font-size:11px; }
.gj-search input { width:100%; box-sizing:border-box; padding:9px 10px 9px 32px; border-radius:11px; border:1px solid rgba(148,163,184,.2); color:white; background:rgba(2,6,23,.58); outline:none; font-size:11px; }
.gj-search input:focus { border-color:rgba(249,115,22,.65); box-shadow:0 0 0 3px rgba(249,115,22,.1); }
.gj-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; padding:11px 14px; border-bottom:1px solid rgba(255,255,255,.06); }
.gj-stat { padding:8px 7px; border-radius:10px; background:rgba(15,23,42,.72); border:1px solid rgba(148,163,184,.12); }
.gj-stat b { display:block; color:#fdba74; font-size:14px; }
.gj-stat span { display:block; color:#64748b; font-size:7px; text-transform:uppercase; font-weight:900; letter-spacing:.08em; margin-top:2px; }
.gj-tabs { display:flex; gap:5px; padding:10px 14px 8px; overflow-x:auto; }
.gj-tab { border:1px solid rgba(148,163,184,.13); background:rgba(15,23,42,.6); color:#94a3b8; border-radius:999px; padding:7px 10px; font-size:9px; font-weight:900; cursor:pointer; white-space:nowrap; }
.gj-tab.active { color:white; border-color:rgba(249,115,22,.55); background:rgba(249,115,22,.17); }
.gj-toolbar { display:flex; gap:7px; padding:0 14px 10px; }
.gj-layer-btn { flex:1; border:1px solid rgba(148,163,184,.13); background:rgba(15,23,42,.6); color:#94a3b8; border-radius:10px; padding:8px; font-size:8px; font-weight:900; cursor:pointer; }
.gj-layer-btn.active { color:#d1fae5; border-color:rgba(52,211,153,.45); background:rgba(16,185,129,.13); }
.gj-body { flex:1; min-height:0; overflow-y:auto; padding:2px 14px 18px; scrollbar-width:thin; scrollbar-color:#475569 transparent; }
.gj-notice { margin:5px 0 10px; padding:9px 10px; border-left:3px solid #f59e0b; border-radius:9px; color:#cbd5e1; background:rgba(245,158,11,.08); font-size:9px; line-height:1.45; }
.gj-card { margin-bottom:9px; padding:11px; border-radius:13px; border:1px solid rgba(148,163,184,.14); background:linear-gradient(135deg,rgba(30,41,59,.72),rgba(15,23,42,.55)); transition:.16s; }
.gj-card:hover { border-color:rgba(249,115,22,.35); transform:translateY(-1px); }
.gj-card-head { display:flex; gap:9px; align-items:flex-start; }
.gj-kind { width:31px; height:31px; flex:none; display:grid; place-items:center; border-radius:10px; color:var(--kind,#fdba74); background:color-mix(in srgb,var(--kind,#fdba74) 14%,transparent); }
.gj-card-main { min-width:0; flex:1; }
.gj-card h4 { margin:0; color:#f8fafc; font-size:11px; line-height:1.3; }
.gj-meta { color:#64748b; font-size:8px; margin-top:4px; line-height:1.35; }
.gj-badges { display:flex; flex-wrap:wrap; gap:4px; margin-top:7px; }
.gj-badge { padding:3px 6px; border-radius:999px; font-size:7px; font-weight:900; color:#cbd5e1; background:rgba(148,163,184,.1); border:1px solid rgba(148,163,184,.13); }
.gj-badge.ok { color:#86efac; border-color:rgba(34,197,94,.25); background:rgba(34,197,94,.08); }
.gj-actions { display:flex; gap:6px; margin-top:9px; }
.gj-action { border:1px solid rgba(148,163,184,.15); border-radius:8px; padding:6px 8px; color:#cbd5e1; background:rgba(2,6,23,.42); font-size:8px; font-weight:900; cursor:pointer; }
.gj-action.primary { color:#fed7aa; border-color:rgba(249,115,22,.3); background:rgba(249,115,22,.1); }
.gj-detail { margin-top:9px; padding-top:9px; border-top:1px solid rgba(255,255,255,.07); font-size:9px; color:#cbd5e1; line-height:1.5; }
.gj-detail h5 { color:#fb923c; font-size:8px; text-transform:uppercase; letter-spacing:.1em; margin:8px 0 4px; }
.gj-empty { padding:28px 12px; text-align:center; color:#64748b; font-size:10px; }
.gj-loading { display:flex; justify-content:center; gap:9px; padding:28px; color:#94a3b8; font-size:10px; }
.gj-spinner { width:16px; height:16px; border:2px solid #f97316; border-top-color:transparent; border-radius:50%; animation:gjspin .7s linear infinite; }
@keyframes gjspin { to { transform:rotate(360deg); } }
.gj-caps-marker { background:transparent; border:0; }
.gj-caps-dot { width:28px; height:28px; border-radius:50% 50% 50% 8px; transform:rotate(-45deg); display:grid; place-items:center; color:white; background:#10b981; border:2px solid white; box-shadow:0 4px 16px rgba(0,0,0,.4); }
.gj-caps-dot i { transform:rotate(45deg); font-size:10px; }
@media (max-width:520px) {
    #gisJuridicoPanel { width:96vw; }
    .gj-stats { grid-template-columns:repeat(2,1fr); }
}
