/* Shared functional presentation for blocks, list cards and classic-theme singles. */
.citizink2-proposal-single { box-sizing: border-box; width: 100%; max-width: var(--wp--style--global--content-size, 70rem); margin: 2rem auto; padding: 1rem clamp(1rem, 3vw, 2rem); overflow-wrap: anywhere; }
.citizink2-proposal-single img { max-width: 100%; height: auto; }
.wp-block-query.citizink2-proposal-query { overflow-wrap: anywhere; }
.wp-block-query.citizink2-proposal-query .wp-block-post { box-sizing: border-box; min-width: 0; padding: 0; border: 0; }
.wp-block-query.citizink2-proposal-query .wp-block-post-featured-image img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.wp-block-citizink2-proposal-status { display: grid; gap: .5em; margin-block: 1.5em; }
.wp-block-citizink2-proposal-status > div { display: flex; flex-wrap: wrap; gap: .3em 1em; }
.wp-block-citizink2-proposal-status dt { font-weight: 600; }
.wp-block-citizink2-proposal-status dd { margin: 0; }
.wp-block-citizink2-proposal-details { margin-block: 1.25em; }
.wp-block-citizink2-proposal-public-report { border-inline-start: .2em solid currentColor; padding: 1em 1.25em; margin-block: 1.5em; }
.wp-block-citizink2-proposal-public-report > :first-child { margin-block-start: 0; }
.wp-block-citizink2-proposal-public-report > :last-child { margin-block-end: 0; }
:is(.citizink2-proposal-query,.citizink2-proposal-single) a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
@media(max-width:600px) {
 .wp-block-query.citizink2-proposal-query .wp-block-post-template.is-layout-grid { grid-template-columns: 1fr; }
}
.wp-block-citizink2-proposal-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 1em; margin-block: 1.5em; }
.wp-block-citizink2-proposal-filters > div { display: flex; flex: 1 1 10em; flex-direction: column; gap: .4em; min-width: 0; }
.wp-block-citizink2-proposal-filters select { width: 100%; max-width: 100%; min-width: 0; padding: .65em; font: inherit; height: auto; color: inherit; background: transparent; border: 1px solid currentColor; }
.wp-block-citizink2-proposal-filters .wp-element-button,
.wp-block-citizink2-proposal-filters .wp-element-button:hover { color: inherit; background: transparent; border: 1px solid currentColor; padding: .65em 1em; font: inherit; cursor: pointer; }
.wp-block-citizink2-proposal-filters :is(select,button,a):focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }

/* Query cards use the theme primary role resolved by WordPress presets. */
.cz-proposal-card { display: flex; flex-direction: column; height: 100%; overflow: hidden; background: var(--cz-card-primary); color: var(--cz-card-on-primary); border-radius: 0; }
.cz-proposal-card .cz-card-state { padding: .65rem 1rem; font-size: .85rem; font-weight: 700; background: #88ccee; color: #fff; text-align: right; }
.cz-proposal-card .cz-card-state:is([data-state="viable"],[data-state="admitida"],[data-state="priorizada"],[data-state="asumida"]) { background: #88cc55; }
.cz-proposal-card .cz-card-state:is([data-state="no-viable"],[data-state="no-admitida"],[data-state="no-priorizada"]) { background: #ee8888; }
.cz-proposal-card .cz-card-cover { position: relative; display: flex; align-items: end; min-height: 11rem; aspect-ratio: 16/10; background: #e5e7eb; color: #fff; text-decoration: none; isolation: isolate; }
.cz-card-cover img { position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; z-index: -2; }
.cz-card-cover::before { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent 10%, #000b); z-index: -1; }
.cz-proposal-card .cz-card-cover h3 { margin: 0; padding: 1rem; color: inherit; font: inherit; font-weight: 700; font-size: clamp(1.61rem,2.24vw,2.1rem); line-height: 1.1; }
.cz-proposal-card .cz-card-body { padding: 1rem; flex: 1; }
.cz-card-body time { font-size: .85em; }
.cz-card-body p { margin: .8em 0 0; }
.cz-card-number,.cz-card-zone { font-size: .875em; }
.cz-proposal-card .cz-card-share { display: flex; justify-content: flex-end; gap: .25rem; padding: .5rem .75rem; margin: 0; background: var(--cz-card-primary); color: var(--cz-card-on-primary); border-top: 1px solid currentColor; }
.cz-proposal-card .cz-card-share a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; color: inherit; border-radius: 0; }
.cz-card-share svg { width: 23px; height: 23px; }
.cz-proposal-card a:hover { color: inherit; }
.cz-card-share a:hover { background: #ffffff26; }
.cz-proposal-card a:focus-visible { outline: 2px solid currentColor; outline-offset: -4px; }
.wp-block-query.citizink2-proposal-query .wp-block-post-template { align-items: stretch; gap: 1.5rem; }
@media (min-width:601px) and (max-width:900px) { .wp-block-query.citizink2-proposal-query .wp-block-post-template.is-layout-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }

.cz-proposal-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; list-style: none; padding: 0; margin: 0; }
.cz-proposal-card-grid > li { padding: 0; margin: 0; min-width: 0; border: 0; }
@media (max-width:900px) { .cz-proposal-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .cz-proposal-card-grid { grid-template-columns: 1fr; } }
