.reply-assignment-icon { width: 1.1rem; height: 1.1rem; flex: 0 0 auto; vertical-align: -.15em; }
.reply-assignment-banner { display: flex; align-items: center; gap: .85rem; margin-bottom: 1.5rem; padding: 1rem 1.2rem; border: 1px solid #e5cb88; border-left: 4px solid #c58b14; border-radius: .8rem; background: #fff8e6; color: #684b13; box-shadow: 0 4px 14px rgba(20,58,82,.04); }
.reply-assignment-banner[hidden] { display: none; }
.reply-assignment-banner > .reply-assignment-icon { width: 1.5rem; height: 1.5rem; }
.reply-assignment-banner-copy { flex: 1; min-width: 0; display: grid; gap: .2rem; font-size: .9rem; }
.reply-assignment-banner-copy strong { font-weight: 700; }
.reply-assignment-banner-copy > span { font-size: .8rem; }
.reply-assignment-banner.is-overdue { background: #fff1f0; border-color: #edb6b1; border-left-color: #bc4135; color: #842e26; }
.reply-assignment-pill, .reply-assignment-status { display: inline-flex; align-items: center; gap: .25rem; padding: .1rem .5rem; border: 1px solid #b8d5e9; border-radius: 999px; background: #edf5fb; color: #285d87; font-size: .78rem; font-weight: 700; line-height: 1.6; }
.reply-assignment-pill { position: relative; z-index: 2; text-decoration: none; }
.reply-assignment-pill:hover { color: #174468; border-color: #216fab; background: #e0eef8; }
.reply-assignment-pill:focus-visible { outline: 2px solid #216fab; outline-offset: 3px; }
.reply-assignment-pill .reply-assignment-icon { width: .95rem; height: .95rem; }
.reply-assignment-action { position: relative; z-index: 2; }
.reply-assignment-card { border-top: 3px solid var(--vep-blue, #216fab); }
.reply-assignment-note { white-space: pre-wrap; overflow-wrap: anywhere; background: #f3f7fa; border: 1px solid #dfe8ee; border-radius: .5rem; padding: .8rem; font-size: .9rem; }
.reply-assignment-history + .reply-assignment-history { border-top: 1px solid #dfe8ee; }
/* Compact dashboard oversight; teammates with assignments use their personal banner. */
.admin-overdue-alert { margin: 0 0 1rem; padding: .65rem 1rem; border: 1px solid #e8a5ac; border-left: 4px solid #bd2735; border-radius: .7rem; background: #fff0f0; color: #a51d28; }
.admin-overdue-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .3rem 1rem; padding-bottom: .3rem; }
.admin-overdue-header h2 { display: flex; align-items: center; gap: .4rem; margin: 0; font-size: .9rem; font-weight: 700; line-height: 1.5; }
.admin-overdue-header > a, .admin-overdue-action { color: var(--vep-blue-dark, #285d87); font-size: .78rem; font-weight: 700; white-space: nowrap; }
.admin-overdue-list { margin: 0; padding: 0; list-style: none; }
.admin-overdue-row { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.3fr) auto 5rem; align-items: center; gap: .25rem 1rem; padding: .4rem 0; border-top: 1px solid #efd0d3; font-size: .82rem; line-height: 1.4; }
.admin-overdue-readonly { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.3fr) auto; }
.admin-overdue-customer { color: #17324d; font-weight: 700; overflow-wrap: anywhere; }
.admin-overdue-owner { color: #5d5660; overflow-wrap: anywhere; }
.admin-overdue-unassigned { display: inline-block; padding: .1rem .5rem; border: 1px solid #e7c76b; border-radius: 999px; background: #fff4dc; color: #805400; font-size: .75rem; font-weight: 700; }
.admin-overdue-wait { font-weight: 700; white-space: nowrap; }
.admin-overdue-action { justify-self: end; }
.admin-overdue-more > summary { display: flex; align-items: center; justify-content: center; gap: .3rem; padding: .35rem 0 .1rem; list-style: none; cursor: pointer; font-size: .78rem; font-weight: 700; }
.admin-overdue-more > summary::-webkit-details-marker { display: none; }
.admin-overdue-collapse { display: none; }
.admin-overdue-more[open] .admin-overdue-expand { display: none; }
.admin-overdue-more[open] .admin-overdue-collapse { display: inline; }
.admin-overdue-more[open] > summary > svg { transform: rotate(180deg); }
.admin-overdue-alert :is(a, summary):focus-visible { outline: 2px solid #a51d28; outline-offset: 2px; }
.admin-overdue-refresh { display: block; margin-top: .3rem; }
.admin-overdue-refresh[hidden] { display: none; }
@media (max-width: 575.98px) {
    .admin-overdue-alert { padding: .6rem .75rem; }
    .admin-overdue-row { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "customer wait" "owner action"; gap: .2rem .5rem; padding: .5rem 0; }
    .admin-overdue-readonly { grid-template-areas: "customer wait" "owner owner"; }
    .admin-overdue-customer { grid-area: customer; }
    .admin-overdue-owner { grid-area: owner; }
    .admin-overdue-wait { grid-area: wait; font-size: .78rem; }
    .admin-overdue-action { grid-area: action; }
}
@media (max-width: 575.98px) { .reply-assignment-banner { flex-wrap: wrap; padding: .85rem; gap: .65rem; } .reply-assignment-banner-copy { flex-basis: calc(100% - 2.5rem); } .reply-assignment-banner > a { margin-left: 2.15rem; } }
/* Five filters stay usable without squeezing the queue description or mobile labels. */
.conversation-queue-header { flex-wrap: wrap; }
.conversation-queue-header > div { flex: 1 1 22rem; }
.conversation-filters { max-width: 100%; flex-wrap: wrap; }
.conversation-filter { font-weight: 700; }
@media (max-width: 767.98px) {
    .conversation-queue-header > div { flex-basis: auto; }
    .conversation-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .conversation-filter { white-space: normal; }
    .conversation-filter:last-child { grid-column: 1 / -1; }
    .conversation-filter .reply-assignment-icon { display: none; }
}
