/* Al-Amal Communications 0.14.10 — UX Phase A: Modern Editorial School Dashboard foundation.
 * Presentation-only. These --comm-* tokens are the canonical visual contract for later UX phases.
 * Existing --aau-* variables remain aliases so historical selectors stay compatible while CSS is consolidated.
 */
.aau-page,
.aau-dashboard-card {
    --comm-bg: var(--aa-bg, #f8f9fc);
    --comm-surface: var(--aa-surface, #ffffff);
    --comm-surface-raised: var(--aa-surface, #ffffff);
    --comm-surface-soft: var(--aa-surface-subtle, #f5f5f8);
    --comm-surface-muted: var(--aa-surface-muted, #f1f2f6);
    --comm-border: var(--aa-border, #e5e7eb);
    --comm-border-strong: var(--aa-border-strong, #d7d9e0);
    --comm-text: var(--aa-text, #11111a);
    --comm-text-muted: var(--aa-text-muted, #686978);
    --comm-text-soft: var(--aa-text-soft, #8d8e9b);
    --comm-primary: var(--aa-primary, #6558e8);
    --comm-primary-hover: var(--aa-primary-hover, var(--aa-primary-strong, #5547d8));
    --comm-primary-soft: var(--aa-primary-soft, #f0efff);
    --comm-primary-border: var(--aa-primary-border, #d9d5ff);
    --comm-success: var(--aa-success, #16a34a);
    --comm-warning: var(--aa-warning, #b56a00);
    --comm-danger: var(--aa-danger, #dc2626);
    --comm-info: var(--aa-accent, #087bb5);
    --comm-focus: var(--aa-focus, 0 0 0 3px rgba(101, 88, 232, .18));
    --comm-radius-sm: var(--aa-radius-sm, 8px);
    --comm-radius-control: var(--aa-radius-control, 10px);
    --comm-radius-md: var(--aa-radius, 12px);
    --comm-radius-lg: var(--aa-radius-lg, 16px);
    --comm-shadow-sm: var(--aa-shadow-sm, 0 1px 2px rgba(17, 17, 26, .04));
    --comm-shadow-md: var(--aa-shadow, 0 10px 28px rgba(31, 35, 48, .06));
    --comm-shadow-hover: 0 16px 36px rgba(31, 35, 48, .10);
    --comm-space-1: .25rem;
    --comm-space-2: .5rem;
    --comm-space-3: .75rem;
    --comm-space-4: 1rem;
    --comm-space-5: 1.25rem;
    --comm-space-6: 1.5rem;
    --comm-space-8: 2rem;
    --comm-space-10: 2.5rem;

    --aau-primary: var(--comm-primary);
    --aau-primary-dark: var(--comm-primary-hover);
    --aau-primary-soft: var(--comm-primary-soft);
    --aau-surface: var(--comm-surface);
    --aau-surface-soft: var(--comm-surface-soft);
    --aau-border: var(--comm-border);
    --aau-border-strong: var(--comm-border-strong);
    --aau-text: var(--comm-text);
    --aau-muted: var(--comm-text-muted);
    --aau-success: var(--comm-success);
    --aau-warning: var(--comm-warning);
    --aau-danger: var(--comm-danger);
    --aau-focus-shadow: var(--comm-focus);
    --aau-radius: var(--comm-radius-md);
    --aau-radius-lg: var(--comm-radius-lg);
    --aau-shadow: var(--comm-shadow-md);
    --aau-space-1: var(--comm-space-1);
    --aau-space-2: var(--comm-space-2);
    --aau-space-3: var(--comm-space-3);
    --aau-space-4: var(--comm-space-4);
    --aau-space-5: var(--comm-space-5);
    --aau-space-6: var(--comm-space-6);
    --aau-space-8: var(--comm-space-8);
    --aau-radius-control: var(--comm-radius-control);
    --aau-radius-card: var(--comm-radius-md);
    --aau-radius-panel: var(--comm-radius-lg);
    --aau-shadow-card: var(--comm-shadow-sm);
    --aau-shadow-hover: var(--comm-shadow-hover);

    color: var(--comm-text);
    font-family: inherit;
    line-height: 1.5;
}

.aau-page {
    display: grid;
    gap: var(--comm-space-5);
    min-width: 0;
}

.aau-page *,
.aau-dashboard-card * {
    box-sizing: border-box;
}

.aau-page a,
.aau-dashboard-card a {
    color: var(--aau-primary);
}

.aau-sr-only {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
}

.aau-page a:focus-visible,
.aau-page button:focus-visible,
.aau-page input:focus-visible,
.aau-page select:focus-visible,
.aau-page textarea:focus-visible,
.aau-dashboard-card a:focus-visible,
.aau-dashboard-card button:focus-visible {
    box-shadow: var(--comm-focus);
    outline: 2px solid color-mix(in srgb, var(--comm-primary) 78%, transparent);
    outline-offset: 2px;
}

.aau-eyebrow {
    color: var(--comm-primary);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .085em;
    line-height: 1.35;
    margin: 0 0 var(--comm-space-1);
    text-transform: uppercase;
}

.aau-hero {
    align-items: center;
    background: linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 78%, var(--comm-surface)) 0%, var(--comm-surface) 72%);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    gap: var(--comm-space-5);
    justify-content: space-between;
    padding: var(--comm-space-6);
}

.aau-hero--compact {
    padding: 1.2rem 1.4rem;
}

.aau-hero h2 {
    font-size: clamp(1.5rem, 3vw, 2.15rem);
    line-height: 1.15;
    margin: 0;
}

.aau-hero p:not(.aau-eyebrow) {
    color: var(--aau-muted);
    margin: .5rem 0 0;
    max-width: 760px;
}

.aau-hero__actions,
.aau-hero__status {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: flex-end;
}

.aau-button {
    align-items: center;
    background: var(--comm-primary);
    border: 1px solid var(--comm-primary);
    border-radius: var(--comm-radius-control);
    box-shadow: var(--comm-shadow-sm);
    color: #fff !important;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-weight: 700;
    gap: var(--comm-space-2);
    justify-content: center;
    line-height: 1.2;
    min-height: 44px;
    padding: .68rem 1rem;
    text-decoration: none !important;
    transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-button:hover {
    background: var(--comm-primary-hover);
    border-color: var(--comm-primary-hover);
    box-shadow: 0 6px 16px color-mix(in srgb, var(--comm-primary) 18%, transparent);
    transform: translateY(-1px);
}

.aau-button--secondary {
    background: var(--comm-surface);
    border-color: var(--comm-border-strong);
    box-shadow: none;
    color: var(--comm-primary) !important;
}

.aau-button--secondary:hover {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    box-shadow: none;
}

.aau-button[disabled],
.aau-button[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: .65;
    transform: none;
}

.aau-flash {
    align-items: flex-start;
    border: 1px solid;
    border-radius: var(--comm-radius-md);
    display: flex;
    gap: var(--comm-space-2);
    line-height: 1.45;
    padding: .85rem 1rem;
}

.aau-flash span {
    min-width: 0;
}

.aau-flash--success {
    background: color-mix(in srgb, var(--comm-success) 8%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--comm-success) 34%, var(--comm-border));
    color: color-mix(in srgb, var(--comm-success) 78%, var(--comm-text));
}

.aau-flash--warning {
    background: color-mix(in srgb, var(--comm-warning) 8%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--comm-warning) 34%, var(--comm-border));
    color: color-mix(in srgb, var(--comm-warning) 82%, var(--comm-text));
}

.aau-flash--error {
    background: color-mix(in srgb, var(--comm-danger) 7%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--comm-danger) 32%, var(--comm-border));
    color: color-mix(in srgb, var(--comm-danger) 80%, var(--comm-text));
}

.aau-flash--info {
    background: color-mix(in srgb, var(--comm-info) 7%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--comm-info) 30%, var(--comm-border));
    color: color-mix(in srgb, var(--comm-info) 78%, var(--comm-text));
}

.aau-filterbar {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    padding: .35rem;
}

.aau-filterbar a {
    align-items: center;
    border-radius: 8px;
    color: var(--aau-muted);
    display: inline-flex;
    font-weight: 700;
    gap: .42rem;
    min-height: 42px;
    padding: .55rem .75rem;
    text-decoration: none;
}

.aau-filterbar a:hover,
.aau-filterbar a.is-active {
    background: var(--aau-primary-soft);
    color: var(--aau-primary);
}

.aau-filter-count {
    align-items: center;
    background: var(--comm-surface-muted);
    border-radius: 999px;
    display: inline-flex;
    font-size: .68rem;
    justify-content: center;
    min-height: 22px;
    min-width: 22px;
    padding: 0 .35rem;
}

.aau-filterbar a.is-active .aau-filter-count {
    background: var(--aau-primary);
    color: #fff;
}


.aau-communications-nav {
    align-items: center;
    background: var(--comm-surface);
    border-color: var(--comm-border);
    box-shadow: var(--comm-shadow-sm);
}

.aau-communications-nav a.is-action {
    background: var(--aau-primary);
    border-color: var(--aau-primary);
    color: #fff;
    margin-inline-start: auto;
}

.aau-communications-nav a.is-action:hover,
.aau-communications-nav a.is-action.is-active {
    background: var(--aau-primary-dark);
    border-color: var(--aau-primary-dark);
    color: #fff;
}

.aau-admin-nav {
    background: transparent;
    border-color: color-mix(in srgb, var(--comm-border) 88%, var(--comm-primary) 12%);
}

.aau-results-heading {
    align-items: end;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.aau-results-heading h3,
.aau-results-heading p {
    margin: 0;
}

.aau-results-heading p {
    color: var(--aau-muted);
    font-size: .82rem;
    margin-top: .2rem;
}

.aau-clear-filter,
.aau-back-link {
    color: var(--aau-primary) !important;
    font-weight: 750;
    min-height: 40px;
    padding: .5rem;
    text-decoration: none;
}

.aau-overview {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aau-overview__tile {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: .25rem;
    min-height: 92px;
    padding: var(--comm-space-4);
    text-decoration: none;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-overview__tile:hover {
    border-color: var(--comm-primary-border);
    box-shadow: var(--comm-shadow-md);
    transform: translateY(-2px);
}

.aau-overview__tile strong {
    color: var(--aau-primary);
    font-size: 1.55rem;
    line-height: 1;
}

.aau-overview__tile span {
    color: var(--aau-muted);
    font-size: .78rem;
    font-weight: 750;
}

.aau-overview__tile--warning strong { color: var(--aau-warning); }
.aau-overview__tile--success strong { color: var(--aau-success); }
.aau-overview__tile--info strong { color: var(--aau-primary); }

.aau-feed {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}

.aau-update-card {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    min-height: 235px;
    padding: 1.15rem;
    position: relative;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-update-card:hover {
    border-color: #b6ccd8;
    box-shadow: 0 10px 26px rgba(23, 48, 66, .08);
    transform: translateY(-2px);
}

.aau-update-card.is-unread {
    border-inline-start: 5px solid var(--aau-primary);
}

.aau-update-card.aau-importance-important {
    border-top: 4px solid #d58a15;
}

.aau-update-card.aau-importance-urgent {
    border-top: 4px solid var(--aau-danger);
}

.aau-update-card h3 {
    font-size: 1.15rem;
    line-height: 1.3;
    margin: .65rem 0 .35rem;
}

.aau-update-card h3 a {
    text-decoration: none;
}

.aau-update-card h3 a:hover {
    color: var(--aau-primary);
}

.aau-update-card p {
    color: var(--aau-muted);
}

.aau-update-card__excerpt {
    line-height: 1.55;
}

.aau-update-card__meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.aau-update-card__date {
    color: var(--aau-primary) !important;
    font-size: .85rem;
    font-weight: 750;
    margin: .2rem 0;
}

.aau-update-card footer {
    align-items: center;
    border-top: 1px solid var(--aau-border);
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: auto;
    padding-top: .8rem;
}

.aau-update-card footer span,
.aau-update-card footer time {
    color: var(--aau-muted);
    font-size: .78rem;
}

.aau-update-card footer .aau-card-link {
    color: var(--aau-primary);
    font-size: .83rem;
    font-weight: 800;
    margin-inline-start: auto;
    min-height: 36px;
    padding: .4rem;
    text-decoration: none;
}

.aau-badge {
    align-items: center;
    background: var(--comm-surface-muted);
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--comm-text-muted);
    display: inline-flex;
    font-size: .69rem;
    font-weight: 800;
    line-height: 1.1;
    min-height: 24px;
    padding: .35rem .58rem;
}

.aau-badge--primary { background: var(--comm-primary-soft); border-color: var(--comm-primary-border); color: var(--comm-primary-hover); }
.aau-badge--info { background: color-mix(in srgb, var(--comm-info) 8%, var(--comm-surface)); border-color: color-mix(in srgb, var(--comm-info) 22%, var(--comm-border)); color: color-mix(in srgb, var(--comm-info) 82%, var(--comm-text)); }
.aau-badge--success { background: color-mix(in srgb, var(--comm-success) 9%, var(--comm-surface)); border-color: color-mix(in srgb, var(--comm-success) 24%, var(--comm-border)); color: color-mix(in srgb, var(--comm-success) 78%, var(--comm-text)); }
.aau-badge--warning { background: color-mix(in srgb, var(--comm-warning) 10%, var(--comm-surface)); border-color: color-mix(in srgb, var(--comm-warning) 27%, var(--comm-border)); color: color-mix(in srgb, var(--comm-warning) 84%, var(--comm-text)); }
.aau-badge--danger { background: color-mix(in srgb, var(--comm-danger) 8%, var(--comm-surface)); border-color: color-mix(in srgb, var(--comm-danger) 22%, var(--comm-border)); color: color-mix(in srgb, var(--comm-danger) 80%, var(--comm-text)); }
.aau-badge--neutral { background: var(--comm-surface-muted); border-color: var(--comm-border); color: var(--comm-text-muted); }

.aau-empty {
    background: var(--comm-surface-soft);
    border: 1px dashed var(--comm-border-strong);
    border-radius: var(--comm-radius-lg);
    color: var(--comm-text);
    padding: var(--comm-space-10) var(--comm-space-4);
    text-align: center;
}

.aau-empty > span {
    font-size: 2.3rem;
}

.aau-empty h3 {
    margin: .75rem 0 .25rem;
}

.aau-empty p {
    color: var(--aau-muted);
    margin: 0 0 1rem;
}

.aau-calendar-toolbar {
    display: flex;
    gap: .75rem;
    justify-content: space-between;
}

.aau-calendar-toolbar a {
    align-items: center;
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 9px;
    color: var(--aau-primary);
    display: inline-flex;
    font-weight: 750;
    min-height: 44px;
    padding: .55rem .8rem;
    text-decoration: none;
}

.aau-calendar-toolbar a:hover {
    background: var(--aau-primary-soft);
}

.aau-calendar-summary {
    align-items: center;
    color: var(--aau-muted);
    display: flex;
    font-size: .8rem;
    gap: 1rem;
    justify-content: space-between;
}

.aau-calendar-legend {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.aau-calendar-legend > span {
    align-items: center;
    display: inline-flex;
    gap: .35rem;
}

.aau-legend-dot {
    background: var(--aau-primary);
    border-radius: 50%;
    display: inline-block;
    height: 9px;
    width: 9px;
}

.aau-legend-dot--important { background: #c87b0c; }
.aau-legend-dot--urgent { background: var(--aau-danger); }

.aau-calendar {
    background: var(--aau-border);
    border: 1px solid var(--aau-border);
    border-radius: 14px;
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    overflow: hidden;
}

.aau-calendar__weekday {
    background: #eaf3f8;
    font-size: .74rem;
    font-weight: 800;
    padding: .65rem .35rem;
    text-align: center;
}

.aau-calendar__day {
    background: var(--aau-surface);
    min-height: 128px;
    padding: .45rem;
}

.aau-calendar__day.is-outside {
    background: var(--aau-surface-soft);
    color: #82949f;
}

.aau-calendar__day.is-today {
    box-shadow: inset 0 0 0 2px var(--aau-primary);
}

.aau-calendar__date {
    align-items: center;
    display: flex;
    font-size: .78rem;
    font-weight: 800;
    justify-content: flex-end;
    margin-bottom: .35rem;
}

.aau-calendar__mobile-weekday {
    display: none;
}

.aau-calendar__event {
    background: #edf5f9;
    border-inline-start: 3px solid var(--aau-primary);
    border-radius: 6px;
    display: block;
    font-size: .72rem;
    margin: .25rem 0;
    overflow: hidden;
    padding: .34rem .4rem;
    text-decoration: none;
}

.aau-calendar__event:hover {
    box-shadow: 0 0 0 1px var(--aau-primary);
}

.aau-calendar__event small {
    color: var(--aau-muted);
    display: block;
}

.aau-calendar__event span {
    display: block;
    font-weight: 750;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aau-calendar__event--important {
    background: #fff3dd;
    border-inline-start-color: #c87b0c;
}

.aau-calendar__event--urgent {
    background: #feecee;
    border-inline-start-color: var(--aau-danger);
}

.aau-calendar__event.is-cancelled,
.aau-agenda__item.is-cancelled {
    opacity: .72;
    text-decoration: line-through;
}

.aau-agenda {
    display: none;
}

.aau-detail-toolbar {
    align-items: center;
    display: flex;
    gap: .5rem;
    justify-content: space-between;
}

.aau-detail {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 18px;
    overflow: hidden;
}

.aau-detail.aau-importance-important {
    border-top: 5px solid #d58a15;
}

.aau-detail.aau-importance-urgent {
    border-top: 5px solid var(--aau-danger);
}

.aau-detail > header {
    background: linear-gradient(135deg, #f2f8fb, #fff);
    border-bottom: 1px solid var(--aau-border);
    padding: 1.5rem;
}

.aau-detail h2 {
    font-size: clamp(1.6rem, 4vw, 2.5rem);
    line-height: 1.16;
    margin: .65rem 0 .4rem;
}

.aau-detail__summary {
    color: var(--aau-muted);
    font-size: 1.05rem;
    line-height: 1.55;
    max-width: 850px;
}

.aau-detail__byline {
    color: var(--aau-muted);
    display: flex;
    flex-wrap: wrap;
    gap: .85rem;
    font-size: .82rem;
}

.aau-detail__content {
    font-size: 1rem;
    line-height: 1.72;
    overflow-wrap: anywhere;
    padding: 1.5rem;
}

.aau-detail__content img,
.aau-detail__content table {
    height: auto;
    max-width: 100%;
}

.aau-detail__content table {
    display: block;
    overflow-x: auto;
}

.aau-event-facts {
    background: var(--aau-surface-soft);
    border-bottom: 1px solid var(--aau-border);
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    margin: 0;
}

.aau-event-facts > div {
    background: var(--aau-surface);
    display: grid;
    gap: .25rem;
    padding: 1rem 1.25rem;
}

.aau-event-facts dt {
    color: var(--aau-primary);
    font-size: .73rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.aau-event-facts dd {
    margin: 0;
}

.aau-admin-summary {
    background: var(--aau-surface-soft);
    border-top: 1px solid var(--aau-border);
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1rem 1.5rem;
}

.aau-admin-summary > div {
    display: grid;
    gap: .35rem;
    min-width: 160px;
}

.aau-admin-summary__audience {
    flex: 1 1 280px;
}

.aau-reach-stat {
    flex: 1 1 220px;
}

.aau-progress {
    background: var(--aau-border);
    border-radius: 999px;
    height: 7px;
    max-width: 260px;
    overflow: hidden;
}

.aau-progress > span {
    background: var(--aau-success);
    display: block;
    height: 100%;
}

.aau-detail__actions,
.aau-acknowledge {
    align-items: center;
    border-top: 1px solid var(--aau-border);
    display: flex;
    gap: .75rem;
    justify-content: flex-end;
    padding: 1rem 1.5rem;
}

.aau-acknowledge > div {
    display: grid;
    gap: .15rem;
    margin-inline-end: auto;
}

.aau-acknowledge > div span {
    color: var(--aau-muted);
    font-size: .82rem;
}

.aau-acknowledge.is-complete {
    background: #eefaf4;
}

.aau-form {
    display: grid;
    gap: 1rem;
}

.aau-authoring-progress {
    background: color-mix(in srgb, var(--comm-surface) 94%, transparent);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow: hidden;
    padding: .38rem;
}

.aau-form-steps {
    counter-reset: none !important;
    display: grid !important;
    gap: .35rem;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    list-style: none !important;
    margin: 0 !important;
    min-width: 0;
    padding: 0 !important;
    width: 100%;
}

.aau-form-steps li {
    display: block !important;
    list-style: none !important;
    margin: 0 !important;
    min-width: 0;
    padding: 0 !important;
}

.aau-form-steps li::marker {
    content: "";
    font-size: 0;
}

/* Gibbon/theme compatibility: host ordered-list styles can be loaded after module CSS.
 * Keep the authoring progress semantics (<ol>) while preventing host list counters,
 * spacing and display rules from leaking into the four-step control. */
body.aa-app #content .aau-form-steps {
    display: grid !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.aa-app #content .aau-form-steps > li {
    display: block !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.aa-app #content .aau-form-steps > li::before,
body.aa-app #content .aau-form-steps > li::marker {
    content: none !important;
    display: none !important;
}

.aau-form-steps a {
    align-items: center;
    border: 1px solid transparent;
    border-radius: var(--comm-radius-md);
    color: var(--comm-text-muted);
    display: flex;
    gap: .65rem;
    box-sizing: border-box;
    height: 100%;
    min-height: 58px;
    padding: .62rem .7rem;
    text-decoration: none;
    width: 100%;
    transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.aau-form-steps a:hover {
    background: var(--comm-surface-soft);
    border-color: var(--comm-border);
    color: var(--comm-text);
    text-decoration: none;
}

.aau-form-steps a[aria-current="step"] {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover);
}

.aau-form-steps a > span:first-child,
.aau-step-number {
    align-items: center;
    background: var(--comm-primary-soft);
    border: 1px solid var(--comm-primary-border);
    border-radius: 50%;
    color: var(--comm-primary-hover);
    display: inline-flex;
    flex: 0 0 auto;
    font-size: .76rem;
    font-weight: 850;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.aau-form-steps a[aria-current="step"] > span:first-child {
    background: var(--comm-primary);
    border-color: var(--comm-primary);
    color: #fff;
}

.aau-form-steps a > span:last-child {
    display: grid;
    gap: .08rem;
    min-width: 0;
}

.aau-form-steps b {
    color: inherit;
    font-size: .8rem;
}

.aau-form-steps small {
    color: var(--comm-text-soft);
    font-size: .68rem;
    line-height: 1.25;
}

.aau-form-note {
    align-items: flex-start;
    background: color-mix(in srgb, var(--comm-info) 7%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--comm-info) 28%, var(--comm-border));
    border-radius: var(--comm-radius-md);
    color: color-mix(in srgb, var(--comm-info) 78%, var(--comm-text));
    display: flex;
    gap: var(--comm-space-2);
    padding: .8rem 1rem;
}

.aau-form-card {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow: hidden;
    padding: var(--comm-space-5);
}

.aau-form-card--event {
    border-color: var(--comm-primary-border);
    box-shadow: 0 0 0 1px var(--comm-primary-border), var(--comm-shadow-sm);
}

.aau-form-card > header {
    align-items: flex-start;
    display: flex;
    gap: .75rem;
    margin-bottom: 1rem;
}

.aau-form-card h3 {
    margin: 0;
}

.aau-form-card header p:not(.aau-eyebrow) {
    color: var(--aau-muted);
    margin: .35rem 0 0;
}

.aau-form-grid {
    display: grid;
    gap: 1rem;
}

.aau-form-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aau-form-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.aau-authoring-stage {
    display: grid;
    gap: var(--comm-space-4);
}

.aau-authoring-stage,
.aau-form-card--stage {
    scroll-margin-top: 1.25rem;
}

.aau-form-card--content {
    border-color: color-mix(in srgb, var(--comm-border) 88%, var(--comm-primary));
}

.aau-type-picker,
.aau-visibility-picker {
    border: 0;
    margin: 0;
    min-width: 0;
    padding: 0;
}

.aau-type-picker > legend,
.aau-visibility-picker > legend {
    color: var(--comm-text);
    font-size: .82rem;
    font-weight: 850;
    margin-bottom: .55rem;
}

.aau-type-picker > legend em,
.aau-visibility-picker > legend em {
    color: var(--comm-danger);
    font-size: .67rem;
    font-style: normal;
    letter-spacing: .03em;
    margin-inline-start: .25rem;
    text-transform: uppercase;
}

.aau-type-picker__grid {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aau-visibility-picker__grid {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-type-option,
.aau-visibility-option {
    align-items: flex-start;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    cursor: pointer;
    display: flex;
    gap: .7rem;
    min-height: 92px;
    padding: .85rem;
    position: relative;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.aau-type-option:hover,
.aau-visibility-option:hover {
    border-color: var(--comm-primary-border);
    box-shadow: var(--comm-shadow-sm);
}

.aau-type-option:has(input:checked),
.aau-visibility-option:has(input:checked) {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--comm-primary) 10%, transparent);
}

.aau-type-option input,
.aau-visibility-option input {
    height: 1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    width: 1px;
}

.aau-type-option:focus-within,
.aau-visibility-option:focus-within {
    border-color: var(--comm-primary);
    box-shadow: var(--comm-focus);
}

.aau-type-option__copy,
.aau-visibility-option > span {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

.aau-type-option b,
.aau-visibility-option b {
    color: var(--comm-text);
    font-size: .82rem;
}

.aau-type-option small,
.aau-visibility-option small,
.aau-type-picker__help,
.aau-visibility-picker__help {
    color: var(--comm-text-muted);
    font-size: .72rem;
    line-height: 1.4;
}

.aau-type-picker__help,
.aau-visibility-picker__help {
    display: block;
    margin-top: .5rem;
}

.aau-type-option__check,
.aau-visibility-option__check {
    border: 1px solid var(--comm-border-strong);
    border-radius: 999px;
    height: 18px;
    margin-inline-start: auto;
    position: relative;
    width: 18px;
}

.aau-type-option:has(input:checked) .aau-type-option__check,
.aau-visibility-option:has(input:checked) .aau-visibility-option__check {
    background: var(--comm-primary);
    border-color: var(--comm-primary);
}

.aau-type-option:has(input:checked) .aau-type-option__check::after,
.aau-visibility-option:has(input:checked) .aau-visibility-option__check::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    height: 7px;
    left: 5px;
    position: absolute;
    top: 3px;
    transform: rotate(45deg);
    width: 4px;
}

.aau-field {
    display: grid;
    gap: .38rem;
    min-width: 0;
}

.aau-field > span {
    font-size: .82rem;
    font-weight: 800;
}

.aau-field > span em {
    color: var(--aau-danger);
    font-size: .67rem;
    font-style: normal;
    letter-spacing: .03em;
    margin-inline-start: .25rem;
    text-transform: uppercase;
}

.aau-field small,
.aau-form-actions__help {
    color: var(--aau-muted);
    font-size: .75rem;
    line-height: 1.4;
}

.aau-character-count {
    justify-self: end;
}

.aau-field--wide {
    grid-column: 1 / -1;
}

.aau-field input,
.aau-field select,
.aau-field textarea {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border-strong);
    border-radius: var(--comm-radius-control);
    color: var(--comm-text);
    font: inherit;
    min-height: 44px;
    padding: .68rem .72rem;
    width: 100%;
}

.aau-field textarea {
    min-height: 96px;
    resize: vertical;
}

.aau-field input:focus,
.aau-field select:focus,
.aau-field textarea:focus {
    border-color: var(--comm-primary);
    box-shadow: var(--comm-focus);
    outline: 0;
}

.aau-toggle {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    cursor: pointer;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    min-height: 64px;
    padding: .8rem;
}

.aau-toggle:hover,
.aau-audience-option:hover {
    border-color: var(--aau-primary);
}

.aau-toggle span {
    display: grid;
    gap: .2rem;
}

.aau-toggle small,
.aau-audience-option small {
    color: var(--aau-muted);
}

.aau-toggle input {
    height: 24px;
    min-width: 24px;
    width: 24px;
}

.aau-toggle--featured {
    margin-bottom: 1rem;
}

.aau-toggle--danger {
    background: color-mix(in srgb, var(--aau-danger) 7%, var(--aau-surface));
    border-color: color-mix(in srgb, var(--aau-danger) 35%, var(--aau-border));
}

.aau-toggle--danger:hover,
.aau-toggle--danger:focus-within {
    border-color: var(--aau-danger);
}

.aau-toggle--danger b {
    color: var(--aau-danger);
}

.aau-audience-fieldset {
    border: 0;
    margin: 0;
    min-width: 0;
    padding: 0;
}

.aau-audience-fieldset.is-disabled {
    opacity: .55;
}

.aau-audience-grid {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.aau-audience-option {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    cursor: pointer;
    display: flex;
    gap: .65rem;
    min-height: 62px;
    padding: .75rem;
}

.aau-audience-option:has(input:checked) {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--comm-primary) 8%, transparent);
}

.aau-audience-option input {
    height: 22px;
    min-width: 22px;
    width: 22px;
}

.aau-audience-option span {
    display: grid;
}

.aau-audience-status,
.aau-inline-feedback {
    color: var(--aau-muted);
    display: none;
    font-size: .78rem;
    margin-bottom: .65rem;
}

.aau-audience-status.is-visible,
.aau-inline-feedback.is-visible,
.aau-inline-feedback--warning {
    display: block;
}

.aau-inline-feedback--warning {
    background: color-mix(in srgb, var(--comm-warning) 8%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--comm-warning) 34%, var(--comm-border));
    border-radius: var(--comm-radius-control);
    color: color-mix(in srgb, var(--comm-warning) 82%, var(--comm-text));
    grid-column: 1 / -1;
    padding: .65rem .75rem;
}

.aau-form-actions {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-md);
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: flex-end;
    padding: .75rem;
    position: relative;
    z-index: 5;
}

.aau-form-actions--top {
    margin-bottom: 1rem;
}

.aau-form-actions--bottom {
    margin-top: 1rem;
}

.aau-form-actions--floating {
    bottom: max(1rem, env(safe-area-inset-bottom));
    box-shadow: 0 14px 38px rgba(23, 48, 66, .24);
    inset-inline-start: 50%;
    max-width: min(760px, calc(100vw - 2rem));
    opacity: 0;
    pointer-events: none;
    position: fixed;
    transform: translate(-50%, 1rem);
    transition: opacity .16s ease, transform .16s ease;
    width: max-content;
    z-index: 1200;
}

.aau-form-actions--floating.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.aau-form-actions__help {
    display: grid;
    gap: .15rem;
    margin-inline-end: auto;
    max-width: 520px;
}

.aau-form-actions__help strong {
    font-size: .78rem;
}

.aau-form-actions__help span {
    color: var(--aau-muted);
    font-size: .75rem;
}

.aau-settings-list {
    display: grid;
    gap: .8rem;
}

.aau-field--editor > .editor,
.aau-field--editor > .tox,
.aau-field--editor .tox-tinymce {
    width: 100%;
}

.aau-field--editor .tox-tinymce {
    min-height: 20rem;
}

.aau-table-wrap {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow-x: auto;
}

.aau-table {
    border-collapse: collapse;
    min-width: 900px;
    width: 100%;
}

.aau-table th {
    background: var(--comm-surface-soft);
    color: var(--comm-text-muted);
    font-size: .73rem;
    letter-spacing: .03em;
    padding: .78rem;
    position: sticky;
    text-align: start;
    text-transform: uppercase;
    top: 0;
    z-index: 1;
}

.aau-table td {
    border-top: 1px solid var(--aau-border);
    padding: .85rem .78rem;
    vertical-align: top;
}

.aau-table tbody tr:hover {
    background: var(--aau-surface-soft);
}

.aau-table-title {
    display: grid;
    gap: .25rem;
    min-width: 220px;
}

.aau-table-title a {
    color: var(--aau-primary) !important;
    text-decoration: none;
}

.aau-table-title small,
.aau-delivery-status + small {
    color: var(--aau-muted);
    display: block;
}

.aau-table-date {
    white-space: nowrap;
}

.aau-audience-list {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem;
}

.aau-row-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .3rem .55rem;
    min-width: 150px;
}

.aau-row-action,
.aau-text-button {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--comm-radius-sm);
    color: var(--comm-primary) !important;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: .78rem;
    font-weight: 800;
    min-height: 34px;
    padding: .25rem;
    text-decoration: none;
}

.aau-row-action:hover,
.aau-text-button:hover {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
}

.aau-inline-form {
    display: inline;
    margin: 0;
}

.aau-text-danger {
    color: var(--aau-danger) !important;
}

.aau-dashboard-card {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    margin: 1rem 0;
    overflow: hidden;
}

.aau-dashboard-card > header {
    align-items: center;
    background: linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 78%, var(--comm-surface)), var(--comm-surface));
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1rem 1.15rem;
}

.aau-dashboard-card h2 {
    margin: 0;
}

.aau-dashboard-subtitle {
    color: var(--aau-muted);
    font-size: .76rem;
    margin: .2rem 0 0;
}

.aau-dashboard-list {
    display: grid;
}

.aau-dashboard-list > a {
    border-top: 1px solid var(--aau-border);
    display: grid;
    gap: .25rem;
    grid-template-columns: 1fr auto;
    padding: .85rem 1.1rem;
    position: relative;
    text-decoration: none;
}

.aau-dashboard-list > a > span:first-child,
.aau-dashboard-list > a > strong,
.aau-dashboard-list > a > small {
    grid-column: 1;
}

.aau-dashboard-list > a:hover,
.aau-dashboard-events > a:hover {
    background: var(--aau-surface-soft);
}

.aau-dashboard-list small {
    color: var(--aau-muted);
}

.aau-dashboard-arrow {
    align-self: center;
    color: var(--aau-primary);
    grid-column: 2;
    grid-row: 1 / 4;
}

.aau-dashboard-events {
    background: var(--aau-surface-soft);
    border-top: 1px solid var(--aau-border);
    display: grid;
    gap: .35rem;
    padding: .9rem 1.1rem;
}

.aau-dashboard-events > a {
    align-items: baseline;
    border-radius: 7px;
    display: grid;
    gap: .5rem;
    grid-template-columns: minmax(90px, auto) 1fr auto;
    min-height: 38px;
    padding: .3rem;
    text-decoration: none;
}

.aau-dashboard-events time {
    color: var(--aau-primary);
    font-size: .78rem;
    font-weight: 800;
}

.aau-dashboard-empty {
    border-top: 1px solid var(--aau-border);
    color: var(--aau-muted);
    font-size: .8rem;
    padding: 1rem 1.1rem;
}

.aau-dashboard-card > footer {
    border-top: 1px solid var(--aau-border);
    display: flex;
    flex-wrap: wrap;
    gap: .5rem 1rem;
    justify-content: flex-end;
    padding: .75rem 1.1rem;
}

.aau-dashboard-card > footer a {
    color: var(--aau-primary);
    font-size: .82rem;
    font-weight: 800;
    min-height: 36px;
    padding: .4rem;
    text-decoration: none;
}

.aau-dashboard-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.aau-dashboard-stats a {
    border-inline-end: 1px solid var(--aau-border);
    display: grid;
    min-height: 82px;
    padding: .9rem;
    text-align: center;
    text-decoration: none;
}

.aau-dashboard-stats a:last-child {
    border-inline-end: 0;
}

.aau-dashboard-stats a:hover {
    background: var(--aau-surface-soft);
}

.aau-dashboard-stats a.has-attention {
    background: #fff7e8;
}

.aau-dashboard-stats strong {
    color: var(--aau-primary);
    font-size: 1.5rem;
}

.aau-dashboard-stats a.has-attention strong {
    color: var(--aau-warning);
}

.aau-dashboard-stats span {
    color: var(--aau-muted);
    font-size: .75rem;
}

html[data-aa-colour-scheme="dark"] .aau-page,
html[data-aa-colour-scheme="dark"] .aau-dashboard-card {
    --comm-bg: var(--aa-bg, #11131a);
    --comm-surface: var(--aa-surface, #171923);
    --comm-surface-raised: var(--aa-surface, #171923);
    --comm-surface-soft: var(--aa-surface-subtle, #20232f);
    --comm-surface-muted: var(--aa-surface-muted, #252833);
    --comm-border: var(--aa-border, #2d3140);
    --comm-border-strong: var(--aa-border-strong, #3c4152);
    --comm-text: var(--aa-text, #f4f5f8);
    --comm-text-muted: var(--aa-text-muted, #a9afbf);
    --comm-text-soft: var(--aa-text-soft, #858c9d);
    --comm-primary: var(--aa-primary, #a397ff);
    --comm-primary-hover: var(--aa-primary-hover, #b8afff);
    --comm-primary-soft: var(--aa-primary-soft, rgba(138, 123, 255, .14));
    --comm-primary-border: var(--aa-primary-border, #4b466f);
    --comm-success: var(--aa-success, #4ade80);
    --comm-warning: var(--aa-warning, #f0bd68);
    --comm-danger: var(--aa-danger, #fb7185);
    --comm-info: var(--aa-accent, #67c7f4);
    --comm-focus: var(--aa-focus, 0 0 0 3px rgba(163, 151, 255, .24));

    --aau-primary: var(--comm-primary);
    --aau-primary-dark: var(--comm-primary-hover);
    --aau-primary-soft: var(--comm-primary-soft);
    --aau-surface: var(--comm-surface);
    --aau-surface-soft: var(--comm-surface-soft);
    --aau-border: var(--comm-border);
    --aau-border-strong: var(--comm-border-strong);
    --aau-text: var(--comm-text);
    --aau-muted: var(--comm-text-muted);
    --aau-success: var(--comm-success);
    --aau-warning: var(--comm-warning);
    --aau-danger: var(--comm-danger);
    --aau-focus-shadow: var(--comm-focus);
}

html[data-aa-colour-scheme="dark"] .aau-hero,
html[data-aa-colour-scheme="dark"] .aau-dashboard-card > header,
html[data-aa-colour-scheme="dark"] .aau-detail > header {
    background: linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 76%, var(--comm-surface)), var(--comm-surface));
}

html[data-aa-colour-scheme="dark"] .aau-calendar__weekday,
html[data-aa-colour-scheme="dark"] .aau-table th {
    background: var(--comm-surface-soft);
    color: var(--comm-text-muted);
}

html[data-aa-colour-scheme="dark"] .aau-form-note,
html[data-aa-colour-scheme="dark"] .aau-audience-option:has(input:checked) {
    background: #183746;
    border-color: #3c718c;
    color: #d7edf7;
}

html[data-aa-colour-scheme="dark"] .aau-flash--success,
html[data-aa-colour-scheme="dark"] .aau-acknowledge.is-complete {
    background: #153729;
    border-color: #2d6b4b;
    color: #c8f1da;
}

html[data-aa-colour-scheme="dark"] .aau-flash--warning,
html[data-aa-colour-scheme="dark"] .aau-inline-feedback--warning,
html[data-aa-colour-scheme="dark"] .aau-dashboard-stats a.has-attention {
    background: #3a2d19;
    border-color: #73582d;
    color: #f4ddb6;
}

html[data-aa-colour-scheme="dark"] .aau-flash--error {
    background: #402326;
    border-color: #7b4045;
    color: #ffd8da;
}

html[data-aa-colour-scheme="dark"] .aau-flash--info {
    background: #183746;
    border-color: #3c718c;
    color: #d7edf7;
}

html[data-aa-colour-scheme="dark"] .aau-field input,
html[data-aa-colour-scheme="dark"] .aau-field select,
html[data-aa-colour-scheme="dark"] .aau-field textarea {
    background: #101b22;
    border-color: #526c7a;
    color: #e8f1f5;
}

html[data-aa-colour-scheme="dark"] .aau-badge--primary { background: #21465a; color: #c8ebfc; }
html[data-aa-colour-scheme="dark"] .aau-badge--info { background: #263d60; color: #d6e5ff; }
html[data-aa-colour-scheme="dark"] .aau-badge--success { background: #183e2a; color: #c9f2dc; }
html[data-aa-colour-scheme="dark"] .aau-badge--warning { background: #49371a; color: #ffe1ad; }
html[data-aa-colour-scheme="dark"] .aau-badge--danger { background: #4a2529; color: #ffdadd; }
html[data-aa-colour-scheme="dark"] .aau-badge--neutral { background: #293943; color: #d8e3e8; }
html[data-aa-colour-scheme="dark"] .aau-calendar__event { background: #203b49; }
html[data-aa-colour-scheme="dark"] .aau-calendar__event--important { background: #46351e; }
html[data-aa-colour-scheme="dark"] .aau-calendar__event--urgent { background: #48272a; }

html[dir="rtl"] .aau-calendar__event {
    border-inline-start-width: 3px;
}

html[dir="rtl"] .aau-update-card footer .aau-card-link,
html[dir="rtl"] .aau-form-actions__help,
html[dir="rtl"] .aau-acknowledge > div {
    margin-inline-end: 0;
    margin-inline-start: auto;
}

html[data-aa-motion="reduced"] .aau-button,
html[data-aa-motion="reduced"] .aau-update-card,
html[data-aa-motion="reduced"] .aau-overview__tile,
html[data-aa-motion="reduced"] .aau-form-actions--floating {
    transition: none;
}

@media (prefers-reduced-motion: reduce) {
    .aau-button,
    .aau-update-card,
    .aau-overview__tile,
    .aau-form-actions--floating {
        transition: none;
    }
}

@media (max-width: 980px) {
    .aau-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aau-table-wrap {
        background: transparent;
        border: 0;
        overflow: visible;
    }

    .aau-table,
    .aau-table tbody,
    .aau-table tr,
    .aau-table td {
        display: block;
        min-width: 0;
        width: 100%;
    }

    .aau-table thead {
        display: none;
    }

    .aau-table tbody {
        display: grid;
        gap: .85rem;
    }

    .aau-table tr {
        background: var(--aau-surface);
        border: 1px solid var(--aau-border);
        border-radius: 13px;
        overflow: hidden;
    }

    .aau-table td {
        align-items: start;
        border-top: 1px solid var(--aau-border);
        display: grid;
        gap: .75rem;
        grid-template-columns: minmax(105px, 130px) 1fr;
        padding: .72rem .85rem;
    }

    .aau-table td:first-child {
        border-top: 0;
    }

    .aau-table td::before {
        color: var(--aau-muted);
        content: attr(data-label);
        font-size: .7rem;
        font-weight: 800;
        letter-spacing: .03em;
        text-transform: uppercase;
    }

    .aau-table-title,
    .aau-row-actions {
        min-width: 0;
    }

    .aau-table-date {
        white-space: normal;
    }
}

@media (max-width: 760px) {
    .aau-page {
        gap: 1rem;
    }

    .aau-hero {
        align-items: flex-start;
        border-radius: 14px;
        flex-direction: column;
        padding: 1.1rem;
    }

    .aau-hero__actions {
        justify-content: flex-start;
        width: 100%;
    }

    .aau-hero__actions .aau-button {
        flex: 1 1 auto;
    }

    .aau-filterbar {
        flex-wrap: nowrap;
        margin-inline: -2px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }

    .aau-filterbar a {
        flex: 0 0 auto;
    }

    .aau-results-heading,
    .aau-calendar-summary,
    .aau-detail-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aau-type-picker__grid,
    .aau-visibility-picker__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aau-form-grid--2,
    .aau-form-grid--3 {
        grid-template-columns: 1fr;
    }

    .aau-form-card {
        padding: 1rem;
    }

    .aau-form-actions:not(.aau-form-actions--floating) {
        align-items: stretch;
        box-shadow: none;
        flex-direction: column;
    }

    .aau-form-actions__help {
        margin: 0 0 .25rem;
        max-width: none;
    }

    .aau-form-actions:not(.aau-form-actions--floating) .aau-button {
        width: 100%;
    }

    .aau-form-actions--floating {
        bottom: calc(4.75rem + env(safe-area-inset-bottom));
        display: grid;
        gap: .4rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: calc(100vw - 1rem);
        padding: .55rem;
        width: calc(100vw - 1rem);
    }

    .aau-form-actions--floating .aau-button {
        min-width: 0;
        padding-inline: .55rem;
        width: 100%;
    }

    .aau-form-actions--floating .aau-button:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .aau-calendar {
        display: none;
    }

    .aau-calendar-legend {
        display: none;
    }

    .aau-agenda {
        background: var(--aau-surface);
        border: 1px solid var(--aau-border);
        border-radius: 14px;
        display: block;
        overflow: hidden;
    }

    .aau-agenda > header {
        border-bottom: 1px solid var(--aau-border);
        padding: 1rem;
    }

    .aau-agenda h3 {
        margin: 0;
    }

    .aau-agenda__list {
        display: grid;
    }

    .aau-agenda__item {
        align-items: center;
        border-top: 1px solid var(--aau-border);
        display: grid;
        gap: .75rem;
        grid-template-columns: 52px 1fr auto;
        min-height: 84px;
        padding: .75rem;
        text-decoration: none;
    }

    .aau-agenda__item:first-child {
        border-top: 0;
    }

    .aau-agenda__item > time {
        align-items: center;
        background: var(--aau-primary-soft);
        border-radius: 10px;
        color: var(--aau-primary);
        display: flex;
        flex-direction: column;
        height: 52px;
        justify-content: center;
        width: 52px;
    }

    .aau-agenda__item > time strong {
        font-size: 1.15rem;
        line-height: 1;
    }

    .aau-agenda__item > time span {
        font-size: .68rem;
        font-weight: 800;
        text-transform: uppercase;
    }

    .aau-agenda__body {
        display: grid;
        gap: .25rem;
        min-width: 0;
    }

    .aau-agenda__meta {
        display: flex;
        flex-wrap: wrap;
        gap: .25rem;
    }

    .aau-agenda__body small {
        color: var(--aau-muted);
    }

    .aau-agenda__empty {
        color: var(--aau-muted);
        padding: 1.25rem;
    }

    .aau-detail > header,
    .aau-detail__content,
    .aau-admin-summary,
    .aau-detail__actions,
    .aau-acknowledge {
        padding: 1rem;
    }

    .aau-detail__actions,
    .aau-acknowledge {
        align-items: stretch;
        flex-direction: column;
    }

    .aau-acknowledge > div {
        margin: 0 0 .25rem;
    }

    .aau-detail__actions .aau-button,
    .aau-acknowledge .aau-button {
        width: 100%;
    }

    .aau-event-facts {
        grid-template-columns: 1fr;
    }

    .aau-dashboard-card > header {
        align-items: flex-start;
    }

    .aau-dashboard-stats a {
        padding: .75rem .35rem;
    }

    .aau-dashboard-events > a {
        grid-template-columns: 1fr auto;
    }

    .aau-dashboard-events > a time {
        grid-column: 1 / -1;
    }
}

@media (max-width: 520px) {
    .aau-overview {
        grid-template-columns: 1fr;
    }

    .aau-type-picker__grid,
    .aau-visibility-picker__grid {
        grid-template-columns: 1fr;
    }

    .aau-calendar-toolbar a {
        font-size: .78rem;
        padding: .5rem .55rem;
    }

    .aau-table td {
        gap: .35rem;
        grid-template-columns: 1fr;
    }

    .aau-table td::before {
        margin-bottom: .15rem;
    }

    .aau-dashboard-card > header {
        flex-direction: column;
    }

    .aau-dashboard-card > header .aau-button {
        width: 100%;
    }
}

@media print {
    .aau-hero__actions,
    .aau-filterbar,
    .aau-calendar-toolbar,
    .aau-detail-toolbar,
    .aau-detail__actions,
    .aau-acknowledge,
    .aau-form-actions {
        display: none !important;
    }

    .aau-page,
    .aau-detail,
    .aau-update-card {
        background: #fff !important;
        color: #000 !important;
    }

    .aau-detail,
    .aau-update-card {
        break-inside: avoid;
        box-shadow: none !important;
    }
}


/* 0.3.00 category management */
.aau-category-layout {
    align-items: start;
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
}

.aau-category-list {
    display: grid;
    gap: .8rem;
}

.aau-category-name {
    align-items: center;
    display: flex;
    gap: .7rem;
}

.aau-category-name strong,
.aau-category-name small {
    display: block;
}

.aau-category-name small {
    color: var(--aau-muted);
    margin-top: .15rem;
}

.aau-category-swatch {
    background: var(--aau-category-color, var(--aau-primary));
    border: 2px solid rgba(255,255,255,.85);
    border-radius: 999px;
    box-shadow: 0 0 0 1px var(--aau-border);
    flex: 0 0 18px;
    height: 18px;
    width: 18px;
}

@media (max-width: 900px) {
    .aau-category-layout { grid-template-columns: 1fr; }
}

/* ========================================================================
   0.4.01 — Collapsible authoring sections and TinyMCE theme isolation
   ======================================================================== */

.aau-collapsible {
    padding: 0;
}

.aau-collapsible > summary {
    list-style: none;
}

.aau-collapsible > summary::-webkit-details-marker {
    display: none;
}

.aau-collapsible__summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: .75rem;
    min-height: 76px;
    padding: 1rem 1.25rem;
    user-select: none;
}

.aau-collapsible__summary:hover {
    background: var(--aau-surface-soft);
}

.aau-collapsible__summary:focus-visible {
    border-radius: 14px;
    box-shadow: var(--aau-focus-shadow);
    outline: 0;
}

.aau-collapsible__heading {
    display: grid;
    flex: 1 1 auto;
    gap: .12rem;
    min-width: 0;
}

.aau-collapsible__heading strong {
    color: var(--aau-text);
    font-size: 1rem;
    line-height: 1.3;
}

.aau-collapsible__heading small,
.aau-collapsible__intro {
    color: var(--aau-muted);
    font-size: .78rem;
    line-height: 1.45;
}

.aau-collapsible__state {
    color: var(--aau-primary);
    flex: 0 0 auto;
    font-size: .76rem;
    font-weight: 800;
}

.aau-collapsible__chevron {
    border-color: currentColor;
    border-style: solid;
    border-width: 0 2px 2px 0;
    color: var(--aau-muted);
    flex: 0 0 auto;
    height: 9px;
    transform: rotate(45deg);
    transition: transform .16s ease;
    width: 9px;
}

.aau-collapsible[open] .aau-collapsible__chevron {
    transform: rotate(225deg);
}

.aau-collapsible__content {
    border-top: 1px solid var(--aau-border);
    padding: 1rem 1.25rem 1.25rem;
}

.aau-collapsible__intro {
    margin: 0 0 1rem;
}

/*
 * The Al-Amal theme intentionally styles all #content buttons. TinyMCE also
 * renders its toolbar with buttons, so those broad rules add padding, borders
 * and minimum heights that compress the SVG icons. Reset only this module's
 * editor controls, leaving the theme and all other Gibbon editors untouched.
 */
body.aa-app #content .aau-field--editor .tox button.tox-tbtn,
body.aa-app #content .aau-field--editor .tox .tox-split-button button,
body.aa-app #content .aau-field--editor .tox button.tox-mbtn {
    background: transparent !important;
    border: 0 !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    color: inherit !important;
    display: inline-flex !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin: 0 !important;
    min-height: 34px !important;
    min-width: 34px !important;
    padding: 0 4px !important;
    transform: none !important;
}

body.aa-app #content .aau-field--editor .tox button.tox-tbtn:hover,
body.aa-app #content .aau-field--editor .tox button.tox-tbtn:focus,
body.aa-app #content .aau-field--editor .tox .tox-split-button button:hover,
body.aa-app #content .aau-field--editor .tox button.tox-mbtn:hover {
    background: rgba(34, 47, 62, .08) !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.aa-app #content .aau-field--editor .tox button.tox-tbtn.tox-tbtn--enabled,
body.aa-app #content .aau-field--editor .tox button.tox-tbtn[aria-pressed="true"] {
    background: rgba(37, 95, 133, .14) !important;
}

body.aa-app #content .aau-field--editor .tox .tox-icon,
body.aa-app #content .aau-field--editor .tox .tox-tbtn__icon-wrap {
    align-items: center;
    display: inline-flex;
    height: 24px !important;
    justify-content: center;
    width: 24px !important;
}

body.aa-app #content .aau-field--editor .tox .tox-icon svg,
body.aa-app #content .aau-field--editor .tox .tox-tbtn svg {
    display: block !important;
    height: 24px !important;
    max-height: 24px !important;
    max-width: none !important;
    width: 24px !important;
}

body.aa-app #content .aau-field--editor .tox .tox-tbtn__select-label {
    color: inherit !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 4px !important;
    max-width: 12rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.aa-app #content .aau-field--editor .tox .tox-toolbar,
body.aa-app #content .aau-field--editor .tox .tox-toolbar__overflow,
body.aa-app #content .aau-field--editor .tox .tox-toolbar__primary {
    align-items: center;
}

body.aa-app #content .aau-field--editor .tox .tox-toolbar__group {
    padding: 0 3px !important;
}

html[data-aa-colour-scheme="dark"] .aau-collapsible__summary:hover {
    background: #1e3440;
}

html[data-aa-colour-scheme="dark"] body.aa-app #content .aau-field--editor .tox button.tox-tbtn:hover,
html[data-aa-colour-scheme="dark"] body.aa-app #content .aau-field--editor .tox button.tox-tbtn:focus,
html[data-aa-colour-scheme="dark"] body.aa-app #content .aau-field--editor .tox .tox-split-button button:hover,
html[data-aa-colour-scheme="dark"] body.aa-app #content .aau-field--editor .tox button.tox-mbtn:hover {
    background: rgba(255, 255, 255, .1) !important;
}

@media (max-width: 640px) {
    .aau-collapsible__summary {
        align-items: flex-start;
        min-height: 68px;
        padding: .9rem;
    }

    .aau-collapsible__content {
        padding: .9rem;
    }

    .aau-collapsible__heading small,
    .aau-collapsible__state {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-collapsible__chevron {
        transition: none;
    }
}

/* Private event attachments and print actions (v0.5.00). */
/* 0.14.12 — UX Phase C: authoring workspace */
.aau-file-dropzone {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px dashed var(--comm-border-strong);
    border-radius: var(--comm-radius-lg);
    cursor: pointer;
    display: grid;
    gap: .65rem 1rem;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    padding: 1rem;
    transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.aau-file-dropzone:hover,
.aau-file-dropzone:focus-within,
.aau-file-dropzone.has-files {
    background: color-mix(in srgb, var(--comm-primary) 5%, var(--comm-surface));
    border-color: var(--comm-primary-border);
}

.aau-file-dropzone__icon {
    align-items: center;
    background: var(--comm-primary-soft);
    border: 1px solid var(--comm-primary-border);
    border-radius: 12px;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    position: relative;
    width: 44px;
}

.aau-file-dropzone__icon::before {
    border: 2px solid var(--comm-primary);
    border-radius: 4px;
    content: "";
    height: 18px;
    width: 15px;
}

.aau-file-dropzone__icon::after {
    background: var(--comm-primary);
    border-radius: 999px;
    box-shadow: -4px 4px 0 -1px var(--comm-surface-soft);
    content: "";
    height: 2px;
    position: absolute;
    transform: rotate(-45deg);
    width: 9px;
}

.aau-file-dropzone__copy {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

.aau-file-dropzone__copy b {
    color: var(--comm-text);
    font-size: .82rem;
}

.aau-file-dropzone__copy small {
    color: var(--comm-text-muted);
    line-height: 1.4;
}

.aau-file-dropzone input[type="file"] {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-control);
    color: var(--comm-text-muted);
    cursor: pointer;
    max-width: 280px;
    min-height: 42px;
    padding: .35rem;
}

.aau-file-dropzone input[type="file"]::file-selector-button {
    background: var(--comm-surface-raised);
    border: 1px solid var(--comm-border);
    border-radius: 7px;
    color: var(--comm-text);
    cursor: pointer;
    font: inherit;
    font-size: .72rem;
    font-weight: 800;
    margin-inline-end: .5rem;
    min-height: 30px;
    padding: .32rem .55rem;
}

.aau-file-selection {
    color: var(--comm-primary-hover);
    font-size: .72rem;
    font-weight: 700;
    grid-column: 2 / -1;
    overflow-wrap: anywhere;
}

.aau-authoring-actions {
    border-color: color-mix(in srgb, var(--comm-border) 80%, var(--comm-primary));
}

.aau-authoring-actions .aau-button:last-child {
    box-shadow: 0 6px 18px color-mix(in srgb, var(--comm-primary) 20%, transparent);
}

.aau-authoring-form .aau-field--editor .tox-tinymce {
    border-color: var(--comm-border-strong);
    border-radius: var(--comm-radius-md);
    overflow: hidden;
}

.aau-authoring-form .aau-scope-panel {
    border-radius: var(--comm-radius-lg);
}

.aau-attachment-upload {
    display: grid;
    gap: 1rem;
}

.aau-field input[type="file"] {
    background: var(--aau-surface);
    border: 1px dashed var(--aau-border-strong, var(--aau-border));
    border-radius: 10px;
    cursor: pointer;
    min-height: 48px;
    padding: .65rem;
}

.aau-field input[type="file"]::file-selector-button {
    background: var(--aau-primary);
    border: 0;
    border-radius: 7px;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
    margin-inline-end: .75rem;
    min-height: 36px;
    padding: .45rem .8rem;
}

.aau-file-selection {
    color: var(--aau-primary);
    display: block;
    font-size: .78rem;
    font-weight: 700;
    min-height: 1.1rem;
}

.aau-attachment-manage {
    border: 0;
    margin: 0;
    padding: 0;
}

.aau-attachment-manage legend {
    color: var(--aau-text);
    font-size: .82rem;
    font-weight: 800;
    margin-bottom: .55rem;
}

.aau-attachment-manage__list,
.aau-attachments__list {
    display: grid;
    gap: .65rem;
}

.aau-attachment-manage__item,
.aau-attachment {
    align-items: center;
    background: var(--aau-surface-soft, rgba(37, 95, 133, .04));
    border: 1px solid var(--aau-border);
    border-radius: 10px;
    color: var(--aau-text);
    display: grid;
    gap: .75rem;
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    min-height: 54px;
    padding: .7rem .8rem;
    text-decoration: none;
}

.aau-attachment {
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.aau-attachment:hover,
.aau-attachment:focus-visible {
    border-color: var(--aau-primary);
    box-shadow: 0 0 0 3px rgba(37, 95, 133, .12);
    text-decoration: none;
}

.aau-attachment-manage__item input {
    height: 20px;
    margin: 0;
    width: 20px;
}

.aau-attachment-icon {
    align-items: center;
    background: rgba(37, 95, 133, .12);
    border-radius: 7px;
    color: var(--aau-primary);
    display: inline-flex;
    font-size: .64rem;
    font-weight: 900;
    height: 34px;
    justify-content: center;
    letter-spacing: .02em;
    min-width: 38px;
    padding: 0 .35rem;
}

.aau-attachment-manage__item b,
.aau-attachment__text b {
    display: block;
    overflow-wrap: anywhere;
}

.aau-attachment-manage__item small,
.aau-attachment__text small {
    color: var(--aau-muted);
    display: block;
    font-size: .75rem;
    margin-top: .15rem;
}

.aau-attachment__action {
    color: var(--aau-primary);
    font-size: 1.15rem;
    font-weight: 900;
}

.aau-attachments {
    border-top: 1px solid var(--aau-border);
    margin-top: 1.5rem;
    padding-top: 1.25rem;
}

.aau-attachments__header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: .8rem;
}

.aau-attachments__header h3,
.aau-attachments__header p {
    margin: 0;
}

.aau-attachments__header > span {
    align-items: center;
    background: var(--aau-primary);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 800;
    height: 26px;
    justify-content: center;
    min-width: 26px;
    padding: 0 .45rem;
}

.aau-form-note--compact {
    margin: 0;
}

.aau-print-link {
    cursor: pointer;
}

@media (max-width: 640px) {
    .aau-attachment-manage__item,
    .aau-attachment {
        gap: .55rem;
        padding: .65rem;
    }
}

/* ========================================================================
   0.6.00 — Dashboard, event lifecycle and visual polish
   ======================================================================== */

.aau-page,
.aau-dashboard-card {
    font-family: inherit;
}

body.aa-app #content .aau-field--editor .tox button.tox-tbtn,
body.aa-app #content .aau-field--editor .tox .tox-split-button button,
body.aa-app #content .aau-field--editor .tox button.tox-mbtn {
    font-family: inherit !important;
}

.aau-page a,
.aau-dashboard-card a {
    text-decoration-thickness: .08em;
    text-underline-offset: .18em;
}

.aau-dashboard-card h2 a {
    color: inherit;
    text-decoration: none;
}

.aau-dashboard-card h2 a:hover,
.aau-dashboard-card h2 a:focus-visible {
    color: var(--aau-primary);
    text-decoration: underline;
}

.aau-dashboard-pin {
    background: var(--comm-primary-soft);
    border: 1px solid var(--comm-primary-border);
    border-radius: 999px;
    color: var(--aau-primary-dark);
    display: inline-flex;
    font-size: .62rem;
    font-weight: 850;
    margin-inline-end: .4rem;
    padding: .12rem .42rem;
    text-transform: uppercase;
}

.aau-badge--featured {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover);
}

.aau-button--danger {
    background: var(--comm-danger);
    border-color: var(--comm-danger);
    color: #fff !important;
}

.aau-button--danger:hover {
    background: color-mix(in srgb, var(--comm-danger) 82%, #000);
    border-color: color-mix(in srgb, var(--comm-danger) 82%, #000);
}

.aau-search-panel {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow: clip;
}

.aau-search-panel > summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-weight: 800;
    gap: .65rem;
    list-style: none;
    min-height: 52px;
    padding: .75rem 1rem;
}

.aau-search-panel > summary::-webkit-details-marker {
    display: none;
}

.aau-search-panel > summary > span:first-child {
    flex: 1 1 auto;
}

.aau-search-panel[open] > summary {
    border-bottom: 1px solid var(--aau-border);
}

.aau-search-panel[open] .aau-collapsible__chevron {
    transform: rotate(225deg);
}

.aau-search-form {
    display: grid;
    gap: .9rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 1rem;
}

.aau-search-actions {
    align-items: end;
    display: flex;
    gap: .55rem;
    justify-content: flex-end;
}

.aau-table tr.is-pinned td:first-child {
    box-shadow: inset 4px 0 0 var(--aau-primary);
}

.aau-table-markers {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    margin-top: .35rem;
}

.aau-event-alert {
    align-items: flex-start;
    border: 1px solid;
    border-radius: 14px;
    display: flex;
    gap: .8rem;
    padding: 1rem 1.1rem;
}

.aau-event-alert strong,
.aau-event-alert span {
    display: block;
}

.aau-event-alert span {
    margin-top: .2rem;
}

.aau-event-alert--cancelled {
    background: #fff0f0;
    border-color: #efb0b2;
    color: #8d252b;
}

.aau-event-alert--rescheduled {
    background: #eef7fb;
    border-color: #abd2e7;
    color: #1e5776;
}

.aau-decision-card {
    max-width: 900px;
    width: 100%;
}

.aau-decision-card > header {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.aau-attachment-gallery {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    margin-bottom: .9rem;
}

.aau-attachment-preview {
    background: var(--aau-surface-soft);
    border: 1px solid var(--aau-border);
    border-radius: 12px;
    color: var(--aau-text);
    display: grid;
    overflow: hidden;
    text-decoration: none;
}

.aau-attachment-preview img {
    aspect-ratio: 16 / 10;
    background: var(--aau-surface-soft);
    display: block;
    object-fit: cover;
    width: 100%;
}

.aau-attachment-preview span {
    display: grid;
    gap: .15rem;
    padding: .65rem .75rem;
}

.aau-attachment-preview b {
    overflow-wrap: anywhere;
}

.aau-attachment-preview small {
    color: var(--aau-muted);
}

.aau-attachment-preview:hover,
.aau-attachment-preview:focus-visible {
    border-color: var(--aau-primary);
    box-shadow: var(--aau-focus-shadow);
    text-decoration: none;
}

.aau-update-card.is-pinned {
    border-color: var(--aau-primary);
    box-shadow: var(--aau-shadow);
}

html[data-aa-colour-scheme="dark"] .aau-event-alert--cancelled {
    background: #4a2529;
    border-color: #7b3940;
    color: #ffdadd;
}

html[data-aa-colour-scheme="dark"] .aau-event-alert--rescheduled {
    background: #21465a;
    border-color: #376b84;
    color: #d5effc;
}

@media (max-width: 900px) {
    .aau-search-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .aau-search-form {
        grid-template-columns: 1fr;
        padding: .8rem;
    }

    .aau-search-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .aau-search-actions .aau-button {
        width: 100%;
    }

    .aau-decision-card > header {
        flex-direction: column;
    }

    .aau-attachment-gallery {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 430px) {
    .aau-attachment-gallery {
        grid-template-columns: 1fr;
    }
}

/* 0.6.03 — Configurable compact Events agenda with reliable home-dashboard positioning. */
.aau-dashboard-card--compact {
    margin: 0 0 18px;
    width: 100%;
}

.aau-dashboard-mini-header {
    align-items: center;
    background: var(--aau-surface) !important;
    border-bottom: 1px solid var(--aau-border);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    min-height: 52px;
    padding: .7rem 1rem !important;
}

.aau-dashboard-mini-header h2 {
    font-size: .96rem;
    font-weight: 800;
    letter-spacing: -.01em;
    line-height: 1.2;
    margin: 0 !important;
}

.aau-dashboard-mini-header h2 a {
    color: var(--aau-text) !important;
    text-decoration: none !important;
}

.aau-dashboard-mini-header h2 a:hover,
.aau-dashboard-mini-header h2 a:focus-visible,
.aau-dashboard-mini-header nav a:hover,
.aau-dashboard-mini-header nav a:focus-visible {
    color: var(--aau-primary) !important;
}

.aau-dashboard-mini-header nav {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .8rem;
}

.aau-dashboard-mini-header nav a {
    color: var(--aau-primary) !important;
    font-size: .76rem;
    font-weight: 800;
    min-height: 32px;
    padding: .35rem .15rem;
    text-decoration: none !important;
}

.aau-dashboard-mini-grid {
    background: var(--aau-surface);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: .55rem .75rem .7rem;
}

.aau-dashboard-mini-event {
    align-items: center;
    border-radius: 10px;
    color: var(--aau-text) !important;
    display: grid;
    gap: .75rem;
    grid-template-columns: 48px minmax(0, 1fr);
    min-height: 66px;
    padding: .45rem .55rem;
    text-decoration: none !important;
}

.aau-dashboard-mini-event:hover,
.aau-dashboard-mini-event:focus-visible {
    background: var(--aau-surface-soft);
}

.aau-dashboard-mini-date {
    align-content: center;
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    display: grid;
    height: 52px;
    justify-items: center;
    line-height: 1;
    width: 48px;
}

.aau-dashboard-mini-date strong {
    color: var(--aau-text);
    font-size: 1.05rem;
    font-weight: 850;
}

.aau-dashboard-mini-date span {
    color: var(--aau-primary);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .08em;
    margin-top: .22rem;
}

.aau-dashboard-mini-copy {
    display: grid;
    gap: .28rem;
    min-width: 0;
}

.aau-dashboard-mini-title {
    align-items: center;
    color: var(--aau-text);
    display: flex;
    font-size: .78rem;
    font-weight: 850;
    gap: .4rem;
    line-height: 1.28;
    min-width: 0;
    overflow-wrap: anywhere;
    text-transform: uppercase;
}

.aau-dashboard-mini-copy small {
    color: var(--aau-muted);
    font-size: .69rem;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aau-dashboard-mini-pin {
    background: var(--aau-warning);
    border-radius: 999px;
    flex: 0 0 auto;
    height: 8px;
    width: 8px;
}

.aau-dashboard-mini-empty {
    color: var(--aau-muted);
    font-size: .78rem;
    padding: .85rem 1rem;
}

body.aa-home-page .aau-dashboard-card--home {
    display: block !important;
    isolation: isolate;
    margin: 0 0 18px !important;
    min-height: 0 !important;
    position: relative;
    width: 100%;
    z-index: 3;
}

body.aa-home-page .aau-dashboard-card--home + .aa-quick-actions,
body.aa-home-page .aa-quick-actions {
    margin-top: 0 !important;
}

body.aa-home-page .aau-dashboard-card--home a[data-aau-dashboard-link] {
    pointer-events: auto !important;
    position: relative;
    z-index: 1;
}

body.aa-dashboard-compact .aau-dashboard-mini-header {
    min-height: 48px;
    padding-block: .6rem !important;
}

body.aa-dashboard-compact .aau-dashboard-mini-grid {
    padding-block: .45rem .55rem;
}

html[data-aa-colour-scheme="dark"] .aau-dashboard-mini-date {
    background: var(--aau-surface-soft);
}

@media (max-width: 980px) {
    .aau-dashboard-mini-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .aau-dashboard-mini-header {
        align-items: flex-start;
        flex-direction: column;
        gap: .25rem;
    }

    .aau-dashboard-mini-grid {
        grid-template-columns: 1fr;
        padding-inline: .55rem;
    }

    .aau-dashboard-mini-event {
        min-height: 60px;
    }
}

/* 0.6.04 — Stable home integration: Events shares the Quick Actions shell. */
body.aa-home-page .aa-quick-actions > .aau-dashboard-card--home.aau-dashboard-card--embedded {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--aau-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
    isolation: auto;
    margin: 0 0 14px !important;
    min-height: 0 !important;
    overflow: visible;
    padding: 0 0 14px !important;
    position: relative;
    width: 100%;
    z-index: auto;
}

body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded .aau-dashboard-mini-header {
    background: transparent !important;
    border: 0;
    min-height: 0;
    padding: 0 0 .55rem !important;
}

body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded .aau-dashboard-mini-grid {
    background: transparent;
    padding: 0;
}

body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded .aau-dashboard-mini-event {
    min-height: 62px;
    padding-block: .35rem;
}

body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded a[data-aau-dashboard-link] {
    pointer-events: auto !important;
    position: relative;
    z-index: 2;
}

body.aa-home-page .aau-dashboard-card--home.aau-dashboard-card--fallback {
    margin: 0 0 18px !important;
}

@media (max-width: 620px) {
    body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded {
        margin-bottom: 12px !important;
        padding-bottom: 12px !important;
    }
}

/* 0.6.05 dashboard content controls */
.aau-settings-list--dashboard {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 1rem;
}

.aau-settings-hint {
    color: var(--aau-muted);
    font-size: .82rem;
    margin: .8rem 0 0;
}

.aau-dashboard-mini-event--update .aau-dashboard-mini-date { border-color: var(--aau-primary); }
.aau-dashboard-mini-event--weekly-preview .aau-dashboard-mini-date { border-color: var(--aau-success); }
.aau-dashboard-mini-event--monthly-plan .aau-dashboard-mini-date { border-color: var(--aau-warning); }
.aau-dashboard-mini-event--event .aau-dashboard-mini-date { border-color: var(--aau-primary); }

@media (max-width: 760px) {
    .aau-settings-list--dashboard { grid-template-columns: 1fr; }
}

/* 0.7.01 — visibility-first authoring and independent email audience */
.aau-scope-card {
    border-color: color-mix(in srgb, var(--aau-primary) 24%, var(--aau-border));
}

.aau-scope-panel {
    display: grid;
    gap: 0.9rem;
    padding: 1rem;
    border: 1px solid var(--aau-border);
    border-radius: var(--aau-radius, 12px);
    background: var(--aau-surface-soft);
}

.aau-scope-panel__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.aau-scope-panel__heading b,
.aau-choice-fieldset legend {
    color: var(--aau-text);
    font-weight: 750;
}

.aau-scope-panel__heading small {
    display: block;
    margin-top: 0.2rem;
    color: var(--aau-muted);
}

.aau-email-recipient-options {
    display: grid;
    gap: 0.9rem;
}

.aau-choice-fieldset {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.7rem;
    margin: 0;
    padding: 0;
    border: 0;
}

.aau-choice-fieldset legend {
    grid-column: 1 / -1;
    margin-bottom: 0.2rem;
}

.aau-choice-option {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    min-height: 44px;
    padding: 0.8rem;
    border: 1px solid var(--aau-border);
    border-radius: calc(var(--aau-radius, 12px) - 2px);
    background: var(--aau-surface);
    cursor: pointer;
}

.aau-choice-option:has(input:checked) {
    border-color: var(--aau-primary);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--aau-primary) 16%, transparent);
}

.aau-choice-option input {
    margin-top: 0.2rem;
}

.aau-choice-option span {
    display: grid;
    gap: 0.15rem;
}

.aau-choice-option small {
    color: var(--aau-muted);
}

[data-aau-public-everyone-note][hidden],
[data-aau-private-audience][hidden],
[data-aau-email-options][hidden],
[data-aau-email-group-audience][hidden],
[data-aau-email-same-option][hidden] {
    display: none !important;
}

@media (max-width: 900px) {
    .aau-choice-fieldset {
        grid-template-columns: 1fr;
    }
}

[data-aau-email-all-option][hidden] {
    display: none !important;
}

.aau-audience-option.is-disabled {
    opacity: 0.5;
    cursor: not-allowed;
}


/* 0.7.02 — contextual public/private authoring */
.aau-context-content[hidden] { display: none !important; }
.aau-context-content--private { border-inline-start: 3px solid var(--aau-primary); }
.aau-context-content--public { border-inline-start: 3px solid var(--aau-warning); }
.aau-context-content--public.is-hybrid-content { border-inline-start-color: var(--aau-primary); }
.aau-public-remove-choice {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: var(--aau-danger);
    font-size: .82rem;
    font-weight: 700;
}
.aau-public-remove-choice input { width: 1rem; height: 1rem; }


/* --------------------------------------------------------------------------
   0.9.00 Phase 1 — production readiness and current Al-Amal theme alignment
   -------------------------------------------------------------------------- */

.aau-page {
    width: 100%;
}

.aau-page .aau-button,
.aau-dashboard-card .aau-button {
    min-height: 44px;
    border-radius: var(--comm-radius-control);
    font-weight: 700;
    line-height: 1.2;
}

.aau-page .aau-button:not(.aau-button--secondary):not(.aau-button--danger):not(.aau-button--quiet) {
    background-color: var(--comm-primary);
    border-color: var(--comm-primary);
    color: #fff !important;
}

.aau-page .aau-button--secondary {
    background-color: var(--comm-surface);
    border-color: var(--comm-border-strong);
    color: var(--comm-primary) !important;
}

.aau-page input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.aau-page select,
.aau-page textarea {
    background-color: var(--comm-surface);
    border-color: var(--comm-border-strong);
    border-radius: var(--comm-radius-control);
    color: var(--comm-text);
    min-height: 44px;
}

.aau-page textarea {
    min-height: 7rem;
}

.aau-health-summary {
    align-items: center;
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-left-width: 4px;
    border-radius: var(--aau-radius-lg);
    box-shadow: var(--aau-shadow);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1.15rem 1.25rem;
}

.aau-health-summary h3,
.aau-health-card h3,
.aau-health-details h3 {
    margin: 0;
}

.aau-health-summary p:not(.aau-eyebrow),
.aau-health-card p {
    color: var(--aau-muted);
    margin: .4rem 0 0;
}

.aau-health-summary--ready { border-left-color: var(--aau-success); }
.aau-health-summary--warning { border-left-color: var(--aau-warning); }
.aau-health-summary--critical { border-left-color: var(--aau-danger); }

.aau-health-grid {
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-health-card {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-left-width: 4px;
    border-radius: var(--aau-radius);
    box-shadow: var(--aa-shadow-xs, 0 4px 14px rgba(31, 35, 48, .04));
    min-width: 0;
    padding: 1rem 1.05rem;
}

.aau-health-card header {
    align-items: center;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
}

.aau-health-card--ready { border-left-color: var(--aau-success); }
.aau-health-card--warning { border-left-color: var(--aau-warning); }
.aau-health-card--critical { border-left-color: var(--aau-danger); }

.aau-health-table {
    border: 1px solid var(--aau-border);
    border-radius: var(--aau-radius);
    overflow: hidden;
}

.aau-health-table__row {
    align-items: start;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(12rem, .8fr) minmax(0, 1.7fr);
    padding: .72rem .9rem;
}

.aau-health-table__row + .aau-health-table__row {
    border-top: 1px solid var(--aau-border);
}

.aau-health-table__row span {
    color: var(--aau-muted);
    min-width: 0;
    overflow-wrap: anywhere;
}

html[data-aa-colour-scheme="dark"] .aau-health-summary,
html[data-aa-colour-scheme="dark"] .aau-health-card,
html[data-aa-colour-scheme="dark"] .aau-health-table {
    background: var(--aa-surface, var(--aau-surface));
}

@media (max-width: 800px) {
    .aau-health-grid {
        grid-template-columns: 1fr;
    }

    .aau-health-summary,
    .aau-health-card header {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-health-table__row {
        grid-template-columns: 1fr;
        gap: .25rem;
    }
}

@media (forced-colors: active) {
    .aau-page .aau-button,
    .aau-page input,
    .aau-page select,
    .aau-page textarea,
    .aau-health-summary,
    .aau-health-card,
    .aau-health-table,
    .aau-form-card,
    .aau-hero {
        border: 1px solid CanvasText;
        box-shadow: none;
        forced-color-adjust: auto;
    }

    .aau-page .aau-button:focus-visible,
    .aau-page a:focus-visible,
    .aau-page input:focus-visible,
    .aau-page select:focus-visible,
    .aau-page textarea:focus-visible {
        outline: 2px solid Highlight;
        outline-offset: 2px;
    }
}

/* Al-Amal Communications 0.10.00 — Phase 2 Publishing & Delivery Reliability */
.aau-delivery-reliability {
    gap: 1rem;
}

.aau-health-metrics {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-health-metric {
    background: var(--aa-surface-muted, color-mix(in srgb, var(--aau-surface) 92%, var(--aau-primary) 8%));
    border: 1px solid var(--aau-border);
    border-radius: var(--aa-radius-control, 10px);
    display: grid;
    gap: .25rem;
    min-width: 0;
    padding: .8rem .9rem;
}

.aau-health-metric span {
    color: var(--aau-muted);
    font-size: .82rem;
    font-weight: 700;
}

.aau-health-metric strong {
    color: var(--aau-text);
    font-size: 1.05rem;
    overflow-wrap: anywhere;
}

.aau-reliability-list {
    border: 1px solid var(--aau-border);
    border-radius: var(--aau-radius);
    overflow: hidden;
}

.aau-reliability-list > h4 {
    margin: 0;
    padding: .9rem 1rem .15rem;
}

.aau-reliability-list > p {
    color: var(--aau-muted);
    margin: 0;
    padding: 0 1rem .75rem;
}

.aau-reliability-row {
    align-items: center;
    border-top: 1px solid var(--aau-border);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: .8rem 1rem;
}

.aau-reliability-row > div {
    display: grid;
    gap: .18rem;
    min-width: 0;
}

.aau-reliability-row span,
.aau-reliability-row small {
    color: var(--aau-muted);
    overflow-wrap: anywhere;
}

.aau-button--small {
    min-height: 34px !important;
    padding: .45rem .72rem !important;
    white-space: nowrap;
}

.aau-form-note--warning {
    border-left: 4px solid var(--aau-warning);
}

html[data-aa-colour-scheme="dark"] .aau-health-metric {
    background: var(--aa-surface-subtle, var(--aau-surface));
}

@media (max-width: 900px) {
    .aau-health-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .aau-health-metrics {
        grid-template-columns: 1fr;
    }

    .aau-reliability-row {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (forced-colors: active) {
    .aau-health-metric,
    .aau-reliability-list,
    .aau-reliability-row {
        border-color: CanvasText;
    }
}

/* Al-Amal Communications 0.12.01 — Visual Polish Hotfix
 * Cohesive spacing, cards, actions, calendar and public directory refinement.
 * Presentation-only: no workflow, permission or data behaviour changes.
 */
/* Shared spacing/radius/shadow aliases are defined in the 0.14.10 foundation token block above. */

/* Shared surface rhythm. */
.aau-page {
    gap: var(--aau-space-5);
}

.aau-hero {
    border-radius: var(--aau-radius-panel);
    box-shadow: var(--aau-shadow-card);
    padding: 1.35rem 1.5rem;
}

.aau-filterbar,
.aau-search-panel,
.aau-table-wrap,
.aau-detail,
.aau-form-card {
    border-color: color-mix(in srgb, var(--aau-border) 92%, var(--aau-primary) 8%);
}

.aau-filterbar {
    border-radius: 13px;
    padding: .35rem;
}

.aau-filterbar a {
    border: 1px solid transparent;
    min-height: 40px;
    padding: .5rem .72rem;
}

.aau-filterbar a:hover {
    background: color-mix(in srgb, var(--aau-primary-soft) 72%, var(--aau-surface) 28%);
}

.aau-filterbar a.is-active {
    background: var(--aau-primary-soft);
    border-color: color-mix(in srgb, var(--aau-primary) 16%, transparent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--aau-primary) 5%, transparent);
}

.aau-search-panel {
    border-radius: 12px;
    overflow: hidden;
}

.aau-search-panel > summary {
    min-height: 44px;
    padding-block: .72rem;
}

.aau-results-heading {
    margin-top: .15rem;
}

.aau-results-heading h3 {
    letter-spacing: -.01em;
}

/* Staff feed: comfortable cards, three columns on normal desktop widths. */
.aau-update-card {
    border-radius: var(--aau-radius-card);
    box-shadow: var(--aau-shadow-card);
    min-height: 225px;
    padding: 1.05rem 1.1rem;
}

.aau-update-card:hover,
.aau-update-card:focus-within {
    border-color: color-mix(in srgb, var(--aau-primary) 24%, var(--aau-border));
    box-shadow: var(--aau-shadow-hover);
    transform: translateY(-2px);
}

.aau-update-card.is-unread {
    border-inline-start: 4px solid var(--aau-primary);
}

.aau-update-card h3 {
    font-size: 1.08rem;
    letter-spacing: -.01em;
    margin: .58rem 0 .3rem;
}

.aau-update-card__date {
    color: color-mix(in srgb, var(--aau-primary) 82%, var(--aau-muted)) !important;
    font-size: .82rem;
}

.aau-update-card__excerpt {
    font-size: .9rem;
    line-height: 1.52;
    margin-block: .3rem .75rem;
}

.aau-update-card footer {
    gap: .45rem .65rem;
    padding-top: .72rem;
}

.aau-update-card footer .aau-card-link {
    border-radius: 7px;
    padding: .32rem .4rem;
}

@media (min-width: 1080px) and (max-width: 1699px) {
    .aau-page:not(.aau-public-page) > .aau-feed:not(.aau-feed--list) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1700px) {
    .aau-page:not(.aau-public-page) > .aau-feed:not(.aau-feed--list) {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Management table: quieter rows and one coherent compact action language. */
.aau-table-wrap {
    border-radius: 14px;
    box-shadow: var(--aau-shadow-card);
}

.aau-table thead th {
    background: color-mix(in srgb, var(--aau-primary-soft) 42%, var(--aau-surface) 58%);
    color: color-mix(in srgb, var(--aau-text) 82%, var(--aau-muted));
    font-size: .7rem;
    letter-spacing: .035em;
}

.aau-table tbody tr {
    transition: background-color .14s ease;
}

.aau-table tbody tr:hover {
    background: color-mix(in srgb, var(--aau-primary-soft) 30%, var(--aau-surface) 70%);
}

.aau-table td,
.aau-table th {
    border-color: color-mix(in srgb, var(--aau-border) 86%, transparent);
}

.aau-table-title {
    gap: .22rem;
}

.aau-table-title strong {
    line-height: 1.35;
}

.aau-table-title small {
    font-size: .76rem;
    line-height: 1.45;
}

.aau-row-actions {
    gap: .4rem;
    min-width: 240px;
}

body.aa-app #content .aau-row-actions .aau-row-action,
body.aa-app #content .aau-row-actions .aau-text-button,
.aau-row-actions .aau-row-action,
.aau-row-actions .aau-text-button {
    appearance: none;
    background: var(--aau-surface) !important;
    background-image: none !important;
    border: 1px solid var(--aau-border) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: var(--aau-primary) !important;
    font-size: .75rem !important;
    font-weight: 780 !important;
    line-height: 1.15 !important;
    min-height: 32px !important;
    padding: .4rem .58rem !important;
    text-shadow: none !important;
    transform: none !important;
    white-space: nowrap;
}

body.aa-app #content .aau-row-actions .aau-row-action:hover,
body.aa-app #content .aau-row-actions .aau-text-button:hover,
.aau-row-actions .aau-row-action:hover,
.aau-row-actions .aau-text-button:hover {
    background: var(--aau-primary-soft) !important;
    border-color: color-mix(in srgb, var(--aau-primary) 32%, var(--aau-border)) !important;
    color: var(--aau-primary-dark) !important;
}

body.aa-app #content .aau-row-actions .aau-row-action--quiet,
.aau-row-actions .aau-row-action--quiet {
    background: transparent !important;
    border-color: transparent !important;
}

body.aa-app #content .aau-row-actions .aau-row-action--accent,
.aau-row-actions .aau-row-action--accent {
    background: color-mix(in srgb, var(--aau-primary-soft) 80%, var(--aau-surface) 20%) !important;
    border-color: color-mix(in srgb, var(--aau-primary) 24%, var(--aau-border)) !important;
}

body.aa-app #content .aau-row-actions .aau-row-action--danger,
body.aa-app #content .aau-row-actions .aau-text-danger,
.aau-row-actions .aau-row-action--danger,
.aau-row-actions .aau-text-danger {
    background: color-mix(in srgb, #fff 94%, var(--aau-danger) 6%) !important;
    border-color: color-mix(in srgb, var(--aau-danger) 24%, var(--aau-border)) !important;
    color: var(--aau-danger) !important;
}

body.aa-app #content .aau-row-actions .aau-row-action--danger:hover,
body.aa-app #content .aau-row-actions .aau-text-danger:hover,
.aau-row-actions .aau-row-action--danger:hover,
.aau-row-actions .aau-text-danger:hover {
    background: color-mix(in srgb, #fff 88%, var(--aau-danger) 12%) !important;
    border-color: color-mix(in srgb, var(--aau-danger) 45%, var(--aau-border)) !important;
}

/* Event detail: stronger hierarchy and stat-card management summary. */
.aau-detail {
    border-radius: var(--aau-radius-panel);
    box-shadow: var(--aau-shadow-card);
}

.aau-detail > header {
    background: linear-gradient(135deg,
        color-mix(in srgb, var(--aau-primary-soft) 74%, var(--aau-surface) 26%),
        var(--aau-surface) 72%);
    padding: 1.35rem 1.45rem;
}

.aau-detail h2 {
    font-size: clamp(1.55rem, 3.2vw, 2.25rem);
    letter-spacing: -.025em;
    margin: .58rem 0 .32rem;
}

.aau-detail__summary {
    font-size: 1rem;
    line-height: 1.55;
    margin-block: .25rem .6rem;
}

.aau-event-facts {
    background: color-mix(in srgb, var(--aau-border) 48%, var(--aau-surface) 52%);
}

.aau-event-facts > div {
    padding: .9rem 1.15rem;
}

.aau-event-facts dt {
    font-size: .68rem;
}

.aau-admin-summary {
    background: color-mix(in srgb, var(--aau-surface-soft) 78%, var(--aau-surface) 22%);
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    padding: 1rem 1.25rem;
}

.aau-admin-summary > div,
.aau-admin-summary__audience,
.aau-reach-stat {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 11px;
    box-shadow: 0 1px 4px rgba(28, 35, 55, .025);
    min-width: 0;
    padding: .78rem .85rem;
}

.aau-admin-summary > div > strong {
    color: var(--aau-muted);
    font-size: .68rem;
    font-weight: 820;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.aau-admin-summary > div > span {
    color: var(--aau-text);
    font-size: .84rem;
    line-height: 1.45;
}

.aau-progress {
    margin-top: .25rem;
    max-width: none;
}

.aau-detail__actions {
    background: color-mix(in srgb, var(--aau-surface-soft) 50%, var(--aau-surface) 50%);
    gap: .55rem;
    padding: .9rem 1.25rem;
}

.aau-detail__actions .aau-button {
    min-height: 38px;
    padding: .52rem .78rem;
}

.aau-detail__actions .aau-button--danger {
    margin-inline-start: .3rem;
}

.aau-detail__actions .aau-button--delete {
    margin-inline-start: 0;
}

/* Calendar: lighter chrome, compact cells and clear semantic event chips. */
.aau-calendar {
    background: color-mix(in srgb, var(--aau-border) 80%, transparent);
    border-radius: 15px;
    box-shadow: var(--aau-shadow-card);
}

.aau-calendar__weekday {
    background: color-mix(in srgb, var(--aau-primary-soft) 58%, var(--aau-surface) 42%);
    color: color-mix(in srgb, var(--aau-text) 82%, var(--aau-muted));
    font-size: .7rem;
    letter-spacing: .025em;
    padding: .62rem .35rem;
}

.aau-calendar__day {
    min-height: 112px;
    padding: .4rem .42rem;
}

.aau-calendar__day:nth-child(7n),
.aau-calendar__day:nth-child(7n + 6) {
    background: color-mix(in srgb, var(--aau-surface-soft) 48%, var(--aau-surface) 52%);
}

.aau-calendar__day.is-outside {
    background: color-mix(in srgb, var(--aau-surface-soft) 75%, var(--aau-surface) 25%);
}

.aau-calendar__day.is-today {
    box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--aau-primary) 70%, transparent);
}

.aau-calendar__day.is-today .aau-calendar__date {
    color: var(--aau-primary);
}

.aau-calendar__day.is-today .aau-calendar__date::after {
    background: var(--aau-primary);
    border-radius: 999px;
    content: "";
    height: 5px;
    margin-inline-start: .3rem;
    width: 5px;
}

.aau-calendar__date {
    font-size: .74rem;
    margin-bottom: .3rem;
}

.aau-calendar__event {
    background: color-mix(in srgb, var(--aau-primary-soft) 72%, var(--aau-surface) 28%);
    border-inline-start-width: 3px;
    border-radius: 6px;
    font-size: .68rem;
    margin: .2rem 0;
    padding: .3rem .38rem;
    transition: background-color .14s ease, box-shadow .14s ease, transform .14s ease;
}

.aau-calendar__event:hover,
.aau-calendar__event:focus-visible {
    background: color-mix(in srgb, var(--aau-primary-soft) 90%, var(--aau-surface) 10%);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--aau-primary) 45%, transparent);
    transform: translateY(-1px);
}

.aau-calendar__event--important {
    background: color-mix(in srgb, #fff3dd 88%, var(--aau-surface) 12%);
}

.aau-calendar__event--urgent {
    background: color-mix(in srgb, #feecee 88%, var(--aau-surface) 12%);
}

.aau-calendar__event.is-cancelled {
    background: color-mix(in srgb, var(--aau-surface-soft) 82%, #f4d7da 18%);
    color: var(--aau-muted);
    opacity: .66;
}

/* Dark scheme keeps elevation subtle and avoids white-mix artifacts. */
html[data-aa-colour-scheme="dark"] .aau-update-card,
html[data-aa-colour-scheme="dark"] .aau-table-wrap,
html[data-aa-colour-scheme="dark"] .aau-detail,
html[data-aa-colour-scheme="dark"] .aau-public-feed-card,
html[data-aa-colour-scheme="dark"] .aau-public-list-card,
html[data-aa-colour-scheme="dark"] .aau-admin-summary > div {
    box-shadow: none;
}

html[data-aa-colour-scheme="dark"] .aau-row-actions .aau-row-action,
html[data-aa-colour-scheme="dark"] .aau-row-actions .aau-text-button {
    background: var(--aau-surface) !important;
}

/* Responsive polish. */
@media (max-width: 1079px) {
    .aau-page:not(.aau-public-page) > .aau-feed:not(.aau-feed--list) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .aau-public-list-card {
        grid-template-columns: 150px minmax(0, 1fr);
    }

    .aau-public-list-card__facts {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
}

@media (max-width: 760px) {
    .aau-page:not(.aau-public-page) > .aau-feed:not(.aau-feed--list),
    .aau-public-feed {
        grid-template-columns: 1fr;
    }

    .aau-detail__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .aau-detail__actions .aau-button,
    .aau-detail__actions .aau-inline-form,
    .aau-detail__actions .aau-inline-form .aau-button {
        margin-inline-start: 0;
        width: 100%;
    }

    .aau-public-list-card {
        grid-template-columns: 1fr;
    }

    .aau-public-list-card__media {
        min-height: 120px;
    }
}

@media (max-width: 520px) {
    .aau-hero,
    .aau-public-feed-hero,
    .aau-detail > header,
    .aau-public-detail > header {
        padding: 1rem;
    }

    .aau-admin-summary {
        grid-template-columns: 1fr;
        padding: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-update-card,
    .aau-public-feed-card,
    .aau-public-list-card,
    .aau-calendar__event {
        transition: none;
    }

    .aau-update-card:hover,
    .aau-public-feed-card:hover,
    .aau-public-list-card:hover,
    .aau-calendar__event:hover {
        transform: none;
    }
}

@media (forced-colors: active) {
    .aau-update-card,
    .aau-table-wrap,
    .aau-row-actions .aau-row-action,
    .aau-row-actions .aau-text-button,
    .aau-detail,
    .aau-admin-summary > div,
    .aau-calendar,
    .aau-calendar__event,
    .aau-public-feed-card,
    .aau-public-list-card {
        border-color: CanvasText !important;
        box-shadow: none !important;
    }
}

/* Al-Amal Communications 0.12.02 — UI Refinement Hotfix
   Compact management actions, attachments, public directory cards and event views.
   Presentation-only: no workflow or data behavior changes. */

/* 1. Manage Events: every row action behaves like one compact link system. */
body.aa-app #content .aau-table .aau-row-actions,
.aau-table .aau-row-actions {
    align-items: center;
    column-gap: .72rem;
    row-gap: .34rem;
    min-width: 220px;
}

body.aa-app #content .aau-table .aau-row-actions form.aau-inline-form,
.aau-table .aau-row-actions form.aau-inline-form {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.aa-app #content .aau-table .aau-row-actions a.aau-row-action,
body.aa-app #content .aau-table .aau-row-actions button.aau-text-button,
.aau-table .aau-row-actions a.aau-row-action,
.aau-table .aau-row-actions button.aau-text-button {
    appearance: none !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    color: var(--aau-primary) !important;
    cursor: pointer !important;
    display: inline-flex !important;
    font-family: inherit !important;
    font-size: .76rem !important;
    font-weight: 780 !important;
    height: auto !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    min-height: 0 !important;
    min-width: 0 !important;
    padding: .18rem .12rem !important;
    text-decoration: none !important;
    text-shadow: none !important;
    transform: none !important;
    width: auto !important;
    white-space: nowrap !important;
}

body.aa-app #content .aau-table .aau-row-actions a.aau-row-action:hover,
body.aa-app #content .aau-table .aau-row-actions button.aau-text-button:hover,
.aau-table .aau-row-actions a.aau-row-action:hover,
.aau-table .aau-row-actions button.aau-text-button:hover {
    background: transparent !important;
    color: var(--aau-primary-dark) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

body.aa-app #content .aau-table .aau-row-actions .aau-row-action--accent,
body.aa-app #content .aau-table .aau-row-actions .aau-text-button.aau-row-action--accent,
.aau-table .aau-row-actions .aau-row-action--accent,
.aau-table .aau-row-actions .aau-text-button.aau-row-action--accent {
    color: var(--aau-primary) !important;
}

body.aa-app #content .aau-table .aau-row-actions .aau-row-action--danger,
body.aa-app #content .aau-table .aau-row-actions .aau-text-danger,
.aau-table .aau-row-actions .aau-row-action--danger,
.aau-table .aau-row-actions .aau-text-danger {
    background: transparent !important;
    color: var(--aau-danger) !important;
}

/* 2. Event attachments: clearer section spacing and smaller image previews. */
.aau-detail > .aau-attachments,
.aau-public-detail > .aau-attachments {
    border-top: 1px solid var(--aau-border);
    margin: 0;
    padding: 1rem 1.25rem 1.15rem;
}

.aau-detail > .aau-attachments .aau-attachments__header,
.aau-public-detail > .aau-attachments .aau-attachments__header {
    margin-bottom: .65rem;
}

.aau-detail > .aau-attachments .aau-attachments__header h3,
.aau-public-detail > .aau-attachments .aau-attachments__header h3 {
    font-size: .98rem;
}

.aau-detail .aau-attachment-gallery {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fill, minmax(118px, 138px));
    justify-content: start;
    margin: .55rem 0 0;
}

.aau-detail .aau-attachment-preview {
    border-radius: 10px;
    max-width: 138px;
}

.aau-detail .aau-attachment-preview img {
    aspect-ratio: 4 / 3;
    max-height: 96px;
    object-fit: cover;
}

.aau-detail .aau-attachment-preview span {
    gap: .08rem;
    padding: .42rem .5rem .48rem;
}

.aau-detail .aau-attachment-preview b {
    font-size: .74rem;
    line-height: 1.3;
}

.aau-detail .aau-attachment-preview small {
    font-size: .66rem;
}

/* 3 + 5. Private/Public Event View: compact modern toolbar and content rhythm. */
.aau-detail-toolbar,
.aau-public-detail-toolbar {
    align-items: center;
    background: color-mix(in srgb, var(--aau-surface-soft) 55%, var(--aau-surface) 45%);
    border: 1px solid var(--aau-border);
    border-radius: 11px;
    gap: .45rem;
    margin: 0 0 .65rem;
    min-height: 0;
    padding: .32rem .48rem;
}

.aau-detail-toolbar .aau-back-link,
.aau-public-detail-toolbar .aau-back-link {
    align-items: center;
    border-radius: 7px;
    display: inline-flex;
    font-size: .77rem;
    font-weight: 780;
    line-height: 1.2;
    min-height: 30px;
    padding: .3rem .42rem;
    text-decoration: none;
}

.aau-detail-toolbar .aau-back-link:hover,
.aau-public-detail-toolbar .aau-back-link:hover {
    background: var(--aau-surface);
}

.aau-detail {
    border-radius: 15px;
}

.aau-detail > header,
.aau-public-detail > header {
    background: linear-gradient(135deg,
        color-mix(in srgb, var(--aau-primary-soft) 56%, var(--aau-surface) 44%),
        var(--aau-surface) 82%);
    padding: 1rem 1.2rem;
}

.aau-detail h2 {
    font-size: clamp(1.32rem, 2.25vw, 1.8rem);
    letter-spacing: -.018em;
    margin: .45rem 0 .24rem;
}

.aau-detail__summary {
    font-size: .9rem;
    line-height: 1.5;
    margin: .18rem 0 .48rem;
    max-width: 72ch;
}

.aau-detail__byline {
    font-size: .75rem;
    gap: .65rem;
}

.aau-event-facts > div {
    padding: .62rem .9rem;
}

.aau-event-facts dt {
    font-size: .64rem;
}

.aau-event-facts dd {
    font-size: .82rem;
    line-height: 1.45;
}

.aau-detail__content,
.aau-public-detail .aau-detail__content {
    font-size: .9rem;
    line-height: 1.62;
    min-height: 0;
    padding: 1rem 1.2rem;
}

.aau-admin-summary {
    gap: .55rem;
    padding: .75rem 1rem;
}

.aau-admin-summary > div,
.aau-admin-summary__audience,
.aau-reach-stat {
    border-radius: 9px;
    padding: .58rem .68rem;
}

.aau-detail__actions {
    gap: .38rem;
    padding: .65rem 1rem;
}

.aau-detail__actions .aau-button {
    min-height: 32px;
    padding: .38rem .62rem;
    font-size: .76rem;
}

.aau-public-feed-page,
.aau-public-private-style {
    padding-block: .7rem 2rem;
}

.aau-public-private-style {
    gap: .65rem;
}

/* 0.13.01 — publishing-first authoring workflow. */
.aau-type-change-warning {
    background: color-mix(in srgb, var(--aau-warning) 10%, var(--aau-surface));
    border: 1px solid color-mix(in srgb, var(--aau-warning) 55%, var(--aau-border));
    border-inline-start: 4px solid var(--aau-warning);
    border-radius: 11px;
    display: grid;
    gap: .55rem;
    padding: .85rem 1rem;
}

.aau-type-change-warning[hidden],
.aau-event-only-fields[hidden] {
    display: none !important;
}

.aau-type-change-warning strong {
    color: var(--aau-text);
}

.aau-type-change-warning p {
    color: var(--aau-muted);
    margin: 0;
}

.aau-type-change-warning label {
    align-items: flex-start;
    cursor: pointer;
    display: flex;
    font-size: .82rem;
    font-weight: 750;
    gap: .55rem;
}

.aau-type-change-warning input {
    flex: 0 0 auto;
    height: 20px;
    margin-top: .05rem;
    width: 20px;
}

.aau-event-only-fields {
    border-top: 1px solid var(--aau-border);
    margin-top: 1rem;
    padding-top: 1rem;
}

.aau-form-card > .aau-scope-panel {
    margin-top: 1rem;
}

/* 0.13.02 — publication-aware feed, management, calendar and detail presentation. */
.aau-update-card__date > span {
    color: var(--aau-muted);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.aau-update-card__audience {
    align-items: flex-start;
    background: var(--aau-surface-soft);
    border-radius: 10px;
    display: grid;
    gap: .35rem;
    margin: .15rem 0 .8rem;
    padding: .65rem .75rem;
}

.aau-update-card__audience > strong {
    color: var(--aau-muted);
    font-size: .7rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.aau-update-card__audience > span {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem;
}

.aau-table-context {
    display: grid;
    gap: .18rem;
}

.aau-table-context > small {
    color: var(--aau-muted);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.aau-calendar-summary__types {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.aau-calendar-summary__types > strong {
    margin-inline-end: .2rem;
}

.aau-publication-facts {
    border-bottom: 1px solid var(--aau-border);
}

.aau-publication-facts > header {
    background: var(--aau-surface-soft);
    padding: .8rem 1.25rem .55rem;
}

.aau-publication-facts > header .aau-eyebrow {
    margin: 0 0 .15rem;
}

.aau-publication-facts > header h3 {
    font-size: 1rem;
    margin: 0;
}

.aau-publication-facts .aau-event-facts {
    border-bottom: 0;
}

@media (max-width: 700px) {
    .aau-update-card__audience {
        margin-bottom: .6rem;
    }

    .aau-calendar-summary__types {
        align-items: flex-start;
    }
}

/* 0.14.11 — UX Phase B: Manage Communications + Publications Feed.
 * Screen-specific modernization built on the canonical --comm-* foundation.
 * Business rules, permissions and publication workflow remain unchanged.
 */
.aau-hero--workspace {
    min-height: 0;
    padding: 1.15rem 1.35rem;
}

.aau-hero--workspace h2 {
    font-size: clamp(1.35rem, 2.4vw, 1.85rem);
    letter-spacing: -.02em;
}

.aau-hero--workspace p:not(.aau-eyebrow) {
    font-size: .86rem;
    line-height: 1.55;
    max-width: 68rem;
}

.aau-overview {
    gap: .8rem;
}

.aau-overview__tile {
    align-content: center;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    min-height: 104px;
    overflow: hidden;
    padding: 1rem 1.05rem;
    position: relative;
}

.aau-overview__tile::before {
    background: currentColor;
    border-radius: 999px;
    content: "";
    height: 3px;
    inset: 0 0 auto;
    opacity: .5;
    position: absolute;
}

.aau-overview__tile strong {
    align-self: end;
    font-size: clamp(1.55rem, 3vw, 2rem);
    grid-column: 1;
    grid-row: 1;
}

.aau-overview__tile span {
    align-self: start;
    font-size: .76rem;
    grid-column: 1;
    grid-row: 2;
    letter-spacing: .01em;
}

.aau-overview__tile i {
    align-items: center;
    align-self: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: 999px;
    color: var(--comm-text-muted);
    display: inline-flex;
    font-size: .86rem;
    font-style: normal;
    grid-column: 2;
    grid-row: 1 / span 2;
    height: 32px;
    justify-content: center;
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
    width: 32px;
}

.aau-overview__tile:hover i {
    background: var(--comm-primary-soft);
    color: var(--comm-primary);
    transform: translateX(2px);
}

.aau-search-panel--modern {
    box-shadow: var(--comm-shadow-sm);
    overflow: clip;
}

.aau-search-panel--modern > summary {
    min-height: 48px;
    padding: .72rem .9rem;
}

.aau-search-panel--modern > summary > span:first-child {
    font-size: .82rem;
    letter-spacing: .01em;
}

.aau-search-panel--modern .aau-search-form {
    background: color-mix(in srgb, var(--comm-surface-soft) 52%, var(--comm-surface));
    border-top: 1px solid var(--comm-border);
    padding: .9rem;
}

.aau-active-filters {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-top: -.45rem;
}

.aau-active-filters__label {
    color: var(--comm-text-soft);
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .065em;
    margin-inline-end: .15rem;
    text-transform: uppercase;
}

.aau-filter-chip {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 999px;
    color: var(--comm-text-muted) !important;
    display: inline-flex;
    font-size: .71rem;
    font-weight: 720;
    gap: .4rem;
    line-height: 1.2;
    min-height: 31px;
    padding: .34rem .38rem .34rem .65rem;
    text-decoration: none !important;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.aau-filter-chip > span:last-child {
    align-items: center;
    background: var(--comm-surface-muted);
    border-radius: 50%;
    display: inline-flex;
    font-size: .88rem;
    font-weight: 500;
    height: 20px;
    justify-content: center;
    line-height: 1;
    width: 20px;
}

.aau-filter-chip:hover {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover) !important;
}

.aau-filter-chip:hover > span:last-child {
    background: var(--comm-surface);
}

.aau-results-heading--manage,
.aau-results-heading--feed {
    border-bottom: 1px solid var(--comm-border);
    padding-bottom: .65rem;
}

.aau-results-heading--feed {
    flex-wrap: wrap;
}

.aau-results-heading--manage h3,
.aau-results-heading--feed h3 {
    font-size: 1rem;
    letter-spacing: -.01em;
}

.aau-results-heading__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: flex-end;
}

/* Editorial publication cards. */
.aau-feed--editorial {
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Authenticated Publications defaults to a compact scan-friendly list. */
.aau-feed--editorial.aau-feed--list {
    gap: .72rem;
    grid-template-columns: minmax(0, 1fr);
}

.aau-feed--list .aau-update-card {
    width: 100%;
}

.aau-feed--list .aau-update-card__body {
    padding: .82rem 1rem;
}

.aau-feed--list .aau-update-card__date-block {
    padding-block: .88rem;
}

.aau-feed--list .aau-update-card h3 {
    margin-top: .48rem;
}

.aau-feed--list .aau-update-card__excerpt {
    -webkit-line-clamp: 2;
    margin-bottom: .55rem;
}

.aau-feed--list .aau-update-card__audience {
    margin-bottom: .52rem;
    padding-top: .52rem;
}

.aau-feed--list .aau-update-card footer {
    padding-top: .55rem;
}

.aau-feed--editorial .aau-update-card {
    border-color: var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    min-height: 0;
    overflow: hidden;
    padding: 0;
}

.aau-feed--editorial .aau-update-card:hover {
    border-color: var(--comm-primary-border);
    box-shadow: var(--comm-shadow-hover);
    transform: translateY(-2px);
}

.aau-feed--editorial .aau-update-card__shell {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    min-height: 100%;
}

.aau-feed--editorial .aau-update-card:not(.aau-update-card--event) .aau-update-card__shell {
    display: block;
}

.aau-update-card__body {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 1rem 1.05rem;
}

.aau-update-card__date-block {
    align-items: center;
    align-self: stretch;
    background: linear-gradient(180deg, var(--comm-primary-soft), color-mix(in srgb, var(--comm-primary-soft) 45%, var(--comm-surface)));
    border-inline-end: 1px solid var(--comm-primary-border);
    color: var(--comm-primary-hover);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 1.08rem .5rem;
    text-align: center;
}

.aau-update-card__date-block span {
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .08em;
    line-height: 1;
    text-transform: uppercase;
}

.aau-update-card__date-block strong {
    font-size: 1.75rem;
    letter-spacing: -.04em;
    line-height: 1.08;
    margin-top: .28rem;
}

.aau-feed--editorial .aau-update-card__meta {
    gap: .3rem;
}

.aau-feed--editorial .aau-update-card h3 {
    font-size: 1.08rem;
    letter-spacing: -.015em;
    line-height: 1.3;
    margin: .65rem 0 .34rem;
}

.aau-feed--editorial .aau-update-card h3 a {
    color: var(--comm-text);
}

.aau-feed--editorial .aau-update-card h3 a:hover {
    color: var(--comm-primary);
}

.aau-feed--editorial .aau-update-card__date {
    align-items: baseline;
    color: var(--comm-text-muted) !important;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin: .08rem 0 .45rem;
}

.aau-feed--editorial .aau-update-card__date > span {
    color: var(--comm-text-soft);
    flex: 0 0 auto;
}

.aau-feed--editorial .aau-update-card__date > strong {
    color: var(--comm-text-muted);
    font-size: .79rem;
    font-weight: 720;
}

.aau-feed--editorial .aau-update-card__excerpt {
    color: var(--comm-text-muted);
    display: -webkit-box;
    font-size: .83rem;
    line-height: 1.55;
    margin: 0 0 .8rem;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.aau-feed--editorial .aau-update-card__audience {
    background: transparent;
    border-top: 1px dashed var(--comm-border);
    border-radius: 0;
    margin: .05rem 0 .7rem;
    padding: .65rem 0 0;
}

.aau-feed--editorial .aau-update-card footer {
    align-items: center;
    gap: .65rem;
    margin-top: auto;
    padding-top: .7rem;
}

.aau-update-card__byline {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .65rem;
    min-width: 0;
}

.aau-feed--editorial .aau-update-card footer .aau-card-link {
    align-items: center;
    display: inline-flex;
    margin-inline-start: auto;
    min-height: 34px;
    padding: .35rem 0;
}

.aau-feed--editorial .aau-update-card.is-unread {
    border-inline-start-width: 4px;
}

.aau-feed--editorial .aau-update-card.aau-importance-important,
.aau-feed--editorial .aau-update-card.aau-importance-urgent {
    border-top-width: 3px;
}

/* Manage Communications: modern table with compact primary action + native details menu. */
.aau-manage-table-wrap {
    background: transparent;
    border: 0;
    box-shadow: none;
    overflow: visible;
}

.aau-manage-table {
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
}

.aau-manage-table thead th {
    background: var(--comm-surface-soft);
    border-bottom: 1px solid var(--comm-border);
    color: var(--comm-text-soft);
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .065em;
    padding: .7rem .8rem;
    text-transform: uppercase;
}

.aau-manage-table thead th:first-child {
    border-start-start-radius: var(--comm-radius-md);
}

.aau-manage-table thead th:last-child {
    border-start-end-radius: var(--comm-radius-md);
    text-align: end;
}

.aau-manage-table tbody tr {
    background: var(--comm-surface);
    box-shadow: inset 0 -1px 0 var(--comm-border);
    transition: background-color .15s ease, box-shadow .15s ease;
}

.aau-manage-table tbody tr:hover {
    background: color-mix(in srgb, var(--comm-primary-soft) 22%, var(--comm-surface));
}

.aau-manage-table tbody tr.is-pinned {
    background: color-mix(in srgb, var(--comm-primary-soft) 34%, var(--comm-surface));
}

.aau-manage-table td {
    border: 0;
    color: var(--comm-text-muted);
    font-size: .78rem;
    padding: .85rem .8rem;
    vertical-align: middle;
}

.aau-manage-table th:nth-child(1),
.aau-manage-table td:nth-child(1) { width: 31%; }
.aau-manage-table th:nth-child(2),
.aau-manage-table td:nth-child(2) { width: 16%; }
.aau-manage-table th:nth-child(3),
.aau-manage-table td:nth-child(3) { width: 15%; }
.aau-manage-table th:nth-child(4),
.aau-manage-table td:nth-child(4) { width: 12%; }
.aau-manage-table th:nth-child(5),
.aau-manage-table td:nth-child(5) { width: 13%; }
.aau-manage-table th:nth-child(6),
.aau-manage-table td:nth-child(6) { width: 13%; }

.aau-manage-table .aau-table-title {
    gap: .28rem;
}

.aau-manage-table .aau-table-title strong {
    font-size: .88rem;
    line-height: 1.35;
}

.aau-manage-table .aau-table-title strong a {
    color: var(--comm-text);
    text-decoration: none;
}

.aau-manage-table .aau-table-title strong a:hover {
    color: var(--comm-primary);
}

.aau-manage-table .aau-table-title small {
    color: var(--comm-text-soft);
    font-size: .7rem;
    line-height: 1.4;
}

.aau-manage-table .aau-table-markers {
    gap: .25rem;
    margin-top: .12rem;
}

.aau-manage-table .aau-badge {
    min-height: 22px;
    padding: .29rem .48rem;
}

.aau-manage-table .aau-audience-list {
    gap: .25rem;
}

.aau-manage-table .aau-table-context {
    gap: .2rem;
}

.aau-manage-table .aau-table-context > small {
    color: var(--comm-text-soft);
}

.aau-manage-table .aau-table-date {
    color: var(--comm-text);
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.4;
}

.aau-manage-table .aau-delivery-status {
    color: var(--comm-text);
    display: block;
    font-size: .76rem;
    font-weight: 720;
}

.aau-manage-table .aau-manage-delivery > small {
    color: var(--comm-text-soft);
    display: block;
    font-size: .68rem;
    margin-top: .18rem;
}

body.aa-app #content .aau-manage-table .aau-row-actions--modern,
.aau-manage-table .aau-row-actions--modern {
    align-items: center;
    column-gap: .35rem;
    justify-content: flex-end;
    min-width: 0;
    position: relative;
    row-gap: .35rem;
}

body.aa-app #content .aau-manage-table .aau-row-action--view,
.aau-manage-table .aau-row-action--view {
    align-items: center !important;
    background: var(--comm-surface) !important;
    border: 1px solid var(--comm-border-strong) !important;
    border-radius: var(--comm-radius-control) !important;
    box-shadow: none !important;
    color: var(--comm-primary) !important;
    display: inline-flex !important;
    font-size: .73rem !important;
    font-weight: 800 !important;
    justify-content: center !important;
    line-height: 1.2 !important;
    min-height: 36px !important;
    padding: .45rem .62rem !important;
    text-decoration: none !important;
}

body.aa-app #content .aau-manage-table .aau-row-action--view:hover,
.aau-manage-table .aau-row-action--view:hover {
    background: var(--comm-primary-soft) !important;
    border-color: var(--comm-primary-border) !important;
    color: var(--comm-primary-hover) !important;
    text-decoration: none !important;
}

.aau-action-menu {
    position: relative;
}

.aau-action-menu > summary {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border-strong);
    border-radius: var(--comm-radius-control);
    color: var(--comm-text-muted);
    cursor: pointer;
    display: inline-flex;
    font-size: .73rem;
    font-weight: 800;
    gap: .35rem;
    justify-content: center;
    list-style: none;
    min-height: 36px;
    padding: .45rem .62rem;
    user-select: none;
}

.aau-action-menu > summary::-webkit-details-marker {
    display: none;
}

.aau-action-menu > summary::after {
    content: "•••";
    font-size: .62rem;
    letter-spacing: .08em;
    line-height: 1;
}

.aau-action-menu > summary:hover,
.aau-action-menu[open] > summary {
    background: var(--comm-surface-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-text);
}

.aau-action-menu__panel {
    background: var(--comm-surface-raised);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: 0 16px 38px rgba(20, 24, 36, .15);
    display: grid;
    gap: .12rem;
    inset: calc(100% + .38rem) 0 auto auto;
    max-height: var(--aau-action-menu-max-height, min(420px, calc(100vh - 1.5rem)));
    min-width: 205px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: .35rem;
    position: absolute;
    scrollbar-gutter: stable;
    text-align: start;
    z-index: 60;
}

.aau-action-menu.is-placement-up .aau-action-menu__panel {
    inset: auto 0 calc(100% + .38rem) auto;
}

.aau-action-menu__panel form.aau-inline-form {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
}

body.aa-app #content .aau-action-menu__item,
body.aa-app #content .aau-action-menu__panel button.aau-action-menu__item,
.aau-action-menu__item,
.aau-action-menu__panel button.aau-action-menu__item {
    align-items: center !important;
    appearance: none !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: var(--comm-text) !important;
    cursor: pointer !important;
    display: flex !important;
    font-family: inherit !important;
    font-size: .75rem !important;
    font-weight: 700 !important;
    height: auto !important;
    justify-content: flex-start !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    min-height: 36px !important;
    min-width: 0 !important;
    padding: .52rem .58rem !important;
    text-align: start !important;
    text-decoration: none !important;
    text-shadow: none !important;
    transform: none !important;
    white-space: normal !important;
    width: 100% !important;
}

body.aa-app #content .aau-action-menu__item:hover,
body.aa-app #content .aau-action-menu__panel button.aau-action-menu__item:hover,
.aau-action-menu__item:hover,
.aau-action-menu__panel button.aau-action-menu__item:hover {
    background: var(--comm-surface-soft) !important;
    color: var(--comm-primary-hover) !important;
    text-decoration: none !important;
}

body.aa-app #content .aau-action-menu__item--accent,
body.aa-app #content .aau-action-menu__panel button.aau-action-menu__item--accent,
.aau-action-menu__item--accent,
.aau-action-menu__panel button.aau-action-menu__item--accent {
    color: var(--comm-primary-hover) !important;
}

body.aa-app #content .aau-action-menu__item--danger,
body.aa-app #content .aau-action-menu__panel button.aau-action-menu__item--danger,
.aau-action-menu__item--danger,
.aau-action-menu__panel button.aau-action-menu__item--danger {
    color: var(--comm-danger) !important;
}

body.aa-app #content .aau-action-menu__item--danger:hover,
body.aa-app #content .aau-action-menu__panel button.aau-action-menu__item--danger:hover,
.aau-action-menu__item--danger:hover,
.aau-action-menu__panel button.aau-action-menu__item--danger:hover {
    background: color-mix(in srgb, var(--comm-danger) 7%, var(--comm-surface)) !important;
    color: var(--comm-danger) !important;
}

.aau-action-menu__separator {
    border-top: 1px solid var(--comm-border);
    display: block;
    margin: .2rem .3rem;
}

.aau-empty__icon {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 14px;
    display: inline-block;
    height: 48px;
    position: relative;
    width: 48px;
}

.aau-empty__icon--search::before {
    border: 3px solid var(--comm-text-soft);
    border-radius: 50%;
    content: "";
    height: 15px;
    inset: 12px auto auto 12px;
    position: absolute;
    width: 15px;
}

.aau-empty__icon--search::after {
    background: var(--comm-text-soft);
    border-radius: 999px;
    content: "";
    height: 3px;
    left: 27px;
    position: absolute;
    top: 28px;
    transform: rotate(45deg);
    transform-origin: left center;
    width: 11px;
}

.aau-empty__icon--publication::before,
.aau-empty__icon--publication::after {
    content: "";
    left: 13px;
    position: absolute;
    right: 13px;
}

.aau-empty__icon--publication::before {
    border: 2px solid var(--comm-text-soft);
    border-radius: 4px;
    bottom: 10px;
    top: 10px;
}

.aau-empty__icon--publication::after {
    border-bottom: 2px solid var(--comm-text-soft);
    border-top: 2px solid var(--comm-text-soft);
    height: 7px;
    top: 18px;
}

@media (max-width: 1100px) {
    .aau-manage-table-wrap {
        overflow: visible;
    }

    .aau-manage-table,
    .aau-manage-table tbody {
        display: block;
        width: 100%;
    }

    .aau-manage-table thead {
        display: none;
    }

    .aau-manage-table tbody {
        display: grid;
        gap: .8rem;
    }

    .aau-manage-table tbody tr {
        border: 1px solid var(--comm-border);
        border-radius: var(--comm-radius-lg);
        box-shadow: var(--comm-shadow-sm);
        display: grid;
        gap: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
        padding: .25rem;
    }

    .aau-manage-table td,
    .aau-manage-table th:nth-child(n),
    .aau-manage-table td:nth-child(n) {
        display: block;
        padding: .7rem .75rem;
        width: auto;
    }

    .aau-manage-table td:not(.aau-manage-publication):not(.aau-manage-actions)::before {
        color: var(--comm-text-soft);
        content: attr(data-label);
        display: block;
        font-size: .62rem;
        font-weight: 850;
        letter-spacing: .065em;
        margin-bottom: .28rem;
        text-transform: uppercase;
    }

    .aau-manage-publication,
    .aau-manage-actions {
        grid-column: 1 / -1;
    }

    .aau-manage-publication {
        border-bottom: 1px solid var(--comm-border) !important;
        padding-bottom: .85rem !important;
    }

    .aau-manage-actions {
        border-top: 1px solid var(--comm-border) !important;
        padding-top: .65rem !important;
    }

    body.aa-app #content .aau-manage-table .aau-row-actions--modern,
    .aau-manage-table .aau-row-actions--modern {
        justify-content: flex-start;
    }

    .aau-action-menu__panel {
        inset: calc(100% + .38rem) auto auto 0;
    }

    .aau-action-menu.is-placement-up .aau-action-menu__panel {
        inset: auto auto calc(100% + .38rem) 0;
    }
}

@media (max-width: 820px) {
    .aau-feed--editorial {
        grid-template-columns: 1fr;
    }

    .aau-overview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .aau-results-heading--feed {
        align-items: flex-start;
    }

    .aau-results-heading__actions {
        justify-content: flex-start;
        width: 100%;
    }

    .aau-results-heading--feed .aau-view-toggle {
        margin-inline-start: 0;
    }

    .aau-hero--workspace {
        padding: 1rem;
    }

    .aau-active-filters {
        align-items: flex-start;
    }

    .aau-active-filters__label {
        flex-basis: 100%;
        margin-bottom: .05rem;
    }

    .aau-manage-table tbody tr {
        grid-template-columns: 1fr;
    }

    .aau-manage-table td,
    .aau-manage-publication,
    .aau-manage-actions {
        grid-column: 1;
    }

    .aau-feed--editorial .aau-update-card__shell {
        grid-template-columns: 62px minmax(0, 1fr);
    }

    .aau-update-card__date-block {
        padding-inline: .35rem;
    }

    .aau-update-card__date-block strong {
        font-size: 1.5rem;
    }

    .aau-update-card__body {
        padding: .9rem;
    }

    .aau-feed--editorial .aau-update-card footer {
        align-items: flex-start;
    }

    .aau-feed--editorial .aau-update-card footer .aau-card-link {
        flex-basis: 100%;
        margin-inline-start: 0;
    }

    .aau-action-menu__panel {
        min-width: min(240px, calc(100vw - 3rem));
    }
}

@media (max-width: 460px) {
    .aau-overview {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-overview__tile,
    .aau-overview__tile i,
    .aau-filter-chip,
    .aau-feed--editorial .aau-update-card {
        transition: none;
    }
}

@media (forced-colors: active) {
    .aau-filter-chip,
    .aau-update-card__date-block,
    .aau-manage-table tbody tr,
    .aau-action-menu > summary,
    .aau-action-menu__panel,
    .aau-empty__icon {
        border: 1px solid CanvasText;
    }

    .aau-action-menu__separator {
        border-top-color: CanvasText;
    }
}

@media (max-width: 760px) {
    .aau-authoring-progress {
        margin-inline: -2px;
    }

    .aau-form-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .aau-form-steps a {
        min-height: 52px;
        padding: .55rem .6rem;
    }

    .aau-file-dropzone {
        grid-template-columns: 40px minmax(0, 1fr);
    }

    .aau-file-dropzone__icon {
        height: 40px;
        width: 40px;
    }

    .aau-file-dropzone input[type="file"],
    .aau-file-selection {
        grid-column: 1 / -1;
        max-width: none;
        width: 100%;
    }
}

@media (max-width: 520px) {
    .aau-form-steps {
        grid-template-columns: 1fr !important;
    }

    .aau-form-steps a {
        min-height: 48px;
    }

    .aau-type-picker__grid,
    .aau-visibility-picker__grid {
        grid-template-columns: 1fr;
    }

    .aau-type-option,
    .aau-visibility-option {
        min-height: 78px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-form-steps a,
    .aau-type-option,
    .aau-visibility-option,
    .aau-file-dropzone {
        transition: none;
    }
}

@media (forced-colors: active) {
    .aau-authoring-progress,
    .aau-form-steps a[aria-current="step"],
    .aau-type-option,
    .aau-visibility-option,
    .aau-file-dropzone {
        border: 1px solid CanvasText;
    }
}

/* Phase B feed density override: the editorial layout intentionally supersedes the historical
 * 3/4-column staff-feed rules from earlier releases. */
.aau-page:not(.aau-public-page) > .aau-feed.aau-feed--editorial:not(.aau-feed--list) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 1680px) {
    .aau-page:not(.aau-public-page) > .aau-feed.aau-feed--editorial:not(.aau-feed--list) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .aau-page:not(.aau-public-page) > .aau-feed.aau-feed--editorial {
        grid-template-columns: 1fr;
    }
}

/* Al-Amal Communications 0.14.13 — UX Phase D: Publication Detail + Calendar + Print.
 * Presentation-only: modern editorial reading surfaces, Event information panel and calendar workspace.
 */

/* Publication detail: treat the page as published content rather than an admin record. */
.aau-detail-toolbar {
    background: var(--comm-surface);
    border-color: var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-sm);
    justify-content: flex-start;
    padding: .42rem .5rem;
}

.aau-detail-toolbar .aau-back-link {
    color: var(--comm-text-muted);
    min-height: 36px;
    padding: .42rem .58rem;
}

.aau-detail-toolbar .aau-back-link:first-child {
    color: var(--comm-primary-hover);
    font-weight: 800;
    margin-inline-end: auto;
}

.aau-detail-toolbar .aau-back-link:hover,
.aau-detail-toolbar .aau-back-link:focus-visible {
    background: var(--comm-surface-soft);
    color: var(--comm-primary-hover);
}

.aau-detail--editorial {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: calc(var(--comm-radius-lg) + 2px);
    box-shadow: var(--comm-shadow-md);
    overflow: clip;
}

.aau-detail--editorial.aau-importance-important {
    border-top: 4px solid var(--comm-warning);
}

.aau-detail--editorial.aau-importance-urgent {
    border-top: 4px solid var(--comm-danger);
}

.aau-detail--editorial .aau-detail__hero {
    align-items: center;
    background:
        radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--comm-primary) 9%, transparent) 0 18%, transparent 19%),
        linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 72%, var(--comm-surface)) 0%, var(--comm-surface) 68%);
    border-bottom: 1px solid var(--comm-border);
    display: grid;
    gap: clamp(1rem, 4vw, 2.6rem);
    grid-template-columns: minmax(0, 1fr) auto;
    padding: clamp(1.35rem, 3vw, 2.35rem);
}

.aau-detail__heading {
    min-width: 0;
}

.aau-detail--editorial h2 {
    color: var(--comm-text);
    font-size: clamp(1.8rem, 4.8vw, 3rem);
    letter-spacing: -.035em;
    line-height: 1.08;
    margin: .62rem 0 .5rem;
    max-width: 24ch;
    text-wrap: balance;
}

.aau-detail--editorial .aau-detail__summary {
    color: var(--comm-text-muted);
    font-size: clamp(.98rem, 1.7vw, 1.12rem);
    line-height: 1.65;
    margin: 0;
    max-width: 68ch;
}

.aau-detail--editorial .aau-detail__byline {
    align-items: center;
    color: var(--comm-text-soft);
    display: flex;
    flex-wrap: wrap;
    font-size: .78rem;
    gap: .5rem;
    margin-top: .85rem;
}

.aau-detail--editorial .aau-detail__byline > * + *::before {
    color: var(--comm-border-strong);
    content: "•";
    margin-inline-end: .5rem;
}

.aau-detail-date-card {
    align-items: center;
    background: color-mix(in srgb, var(--comm-surface) 93%, var(--comm-primary-soft));
    border: 1px solid var(--comm-primary-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    color: var(--comm-text);
    display: grid;
    justify-items: center;
    min-width: 132px;
    padding: .9rem 1rem .85rem;
}

.aau-detail-date-card__month {
    color: var(--comm-primary-hover);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.aau-detail-date-card__day {
    font-size: 2.35rem;
    letter-spacing: -.05em;
    line-height: 1;
    margin: .16rem 0;
}

.aau-detail-date-card__weekday {
    color: var(--comm-text-muted);
    font-size: .72rem;
    font-weight: 750;
}

.aau-detail-date-card__time {
    border-top: 1px solid var(--comm-border);
    color: var(--comm-text-muted);
    font-size: .68rem;
    margin-top: .55rem;
    padding-top: .5rem;
    text-align: center;
    width: 100%;
}

.aau-publication-facts {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    margin: 1.25rem clamp(1rem, 3vw, 2rem) 0;
    overflow: hidden;
}

.aau-publication-facts > header {
    align-items: flex-end;
    background: var(--comm-surface-soft);
    border-bottom: 1px solid var(--comm-border);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: .85rem 1rem;
}

.aau-publication-facts > header h3 {
    color: var(--comm-text);
    font-size: .98rem;
    margin: 0;
}

.aau-publication-facts > header .aau-eyebrow {
    margin-bottom: .12rem;
}

.aau-publication-facts__hint {
    color: var(--comm-text-soft);
    font-size: .7rem;
    line-height: 1.4;
    max-width: 34ch;
    text-align: end;
}

.aau-publication-facts .aau-event-facts {
    background: var(--comm-border);
    border: 0;
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.aau-publication-facts .aau-event-facts > div {
    background: var(--comm-surface);
    min-height: 88px;
    padding: 1rem 1.05rem;
}

.aau-publication-facts .aau-event-facts dt {
    color: var(--comm-text-soft);
    font-size: .66rem;
    letter-spacing: .075em;
}

.aau-publication-facts .aau-event-facts dd {
    color: var(--comm-text);
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.5;
    margin-top: .32rem;
}

.aau-publication-facts--event {
    border-color: color-mix(in srgb, var(--comm-primary) 20%, var(--comm-border));
}

.aau-publication-facts--calendar {
    max-width: 620px;
}

.aau-detail__reading {
    color: var(--comm-text);
    font-size: 1rem;
    line-height: 1.78;
    margin-inline: auto;
    max-width: 82ch;
    padding: clamp(1.7rem, 4vw, 2.6rem) clamp(1rem, 4vw, 2rem);
    width: 100%;
}

.aau-detail__reading > :first-child {
    margin-top: 0;
}

.aau-detail__reading > :last-child {
    margin-bottom: 0;
}

.aau-detail__reading h1,
.aau-detail__reading h2,
.aau-detail__reading h3,
.aau-detail__reading h4 {
    color: var(--comm-text);
    line-height: 1.25;
    margin-top: 1.55em;
    text-wrap: balance;
}

.aau-detail__reading a {
    text-decoration-thickness: .08em;
    text-underline-offset: .14em;
}

.aau-detail > .aau-attachments--detail {
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    margin: 0 clamp(1rem, 3vw, 2rem) 1.4rem;
    padding: 1rem;
}

.aau-detail > .aau-attachments--detail .aau-attachments__header {
    align-items: center;
    border: 0;
    margin: 0 0 .85rem;
    padding: 0;
}

.aau-attachments__count {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 999px;
    color: var(--comm-text-muted);
    font-size: .68rem;
    font-weight: 800;
    padding: .3rem .58rem;
}

.aau-detail .aau-attachment,
.aau-detail .aau-attachment-preview {
    background: var(--comm-surface);
    border-color: var(--comm-border);
    border-radius: var(--comm-radius-md);
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.aau-detail .aau-attachment:hover,
.aau-detail .aau-attachment-preview:hover {
    border-color: var(--comm-primary-border);
    box-shadow: var(--comm-shadow-sm);
    transform: translateY(-1px);
}

.aau-admin-summary--insights {
    background: var(--comm-surface-soft);
    border-top: 1px solid var(--comm-border);
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    padding: 1rem clamp(1rem, 3vw, 1.5rem);
}

.aau-admin-summary--insights .aau-admin-summary__header {
    align-self: center;
    background: transparent;
    border: 0;
    box-shadow: none;
    grid-column: 1 / -1;
    padding: 0 0 .15rem;
}

.aau-admin-summary__header h3 {
    font-size: .96rem;
    margin: 0;
}

.aau-admin-summary--insights > div {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: none;
    min-width: 0;
    padding: .75rem .8rem;
}

.aau-detail__actions--management {
    background: var(--comm-surface);
    border-top: 1px solid var(--comm-border);
    flex-wrap: wrap;
    padding: .85rem clamp(1rem, 3vw, 1.5rem);
}

.aau-acknowledge--publication {
    background: color-mix(in srgb, var(--comm-warning) 6%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--comm-warning) 20%, var(--comm-border));
    border-radius: var(--comm-radius-lg);
    margin: 1rem clamp(1rem, 3vw, 2rem) 1.4rem;
    padding: 1rem;
}

.aau-acknowledge--publication.is-complete {
    background: color-mix(in srgb, var(--comm-success) 6%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--comm-success) 22%, var(--comm-border));
}

/* Calendar workspace. */
.aau-calendar-hero {
    overflow: hidden;
    position: relative;
}

.aau-calendar-hero::after {
    background: color-mix(in srgb, var(--comm-primary) 8%, transparent);
    border-radius: 999px;
    content: "";
    height: 160px;
    pointer-events: none;
    position: absolute;
    right: -56px;
    top: -76px;
    width: 160px;
}

.aau-calendar-hero__title {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
}

.aau-calendar-count {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 999px;
    color: var(--comm-text-muted);
    display: inline-flex;
    font-size: .68rem;
    font-weight: 800;
    line-height: 1;
    padding: .4rem .62rem;
}

.aau-calendar-toolbar--modern {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-sm);
    gap: .35rem;
    justify-content: center;
    padding: .38rem;
}

.aau-calendar-toolbar--modern .aau-calendar-toolbar__button {
    background: transparent;
    border-color: transparent;
    border-radius: var(--comm-radius-control);
    color: var(--comm-text-muted);
    gap: .35rem;
    justify-content: center;
    min-width: 112px;
}

.aau-calendar-toolbar--modern .aau-calendar-toolbar__button:hover,
.aau-calendar-toolbar--modern .aau-calendar-toolbar__button:focus-visible {
    background: var(--comm-surface-soft);
    border-color: var(--comm-border);
    color: var(--comm-primary-hover);
}

.aau-calendar-toolbar--modern .aau-calendar-toolbar__button--today {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover);
    min-width: 96px;
}

.aau-calendar-summary--modern {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    padding: .72rem .85rem;
}

.aau-calendar-summary--modern .aau-calendar-summary__types {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .38rem;
}

.aau-calendar-summary--modern .aau-calendar-summary__types > strong {
    color: var(--comm-text-muted);
    font-size: .7rem;
    margin-inline-end: .2rem;
}

.aau-calendar {
    background: var(--comm-border);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-md);
    gap: 1px;
}

.aau-calendar__weekday {
    background: var(--comm-surface-soft);
    color: var(--comm-text-soft);
    font-size: .66rem;
    letter-spacing: .075em;
    padding: .7rem .35rem;
    text-transform: uppercase;
}

.aau-calendar__day {
    background: var(--comm-surface);
    min-height: 132px;
    padding: .48rem;
}

.aau-calendar__day:nth-child(7n),
.aau-calendar__day:nth-child(7n + 6) {
    background: color-mix(in srgb, var(--comm-surface-soft) 48%, var(--comm-surface));
}

.aau-calendar__day.is-outside {
    background: color-mix(in srgb, var(--comm-surface-muted) 70%, var(--comm-surface));
    color: var(--comm-text-soft);
}

.aau-calendar__day.is-today {
    box-shadow: inset 0 0 0 2px var(--comm-primary);
}

.aau-calendar__date {
    color: var(--comm-text-muted);
    font-size: .73rem;
    justify-content: flex-start;
    margin-bottom: .42rem;
}

.aau-calendar__date[aria-current="date"] span:last-child {
    align-items: center;
    background: var(--comm-primary);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    height: 25px;
    justify-content: center;
    width: 25px;
}

.aau-calendar__event {
    --aau-calendar-accent: var(--comm-primary);
    background: color-mix(in srgb, var(--aau-calendar-accent) 8%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-calendar-accent) 18%, var(--comm-border));
    border-inline-start: 3px solid var(--aau-calendar-accent);
    border-radius: 8px;
    color: var(--comm-text);
    margin: .24rem 0;
    padding: .36rem .42rem;
}

.aau-calendar__event--type-announcement { --aau-calendar-accent: var(--comm-info); }
.aau-calendar__event--type-weekly-preview { --aau-calendar-accent: var(--comm-success); }
.aau-calendar__event--type-monthly-plan { --aau-calendar-accent: var(--comm-warning); }
.aau-calendar__event--type-event { --aau-calendar-accent: var(--comm-primary); }

.aau-calendar__event--important {
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--comm-warning) 18%, transparent);
}

.aau-calendar__event--urgent {
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--comm-danger) 24%, transparent);
}

.aau-calendar__event:hover,
.aau-calendar__event:focus-visible {
    background: color-mix(in srgb, var(--aau-calendar-accent) 13%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--aau-calendar-accent) 36%, var(--comm-border));
    box-shadow: var(--comm-shadow-sm);
    transform: translateY(-1px);
}

.aau-calendar__event-meta {
    color: color-mix(in srgb, var(--aau-calendar-accent) 72%, var(--comm-text));
    font-size: .62rem;
    font-weight: 780;
    line-height: 1.25;
}

.aau-calendar__event-title {
    color: var(--comm-text);
    font-size: .69rem;
    font-weight: 760;
    line-height: 1.3;
    margin-top: .12rem;
}

/* Agenda remains useful on desktop as a scan-friendly list, and becomes the primary mobile calendar. */
.aau-agenda--modern {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: block;
    overflow: hidden;
}

.aau-agenda--modern > header {
    align-items: center;
    background: var(--comm-surface-soft);
    border-bottom: 1px solid var(--comm-border);
    display: flex;
    justify-content: space-between;
    padding: .85rem 1rem;
}

.aau-agenda--modern > header h3 {
    font-size: .98rem;
    margin: 0;
}

.aau-agenda--modern .aau-agenda__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-agenda--modern .aau-agenda__item {
    --aau-agenda-accent: var(--comm-primary);
    align-items: center;
    border: 0;
    border-bottom: 1px solid var(--comm-border);
    border-inline-start: 3px solid var(--aau-agenda-accent);
    display: grid;
    gap: .75rem;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    min-height: 92px;
    padding: .78rem .85rem;
    text-decoration: none;
    transition: background-color .15s ease;
}

.aau-agenda--modern .aau-agenda__item:nth-child(odd) {
    border-inline-end: 1px solid var(--comm-border);
}

.aau-agenda__item--type-announcement { --aau-agenda-accent: var(--comm-info) !important; }
.aau-agenda__item--type-weekly-preview { --aau-agenda-accent: var(--comm-success) !important; }
.aau-agenda__item--type-monthly-plan { --aau-agenda-accent: var(--comm-warning) !important; }
.aau-agenda__item--type-event { --aau-agenda-accent: var(--comm-primary) !important; }

.aau-agenda--modern .aau-agenda__item:hover,
.aau-agenda--modern .aau-agenda__item:focus-visible {
    background: color-mix(in srgb, var(--aau-agenda-accent) 5%, var(--comm-surface));
}

.aau-agenda--modern .aau-agenda__item > time {
    align-items: center;
    background: color-mix(in srgb, var(--aau-agenda-accent) 8%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-agenda-accent) 18%, var(--comm-border));
    border-radius: var(--comm-radius-md);
    color: color-mix(in srgb, var(--aau-agenda-accent) 78%, var(--comm-text));
    display: flex;
    flex-direction: column;
    height: 60px;
    justify-content: center;
    line-height: 1;
    width: 56px;
}

.aau-agenda--modern .aau-agenda__item > time small {
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .06em;
    margin-bottom: .16rem;
    text-transform: uppercase;
}

.aau-agenda--modern .aau-agenda__item > time strong {
    font-size: 1.18rem;
}

.aau-agenda--modern .aau-agenda__item > time span {
    font-size: .6rem;
    font-weight: 800;
    margin-top: .12rem;
    text-transform: uppercase;
}

.aau-agenda--modern .aau-agenda__body > strong {
    color: var(--comm-text);
    font-size: .84rem;
    line-height: 1.35;
}

.aau-agenda--modern .aau-agenda__body small {
    color: var(--comm-text-muted);
    font-size: .7rem;
}

@media (max-width: 900px) {
    .aau-detail--editorial .aau-detail__hero {
        align-items: start;
        grid-template-columns: minmax(0, 1fr);
    }

    .aau-detail-date-card {
        align-items: center;
        grid-template-columns: auto auto auto 1fr;
        justify-items: start;
        min-width: 0;
        width: min(100%, 420px);
    }

    .aau-detail-date-card__month,
    .aau-detail-date-card__weekday,
    .aau-detail-date-card__time {
        margin: 0;
    }

    .aau-detail-date-card__day {
        font-size: 1.6rem;
        margin: 0 .5rem;
    }

    .aau-detail-date-card__time {
        border-inline-start: 1px solid var(--comm-border);
        border-top: 0;
        margin-inline-start: .75rem;
        padding: 0 0 0 .75rem;
        text-align: start;
        width: auto;
    }

    .aau-agenda--modern .aau-agenda__list {
        grid-template-columns: 1fr;
    }

    .aau-agenda--modern .aau-agenda__item:nth-child(odd) {
        border-inline-end: 0;
    }
}

@media (max-width: 760px) {
    .aau-detail-toolbar {
        align-items: stretch;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aau-detail-toolbar .aau-back-link,
    .aau-detail-toolbar .aau-back-link:first-child {
        justify-content: center;
        margin: 0;
    }

    .aau-detail--editorial .aau-detail__hero {
        padding: 1.15rem;
    }

    .aau-detail--editorial h2 {
        font-size: clamp(1.65rem, 8vw, 2.25rem);
        max-width: none;
    }

    .aau-publication-facts {
        margin-inline: 0;
    }

    .aau-publication-facts > header {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-publication-facts__hint {
        text-align: start;
    }

    .aau-detail > .aau-attachments--detail,
    .aau-acknowledge--publication {
        margin-inline: 0;
    }

    .aau-detail__reading {
        padding: 1.35rem 1rem;
    }

    .aau-calendar-toolbar--modern {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .aau-calendar-toolbar--modern .aau-calendar-toolbar__button {
        min-width: 0;
        padding-inline: .45rem;
    }

    .aau-calendar-summary--modern {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-calendar-summary--modern .aau-calendar-legend {
        display: flex;
    }

    .aau-calendar {
        display: none;
    }

    .aau-agenda--modern {
        display: block;
    }
}

@media (max-width: 520px) {
    .aau-detail-date-card {
        gap: .2rem;
        grid-template-columns: auto auto 1fr;
    }

    .aau-detail-date-card__weekday {
        display: none;
    }

    .aau-detail-date-card__time {
        margin-inline-start: .45rem;
        padding-inline-start: .55rem;
    }

    .aau-calendar-toolbar--modern .aau-calendar-toolbar__button span:not([aria-hidden="true"]) {
        display: none;
    }

    .aau-agenda--modern .aau-agenda__item {
        grid-template-columns: 52px minmax(0, 1fr) auto;
        padding: .7rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-detail .aau-attachment,
    .aau-detail .aau-attachment-preview,
    .aau-calendar__event,
    .aau-agenda--modern .aau-agenda__item {
        transition: none;
    }
}

@media (forced-colors: active) {
    .aau-detail-date-card,
    .aau-publication-facts,
    .aau-detail > .aau-attachments--detail,
    .aau-acknowledge--publication,
    .aau-calendar-toolbar--modern,
    .aau-calendar-summary--modern,
    .aau-calendar,
    .aau-calendar__event,
    .aau-agenda--modern,
    .aau-agenda--modern .aau-agenda__item > time {
        border: 1px solid CanvasText;
    }
}

/* ========================================================================
   Al-Amal Communications 0.14.14 — UX Phase E
   Settings, Categories and Health modernization.
   Presentation-only: no workflow, permission or data behaviour changes.
   ======================================================================== */

/* Settings readiness strip */
.aau-settings-status-grid {
    display: grid;
    gap: var(--comm-space-3);
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-settings-status {
    align-items: flex-start;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    gap: .75rem;
    min-width: 0;
    padding: .9rem 1rem;
}

.aau-settings-status__marker {
    background: var(--comm-info);
    border: 4px solid color-mix(in srgb, var(--comm-info) 14%, var(--comm-surface));
    border-radius: 999px;
    box-sizing: content-box;
    flex: 0 0 10px;
    height: 10px;
    margin-top: .18rem;
    width: 10px;
}

.aau-settings-status--success .aau-settings-status__marker {
    background: var(--comm-success);
    border-color: color-mix(in srgb, var(--comm-success) 14%, var(--comm-surface));
}

.aau-settings-status--warning .aau-settings-status__marker {
    background: var(--comm-warning);
    border-color: color-mix(in srgb, var(--comm-warning) 16%, var(--comm-surface));
}

.aau-settings-status > div {
    display: grid;
    gap: .18rem;
    min-width: 0;
}

.aau-settings-status strong {
    color: var(--comm-text);
    font-size: .84rem;
}

.aau-settings-status span:not(.aau-settings-status__marker) {
    color: var(--comm-text-muted);
    font-size: .76rem;
    line-height: 1.45;
}

/* Settings workspace */
.aau-settings-workspace {
    align-items: start;
    display: grid;
    gap: var(--comm-space-5);
    grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
}

.aau-settings-nav {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: .22rem;
    padding: .8rem;
    position: sticky;
    top: 1rem;
}

.aau-settings-nav > .aau-eyebrow {
    margin: .2rem .45rem .45rem;
}

.aau-settings-nav a {
    align-items: center;
    border: 1px solid transparent;
    border-radius: var(--comm-radius-control);
    color: var(--comm-text-muted);
    display: flex;
    font-size: .8rem;
    font-weight: 750;
    gap: .65rem;
    min-height: 42px;
    padding: .5rem .6rem;
    text-decoration: none;
}

.aau-settings-nav a:hover,
.aau-settings-nav a:focus-visible {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary);
}

.aau-settings-nav a > span {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: 999px;
    color: var(--comm-text-soft);
    display: inline-flex;
    flex: 0 0 28px;
    font-size: .66rem;
    font-weight: 850;
    height: 28px;
    justify-content: center;
}

.aau-settings-form {
    gap: var(--comm-space-4);
    min-width: 0;
}

.aau-settings-card {
    scroll-margin-top: 1.25rem;
}

.aau-settings-card > header {
    border-bottom: 1px solid var(--comm-border);
    margin: calc(var(--comm-space-5) * -1) calc(var(--comm-space-5) * -1) var(--comm-space-4);
    padding: var(--comm-space-5);
}

.aau-settings-card .aau-step-number {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary);
}

.aau-settings-card .aau-toggle--featured {
    margin-bottom: 0;
}

.aau-settings-card .aau-toggle {
    background: color-mix(in srgb, var(--comm-surface-soft) 70%, var(--comm-surface));
}

.aau-settings-card .aau-toggle:hover,
.aau-settings-card .aau-toggle:focus-within {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
}

.aau-settings-actions {
    backdrop-filter: blur(10px);
    background: color-mix(in srgb, var(--comm-surface) 92%, transparent);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    bottom: .75rem;
    box-shadow: var(--comm-shadow-md);
    margin-top: 0;
    padding: .8rem .9rem;
    position: sticky;
    z-index: 20;
}

.aau-settings-actions .aau-form-actions__help strong {
    color: var(--comm-text);
}

/* Category management */
.aau-category-overview {
    display: grid;
    gap: var(--comm-space-3);
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-category-overview__metric {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: .15rem;
    padding: .85rem 1rem;
}

.aau-category-overview__metric span {
    color: var(--comm-text-muted);
    font-size: .73rem;
    font-weight: 750;
}

.aau-category-overview__metric strong {
    color: var(--comm-text);
    font-size: 1.35rem;
    letter-spacing: -.03em;
}

.aau-category-layout--modern {
    gap: var(--comm-space-5);
    grid-template-columns: minmax(290px, .82fr) minmax(0, 1.18fr);
}

.aau-category-editor {
    position: sticky;
    top: 1rem;
}

.aau-category-editor__card {
    box-shadow: var(--comm-shadow-md);
}

.aau-category-editor__actions {
    justify-content: flex-end;
    margin-top: .75rem;
}

.aau-category-color-control {
    align-items: center;
    display: flex;
    gap: .65rem;
    min-height: 44px;
}

.aau-category-color-control input[type="color"] {
    cursor: pointer;
    flex: 1 1 auto;
    min-height: 44px;
    padding: .25rem;
}


.aau-category-list--modern {
    min-width: 0;
}

.aau-category-cards {
    display: grid;
    gap: var(--comm-space-3);
}

.aau-category-card {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-inline-start: 4px solid var(--aau-category-color, var(--comm-primary));
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: var(--comm-space-3);
    padding: 1rem;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-category-card:hover,
.aau-category-card:focus-within {
    border-color: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 36%, var(--comm-border));
    box-shadow: var(--comm-shadow-md);
    transform: translateY(-1px);
}

.aau-category-card.is-inactive {
    opacity: .78;
}

.aau-category-card > header {
    align-items: flex-start;
    display: grid;
    gap: .7rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.aau-category-swatch--large {
    flex-basis: 22px;
    height: 22px;
    margin-top: .1rem;
    width: 22px;
}

.aau-category-card__heading {
    display: grid;
    gap: .15rem;
    min-width: 0;
}

.aau-category-card__heading strong {
    color: var(--comm-text);
    font-size: .94rem;
}

.aau-category-card__heading span {
    color: var(--comm-text-muted);
    font-size: .78rem;
    line-height: 1.4;
}

.aau-category-card__meta {
    display: grid;
    gap: .6rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-category-card__meta > span {
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-control);
    display: grid;
    gap: .12rem;
    padding: .6rem .7rem;
}

.aau-category-card__meta small {
    color: var(--comm-text-soft);
    font-size: .68rem;
    font-weight: 750;
}

.aau-category-card__meta strong {
    color: var(--comm-text);
    font-size: .8rem;
}

.aau-category-card > footer {
    align-items: center;
    border-top: 1px solid var(--comm-border);
    display: flex;
    gap: .45rem;
    justify-content: flex-end;
    padding-top: .75rem;
}

/* Health command centre */
.aau-health-command {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-md);
    display: grid;
    gap: var(--comm-space-4);
    grid-template-columns: minmax(0, 1fr) auto auto;
    padding: clamp(1rem, 2vw, 1.35rem);
    position: relative;
    overflow: hidden;
}

.aau-health-command::before {
    background: var(--comm-warning);
    content: "";
    inset-block: 0;
    inset-inline-start: 0;
    position: absolute;
    width: 4px;
}

.aau-health-command--ready::before { background: var(--comm-success); }
.aau-health-command--critical::before { background: var(--comm-danger); }

.aau-health-command__status {
    align-items: flex-start;
    display: flex;
    gap: .85rem;
    min-width: 0;
}

.aau-health-status-mark,
.aau-health-card__marker {
    background: var(--comm-warning);
    border: 5px solid color-mix(in srgb, var(--comm-warning) 14%, var(--comm-surface));
    border-radius: 999px;
    box-sizing: content-box;
    flex: 0 0 12px;
    height: 12px;
    margin-top: .15rem;
    width: 12px;
}

.aau-health-command--ready .aau-health-status-mark,
.aau-health-card--ready .aau-health-card__marker {
    background: var(--comm-success);
    border-color: color-mix(in srgb, var(--comm-success) 14%, var(--comm-surface));
}

.aau-health-command--critical .aau-health-status-mark,
.aau-health-card--critical .aau-health-card__marker {
    background: var(--comm-danger);
    border-color: color-mix(in srgb, var(--comm-danger) 14%, var(--comm-surface));
}

.aau-health-command h3 {
    color: var(--comm-text);
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    letter-spacing: -.03em;
    margin: .1rem 0 .25rem;
}

.aau-health-command p:not(.aau-eyebrow) {
    color: var(--comm-text-muted);
    margin: 0;
    max-width: 720px;
}

.aau-health-command__counts {
    display: grid;
    gap: .45rem;
    grid-template-columns: repeat(3, minmax(70px, 1fr));
}

.aau-health-command__counts > span {
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-control);
    display: grid;
    gap: .08rem;
    min-width: 72px;
    padding: .5rem .65rem;
    text-align: center;
}

.aau-health-command__counts small {
    color: var(--comm-text-soft);
    font-size: .64rem;
    font-weight: 750;
}

.aau-health-command__counts strong {
    color: var(--comm-text);
    font-size: 1rem;
}

.aau-health-section {
    display: grid;
    gap: var(--comm-space-3);
}

.aau-health-grid--modern {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-health-grid--modern .aau-health-card {
    border-left-width: 1px;
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    flex-direction: column;
    gap: .75rem;
    min-height: 150px;
    padding: 1rem;
}

.aau-health-grid--modern .aau-health-card header {
    align-items: flex-start;
    display: flex;
    gap: .7rem;
    justify-content: flex-start;
}

.aau-health-grid--modern .aau-health-card header > div {
    min-width: 0;
}

.aau-health-grid--modern .aau-health-card h3 {
    color: var(--comm-text);
    font-size: .9rem;
}

.aau-health-grid--modern .aau-health-card p {
    color: var(--comm-text-muted);
    font-size: .76rem;
    line-height: 1.45;
    margin: .22rem 0 0;
}

.aau-health-grid--modern .aau-health-card footer {
    margin-top: auto;
    padding-inline-start: 2rem;
}

.aau-health-disclosure {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow: hidden;
}

.aau-health-disclosure > summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    list-style: none;
    min-height: 64px;
    padding: .85rem 1rem;
}

.aau-health-disclosure > summary::-webkit-details-marker { display: none; }

.aau-health-disclosure > summary > span:first-child {
    display: grid;
    gap: .08rem;
}

.aau-health-disclosure > summary strong {
    color: var(--comm-text);
    font-size: .9rem;
}

.aau-health-disclosure > summary small {
    color: var(--comm-text-muted);
    font-size: .74rem;
}

.aau-health-disclosure__chevron {
    color: var(--comm-text-soft);
    font-size: 1rem;
    transition: transform .16s ease;
}

.aau-health-disclosure[open] .aau-health-disclosure__chevron {
    transform: rotate(180deg);
}

.aau-health-disclosure__body {
    border-top: 1px solid var(--comm-border);
    padding: .75rem;
}

.aau-health-disclosure .aau-health-table {
    border: 0;
    border-radius: var(--comm-radius-md);
    background: var(--comm-surface-soft);
}

.aau-health-panels {
    display: grid;
    gap: var(--comm-space-4);
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-health-panel {
    display: grid;
    gap: var(--comm-space-3);
    min-width: 0;
}

.aau-health-panel .aau-health-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-health-panel .aau-health-metric {
    background: var(--comm-surface-soft);
    border-color: var(--comm-border);
    border-radius: var(--comm-radius-control);
}

.aau-health-cron {
    background: color-mix(in srgb, var(--comm-info) 6%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--comm-info) 24%, var(--comm-border));
    border-radius: var(--comm-radius-lg);
    padding: 1rem 1.1rem;
}

.aau-health-cron > div {
    display: grid;
    gap: .18rem;
}

.aau-health-cron strong {
    color: var(--comm-text);
}

.aau-health-cron span {
    color: var(--comm-text-muted);
    font-size: .78rem;
    line-height: 1.5;
}

@media (max-width: 1050px) {
    .aau-settings-status-grid,
    .aau-health-grid--modern {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aau-health-command {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .aau-health-command__badge {
        display: none;
    }
}

@media (max-width: 900px) {
    .aau-settings-workspace,
    .aau-category-layout--modern,
    .aau-health-panels {
        grid-template-columns: 1fr;
    }

    .aau-settings-nav,
    .aau-category-editor {
        position: static;
    }

    .aau-settings-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .aau-settings-nav > .aau-eyebrow {
        grid-column: 1 / -1;
    }
}

@media (max-width: 720px) {
    .aau-settings-status-grid,
    .aau-category-overview,
    .aau-health-grid--modern,
    .aau-health-command {
        grid-template-columns: 1fr;
    }

    .aau-settings-nav {
        display: flex;
        gap: .35rem;
        overflow-x: auto;
        padding: .55rem;
        scrollbar-width: thin;
    }

    .aau-settings-nav > .aau-eyebrow {
        display: none;
    }

    .aau-settings-nav a {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .aau-settings-actions {
        align-items: stretch;
        bottom: .35rem;
        flex-direction: column;
    }

    .aau-settings-actions .aau-button {
        width: 100%;
    }

    .aau-category-card__meta,
    .aau-health-panel .aau-health-metrics {
        grid-template-columns: 1fr;
    }

    .aau-health-command__counts {
        width: 100%;
    }

    .aau-health-command__status {
        align-items: flex-start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-category-card,
    .aau-health-disclosure__chevron {
        transition: none;
    }
}

@media (forced-colors: active) {
    .aau-settings-status,
    .aau-settings-nav,
    .aau-category-overview__metric,
    .aau-category-card,
    .aau-health-command,
    .aau-health-disclosure,
    .aau-health-panel,
    .aau-health-cron {
        border-color: CanvasText;
        box-shadow: none;
    }

    .aau-settings-status__marker,
    .aau-health-status-mark,
    .aau-health-card__marker,
    .aau-category-swatch {
        forced-color-adjust: none;
    }
}

/* ========================================================================
   Al-Amal Communications 0.15.00 — UX Phase F
   Public UI + responsive + accessibility + final public CSS consolidation.
   This section is the canonical public-facing presentation layer. Historical
   0.7.x and 0.12.01 public-directory blocks were removed to avoid cascading
   override debt. Publishing, privacy and authorization behaviour is unchanged.
   ======================================================================== */

/* Public shell and masthead. */
.aau-public-page {
    margin-inline: auto;
    max-width: 1240px;
    padding-block: clamp(.8rem, 2vw, 1.25rem) clamp(2.5rem, 5vw, 4.5rem);
    width: 100%;
}

.aau-public-directory--modern {
    display: grid;
    gap: 1rem;
}

.aau-public-masthead {
    align-items: end;
    background:
        radial-gradient(circle at 90% 10%, color-mix(in srgb, var(--comm-primary) 12%, transparent) 0 22%, transparent 23%),
        linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 78%, var(--comm-surface)) 0%, var(--comm-surface) 70%);
    border: 1px solid var(--comm-border);
    border-radius: calc(var(--comm-radius-lg) + 4px);
    box-shadow: var(--comm-shadow-md);
    display: grid;
    gap: clamp(1rem, 4vw, 2.4rem);
    grid-template-columns: minmax(0, 1fr) auto;
    overflow: hidden;
    padding: clamp(1.4rem, 4vw, 2.7rem);
    position: relative;
}

.aau-public-masthead__copy {
    min-width: 0;
    position: relative;
    z-index: 1;
}

.aau-public-masthead h1 {
    color: var(--comm-text);
    font-size: clamp(2rem, 5vw, 3.8rem);
    letter-spacing: -.045em;
    line-height: 1.02;
    margin: .45rem 0 .7rem;
    max-width: 17ch;
    text-wrap: balance;
}

.aau-public-masthead__copy > p:not(.aau-eyebrow) {
    color: var(--comm-text-muted);
    font-size: clamp(.96rem, 1.5vw, 1.08rem);
    line-height: 1.65;
    margin: 0;
    max-width: 66ch;
}

.aau-public-masthead__meta {
    align-items: center;
    color: var(--comm-text-soft);
    display: flex;
    flex-wrap: wrap;
    font-size: .75rem;
    gap: .38rem;
    margin-top: 1rem;
}

.aau-public-masthead__meta strong {
    color: var(--comm-text-muted);
    font-weight: 800;
}

.aau-public-masthead__actions {
    align-self: start;
    position: relative;
    z-index: 1;
}

/* Public navigation, search and results controls. */
.aau-public-filterbar {
    background: color-mix(in srgb, var(--comm-surface) 96%, var(--comm-primary-soft));
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    gap: .25rem;
    overflow-x: auto;
    padding: .35rem;
    scrollbar-width: thin;
}

.aau-public-filterbar a {
    align-items: center;
    border: 1px solid transparent;
    border-radius: var(--comm-radius-control);
    color: var(--comm-text-muted);
    display: inline-flex;
    flex: 0 0 auto;
    font-size: .78rem;
    font-weight: 780;
    justify-content: center;
    min-height: 40px;
    padding: .48rem .78rem;
    text-decoration: none;
}

.aau-public-filterbar a:hover,
.aau-public-filterbar a:focus-visible {
    background: var(--comm-surface-soft);
    color: var(--comm-primary-hover);
}

.aau-public-filterbar a.is-active {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover);
}

.aau-public-search-panel {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow: clip;
}

.aau-public-search-panel > summary {
    align-items: center;
    color: var(--comm-text);
    cursor: pointer;
    display: flex;
    font-size: .82rem;
    font-weight: 800;
    gap: .55rem;
    min-height: 46px;
    padding: .68rem .85rem;
}

.aau-public-search-panel[open] > summary {
    border-bottom: 1px solid var(--comm-border);
}

.aau-public-search-form {
    align-items: end;
    display: grid;
    gap: .75rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: .85rem;
}

.aau-public-results-heading {
    align-items: end;
    border-bottom: 1px solid var(--comm-border);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: .3rem .1rem .8rem;
}

.aau-public-results-heading h2 {
    color: var(--comm-text);
    font-size: clamp(1.35rem, 2.4vw, 1.9rem);
    letter-spacing: -.025em;
    line-height: 1.15;
    margin: .15rem 0 .18rem;
}

.aau-public-results-heading p:not(.aau-eyebrow) {
    color: var(--comm-text-soft);
    font-size: .75rem;
    margin: 0;
}

.aau-public-results-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.aau-clear-filter {
    color: var(--comm-primary-hover);
    font-size: .75rem;
    font-weight: 800;
    text-decoration: none;
}

.aau-view-toggle {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-control);
    display: inline-flex;
    padding: .18rem;
}

.aau-view-toggle a {
    align-items: center;
    border-radius: calc(var(--comm-radius-control) - 3px);
    color: var(--comm-text-soft);
    display: inline-flex;
    font-size: .72rem;
    font-weight: 800;
    justify-content: center;
    min-height: 34px;
    min-width: 54px;
    padding: .34rem .55rem;
    text-decoration: none;
}

.aau-view-toggle a.is-active {
    background: var(--comm-surface);
    box-shadow: var(--comm-shadow-sm);
    color: var(--comm-primary-hover);
}

/* Editorial public grid. */
.aau-public-grid--editorial {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-public-card {
    --aau-public-type-accent: var(--comm-primary);
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    position: relative;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-public-card--update { --aau-public-type-accent: var(--comm-primary); }
.aau-public-card--weekly-preview { --aau-public-type-accent: var(--comm-success); }
.aau-public-card--monthly-plan { --aau-public-type-accent: var(--comm-warning); }
.aau-public-card--event { --aau-public-type-accent: var(--comm-info); }

.aau-public-card::before {
    background: var(--aau-public-type-accent);
    content: "";
    height: 3px;
    inset: 0 0 auto;
    opacity: .78;
    position: absolute;
    z-index: 2;
}

.aau-public-card:hover,
.aau-public-card:focus-within {
    border-color: color-mix(in srgb, var(--aau-public-type-accent) 32%, var(--comm-border));
    box-shadow: var(--comm-shadow-hover);
    transform: translateY(-2px);
}

.aau-public-card.is-cancelled {
    opacity: .72;
}

.aau-public-card__image {
    aspect-ratio: 16 / 8.5;
    background: var(--comm-surface-soft);
    overflow: hidden;
}

.aau-public-card__image img {
    height: 100%;
    object-fit: cover;
    transition: transform .2s ease;
    width: 100%;
}

.aau-public-card:hover .aau-public-card__image img {
    transform: scale(1.015);
}

.aau-public-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: .72rem;
    padding: 1rem 1.05rem;
}

.aau-public-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
}

.aau-public-card__heading {
    align-items: start;
    display: grid;
    gap: .75rem;
    grid-template-columns: auto minmax(0, 1fr);
}

.aau-public-card:not(.aau-public-card--event) .aau-public-card__heading,
.aau-public-card--event .aau-public-card__heading:not(:has(.aau-public-card__date)) {
    grid-template-columns: minmax(0, 1fr);
}

.aau-public-card__date {
    align-content: center;
    background: color-mix(in srgb, var(--aau-public-type-accent) 8%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-public-type-accent) 26%, var(--comm-border));
    border-radius: var(--comm-radius-md);
    display: grid;
    justify-items: center;
    min-width: 58px;
    padding: .55rem .45rem;
}

.aau-public-card__date strong {
    color: var(--comm-text);
    font-size: 1.55rem;
    letter-spacing: -.045em;
    line-height: 1;
}

.aau-public-card__date span {
    color: var(--aau-public-type-accent);
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .08em;
    margin-top: .22rem;
    text-transform: uppercase;
}

.aau-public-card h2 {
    font-size: 1.08rem;
    letter-spacing: -.015em;
    line-height: 1.32;
    margin: .05rem 0 .22rem;
}

.aau-public-card__title-link {
    color: var(--comm-text);
    text-decoration: none;
}

.aau-public-card__title-link::after {
    content: "";
    inset: 0;
    position: absolute;
    z-index: 1;
}

.aau-public-card__date-label {
    color: var(--comm-text-soft);
    font-size: .72rem;
    line-height: 1.4;
    margin: 0;
}

.aau-public-card__summary {
    color: var(--comm-text-muted);
    display: -webkit-box;
    font-size: .82rem;
    line-height: 1.58;
    margin: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.aau-public-card__facts {
    background: var(--comm-surface-soft);
    border-radius: var(--comm-radius-md);
    display: grid;
    gap: .5rem;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    padding: .65rem .7rem;
}

.aau-public-card__facts span {
    color: var(--comm-text-muted);
    display: grid;
    font-size: .72rem;
    gap: .14rem;
}

.aau-public-card__facts b {
    color: var(--comm-text-soft);
    font-size: .61rem;
    letter-spacing: .065em;
    text-transform: uppercase;
}

.aau-public-card footer {
    align-items: center;
    border-top: 1px solid var(--comm-border);
    display: flex;
    gap: .6rem;
    justify-content: space-between;
    margin-top: auto;
    padding-top: .7rem;
}

.aau-public-card__source {
    color: var(--comm-text-soft);
    font-size: .68rem;
}

.aau-public-card__cta {
    color: var(--comm-primary-hover);
    font-size: .72rem;
    font-weight: 850;
}

/* List view. */
.aau-public-list {
    display: grid;
    gap: .75rem;
}

.aau-public-list-card {
    --aau-public-type-accent: var(--comm-primary);
    align-items: stretch;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: .85rem;
    grid-template-columns: 150px minmax(0, 1fr) minmax(185px, 220px);
    min-width: 0;
    padding: .72rem;
    position: relative;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-public-list-card--update { --aau-public-type-accent: var(--comm-primary); }
.aau-public-list-card--weekly-preview { --aau-public-type-accent: var(--comm-success); }
.aau-public-list-card--monthly-plan { --aau-public-type-accent: var(--comm-warning); }
.aau-public-list-card--event { --aau-public-type-accent: var(--comm-info); }

.aau-public-list-card:hover,
.aau-public-list-card:focus-within {
    border-color: color-mix(in srgb, var(--aau-public-type-accent) 30%, var(--comm-border));
    box-shadow: var(--comm-shadow-hover);
    transform: translateY(-1px);
}

.aau-public-list-card.is-cancelled {
    opacity: .72;
}

.aau-public-list-card__media {
    background: var(--comm-surface-soft);
    border-radius: var(--comm-radius-md);
    min-height: 126px;
    overflow: hidden;
}

.aau-public-list-card__media img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.aau-public-list-card__media--date {
    align-content: center;
    display: grid;
    gap: .45rem;
    justify-items: center;
    padding: .65rem;
    text-align: center;
}

.aau-public-list-card__media--date time {
    align-content: center;
    background: var(--comm-surface);
    border: 1px solid color-mix(in srgb, var(--aau-public-type-accent) 28%, var(--comm-border));
    border-radius: var(--comm-radius-md);
    display: grid;
    justify-items: center;
    min-width: 64px;
    padding: .6rem .5rem;
}

.aau-public-list-card__media--date time strong {
    color: var(--comm-text);
    font-size: 1.65rem;
    letter-spacing: -.045em;
    line-height: 1;
}

.aau-public-list-card__media--date time span,
.aau-public-list-card__media--date small {
    color: var(--aau-public-type-accent);
    font-size: .64rem;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.aau-public-list-card__type-mark,
.aau-public-related-card__type-mark {
    align-items: center;
    background: color-mix(in srgb, var(--aau-public-type-accent) 10%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-public-type-accent) 30%, var(--comm-border));
    border-radius: var(--comm-radius-md);
    color: var(--aau-public-type-accent);
    display: inline-flex;
    font-size: 1.35rem;
    font-weight: 850;
    height: 54px;
    justify-content: center;
    width: 54px;
}

.aau-public-list-card__content {
    align-content: center;
    display: grid;
    gap: .42rem;
    min-width: 0;
    padding-block: .22rem;
}

.aau-public-list-card__content h2 {
    font-size: clamp(1rem, 1.8vw, 1.28rem);
    letter-spacing: -.018em;
    line-height: 1.3;
    margin: 0;
}

.aau-public-list-card__title {
    color: var(--comm-text);
    text-decoration: none;
}

.aau-public-list-card__title::after {
    content: "";
    inset: 0;
    position: absolute;
    z-index: 1;
}

.aau-public-list-card__content > p {
    color: var(--comm-text-muted);
    display: -webkit-box;
    font-size: .8rem;
    line-height: 1.5;
    margin: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.aau-public-list-card__cta {
    color: var(--comm-primary-hover);
    font-size: .72rem;
    font-weight: 850;
}

.aau-public-list-card__facts {
    align-content: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    display: grid;
    gap: .55rem;
    margin: 0;
    padding: .72rem .8rem;
}

.aau-public-list-card__facts > div {
    display: grid;
    gap: .12rem;
}

.aau-public-list-card__facts dt {
    color: var(--comm-text-soft);
    font-size: .6rem;
    font-weight: 850;
    letter-spacing: .065em;
    text-transform: uppercase;
}

.aau-public-list-card__facts dd {
    color: var(--comm-text-muted);
    font-size: .75rem;
    font-weight: 650;
    margin: 0;
}

/* Empty state and pagination. */
.aau-public-empty {
    align-items: center;
    background: var(--comm-surface);
    border: 1px dashed var(--comm-border-strong);
    border-radius: var(--comm-radius-lg);
    display: flex;
    flex-direction: column;
    gap: .55rem;
    justify-content: center;
    min-height: 260px;
    padding: 2rem;
    text-align: center;
}

.aau-public-empty__icon {
    align-items: center;
    background: var(--comm-primary-soft);
    border-radius: 999px;
    color: var(--comm-primary-hover);
    display: inline-flex;
    height: 58px;
    justify-content: center;
    width: 58px;
}

.aau-public-empty__icon svg {
    fill: none;
    height: 28px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.65;
    width: 28px;
}

.aau-public-empty h2 {
    color: var(--comm-text);
    font-size: 1.1rem;
    margin: .1rem 0 0;
}

.aau-public-empty p {
    color: var(--comm-text-muted);
    font-size: .82rem;
    line-height: 1.55;
    margin: 0;
    max-width: 54ch;
}

.aau-public-pagination {
    align-items: center;
    display: grid;
    gap: .75rem;
    grid-template-columns: minmax(90px, 1fr) auto minmax(90px, 1fr);
    margin-top: .35rem;
    padding-top: .7rem;
}

.aau-public-pagination__edge {
    color: var(--comm-primary-hover);
    font-size: .74rem;
    font-weight: 800;
    text-decoration: none;
}

.aau-public-pagination__edge:last-child {
    justify-self: end;
}

.aau-public-pagination .is-disabled {
    color: var(--comm-text-soft);
    opacity: .68;
}

.aau-public-pagination__pages {
    align-items: center;
    display: flex;
    gap: .25rem;
}

.aau-public-pagination__pages a,
.aau-public-pagination__pages span {
    align-items: center;
    border-radius: var(--comm-radius-control);
    display: inline-flex;
    font-size: .74rem;
    height: 38px;
    justify-content: center;
    min-width: 38px;
    padding-inline: .35rem;
    text-decoration: none;
}

.aau-public-pagination__pages a {
    border: 1px solid var(--comm-border);
    color: var(--comm-text-muted);
}

.aau-public-pagination__pages a:hover,
.aau-public-pagination__pages a:focus-visible {
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover);
}

.aau-public-pagination__pages .is-current {
    background: var(--comm-primary);
    color: #fff;
    font-weight: 850;
}

/* Public publication detail. */
.aau-public-story-page {
    display: grid;
    gap: .9rem;
}

.aau-public-story-toolbar {
    align-items: center;
    display: flex;
    gap: .7rem;
    justify-content: space-between;
    min-height: 44px;
    padding-inline: .1rem;
}

.aau-public-story-toolbar__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.aau-public-story-toolbar .aau-back-link {
    align-items: center;
    border-radius: var(--comm-radius-control);
    color: var(--comm-text-muted);
    display: inline-flex;
    font-size: .75rem;
    font-weight: 780;
    min-height: 40px;
    padding: .45rem .55rem;
    text-decoration: none;
}

.aau-public-story-toolbar > .aau-back-link:first-child {
    color: var(--comm-primary-hover);
}

.aau-public-story-toolbar .aau-back-link:hover,
.aau-public-story-toolbar .aau-back-link:focus-visible {
    background: var(--comm-surface-soft);
}

.aau-public-story {
    --aau-public-type-accent: var(--comm-primary);
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: calc(var(--comm-radius-lg) + 3px);
    box-shadow: var(--comm-shadow-md);
    overflow: clip;
}

.aau-public-story--update { --aau-public-type-accent: var(--comm-primary); }
.aau-public-story--weekly-preview { --aau-public-type-accent: var(--comm-success); }
.aau-public-story--monthly-plan { --aau-public-type-accent: var(--comm-warning); }
.aau-public-story--event { --aau-public-type-accent: var(--comm-info); }

.aau-public-story__hero {
    background:
        radial-gradient(circle at 86% 12%, color-mix(in srgb, var(--aau-public-type-accent) 10%, transparent) 0 20%, transparent 21%),
        linear-gradient(135deg, color-mix(in srgb, var(--aau-public-type-accent) 7%, var(--comm-surface)) 0%, var(--comm-surface) 70%);
    display: grid;
    min-height: 270px;
}

.aau-public-story__hero.has-image {
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
}

.aau-public-story__hero-copy {
    align-content: center;
    display: grid;
    gap: 1rem;
    padding: clamp(1.4rem, 4vw, 2.8rem);
}

.aau-public-story__headline {
    align-items: start;
    display: grid;
    gap: clamp(.9rem, 2vw, 1.3rem);
    grid-template-columns: auto minmax(0, 1fr);
}

.aau-public-story__headline:not(:has(.aau-public-story-date)) {
    grid-template-columns: minmax(0, 1fr);
}

.aau-public-story h1 {
    color: var(--comm-text);
    font-size: clamp(2rem, 5vw, 3.7rem);
    letter-spacing: -.045em;
    line-height: 1.04;
    margin: .4rem 0 .65rem;
    max-width: 20ch;
    text-wrap: balance;
}

.aau-public-story__summary {
    color: var(--comm-text-muted);
    font-size: clamp(.98rem, 1.7vw, 1.12rem);
    line-height: 1.7;
    margin: 0;
    max-width: 66ch;
}

.aau-public-story__byline {
    align-items: center;
    color: var(--comm-text-soft);
    display: flex;
    flex-wrap: wrap;
    font-size: .72rem;
    gap: .4rem .7rem;
    margin-top: .9rem;
}

.aau-public-story__byline > * + *::before {
    color: var(--comm-border-strong);
    content: "•";
    margin-inline-end: .7rem;
}

.aau-public-story-date {
    align-content: center;
    background: color-mix(in srgb, var(--aau-public-type-accent) 8%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-public-type-accent) 30%, var(--comm-border));
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    justify-items: center;
    min-width: 104px;
    padding: .75rem .8rem;
    text-align: center;
}

.aau-public-story-date > span {
    color: var(--aau-public-type-accent);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.aau-public-story-date > strong {
    color: var(--comm-text);
    font-size: 2.2rem;
    letter-spacing: -.05em;
    line-height: 1;
    margin: .18rem 0;
}

.aau-public-story-date > small {
    border-top: 1px solid var(--comm-border);
    color: var(--comm-text-soft);
    font-size: .62rem;
    margin-top: .4rem;
    padding-top: .4rem;
    width: 100%;
}

.aau-public-story__image {
    background: var(--comm-surface-soft);
    min-height: 310px;
}

.aau-public-story__image img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.aau-public-story__facts {
    border-top: 1px solid var(--comm-border);
    display: grid;
    gap: 0;
    grid-template-columns: minmax(180px, .35fr) minmax(0, 1fr);
}

.aau-public-story__section-heading {
    align-content: center;
    background: var(--comm-surface-soft);
    border-inline-end: 1px solid var(--comm-border);
    display: grid;
    padding: 1.1rem 1.2rem;
}

.aau-public-story__section-heading h2 {
    color: var(--comm-text);
    font-size: 1rem;
    margin: .15rem 0 0;
}

.aau-public-story__facts .aau-event-facts {
    background: var(--comm-border);
    border: 0;
    border-radius: 0;
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    margin: 0;
}

.aau-public-story__facts .aau-event-facts > div {
    background: var(--comm-surface);
    padding: 1rem 1.15rem;
}

.aau-public-story__facts .aau-event-facts dt {
    color: var(--comm-text-soft);
    font-size: .63rem;
    letter-spacing: .075em;
}

.aau-public-story__facts .aau-event-facts dd {
    color: var(--comm-text);
    font-size: .85rem;
    line-height: 1.5;
    margin-top: .25rem;
}

.aau-public-story__reading {
    color: var(--comm-text);
    font-size: 1rem;
    line-height: 1.8;
    margin-inline: auto;
    max-width: 84ch;
    padding: clamp(1.8rem, 5vw, 3rem) clamp(1.1rem, 5vw, 2.4rem);
    width: 100%;
}

.aau-public-story__reading > :first-child { margin-top: 0; }
.aau-public-story__reading > :last-child { margin-bottom: 0; }
.aau-public-story__reading h1,
.aau-public-story__reading h2,
.aau-public-story__reading h3,
.aau-public-story__reading h4 {
    color: var(--comm-text);
    line-height: 1.25;
    margin-top: 1.55em;
    text-wrap: balance;
}

.aau-public-story__reading img,
.aau-public-story__reading video,
.aau-public-story__reading iframe {
    height: auto;
    max-width: 100%;
}

.aau-public-story__portal-note {
    align-items: center;
    background: color-mix(in srgb, var(--comm-primary-soft) 35%, var(--comm-surface));
    border: 0;
    border-top: 1px solid var(--comm-border);
    border-radius: 0;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin: 0;
    padding: clamp(1.2rem, 3vw, 1.8rem);
}

.aau-public-story__portal-note h2 {
    color: var(--comm-text);
    font-size: 1.05rem;
    margin: .15rem 0 .25rem;
}

.aau-public-story__portal-note p:not(.aau-eyebrow) {
    color: var(--comm-text-muted);
    font-size: .8rem;
    line-height: 1.55;
    margin: 0;
    max-width: 66ch;
}

.aau-public-story__attachments {
    background: var(--comm-surface-soft);
    border: 0;
    border-top: 1px solid var(--comm-border);
    border-radius: 0;
    margin: 0;
    padding: 1.1rem clamp(1rem, 4vw, 1.6rem) 1.35rem;
}

.aau-public-story__attachments .aau-attachments__header {
    border: 0;
    margin: 0 0 .8rem;
    padding: 0;
}

/* Related public communications. */
.aau-public-related {
    display: grid;
    gap: .8rem;
    margin-top: .35rem;
}

.aau-public-related__heading {
    align-items: end;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.aau-public-related__heading h2 {
    color: var(--comm-text);
    font-size: 1.15rem;
    margin: .15rem 0 0;
}

.aau-public-related-grid {
    display: grid;
    gap: .7rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aau-public-related-card {
    --aau-public-type-accent: var(--comm-primary);
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: .72rem;
    grid-template-columns: auto minmax(0, 1fr);
    min-width: 0;
    padding: .75rem;
    position: relative;
}

.aau-public-related-card--update { --aau-public-type-accent: var(--comm-primary); }
.aau-public-related-card--weekly-preview { --aau-public-type-accent: var(--comm-success); }
.aau-public-related-card--monthly-plan { --aau-public-type-accent: var(--comm-warning); }
.aau-public-related-card--event { --aau-public-type-accent: var(--comm-info); }

.aau-public-related-card > time {
    align-content: center;
    background: color-mix(in srgb, var(--aau-public-type-accent) 8%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-public-type-accent) 28%, var(--comm-border));
    border-radius: var(--comm-radius-md);
    display: grid;
    justify-items: center;
    min-width: 52px;
    padding: .45rem;
}

.aau-public-related-card > time strong {
    color: var(--comm-text);
    font-size: 1.35rem;
    letter-spacing: -.04em;
    line-height: 1;
}

.aau-public-related-card > time span,
.aau-public-related-card > div > span {
    color: var(--aau-public-type-accent);
    font-size: .6rem;
    font-weight: 850;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.aau-public-related-card h3 {
    font-size: .86rem;
    line-height: 1.35;
    margin: .18rem 0 .12rem;
}

.aau-public-related-card h3 a {
    color: var(--comm-text);
    text-decoration: none;
}

.aau-public-related-card h3 a::after {
    content: "";
    inset: 0;
    position: absolute;
}

.aau-public-related-card small {
    color: var(--comm-text-soft);
    font-size: .64rem;
}

/* Public preview uses the same story system while remaining clearly non-public. */
.aau-public-preview-page {
    display: grid;
    gap: .8rem;
}

.aau-public-preview-banner {
    margin: 0;
}

.aau-public-story--preview {
    box-shadow: var(--comm-shadow-sm);
}

/* Accessibility and interaction polish. */
.aau-public-page a:focus-visible,
.aau-public-page button:focus-visible,
.aau-public-page summary:focus-visible,
.aau-public-page input:focus-visible,
.aau-public-page select:focus-visible,
.aau-public-page textarea:focus-visible {
    outline: 3px solid var(--comm-focus);
    outline-offset: 3px;
}

.aau-public-card__title-link:focus-visible,
.aau-public-list-card__title:focus-visible,
.aau-public-related-card h3 a:focus-visible {
    outline: 0;
}

.aau-public-card:has(.aau-public-card__title-link:focus-visible),
.aau-public-list-card:has(.aau-public-list-card__title:focus-visible),
.aau-public-related-card:has(h3 a:focus-visible) {
    border-color: var(--comm-focus);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--comm-focus) 35%, transparent), var(--comm-shadow-sm);
}

/* Responsive public layout. */
@media (max-width: 1080px) {
    .aau-public-grid--editorial {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aau-public-list-card {
        grid-template-columns: 135px minmax(0, 1fr);
    }

    .aau-public-list-card__facts {
        grid-column: 2;
        grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    }

    .aau-public-story__hero.has-image {
        grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr);
    }
}

@media (max-width: 820px) {
    .aau-public-masthead {
        align-items: start;
        grid-template-columns: 1fr;
    }

    .aau-public-masthead__actions {
        justify-self: start;
    }

    .aau-public-search-form {
        grid-template-columns: 1fr;
    }

    .aau-public-results-heading,
    .aau-public-related__heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-public-story__hero.has-image {
        grid-template-columns: 1fr;
    }

    .aau-public-story__image {
        aspect-ratio: 16 / 8;
        min-height: 0;
        order: -1;
    }

    .aau-public-story__facts {
        grid-template-columns: 1fr;
    }

    .aau-public-story__section-heading {
        border-bottom: 1px solid var(--comm-border);
        border-inline-end: 0;
    }

    .aau-public-related-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .aau-public-page {
        padding-block-start: .45rem;
    }

    .aau-public-masthead {
        border-radius: var(--comm-radius-lg);
        padding: 1.15rem;
    }

    .aau-public-masthead h1 {
        font-size: clamp(1.75rem, 10vw, 2.55rem);
    }

    .aau-public-filterbar {
        margin-inline: -2px;
    }

    .aau-public-results-heading {
        align-items: stretch;
    }

    .aau-public-results-actions {
        align-items: stretch;
        justify-content: space-between;
    }

    .aau-view-toggle {
        margin-inline-start: auto;
    }

    .aau-public-grid--editorial {
        grid-template-columns: 1fr;
    }

    .aau-public-list-card {
        grid-template-columns: 1fr;
    }

    .aau-public-list-card__media {
        aspect-ratio: 16 / 7.5;
        min-height: 0;
    }

    .aau-public-list-card__media--date {
        aspect-ratio: auto;
        min-height: 108px;
    }

    .aau-public-list-card__facts {
        grid-column: auto;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    }

    .aau-public-pagination {
        grid-template-columns: 1fr 1fr;
    }

    .aau-public-pagination__pages {
        grid-column: 1 / -1;
        grid-row: 1;
        justify-content: center;
    }

    .aau-public-story-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .aau-public-story-toolbar__actions {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    }

    .aau-public-story-toolbar .aau-back-link {
        justify-content: center;
    }

    .aau-public-story__hero {
        min-height: 0;
    }

    .aau-public-story__hero-copy {
        padding: 1.2rem;
    }

    .aau-public-story__headline {
        grid-template-columns: 1fr;
    }

    .aau-public-story-date {
        justify-self: start;
        min-width: 92px;
    }

    .aau-public-story h1 {
        font-size: clamp(1.8rem, 10vw, 2.65rem);
    }

    .aau-public-story__portal-note {
        align-items: stretch;
        flex-direction: column;
    }

    .aau-public-story__portal-note .aau-button {
        justify-content: center;
        width: 100%;
    }
}

@media (max-width: 430px) {
    .aau-public-masthead__meta > span[aria-hidden="true"] {
        display: none;
    }

    .aau-public-masthead__meta {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-public-results-actions {
        flex-direction: column;
    }

    .aau-view-toggle,
    .aau-view-toggle a {
        width: 100%;
    }

    .aau-public-card__heading {
        grid-template-columns: 54px minmax(0, 1fr);
    }

    .aau-public-card:not(.aau-public-card--event) .aau-public-card__heading,
    .aau-public-card--event .aau-public-card__heading:not(:has(.aau-public-card__date)) {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aau-public-page *,
    .aau-public-page *::before,
    .aau-public-page *::after {
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
    }

    .aau-public-card:hover,
    .aau-public-list-card:hover {
        transform: none;
    }

    .aau-public-card:hover .aau-public-card__image img {
        transform: none;
    }
}

@media (forced-colors: active) {
    .aau-public-masthead,
    .aau-public-filterbar,
    .aau-public-search-panel,
    .aau-view-toggle,
    .aau-public-card,
    .aau-public-list-card,
    .aau-public-story,
    .aau-public-related-card,
    .aau-public-empty,
    .aau-public-story-date,
    .aau-public-card__date,
    .aau-public-list-card__facts,
    .aau-public-list-card__type-mark,
    .aau-public-related-card__type-mark {
        border-color: CanvasText !important;
        box-shadow: none !important;
    }

    .aau-public-card::before {
        background: CanvasText !important;
    }

    .aau-public-pagination__pages .is-current {
        background: Highlight;
        color: HighlightText;
    }
}

@media print {
    .aau-public-masthead__actions,
    .aau-public-filterbar,
    .aau-public-search-panel,
    .aau-public-results-actions,
    .aau-public-pagination,
    .aau-public-story-toolbar,
    .aau-public-related {
        display: none !important;
    }

    .aau-public-page {
        max-width: none;
        padding: 0;
    }

    .aau-public-masthead,
    .aau-public-card,
    .aau-public-list-card,
    .aau-public-story {
        box-shadow: none;
    }

    .aau-public-story {
        border: 0;
    }
}

/* Featured publications retain a visible non-colour-only structural accent. */
.aau-public-card.is-featured,
.aau-public-list-card.is-featured {
    border-inline-start-width: 4px;
}


/* Al-Amal Communications 0.15.07 — authenticated Publications List specificity hotfix.
 * Historical staff-feed density rules use page-level selectors with higher specificity.
 * Keep List mode canonical and full-width regardless of those older responsive rules. */
.aau-page:not(.aau-public-page) > .aau-feed.aau-feed--editorial.aau-feed--list {
    grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 761px) {
    .aau-page:not(.aau-public-page) > .aau-feed.aau-feed--editorial.aau-feed--list {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* 0.15.08 — Publications List now deliberately reuses the My Publications table language. */
.aau-feed-list-table-wrap {
    margin-top: .1rem;
}

.aau-feed-list-table .aau-feed-list-status {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: .28rem;
}

.aau-feed-list-table .aau-manage-actions .aau-row-actions--modern {
    justify-content: flex-end;
}

@media (max-width: 1100px) {
    .aau-feed-list-table .aau-manage-actions .aau-row-actions--modern {
        justify-content: flex-start;
    }
}

/* Al-Amal Communications 0.15.10 — Full-width publication reading + attachment presentation modes. */
body.aa-app #content .aau-detail--editorial h2,
.aau-public-page .aau-public-story h1 {
    max-width: none;
}

body.aa-app #content .aau-detail__reading.aau-detail__reading--full,
.aau-public-page .aau-public-story__reading.aau-public-story__reading--full {
    margin-inline: 0;
    max-width: none;
    width: 100%;
}

.aau-upload-display-mode,
.aau-attachment-presentation {
    background: color-mix(in srgb, var(--comm-surface-soft) 72%, var(--comm-surface));
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    padding: .9rem 1rem;
}

.aau-upload-display-mode > legend {
    color: var(--comm-text);
    font-size: .78rem;
    font-weight: 850;
    padding-inline: .2rem;
}

.aau-choice-row {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-choice-row > label,
.aau-attachment-display-choice > label {
    align-items: flex-start;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    cursor: pointer;
    display: flex;
    gap: .55rem;
    padding: .72rem .78rem;
}

.aau-choice-row > label:has(input:checked),
.aau-attachment-display-choice > label:has(input:checked) {
    background: color-mix(in srgb, var(--comm-primary-soft) 48%, var(--comm-surface));
    border-color: var(--comm-primary-border);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--comm-primary) 10%, transparent);
}

.aau-choice-row input,
.aau-attachment-display-choice input {
    margin-top: .16rem;
}

.aau-choice-row b,
.aau-attachment-display-choice label span {
    color: var(--comm-text);
    font-size: .78rem;
    font-weight: 800;
}

.aau-choice-row small,
.aau-attachment-display-choice small {
    color: var(--comm-text-soft);
    display: block;
    font-size: .68rem;
    line-height: 1.45;
    margin-top: .12rem;
}

.aau-attachment-presentation > header {
    align-items: flex-start;
    display: flex;
    gap: .8rem;
}

.aau-attachment-presentation__list {
    display: grid;
    gap: .65rem;
    margin-top: .9rem;
}

.aau-attachment-presentation__item {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    display: grid;
    gap: .8rem;
    grid-template-columns: auto minmax(160px, 1fr) minmax(260px, auto);
    padding: .72rem .78rem;
}

.aau-attachment-presentation__file {
    min-width: 0;
}

.aau-attachment-presentation__file b {
    color: var(--comm-text);
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aau-attachment-presentation__file small {
    color: var(--comm-text-soft);
    display: block;
    font-size: .68rem;
    margin-top: .12rem;
}

.aau-attachment-display-choice {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    justify-content: flex-end;
}

.aau-attachment-display-choice__label {
    color: var(--comm-text-soft);
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .06em;
    margin-inline-end: .15rem;
    text-transform: uppercase;
}

.aau-attachment-display-choice > label {
    align-items: center;
    padding: .45rem .58rem;
}

.aau-inline-documents {
    margin: 0 clamp(1rem, 3vw, 2rem) 1.4rem;
}

.aau-inline-documents__header {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: .8rem;
}

.aau-inline-documents__header h2,
.aau-inline-documents__header h3 {
    color: var(--comm-text);
    font-size: 1rem;
    margin: .08rem 0 0;
}

.aau-inline-documents__header p:last-child {
    color: var(--comm-text-muted);
    font-size: .76rem;
    margin: .28rem 0 0;
}

.aau-inline-documents__list {
    display: grid;
    gap: 1rem;
}

.aau-inline-document {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    overflow: hidden;
}

.aau-inline-document > header {
    align-items: center;
    background: var(--comm-surface-soft);
    border-bottom: 1px solid var(--comm-border);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: .72rem .85rem;
}

.aau-inline-document > header b {
    color: var(--comm-text);
    display: block;
    font-size: .82rem;
}

.aau-inline-document > header small {
    color: var(--comm-text-soft);
    display: block;
    font-size: .66rem;
    margin-top: .12rem;
}

.aau-inline-document__image {
    background: var(--comm-surface-soft);
    margin: 0;
    text-align: center;
}

.aau-inline-document__image img {
    display: block;
    height: auto;
    max-height: 82vh;
    object-fit: contain;
    width: 100%;
}

.aau-inline-document__frame {
    background: #fff;
    border: 0;
    display: block;
    height: clamp(520px, 72vh, 920px);
    width: 100%;
}

.aau-public-story__inline-documents {
    margin-inline: clamp(1rem, 5vw, 2.4rem);
}

@media (max-width: 760px) {
    .aau-choice-row {
        grid-template-columns: 1fr;
    }

    .aau-attachment-presentation__item {
        align-items: stretch;
        grid-template-columns: auto minmax(0, 1fr);
    }

    .aau-attachment-display-choice {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    .aau-inline-document > header {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-inline-document__frame {
        height: 64vh;
        min-height: 420px;
    }
}

@media (forced-colors: active) {
    .aau-choice-row > label:has(input:checked),
    .aau-attachment-display-choice > label:has(input:checked),
    .aau-inline-document,
    .aau-attachment-presentation__item {
        border: 2px solid CanvasText;
    }
}


/* Al-Amal Communications 0.15.11 — clean publication reading surface + Edge-safe inline PDF presentation. */
.aau-detail--clean {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: 0 10px 30px color-mix(in srgb, #0f172a 7%, transparent);
    overflow: hidden;
}

.aau-detail--clean .aau-detail__hero {
    align-items: center;
    background: var(--comm-surface);
    border-bottom: 1px solid var(--comm-border);
    gap: 1.25rem;
    padding: 1.05rem clamp(1rem, 2.6vw, 1.75rem);
}

.aau-detail--clean .aau-detail__heading {
    max-width: none;
    width: 100%;
}

.aau-detail--clean .aau-update-card__meta {
    margin-bottom: .35rem;
}

.aau-detail--clean .aau-detail__summary {
    color: var(--comm-text);
    font-size: clamp(.98rem, 1.35vw, 1.08rem);
    line-height: 1.65;
    margin-top: .3rem;
    max-width: none;
}

.aau-detail--clean .aau-detail__byline {
    border-top: 0;
    margin-top: .5rem;
}

.aau-detail--clean .aau-detail-date-card {
    box-shadow: none;
}

.aau-detail--clean .aau-publication-facts {
    border-radius: var(--comm-radius-md);
    box-shadow: none;
    margin: 1rem clamp(1rem, 2.6vw, 1.75rem) 0;
}

.aau-detail--clean .aau-detail__reading {
    background: transparent;
    border: 0;
    color: var(--comm-text);
    font-size: .98rem;
    line-height: 1.78;
    padding: clamp(1.4rem, 3vw, 2rem) clamp(1rem, 2.8vw, 1.8rem);
}

.aau-detail--clean .aau-detail__reading p {
    margin-block: 0 1.05em;
}

.aau-detail--clean .aau-detail__reading img,
.aau-detail--clean .aau-detail__reading video,
.aau-detail--clean .aau-detail__reading iframe {
    border-radius: var(--comm-radius-md);
    max-width: 100%;
}

.aau-inline-documents--seamless {
    margin: 0;
    padding: 0 clamp(1rem, 2.8vw, 1.8rem) 1.55rem;
}

.aau-inline-documents--seamless .aau-inline-documents__list {
    gap: 1.15rem;
}

.aau-inline-documents--seamless .aau-inline-document {
    border-radius: var(--comm-radius-md);
    box-shadow: none;
}

.aau-inline-documents--seamless .aau-inline-document > header {
    background: var(--comm-surface);
    padding: .65rem .8rem;
}

.aau-inline-document__frame--pdf {
    background: #f1f3f5;
    min-height: min(78vh, 900px);
}

.aau-detail--clean > .aau-attachments--detail {
    box-shadow: none;
    margin-inline: clamp(1rem, 2.8vw, 1.8rem);
}

.aau-detail--clean .aau-admin-summary--insights {
    background: color-mix(in srgb, var(--comm-surface-soft) 72%, var(--comm-surface));
    padding: 1.15rem clamp(1rem, 2.8vw, 1.8rem);
}

.aau-detail--clean .aau-detail__actions--management {
    padding-inline: clamp(1rem, 2.8vw, 1.8rem);
}

@media (max-width: 760px) {
    .aau-detail--clean .aau-detail__hero {
        padding: 1rem;
    }

    .aau-inline-documents--seamless {
        padding-inline: 1rem;
    }
}

/* Al-Amal Communications 0.15.12 — publication detail header hierarchy.
 * The theme page-intro becomes navigation (Back left + native Print right), while the
 * canonical publication title sits in a dedicated second row inside the module view.
 */
/* Al-Amal Communications 0.15.15 — publication detail typography refinement.
 * Keep navigation visibly link-like while giving the publication title stronger 24px hierarchy.
 */
.aa-page-title-slot .aau-view-page-back-heading {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.35;
    margin: 0;
}

.aa-page-title-slot .aau-view-page-back-heading > a {
    align-items: center;
    color: var(--comm-primary) !important;
    display: inline-flex;
    font-size: 12px !important;
    font-weight: 600 !important;
    gap: .28rem;
    line-height: 1.35 !important;
    min-height: 24px;
    padding: .05rem 0;
    text-decoration: none;
}

.aa-page-title-slot .aau-view-page-back-heading > a:hover,
.aa-page-title-slot .aau-view-page-back-heading > a:focus-visible {
    color: var(--comm-primary-hover) !important;
    text-decoration: underline;
    text-underline-offset: .18em;
}

.aau-view-titlebar {
    align-items: center;
    border-bottom: 1px solid var(--comm-border);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: .15rem .05rem .9rem;
}

.aau-view-title {
    color: var(--comm-text);
    flex: 1 1 auto;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -.01em;
    line-height: 1.35;
    margin: 0;
    min-width: 0;
    text-wrap: balance;
}

.aau-view-titlebar__actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: .35rem;
    justify-content: flex-end;
}

.aau-view-titlebar__actions .aau-back-link {
    border-radius: var(--comm-radius-sm);
    color: var(--comm-text-muted);
    font-weight: 700;
    min-height: 36px;
    padding: .42rem .58rem;
}

.aau-view-titlebar__actions .aau-back-link:hover,
.aau-view-titlebar__actions .aau-back-link:focus-visible {
    background: var(--comm-surface-soft);
    color: var(--comm-primary-hover);
}

@media (max-width: 760px) {
    .aau-view-titlebar {
        align-items: flex-start;
        flex-direction: column;
    }

    .aau-view-titlebar__actions {
        justify-content: flex-start;
        width: 100%;
    }
}

/* Al-Amal Communications 0.15.19 — Publication Detail density polish.
 * Event facts are flush/full-width, insight headings are removed from visual flow,
 * and management actions share one consistent control geometry.
 */
.aau-detail--clean .aau-publication-facts--event {
    border-inline: 0;
    border-radius: 0;
    margin: 0;
    max-width: none;
    width: 100%;
}

.aau-detail--clean .aau-publication-facts--event > header {
    display: none;
}

.aau-detail--clean .aau-publication-facts--event .aau-event-facts {
    margin: 0;
    max-width: none;
    width: 100%;
}

.aau-detail--clean .aau-admin-summary--insights {
    padding-top: 1rem;
}

.aau-detail--clean .aau-admin-summary--insights .aau-admin-summary__header {
    display: none;
}

.aau-detail--clean .aau-detail__actions--management {
    align-items: center;
    gap: .45rem;
}

.aau-detail--clean .aau-detail__actions--management .aau-inline-form {
    align-items: stretch;
    display: inline-flex;
    margin: 0;
}

.aau-detail--clean .aau-detail__actions--management .aau-button,
.aau-detail--clean .aau-detail__actions--management .aau-inline-form .aau-button {
    align-items: center;
    border-radius: var(--comm-radius-control);
    box-sizing: border-box;
    display: inline-flex;
    font-size: .76rem;
    font-weight: 700;
    height: 36px;
    justify-content: center;
    line-height: 1.15;
    margin: 0;
    min-height: 36px;
    padding: 0 .82rem;
    white-space: nowrap;
}

@media (max-width: 760px) {
    .aau-detail--clean .aau-detail__actions--management .aau-button,
    .aau-detail--clean .aau-detail__actions--management .aau-inline-form,
    .aau-detail--clean .aau-detail__actions--management .aau-inline-form .aau-button {
        width: 100%;
    }
}

/* Al-Amal Communications 0.15.20 — Event facts / Insights visual alignment.
 * Keep Event facts full-width while using the same soft container + individual card
 * treatment as Publication Insights for a consistent Publication Detail design system.
 */
.aau-detail--clean .aau-publication-facts--event .aau-event-facts {
    background: color-mix(in srgb, var(--comm-surface-soft) 72%, var(--comm-surface));
    border: 0;
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    margin: 0;
    max-width: none;
    padding: 1.15rem clamp(1rem, 2.8vw, 1.8rem);
    width: 100%;
}

.aau-detail--clean .aau-publication-facts--event .aau-event-facts > div {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    box-shadow: none;
    min-height: 0;
    min-width: 0;
    padding: .75rem .8rem;
}

.aau-detail--clean .aau-publication-facts--event .aau-event-facts dt {
    color: var(--comm-text-soft);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .05em;
}

.aau-detail--clean .aau-publication-facts--event .aau-event-facts dd {
    color: var(--comm-text);
    font-size: .86rem;
    font-weight: 650;
    line-height: 1.45;
    margin-top: .28rem;
}

@media (max-width: 760px) {
    .aau-detail--clean .aau-publication-facts--event .aau-event-facts {
        grid-template-columns: 1fr;
        padding: 1rem;
    }
}

/* Al-Amal Communications 0.15.21 — Event facts separator cleanup.
 * The individual fact cards already provide their own borders, so remove the outer
 * Event facts top border/shadow to avoid a duplicate horizontal separator.
 */
.aau-detail--clean .aau-publication-facts--event {
    border-top: 0 !important;
    box-shadow: none;
}

/* Al-Amal Communications 0.15.22 — Publication View link/border polish.
 * Match Back to Communications to the Calendar action-link typography and normalize
 * the Event facts lower separator to the standard Communications border color.
 */
.aa-page-title-slot .aau-view-page-back-heading,
.aa-page-title-slot .aau-view-page-back-heading > a {
    color: var(--comm-primary) !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

.aa-page-title-slot .aau-view-page-back-heading > a:hover,
.aa-page-title-slot .aau-view-page-back-heading > a:focus-visible {
    color: var(--comm-primary-hover) !important;
    text-decoration: underline;
    text-underline-offset: .18em;
}

.aau-detail--clean .aau-publication-facts--event {
    border-bottom: 1px solid var(--comm-border) !important;
}

/* Al-Amal Communications 0.15.23 — publication limit + sort controls. */
.aau-sort-toggle a {
    min-width: 64px;
}

@media (max-width: 620px) {
    .aau-sort-toggle {
        flex-wrap: wrap;
    }
}

@media (max-width: 430px) {
    .aau-sort-toggle {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .aau-sort-toggle a {
        width: auto;
    }
}

/* Al-Amal Communications 0.15.24 — page-size controls + public/private detail parity. */
.aau-page-size-control {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.aau-page-size-control > span {
    color: var(--comm-text-muted);
    font-size: .72rem;
    font-weight: 750;
    white-space: nowrap;
}

.aau-page-size-toggle a {
    min-width: 38px;
    padding-inline: .55rem;
}

.aau-private-pagination {
    margin-top: 1.1rem;
}

.aau-public-detail-page {
    display: grid;
    gap: .9rem;
}

.aau-public-detail-toolbar {
    margin-bottom: -.1rem;
}

.aau-public-view-titlebar {
    margin-bottom: .1rem;
}

.aau-public-detail {
    margin: 0;
}

.aau-public-detail-image {
    background: var(--comm-surface-soft);
    border-bottom: 1px solid var(--comm-border);
    margin: 0;
    padding: clamp(1rem, 2.8vw, 1.8rem);
}

.aau-public-detail-image img {
    border-radius: var(--comm-radius-md);
    display: block;
    height: auto;
    margin-inline: auto;
    max-height: 680px;
    max-width: 100%;
    object-fit: contain;
}

.aau-public-detail .aau-public-private-note {
    border-inline: 0;
    border-radius: 0;
    margin: 0;
}

.aau-public-detail-page .aau-public-related {
    margin-top: .35rem;
}

@media (max-width: 760px) {
    .aau-page-size-control {
        align-items: flex-start;
        flex-direction: column;
        width: 100%;
    }

    .aau-page-size-toggle {
        flex-wrap: wrap;
        width: 100%;
    }

    .aau-public-detail-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Al-Amal Communications 0.15.25 — compact responsive page intro.
 * Al-Amal theme switches .aa-page-intro to column flex below 860px, but its desktop
 * .aa-page-intro-main flex-basis of 360px then becomes vertical height. Reset that
 * basis so small-screen module headers occupy only their real content height.
 */
@media (max-width: 860px) {
    body.aa-app:not(.aa-public-page) .aa-page-intro {
        min-height: 0;
    }

    body.aa-app:not(.aa-public-page) .aa-page-intro-main {
        flex: 0 1 auto;
        width: 100%;
    }

    body.aa-app:not(.aa-public-page) .aa-page-intro-actions {
        flex: 0 0 auto;
        width: 100%;
    }
}


/* Al-Amal Communications 0.15.26 — secure cron log reader. */
.aau-cron-log-panel {
    margin-top: 1rem;
}

.aau-cron-log-panel > header {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.aau-cron-log-panel code,
.aau-cron-log-table code {
    overflow-wrap: anywhere;
}

.aau-cron-log-table {
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    margin-top: .9rem;
    overflow: hidden;
}

.aau-cron-log-table__head,
.aau-cron-log-table__row {
    align-items: center;
    display: grid;
    gap: .75rem;
    grid-template-columns: minmax(135px, .8fr) minmax(180px, 1.4fr) minmax(80px, .45fr) minmax(150px, .8fr);
    padding: .7rem .85rem;
}

.aau-cron-log-table__head {
    background: var(--comm-surface-soft);
    color: var(--comm-text-muted);
    font-size: .72rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.aau-cron-log-table__row + .aau-cron-log-table__row {
    border-top: 1px solid var(--comm-border);
}

.aau-cron-log-table__row code,
.aau-cron-log-table__row span {
    color: var(--comm-text-muted);
    font-size: .78rem;
}

.aau-cron-log-readers {
    display: grid;
    gap: .65rem;
    margin-top: .9rem;
}

.aau-cron-log-reader {
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    overflow: hidden;
}

.aau-cron-log-reader > summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    list-style: none;
    padding: .75rem .85rem;
}

.aau-cron-log-reader > summary::-webkit-details-marker {
    display: none;
}

.aau-cron-log-reader > summary span:first-child {
    display: grid;
    gap: .1rem;
}

.aau-cron-log-reader > summary small {
    color: var(--comm-text-muted);
    font-weight: 500;
}

.aau-cron-log-reader > div {
    border-top: 1px solid var(--comm-border);
    padding: .75rem .85rem;
}

.aau-cron-log-reader pre {
    background: color-mix(in srgb, var(--comm-surface-soft) 82%, var(--comm-surface));
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    color: var(--comm-text);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: .76rem;
    line-height: 1.55;
    margin: 0;
    max-height: 320px;
    overflow: auto;
    padding: .8rem;
    white-space: pre-wrap;
    word-break: break-word;
}

@media (max-width: 760px) {
    .aau-cron-log-table__head {
        display: none;
    }

    .aau-cron-log-table__row {
        align-items: start;
        grid-template-columns: 1fr;
        gap: .28rem;
    }

    .aau-cron-log-panel > header {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* ========================================================================
   0.16.00 — School Publishing Experience
   Category-first browsing, visible search, featured publications and
   dashboard category navigation.
   ======================================================================== */

.aau-optional-label {
    color: var(--comm-text-soft);
    font-size: .72rem;
    font-style: normal;
    font-weight: 750;
    letter-spacing: .01em;
    text-transform: none;
}

.aau-category-badge {
    align-items: center;
    background: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 10%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 32%, var(--comm-border));
    border-radius: 999px;
    color: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 82%, var(--comm-text));
    display: inline-flex;
    font-size: .69rem;
    font-weight: 800;
    gap: .38rem;
    line-height: 1.15;
    min-height: 26px;
    padding: .28rem .56rem;
    white-space: nowrap;
}

.aau-category-badge > span {
    background: var(--aau-category-color, var(--comm-primary));
    border-radius: 50%;
    flex: 0 0 7px;
    height: 7px;
    width: 7px;
}

.aau-category-browser {
    background: linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 40%, var(--comm-surface)), var(--comm-surface));
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    margin: .8rem 0 1rem;
    padding: .85rem .9rem .9rem;
}

.aau-category-browser__heading {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: .65rem;
}

.aau-category-browser__heading .aau-eyebrow {
    margin: 0 0 .12rem;
}

.aau-category-browser__heading h3 {
    font-size: .95rem;
    letter-spacing: -.01em;
    margin: 0;
}

.aau-category-browser__links {
    display: flex;
    gap: .48rem;
    overflow-x: auto;
    padding: .08rem 0 .16rem;
    scrollbar-width: thin;
}

.aau-category-filter {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 12px;
    color: var(--comm-text-muted) !important;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: .76rem;
    font-weight: 800;
    gap: .48rem;
    min-height: 40px;
    padding: .5rem .72rem;
    text-decoration: none !important;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease;
}

.aau-category-filter:hover,
.aau-category-filter:focus-visible {
    background: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 7%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 38%, var(--comm-border));
    color: var(--comm-text) !important;
    transform: translateY(-1px);
}

.aau-category-filter.is-active {
    background: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 11%, var(--comm-surface));
    border-color: color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 58%, var(--comm-border));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 18%, transparent);
    color: var(--comm-text) !important;
}

.aau-category-filter__dot {
    background: var(--aau-category-color, var(--comm-primary));
    border-radius: 50%;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--aau-category-color, var(--comm-primary)) 12%, transparent);
    flex: 0 0 9px;
    height: 9px;
    width: 9px;
}

.aau-category-filter__dot--all {
    background: linear-gradient(135deg, var(--comm-primary), var(--comm-info, var(--comm-primary)));
}

.aau-publication-search {
    margin: 0 0 1rem;
}

.aau-publication-search__primary {
    align-items: start;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: grid;
    gap: .55rem;
    grid-template-columns: minmax(220px, 1fr) auto auto;
    padding: .65rem;
    position: relative;
}

.aau-publication-search__box {
    display: block;
    min-width: 0;
    position: relative;
}

.aau-publication-search__box input[type="search"] {
    background: color-mix(in srgb, var(--comm-surface-soft) 58%, var(--comm-surface));
    border: 1px solid var(--comm-border);
    border-radius: 12px;
    color: var(--comm-text);
    font-size: .88rem;
    height: 46px;
    padding: 0 1rem 0 2.7rem;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
    width: 100%;
}

.aau-publication-search__box input[type="search"]:focus {
    background: var(--comm-surface);
    border-color: var(--comm-primary-border);
    box-shadow: 0 0 0 3px var(--comm-primary-soft);
    outline: 0;
}

.aau-publication-search__icon {
    height: 18px;
    inset: 14px auto auto 15px;
    pointer-events: none;
    position: absolute;
    width: 18px;
    z-index: 1;
}

.aau-publication-search__icon::before {
    border: 2px solid var(--comm-text-soft);
    border-radius: 50%;
    content: "";
    height: 10px;
    inset: 0 auto auto 0;
    position: absolute;
    width: 10px;
}

.aau-publication-search__icon::after {
    background: var(--comm-text-soft);
    border-radius: 999px;
    content: "";
    height: 2px;
    left: 10px;
    position: absolute;
    top: 12px;
    transform: rotate(45deg);
    transform-origin: left center;
    width: 7px;
}

.aau-publication-search__submit {
    min-height: 46px;
    min-width: 88px;
}

.aau-publication-filters {
    min-width: 118px;
    position: relative;
}

.aau-publication-filters > summary {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: 12px;
    color: var(--comm-text) !important;
    cursor: pointer;
    display: flex;
    font-size: .78rem;
    font-weight: 800;
    gap: .45rem;
    justify-content: center;
    list-style: none;
    min-height: 46px;
    padding: .55rem .72rem;
    user-select: none;
}

.aau-publication-filters > summary::-webkit-details-marker {
    display: none;
}

.aau-publication-filters[open] > summary,
.aau-publication-filters > summary:hover,
.aau-publication-filters > summary:focus-visible {
    background: var(--comm-primary-soft);
    border-color: var(--comm-primary-border);
}

.aau-filter-count {
    align-items: center;
    background: var(--comm-primary);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .65rem;
    height: 20px;
    justify-content: center;
    min-width: 20px;
    padding: 0 .28rem;
}

.aau-publication-filters__panel {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-hover);
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    inset: calc(100% + .45rem) 0 auto auto;
    min-width: min(620px, calc(100vw - 3rem));
    padding: .9rem;
    position: absolute;
    z-index: 30;
}

.aau-publication-filters__panel .aau-toggle,
.aau-publication-filters__actions {
    grid-column: 1 / -1;
}

.aau-publication-filters__actions {
    align-items: center;
    border-top: 1px solid var(--comm-border);
    display: flex;
    gap: .55rem;
    justify-content: flex-end;
    padding-top: .72rem;
}

.aau-featured-publications {
    background: linear-gradient(135deg, color-mix(in srgb, var(--comm-primary-soft) 58%, var(--comm-surface)), color-mix(in srgb, var(--comm-surface-soft) 65%, var(--comm-surface)));
    border: 1px solid var(--comm-primary-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    margin: 1rem 0 1.15rem;
    padding: 1rem;
}

.aau-featured-publications > header {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: .75rem;
}

.aau-featured-publications > header h3 {
    font-size: 1.08rem;
    letter-spacing: -.02em;
    margin: .08rem 0 .12rem;
}

.aau-featured-publications > header p:last-child {
    color: var(--comm-text-muted);
    font-size: .78rem;
    margin: 0;
}

.aau-feed--featured {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aau-feed--featured .aau-update-card.is-pinned {
    border-color: var(--comm-primary-border);
    box-shadow: 0 10px 28px color-mix(in srgb, var(--comm-primary) 9%, transparent);
}

.aau-dashboard-category-browser {
    background: color-mix(in srgb, var(--aau-surface-soft) 52%, var(--aau-surface));
    border-top: 1px solid var(--aau-border);
    padding: .62rem .75rem .76rem;
}

.aau-dashboard-category-browser__heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: .45rem;
    padding: 0 .12rem;
}

.aau-dashboard-category-browser__heading strong {
    color: var(--aau-text);
    font-size: .71rem;
    font-weight: 850;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.aau-dashboard-category-browser__heading a {
    color: var(--aau-primary) !important;
    font-size: .69rem;
    font-weight: 800;
    text-decoration: none !important;
}

.aau-dashboard-category-links {
    display: grid;
    gap: .5rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aau-dashboard-category-link {
    align-items: center;
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-top: 3px solid var(--aau-category-color, var(--aau-primary));
    border-radius: 10px;
    color: var(--aau-text) !important;
    display: flex;
    gap: .48rem;
    min-height: 50px;
    padding: .5rem .58rem;
    text-decoration: none !important;
    transition: background-color .16s ease, border-color .16s ease, transform .16s ease;
}

/* Legacy pre-0.17 category-dot markup only. Classed 0.17 metric-card spans
   must keep their own icon/copy/arrow sizing. */
.aau-dashboard-category-link > span:not([class]) {
    background: var(--aau-category-color, var(--aau-primary));
    border-radius: 50%;
    flex: 0 0 8px;
    height: 8px;
    width: 8px;
}

.aau-dashboard-category-link strong {
    font-size: .73rem;
    font-weight: 820;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.aau-dashboard-category-link:hover,
.aau-dashboard-category-link:focus-visible {
    background: var(--aau-surface-soft);
    border-color: color-mix(in srgb, var(--aau-category-color, var(--aau-primary)) 48%, var(--aau-border));
    transform: translateY(-1px);
}

.aau-dashboard-category-link--more {
    --aau-category-color: var(--aau-primary);
}

@media (max-width: 900px) {
    .aau-publication-search__primary {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .aau-publication-filters {
        grid-column: 1 / -1;
    }

    .aau-publication-filters > summary {
        justify-content: flex-start;
    }

    .aau-publication-filters__panel {
        inset: .45rem auto auto 0;
        position: relative;
        width: 100%;
    }

    .aau-dashboard-category-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .aau-category-browser {
        border-radius: 14px;
        padding: .72rem .7rem .78rem;
    }

    .aau-category-filter {
        min-height: 38px;
        padding: .45rem .62rem;
    }

    .aau-publication-search__primary {
        grid-template-columns: minmax(0, 1fr) auto;
        padding: .55rem;
    }

    .aau-publication-search__submit {
        min-width: 74px;
    }

    .aau-publication-filters__panel {
        grid-template-columns: minmax(0, 1fr);
        min-width: 0;
    }

    .aau-featured-publications {
        padding: .82rem;
    }

    .aau-feed--featured {
        grid-template-columns: minmax(0, 1fr);
    }

    .aau-dashboard-category-links {
        display: flex;
        gap: .45rem;
        overflow-x: auto;
        padding-bottom: .12rem;
    }

    .aau-dashboard-category-link {
        flex: 0 0 min(180px, 70vw);
    }
}

.aau-dashboard-publishing-layout {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(270px, .9fr);
}

.aau-dashboard-publishing-layout > .aau-dashboard-mini-grid {
    min-width: 0;
}

.aau-dashboard-publishing-layout > .aau-dashboard-category-browser {
    border-inline-start: 1px solid var(--aau-border);
    border-top: 0;
    min-width: 0;
}

.aau-dashboard-publishing-layout .aau-dashboard-category-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded .aau-dashboard-publishing-layout {
    gap: .75rem;
}

body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded .aau-dashboard-publishing-layout > .aau-dashboard-category-browser {
    background: transparent;
    border: 0;
    border-inline-start: 1px solid var(--aau-border);
    padding: 0 0 0 .75rem;
}

@media (max-width: 980px) {
    .aau-dashboard-publishing-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .aau-dashboard-publishing-layout > .aau-dashboard-category-browser,
    body.aa-home-page .aa-quick-actions > .aau-dashboard-card--embedded .aau-dashboard-publishing-layout > .aau-dashboard-category-browser {
        border-inline-start: 0;
        border-top: 1px solid var(--aau-border);
        padding: .62rem .75rem .76rem;
    }
}

/* 0.16.10 — Publication Templates + protected private cover images. */
.aau-template-starter {
    background: linear-gradient(135deg, var(--comm-surface), var(--comm-surface-soft));
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    margin: 1rem 0;
    padding: 1rem;
}

.aau-template-starter__heading {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.aau-template-starter__heading h3 { margin: .1rem 0 .25rem; }
.aau-template-starter__heading p:last-child { color: var(--comm-text-muted); margin: 0; }

.aau-template-starter__list {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    margin-top: .9rem;
}

.aau-template-choice {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    color: var(--comm-text);
    display: flex;
    flex-direction: column;
    gap: .18rem;
    min-height: 72px;
    padding: .72rem .8rem;
    text-decoration: none;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.aau-template-choice:hover,
.aau-template-choice.is-active {
    border-color: var(--comm-primary-border);
    box-shadow: var(--comm-shadow-sm);
    transform: translateY(-1px);
}

.aau-template-choice.is-active { background: var(--comm-primary-soft); }
.aau-template-choice strong { color: var(--comm-text); font-size: .86rem; }
.aau-template-choice small { color: var(--comm-text-muted); font-size: .73rem; }

.aau-template-library {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    margin-top: 1rem;
}

.aau-template-card {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    flex-direction: column;
    gap: .8rem;
    padding: 1rem;
}

.aau-template-card.is-inactive { opacity: .68; }
.aau-template-card > header { align-items: flex-start; display: flex; gap: .75rem; justify-content: space-between; }
.aau-template-card h3 { font-size: 1rem; margin: .1rem 0 0; }
.aau-template-card > p { color: var(--comm-text-muted); line-height: 1.5; margin: 0; }
.aau-template-card__meta { align-items: center; display: flex; flex-wrap: wrap; gap: .4rem; }
.aau-template-card > footer { align-items: center; border-top: 1px solid var(--comm-border); display: flex; flex-wrap: wrap; gap: .45rem; margin-top: auto; padding-top: .75rem; }

.aau-private-cover { overflow: hidden; }
.aau-cover-picker__grid {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.aau-cover-choice {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-md);
    cursor: pointer;
    display: grid;
    gap: .55rem;
    overflow: hidden;
    padding: .55rem;
    position: relative;
}

.aau-cover-choice input {
    position: absolute;
    right: .7rem;
    top: .7rem;
    z-index: 2;
}

.aau-cover-choice:has(input:checked) {
    border-color: var(--comm-primary);
    box-shadow: 0 0 0 2px var(--comm-primary-soft);
}

.aau-cover-choice img {
    aspect-ratio: 16 / 9;
    background: var(--comm-surface-muted);
    border-radius: calc(var(--comm-radius-md) - 4px);
    object-fit: cover;
    width: 100%;
}

.aau-cover-choice span { display: flex; flex-direction: column; gap: .1rem; min-width: 0; }
.aau-cover-choice b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.aau-cover-choice small { color: var(--comm-text-muted); }
.aau-cover-choice--none { align-content: center; min-height: 110px; padding: 1rem; }

.aau-update-card__cover {
    background: var(--comm-surface-muted);
    display: block;
    overflow: hidden;
    text-decoration: none;
}

.aau-update-card__cover img {
    aspect-ratio: 16 / 7;
    display: block;
    object-fit: cover;
    transition: transform .22s ease;
    width: 100%;
}

.aau-update-card:hover .aau-update-card__cover img { transform: scale(1.018); }

.aau-detail__cover {
    background: var(--comm-surface-muted);
    border-bottom: 1px solid var(--comm-border);
    margin: 0;
    max-height: min(520px, 56vh);
    overflow: hidden;
}

.aau-detail__cover img {
    display: block;
    max-height: min(520px, 56vh);
    object-fit: cover;
    width: 100%;
}

@media (max-width: 720px) {
    .aau-template-starter__heading { align-items: stretch; flex-direction: column; }
    .aau-template-starter__list { display: flex; overflow-x: auto; padding-bottom: .2rem; }
    .aau-template-choice { flex: 0 0 min(220px, 78vw); }
    .aau-cover-picker__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 480px) {
    .aau-cover-picker__grid { grid-template-columns: minmax(0, 1fr); }
}

/* 0.16.11 — safer admin deletes + category-first dashboard stack. */
.aau-dashboard-publishing-stack {
    display: grid;
    gap: 0;
    min-width: 0;
}

.aau-dashboard-publishing-stack > .aau-dashboard-category-browser {
    border-top: 0;
    border-bottom: 1px solid var(--aau-border);
    padding: .68rem .75rem .78rem;
}

.aau-dashboard-publishing-stack .aau-dashboard-category-links {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.aau-dashboard-latest {
    min-width: 0;
}

.aau-dashboard-latest__heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: .65rem .87rem .15rem;
}

.aau-dashboard-latest__heading strong {
    color: var(--aau-text);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.aau-dashboard-latest__heading a {
    color: var(--aau-primary) !important;
    font-size: .69rem;
    font-weight: 800;
    text-decoration: none !important;
}

.aau-dashboard-latest > .aau-dashboard-mini-grid {
    padding-top: .35rem;
}

@media (max-width: 1050px) {
    .aau-dashboard-publishing-stack .aau-dashboard-category-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .aau-dashboard-publishing-stack .aau-dashboard-category-links {
        display: flex;
        gap: .45rem;
        overflow-x: auto;
        padding-bottom: .12rem;
    }

    .aau-dashboard-publishing-stack .aau-dashboard-category-link {
        flex: 0 0 min(180px, 70vw);
    }
}


/* 0.16.20 — School Resources library + historical school-year Archive. */
.aau-resource-type-browser,
.aau-archive-year-browser {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: var(--aau-radius-lg);
    margin: 0 0 .85rem;
    padding: .9rem 1rem;
}

.aau-resource-type-browser .aau-category-browser__links,
.aau-archive-year-browser .aau-category-browser__links {
    margin-top: .65rem;
}

.aau-resource-count {
    color: var(--aau-muted);
    font-size: .72rem;
    font-weight: 750;
    white-space: nowrap;
}

.aau-resource-search__filters {
    align-items: end;
    display: grid;
    gap: .7rem;
    grid-template-columns: repeat(2, minmax(180px, 1fr)) auto;
    margin-top: .7rem;
}

.aau-resource-library,
.aau-archive-grid {
    margin-top: .8rem;
}

.aau-resource-library .aau-update-card,
.aau-archive-grid .aau-update-card {
    min-height: 100%;
}

@media (max-width: 760px) {
    .aau-resource-type-browser,
    .aau-archive-year-browser {
        padding: .75rem;
    }

    .aau-resource-type-browser .aau-category-browser__links,
    .aau-archive-year-browser .aau-category-browser__links {
        display: flex;
        overflow-x: auto;
        padding-bottom: .12rem;
    }

    .aau-resource-type-browser .aau-category-filter,
    .aau-archive-year-browser .aau-category-filter {
        flex: 0 0 auto;
    }

    .aau-resource-search__filters {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* 0.16.30 — Category landing pages + permission-preserving related publications. */
.aau-category-landing {
    --aau-category-color: var(--comm-primary);
}

.aau-category-landing__hero {
    align-items: center;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--aau-category-color) 9%, var(--comm-surface)) 0%, var(--comm-surface) 70%);
    border: 1px solid color-mix(in srgb, var(--aau-category-color) 28%, var(--comm-border));
    border-radius: var(--comm-radius-xl);
    display: flex;
    gap: 1.25rem;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: 1.35rem 1.5rem;
    position: relative;
    overflow: hidden;
}

.aau-category-landing__hero::before {
    background: var(--aau-category-color);
    content: "";
    inset: 0 auto 0 0;
    position: absolute;
    width: 5px;
}

.aau-category-landing__identity {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    min-width: 0;
}

.aau-category-landing__mark {
    background: color-mix(in srgb, var(--aau-category-color) 12%, var(--comm-surface));
    border: 1px solid color-mix(in srgb, var(--aau-category-color) 34%, var(--comm-border));
    border-radius: 15px;
    flex: 0 0 48px;
    height: 48px;
    position: relative;
}

.aau-category-landing__mark::after {
    background: var(--aau-category-color);
    border-radius: 999px;
    content: "";
    height: 14px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 14px;
}

.aau-category-landing__identity h2 {
    color: var(--comm-text);
    font-size: clamp(1.45rem, 2.3vw, 2rem);
    line-height: 1.12;
    margin: .12rem 0 .45rem;
}

.aau-category-landing__identity p:last-child {
    color: var(--comm-text-muted);
    line-height: 1.55;
    margin: 0;
    max-width: 60rem;
}

.aau-category-landing__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: flex-end;
}

.aau-category-landing__stats {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 1rem 0 1.35rem;
}

.aau-category-landing__stats > div {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    display: grid;
    gap: .25rem;
    min-width: 0;
    padding: .85rem 1rem;
}

.aau-category-landing__stats span {
    color: var(--comm-text-muted);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.aau-category-landing__stats strong {
    color: var(--comm-text);
    font-size: 1rem;
    overflow-wrap: anywhere;
}

.aau-category-landing__section {
    margin-top: 1.35rem;
}

.aau-category-landing__section + .aau-category-landing__section {
    border-top: 1px solid var(--comm-border);
    padding-top: 1.35rem;
}

.aau-category-landing__grid,
.aau-related-publications__grid {
    margin-top: .85rem;
}

.aau-related-publications {
    --aau-category-color: var(--comm-primary);
    border-top: 1px solid var(--comm-border);
    margin-top: 1.5rem;
    padding-top: 1.5rem;
}

.aau-related-publications__heading {
    align-items: end;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.aau-related-publications__heading h2 {
    color: var(--comm-text);
    font-size: 1.2rem;
    margin: .15rem 0 .3rem;
}

.aau-related-publications__heading p:last-child {
    color: var(--comm-text-muted);
    margin: 0;
}

.aau-related-publications .aau-update-card {
    border-top-color: color-mix(in srgb, var(--aau-category-color) 52%, var(--comm-border));
}

@media (max-width: 760px) {
    .aau-category-landing__hero,
    .aau-related-publications__heading {
        align-items: stretch;
        flex-direction: column;
    }

    .aau-category-landing__actions {
        justify-content: flex-start;
    }

    .aau-category-landing__stats {
        grid-template-columns: 1fr;
    }
}

/* 0.16.40 — Privacy-safe Publication Insights / Analytics. */
.aau-insights-filters {
    align-items: end;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-xl);
    display: grid;
    gap: .8rem;
    grid-template-columns: minmax(9rem, .8fr) minmax(15rem, 1.8fr) minmax(10rem, 1fr) minmax(10rem, 1fr) auto;
    margin: 1rem 0;
    padding: 1rem;
}
.aau-insights-filters label { display: grid; gap: .35rem; min-width: 0; }
.aau-insights-filters label > span { color: var(--comm-text-muted); font-size: .74rem; font-weight: 750; letter-spacing: .035em; text-transform: uppercase; }
.aau-insights-filters input,
.aau-insights-filters select { width: 100%; }
.aau-insights-filters__actions { display: flex; gap: .45rem; }

.aau-insights-kpis {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin: 1rem 0;
}
.aau-insights-kpi {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-lg);
    display: grid;
    gap: .28rem;
    min-width: 0;
    padding: 1rem;
    position: relative;
    overflow: hidden;
}
.aau-insights-kpi::before { background: var(--comm-primary); content: ""; inset: 0 auto 0 0; position: absolute; width: 4px; }
.aau-insights-kpi--success::before { background: #15803d; }
.aau-insights-kpi--warning::before { background: #d97706; }
.aau-insights-kpi--info::before { background: #2563eb; }
.aau-insights-kpi--neutral::before { background: var(--comm-text-muted); }
.aau-insights-kpi > span { color: var(--comm-text-muted); font-size: .72rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.aau-insights-kpi > strong { color: var(--comm-text); font-size: clamp(1.45rem, 2.5vw, 2rem); line-height: 1; }
.aau-insights-kpi > small { color: var(--comm-text-muted); line-height: 1.35; }
.aau-insights-note { margin: 0 0 1.2rem; }

.aau-insights-detail {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: var(--comm-radius-xl);
    margin: 1.2rem 0;
    padding: 1.2rem;
}
.aau-insights-detail > header { align-items: flex-start; display: flex; gap: 1rem; justify-content: space-between; }
.aau-insights-detail > header h3 { color: var(--comm-text); font-size: 1.35rem; margin: .12rem 0 .35rem; }
.aau-insights-detail > header p:last-child { color: var(--comm-text-muted); margin: 0; }
.aau-insights-detail__actions { display: flex; flex-wrap: wrap; gap: .45rem; justify-content: flex-end; }
.aau-insights-detail__metrics { display: grid; gap: .75rem; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 1rem; }
.aau-insights-detail__metric { background: var(--comm-surface-soft); border: 1px solid var(--comm-border); border-radius: var(--comm-radius-lg); display: grid; gap: .25rem; padding: .9rem; }
.aau-insights-detail__metric > span { color: var(--comm-text-muted); font-size: .72rem; font-weight: 750; text-transform: uppercase; }
.aau-insights-detail__metric > strong { color: var(--comm-text); font-size: 1.3rem; }
.aau-insights-detail__metric > small { color: var(--comm-text-muted); }

.aau-insights-audience { border-top: 1px solid var(--comm-border); margin-top: 1rem; padding-top: 1rem; }
.aau-insights-audience__grid { display: grid; gap: .7rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.aau-insights-audience__card { border: 1px solid var(--comm-border); border-radius: var(--comm-radius-lg); overflow: hidden; }
.aau-insights-audience__card > header { background: var(--comm-surface-soft); display: grid; gap: .15rem; padding: .75rem .85rem; }
.aau-insights-audience__card > header strong { color: var(--comm-text); }
.aau-insights-audience__card > header span { color: var(--comm-text-muted); font-size: .78rem; }
.aau-insights-audience__row { align-items: baseline; display: grid; gap: .35rem; grid-template-columns: 1fr auto; padding: .65rem .85rem; }
.aau-insights-audience__row + .aau-insights-audience__row { border-top: 1px solid var(--comm-border); }
.aau-insights-audience__row span { color: var(--comm-text-muted); }
.aau-insights-audience__row strong { color: var(--comm-text); }
.aau-insights-audience__row small { color: var(--comm-text-muted); grid-column: 1 / -1; }

.aau-insights-section { margin-top: 1.35rem; }
.aau-insights-category-grid { display: grid; gap: .7rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.aau-insights-category-card { border: 1px solid var(--comm-border); border-radius: var(--comm-radius-lg); overflow: hidden; }
.aau-insights-category-card > header { align-items: center; display: flex; gap: .65rem; padding: .75rem .85rem; }
.aau-insights-category-card > header > span { background: var(--aau-category-color, var(--comm-primary)); border-radius: 999px; flex: 0 0 10px; height: 10px; }
.aau-insights-category-card > header > div { display: grid; gap: .1rem; min-width: 0; }
.aau-insights-category-card > header strong { color: var(--comm-text); overflow-wrap: anywhere; }
.aau-insights-category-card > header small { color: var(--comm-text-muted); }
.aau-insights-category-card dl { border-top: 1px solid var(--comm-border); display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; }
.aau-insights-category-card dl > div { display: grid; gap: .15rem; padding: .65rem; }
.aau-insights-category-card dl > div + div { border-left: 1px solid var(--comm-border); }
.aau-insights-category-card dt { color: var(--comm-text-muted); font-size: .68rem; font-weight: 700; text-transform: uppercase; }
.aau-insights-category-card dd { color: var(--comm-text); font-weight: 800; margin: 0; }

.aau-insights-cell { display: grid; gap: .18rem; min-width: 8.5rem; }
.aau-insights-cell strong { color: var(--comm-text); }
.aau-insights-cell span { color: var(--comm-text-muted); font-size: .78rem; line-height: 1.35; }

@media (max-width: 1100px) {
    .aau-insights-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .aau-insights-filters__actions { grid-column: 1 / -1; }
    .aau-insights-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .aau-insights-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .aau-insights-filters,
    .aau-insights-kpis,
    .aau-insights-detail__metrics,
    .aau-insights-audience__grid,
    .aau-insights-category-grid { grid-template-columns: 1fr; }
    .aau-insights-detail > header { flex-direction: column; }
    .aau-insights-detail__actions { justify-content: flex-start; }
    .aau-insights-category-card dl { grid-template-columns: 1fr; }
    .aau-insights-category-card dl > div + div { border-left: 0; border-top: 1px solid var(--comm-border); }
}

/* 0.16.50 — Multilingual publication authoring and RTL-aware reading. */
.aau-language-switcher{align-items:center;background:#fff;border:1px solid #e6e8ee;border-radius:14px;display:flex;gap:12px;justify-content:space-between;margin:0 0 18px;padding:10px 12px}.aau-language-switcher__label{color:#697386;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.aau-language-switcher__options{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.aau-language-chip{align-items:center;background:#f7f8fa;border:1px solid #e2e5ea;border-radius:999px;color:#475569;display:inline-flex;gap:7px;min-height:34px;padding:6px 11px;text-decoration:none}.aau-language-chip span{font-size:12px;font-weight:760}.aau-language-chip small{color:#87909f;font-size:9px;font-weight:850;letter-spacing:.07em}.aau-language-chip:hover{border-color:#aeb7c5;background:#fff}.aau-language-chip.is-active{background:#eff6ff;border-color:#93b8df;color:#164e75;box-shadow:0 0 0 1px rgba(37,95,133,.08)}.aau-language-chip[dir="rtl"]{direction:rtl}.aau-translation-authoring{overflow:visible}.aau-translation-stack{display:grid;gap:12px;margin-top:16px}.aau-translation-panel{background:#fbfcfd;border:1px solid #e4e7ec;border-radius:14px;overflow:hidden}.aau-translation-panel>summary{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between;list-style:none;padding:14px 16px}.aau-translation-panel>summary::-webkit-details-marker{display:none}.aau-translation-panel>summary span:first-child{display:grid;gap:2px}.aau-translation-panel>summary b{color:#293241;font-size:14px}.aau-translation-panel>summary small{color:#7b8492;font-size:10px;font-weight:750;letter-spacing:.06em}.aau-translation-panel__state{background:#eef2f6;border-radius:999px;color:#667085;font-size:10px;font-weight:800;padding:4px 8px;text-transform:uppercase}.aau-translation-panel[open] .aau-translation-panel__state{background:#eaf5ff;color:#255f85}.aau-translation-panel__body{border-top:1px solid #e8eaee;display:grid;gap:14px;padding:16px}.aau-translation-surface{background:#fff;border:1px solid #eaecf0;border-radius:12px;padding:14px}.aau-translation-surface--public{background:#fffdf8;border-color:#eee3c9}.aau-translation-surface[dir="rtl"],.aau-translation-panel__body[dir="rtl"]{text-align:right}.aau-translation-panel__body[dir="rtl"] input,.aau-translation-panel__body[dir="rtl"] textarea{direction:rtl;text-align:right}.aau-detail[dir="rtl"] .aau-detail__heading,.aau-public-detail[dir="rtl"] .aau-detail__heading{text-align:right}.aau-detail[dir="rtl"] .aau-update-card__meta{justify-content:flex-start}.aau-detail[dir="rtl"] .aau-detail__byline{justify-content:flex-start}.aau-detail[dir="rtl"] .aau-event-facts{text-align:right}.aau-detail[dir="rtl"] .aau-detail__content{direction:rtl;text-align:right}.aau-view-title[dir="rtl"]{direction:rtl;text-align:right;width:100%}
@media(max-width:720px){.aau-language-switcher{align-items:flex-start;flex-direction:column}.aau-language-switcher__options{justify-content:flex-start;max-width:100%;overflow-x:auto;padding-bottom:2px;width:100%;flex-wrap:nowrap}.aau-language-chip{flex:0 0 auto}.aau-translation-panel__body{padding:12px}.aau-translation-surface{padding:12px}}

/* 0.16.60 — Parent category email preferences. */
.aau-preference-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 18px;
}
.aau-preference-summary > div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 16px 18px;
    border: 1px solid var(--aau-border, #d8e1e8);
    border-radius: 14px;
    background: var(--aau-surface, #fff);
}
.aau-preference-summary span { font-size: .78rem; color: var(--aau-muted, #64748b); text-transform: uppercase; letter-spacing: .045em; }
.aau-preference-summary strong { font-size: 1.45rem; line-height: 1.1; color: var(--aau-text, #17324a); }
.aau-preference-policy-note { margin-bottom: 20px; }
.aau-preference-grid { padding: 0; }
.aau-preference-grid__heading { margin-bottom: 14px; }
.aau-preference-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.aau-preference-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 90px;
    padding: 16px 18px;
    border: 1px solid var(--aau-border, #d8e1e8);
    border-left: 4px solid var(--aau-category-color, #255f85);
    border-radius: 14px;
    background: var(--aau-surface, #fff);
}
.aau-preference-card.is-mandatory { background: linear-gradient(90deg, color-mix(in srgb, var(--aau-category-color, #255f85) 6%, white), #fff 36%); }
.aau-preference-card__content { display: flex; align-items: flex-start; gap: 11px; min-width: 0; }
.aau-preference-card__content .aau-category-swatch { flex: 0 0 auto; width: 12px; height: 12px; margin-top: 5px; border-radius: 999px; background: var(--aau-category-color, #255f85); }
.aau-preference-card__content strong { display: block; color: var(--aau-text, #17324a); }
.aau-preference-card__content p { margin: 3px 0 0; font-size: .86rem; line-height: 1.45; color: var(--aau-muted, #64748b); }
.aau-preference-card__control { display: flex; flex-direction: column; align-items: flex-end; gap: 5px; text-align: right; white-space: nowrap; }
.aau-preference-lock { font-size: .76rem; color: var(--aau-muted, #64748b); }
.aau-preference-switch { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; white-space: nowrap; }
.aau-preference-switch input { position: absolute; opacity: 0; pointer-events: none; }
.aau-preference-switch > span:not(.aau-sr-only) { position: relative; width: 42px; height: 24px; border-radius: 999px; background: #cbd5e1; transition: background .15s ease; }
.aau-preference-switch > span:not(.aau-sr-only)::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(15,23,42,.25); transition: transform .15s ease; }
.aau-preference-switch input:checked + span { background: #0f766e; }
.aau-preference-switch input:checked + span::after { transform: translateX(18px); }
.aau-preference-switch input:focus-visible + span { outline: 3px solid rgba(37,95,133,.25); outline-offset: 2px; }
.aau-preference-switch b { min-width: 24px; font-size: .82rem; color: var(--aau-muted, #64748b); }
.aau-preferences-actions { margin-top: 18px; }
@media (max-width: 760px) {
    .aau-preference-summary { grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
    .aau-preference-summary > div { padding: 12px; }
    .aau-preference-cards { grid-template-columns: 1fr; }
    .aau-preference-card { align-items: flex-start; }
}
@media (max-width: 480px) {
    .aau-preference-summary { grid-template-columns: 1fr; }
    .aau-preference-card { flex-direction: column; align-items: stretch; }
    .aau-preference-card__control { align-items: flex-start; text-align: left; }
    .aau-preference-switch { justify-content: flex-end; }
}

/* 0.17.00 — Unified role-aware Dashboard Publications section. */
body.aa-home-page .aau-dashboard-card--home.aau-dashboard-card--standalone {
    background: var(--aau-surface) !important;
    border: 1px solid var(--aau-border) !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .05) !important;
    display: block !important;
    margin: 0 0 18px !important;
    overflow: hidden;
    padding: 0 !important;
    position: relative;
    width: 100%;
}

body.aa-home-page .aau-dashboard-card--standalone .aau-dashboard-mini-header {
    background: var(--aau-surface) !important;
    border-bottom: 1px solid var(--aau-border);
    padding: .86rem 1rem .78rem !important;
}

.aau-dashboard-section-kicker,
.aau-dashboard-category-browser__heading span,
.aau-dashboard-latest__heading span {
    color: var(--aau-muted);
    display: block;
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .085em;
    line-height: 1.2;
    margin-bottom: .18rem;
    text-transform: uppercase;
}

.aau-dashboard-publications .aau-dashboard-mini-header h2 {
    font-size: 1rem;
}

.aau-dashboard-publications .aau-dashboard-publishing-stack {
    background: var(--aau-surface);
}

.aau-dashboard-publications .aau-dashboard-category-browser {
    background: var(--aau-surface);
    border: 0;
    border-bottom: 1px solid var(--aau-border);
    padding: .88rem 1rem 1rem;
}

.aau-dashboard-publications .aau-dashboard-category-browser__heading {
    align-items: flex-end;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    margin-bottom: .72rem;
}

.aau-dashboard-publications .aau-dashboard-category-browser__heading strong,
.aau-dashboard-publications .aau-dashboard-latest__heading strong {
    color: var(--aau-text);
    display: block;
    font-size: .8rem;
    font-weight: 850;
    letter-spacing: -.01em;
    text-transform: none;
}

.aau-dashboard-publications .aau-dashboard-category-links {
    display: grid;
    gap: .62rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.aau-dashboard-publications .aau-dashboard-category-link {
    align-items: center;
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 12px;
    box-shadow: none;
    color: var(--aau-text) !important;
    display: grid;
    gap: .68rem;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    min-height: 92px;
    padding: .75rem .7rem;
    position: relative;
    text-decoration: none !important;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aau-dashboard-publications .aau-dashboard-category-link::before {
    background: var(--aau-category-color);
    border-radius: 12px 12px 0 0;
    content: '';
    height: 3px;
    inset: -1px -1px auto;
    position: absolute;
}

.aau-dashboard-publications .aau-dashboard-category-link:hover,
.aau-dashboard-publications .aau-dashboard-category-link:focus-visible {
    border-color: color-mix(in srgb, var(--aau-category-color) 45%, var(--aau-border));
    box-shadow: 0 8px 18px rgba(15, 23, 42, .07);
    transform: translateY(-1px);
}

.aau-dashboard-publications .aau-dashboard-category-link__icon,
.aau-category-admin-icon {
    align-items: center;
    background: color-mix(in srgb, var(--aau-category-color, var(--aau-primary)) 10%, var(--aau-surface));
    border: 1px solid color-mix(in srgb, var(--aau-category-color, var(--aau-primary)) 18%, var(--aau-border));
    border-radius: 10px;
    color: var(--aau-category-color, var(--aau-primary));
    display: inline-flex;
    flex: 0 0 auto;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.aau-dashboard-publications .aau-dashboard-category-link__icon svg,
.aau-category-admin-icon svg {
    height: 20px;
    width: 20px;
}

.aau-dashboard-publications .aau-dashboard-category-link__copy {
    background: transparent;
    border-radius: 0;
    display: grid;
    flex: 1 1 auto;
    gap: .08rem;
    height: auto;
    min-width: 0;
    width: auto;
}

.aau-dashboard-category-link__copy > strong {
    color: var(--aau-text);
    font-size: 1.12rem;
    font-weight: 900;
    line-height: 1;
}

.aau-dashboard-category-link__copy > span {
    color: var(--aau-text);
    font-size: .76rem;
    font-weight: 850;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aau-dashboard-category-link__copy > small {
    color: var(--aau-muted);
    font-size: .63rem;
    font-weight: 650;
    line-height: 1.2;
}

.aau-dashboard-publications .aau-dashboard-category-link__arrow {
    background: transparent;
    border-radius: 0;
    color: var(--aau-muted);
    flex: 0 0 auto;
    font-size: .92rem;
    font-weight: 800;
    height: auto;
    line-height: 1;
    width: auto;
}

.aau-dashboard-category-link--more {
    --aau-category-color: var(--aau-primary);
}

.aau-dashboard-publications .aau-dashboard-latest {
    background: var(--aau-surface);
    padding: .1rem 0 .35rem;
}

.aau-dashboard-publications .aau-dashboard-latest__heading {
    align-items: flex-end;
    padding: .75rem 1rem .25rem;
}

.aau-dashboard-publications .aau-dashboard-latest > .aau-dashboard-mini-grid {
    gap: .1rem;
    padding: .35rem .75rem .72rem;
}

.aau-category-admin-icon {
    --aau-category-color: var(--aau-primary);
    height: 34px;
    width: 34px;
}

.aau-category-card .aau-category-admin-icon {
    --aau-category-color: var(--aau-category-color);
}

@media (max-width: 1180px) {
    .aau-dashboard-publications .aau-dashboard-category-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .aau-dashboard-publications .aau-dashboard-category-links {
        display: flex;
        gap: .55rem;
        overflow-x: auto;
        padding-bottom: .15rem;
        scroll-snap-type: x proximity;
    }

    .aau-dashboard-publications .aau-dashboard-category-link {
        flex: 0 0 min(220px, 78vw);
        scroll-snap-align: start;
    }

    body.aa-home-page .aau-dashboard-card--home.aau-dashboard-card--standalone {
        border-radius: 14px !important;
    }
}

/* 0.17.10 — Dashboard publication awareness: unread signals, Featured and author shortcuts. */
.aau-dashboard-category-link__copy > .aau-dashboard-category-link__unread {
    align-items: center;
    background: color-mix(in srgb, var(--aau-category-color, var(--aau-primary)) 10%, var(--aau-surface));
    border: 1px solid color-mix(in srgb, var(--aau-category-color, var(--aau-primary)) 20%, var(--aau-border));
    border-radius: 999px;
    color: var(--aau-category-color, var(--aau-primary));
    display: inline-flex;
    font-size: .57rem;
    font-style: normal;
    font-weight: 850;
    line-height: 1;
    margin-top: .16rem;
    max-width: 100%;
    padding: .23rem .42rem;
    width: max-content;
}

.aau-dashboard-featured {
    align-items: stretch;
    background: linear-gradient(135deg, color-mix(in srgb, var(--aau-primary) 7%, var(--aau-surface)), var(--aau-surface) 62%);
    border-bottom: 1px solid var(--aau-border);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    position: relative;
}

.aau-dashboard-featured.has-cover {
    grid-template-columns: minmax(150px, 22%) minmax(0, 1fr);
}

.aau-dashboard-featured::before {
    background: linear-gradient(180deg, var(--aau-primary), color-mix(in srgb, var(--aau-primary) 45%, #7c3aed));
    content: '';
    inset: 0 auto 0 0;
    position: absolute;
    width: 4px;
}

.aau-dashboard-featured__cover {
    background: color-mix(in srgb, var(--aau-primary) 6%, var(--aau-surface));
    display: block;
    min-height: 146px;
    overflow: hidden;
}

.aau-dashboard-featured__cover img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.aau-dashboard-featured__body {
    min-width: 0;
    padding: 1rem 1.08rem 1rem 1.18rem;
}

.aau-dashboard-featured__meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-bottom: .48rem;
}

.aau-dashboard-featured__badge,
.aau-dashboard-featured__category {
    border-radius: 999px;
    display: inline-flex;
    font-size: .59rem;
    font-weight: 850;
    letter-spacing: .035em;
    line-height: 1;
    padding: .32rem .48rem;
    text-transform: uppercase;
}

.aau-dashboard-featured__badge {
    background: color-mix(in srgb, var(--aau-primary) 12%, var(--aau-surface));
    border: 1px solid color-mix(in srgb, var(--aau-primary) 26%, var(--aau-border));
    color: var(--aau-primary);
}

.aau-dashboard-featured__category {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    color: var(--aau-muted);
}

.aau-dashboard-featured h3 {
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: -.015em;
    line-height: 1.25;
    margin: 0;
}

.aau-dashboard-featured h3 a {
    color: var(--aau-text) !important;
    text-decoration: none !important;
}

.aau-dashboard-featured h3 a:hover,
.aau-dashboard-featured h3 a:focus-visible {
    color: var(--aau-primary) !important;
}

.aau-dashboard-featured__body > p {
    color: var(--aau-muted);
    font-size: .76rem;
    line-height: 1.55;
    margin: .42rem 0 .72rem;
    max-width: 76ch;
}

.aau-dashboard-featured footer {
    align-items: flex-end;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
}

.aau-dashboard-featured footer > span {
    display: grid;
    gap: .08rem;
}

.aau-dashboard-featured footer small {
    color: var(--aau-muted);
    font-size: .58rem;
    font-weight: 750;
    text-transform: uppercase;
}

.aau-dashboard-featured footer strong {
    color: var(--aau-text);
    font-size: .7rem;
    font-weight: 800;
}

.aau-dashboard-featured__open {
    color: var(--aau-primary) !important;
    font-size: .68rem;
    font-weight: 850;
    text-decoration: none !important;
    white-space: nowrap;
}

.aau-dashboard-publication-tools {
    align-items: center;
    background: color-mix(in srgb, var(--aau-primary) 3%, var(--aau-surface));
    border-top: 1px solid var(--aau-border);
    display: flex;
    gap: .52rem;
    justify-content: flex-end;
    padding: .68rem 1rem .78rem;
}

.aau-dashboard-publication-tool {
    align-items: center;
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 9px;
    color: var(--aau-text) !important;
    display: inline-flex;
    font-size: .66rem;
    font-weight: 800;
    gap: .45rem;
    justify-content: space-between;
    min-height: 34px;
    padding: .48rem .66rem;
    text-decoration: none !important;
}

.aau-dashboard-publication-tool:hover,
.aau-dashboard-publication-tool:focus-visible {
    border-color: color-mix(in srgb, var(--aau-primary) 40%, var(--aau-border));
    color: var(--aau-primary) !important;
}

.aau-dashboard-publication-tool--primary {
    background: color-mix(in srgb, var(--aau-primary) 8%, var(--aau-surface));
    border-color: color-mix(in srgb, var(--aau-primary) 24%, var(--aau-border));
    color: var(--aau-primary) !important;
}

@media (max-width: 760px) {
    .aau-dashboard-featured.has-cover {
        grid-template-columns: 112px minmax(0, 1fr);
    }
    .aau-dashboard-featured__cover {
        min-height: 132px;
    }
    .aau-dashboard-featured__body {
        padding: .82rem .82rem .82rem .95rem;
    }
    .aau-dashboard-featured__body > p {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }
    .aau-dashboard-publication-tools {
        justify-content: stretch;
    }
    .aau-dashboard-publication-tool {
        flex: 1 1 0;
    }
}

@media (max-width: 480px) {
    .aau-dashboard-featured,
    .aau-dashboard-featured.has-cover {
        grid-template-columns: 1fr;
    }
    .aau-dashboard-featured__cover {
        max-height: 160px;
        min-height: 130px;
    }
    .aau-dashboard-featured footer {
        align-items: flex-start;
        flex-direction: column;
    }
    .aau-dashboard-publication-tools {
        align-items: stretch;
        flex-direction: column;
    }
}


/* 0.17.11 — Dashboard layout + rounded category accent hotfix. */
body.aa-home-page .aau-dashboard-card--home.aau-dashboard-card--standalone > .aau-dashboard-mini-header {
    border-radius: 15px 15px 0 0;
}

.aau-dashboard-publications .aau-dashboard-category-link {
    overflow: hidden;
}

.aau-dashboard-publications .aau-dashboard-category-link::before {
    border-radius: 11px 11px 0 0;
    inset: 0 0 auto;
}

@media (max-width: 720px) {
    body.aa-home-page .aau-dashboard-card--home.aau-dashboard-card--standalone > .aau-dashboard-mini-header {
        border-radius: 13px 13px 0 0;
    }
}

/* 0.18.00 Newsletter / Publication Digest builder */
.aau-newsletter-library {
    margin-top: 1rem;
}
.aau-newsletter-card .aau-template-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}
.aau-newsletter-publication-picker {
    display: grid;
    gap: 1rem;
    padding: .25rem 0 .75rem;
}
.aau-newsletter-publication-group {
    display: grid;
    gap: .55rem;
}
.aau-newsletter-publication-group > h4 {
    margin: 0;
    font-size: .83rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--aau-text-muted, #64748b);
}
.aau-newsletter-publication-option {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: start;
    gap: .75rem;
    padding: .85rem .9rem;
    border: 1px solid var(--aau-border, #dbe3ef);
    border-radius: .85rem;
    background: var(--aau-surface, #fff);
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.aau-newsletter-publication-option:hover,
.aau-newsletter-publication-option:focus-within {
    border-color: #8b7cf6;
    box-shadow: 0 8px 22px rgba(79,70,229,.08);
}
.aau-newsletter-publication-option:has(input:checked) {
    border-color: #6758ee;
    background: rgba(99,102,241,.045);
}
.aau-newsletter-publication-option > input {
    margin-top: .22rem;
}
.aau-newsletter-publication-option__body {
    min-width: 0;
    display: grid;
    gap: .2rem;
}
.aau-newsletter-publication-option__body strong {
    font-size: .92rem;
    line-height: 1.25;
}
.aau-newsletter-publication-option__body small,
.aau-newsletter-publication-option__body > span {
    color: var(--aau-text-muted, #64748b);
    line-height: 1.4;
}
.aau-newsletter-publication-option__cover {
    white-space: nowrap;
    border-radius: 999px;
    padding: .25rem .55rem;
    font-size: .72rem;
    font-weight: 700;
    color: #4f46e5;
    background: rgba(99,102,241,.09);
}
@media (max-width: 700px) {
    .aau-newsletter-publication-option {
        grid-template-columns: auto minmax(0,1fr);
    }
    .aau-newsletter-publication-option__cover {
        grid-column: 2;
        justify-self: start;
    }
}

/* 0.18.10 — viewer-authorized newsletter reader */
.aau-newsletter-reader-heading {
    align-items: end;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin: 1rem 0;
}
.aau-newsletter-reader-heading h2,
.aau-newsletter-reader-heading h3,
.aau-newsletter-reader-heading p { margin: 0; }
.aau-newsletter-reader-heading > div { display: grid; gap: .25rem; }
.aau-newsletter-reader-heading > div > p:last-child { color: var(--aau-muted); max-width: 76ch; }
.aau-newsletter-reader-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.aau-newsletter-reader-card {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 15px;
    box-shadow: 0 10px 28px rgba(15,23,42,.055);
    display: grid;
    min-width: 0;
    overflow: hidden;
}
.aau-newsletter-reader-card__cover {
    background: color-mix(in srgb, var(--aau-primary) 6%, var(--aau-surface));
    display: block;
    height: 168px;
    overflow: hidden;
}
.aau-newsletter-reader-card__cover img { display: block; height: 100%; object-fit: cover; width: 100%; }
.aau-newsletter-reader-card__body { display: flex; flex-direction: column; gap: .55rem; min-width: 0; padding: 1rem; }
.aau-newsletter-reader-card__meta { align-items: center; color: var(--aau-muted); display: flex; font-size: .68rem; font-weight: 750; gap: .55rem; justify-content: space-between; text-transform: uppercase; }
.aau-newsletter-reader-card__meta > span { color: var(--aau-primary); }
.aau-newsletter-reader-card h3 { font-size: 1.02rem; line-height: 1.28; margin: 0; }
.aau-newsletter-reader-card h3 a { color: var(--aau-text) !important; text-decoration: none !important; }
.aau-newsletter-reader-card h3 a:hover,
.aau-newsletter-reader-card h3 a:focus-visible { color: var(--aau-primary) !important; }
.aau-newsletter-reader-card__body > p { color: var(--aau-muted); font-size: .78rem; line-height: 1.55; margin: 0; }
.aau-newsletter-reader-card footer { align-items: center; border-top: 1px solid var(--aau-border); display: flex; gap: .65rem; justify-content: space-between; margin-top: auto; padding-top: .72rem; }
.aau-newsletter-reader-card footer > span { color: var(--aau-muted); font-size: .68rem; font-weight: 700; }
.aau-newsletter-reader-card footer a { color: var(--aau-primary) !important; font-size: .7rem; font-weight: 850; text-decoration: none !important; white-space: nowrap; }
.aau-newsletter-edition {
    background: var(--aau-surface);
    border: 1px solid var(--aau-border);
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(15,23,42,.06);
    overflow: hidden;
}
.aau-newsletter-edition__cover { max-height: 360px; overflow: hidden; }
.aau-newsletter-edition__cover img { display: block; max-height: 360px; object-fit: cover; width: 100%; }
.aau-newsletter-edition__header { background: linear-gradient(135deg, color-mix(in srgb, var(--aau-primary) 7%, var(--aau-surface)), var(--aau-surface)); padding: 1.35rem 1.45rem 1.2rem; }
.aau-newsletter-edition__header h1 { font-size: clamp(1.45rem, 3vw, 2.2rem); letter-spacing: -.025em; line-height: 1.12; margin: .38rem 0 .55rem; }
.aau-newsletter-edition__meta { align-items: center; display: flex; flex-wrap: wrap; gap: .55rem; }
.aau-newsletter-edition__meta span,
.aau-newsletter-edition__meta time { border: 1px solid var(--aau-border); border-radius: 999px; font-size: .64rem; font-weight: 800; padding: .3rem .5rem; text-transform: uppercase; }
.aau-newsletter-edition__meta span { background: color-mix(in srgb, var(--aau-primary) 9%, var(--aau-surface)); color: var(--aau-primary); }
.aau-newsletter-edition__privacy-note { color: var(--aau-muted); font-size: .74rem; line-height: 1.5; margin: 0; max-width: 82ch; }
.aau-newsletter-edition__intro { border-top: 1px solid var(--aau-border); font-size: .93rem; line-height: 1.68; padding: 1.25rem 1.45rem; }
.aau-newsletter-edition__intro > :first-child { margin-top: 0; }
.aau-newsletter-edition__intro > :last-child { margin-bottom: 0; }
.aau-newsletter-edition__publications { border-top: 1px solid var(--aau-border); padding: 1.25rem 1.45rem 1.45rem; }
.aau-newsletter-edition__grid { margin-top: .85rem; }
.aau-newsletter-edition__footer { align-items: center; background: color-mix(in srgb, var(--aau-primary) 2%, var(--aau-surface)); border-top: 1px solid var(--aau-border); display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; padding: .9rem 1.45rem; }
@media (max-width: 980px) { .aau-newsletter-reader-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px) {
    .aau-newsletter-reader-heading { align-items: stretch; flex-direction: column; }
    .aau-newsletter-reader-grid { grid-template-columns: 1fr; }
    .aau-newsletter-edition__header,
    .aau-newsletter-edition__intro,
    .aau-newsletter-edition__publications { padding-left: .95rem; padding-right: .95rem; }
    .aau-newsletter-edition__footer { align-items: stretch; flex-direction: column; padding: .8rem .95rem; }
    .aau-newsletter-edition__footer .aau-button { justify-content: center; }
}

/* 0.18.20 Newsletter email delivery status summary. */
.aau-newsletter-delivery-summary {
    color: var(--aau-text-muted, #64748b);
    flex: 1 0 100%;
    font-size: .72rem;
    line-height: 1.45;
    margin-top: .15rem;
}

/* 0.18.30 — multilingual newsletter, historical archive and print/PDF entry points. */
.aau-newsletter-reader-heading__actions {
    align-items: center;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: .55rem !important;
}
.aau-newsletter-language-switcher {
    border-top: 1px solid var(--aau-border);
    margin: 0;
    padding: .8rem 1.45rem;
}
.aau-newsletter-edition[dir="rtl"] .aau-newsletter-edition__header,
.aau-newsletter-edition[dir="rtl"] .aau-newsletter-edition__intro,
.aau-newsletter-edition[dir="rtl"] .aau-newsletter-edition__publications {
    text-align: right;
}
.aau-newsletter-reader-card[dir="rtl"] .aau-newsletter-reader-card__body {
    text-align: right;
}
.aau-newsletter-reader-card[dir="rtl"] footer,
.aau-newsletter-edition[dir="rtl"] .aau-newsletter-edition__meta {
    direction: rtl;
}
@media (max-width: 640px) {
    .aau-newsletter-reader-heading__actions {
        align-items: stretch;
        flex-direction: column !important;
    }
    .aau-newsletter-reader-heading__actions .aau-button { justify-content: center; }
    .aau-newsletter-language-switcher { padding-left: .95rem; padding-right: .95rem; }
}

/* 0.18.40 Newsletter Insights privacy note */
.aau-insights-privacy-note {
    margin-top: 1rem;
    padding: 1rem 1.1rem;
    border: 1px solid var(--aau-border, #dbe3ef);
    border-radius: .9rem;
    background: var(--aau-surface, #fff);
}
.aau-insights-privacy-note strong { display: block; margin-bottom: .3rem; }
.aau-insights-privacy-note p { margin: 0; color: var(--aau-text-muted, #64748b); line-height: 1.55; }

/* 0.18.41 Publication UI polish — lighter hierarchy, compact search/filter and native feed controls. */
.aau-dashboard-publications :is(h1,h2,h3,h4,h5,h6,strong,b,.aau-eyebrow,.aau-badge,.aau-button,.aau-dashboard-category-link strong,.aau-dashboard-category-browser__heading strong,.aau-dashboard-category-browser__heading a,.aau-dashboard-featured__badge,.aau-dashboard-featured__open),
.aau-page--publication-feed :is(h1,h2,h3,h4,h5,h6,strong,b,.aau-eyebrow,.aau-badge,.aau-button,.aau-filterbar a,.aau-category-filter,.aau-update-card a,.aau-clear-filter,.aau-publication-filters > summary,.aau-feed-display-control > span,.aau-feed-display-control select,.aau-view-toggle a) {
    font-weight: 600 !important;
}

.aau-dashboard-publications a:hover,
.aau-dashboard-publications a:focus-visible {
    color: var(--comm-primary-hover, var(--aau-primary)) !important;
}

.aau-page--publication-feed a:hover,
.aau-page--publication-feed a:focus-visible {
    color: var(--comm-primary-hover) !important;
}

/* Search is a toolbar, not a large secondary card. */
.aau-page--publication-feed .aau-publication-search {
    margin: .8rem 0 1rem;
}

.aau-page--publication-feed .aau-publication-search__primary {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    gap: .5rem;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    padding: 0;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"] {
    background: var(--comm-surface);
    border-radius: 10px;
    height: 42px;
}

.aau-page--publication-feed .aau-publication-search__icon {
    inset: 12px auto auto 15px;
}

.aau-page--publication-feed .aau-publication-search__submit,
.aau-page--publication-feed .aau-publication-filters > summary {
    border-radius: 10px;
    min-height: 42px;
    height: 42px;
}

.aau-page--publication-feed .aau-publication-search__submit {
    min-width: 80px;
    padding-inline: .9rem;
}

.aau-page--publication-feed .aau-publication-filters {
    min-width: 108px;
}

.aau-page--publication-feed .aau-publication-filters > summary {
    background: var(--comm-surface);
    color: var(--comm-primary) !important;
    padding: .45rem .7rem;
}

.aau-page--publication-feed .aau-publication-filters > summary:hover,
.aau-page--publication-feed .aau-publication-filters > summary:focus-visible,
.aau-page--publication-feed .aau-publication-filters[open] > summary {
    color: var(--comm-primary-hover) !important;
}

/* Replace wide segmented Show/Sort groups with compact native select controls. */
.aau-feed-display-controls {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.aau-feed-display-control {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: 10px;
    display: inline-flex;
    gap: .38rem;
    min-height: 38px;
    padding: .22rem .3rem .22rem .55rem;
}

.aau-feed-display-control > span {
    color: var(--comm-text-muted);
    font-size: .68rem;
    line-height: 1;
    white-space: nowrap;
}

.aau-feed-display-control select {
    appearance: auto;
    background: var(--comm-surface);
    border: 0;
    border-radius: 7px;
    color: var(--comm-primary-hover);
    cursor: pointer;
    font-size: .72rem;
    height: 30px;
    min-width: 88px;
    padding: 0 .45rem;
}

.aau-feed-display-control select:focus-visible {
    box-shadow: 0 0 0 2px var(--comm-primary-soft);
    outline: 1px solid var(--comm-primary-border);
}

.aau-feed-display-controls__apply {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 9px;
    color: var(--comm-primary);
    cursor: pointer;
    display: inline-flex;
    font-size: .7rem;
    font-weight: 600;
    min-height: 36px;
    padding: .35rem .65rem;
}

.aau-feed-display-controls__apply:hover,
.aau-feed-display-controls__apply:focus-visible {
    border-color: var(--comm-primary-border);
    color: var(--comm-primary-hover);
}

@media (max-width: 900px) {
    .aau-page--publication-feed .aau-publication-search__primary {
        grid-template-columns: minmax(0, 1fr) auto auto;
    }

    .aau-page--publication-feed .aau-publication-filters {
        grid-column: auto;
    }

    .aau-page--publication-feed .aau-publication-filters__panel {
        inset: calc(100% + .45rem) 0 auto auto;
        position: absolute;
        width: auto;
    }
}

@media (max-width: 700px) {
    .aau-page--publication-feed .aau-publication-search__primary {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .aau-page--publication-feed .aau-publication-filters {
        grid-column: 1 / -1;
        width: 100%;
    }

    .aau-page--publication-feed .aau-publication-filters > summary {
        justify-content: space-between;
        width: 100%;
    }

    .aau-page--publication-feed .aau-publication-filters__panel {
        inset: .45rem auto auto 0;
        min-width: 0;
        position: relative;
        width: 100%;
    }

    .aau-results-heading__actions,
    .aau-feed-display-controls {
        justify-content: flex-start;
        width: 100%;
    }
}

@media (max-width: 480px) {
    .aau-feed-display-controls {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .aau-feed-display-control {
        justify-content: space-between;
        min-width: 0;
    }

    .aau-feed-display-control select {
        min-width: 0;
        width: 100%;
    }

    .aau-feed-display-controls__apply {
        grid-column: 1 / -1;
        justify-content: center;
    }
}


/* 0.18.42 Dashboard publication-card visual polish. */
.aau-dashboard-publications .aau-dashboard-category-link__copy > span {
    font-size: .86rem;
    font-weight: 600 !important;
    line-height: 1.22;
}

.aau-dashboard-publications .aau-dashboard-mini-title {
    font-weight: 600 !important;
}

/* Featured uses the same compact interaction/card language as Latest Publications,
   with only a distinct featured surface and accent to communicate priority. */
.aau-dashboard-publications .aau-dashboard-featured {
    background: color-mix(in srgb, var(--aau-primary) 7%, var(--aau-surface));
    border-bottom: 1px solid var(--aau-border);
    display: block;
    padding: .35rem .75rem;
    position: relative;
}

.aau-dashboard-publications .aau-dashboard-featured::before {
    background: var(--aau-primary);
    border-radius: 999px;
    content: '';
    inset: .35rem auto .35rem 0;
    position: absolute;
    width: 3px;
}

.aau-dashboard-publications .aau-dashboard-mini-event--featured {
    background: color-mix(in srgb, var(--aau-primary) 7%, var(--aau-surface));
    border: 1px solid color-mix(in srgb, var(--aau-primary) 18%, var(--aau-border));
    border-radius: 10px;
    grid-template-columns: 48px minmax(0, 1fr) auto auto auto;
    min-height: 66px;
    padding: .45rem .55rem;
}

.aau-dashboard-publications .aau-dashboard-mini-event--featured:hover,
.aau-dashboard-publications .aau-dashboard-mini-event--featured:focus-visible {
    background: color-mix(in srgb, var(--aau-primary) 11%, var(--aau-surface));
    border-color: color-mix(in srgb, var(--aau-primary) 32%, var(--aau-border));
}

.aau-dashboard-publications .aau-dashboard-mini-event--featured .aau-dashboard-mini-date {
    background: var(--aau-surface);
    border-color: color-mix(in srgb, var(--aau-primary) 28%, var(--aau-border));
}

.aau-dashboard-publications .aau-dashboard-featured__badge {
    align-items: center;
    background: color-mix(in srgb, var(--aau-primary) 12%, var(--aau-surface));
    border: 1px solid color-mix(in srgb, var(--aau-primary) 25%, var(--aau-border));
    border-radius: 999px;
    color: var(--aau-primary);
    display: inline-flex;
    font-size: .6rem;
    font-weight: 600 !important;
    letter-spacing: .035em;
    line-height: 1;
    padding: .32rem .48rem;
    text-transform: uppercase;
    white-space: nowrap;
}

.aau-dashboard-publications .aau-dashboard-featured__thumb {
    border: 1px solid color-mix(in srgb, var(--aau-primary) 20%, var(--aau-border));
    border-radius: 8px;
    display: block;
    height: 46px;
    overflow: hidden;
    width: 46px;
}

.aau-dashboard-publications .aau-dashboard-featured__thumb img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.aau-dashboard-publications .aau-dashboard-featured__open {
    color: var(--aau-primary);
    font-size: 1rem;
    font-weight: 600 !important;
    line-height: 1;
}

@media (max-width: 700px) {
    .aau-dashboard-publications .aau-dashboard-mini-event--featured {
        grid-template-columns: 48px minmax(0, 1fr) auto;
    }
    .aau-dashboard-publications .aau-dashboard-featured__thumb,
    .aau-dashboard-publications .aau-dashboard-featured__open {
        display: none;
    }
}

/* 0.18.43 Publications feed toolbar and navigation refinement. */
.aau-page--publication-feed .aau-feed-nav-stack {
    display: grid;
    gap: .8rem;
    margin: .85rem 0 1rem;
}

.aau-page--publication-feed .aau-feed-nav-group {
    display: grid;
    gap: .42rem;
}

.aau-page--publication-feed .aau-feed-nav-group__label {
    color: var(--comm-text-soft);
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .07em;
    padding-inline: .18rem;
    text-transform: uppercase;
}

.aau-page--publication-feed .aau-communications-nav,
.aau-page--publication-feed .aau-publication-type-nav {
    background: color-mix(in srgb, var(--comm-surface) 94%, var(--comm-primary-soft));
    border: 1px solid var(--comm-border);
    border-radius: 14px;
    box-shadow: var(--comm-shadow-sm);
    gap: .32rem;
    padding: .38rem;
}

.aau-page--publication-feed .aau-communications-nav a,
.aau-page--publication-feed .aau-publication-type-nav a {
    border-radius: 11px;
    font-size: .79rem;
    font-weight: 600;
    min-height: 40px;
    padding: .5rem .82rem;
}

.aau-page--publication-feed .aau-communications-nav a.is-active,
.aau-page--publication-feed .aau-publication-type-nav a.is-active {
    box-shadow: inset 0 0 0 1px var(--comm-primary-border);
}

.aau-page--publication-feed .aau-publication-search {
    margin: .9rem 0 1rem;
}

.aau-page--publication-feed .aau-publication-search__primary {
    align-items: center;
    background: var(--comm-surface-soft);
    border: 1px solid var(--comm-border);
    border-radius: 16px;
    box-shadow: var(--comm-shadow-sm);
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    padding: .7rem;
}

.aau-page--publication-feed .aau-publication-search__box {
    flex: 1 1 320px;
    min-width: 0;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"] {
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 12px;
    height: 44px;
    min-width: 0;
    width: 100%;
}

.aau-page--publication-feed .aau-publication-toolbar-controls {
    align-items: center;
    display: flex;
    flex: 1 1 560px;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: flex-end;
    min-width: 0;
}

.aau-page--publication-feed .aau-publication-filters {
    min-width: 112px;
}

.aau-page--publication-feed .aau-publication-filters > summary {
    justify-content: center;
    min-width: 96px;
}

.aau-page--publication-feed .aau-publication-filters__panel {
    inset: calc(100% + .45rem) 0 auto auto;
}

.aau-page--publication-feed .aau-feed-display-controls--toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.aau-page--publication-feed .aau-feed-display-controls--toolbar .aau-feed-display-control {
    background: var(--comm-surface);
    min-height: 42px;
    padding: .24rem .32rem .24rem .6rem;
}

.aau-page--publication-feed .aau-feed-display-controls--toolbar .aau-feed-display-control select {
    height: 32px;
    min-width: 106px;
}

.aau-page--publication-feed .aau-publication-search__submit--apply,
.aau-page--publication-feed .aau-feed-display-controls__apply {
    min-height: 42px;
    min-width: 84px;
    padding-inline: .9rem;
}

.aau-page--publication-feed .aau-publication-search .aau-view-toggle {
    margin-inline-start: .1rem;
}

.aau-page--publication-feed .aau-publication-search .aau-view-toggle a {
    min-height: 40px;
}

.aau-page--publication-feed .aau-results-heading--feed {
    align-items: end;
    gap: .65rem;
}

.aau-page--publication-feed .aau-results-heading__actions {
    margin-inline-start: auto;
}

@media (max-width: 980px) {
    .aau-page--publication-feed .aau-publication-toolbar-controls {
        flex: 1 1 100%;
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    .aau-page--publication-feed .aau-publication-search__primary {
        padding: .62rem;
    }

    .aau-page--publication-feed .aau-publication-search__box,
    .aau-page--publication-feed .aau-publication-toolbar-controls {
        flex-basis: 100%;
    }

    .aau-page--publication-feed .aau-publication-filters {
        min-width: 0;
        width: 100%;
    }

    .aau-page--publication-feed .aau-publication-filters > summary {
        justify-content: space-between;
        width: 100%;
    }

    .aau-page--publication-feed .aau-feed-display-controls--toolbar {
        width: 100%;
    }

    .aau-page--publication-feed .aau-feed-display-controls--toolbar .aau-feed-display-control {
        flex: 1 1 180px;
        min-width: 0;
    }

    .aau-page--publication-feed .aau-feed-display-controls--toolbar .aau-feed-display-control select {
        min-width: 0;
        width: 100%;
    }

    .aau-page--publication-feed .aau-publication-search__submit--apply {
        flex: 0 0 auto;
    }
}

@media (max-width: 540px) {
    .aau-page--publication-feed .aau-feed-display-controls--toolbar {
        display: grid;
        grid-template-columns: 1fr;
    }

    .aau-page--publication-feed .aau-publication-search .aau-view-toggle {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }

    .aau-page--publication-feed .aau-publication-search .aau-view-toggle a,
    .aau-page--publication-feed .aau-publication-search__submit--apply {
        justify-content: center;
        width: 100%;
    }
}


/* 0.18.44 Publications feed layout correctness hotfix. */
.aau-page--publication-feed .aau-publication-search__box input[type="search"] {
    line-height: 1.2;
    padding-inline-start: 3.05rem;
    text-indent: 0;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"]::placeholder {
    color: var(--comm-text-soft);
    opacity: 1;
}

.aau-page--publication-feed .aau-publication-search__icon {
    inset: 13px auto auto 1rem;
}

.aau-page--publication-feed .aau-feed--featured.aau-feed--list {
    grid-template-columns: minmax(0, 1fr);
}

.aau-page--publication-feed .aau-feed--featured.aau-feed--grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 620px) {
    .aau-page--publication-feed .aau-feed--featured.aau-feed--grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* 0.18.45 Search field icon/text separation hotfix. */
.aau-page--publication-feed .aau-publication-search__box {
    align-items: center;
    background: var(--comm-surface);
    border: 1px solid var(--comm-border);
    border-radius: 12px;
    display: flex;
    gap: .62rem;
    min-height: 44px;
    padding: 0 .85rem;
    position: relative;
}

.aau-page--publication-feed .aau-publication-search__box:focus-within {
    border-color: var(--comm-primary-border);
    box-shadow: 0 0 0 3px var(--comm-primary-soft);
}

.aau-page--publication-feed .aau-publication-search__icon {
    flex: 0 0 18px;
    height: 18px;
    inset: auto;
    margin: 0;
    position: relative;
    width: 18px;
    z-index: 0;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"] {
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    flex: 1 1 auto;
    height: 42px;
    line-height: 1.35;
    min-width: 0;
    outline: 0;
    padding: 0 !important;
    text-indent: 0 !important;
    width: 100%;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"]:focus {
    background: transparent;
    border: 0;
    box-shadow: none;
    outline: 0;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"]::placeholder {
    color: var(--comm-text-soft);
    line-height: 1.35;
    opacity: 1;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"]::-webkit-search-decoration,
.aau-page--publication-feed .aau-publication-search__box input[type="search"]::-webkit-search-cancel-button,
.aau-page--publication-feed .aau-publication-search__box input[type="search"]::-webkit-search-results-button,
.aau-page--publication-feed .aau-publication-search__box input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
}

/* 0.18.46 Publications feed control-border and Filters-chevron polish. */
.aau-page--publication-feed .aau-feed-display-controls--toolbar .aau-feed-display-control {
    background: transparent;
    border: 0;
    box-shadow: none;
    gap: .34rem;
    min-height: 42px;
    padding: 0;
}

.aau-page--publication-feed .aau-feed-display-controls--toolbar .aau-feed-display-control > span {
    padding-inline-start: .1rem;
}

/* Own the disclosure marker completely so Theme/browser details styling cannot
 * render a second down-arrow beside the Communications chevron. */
.aau-page--publication-feed .aau-publication-filters > summary {
    list-style: none !important;
}

.aau-page--publication-feed .aau-publication-filters > summary::-webkit-details-marker {
    display: none !important;
}

.aau-page--publication-feed .aau-publication-filters > summary::marker {
    content: "";
    font-size: 0;
}

.aau-page--publication-feed .aau-publication-filters > summary::before,
.aau-page--publication-feed .aau-publication-filters > summary::after {
    content: none !important;
    display: none !important;
}

.aau-page--publication-feed .aau-publication-filters .aau-collapsible__chevron {
    border-color: currentColor;
    border-width: 0 1.5px 1.5px 0;
    color: currentColor;
    flex: 0 0 7px;
    height: 7px;
    margin-inline-start: .08rem;
    transform: rotate(45deg);
    transform-origin: center;
    transition: transform .16s ease;
    width: 7px;
}

.aau-page--publication-feed .aau-publication-filters[open] .aau-collapsible__chevron {
    transform: rotate(225deg);
}

/* 0.18.47 Search field single-border override.
 * Al-Amal Theme applies !important input borders/backgrounds globally inside
 * #content. Own the search input presentation here so only the wrapper border
 * remains visible. */
.aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"],
.aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"]:focus,
.aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"]:hover {
    appearance: none !important;
    -webkit-appearance: none !important;
    background: transparent !important;
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 0 !important;
    text-indent: 0 !important;
}

/* 0.18.48 Publications search wrapper border cleanup.
 * The unified toolbar already owns the visible container border. Keep Search
 * structurally distinct through spacing/focus feedback without a second box. */
.aau-page--publication-feed .aau-publication-search__box {
    background: transparent;
    border: 0;
    border-radius: 10px;
    box-shadow: none;
    padding-inline: .28rem;
}

.aau-page--publication-feed .aau-publication-search__box:focus-within {
    background: color-mix(in srgb, var(--comm-primary-soft) 52%, transparent);
    border: 0;
    box-shadow: none;
    outline: 2px solid var(--comm-primary-border);
    outline-offset: 1px;
}


/* 0.18.49 Publications search padding polish.
 * Keep the single-border toolbar model from 0.18.48 while giving Search
 * more internal breathing room around the icon and placeholder text. */
.aau-page--publication-feed .aau-publication-search__box {
    gap: .72rem;
    min-height: 46px;
    padding-block: .28rem;
    padding-inline: .72rem .82rem;
}

.aau-page--publication-feed .aau-publication-search__icon {
    flex-basis: 18px;
    margin-inline-start: .02rem;
}

.aau-page--publication-feed .aau-publication-search__box input[type="search"] {
    min-height: 38px;
}

@media (max-width: 540px) {
    .aau-page--publication-feed .aau-publication-search__box {
        padding-inline: .66rem .74rem;
    }
}

/* 0.18.50 Publications search input padding specificity fix.
 * 0.18.47 intentionally used a high-specificity !important reset to defeat
 * Theme global input borders, but its padding:0 also prevented later input
 * spacing from taking effect. Keep the border/background reset, while giving
 * the text field explicit internal breathing room at the same specificity. */
.aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"],
.aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"]:focus,
.aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"]:hover {
    box-sizing: border-box !important;
    padding-block: .42rem !important;
    padding-inline: .38rem .62rem !important;
    text-indent: 0 !important;
}

@media (max-width: 540px) {
    .aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"],
    .aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"]:focus,
    .aa-app #content .aau-page--publication-feed .aau-publication-search__box input[type="search"]:hover {
        padding-inline: .32rem .5rem !important;
    }
}

/* 0.18.51 Shared Communications search-control consistency.
 * Publications, School Resources and Archive all render the same
 * .aau-publication-search__box component. Keep one stable visual contract
 * across those pages and override Al-Amal Theme global input !important rules. */
.aau-publication-search .aau-publication-search__box {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 10px;
    box-shadow: none;
    display: flex;
    gap: .72rem;
    min-height: 46px;
    min-width: 0;
    padding-block: .28rem;
    padding-inline: .72rem .82rem;
    position: relative;
}

.aau-publication-search .aau-publication-search__box:focus-within {
    background: color-mix(in srgb, var(--comm-primary-soft) 52%, transparent);
    border: 0;
    box-shadow: none;
    outline: 2px solid var(--comm-primary-border);
    outline-offset: 1px;
}

.aau-publication-search .aau-publication-search__icon {
    flex: 0 0 18px;
    height: 18px;
    inset: auto;
    margin: 0 0 0 .02rem;
    position: relative;
    width: 18px;
    z-index: 0;
}

.aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"],
.aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"]:focus,
.aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"]:hover {
    appearance: none !important;
    -webkit-appearance: none !important;
    background: transparent !important;
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    color: var(--comm-text) !important;
    flex: 1 1 auto;
    font-size: .88rem !important;
    height: 42px;
    line-height: 1.35 !important;
    min-width: 0;
    outline: 0 !important;
    padding-block: .42rem !important;
    padding-inline: .38rem .62rem !important;
    text-indent: 0 !important;
    width: 100% !important;
}

.aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"]::placeholder {
    color: var(--comm-text-soft) !important;
    line-height: 1.35;
    opacity: 1;
}

.aau-publication-search .aau-publication-search__box input[type="search"]::-webkit-search-decoration,
.aau-publication-search .aau-publication-search__box input[type="search"]::-webkit-search-cancel-button,
.aau-publication-search .aau-publication-search__box input[type="search"]::-webkit-search-results-button,
.aau-publication-search .aau-publication-search__box input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
}

@media (max-width: 540px) {
    .aau-publication-search .aau-publication-search__box {
        padding-inline: .66rem .74rem;
    }

    .aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"],
    .aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"]:focus,
    .aa-app #content .aau-publication-search .aau-publication-search__box input[type="search"]:hover {
        padding-inline: .32rem .5rem !important;
    }
}

/* 0.18.52 Settings page UI/UX polish
   Presentation-only: stronger section rhythm, spacing and hierarchy. */
.aau-settings-workspace {
    gap: clamp(1.35rem, 2.2vw, 2rem);
    grid-template-columns: minmax(190px, 220px) minmax(0, 1fr);
    margin-top: 1.15rem;
}

.aau-settings-form {
    gap: clamp(1.35rem, 2vw, 1.75rem);
    padding-bottom: 1.25rem;
}

.aau-settings-card {
    border-color: color-mix(in srgb, var(--comm-border) 88%, var(--comm-primary));
    border-radius: 18px;
    box-shadow: 0 8px 24px rgba(31, 41, 55, .055);
    padding: clamp(1.15rem, 2vw, 1.5rem);
    scroll-margin-top: 5.5rem;
}

.aau-settings-card:target {
    border-color: var(--comm-primary-border);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--comm-primary) 9%, transparent), 0 12px 30px rgba(31, 41, 55, .08);
}

.aau-settings-card > header {
    align-items: flex-start;
    background: color-mix(in srgb, var(--comm-surface-soft) 72%, var(--comm-surface));
    border-bottom: 1px solid var(--comm-border);
    gap: .9rem;
    margin: calc(0px - clamp(1.15rem, 2vw, 1.5rem)) calc(0px - clamp(1.15rem, 2vw, 1.5rem)) 1.35rem;
    padding: 1.15rem clamp(1.15rem, 2vw, 1.5rem);
}

.aau-settings-card > header > div {
    display: grid;
    gap: .18rem;
    min-width: 0;
}

.aau-settings-card > header h3 {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
}

.aau-settings-card > header p:not(.aau-eyebrow) {
    line-height: 1.55;
    margin-top: .28rem;
    max-width: 76ch;
}

.aau-settings-card .aau-step-number {
    flex-basis: 32px;
    font-weight: 600;
    height: 32px;
    margin-top: .05rem;
    width: 32px;
}

.aau-settings-card .aau-field {
    gap: .48rem;
}

.aau-settings-card .aau-field > span,
.aau-settings-card .aau-toggle b,
.aau-settings-nav a,
.aau-settings-nav a > span {
    font-weight: 600;
}

.aau-settings-card .aau-field small {
    line-height: 1.5;
}

.aau-settings-card > .aau-form-note,
.aau-settings-card > .aau-settings-hint {
    margin-top: 1rem;
}

.aau-settings-card > .aau-form-note + .aau-form-note,
.aau-settings-card > .aau-form-note + .aau-form-grid,
.aau-settings-card > .aau-form-grid + .aau-form-grid,
.aau-settings-card > .aau-settings-list + .aau-form-grid,
.aau-settings-card > .aau-settings-list + .aau-settings-list {
    margin-top: 1rem;
}

.aau-settings-card .aau-form-note {
    border-radius: 12px;
    gap: .65rem;
    line-height: 1.45;
    padding: .78rem .9rem;
}

.aau-settings-card .aau-form-note strong {
    flex: 0 0 auto;
    font-weight: 600;
}

.aau-settings-card .aau-form-note span {
    min-width: 0;
}

.aau-settings-card .aau-settings-list {
    gap: .9rem;
}

.aau-settings-card .aau-settings-list--dashboard {
    gap: .85rem;
}

.aau-settings-card .aau-toggle {
    border-radius: 12px;
    min-height: 66px;
    padding: .8rem .9rem;
}

.aau-settings-card .aau-toggle span {
    gap: .2rem;
}

.aau-settings-card .aau-toggle small {
    line-height: 1.45;
}

.aau-settings-card .aau-form-grid {
    column-gap: 1.1rem;
    row-gap: 1.15rem;
}

.aau-settings-nav {
    border-radius: 16px;
    gap: .34rem;
    padding: .9rem .8rem;
    top: 1.25rem;
}

.aau-settings-nav > .aau-eyebrow {
    margin: .1rem .5rem .55rem;
}

.aau-settings-nav a {
    gap: .7rem;
    min-height: 44px;
    padding: .55rem .62rem;
}

.aau-settings-nav a > span {
    flex-basis: 30px;
    height: 30px;
}

.aau-settings-actions {
    bottom: 1rem;
    margin-top: .35rem;
    padding: .9rem 1rem;
}

.aau-settings-actions .aau-form-actions__help {
    max-width: 600px;
}

.aau-settings-actions .aau-form-actions__help strong {
    font-weight: 600;
}

@media (max-width: 900px) {
    .aau-settings-workspace {
        gap: 1.15rem;
    }

    .aau-settings-nav {
        gap: .45rem;
        padding: .65rem;
    }
}

@media (max-width: 720px) {
    .aau-settings-form {
        gap: 1.1rem;
    }

    .aau-settings-card {
        border-radius: 15px;
        padding: 1rem;
        scroll-margin-top: 4.5rem;
    }

    .aau-settings-card > header {
        margin: -1rem -1rem 1rem;
        padding: 1rem;
    }

    .aau-settings-card .aau-form-grid {
        row-gap: .95rem;
    }

    .aau-settings-actions {
        bottom: .5rem;
        margin-top: .2rem;
    }
}

/* 0.18.53 Embedded How to Use guide. */
.aau-page--help .aau-help-guide-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    margin: 1rem 0;
    padding: 1.35rem 1.45rem;
    border: 1px solid var(--comm-border);
    border-radius: 18px;
    background: linear-gradient(135deg, var(--comm-surface) 0%, var(--comm-surface-soft) 100%);
    box-shadow: var(--comm-shadow-sm);
}
.aau-page--help .aau-help-guide-card__intro { max-width: 760px; }
.aau-page--help .aau-help-guide-card__intro h3 { margin: .2rem 0 .45rem; font-size: 1.08rem; font-weight: 600; }
.aau-page--help .aau-help-guide-card__intro p:last-child { margin: 0; color: var(--comm-text-soft); }
.aau-page--help .aau-help-guide-actions { display: flex; flex-wrap: wrap; gap: .55rem; flex: 0 0 auto; }
.aau-page--help .aau-help-role-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .85rem; }
.aau-page--help .aau-help-role-card { padding: 1.05rem 1.1rem; border: 1px solid var(--comm-border); border-radius: 15px; background: var(--comm-surface); box-shadow: var(--comm-shadow-sm); }
.aau-page--help .aau-help-role-card h3 { margin: 0 0 .35rem; font-size: .95rem; font-weight: 600; }
.aau-page--help .aau-help-role-card p { margin: 0; color: var(--comm-text-soft); line-height: 1.55; }
.aau-page--help .aau-help-guide-note { display: flex; gap: .65rem; align-items: flex-start; margin-top: .9rem; padding: .85rem 1rem; border: 1px solid var(--comm-primary-border); border-radius: 13px; background: var(--comm-primary-soft); color: var(--comm-text); }
.aau-page--help .aau-help-guide-note strong { font-weight: 600; color: var(--comm-primary-hover); }
@media (max-width: 820px) {
    .aau-page--help .aau-help-guide-card { align-items: stretch; flex-direction: column; }
    .aau-page--help .aau-help-role-grid { grid-template-columns: 1fr; }
}
