/* V144 FIX33.12 — polimento das páginas legislativas públicas */
.sapl-update-badge{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 20px;padding:13px 15px;border:1px solid #cfe0f4;border-radius:16px;background:#f7fbff;color:#173b68}
.sapl-update-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e5f1ff;color:#0755aa;font-size:22px;font-weight:900;flex:0 0 auto}
.sapl-update-copy{display:flex;flex-direction:column;min-width:220px;flex:1}
.sapl-update-copy strong{font-size:.93rem;color:#073f86}
.sapl-update-copy small{font-size:.84rem;color:#526983;margin-top:2px}
.sapl-update-schedule{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid #d8e6f5;color:#415d7c;font-size:.78rem;font-weight:800}
.sapl-page-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
.sapl-page-intro h3{margin:0 0 7px}
.sapl-page-intro p{margin:0;max-width:850px;color:#536982}
.sapl-page-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.sapl-session-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.sapl-summary-card{display:flex;flex-direction:column;gap:3px;padding:14px 15px;border:1px solid #dce7f4;border-radius:16px;background:#fff}
.sapl-summary-card small{font-size:.74rem;text-transform:uppercase;letter-spacing:.045em;color:#667b95;font-weight:900}
.sapl-summary-card strong{font-size:1rem;color:#073f86}
.sapl-section-nav{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 22px;padding:12px;border:1px solid #dce7f4;border-radius:16px;background:#f8fbff}
.sapl-section-nav a{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;border:1px solid #ccdef2;border-radius:999px;background:#fff;color:#064a99;text-decoration:none;font-size:.82rem;font-weight:800}
.sapl-section-nav a:hover{border-color:#8fb5df;box-shadow:0 8px 16px rgba(8,43,94,.08)}
.sapl-session-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid #dbe7f4;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(8,43,94,.045)}
.sapl-session-card + .sapl-session-card{margin-top:13px}
.sapl-session-card h4{margin:0 0 7px;color:#073f86;font-size:1.06rem}
.sapl-session-card p{margin:0;color:#586e88}
.sapl-session-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.sapl-session-meta span{display:inline-flex;align-items:center;min-height:29px;padding:5px 9px;border-radius:999px;border:1px solid #d7e4f2;background:#f8fbff;color:#48627e;font-size:.78rem;font-weight:750}
.sapl-metric-grid{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.sapl-metric{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:10px;background:#eef6ff;color:#174d86;font-size:.78rem;font-weight:800}
.sapl-metric strong{font-size:.88rem;color:#073f86}
.sapl-metric.is-empty{background:#f4f5f7;color:#6a7280}
.sapl-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.sapl-section-block{scroll-margin-top:24px}
.sapl-section-block .session-block-header{align-items:flex-start}
.sapl-section-description{max-width:780px}
.sapl-empty-guidance{padding:16px;border:1px dashed #cbd9e9;border-radius:14px;background:#fafcff;color:#596f88}
.sapl-empty-guidance strong{display:block;color:#264f7c;margin-bottom:4px}
.sapl-document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.sapl-document-card{display:flex;flex-direction:column;gap:10px;padding:15px;border:1px solid #dbe7f4;border-radius:16px;background:#fff}
.sapl-document-card strong{color:#073f86}
.sapl-document-card span{color:#60748c;font-size:.82rem}
.sapl-document-card .portal-btn{align-self:flex-start}
.sapl-document-disabled{opacity:.65;cursor:not-allowed}
.sapl-agenda-session{border:1px solid #d9e6f3;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(8,43,94,.045)}
.sapl-agenda-session + .sapl-agenda-session{margin-top:18px}
.sapl-agenda-session > header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;background:#f7fbff;border-bottom:1px solid #dce7f4}
.sapl-agenda-session > header h4{margin:0 0 5px;color:#073f86}
.sapl-agenda-session > header p{margin:0;color:#5b7088}
.sapl-agenda-body{padding:18px}
.sapl-agenda-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sapl-agenda-column{border:1px solid #e0e9f3;border-radius:16px;padding:14px;background:#fcfdff}
.sapl-agenda-column > header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.sapl-agenda-column h5{margin:0;color:#164b83;font-size:1rem}
.sapl-agenda-column header span{font-size:.76rem;font-weight:850;color:#4d6681;background:#fff;border:1px solid #d8e4f1;border-radius:999px;padding:5px 8px}
.sapl-document-modal[hidden]{display:none!important}
.sapl-document-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}
.sapl-document-backdrop{position:absolute;inset:0;background:rgba(1,18,42,.76);backdrop-filter:blur(4px)}
.sapl-document-dialog{position:relative;display:flex;flex-direction:column;width:min(1100px,96vw);height:min(820px,92vh);overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.36);outline:none}
.sapl-document-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px;border-bottom:1px solid #dce7f4;background:#f8fbff}
.sapl-document-header small{display:block;color:#58708b;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:900}
.sapl-document-header h2{margin:3px 0 3px;color:#073f86;font-size:1.18rem}
.sapl-document-header p{margin:0;color:#60758d;font-size:.86rem}
.sapl-document-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ccdaea;border-radius:12px;background:#fff;color:#173e6b;font-size:27px;line-height:1;cursor:pointer}
.sapl-document-source{padding:9px 20px;border-bottom:1px solid #e3eaf2;color:#5b718a;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sapl-document-preview{position:relative;flex:1;min-height:0;background:#eef2f6}
.sapl-document-preview iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.sapl-document-preview-message{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:30px;color:#48617c}
.sapl-document-preview-message strong{color:#073f86;font-size:1.05rem}
.sapl-document-preview-message p{margin:6px 0 0}
.sapl-document-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;padding:14px 18px;border-top:1px solid #dce7f4;background:#fff}
body.sapl-modal-open{overflow:hidden}
body.a11y-contrast .sapl-update-badge,body.a11y-contrast .sapl-summary-card,body.a11y-contrast .sapl-session-card,body.a11y-contrast .sapl-agenda-session,body.a11y-contrast .sapl-agenda-column,body.a11y-contrast .sapl-document-dialog{background:#000!important;color:#fff!important;border-color:#fff!important}
body.a11y-contrast .sapl-update-copy strong,body.a11y-contrast .sapl-session-card h4,body.a11y-contrast .sapl-summary-card strong,body.a11y-contrast .sapl-document-card strong,body.a11y-contrast .sapl-document-header h2{color:#fff!important}
body.a11y-contrast .sapl-document-header,body.a11y-contrast .sapl-document-actions,body.a11y-contrast .sapl-document-source{background:#000!important;border-color:#fff!important;color:#fff!important}
@media(max-width:900px){.sapl-session-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.sapl-agenda-columns{grid-template-columns:1fr}.sapl-page-intro{flex-direction:column}.sapl-page-links{justify-content:flex-start}}
@media(max-width:680px){.sapl-session-card{grid-template-columns:1fr}.sapl-card-actions{justify-content:flex-start}.sapl-session-summary{grid-template-columns:1fr}.sapl-update-schedule{width:100%;justify-content:center}.sapl-document-modal{padding:8px}.sapl-document-dialog{width:100%;height:96vh;border-radius:15px}.sapl-document-actions .portal-btn{flex:1}.sapl-agenda-session > header{flex-direction:column}}
.sapl-vote-details{margin-top:12px;border:1px solid #dce7f4;border-radius:14px;background:#f8fbff;padding:10px 12px}
.sapl-vote-details summary{cursor:pointer;color:#164b83;font-weight:850}
.sapl-vote-details[open] summary{margin-bottom:12px}
