/* Compact desktop remains compact; only the new filter panel takes extra space. */
.advanced-search { flex: 1 0 100%; min-width: 0; }
.advanced-search[hidden]{display:none}
.mail-search > .search-advanced-toggle{white-space:nowrap;flex:0 0 auto;padding:0 6px}
.mail-search > input[type=search]{flex:1 1 110px;min-width:65px}
.search-fields { display: grid; grid-template-columns: repeat(auto-fit,minmax(145px,1fr)); gap: 8px; padding: 8px 0; }
.mail-search .search-fields > label, .mail-search .saved-search-tools > label { display: flex; flex-direction: column; align-items: stretch; white-space: normal; gap: 4px; min-width: 0; }
.mail-search .search-fields input:not([type=checkbox]), .mail-search .advanced-search select { width: 100%; min-width: 0; }
.search-switches { display: flex; flex-wrap: wrap; gap: 8px; }
.search-buttons, .saved-search-tools { display: flex; flex-wrap: wrap; align-items: end; gap: 6px; }
.saved-search-tools { border-top: 1px solid var(--border); padding-top: 8px; margin-top: 8px; }
.saved-search-tools > label { flex: 1 1 150px; }
.search-save-status { margin: 6px 0; }
.search-errors { color: #a32925; }
.search-errors:empty, .search-save-status:empty { display: none; }
.mail-search:has(.advanced-search:not([hidden])) { max-height: 55dvh; overflow: auto; flex-shrink: 0; }
.mail-search .secondary-button, .bulk-toolbar button, .message-toolbar button { background: #f4f8f5; color: var(--green-800); border: 1px solid #c3d3c8; }
.message-toolbar .danger-button, .bulk-toolbar .bulk-delete { color: #fff; background: #a52d2d; border-color: #a52d2d; }
.message-toolbar .danger-button:hover, .bulk-toolbar .bulk-delete:hover { color: #fff; background: #852222; }
.reply-toolbar a:first-child { background: var(--green-700); color: white; border-color: var(--green-700); }
.action-icon { width: 1em; height: 1em; vertical-align: -.12em; margin-right: .3em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.mail-preview[aria-busy="true"] { position: relative; }
.mail-preview[aria-busy="true"]::after { content: 'Cargando mensaje…'; position: absolute; inset: 0; display: grid; place-content: center; background: #ffffffed; color: var(--green-800); }
#connection-status { position: fixed; top: 8px; left: 50%; transform: translateX(-50%); z-index: 110; max-width: calc(100vw - 24px); padding: 8px 12px; background: #fff7df; color: #654400; border: 1px solid #c69425; border-radius: 6px; box-shadow: 0 2px 10px #0002; }
#connection-status[hidden] { display: none; }
.calendar-alerts[data-minimized="1"] { width: auto; max-width: calc(100vw - 32px); padding: 6px; }
.calendar-alerts[data-minimized="1"] > button { display: block; width: 100%; }
@media (max-width:680px), (max-width:1024px) and (pointer:coarse) {
    body[data-mobile-font="large"] { --mobile-font-scale: 1.12; }
    body[data-mobile-font="extra"] { --mobile-font-scale: 1.25; }
    .advanced-search { font-size: calc(17px * var(--mobile-font-scale,1)); }
    .search-fields { grid-template-columns: minmax(0,1fr); }
    .saved-search-tools > label { flex-basis: 100%; }
    .search-buttons small { font-size: calc(15px * var(--mobile-font-scale,1)); }
    .mail-search:has(.advanced-search:not([hidden])) { max-height: 60dvh; }
    body .calendar-alerts { font-size: calc(17px * var(--mobile-font-scale,1)); bottom: calc(var(--mobile-bottom,86px) + 12px); }
    body .calendar-alerts button, #connection-status { font-size: calc(16px * var(--mobile-font-scale,1)); }
    .mobile-account > div { max-width: calc(100vw - 24px); overflow-wrap: anywhere; }
}
.mail-subject-line {display:flex;align-items:center;gap:6px;min-width:0}
.mail-subject-line > .mail-subject {min-width:0;flex:1}
.mail-summary .mail-attachment-count {display:inline-flex;align-items:center;gap:2px;flex:none;color:var(--muted);overflow:visible}
.mail-attachment-count svg {width:1.2em;height:1.2em;flex:none}
.mail-attachment-count b {font-weight:400}
.mail-layout.folder-loading .mail-list,
.mail-layout.folder-loading .mail-preview { opacity: .45; }
