.email-dashboard { min-width: 0; --email-ink: var(--color-text-dark); --email-muted: var(--color-text-light); --email-line: var(--color-border); }
.email-hero { display:flex; align-items:center; justify-content:space-between; gap:24px; padding: 12px 0 24px; }
.email-hero h1 { margin: 8px 0 12px; font-size:clamp(28px, 3vw, 42px); letter-spacing:-1.3px; line-height:1.15; color:var(--email-ink); }
.email-hero p:not(.account-kicker) { color:var(--email-muted); font-size:14px; line-height:1.8; }
.email-hero button { flex-shrink:0; }
.email-status { min-height:24px; font-size:13px; color:var(--email-muted); margin-bottom:16px; }
.email-status[data-error="true"], .email-form-message { color:#bc4242; }
.email-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:28px; }
.email-stats article { border:1px solid var(--email-line); padding:20px; border-radius:16px; background:var(--color-bg-card); display:flex; flex-direction:column; }
.email-stats article:nth-child(2) { background:var(--color-bg-light); border-color:#86c6c8; }
.email-stats span { font-size:12px; font-weight:600; color:var(--email-muted); }
.email-stats strong { font-size:34px; line-height:1.5; font-weight:700; color:var(--email-ink); }
.email-stats small { font-size:11px; color:var(--email-muted); }
.email-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.email-dashboard h2 { font-size:20px; letter-spacing:-.5px; margin:4px 0 0; color:var(--email-ink); }
.email-toolbar { display:flex; align-items:end; gap:14px; margin-bottom:16px; }
.email-toolbar label, .email-fields label { display:flex; flex-direction:column; gap:8px; font-size:12px; font-weight:600; color:var(--email-ink); }
.email-toolbar label:first-child { flex:1; }
.email-toolbar span { margin-bottom:12px; font-size:11px; color:var(--email-muted); }
.email-dashboard input, .email-dashboard select { box-sizing:border-box; border:1px solid var(--email-line); border-radius:9px; padding:11px 12px; font:inherit; font-size:13px; color:var(--email-ink); background:var(--color-bg-card); min-width:0; }
.email-dashboard button { cursor:pointer; }
.email-dashboard button:disabled { opacity:.55; cursor:wait; }
.email-dashboard :is(button,input,select):focus-visible { outline:3px solid #1399ab; outline-offset:3px; }
.email-schedules { display:grid; gap:12px; }
.email-schedule { border:1px solid var(--email-line); border-radius:16px; padding:20px; background:var(--color-bg-card); display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; }
.email-schedule-header { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:8px; }
.email-schedule h3 { font-size:16px; color:var(--email-ink); margin:0; }
.email-badge { display:inline-flex; font-size:10px; font-weight:700; border-radius:20px; padding:4px 9px; color:#657580; background:#edf1f3; }
.email-badge[data-active="true"] { color:#127561; background:#e0f4ed; }
.email-schedule-type { color:#0b7e8b; font-size:12px; font-weight:600; }
.email-schedule p { margin:6px 0; font-size:12px; color:var(--email-muted); overflow-wrap:anywhere; }
.email-schedule-next { display:block; font-size:11px; margin-top:12px; color:var(--email-ink); }
.email-schedule-actions { display:flex; flex-direction:column; justify-content:space-between; align-items:end; gap:20px; }
.email-switch { border:0; background:none; display:flex; align-items:center; gap:8px; font-size:11px; color:var(--email-muted); padding:0; }
.email-switch i { display:block; width:36px; height:20px; border-radius:20px; background:#c4d0d5; position:relative; }
.email-switch i::after { content:''; width:14px; height:14px; background:white; position:absolute; left:3px; top:3px; border-radius:50%; transition:transform .15s; }
.email-switch[aria-checked="true"] i { background:#0b8590; }
.email-switch[aria-checked="true"] i::after { transform:translateX(16px); }
.email-row-buttons { display:flex; flex-wrap:wrap; justify-content:end; gap:8px; }
.email-row-buttons button { background:transparent; border:1px solid var(--email-line); border-radius:7px; padding:7px 10px; color:var(--email-ink); font-size:11px; }
.email-row-buttons button:first-child { background:var(--color-bg-light); color:#09727e; border-color:#a5cfd3; }
.email-note { color:var(--email-muted); font-size:11px; line-height:1.8; margin:14px 0 24px; }
.email-bottom-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:26px 0; }
.email-panel { border:1px solid var(--email-line); border-radius:16px; padding:24px; background:var(--color-bg-card); }
.email-panel p { font-size:12px; line-height:1.8; color:var(--email-muted); }
.email-upcoming-item { border-top:1px solid var(--email-line); padding-top:14px; margin-top:16px; }
.email-upcoming-item strong { display:block; font-size:13px; color:var(--email-ink); }
.email-upcoming-item small { display:block; color:var(--email-muted); font-size:11px; margin-top:5px; overflow-wrap:anywhere; }
.email-presets { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:18px; }
.email-presets button { border:1px solid var(--email-line); border-radius:10px; background:transparent; padding:14px; text-align:left; font-size:13px; font-weight:600; color:var(--email-ink); }
.email-presets small { display:block; font-size:10px; font-weight:400; margin-top:5px; color:var(--email-muted); }
.email-table-scroll { overflow:auto; }
.email-history table { border-collapse:collapse; width:100%; text-align:left; font-size:11px; }
.email-history :is(td,th) { padding:12px 10px; border-bottom:1px solid var(--email-line); color:var(--email-ink); vertical-align:top; }
.email-history th { color:var(--email-muted); font-weight:600; }
.email-history td small { display:block; margin-top:4px; color:var(--email-muted); }
.email-history .email-section-heading > span { font-size:11px; color:var(--email-muted); }
.email-empty { border:1px dashed var(--email-line); border-radius:12px; padding:25px; text-align:center; color:var(--email-muted); font-size:13px; }
.email-dialog { width:min(640px, calc(100% - 32px)); max-height:90dvh; padding:0; border:1px solid var(--email-line); border-radius:20px; background:var(--color-bg-card); color:var(--email-ink); margin:auto; box-shadow:0 24px 90px #132a4540; }
.email-dialog::backdrop { background:#11273380; backdrop-filter:blur(3px); }
.email-dialog form { padding:28px; }
.email-dialog header { display:flex; align-items:start; justify-content:space-between; gap:12px; margin-bottom:24px; }
.email-dialog header button { border:0; background:transparent; font-size:28px; line-height:1; color:var(--email-muted); }
.email-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.email-field-wide { grid-column:1 / -1; }
.email-fields [hidden] { display:none; }
.email-fields .email-activate { flex-direction:row; align-items:start; gap:12px; margin:5px 0; }
.email-activate input { accent-color:#0b8590; margin-top:2px; width:16px; height:16px; }
.email-activate small { display:block; font-size:11px; font-weight:400; color:var(--email-muted); margin-top:5px; }
.email-preview { background:var(--color-bg-light); padding:16px; border-radius:12px; margin-top:20px; font-size:12px; }
.email-preview p { margin:8px 0; line-height:1.8; }
.email-preview small { display:block; line-height:1.7; color:var(--email-muted); }
.email-form-message { font-size:12px; min-height:20px; margin:16px 0; }
.email-dialog footer { display:flex; justify-content:end; gap:12px; }
@media (max-width:1100px) { .email-stats article { padding:15px; } .email-toolbar span { display:none; } .email-schedule { grid-template-columns:1fr; } .email-schedule-actions { flex-direction:row; align-items:center; } }
@media (max-width:620px) { .email-hero { align-items:start; flex-direction:column; gap:12px; } .email-stats { grid-template-columns:1fr 1fr; } .email-bottom-grid { grid-template-columns:1fr; } .email-fields { grid-template-columns:1fr; } .email-field-wide { grid-column:auto; } .email-dialog form { padding:20px; } .email-schedule { padding:16px; } .email-schedule-actions { align-items:start; flex-direction:column; gap:14px; } .email-row-buttons { justify-content:start; } .email-panel { padding:18px; } .email-toolbar { align-items:stretch; } .email-toolbar input { width:100%; } .email-history table { min-width:530px; } }
@media (prefers-reduced-motion:reduce) { .email-switch i::after { transition:none; } }
/* Contain the history table within the dashboard grid on narrow screens. */
body[data-account-page='admin-emails'] .account-content.email-dashboard { grid-template-columns:minmax(0,1fr); }
.email-dashboard > *, .email-bottom-grid > * { min-width:0; }
.email-toolbar label { min-width:0; }
@media (max-width:620px) { .email-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.email-fields > label, .email-dialog form { min-width:0; }
.email-fields :is(input:not([type='checkbox']), select) { width:100%; max-width:100%; }
@media (max-width:620px) {
    .email-fields { grid-template-columns:minmax(0,1fr); }
    .email-dialog footer { flex-direction:column-reverse; }
    .email-dialog footer button { width:100%; }
}

.email-recipient-field { border: 0; padding: 0; margin: 0; min-width: 0; grid-column: 1 / -1; }
.email-recipient-field legend { font-weight: 600; font-size: .9rem; }
.email-fields .email-recipient-choice { display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: .7rem; padding: .75rem; border: 1px solid var(--border-color, #dfe5e7); border-radius: .7rem; margin-top: .5rem; cursor: pointer; }
.email-recipient-choice:has(input:checked) { background: #e0f2f4; border-color: #0b7d8b; }
.email-recipient-choice input { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; accent-color: #0b7d8b; }
.email-recipient-choice span, .email-recipient-summary { overflow-wrap: anywhere; min-width: 0; }
