body.citizen-content-zoom-active .site-rich-content {
    zoom: var(--citizen-content-zoom, 1);
}

.citizen-action-bar {
    position: sticky;
    z-index: var(--z-sticky-bar);
    top: 0;
    display: flex;
    align-items: center;
    gap: 0.42rem;
    width: 100%;
    min-height: 3.75rem;
    margin: 0 0 1.35rem;
    padding: 0.55rem 0.72rem;
    border: 1px solid color-mix(in srgb, var(--theme-primary) 20%, var(--site-border-strong));
    border-radius: var(--site-card-radius);
    background: color-mix(in srgb, var(--site-surface) 90%, var(--theme-primary) 10%);
    box-shadow: 0 0.55rem 1.4rem rgb(15 23 42 / 0.11);
    transition: border-color 140ms ease, border-radius 140ms ease, background 140ms ease, box-shadow 140ms ease;
}

.citizen-action-bar.is-stuck {
    border-color: color-mix(in srgb, var(--theme-primary) 30%, var(--site-border-strong));
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background: color-mix(in srgb, var(--site-surface) 86%, var(--theme-primary) 14%);
    box-shadow: 0 0.8rem 1.8rem rgb(15 23 42 / 0.18), inset 0 -2px 0 color-mix(in srgb, var(--theme-primary) 70%, transparent);
}

.citizen-action-bar__label {
    padding: 0 0.65rem 0 0.35rem;
    color: var(--theme-primary);
    font-size: 0.79rem;
    font-weight: 850;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.citizen-action-bar__group {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
}

.citizen-action-bar__separator {
    width: 1px;
    height: 1.75rem;
    margin-inline: 0.25rem;
    background: color-mix(in srgb, var(--theme-primary) 22%, var(--site-border-strong));
}

.citizen-action-bar__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.44rem;
    min-height: 2.5rem;
    padding: 0.44rem 0.72rem;
    border: 1px solid color-mix(in srgb, var(--theme-primary) 16%, var(--site-border));
    border-radius: var(--site-button-radius);
    background: color-mix(in srgb, var(--site-surface) 96%, var(--theme-primary) 4%);
    color: var(--site-text);
    cursor: pointer;
    font: inherit;
    font-size: 0.86rem;
    font-weight: 760;
    line-height: 1;
    box-shadow: 0 1px 2px rgb(15 23 42 / 0.04);
    transition: background 120ms ease, border-color 120ms ease, box-shadow 120ms ease, color 120ms ease, transform 120ms ease;
}

.citizen-action-bar__button:hover,
.citizen-action-bar__button:focus-visible {
    border-color: color-mix(in srgb, var(--theme-primary) 42%, var(--site-border));
    background: color-mix(in srgb, var(--theme-primary) 10%, var(--site-surface));
    color: var(--theme-primary);
    box-shadow: 0 0.2rem 0.55rem rgb(15 23 42 / 0.08);
}

.citizen-action-bar__button:active {
    transform: translateY(1px);
}

.citizen-action-bar__button:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--theme-primary) 40%, transparent);
    outline-offset: 2px;
}

.citizen-action-bar__button svg {
    width: 1.12rem;
    height: 1.12rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.citizen-action-bar__button--facebook svg {
    fill: currentColor;
    stroke: none;
}

.citizen-action-bar__button[hidden],
.citizen-action-bar__button [hidden] {
    display: none !important;
}

.citizen-action-bar__button--speech[data-speech-state="speaking"],
.citizen-action-bar__button--speech[data-speech-state="paused"] {
    border-color: color-mix(in srgb, var(--theme-primary) 42%, var(--site-border));
    background: color-mix(in srgb, var(--theme-primary) 10%, var(--site-surface));
    color: var(--theme-primary);
}

.citizen-action-bar__button--speech-stop {
    border-color: color-mix(in srgb, var(--theme-primary) 28%, var(--site-border));
    color: var(--theme-primary);
}

.citizen-action-bar__button--zoom {
    min-width: 2.4rem;
    padding-inline: 0.5rem;
    font-size: 0.9rem;
}

.citizen-action-bar__button--reset {
    font-size: 0.98rem;
}

.citizen-action-bar__button--report {
    margin-left: auto;
    border-color: color-mix(in srgb, var(--theme-primary) 44%, var(--site-border));
    background: color-mix(in srgb, var(--theme-primary) 12%, var(--site-surface));
    color: var(--theme-primary);
    font-weight: 820;
}

.citizen-action-bar__button--report:hover,
.citizen-action-bar__button--report:focus-visible {
    border-color: var(--theme-primary);
    background: var(--theme-primary);
    color: var(--theme-primary-contrast);
}

.citizen-action-bar__button-label--mobile {
    display: none;
}

.citizen-report-backdrop[hidden] {
    display: none;
}

body.citizen-report-open {
    overflow: hidden;
}

.citizen-report-backdrop {
    position: fixed;
    z-index: var(--z-modal);
    inset: 0;
    display: grid;
    padding: 1rem;
    overflow: auto;
    background: rgb(15 23 42 / 0.55);
    place-items: center;
}

.citizen-report-dialog {
    width: min(100%, 36rem);
    overflow: hidden;
    border: 1px solid var(--site-border);
    border-radius: var(--site-card-radius);
    background: var(--site-surface);
    box-shadow: 0 1.25rem 3.5rem rgb(15 23 42 / 0.26);
    color: var(--site-text);
}

.citizen-report-dialog__header,
.citizen-report-dialog__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.15rem;
}

.citizen-report-dialog__header {
    border-bottom: 1px solid var(--site-border);
}

.citizen-report-dialog__header span {
    display: block;
    margin-bottom: 0.18rem;
    color: var(--theme-primary);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.citizen-report-dialog__header h2 {
    margin: 0;
    color: var(--site-heading);
    font-size: 1.3rem;
}

.citizen-report-dialog__close {
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid var(--site-border);
    border-radius: 999px;
    background: var(--site-surface);
    color: var(--site-text);
    cursor: pointer;
    font-size: 1.35rem;
    line-height: 1;
}

.citizen-report-dialog__body {
    display: grid;
    gap: 1rem;
    padding: 1.15rem;
}

.citizen-report-dialog__content-title {
    margin: 0;
    color: var(--site-muted);
    font-size: 0.88rem;
    font-weight: 650;
}

.citizen-report-field {
    display: grid;
    gap: 0.4rem;
}

.citizen-report-field > span {
    color: var(--site-heading);
    font-size: 0.86rem;
    font-weight: 750;
}

.citizen-report-field select,
.citizen-report-field textarea {
    width: 100%;
    border: 1px solid var(--site-border-strong);
    border-radius: var(--site-button-radius);
    background: var(--site-surface);
    color: var(--site-text);
    font: inherit;
}

.citizen-report-field select {
    min-height: 2.7rem;
    padding: 0.45rem 0.65rem;
}

.citizen-report-field textarea {
    min-height: 9rem;
    padding: 0.7rem;
    resize: vertical;
}

.citizen-report-field select:focus,
.citizen-report-field textarea:focus {
    border-color: var(--theme-primary);
    outline: 2px solid color-mix(in srgb, var(--theme-primary) 20%, transparent);
    outline-offset: 1px;
}

.citizen-report-message {
    padding: 0.75rem 0.85rem;
    border: 1px solid #fecaca;
    border-radius: var(--site-button-radius);
    background: #fef2f2;
    color: #991b1b;
    font-size: 0.86rem;
    font-weight: 650;
}

.citizen-report-message--success {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #166534;
}

.citizen-report-dialog__footer {
    justify-content: flex-end;
    border-top: 1px solid var(--site-border);
    background: var(--site-surface-soft);
}

.citizen-report-dialog__primary,
.citizen-report-dialog__secondary {
    min-height: 2.55rem;
    padding: 0.5rem 0.85rem;
    border-radius: var(--site-button-radius);
    cursor: pointer;
    font: inherit;
    font-weight: 750;
}

.citizen-report-dialog__primary {
    border: 1px solid var(--theme-primary);
    background: var(--theme-primary);
    color: var(--theme-primary-contrast);
}

.citizen-report-dialog__secondary {
    border: 1px solid var(--site-border-strong);
    background: var(--site-surface);
    color: var(--site-text);
}

.citizen-report-dialog__primary:disabled,
.citizen-report-dialog__secondary:disabled {
    cursor: wait;
    opacity: 0.6;
}

.public-article-shell {
    width: min(calc(100% - (2 * var(--site-gutter))), 920px);
    margin-inline: auto;
}

.public-article-shell .public-article {
    width: 100%;
}

@media (max-width: 680px) {
    .citizen-action-bar {
        gap: 0.18rem;
        padding-inline: 0.35rem;
    }

    .citizen-action-bar__label {
        display: none;
    }

    .citizen-action-bar__separator {
        margin-inline: 0.05rem;
    }

    .citizen-action-bar__button {
        min-width: 2.25rem;
        padding-inline: 0.45rem;
    }

    .citizen-action-bar__button-label {
        display: none;
    }

    .citizen-action-bar__button-label--mobile {
        display: inline;
    }

    .citizen-action-bar__button--report {
        margin-left: 0;
    }
}

@media print {
    body.citizen-print-mode * {
        visibility: hidden !important;
    }

    body.citizen-print-mode [data-citizen-print-target],
    body.citizen-print-mode [data-citizen-print-target] * {
        visibility: visible !important;
    }

    body.citizen-print-mode [data-citizen-print-target] {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.citizen-print-mode .public-article__actions,
    body.citizen-print-mode .page-public__admin-actions,
    body.citizen-print-mode .citizen-action-bar {
        display: none !important;
    }
}
