/* Email pages: preferences, unsubscribe, password reset, Platform admin → Email (email_pages.go, email_admin.go). */
.em-wrap { max-width: 760px; }
.em-card { min-width: 0; }
.em-switch { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--s-3); padding: var(--s-3) var(--s-4); border-top: 1px solid var(--line); cursor: pointer; }
.em-switch:first-of-type { border-top: 0; }
.em-switch .em-label { min-width: 0; display: grid; gap: 2px; }
.em-switch .em-label strong { font-weight: 650; }
.em-switch input[type="checkbox"] { appearance: none; -webkit-appearance: none; flex: 0 0 auto; width: 44px; height: 26px; border-radius: 999px; background: var(--surface-3); border: 1px solid var(--line); position: relative; cursor: pointer; margin: 2px 0 0; transition: background var(--dur-1, .15s); }
.em-switch input[type="checkbox"]::after { content: ""; position: absolute; top: 2px; left: 2px; width: 20px; height: 20px; border-radius: 50%; background: var(--text-2); transition: transform var(--dur-1, .15s), background var(--dur-1, .15s); }
.em-switch input[type="checkbox"]:checked { background: var(--brand); border-color: transparent; }
.em-switch input[type="checkbox"]:checked::after { transform: translateX(18px); background: var(--brand-ink, #03130f); }
.em-switch input[type="checkbox"]:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }
.em-club-head { display: flex; align-items: center; gap: var(--s-3); min-width: 0; }
.em-club-head h2 { overflow-wrap: anywhere; }
.em-always { display: flex; flex-wrap: wrap; gap: 6px; }
.em-change { display: flex; gap: var(--s-2); flex-wrap: wrap; }
.em-change .input { flex: 1 1 220px; min-width: 0; }
.em-sticky { position: sticky; bottom: 0; padding: var(--s-3) 0; background: linear-gradient(to top, var(--bg) 70%, transparent); z-index: 2; }
/* Platform admin → Email */
.em-checks { display: grid; gap: 0; }
.em-check { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--s-3); padding: var(--s-3) var(--s-4); border-top: 1px solid var(--line); align-items: start; }
.em-check:first-child { border-top: 0; }
.em-check .mono { overflow-wrap: anywhere; font-size: var(--fs-xs); }
.em-dot { width: 12px; height: 12px; border-radius: 50%; margin-top: 5px; background: var(--text-3); }
.em-dot.ok { background: var(--ok); } .em-dot.warn { background: var(--warn); } .em-dot.bad { background: var(--live); }
.em-test { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--s-3); align-items: end; }
.em-test .field { min-width: 0; }
.em-row { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); padding: var(--s-3) var(--s-4); border-top: 1px solid var(--line); min-width: 0; }
.em-row > span { min-width: 0; overflow-wrap: anywhere; }
.em-row form { flex: 0 0 auto; }
.em-search { display: flex; gap: var(--s-2); flex-wrap: wrap; padding: var(--s-3) var(--s-4); }
.em-search .input { flex: 1 1 180px; min-width: 0; }
@media (max-width: 600px) { .em-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-3); } .em-stats .po-stat .v { font-size: var(--fs-xl); } }
