.rules-dialog { width: min(820px, calc(100vw - 24px)); }
.rules-dialog fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.rules-dialog legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.rules-dialog textarea { width: 100%; padding: 10px; color: inherit; font: inherit; background: var(--wm-solid-surface); border: 1px solid var(--wm-border); border-radius: 6px; resize: vertical; }
.rules-dialog textarea:focus-visible { outline: 3px solid var(--wm-accent); outline-offset: 2px; }
.rules-dialog .rule-toggle { display: flex; align-items: center; gap: 8px; }
.rules-dialog input[type=checkbox] { width: auto; }
.rule-condition, .rule-action { padding: 12px; margin: 12px 0; border: 1px solid var(--wm-border); border-radius: 8px; }
#rulesRows { padding-left: 24px; }
#rulesRows li { padding: 12px; border-bottom: 1px solid var(--wm-border); overflow-wrap: anywhere; }
.rule-row-actions { display: flex; flex-wrap: wrap; gap: 8px; }
#ruleStatus, #rulesStatus { overflow-wrap: anywhere; }
#mailRulesSettings { width: auto; padding-inline: 10px; }
.rules-dialog [hidden] { display: none !important; }
.rules-dialog label { margin: 8px 0; }
.rule-condition, .rule-action { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; align-items: start; }
.rule-condition label:has(textarea), .rule-condition > button, .rule-action > button { grid-column: 1 / -1; }
.rule-condition > button, .rule-action > button { justify-self: start; }
.rules-dialog footer { position: sticky; bottom: -24px; padding-block: 12px; background: var(--wm-solid-surface); border-top: 1px solid var(--wm-border); }
@media (max-width: 600px) { .rule-condition, .rule-action { grid-template-columns: 1fr; } .rules-dialog footer { bottom: -16px; } }
@media (max-width: 600px) { .topbar-actions #mailRulesSettings:not([hidden]) { display: inline-flex; font-size: 12px; padding-inline: 6px; } }

#rulesServerRows { padding-left: 24px; }
#rulesServerRows li { padding: 12px; border-bottom: 1px solid var(--wm-border); overflow-wrap: anywhere; }
#ruleScopeChoice { padding: 12px; border: 2px solid var(--wm-accent); border-radius: 8px; }
#rulesServerSection { margin-top: 24px; border-top: 1px solid var(--wm-border); }
#ruleRefusalReason, #rulesServerStatus { overflow-wrap: anywhere; }
.rule-existing-result { position: fixed; bottom: 24px; right: 24px; z-index: 3000; display: flex; gap: 12px; align-items: center; max-width: min(520px, calc(100vw - 48px)); padding: 12px 18px; border: 1px solid var(--wm-border); border-radius: 10px; background: var(--wm-solid-surface); color: var(--wm-text); box-shadow: 0 4px 18px #0003; }
.rule-existing-result[hidden] { display: none; }
.rule-existing-result p { margin: 0; }
