
/* v17: exact recurrence hover states, fit-to-screen Filter modal, stable Archive cards. */
#filterModal{overflow:hidden!important;padding:12px!important}
#filterModal .modal-card{width:min(940px,calc(100vw - 24px))!important;max-height:none!important;overflow:visible!important;transform-origin:center center!important;will-change:transform}
#filterModal .filter-advanced-body{max-height:none!important;overflow:visible!important;padding-right:0!important;display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(220px,.72fr)!important;gap:8px!important;align-items:start}
#filterModal .filter-block{padding:8px!important;gap:7px!important}
#filterModal .modal-field{gap:4px!important}
#filterModal .modal-label{font-size:10px!important}
#filterModal .modal-input{min-height:31px!important;padding:6px 8px!important}
#filterModal .filter-priority-choice{min-height:34px!important}
#filterModal .filter-kind-choice{min-height:36px!important}
#filterModal .modal-head{margin-bottom:8px!important}
#filterModal .modal-hint{margin:7px 1px!important;font-size:10px!important}
#filterModal .modal-actions{margin-top:8px!important}
@media(max-width:760px){#filterModal .filter-advanced-body{grid-template-columns:1fr!important}#filterModal .filter-two-col{grid-template-columns:1fr 1fr!important}}
.archive-list{align-content:start!important;grid-auto-rows:max-content!important}
.archive-card{align-self:start!important;min-height:74px!important;height:auto!important}
.archive-card-head{min-height:54px!important}

/* Exactly one recurrence glyph is visible at a time. */
.refresh-action .refresh-normal-icon,.refresh-action .refresh-catchup-icon,.refresh-action .refresh-anchor-icon,.refresh-action .refresh-edit-icon,.refresh-action .refresh-archive-icon{display:none!important}
body:not(.ctrl-held):not(.alt-held):not(.shift-held) .refresh-action .refresh-normal-icon{display:inline-flex!important}
.refresh-action{color:#1b9c55!important;border-color:rgba(27,156,85,.78)!important;background:rgba(27,156,85,.16)!important}

body.ctrl-held:not(.shift-held):not(.alt-held) .refresh-action{color:#39d978!important;border-color:rgba(57,217,120,.88)!important;background:rgba(57,217,120,.20)!important}
body.ctrl-held:not(.shift-held):not(.alt-held) .refresh-action .refresh-catchup-icon{display:inline-flex!important;color:#39d978!important}

body.ctrl-held.shift-held:not(.alt-held) .refresh-action{color:#49cbd7!important;border-color:rgba(73,203,215,.88)!important;background:rgba(73,203,215,.20)!important}
body.ctrl-held.shift-held:not(.alt-held) .refresh-action .refresh-anchor-cyan{display:inline-flex!important;color:#49cbd7!important}

body.ctrl-held.alt-held:not(.shift-held) .refresh-action:not(.unanchored-current){color:#d84a4a!important;border-color:rgba(216,74,74,.90)!important;background:rgba(216,74,74,.20)!important}
body.ctrl-held.alt-held:not(.shift-held) .refresh-action:not(.unanchored-current) .refresh-anchor-red{display:inline-flex!important;color:#d84a4a!important}
body.ctrl-held.alt-held:not(.shift-held) .refresh-action.unanchored-current{color:#28b866!important;border-color:rgba(40,184,102,.90)!important;background:rgba(40,184,102,.20)!important}
body.ctrl-held.alt-held:not(.shift-held) .refresh-action.unanchored-current .refresh-anchor-green{display:inline-flex!important;color:#28b866!important}

body.alt-held:not(.ctrl-held):not(.shift-held) .refresh-action{color:#d0a821!important;border-color:rgba(208,168,33,.88)!important;background:rgba(208,168,33,.20)!important}
body.alt-held:not(.ctrl-held):not(.shift-held) .refresh-action .refresh-edit-icon{display:inline-flex!important;color:#d0a821!important}

body.shift-held:not(.ctrl-held):not(.alt-held) .refresh-action,body.ctrl-held.alt-held.shift-held .refresh-action{color:#a87449!important;border-color:rgba(168,116,73,.90)!important;background:rgba(168,116,73,.21)!important}
body.shift-held:not(.ctrl-held):not(.alt-held) .refresh-action .refresh-archive-icon,body.ctrl-held.alt-held.shift-held .refresh-action .refresh-archive-icon{display:inline-flex!important;color:#a87449!important}

/* Unassigned Alt+Shift stays ordinary complete-once instead of showing mixed icons. */
body.alt-held.shift-held:not(.ctrl-held) .refresh-action .refresh-normal-icon{display:inline-flex!important}
