/* Admin Messages (timeline, thread, composer, follow-ups). Phone-first; theme-aware via MudBlazor palette variables. */
.uc-msg {
    --ucmsg-line: var(--mud-palette-lines-default, rgba(255, 255, 255, 0.12));
    --ucmsg-surface: var(--mud-palette-surface, #1c1530);
    --ucmsg-muted: var(--mud-palette-text-secondary, rgba(255, 255, 255, 0.7));
    --ucmsg-text: var(--mud-palette-text-primary, #fff);
    --ucmsg-primary: var(--mud-palette-primary, #FFE566);
    --ucmsg-out: color-mix(in srgb, var(--ucmsg-primary) 16%, var(--ucmsg-surface));
    --ucmsg-out-border: color-mix(in srgb, var(--ucmsg-primary) 40%, transparent);
    --ucmsg-in: color-mix(in srgb, var(--ucmsg-text) 6%, var(--ucmsg-surface));
    --ucmsg-nav-h: 2.78rem;
    color: var(--ucmsg-text);
    min-width: 0;
    max-width: 100%;
}

.uc-msg *, .uc-msg *::before, .uc-msg *::after { box-sizing: border-box; }

.uc-msg-visually-hidden {
    position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* ---------- toolbar / filters ---------- */
.uc-msg-toolbar {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-bottom: 10px;
}
.uc-msg-toolbar .uc-msg-search { flex: 1 1 auto; min-width: 0; }
.uc-msg-toolbar .mud-input-control { margin-top: 0 !important; }

.uc-msg-filter-toggle { min-height: 44px; min-width: 44px; }
.uc-msg-new-btn { min-height: 44px; white-space: nowrap; }

.uc-msg-filters {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 10px;
}
.uc-msg-filters .uc-msg-filter-client { grid-column: 1 / -1; }
.uc-msg-filters--collapsed { display: none; }

.uc-msg-quick {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 12px;
}
.uc-msg-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 44px;
    padding: 0 14px;
    border-radius: 22px;
    border: 1px solid var(--ucmsg-line);
    background: transparent;
    color: var(--ucmsg-text);
    font: inherit;
    font-size: 0.875rem;
    cursor: pointer;
}
.uc-msg-pill-btn[aria-pressed="true"] {
    background: var(--ucmsg-primary);
    color: var(--mud-palette-primary-text, #1a1200);
    border-color: var(--ucmsg-primary);
}
.uc-msg-pill-btn:focus-visible, .uc-msg-row:focus-visible, .uc-msg-seg button:focus-visible {
    outline: 2px solid var(--ucmsg-primary);
    outline-offset: 2px;
}
.uc-msg-result-count { color: var(--ucmsg-muted); font-size: 0.8125rem; margin-left: auto; }

@media (min-width: 960px) {
    .uc-msg-filters, .uc-msg-filters--collapsed {
        display: grid;
        grid-template-columns: 180px 200px minmax(220px, 320px);
    }
    .uc-msg-filters .uc-msg-filter-client { grid-column: auto; }
    .uc-msg-filter-toggle { display: none !important; }
}

/* ---------- banners ---------- */
.uc-msg-banner {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid var(--ucmsg-line);
    background: var(--ucmsg-in);
    font-size: 0.875rem;
    line-height: 1.4;
    margin-bottom: 10px;
}
.uc-msg-banner .mud-icon-root { flex: 0 0 auto; margin-top: 1px; }
.uc-msg-banner--warn { border-color: color-mix(in srgb, var(--mud-palette-warning, #ff9800) 55%, transparent); }
.uc-msg-banner--error { border-color: color-mix(in srgb, var(--mud-palette-error, #f44336) 55%, transparent); }
.uc-msg-banner--info { border-color: color-mix(in srgb, var(--mud-palette-info, #2196f3) 55%, transparent); }
.uc-msg-banner b { font-weight: 600; }

/* ---------- timeline ---------- */
.uc-msg-day {
    position: sticky;
    top: var(--ucmsg-nav-h);
    z-index: 2;
    padding: 6px 4px;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ucmsg-muted);
    background: color-mix(in srgb, var(--mud-palette-background, #0b1224) 88%, transparent);
    backdrop-filter: blur(6px);
}
.uc-msg-list {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 1px solid var(--ucmsg-line);
    border-radius: 12px;
    overflow: hidden;
    background: var(--ucmsg-surface);
    margin-bottom: 14px;
}
.uc-msg-list > li + li { border-top: 1px solid var(--ucmsg-line); }
.uc-msg-row {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 12px;
    min-height: 64px;
    color: inherit !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent;
}
.uc-msg-row:hover { background: var(--mud-palette-action-default-hover, rgba(255, 255, 255, 0.05)); }
.uc-msg-avatar {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--mud-palette-primary-text, #1a1200);
    background: var(--ucmsg-primary);
    position: relative;
}
.uc-msg-avatar--lg { width: 44px; height: 44px; flex-basis: 44px; }
.uc-msg-unread-dot {
    position: absolute;
    top: -2px;
    right: -2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--mud-palette-error, #f44336);
    border: 2px solid var(--ucmsg-surface);
}
.uc-msg-row-main { flex: 1 1 auto; min-width: 0; }
.uc-msg-row-top { display: flex; gap: 8px; align-items: baseline; }
.uc-msg-row-name {
    flex: 1 1 auto;
    min-width: 0;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.uc-msg-row--unread .uc-msg-row-name { font-weight: 700; }
.uc-msg-row-time { flex: 0 0 auto; font-size: 0.75rem; color: var(--ucmsg-muted); white-space: nowrap; }
.uc-msg-row-snippet {
    display: flex;
    gap: 6px;
    align-items: center;
    margin-top: 2px;
    font-size: 0.875rem;
    color: var(--ucmsg-muted);
    min-width: 0;
}
.uc-msg-row--unread .uc-msg-row-snippet { color: var(--ucmsg-text); }
.uc-msg-row-snippet .mud-icon-root { flex: 0 0 auto; font-size: 1rem; }
.uc-msg-row-snippet-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.uc-msg-row-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }

.uc-msg-tag {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 22px;
    padding: 0 8px;
    border-radius: 11px;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    border: 1px solid var(--ucmsg-line);
    color: var(--ucmsg-muted);
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.uc-msg-tag .mud-icon-root { font-size: 0.875rem; }
.uc-msg-tag--ok { color: var(--mud-palette-success, #4caf50); border-color: color-mix(in srgb, var(--mud-palette-success, #4caf50) 45%, transparent); }
.uc-msg-tag--bad { color: var(--mud-palette-error, #f44336); border-color: color-mix(in srgb, var(--mud-palette-error, #f44336) 50%, transparent); }
.uc-msg-tag--wait { color: var(--mud-palette-warning, #ff9800); border-color: color-mix(in srgb, var(--mud-palette-warning, #ff9800) 50%, transparent); }
.uc-msg-tag--auto { color: var(--mud-palette-info, #2196f3); border-color: color-mix(in srgb, var(--mud-palette-info, #2196f3) 50%, transparent); }
.uc-msg-tag--new { color: var(--mud-palette-primary-text, #1a1200); background: var(--ucmsg-primary); border-color: var(--ucmsg-primary); }
.uc-msg-tag--demo { color: var(--mud-palette-warning, #ff9800); }

[data-theme="light"] .uc-msg-tag--ok { color: #1b6e20; }
[data-theme="light"] .uc-msg-tag--bad { color: #b71c1c; }
[data-theme="light"] .uc-msg-tag--wait { color: #8a4b00; }
[data-theme="light"] .uc-msg-tag--auto { color: #0b5394; }
[data-theme="light"] .uc-msg-tag--demo { color: #8a4b00; }

.uc-msg-empty {
    text-align: center;
    padding: 40px 16px;
    color: var(--ucmsg-muted);
    border: 1px dashed var(--ucmsg-line);
    border-radius: 12px;
}
.uc-msg-empty .mud-icon-root { font-size: 2.5rem; opacity: 0.6; }
.uc-msg-more { display: flex; justify-content: center; margin: 8px 0 24px; }
.uc-msg-more .mud-button-root { min-height: 44px; }

/* ---------- thread ---------- */
.uc-msg-thread-page { max-width: 860px; margin: 0 auto; padding-bottom: 8px; }
.uc-msg-thread-head {
    position: sticky;
    top: var(--ucmsg-nav-h);
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 0;
    margin: 0 0 6px;
    background: color-mix(in srgb, var(--mud-palette-background, #0b1224) 92%, transparent);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--ucmsg-line);
}
.uc-msg-thread-head .mud-icon-button { width: 44px; height: 44px; }
.uc-msg-thread-who { flex: 1 1 auto; min-width: 0; display: flex; gap: 10px; align-items: center; }
.uc-msg-thread-name { font-weight: 700; font-size: 1.05rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uc-msg-thread-sub { font-size: 0.78rem; color: var(--ucmsg-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uc-msg-thread-nav { display: flex; align-items: center; gap: 0; flex: 0 0 auto; }
.uc-msg-thread-pos { font-size: 0.75rem; color: var(--ucmsg-muted); min-width: 3.2em; text-align: center; }

.uc-msg-facts { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 12px; }

.uc-msg-thread { display: flex; flex-direction: column; gap: 10px; padding: 4px 0 12px; }
.uc-msg-thread-day {
    align-self: center;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--ucmsg-muted);
    padding: 2px 10px;
    border-radius: 10px;
    border: 1px solid var(--ucmsg-line);
    margin: 6px 0 2px;
}
.uc-msg-bubble-wrap { display: flex; flex-direction: column; max-width: 100%; }
.uc-msg-bubble-wrap--out { align-items: flex-end; }
.uc-msg-bubble-wrap--in { align-items: flex-start; }
.uc-msg-bubble {
    position: relative;
    max-width: min(82%, 560px);
    padding: 10px 12px;
    border-radius: 16px;
    border: 1px solid var(--ucmsg-line);
    background: var(--ucmsg-in);
    overflow-wrap: anywhere;
    scroll-margin-top: 140px;
    scroll-margin-bottom: 220px;
    outline: none;
}
.uc-msg-bubble--email { max-width: min(92%, 640px); border-radius: 12px; }
.uc-msg-bubble-wrap--out .uc-msg-bubble { background: var(--ucmsg-out); border-color: var(--ucmsg-out-border); border-bottom-right-radius: 4px; }
.uc-msg-bubble-wrap--in .uc-msg-bubble { border-bottom-left-radius: 4px; }
.uc-msg-bubble--failed { border-color: color-mix(in srgb, var(--mud-palette-error, #f44336) 60%, transparent) !important; }
.uc-msg-bubble--queued { border-style: dashed !important; }
.uc-msg-bubble-subject { font-weight: 600; margin-bottom: 4px; display: flex; gap: 6px; align-items: center; }
.uc-msg-bubble-subject .mud-icon-root { font-size: 1rem; opacity: 0.75; flex: 0 0 auto; }
.uc-msg-bubble-body { white-space: pre-wrap; font-size: 0.9375rem; line-height: 1.45; }
.uc-msg-bubble-body--clamp { display: -webkit-box; -webkit-line-clamp: 8; -webkit-box-orient: vertical; overflow: hidden; }
.uc-msg-bubble-more {
    background: none; border: 0; padding: 8px 0 0; min-height: 32px; color: var(--ucmsg-primary); font: inherit; font-size: 0.8125rem; cursor: pointer; text-decoration: underline;
}
[data-theme="light"] .uc-msg-bubble-more { color: #5b4a00; }
.uc-msg-bubble-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    margin-top: 4px;
    font-size: 0.72rem;
    color: var(--ucmsg-muted);
    max-width: min(92%, 640px);
}
.uc-msg-bubble-wrap--out .uc-msg-bubble-meta { justify-content: flex-end; }
.uc-msg-bubble-error { color: var(--mud-palette-error, #f44336); font-size: 0.78rem; margin-top: 4px; }
[data-theme="light"] .uc-msg-bubble-error { color: #b71c1c; }
.page:not([data-theme="light"]) .uc-msg-bubble-error { color: #ffb4ab; }
.uc-msg-linkbtn {
    background: none; border: 0; color: inherit; text-decoration: underline; font: inherit; cursor: pointer;
    min-height: 44px; min-width: 44px; padding: 0 6px;
}

@keyframes ucmsg-flash {
    0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--ucmsg-primary) 85%, transparent); }
    60% { box-shadow: 0 0 0 6px color-mix(in srgb, var(--ucmsg-primary) 35%, transparent); }
    100% { box-shadow: 0 0 0 3px color-mix(in srgb, var(--ucmsg-primary) 55%, transparent); }
}
.uc-msg-bubble--highlight { animation: ucmsg-flash 1.2s ease-out 1 forwards; }
@media (prefers-reduced-motion: reduce) {
    .uc-msg-bubble--highlight { animation: none; box-shadow: 0 0 0 3px color-mix(in srgb, var(--ucmsg-primary) 60%, transparent); }
}

/* ---------- composer ---------- */
.uc-msg-composer {
    position: sticky;
    bottom: 0;
    z-index: 6;
    margin: 8px -4px 0;
    padding: 10px 10px calc(10px + env(safe-area-inset-bottom, 0px));
    border: 1px solid var(--ucmsg-line);
    border-radius: 14px 14px 0 0;
    background: var(--ucmsg-surface);
    box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.18);
}
.uc-msg-seg {
    display: inline-flex;
    border: 1px solid var(--ucmsg-line);
    border-radius: 22px;
    padding: 2px;
    gap: 2px;
}
.uc-msg-seg button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    min-width: 88px;
    justify-content: center;
    padding: 0 14px;
    border-radius: 20px;
    border: 0;
    background: transparent;
    color: var(--ucmsg-text);
    font: inherit;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
}
.uc-msg-seg button[aria-checked="true"] { background: var(--ucmsg-primary); color: var(--mud-palette-primary-text, #1a1200); }
.uc-msg-seg button .mud-icon-root { font-size: 1.1rem; }
.uc-msg-composer-top { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; flex-wrap: wrap; }
.uc-msg-composer-to { font-size: 0.78rem; color: var(--ucmsg-muted); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1 1 120px; text-align: right; }
.uc-msg-composer-row { display: flex; gap: 8px; align-items: flex-end; }
.uc-msg-composer-row .uc-msg-composer-input { flex: 1 1 auto; min-width: 0; }
.uc-msg-send { min-height: 48px !important; min-width: 48px !important; border-radius: 24px !important; }
.uc-msg-composer-foot { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; margin-top: 6px; font-size: 0.75rem; color: var(--ucmsg-muted); }
.uc-msg-composer-foot--warn { color: var(--mud-palette-warning, #ff9800); }
[data-theme="light"] .uc-msg-composer-foot--warn { color: #8a4b00; }
.uc-msg-composer .mud-input-control { margin-top: 0 !important; }
.uc-msg-composer textarea { max-height: 34vh; }
.uc-msg-check { display: flex; align-items: center; gap: 8px; min-height: 44px; font-size: 0.875rem; cursor: pointer; }
.uc-msg-check input { width: 20px; height: 20px; accent-color: var(--ucmsg-primary); }

/* ---------- start (pick client) ---------- */
.uc-msg-pick-list { list-style: none; margin: 0; padding: 0; border: 1px solid var(--ucmsg-line); border-radius: 12px; overflow: hidden; background: var(--ucmsg-surface); }
.uc-msg-pick-list > li + li { border-top: 1px solid var(--ucmsg-line); }
.uc-msg-pick {
    display: flex; gap: 12px; align-items: center; width: 100%; min-height: 60px; padding: 10px 12px;
    background: none; border: 0; color: inherit; font: inherit; text-align: left; cursor: pointer;
}
.uc-msg-pick:hover { background: var(--mud-palette-action-default-hover, rgba(255, 255, 255, 0.05)); }
.uc-msg-pick:focus-visible { outline: 2px solid var(--ucmsg-primary); outline-offset: -2px; }
.uc-msg-channel-choices { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 600px) { .uc-msg-channel-choices { grid-template-columns: 1fr 1fr; } }
.uc-msg-channel-choice {
    display: flex; gap: 12px; align-items: center; min-height: 72px; padding: 14px; border-radius: 12px;
    border: 1px solid var(--ucmsg-line); background: var(--ucmsg-surface); color: inherit; font: inherit; text-align: left; cursor: pointer; width: 100%;
}
.uc-msg-channel-choice:disabled { opacity: 0.6; cursor: not-allowed; }
.uc-msg-channel-choice:focus-visible { outline: 2px solid var(--ucmsg-primary); outline-offset: 2px; }
.uc-msg-channel-choice .mud-icon-root { font-size: 1.75rem; }

/* ---------- follow-ups ---------- */
.uc-fu-card { border: 1px solid var(--ucmsg-line); border-radius: 12px; background: var(--ucmsg-surface); padding: 14px; margin-bottom: 14px; }
.uc-fu-card-head { display: flex; gap: 10px; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; }
.uc-fu-title { font-weight: 700; font-size: 1.05rem; }
.uc-fu-desc { color: var(--ucmsg-muted); font-size: 0.85rem; margin-top: 2px; }
.uc-fu-tokens { display: flex; flex-wrap: wrap; gap: 6px; margin: 6px 0 10px; }
.uc-fu-token {
    min-height: 36px; padding: 0 10px; border-radius: 18px; border: 1px solid var(--ucmsg-line);
    background: transparent; color: var(--ucmsg-text); font: inherit; font-size: 0.78rem; font-family: ui-monospace, Menlo, Consolas, monospace; cursor: pointer;
}
.uc-fu-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.uc-fu-actions .mud-button-root { min-height: 44px; }
.uc-fu-overrides { display: grid; grid-template-columns: 1fr; gap: 6px; margin-top: 6px; }
.uc-fu-override { display: grid; grid-template-columns: minmax(0, 1fr) 110px; gap: 8px; align-items: center; }
.uc-fu-override-name { font-size: 0.875rem; overflow: hidden; text-overflow: ellipsis; }
.uc-fu-preview-frame { width: 100%; min-height: 60vh; border: 1px solid var(--ucmsg-line); border-radius: 8px; background: #fff; }
.uc-fu-plan { list-style: none; margin: 0; padding: 0; }
.uc-fu-plan > li { display: flex; gap: 10px; align-items: flex-start; padding: 10px 0; border-top: 1px solid var(--ucmsg-line); }
.uc-fu-plan > li:first-child { border-top: 0; }
.uc-fu-plan-main { flex: 1 1 auto; min-width: 0; }
.uc-fu-plan-when { font-size: 0.78rem; color: var(--ucmsg-muted); }
.uc-fu-sticky-save {
    position: sticky; bottom: 0; z-index: 4; display: flex; gap: 8px; justify-content: flex-end; flex-wrap: wrap;
    padding: 10px 0 calc(10px + env(safe-area-inset-bottom, 0px));
    background: color-mix(in srgb, var(--mud-palette-background, #0b1224) 92%, transparent);
    backdrop-filter: blur(6px);
}
.uc-fu-sticky-save .mud-button-root { min-height: 44px; }

/* ---------- nav badge ---------- */
.uc-msg-nav-link { position: relative; }
.uc-msg-nav-badge {
    display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; margin-left: 6px;
    border-radius: 10px; background: var(--mud-palette-error, #e53935); color: #fff; font-size: 0.72rem; font-weight: 700; line-height: 1;
}
.uc-msg-nav-icon { position: relative; display: inline-flex; }
.uc-msg-nav-icon .uc-msg-nav-badge { position: absolute; top: 2px; right: 0; margin: 0; min-width: 18px; height: 18px; font-size: 0.66rem; pointer-events: none; }

/* ---- a11y / tap-target polish ---- */
.uc-msg-sr {
    position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.uc-msg .uc-msg-seg button { min-height: 44px; }
.uc-msg .uc-fu-token { min-height: 44px; }
.uc-msg .mud-input-clear-button, .uc-msg .mud-input-adornment .mud-icon-button {
    min-width: 44px; min-height: 44px;
}
.uc-msg .mud-switch { min-height: 44px; }
.uc-msg .mud-switch .mud-switch-span, .uc-msg .mud-switch input { min-height: 44px; }
a.uc-msg-nav-link { min-height: 44px; }
/* Light theme: outlined hub tabs (shared admin component) need darker text for contrast on white. */
[data-theme="light"] .mrc-admin-hub-tabs .mrc-admin-hub-tab.mud-button-outlined {
    color: #3b3000 !important;
    background: #ffffff !important;
    border-color: rgba(59, 48, 0, 0.35) !important;
}

/* Dark palette uses neon success/info/warning fills with white text (pre-existing, site-wide);
   give snackbars dark text there so confirmations like "Text sent" are readable (WCAG AA). */
body:has(.page:not([data-theme="light"])) .mud-snackbar.mud-alert-filled-success,
body:has(.page:not([data-theme="light"])) .mud-snackbar.mud-alert-filled-info,
body:has(.page:not([data-theme="light"])) .mud-snackbar.mud-alert-filled-warning { color: #121212 !important; }
body:has(.page:not([data-theme="light"])) .mud-snackbar.mud-alert-filled-success .mud-icon-root,
body:has(.page:not([data-theme="light"])) .mud-snackbar.mud-alert-filled-info .mud-icon-root,
body:has(.page:not([data-theme="light"])) .mud-snackbar.mud-alert-filled-warning .mud-icon-root { color: #121212 !important; }

/* Light palette: primary is a pale yellow, so primary text/outlined buttons in Messages get the dark ink. */
[data-theme="light"] .uc-msg .mud-button-text-primary,
[data-theme="light"] .uc-msg .mud-button-outlined-primary { color: #3b3000 !important; }
[data-theme="light"] .uc-msg .mud-button-outlined-primary { border-color: rgba(59,48,0,.45) !important; }
/* Light snackbars: success green darkened for white text; yellow info / pink warning get dark text. */
body:has(.page[data-theme="light"]) .mud-snackbar.mud-alert-filled-success { background-color: #116630 !important; color: #fff !important; }
body:has(.page[data-theme="light"]) .mud-snackbar.mud-alert-filled-info,
body:has(.page[data-theme="light"]) .mud-snackbar.mud-alert-filled-warning { color: #121212 !important; }
body:has(.page[data-theme="light"]) .mud-snackbar.mud-alert-filled-info .mud-icon-root,
body:has(.page[data-theme="light"]) .mud-snackbar.mud-alert-filled-warning .mud-icon-root { color: #121212 !important; }
