/* One control system for page, card, and breakdown filters. */
.segmented{display:inline-flex;align-items:center;flex:none;gap:1px;border:1px solid var(--border);border-radius:6px;padding:2px;background:var(--canvas)}.segmented button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:4px 9px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-muted,#687079);font-size:.875rem;white-space:nowrap}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--accent-text,#008563);border:1px solid var(--accent-border,#c7d9cf);font-weight:500}.segmented button:hover:not([aria-pressed=true]){color:var(--accent-text,#008563);background:var(--accent-soft,#edf8f2)}.segmented button .icon{width:15px;height:15px}.filter-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-secondary,#50565f);font-size:.875rem;white-space:nowrap}.filter-trigger:hover{background:var(--surface-subtle,#f5faf7);border-color:var(--accent-border,#b2c6b8)}.filter-trigger[aria-expanded=true]{background:var(--accent-soft);border-color:var(--accent-border,#83bfa8);color:var(--accent-text,#006b4f)}.filter-trigger.active{border-color:var(--accent-border,#bbdfce);background:var(--accent-soft,#f4fbf7);color:var(--accent-text,#006b4f)}.filter-trigger .trigger-text{display:inline-flex;align-items:center;gap:7px;min-width:0;overflow:hidden;text-overflow:ellipsis}.filter-trigger .chevron{width:12px;height:12px;color:var(--text-muted,#80868f)}.filter-trigger .trigger-text>.icon{width:16px;height:16px;color:var(--text-muted,#727b88)}.filter-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:4px;background:var(--accent-soft,#e6f5ed);color:var(--accent-text,#008563);font-size:.75rem;font-weight:600}.filter-separator{height:20px;width:1px;background:var(--border);margin:0 2px;flex:none}.filter-reset,.link-button{border:0;border-radius:5px;background:transparent;color:var(--accent-text,#008563);padding:6px;font-size:.875rem;white-space:nowrap}.filter-reset:hover,.link-button:hover{background:var(--accent-soft,#edf8f2)}.reset-all{min-height:34px;padding:6px 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted,#687079);font-size:.875rem;white-space:nowrap}.reset-all:hover:not(:disabled){background:var(--accent-soft,#edf8f2);color:var(--accent-text,#008563)}.reset-all:disabled{display:none}.days-badge{display:none}#filter-sticky-marker{height:1px;margin-top:-1px;pointer-events:none}#global-filterbar{display:flex;align-items:center;position:sticky;top:0;z-index:100;isolation:isolate;min-height:62px;margin:0 0 17px;padding:12px 0;background:var(--canvas);border:0;border-bottom:1px solid var(--border)}#global-filterbar.is-stuck{background:var(--surface);margin-inline:-12px;padding-inline:12px;border-radius:0;border:1px solid var(--border);border-top:0}#main-filter-controls{flex:1;min-width:0}.filter-primary{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar,#cbd2da) transparent;padding:4px 1px;overscroll-behavior-x:contain}.filter-primary>.filter-trigger{flex:none}.bar-right{display:flex;align-items:center;gap:7px;margin-left:auto;flex:none;flex-wrap:nowrap}.advanced-trigger{border-color:var(--border);background:var(--surface)}.filter-primary .filter-reset{font-size:.8125rem}.entity-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 16px 15px;padding:12px;border:1px solid var(--border-soft,#e8eaed);border-radius:8px;background:var(--canvas)}.entity-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-basis:100%;font-size:.75rem;color:var(--text-muted,#737c88);margin-bottom:3px}.entity-filter-heading .link-button{font-size:.8125rem;padding:2px}.entity-filters .filter-trigger{flex:1;min-height:34px;font-size:.875rem;padding:6px 8px}.entity-filters .date-trigger{flex-basis:100%;justify-content:space-between}.entity-view-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-basis:100%;padding-top:9px;margin-top:2px;border-top:1px solid var(--border-soft,#e3e8ef)}.view-label{color:var(--text-muted,#747c86);font-size:.75rem}.period-view button{font-size:.8125rem}.gross-net button{font-size:.8125rem}.main-panel{scroll-margin-top:calc(var(--sticky-filter-height,60px) + 16px)}
/* Shared menus: quiet rows, clear selection marks, a consistent footer. */
.filter-popover{position:fixed;z-index:1000;display:flex;flex-direction:column;width:308px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border:1px solid var(--border-strong,#bdc1c6);border-radius:12px;background:var(--surface);color:var(--text,#3c4043);overflow:hidden}
.filter-backdrop{position:fixed;inset:0;z-index:990;background:var(--backdrop,#17241c40)}
.filter-sheet-open{overflow:hidden}
.popover-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:50px;padding:10px 16px;border-bottom:1px solid var(--border-soft,#e8eaed);font-size:.875rem;font-weight:600;letter-spacing:-.1px}
.popover-close{display:grid;place-items:center;width:30px;height:30px;flex:none;padding:6px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-muted,#839086)}
.popover-close:hover{background:var(--surface-muted,#f2f6f3);color:var(--text-secondary,#445c4c);border-color:var(--border-soft,#e5ece7)}
.popover-close .icon{width:15px;height:15px}
.search-field{position:relative;flex:none;margin:12px 14px 8px}
.search-field>.icon{position:absolute;top:12px;left:10px;width:15px;height:15px;color:var(--text-muted,#8b978e)}
.search-field input{appearance:none;display:block;width:100%;min-height:38px;padding:8px 10px 8px 33px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text,#202124);font-size:.875rem;outline-offset:1px}
.search-field input:focus{border-color:var(--accent-border,#72ad8f);outline:1px solid var(--accent-border,#72ad8f);background:var(--surface)}
.search-field input::placeholder{color:var(--text-muted,#929d95)}
.popover-links{display:flex;align-items:center;gap:9px;flex:none;padding:0 13px 8px;color:var(--text-muted,#c1cbc4);font-size:.75rem}
.popover-links button{min-height:24px;padding:2px 0;border:0;background:transparent;color:var(--accent-text,#008563);font-size:.75rem}
.popover-links button:last-child{color:var(--text-muted,#77847b)}
.filter-options{min-height:0;max-height:288px;overflow-y:auto;overscroll-behavior:contain;padding:2px 6px 6px;margin:0 6px;scrollbar-width:thin;scrollbar-color:var(--scrollbar,#c8d5cc) transparent}
.filter-option{display:flex;align-items:center;gap:9px;width:100%;min-height:44px;margin:2px 0;padding:8px 10px;border:1px solid transparent;border-radius:5px;background:var(--surface);color:var(--text,#3c4043);font-size:.875rem;text-align:left}
.filter-option:hover{background:var(--surface-muted,#f5f8f6);border-color:var(--border-soft,#eaf0ec)}
.filter-option[aria-checked=true]{background:var(--accent-soft,#edf7f2);color:var(--accent-text,#176348)}
.filter-option[aria-checked=true]:hover{background:var(--accent-soft,#eef7f1)}
.option-copy{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}
.option-name{font-weight:400;overflow-wrap:anywhere;line-height:1.4}
.option-meta{color:var(--text-muted,#70757a);font-size:.75rem;font-weight:400;line-height:1.4;overflow-wrap:anywhere}
.option-dot{flex:none;width:7px;height:7px;border-radius:50%}
.option-flag.fi{display:block;width:23px;height:17px;line-height:17px;flex:none;border:1px solid var(--border-soft,#e0e7e2);border-radius:2px;background-size:contain;background-repeat:no-repeat;background-position:center}
.currency-code{display:grid;place-items:center;min-width:37px;height:27px;font-size:.75rem;font-weight:500;border:1px solid var(--border-soft,#e2e9e4);border-radius:5px;background:var(--surface);color:var(--text-muted,#6c7d70)}
.custom-checkbox{display:grid;place-items:center;flex:none;width:16px;height:16px;border:1.4px solid var(--accent-border,#b8c6bc);border-radius:4px;background:var(--surface);color:transparent}
.custom-checkbox .icon{width:11px;height:11px;stroke-width:2.4}
[aria-checked=true] .custom-checkbox{background:var(--accent);border-color:var(--accent);color:var(--on-accent,#fff)}
.custom-radio{display:grid;place-items:center;flex:none;width:16px;height:16px;border:1.4px solid var(--accent-border,#b8c6bc);border-radius:50%;background:var(--surface)}
[aria-checked=true] .custom-radio{border-color:var(--accent)}
[aria-checked=true] .custom-radio:after{content:'';width:8px;height:8px;border-radius:50%;background:var(--accent)}
.popover-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:55px;padding:10px 12px;margin-top:4px;border-top:1px solid var(--border-soft,#e8eaed);background:var(--canvas)}
.selection-count{font-size:.75rem;color:var(--text-muted,#70757a)}
.popover-actions{display:flex;align-items:center;gap:7px;margin-left:auto}
.btn-cancel,.btn-apply{min-height:36px;padding:7px 16px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text-secondary,#5f6368);font-size:.875rem;font-weight:500;line-height:1.4}
.btn-cancel:hover{border-color:var(--border-soft,#e0e8e2);background:var(--surface-muted,#f0f5f2)}
.btn-apply{border-color:var(--accent);background:var(--accent);color:var(--on-accent,#fff)}
.btn-apply:hover{background:var(--accent-hover,#007454);border-color:var(--accent-border,#007454)}
.toggle-row,.revenue-visibility{display:flex;align-items:center;gap:10px;width:100%;padding:9px 13px;border:0;background:transparent;color:var(--text-secondary,#5c6d61);font-size:.875rem;text-align:left}
.custom-switch{display:inline-flex;flex:none;width:31px;height:18px;padding:2px;border:1px solid transparent;border-radius:20px;background:var(--switch-track,#bdc9c1);transition:background .15s}
.custom-switch:after{content:'';display:block;width:12px;height:12px;border-radius:50%;background:var(--switch-thumb,#fff);transition:transform .15s}
.toggle-row[aria-checked=true] .custom-switch,.revenue-visibility[aria-checked=true] .custom-switch{background:var(--accent)}
.toggle-row[aria-checked=true] .custom-switch:after,.revenue-visibility[aria-checked=true] .custom-switch:after{transform:translateX(13px)}
.popup-description{padding:10px 13px 3px;color:var(--text-muted,#70757a);font-size:.75rem;line-height:1.5}
.empty-options{padding:26px 12px;text-align:center;color:var(--text-muted,#70757a);font-size:.875rem}
.sort-order-control{padding:10px 12px 4px;margin-top:4px;border-top:1px solid var(--border-soft,#e8eaed)}
.sort-order-control .segmented{display:flex}
.sort-order-control .segmented button{flex:1}
.sort-options{padding-top:7px;max-height:none}
.sort-order-label{font-size:.75rem;color:var(--text-muted,#70757a);margin-bottom:7px}
.sort-option-note{display:block;font-size:.75rem;font-weight:400;color:var(--text-muted,#70757a);margin-top:2px}
.single-select-popover{width:190px}
.single-select-options{padding:5px 0;margin:0 6px}
.single-select-options .filter-option{justify-content:space-between;min-height:36px}
.selection-check{display:grid;place-items:center;width:20px;height:20px;color:transparent}
.selection-check .icon{width:15px;height:15px}
[aria-checked=true] .selection-check{color:var(--accent)}
/* Advanced options follow an aligned two-column rhythm. */
.advanced-popover{width:350px}
.advanced-settings{min-height:0;overflow-y:auto;padding:0 14px;overscroll-behavior:contain;scrollbar-width:thin}
.advanced-section{padding:14px 0;border-bottom:1px solid var(--border-soft,#e8eaed)}
.advanced-section:last-child{border-bottom:0}
.advanced-section-label{font-size:.75rem;font-weight:500;color:var(--text-secondary,#5f6368);margin-bottom:10px}
.advanced-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;font-size:.875rem}
.advanced-setting:last-child{margin-bottom:0}
.advanced-setting>span,.advanced-field{color:var(--text-secondary,#596c60)}
.advanced-setting .segmented button{font-size:.8125rem;padding:4px 8px}
.advanced-setting.stack{display:block}
.advanced-setting.stack>span{display:block;margin-bottom:9px}
.advanced-section .toggle-row{padding:0;min-height:32px}
.toggle-copy{display:flex;flex:1;flex-direction:column;gap:3px}
.toggle-copy small{font-size:.75rem;font-weight:400;color:var(--text-muted,#70757a)}
.advanced-currencies{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.advanced-currencies button{display:flex;align-items:center;justify-content:center;min-height:33px;padding:7px 5px;border:1px solid var(--border-soft,#e0e8e2);border-radius:5px;background:var(--surface);color:var(--text-secondary,#5f6368);font-size:.8125rem}
.advanced-currencies button:hover{border-color:var(--accent-border,#a9c9b7)}
.advanced-currencies button[aria-checked=true]{background:var(--accent-soft,#eff8f3);border-color:var(--accent-border,#a5d0b9);color:var(--accent-text,#007553);font-weight:500}
.advanced-field{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px;font-size:.875rem}
.advanced-field input{appearance:textfield;width:92px;min-height:34px;padding:6px 9px;border:1px solid var(--accent-border,#dce5df);border-radius:5px;background:var(--surface);color:var(--text-secondary,#445d4d);font-size:.875rem}
.advanced-field input::-webkit-inner-spin-button{appearance:none}
.calendar-error{padding:0 14px;margin-top:8px;color:var(--danger-text,#b14940);font-size:.75rem;line-height:1.5}
.calendar-error:empty{display:none}
/* Date picker: 42 fixed day cells per month, independent of column width. */
.calendar-popover{width:760px}
.calendar-layout{display:grid;grid-template-columns:176px minmax(0,1fr);min-height:0;overflow:auto}
.calendar-presets{padding:10px 7px;border-right:1px solid var(--border-soft,#e8eaed);background:var(--canvas)}
.calendar-presets button{display:block;width:100%;min-height:31px;padding:6px 9px;margin-bottom:2px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-secondary,#5f6368);text-align:left;font-size:.8125rem;line-height:1.4}
.calendar-presets button:hover{background:var(--accent-soft,#f0f6f2);color:var(--accent-text,#376149)}
.calendar-presets button.selected{background:var(--accent-soft,#eaf6ef);border-color:var(--accent-border,#d8ebdf);color:var(--accent-text,#007652);font-weight:500}
.calendar-main{min-width:0;padding:10px 14px 12px}
.calendar-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;min-height:28px}
.calendar-navigation span{font-size:.75rem;color:var(--text-muted,#70757a)}
.calendar-navigation button{display:grid;place-items:center;width:28px;height:28px;padding:5px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-muted,#7a8e80)}
.calendar-navigation button:hover:not(:disabled){background:var(--accent-soft,#f0f6f2);border-color:var(--accent-border,#e2ece5)}
.calendar-navigation .icon{width:16px;height:16px}
.calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.month{min-width:0}
.month-title{margin:5px 0 13px;text-align:center;color:var(--text,#3c4043);font-size:.875rem;font-weight:500;line-height:20px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:24px repeat(6,32px);gap:0;align-content:start}
.calendar-grid .weekday{display:grid;place-items:center;padding:0;color:var(--text-muted,#70757a);text-align:center;font-size:.75rem}
.calendar-grid .weekday.weekend{color:var(--text-muted,#808e83)}
.calendar-day,.calendar-blank{position:relative;display:grid;place-items:center;min-width:0;height:32px;padding:0;border:0;border-radius:0;background:transparent;color:var(--text,#3c4043);font-size:.8125rem;line-height:1}
.calendar-day>span{position:relative;display:grid;place-items:center;width:28px;height:28px;border:1px solid transparent;border-radius:50%;z-index:1}
.calendar-day.weekend{color:var(--text-muted,#70757a)}
.calendar-day.in-range{background:var(--accent-soft,#ebf6ef);color:var(--accent-text,#007553)}
.calendar-day.range-start{border-radius:50% 0 0 50%}
.calendar-day.range-end{border-radius:0 50% 50% 0}
.calendar-day.range-single{border-radius:50%;background:transparent}
.calendar-day.endpoint>span{background:var(--accent);border-color:var(--accent);color:var(--on-accent,#fff);font-weight:600}
.calendar-day:not(:disabled):not(.endpoint):hover>span{background:var(--accent-soft,#ddf0e5);border-color:var(--accent-border,#bbddc9);color:var(--accent-text,#007451)}
.calendar-day[aria-current=date]:not(.endpoint)>span{border-color:var(--accent-border,#a8ccba)}
.calendar-day:focus-visible{outline:0}
.calendar-day:focus-visible>span{outline:2px solid var(--accent);outline-offset:1px}
.calendar-day:disabled{color:var(--disabled-text,#cbd4cd);opacity:.8}
.calendar-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex:none;flex-wrap:wrap;padding:12px 14px;border-top:1px solid var(--border-soft,#e8eaed);background:var(--canvas)}
.date-fields{display:flex;align-items:flex-end;gap:9px;min-width:0}
.date-fields label{display:flex;flex-direction:column;gap:5px;min-width:0;color:var(--text-secondary,#5f6368);font-size:.75rem}
.date-fields input{appearance:none;width:127px;min-width:0;min-height:34px;padding:7px 9px;border:1px solid var(--accent-border,#dce5df);border-radius:5px;background:var(--surface);color:var(--text,#3c4043);font-size:.8125rem}
.date-fields input:focus{border-color:var(--accent-border,#79af90);outline:1px solid var(--accent-border,#79af90);outline-offset:0}
.date-field-separator{padding-bottom:8px;color:var(--text-muted,#98a89d)}
.calendar-footer .calendar-error{flex-basis:100%;margin:0;padding:0}
.calendar-footer .popover-actions{gap:6px;padding-bottom:0}
.week-comparison-toggle{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-secondary);font-size:.8125rem;white-space:nowrap;text-align:left}
.week-comparison-toggle:hover:not(:disabled){border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent-text)}
.week-comparison-toggle[aria-checked=true]{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent-text)}
.week-comparison-toggle[aria-checked=true] .custom-switch{background:var(--accent)}
.week-comparison-toggle[aria-checked=true] .custom-switch:after{transform:translateX(13px)}
.week-comparison-toggle:disabled{opacity:.6;cursor:default}
.week-comparison-toggle small{display:block;font-size:.6875rem;line-height:1.2;color:var(--text-muted)}
.entity-comparison-row{flex-basis:100%;display:flex;margin-top:2px}
.entity-comparison-row:empty{display:none}
.entity-comparison-row .week-comparison-toggle{justify-content:space-between;flex-direction:row-reverse;flex:1;min-width:0}
#entity-dialog .entity-comparison-row{flex-basis:auto;margin:0}
@media(max-width:760px){.week-comparison-toggle{min-height:38px}#entity-dialog .entity-comparison-row{flex-basis:100%}}
#entity-dialog .entity-filters{margin:0 28px 20px;padding:12px;flex:none}
#entity-dialog .entity-filter-heading{display:contents}
#entity-dialog .entity-filter-heading>span{display:none}
#entity-dialog .entity-filter-heading .link-button{order:10;padding:6px}
#entity-dialog .entity-filters .filter-trigger{flex:1;min-height:38px}
#entity-dialog .entity-filters .date-trigger{flex-basis:auto;min-width:175px}
#entity-dialog .entity-view-row{flex-basis:auto;margin:0;padding:0;border:0;gap:10px}
@media(max-width:1000px){#entity-dialog .entity-view-row{flex-basis:100%;border-top:1px solid var(--border-soft,#e3e8ef);padding-top:10px;margin-top:4px}}
@media(max-width:760px){#global-filterbar{min-height:62px;padding:10px 0;margin-bottom:14px}#global-filterbar.is-stuck{margin-inline:-12px;padding-inline:12px;border-radius:0}.filter-primary{gap:7px}.filter-primary .bar-right{margin-left:0}.filter-primary .filter-trigger{min-height:38px}.filter-separator{display:none}.filter-primary .filter-reset{min-height:38px}.entity-filters{margin:0 12px 12px;padding:10px}.entity-filters .filter-trigger{min-height:38px}.entity-filters .entity-view-row button{min-height:32px}.entity-section-actions .filter-trigger{min-height:36px}.reset-all{font-size:.8125rem}#entity-dialog .entity-filters{margin:0 12px 16px}#entity-dialog .entity-filter-heading{display:flex;flex-basis:100%}#entity-dialog .entity-filter-heading>span:first-child{display:inline}#entity-dialog .entity-filters .date-trigger{flex-basis:100%}}
@media(max-width:600px){
 .filter-popover,.calendar-popover,.advanced-popover,.single-select-popover{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);border-radius:13px;border-color:var(--accent-border,#bdcfc3)}
 .popover-header{min-height:50px;padding:9px 14px;font-size:.9375rem}.popover-close{width:34px;height:34px}.popover-close .icon{width:17px;height:17px}
 .search-field{margin:10px 14px 7px}.search-field input{min-height:42px;font-size:1rem;padding-block:9px}.search-field>.icon{top:13px}
 .filter-options{max-height:40dvh;margin:0 7px;padding:2px 5px 5px}.filter-option{min-height:47px;padding:9px;font-size:.875rem}.popover-links{padding-inline:14px}.popover-links button{min-height:30px;font-size:.875rem}
 .popover-footer{min-height:64px;padding:10px 14px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.btn-cancel,.btn-apply{min-height:40px;padding:9px 16px}
 .single-select-options{padding:4px}.single-select-options .filter-option{min-height:44px}.sort-options{max-height:40dvh}.sort-order-control .segmented button{min-height:36px}
 .advanced-settings{padding-inline:14px}.advanced-setting .segmented button{min-height:34px}.advanced-currencies button{min-height:38px;font-size:.875rem}.advanced-field input{min-height:40px;font-size:1rem}.advanced-section .toggle-row{min-height:40px}
 .calendar-layout{grid-template-columns:1fr}.calendar-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px;border-right:0;border-bottom:1px solid var(--border-soft,#e8eaed)}.calendar-presets button{text-align:center;min-height:33px;padding:6px 4px;margin:0;font-size:.75rem;white-space:normal}.calendar-presets button:last-child{grid-column:span 2}
 .calendar-main{padding:8px 14px 10px}.calendar-months{grid-template-columns:1fr}.calendar-navigation{margin-bottom:4px}.calendar-navigation button{width:31px;height:31px}.month-title{margin:2px 0 10px}.calendar-grid{grid-template-rows:24px repeat(6,34px)}.calendar-day,.calendar-blank{height:34px;font-size:.875rem}.calendar-day>span{width:30px;height:30px}
 .calendar-footer{gap:10px;padding:10px 14px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.date-fields{width:100%;gap:8px}.date-fields label{flex:1}.date-fields input{width:100%;min-height:40px;font-size:1rem}.calendar-footer .popover-actions{width:100%;justify-content:flex-end}.calendar-footer .btn-cancel,.calendar-footer .btn-apply{min-width:80px}
 .filter-popover .segmented button{font-size:.875rem}.toggle-row{min-height:40px}
}

.date-fields input[aria-invalid=true]{border-color:var(--danger-text,#b3261e)}
.filter-options:focus-visible{outline-offset:-2px}
@media(max-width:600px){.filter-trigger,.reset-all{min-height:40px}.filter-popover{border-radius:16px}.popover-header{min-height:54px}.popover-close{width:36px;height:36px}.filter-popover .segmented button{min-width:0}.advanced-setting .segmented{max-width:100%}.calendar-footer{background:var(--surface)}.calendar-presets button{min-height:36px}.calendar-navigation button{width:36px;height:36px}}

/* Currency controls use the same icon treatment as other filter choices. */
.currency-setting-label{display:inline-flex;align-items:center;gap:8px}.currency-setting-label>.icon{width:17px;height:17px;color:var(--text-muted,#6f7e75)}
.advanced-currencies button{display:flex;align-items:center;justify-content:center;gap:6px}
.currency-symbol{display:inline-grid;place-items:center;min-width:18px;height:20px;font-size:.8125rem;font-weight:500;color:var(--text-muted,#6d7f73)}
.filter-option>.currency-symbol{width:28px;height:28px;border:1px solid var(--border-soft,#dfe7e2);border-radius:6px;background:var(--surface-subtle,#f6f9f7)}
.advanced-currencies [aria-checked=true] .currency-symbol{color:var(--accent)}
@media(min-width:601px){.calendar-presets{padding:10px}.calendar-presets button{padding-inline:11px;white-space:nowrap}}

/* Tablet: wrap the filter bar instead of clipping it. Phone: keep one scroll row but fade the trailing edge. */
@media(max-width:1100px) and (min-width:761px){.filter-primary{flex-wrap:wrap;overflow:visible;row-gap:8px}.filter-primary .bar-right{margin-left:auto}}
@media(max-width:760px){.filter-primary{padding-right:28px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 32px),transparent)}.filter-primary.is-scroll-end{padding-right:1px;-webkit-mask-image:none;mask-image:none}}

/* Tag groups inside the tags filter */
.filter-group{border-top:1px solid var(--border-soft,#eef0ee)}.filter-group:first-child{border-top:0}
.filter-group-head .option-name{font-weight:500}.filter-group-head .option-count{margin-left:auto;flex:none;font-variant-numeric:tabular-nums}
.filter-option.option-child{padding-left:38px}
[aria-checked=mixed] .custom-checkbox{background:var(--accent);border-color:var(--accent);color:var(--on-accent,#fff)}[aria-checked=mixed] .custom-checkbox svg{display:none}[aria-checked=mixed] .custom-checkbox::after{content:'';width:8px;height:2px;background:currentColor;border-radius:1px}
.hidden-options{padding:8px 12px 10px;color:var(--muted);font-size:.6875rem;line-height:1.4;border-top:1px solid var(--border-soft,#eef0ee)}
