.sg-page{padding:24px;max-width:1440px;margin:0 auto;min-width:0}
.sg-page h1{font-size:1.5rem;margin:0 0 8px}.sg-page h2{font-size:1.1rem;margin:0 0 12px}
.sg-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin:16px 0;min-width:0}
.sg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.sg-grid .sg-card{margin:0}.sg-kpi strong{display:block;font-size:1.8rem;margin:10px 0}
.sg-filtros{display:flex;align-items:end;flex-wrap:wrap;gap:16px}.sg-filtros label{display:flex;flex-direction:column;gap:6px;flex:1 1 200px}
.sg-page button,.sg-page input,.sg-page select{min-height:44px}.sg-page button{white-space:normal}
.sg-page p,.sg-page li{overflow-wrap:anywhere;line-height:1.5}.sg-alcance{max-width:100ch}
.sg-tabla-wrap{overflow-x:auto;max-width:100%}.sg-page table{width:100%;border-collapse:collapse;font-size:.95rem}
.sg-page th,.sg-page td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border)}
.sg-page th button{font:inherit;color:inherit;background:transparent;border:0;text-align:left;cursor:pointer}
.sg-page .pagination{margin-top:12px}.sg-page [hidden]{display:none!important}
.sg-error{color:var(--danger)}.sg-desgloses{margin:16px 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
[data-theme="dark"] .sg-card{background:var(--surface);border-color:var(--border)}
@media(max-width:600px){.sg-page{padding:16px}.sg-card{padding:16px}.sg-filtros{flex-direction:column;align-items:stretch}.sg-filtros label{flex:initial}}
