.monitoring-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin:0 0 18px}
.monitoring-navigation{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}
.monitoring-header .monitoring-tabs{margin:0;flex-wrap:nowrap;gap:3px;padding:4px;max-width:100%;overflow-x:auto}
.monitoring-header .monitoring-tabs a{padding:9px 13px;font-size:14px;white-space:nowrap}
.monitoring-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;margin-left:auto;max-width:100%}
.monitoring-actions .button{min-height:40px;padding:9px 12px;font-size:14px;white-space:nowrap}
.monitoring-actions .refresh-control{max-width:360px}
.monitoring-header .mobile-title-menu{flex:none;margin:0}
.monitoring-title{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tab-label-compact{display:none}
/* The monitoring toolbar stays on one row; long choices open outside it. */
.monitoring-controls{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;padding:8px;margin:0 0 16px;min-width:0;overflow-x:auto}
.monitoring-options,.monitoring-filter-row{display:contents}
.monitoring-controls select,.monitoring-controls .monitoring-date,.monitoring-controls summary,.monitor-scope-button,.monitor-scope-mobile{box-sizing:border-box;min-height:36px;height:36px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.2;color:var(--ink);border:1px solid var(--line);border-radius:7px;background:var(--surface-subtle);max-width:100%}
.monitoring-controls select{width:125px;min-width:105px;flex:0 1 145px;padding:0 24px 0 8px;font-size:13px}
.monitoring-controls select[aria-label="Показатель графиков"]{min-width:140px}
.monitoring-controls .monitoring-date{width:135px;min-width:120px;flex:0 0 135px;padding:6px 7px;color-scheme:dark;font-size:13px}
.monitoring-controls .monitoring-period-label{font-size:12px;color:var(--muted);white-space:nowrap}
.monitor-scope{display:flex;align-items:center;flex:1;gap:6px;min-width:440px}
.monitor-scope-button{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;flex:1;width:0;padding:0 8px;text-align:left;font-size:13px;cursor:pointer}
.monitor-scope-button>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.monitor-scope-button>span:last-child{color:var(--muted)}
.monitor-scope .is-filtered{background:var(--primary-soft,#373045);border-color:var(--primary);color:var(--primary)}
.monitor-scope-mobile{display:none}
.monitor-scope-reset{width:28px;height:36px;flex:none;color:var(--primary);border:0;background:transparent;font-size:22px;cursor:pointer}
.monitor-scope-reset:disabled{opacity:.3;cursor:default}
.monitoring-controls :is(select,input,summary,button):focus-visible{outline:2px solid var(--primary);outline-offset:-3px}
.monitor-filter-dialog{max-width:min(420px,calc(100vw - 24px));width:420px}
.monitor-filter-dialog .modal-header{padding:16px 18px 10px}
.monitor-filter-dialog .modal-body{padding:0 18px 16px}
.monitor-filter-dialog .modal-header h2{font-size:19px}
.monitor-filter-editor>input[type=search]{width:100%;height:40px;margin:0 0 8px;font-size:15px}
.monitor-filter-list{max-height:46vh;overflow-y:auto;overscroll-behavior:contain;padding:2px 0}
.monitor-filter-list label,.monitor-filter-all{display:flex;align-items:center;gap:10px;min-height:38px;padding:6px 8px;margin:0;font-size:14px;cursor:pointer;border-radius:6px;color:var(--ink);font-weight:400}
.monitor-filter-list label:hover{background:var(--surface-subtle)}
.monitor-filter-list label[hidden]{display:none}
.monitor-filter-list input,.monitor-filter-all input{width:17px;height:17px;margin:0;flex:none;accent-color:var(--primary)}
.monitor-filter-all{border-bottom:1px solid var(--line);border-radius:0;font-weight:600}
.monitor-filter-group{border-bottom:1px solid var(--line)}
.monitor-filter-group>summary{display:flex;justify-content:space-between;align-items:center;min-height:46px;cursor:pointer;font-size:14px}
.monitor-filter-group>summary span{font-size:12px;color:var(--muted)}
.monitor-filter-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid var(--line);margin-top:6px}
.monitor-filter-error{font-size:13px;color:var(--danger,#ffadb7);margin:8px 0}
.sidebar-backdrop,.sidebar-close{display:none}
@media(max-width:720px){
 .main{padding:0!important}.main-content{padding:12px 10px 24px!important}
 .monitoring-header{margin-bottom:12px;gap:10px}
 .monitoring-navigation{width:100%;gap:5px;align-items:stretch}
 .monitoring-header .mobile-title-menu{min-width:36px;height:auto;padding:6px}
 .monitoring-header .monitoring-tabs{display:flex;flex:1;flex-wrap:nowrap;min-width:0;padding:3px;gap:2px;overflow-x:auto;border-radius:10px;scrollbar-width:none}
 .monitoring-header .monitoring-tabs::-webkit-scrollbar{display:none}
 .monitoring-header .monitoring-tabs :is(a,button){display:flex;align-items:center;justify-content:center;flex:1 0 auto;min-height:38px;font-size:12px;padding:8px 6px;text-align:center;white-space:nowrap;border-radius:7px}
 .tab-label-full{display:none}.tab-label-compact{display:inline}
 .data-header-business .monitoring-tabs a{font-size:11px;padding-inline:4px}
 .monitoring-actions:has([data-refresh-compact]){display:grid;grid-template-columns:auto 40px 1fr;gap:5px 8px;width:100%;margin:0}
 .monitoring-actions .refresh-control[data-refresh-compact]{display:contents}
 .monitoring-actions [data-action="sync-all"]{grid-column:1;grid-row:1}
 .monitoring-actions .money-visibility-button{grid-column:2;grid-row:1}
 .monitoring-actions .refresh-mini-status{grid-column:1/-1;grid-row:2;justify-self:start}
 .monitoring-actions .button{min-height:40px;font-size:13px}
 .monitoring-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;overflow:visible;margin-bottom:12px}
 .monitoring-controls :is(select,.monitoring-date){width:100%;max-width:100%;min-width:0;height:38px;font-size:13px}
 .monitoring-controls .monitoring-period-label{display:none}
 .monitor-scope{grid-column:1/-1;min-width:0;width:100%;justify-content:space-between}
 .monitor-scope-button{display:none}
 .monitor-scope-mobile{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:0 10px;font-size:13px;cursor:pointer}
 .monitor-scope-mobile b{border-radius:5px;background:var(--primary-soft,#373045);padding:2px 6px;font-size:11px}
 .monitor-scope-reset{height:38px;width:32px}
 .monitor-filter-dialog{margin:auto 0 0;max-width:100%;width:100%;max-height:88dvh;border-radius:18px 18px 0 0}
 .monitor-filter-dialog .modal-body{padding-bottom:max(16px,env(safe-area-inset-bottom))}
 .monitor-filter-list{max-height:38dvh}
 .monitor-filter-list label,.monitor-filter-all{min-height:44px}
 .monitor-filter-footer .button{flex:1;min-height:44px}
 .sidebar{z-index:60!important;max-width:calc(100vw - 52px);overflow-y:auto}
 .sidebar-close{display:flex;position:absolute;right:8px;top:10px}
 .sidebar.open~.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:59;border:0;background:var(--theme-overlay,#080910a6);backdrop-filter:blur(2px)}
 body.menu-open{overflow:hidden}
 .table-wrap{max-width:100%;overflow-x:auto}
}
.money-visibility-button{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:40px;width:40px;height:40px;padding:8px!important}
.money-visibility-button[aria-pressed=true]{color:var(--primary,#c7aff8);background:var(--primary-soft,#373045);border-color:var(--primary,#c7aff8)}
.monitoring-actions .refresh-control[data-refresh-compact]{flex-direction:column;align-items:flex-end;gap:4px;max-width:100%}
.refresh-control .refresh-mini-status{display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px;flex:none;min-height:0;padding:0;font-size:12px!important;line-height:1.35;color:var(--muted);white-space:nowrap;text-decoration:none;font-variant-numeric:tabular-nums}
.refresh-mini-status:hover{color:var(--ink)}
.refresh-mini-status:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:4px}
.refresh-mini-result{display:inline-flex;align-items:center;gap:4px}
.refresh-mini-part{display:inline-flex;align-items:center;gap:5px}
.refresh-mini-part[hidden]{display:none}
.refresh-mini-icon{display:block;flex:none;width:14px;height:14px}
.refresh-mini-separator{opacity:.6}
.refresh-mini-status[data-state=success] .refresh-mini-result{color:var(--theme-good,#86d8b8)}
.refresh-mini-status[data-state=error] .refresh-mini-result{color:var(--theme-bad,#ffadb7)}
.refresh-mini-status[data-state=warning] .refresh-mini-result{color:var(--theme-warning,#efc780)}
.refresh-mini-status[data-state=running] .refresh-mini-result{color:var(--theme-accent,#cfb9fc)}
.refresh-mini-status[data-state=running] .refresh-mini-icon{animation:refresh-spin 1.5s linear infinite}
@media(prefers-reduced-motion:reduce){.refresh-mini-status .refresh-mini-icon{animation:none!important}}
@media(max-width:720px){.monitoring-actions .refresh-control[data-refresh-compact]{align-items:flex-start}.refresh-control .refresh-mini-status{align-items:flex-start}.monitoring-actions:has([data-refresh-compact]){align-items:flex-start;justify-content:flex-start}}

.monitoring-total{margin:0 0 22px}
.monitoring-total .cabinet-comparison-strip{max-width:1100px;margin-bottom:8px}
.monitoring-total .cabinet-comparison-strip input{width:13px;height:13px;margin:0;accent-color:var(--primary,#c7aff8);flex:none;cursor:pointer}
.monitoring-total .chart-viewport>.hourly-chart{height:230px;max-height:230px;min-height:0;min-width:0}
.monitoring-date-range{display:flex;align-items:center;gap:6px;min-width:0}
.monitoring-date-range>span{color:var(--muted)}
.monitoring-controls .monitoring-date-range .monitoring-date{width:146px}
.trend-plot-small .chart-viewport>.hourly-chart{min-width:0;min-height:0}
.connection-updates .panel-header{align-items:flex-start}
@media(max-width:720px){.monitoring-options>.monitoring-date-range{grid-column:1/-1}.monitoring-controls .monitoring-date-range .monitoring-date{flex:1;width:0}.monitoring-total .cabinet-comparison-strip{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:8px}.connection-updates .panel-header{flex-wrap:wrap;gap:12px}}



@media(max-width:720px){
 .cabinet-chart-card,.month-chart-card{padding:12px!important;min-width:0}
 .cabinet-summary{gap:8px;margin-bottom:8px}
 .cabinet-summary .cabinet-today>strong{font-size:19px;letter-spacing:-.5px;white-space:nowrap}
 .cabinet-summary .cabinet-chart-header h3{font-size:14px}
 .cabinet-label{gap:8px}.cabinet-label .mp-icon{width:28px;height:28px}
 .cabinet-comparison-strip,.monitoring-total .cabinet-comparison-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin:8px 0 0}
 .cabinet-comparison-strip>div{gap:3px;min-height:34px}
 .cabinet-comparison-strip span{font-size:11px;gap:4px}
 .cabinet-comparison-strip b{font-size:12px}
 .monitoring-total .cabinet-comparison-strip input{width:15px;height:15px}
 .cabinet-chart-section{margin-top:20px}.cabinet-chart-section h2{font-size:18px;margin-bottom:10px}
 .monitoring-total{margin-bottom:16px}
 :is(#cabinet-comparison-page,#month-comparison-page,#abc-monitor-page) .chart-viewport{overflow:visible}
 :is(#cabinet-comparison-page,#month-comparison-page,#abc-monitor-page) .chart-viewport>.hourly-chart{min-width:0;width:100%;height:auto;min-height:0;max-height:none}
 .hourly-chart text{font-size:11px!important}
 .cabinet-chart-note{font-size:11px;line-height:1.5;margin-top:4px}
 .cabinet-chart-loading{min-height:190px}
 .month-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:10px}
 .month-legend .comparison-item{padding:7px;min-width:0;font-size:12px}
 .month-local-legend{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
 .month-local-period{min-width:82px;flex:none}
 .hour-floating{font-size:12px}
}

@media(max-width:720px){.app-shell[data-page="abc"] .chart-viewport>.hourly-chart{min-width:0;min-height:0;height:auto}.monitoring-options,.monitoring-filter-row{display:contents}}

.cabinet-comparison-strip>label{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px;margin:0;cursor:pointer;font-weight:400}
@media(max-width:720px){.cabinet-comparison-strip>label{min-height:34px;gap:3px}}

@media(min-width:721px){
 .monitor-tools.monitoring-controls select,.monitor-tools.monitoring-controls .monitoring-date{height:36px;min-height:36px}
 .monitoring-controls select[aria-label="Масштаб графика"]{flex:0 0 108px;min-width:108px}
 .monitoring-controls select[aria-label="Показатель графиков"]{flex:0 0 157px;min-width:157px}
}

.monitoring-controls .monitoring-period-label{display:none}
.monitor-filter-badge{flex:none;min-width:16px;font-size:11px;line-height:18px;text-align:center;border-radius:4px;background:var(--primary-soft,#373045)}
.monitor-scope-button>span:first-child{flex:1}
@media(min-width:721px){
 .monitoring-controls select[aria-label="Показатель графиков"]{flex:0 0 124px;min-width:124px}
 .monitoring-controls select[aria-label="Режим графиков"]{flex:0 0 136px;min-width:136px}
 .monitoring-controls select[aria-label="Совмещение периодов"]{flex:0 0 142px;min-width:142px}
}

@media(max-width:720px){
 .month-local-legend{grid-auto-columns:minmax(0,1fr);overflow:visible;gap:5px}
 .month-local-period{min-width:0}
 .month-local-period span{font-size:10px;gap:3px}
 .month-local-period i{width:11px}
 .month-local-period b{font-size:clamp(10px,2.8vw,12px)}
}

@media(min-width:721px) and (max-width:1350px){
 .monitoring-controls .monitoring-date{flex:0 0 122px;width:122px;min-width:122px;font-size:12px}
 .monitoring-controls select{font-size:12px}
 .monitoring-controls select[aria-label="Масштаб графика"]{flex:0 0 94px;min-width:94px}
 .monitoring-controls select[aria-label="Показатель графиков"]{flex:0 0 105px;min-width:105px}
 .monitoring-controls select[aria-label="Режим графиков"],.monitoring-controls select[aria-label="Совмещение периодов"]{flex:0 0 124px;min-width:124px}
 .monitor-scope{min-width:400px;gap:4px}
 .monitor-scope-button{padding:0 6px;font-size:12px}
}

/* Report tabs, actions and scopes share one compact layout. */
.monitoring-tabs button{display:block;padding:9px 13px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer}
.monitoring-tabs button[aria-pressed=true]{background:var(--theme-surface-raised,#443950);color:var(--theme-ink,#f5efff)}
.monitoring-tabs button:hover{background:var(--theme-surface-raised,#332d3d);color:var(--ink)}
.monitoring-tabs button:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}
.insight-period-button{display:flex;align-items:center;justify-content:space-between;gap:5px;height:36px;border:1px solid var(--line);border-radius:7px;background:var(--surface-subtle);color:var(--ink);font:inherit;font-size:13px;padding:0 8px;white-space:nowrap;cursor:pointer}
.insight-period-button span{overflow:hidden;text-overflow:ellipsis}.insight-period-button svg{flex:none}
.insight-presets{margin-bottom:14px;gap:6px}
.insight-product-link{display:block;border:0;background:none;color:var(--primary);font:inherit;font-size:13px;padding:3px 0;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.insight-product-link:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.insight-drilldown{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;font-size:13px;margin:0 0 10px}.insight-drilldown span{color:var(--muted)}
@media(min-width:721px){
 .monitoring-actions .refresh-control[data-refresh-compact]{flex-direction:row;align-items:center;gap:12px;max-width:none}
 .monitoring-actions .refresh-mini-status{order:-1;font-size:11px!important;max-width:260px}
 .monitoring-controls .monitor-scope{display:contents}
 /* Equal widths apply to toolbar items, never to fields inside a popover. */
 .monitoring-controls>:is(select,.monitoring-date,.monitoring-date-control,.insight-period-button,.monitor-scope-button),
 .monitoring-controls :is(.monitoring-options,.monitoring-filter-row,.monitor-scope,.monitoring-date-range)>:is(select,.monitoring-date,.monitoring-date-control,.insight-period-button,.monitor-scope-button){flex:1 1 0!important;width:0!important;min-width:0!important;height:36px!important;min-height:36px!important;max-height:36px!important;box-sizing:border-box;font-size:13px;line-height:normal;padding-top:0;padding-bottom:0}
 .monitoring-controls .monitoring-date-range{flex:2;min-width:0}
 .monitoring-controls .monitor-scope-reset{flex:0 0 28px;width:28px;height:36px}
 .monitoring-controls .monitoring-date{padding-left:5px;padding-right:5px}
}
@media(min-width:721px) and (max-width:1350px){.monitoring-controls :is(select,.monitoring-date,.monitoring-date-control,.insight-period-button,.monitor-scope-button){font-size:12px}.insight-period-button svg{display:none}}
@media(max-width:720px){
 .insight-header .monitoring-actions:has([data-refresh-compact]){grid-template-columns:auto 40px 1fr}
 .insight-header [data-action=insight-rules]{grid-column:3;grid-row:1;justify-self:end}
 .insight-period-button{width:100%;min-width:0;height:38px}
 .insight-table-scroll{max-width:100%}.insight-products tbody th{min-width:155px;max-width:170px}.insight-products tbody th small{max-width:150px;overflow-wrap:anywhere}
 .insight-benchmark strong{font-size:16px}.insight-drilldown .button{padding:5px 0}
}
.insight-products table{table-layout:fixed}
.insight-products :is(th,td){white-space:normal;overflow-wrap:anywhere}
.insight-products :is(th,td):first-child{width:270px;max-width:270px;overflow:hidden}
.insight-products tbody th :is(a,small){display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.insight-products td:nth-child(2){width:175px}.insight-products .insight-tag{white-space:normal;overflow-wrap:anywhere}
[data-month-progress]{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}
[data-month-progress] .activity-spinner{width:13px;height:13px;flex:none}
@media(max-width:720px){.insight-products :is(th,td):first-child{width:165px;max-width:165px}}
.month-point-detail{right:auto;left:8px;bottom:32px;width:330px;max-width:calc(100% - 16px);padding:10px 12px;background:var(--surface);line-height:1.35}
.month-tooltip-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:7px;margin-bottom:3px;border-bottom:1px solid var(--line);font-size:12px}.month-tooltip-head>span{color:var(--muted)}
.month-tooltip-row{display:grid;grid-template-columns:15px minmax(0,1fr) auto;gap:8px;align-items:center;padding:5px 0;font-size:12px}.month-tooltip-row i{width:15px;border-top:3px solid}.month-tooltip-row small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.month-tooltip-row b{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}
.refresh-results .finance-refresh-heading{margin-top:20px;margin-bottom:5px}
.data-refresh-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 10px;color:var(--muted);font-size:12px;line-height:1.45}
.data-refresh-note.has-error{color:var(--orange,#eac285)}
.data-refresh-note .button{min-height:26px;padding:3px 8px;font-size:12px}
.data-refresh-note .activity-spinner{width:12px;height:12px;flex:none}

/* A labelled native picker keeps the iPhone date control inside its column. */
.monitoring-date-control{position:relative;display:flex;align-items:center;gap:7px;flex:0 0 135px;box-sizing:border-box;width:135px;min-width:0;height:36px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface-subtle);padding:0 9px;color:var(--ink);font-size:13px;font-weight:400;margin:0}
.monitoring-date-control>svg{width:15px;height:15px;flex:none;color:var(--muted)}.monitoring-date-control>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.monitoring-controls .monitoring-date-control>.monitoring-date{position:absolute;inset:0;opacity:0;display:block;box-sizing:border-box;width:100%!important;min-width:0!important;max-width:100%!important;height:100%!important;padding:0;margin:0;border:0;cursor:pointer;font-size:16px}
.monitoring-date-control>.monitoring-date::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;padding:0;cursor:pointer}
.monitoring-date-control.monitoring-month-control{flex-basis:155px;width:155px}
.monitoring-controls .monitoring-month-control>select{flex:1;width:0;min-width:0;max-width:100%;height:100%;min-height:0;padding:0 18px 0 0;margin:0;border:0;border-radius:0;background-color:transparent;background-position:right center;color:inherit;font:inherit;cursor:pointer}
.monitoring-date-control:focus-within{outline:2px solid var(--primary);outline-offset:-2px}.monitoring-date-range .monitoring-date-control{flex:1;width:146px}
@media(max-width:720px){
 .monitoring-report-header .monitoring-tabs{display:flex;flex:1;flex-wrap:nowrap;min-width:0;gap:2px;padding:3px;border-radius:10px;overflow:visible}
 .monitoring-report-header .monitoring-tabs a{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0;min-height:38px;padding:8px 6px;font-size:12px;border-radius:7px}
 .monitoring-report-header .monitoring-tabs a:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}
 .monitoring-navigation{align-items:center}.monitoring-header .mobile-title-menu{height:42px;width:32px;min-width:32px}
 .monitoring-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
 .monitoring-controls :is(select,.monitoring-date-control,.insight-period-button){display:block;width:100%;min-width:0;max-width:100%;height:40px;min-height:40px;box-sizing:border-box;margin:0;font-size:14px}
 .monitoring-controls .monitoring-date-control{display:flex;flex:auto;padding:0 8px}
 .monitoring-controls select{padding-left:9px;padding-right:24px}
 .monitoring-date-range{grid-column:1/-1}.monitoring-date-range .monitoring-date-control{width:0;flex:1}
 .monitor-scope-mobile{height:40px}.monitor-scope-reset{height:40px}
 .monitoring-actions .refresh-mini-status{font-size:11px!important;white-space:normal;text-align:left}.refresh-mini-result{flex-wrap:wrap;row-gap:2px}
}
@media(max-width:360px){.monitoring-controls :is(select,.monitoring-date-control){font-size:13px}.monitoring-month-control>svg{display:none}}

/* Phone monitoring actions share one row with an explicit, tappable status. */
.refresh-action-icon,.refresh-summary-mobile{display:none}
@media(max-width:720px){
 .monitoring-report-header .monitoring-actions:has([data-refresh-compact]){grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:7px;min-height:40px}
 .monitoring-report-header .monitoring-actions [data-action="sync-all"]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;padding:0;border-radius:9px}
 .monitoring-report-header .refresh-action-label,.monitoring-report-header .refresh-summary-detail{display:none!important}
 .monitoring-report-header .refresh-action-icon,.monitoring-report-header .refresh-summary-mobile{display:block}
 .monitoring-report-header .refresh-summary-mobile[hidden]{display:none}
 .monitoring-report-header .monitoring-actions .refresh-mini-status{grid-column:2;grid-row:1;justify-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;min-width:0;min-height:40px;width:100%;white-space:nowrap;font-size:12px!important;line-height:1.25}
 .monitoring-report-header .refresh-mini-result{flex-wrap:nowrap;min-width:0;gap:4px}
 .monitoring-report-header [data-refresh-mobile-label]{white-space:nowrap}
 .monitoring-report-header .refresh-summary-mobile-detail{display:flex;align-items:center;flex-wrap:wrap;gap:2px 5px;padding-left:18px;text-align:left}
 .monitoring-report-header [data-refresh-mobile-outcome]{white-space:nowrap}
 .monitoring-report-header .refresh-mini-status[data-state=error] [data-refresh-mobile-outcome]{color:var(--theme-bad,#ffadb7)}
 .monitoring-report-header .refresh-summary-mobile-next{flex:none;white-space:nowrap;color:var(--muted)}
 .monitoring-report-header [data-refresh-mobile-outcome]:not([hidden])+.refresh-summary-mobile-next::before{content:'·';margin-right:5px}
 .monitoring-report-header .monitoring-actions .money-visibility-button{grid-column:3;grid-row:1}
 .monitoring-report-header .monitoring-actions:has([data-refresh-compact]):not(:has([data-action="sync-all"])){grid-template-columns:minmax(0,1fr) 40px}
 .monitoring-report-header .monitoring-actions:not(:has([data-action="sync-all"])) .refresh-mini-status{grid-column:1}
 .monitoring-report-header .monitoring-actions:not(:has([data-action="sync-all"])) .money-visibility-button{grid-column:2}
}

@media(max-width:360px){.monitoring-report-header .monitoring-tabs a{font-size:11px;padding:8px 3px}.monitoring-report-header .refresh-summary-mobile-detail{padding-left:0}.monitoring-report-header .monitoring-actions .refresh-mini-status{font-size:11px!important}}

.hour-floating,.month-point-detail{box-sizing:border-box;overflow:auto;overscroll-behavior:contain;pointer-events:auto;z-index:30}

/* Date ranges retain both years and the arrow has its own non-shrinking space. */
.monitoring-controls .filter-period-button{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-inline:8px;font-variant-numeric:tabular-nums}
.monitoring-controls .filter-period-button>span:first-of-type{white-space:nowrap;overflow:visible;text-overflow:clip}
@media(min-width:721px){.monitoring-controls .filter-period-button{flex:0 0 172px!important;width:auto!important;min-width:172px!important}}
@media(max-width:720px){.monitoring-controls .filter-period-button{display:flex;height:40px;min-width:0;font-size:12px}.monitoring-controls .filter-period-button>svg{display:none}}
@media(max-width:360px){.monitoring-controls .filter-period-button{grid-column:1/-1}}
.sidebar-collapse{display:none}
@media(min-width:721px){
 .sidebar-collapse{display:flex;align-items:center;justify-content:center;position:absolute;right:8px;top:27px;color:var(--muted)}
 body.sidebar-mini .app-shell{grid-template-columns:72px minmax(0,1fr)}
 body.sidebar-mini .sidebar{width:72px;padding:18px 8px}
 body.sidebar-mini .sidebar-collapse{position:static;margin:0 auto 18px;min-height:34px}
 body.sidebar-mini .brand{padding:0;justify-content:center;margin:0 0 16px}
 body.sidebar-mini .brand span,body.sidebar-mini .nav-label,body.sidebar-mini .nav-item span,body.sidebar-mini .local-label{display:none}
 body.sidebar-mini .nav-item{justify-content:center;min-height:44px;padding:10px;gap:0}
 body.sidebar-mini .nav-bottom{padding-top:10px}
 body.sidebar-mini .workspace-toggle{font-size:0;width:44px;min-width:0;margin:0 auto;padding:10px;display:flex;justify-content:center}
 body.sidebar-mini .user-profile{display:flex;flex-direction:column;gap:6px;align-items:center;padding:10px 0}
 body.sidebar-mini .user-profile [data-auth-account]{font-size:0;min-width:44px;min-height:38px}
 body.sidebar-mini .user-profile [data-auth-account]::before{content:'◉';font-size:22px;color:var(--muted)}
 body.sidebar-mini .user-profile strong,body.sidebar-mini .user-profile small{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
 body.sidebar-mini .user-profile [data-auth-logout]{font-size:10px;min-height:30px;padding:6px 3px}
 body.sidebar-mini .purchase-expanded-table .purchase-detail{max-width:min(1100px,calc(100vw - 150px))}
}
/* Comparable date ranges, with details shown only on demand. */
.range-plot,.trend-plot{position:relative;overflow:visible}
.range-plot .chart-viewport>.hourly-chart{min-width:0;min-height:0}
.range-comparison-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:16px}
.range-comparison-strip>label,.range-comparison-strip>div{display:flex;min-width:0;flex-direction:column;gap:6px}
.range-comparison-strip span{white-space:normal;font-size:11px;line-height:1.35}
.range-comparison-strip small{font-size:10px;line-height:1.45;color:var(--muted);font-variant-numeric:tabular-nums}
.range-comparison-strip input{width:13px;height:13px;flex-shrink:0;accent-color:var(--accent);margin:0}
.range-status,.range-more{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12px;margin:8px 0;min-height:20px}
.range-status .cabinet-coverage-help{margin-left:auto}
.range-more{justify-content:flex-end}
.range-tooltip,.trend-tooltip{z-index:50}
.range-tip-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0;font-size:12px}
.range-tip-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.range-tip-row i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}
.range-tip-row b{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:720px){.range-comparison-strip{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}.range-comparison-strip small{font-size:9px}}

@media(min-width:721px){.monitoring-controls .monitoring-date-range{min-width:246px;flex-shrink:0}}

.sidebar-restore{display:none}
@media(min-width:721px){
 body.sidebar-hidden .app-shell{grid-template-columns:minmax(0,1fr)}
 body.sidebar-hidden .sidebar{display:none}
 body.sidebar-hidden .main{grid-column:1;padding-left:64px}
 body.sidebar-hidden .sidebar-restore{display:flex;align-items:center;justify-content:center;position:fixed;left:12px;top:26px;width:36px;height:36px;z-index:45;border:1px solid var(--border);background:var(--panel,#202127);color:var(--text);border-radius:9px}
}

.monitor-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);gap:16px;align-items:stretch}
.monitor-overview-grid>.panel{min-width:0;margin:0}
.buyout-card{padding:20px;display:flex;flex-direction:column;gap:12px;overflow:visible}
.buyout-heading{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
.buyout-heading h3{margin:0;font-size:18px}
.buyout-heading span,.buyout-total span,.buyout-foot,.monitor-source-note{color:var(--muted);font-size:12px}
.buyout-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px}
.buyout-total strong{font-size:26px;font-variant-numeric:tabular-nums}
.buyout-plot{position:relative;margin-top:auto;min-width:0}
.buyout-plot>.hourly-chart{width:100%;min-width:0;height:auto;min-height:180px}
.buyout-foot{margin:0}
.buyout-card details{font-size:12px;color:var(--muted)}
.buyout-card details p{line-height:1.5;max-width:65ch}
.monitor-source-note{margin:0 0 12px;line-height:1.5}
@media(max-width:1150px){.monitor-overview-grid{grid-template-columns:minmax(0,1fr)}.buyout-plot>.hourly-chart{max-height:240px}}
.analysis-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:12px 0}
.analysis-tools select{width:auto;min-width:170px}
.analysis-scroll{overflow:auto;max-height:70vh;padding:0;position:relative}
.analysis-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:13px}
.analysis-table th,.analysis-table td{padding:12px 14px;min-width:130px}
.analysis-table thead th{background:var(--panel,#24232d);position:sticky;top:0;z-index:2;white-space:normal;max-width:160px}
.analysis-table thead tr:nth-child(2) th{top:42px}
.analysis-table .analysis-product{position:sticky;left:0;min-width:260px;max-width:300px;background:var(--panel,#202127);z-index:1;text-align:left}
.analysis-table thead .analysis-product{z-index:4}
.analysis-product .product-name{max-width:280px;text-align:left}
.analysis-product small{display:block;color:var(--muted);font-weight:normal}
.analysis-total{font-weight:700;background:var(--accent-soft,#302b43)}
.analysis-category{font-weight:600;background:var(--panel,#202127)}
.analysis-category td,.analysis-category th{border-top:1px solid var(--border)}
.product-analysis .help-details{margin-top:16px;max-width:1000px}
@media(max-width:720px){.analysis-table .analysis-product{min-width:180px;max-width:180px}.analysis-product .product-name{max-width:180px}.analysis-table th,.analysis-table td{padding:10px;min-width:100px}}
.analysis-tools select{padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel,#202127);color:var(--text);font:inherit;min-height:38px}
.analysis-tools .checkbox{display:flex;align-items:center;gap:8px;font-size:13px}
.analysis-tools input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}
/* Workbook analysis: each source column has an explicit definition. */
.analysis-tools>span{margin-right:auto;font-size:14px}.analysis-tools small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.analysis-tools label{display:flex;align-items:center;gap:8px;font-size:13px}.analysis-tools select{max-width:260px}
.analysis-table thead th:not(.analysis-product){min-width:205px;max-width:205px;vertical-align:top;text-align:left}.analysis-table thead th button{border:0;background:none;color:inherit;font:inherit;font-size:12px;line-height:1.5;text-align:left;padding:0;cursor:pointer;width:100%;white-space:normal}.analysis-table thead small{display:block;color:var(--accent);margin-bottom:7px;font-size:11px}.analysis-table thead th button:hover{color:var(--accent)}
.analysis-table .analysis-missing{border:0;background:none;color:var(--muted);cursor:pointer;padding:2px 10px;font:inherit}.analysis-table .analysis-missing:hover{color:var(--accent)}
.analysis-explanation{position:relative;padding:18px 20px;margin:12px 0;background:var(--surface,#202127);border:1px solid var(--border);border-radius:10px}.analysis-close{float:right}.analysis-definition h3{font-size:14px;margin:0 0 12px;line-height:1.45}.analysis-definition h3 span{color:var(--accent);margin-right:6px}.analysis-definition dl{margin:0;display:grid;grid-template-columns:95px minmax(0,1fr);gap:8px 12px;font-size:13px;line-height:1.5}.analysis-definition dt{color:var(--muted)}.analysis-definition dd{margin:0;overflow-wrap:anywhere}.analysis-explanation .analysis-definition{max-width:1000px}
.analysis-glossary{margin:12px 0}.analysis-glossary summary{cursor:pointer;color:var(--accent);font-size:13px}.analysis-definitions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:12px;margin:16px 0}.analysis-definitions .analysis-definition{background:var(--surface,#202127);border:1px solid var(--border);border-radius:10px;padding:18px}.product-analysis{min-width:0}.analysis-scroll{max-width:100%}
@media(max-width:720px){.analysis-tools>span{flex-basis:100%}.analysis-tools label{flex-wrap:wrap}.analysis-definition dl{grid-template-columns:1fr;gap:4px}.analysis-definition dd{margin-bottom:8px}.analysis-table thead th:not(.analysis-product){min-width:175px;max-width:175px}}

/* Product analysis: product totals first, optional size rows underneath. */
.analysis-family-toggle{display:flex;align-items:flex-start;gap:9px;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;font:inherit;cursor:pointer;white-space:normal}
.analysis-family-toggle>span:first-child{color:var(--accent);width:12px;flex-shrink:0}
.analysis-family-toggle:hover strong{color:var(--accent)}
.analysis-family-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:3px}
.analysis-table .analysis-size .analysis-product{padding-left:34px;background:var(--bg,#17181f)}
.analysis-size-label{display:block;color:var(--accent);font-size:12px;margin-bottom:5px}
.analysis-size .product-thumb{display:none}
.analysis-table .analysis-family td{font-weight:600}

/* Category actions stay with the product column during horizontal scrolling. */
.analysis-table .analysis-category-more{white-space:normal;max-width:100%;text-align:left;min-height:36px}
.analysis-table .analysis-more-row>td{background:var(--panel,#202127)}
.analysis-table .analysis-partial{border:0;background:none;color:inherit;font:inherit;text-align:right;cursor:pointer;padding:2px 0}
.analysis-table .analysis-partial small{display:block;color:var(--muted);font-size:11px;font-weight:normal;white-space:normal}
.analysis-table .analysis-product small{white-space:normal;overflow-wrap:anywhere}
/* Explanation: readable measure, concise receipt, provenance on demand. */
.analysis-explanation{position:relative;padding:24px!important;max-width:840px;box-sizing:border-box}.analysis-explanation-content{max-width:760px;min-width:0}.analysis-explanation .analysis-close{position:absolute;right:18px;top:20px;float:none!important;width:36px;height:36px;padding:0;font-size:24px;font-weight:400}
.analysis-explanation-heading{padding-right:42px;margin-bottom:20px}.analysis-explanation-heading h3{font-size:18px;line-height:1.4;margin:0 0 6px}.analysis-explanation-heading p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.analysis-explanation-total{display:block;font-size:32px;line-height:1.3;margin-top:10px;font-variant-numeric:tabular-nums}
.analysis-explanation .fineprint{font-size:13px;line-height:1.55;max-width:72ch}.analysis-summary-note{font-size:15px;line-height:1.55;max-width:64ch;margin:16px 0 20px}.analysis-summary-note b{display:block;color:var(--text);margin-bottom:3px;font-weight:600}.analysis-explanation .analysis-coverage>p{max-width:72ch;line-height:1.55}
.analysis-formula-card{padding:14px 16px;background:var(--surface,#202127);border-left:3px solid var(--accent);border-radius:0 8px 8px 0}.analysis-formula-card>span{color:var(--muted);font-size:12px}.analysis-formula-card p{font-size:16px;line-height:1.55;margin:6px 0 0;max-width:60ch}
.analysis-pool{margin:20px 0}.analysis-pool h4{font-size:14px;margin:0 0 10px}.analysis-pool h4 span{font-weight:400;color:var(--muted)}.analysis-receipt{max-width:640px}.analysis-receipt-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:8px 0;font-size:14px;line-height:1.45}.analysis-receipt-line>span{color:var(--muted)}.analysis-receipt-line strong{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.analysis-subtotal{border-top:1px solid var(--border);margin-top:3px}.analysis-subtotal>span,.analysis-subtotal strong{color:var(--text);font-weight:600}.analysis-result-receipt{margin-top:22px;padding-top:12px;border-top:1px solid var(--border)}.analysis-impact{font-size:14px;color:var(--muted);margin:8px 0 22px}.analysis-impact strong{color:var(--text)}
.analysis-method{border-top:1px solid var(--border);margin-top:0;padding:0}.analysis-method>summary{cursor:pointer;list-style:none;color:var(--accent);font-size:14px;line-height:1.4;padding:15px 28px 15px 0;position:relative}.analysis-method>summary::-webkit-details-marker{display:none}.analysis-method>summary::after{content:'+';position:absolute;right:4px;font-size:20px;top:10px}.analysis-method[open]>summary::after{content:'−'}.analysis-method>summary>span{color:var(--muted);font-size:12px;margin-left:6px}.analysis-method[open]{padding-bottom:14px}.analysis-method .analysis-definition{max-width:700px;font-size:14px;line-height:1.6}.analysis-method .analysis-definition dl{display:block}.analysis-method .analysis-definition dt{margin-top:16px;font-weight:600}.analysis-method .analysis-definition dd{margin:4px 0 16px}.analysis-pool-source,.analysis-precision{margin:8px 0 14px;font-size:13px;line-height:1.55}.analysis-pool-source>summary,.analysis-precision>summary{cursor:pointer;color:var(--accent);padding:6px 0}
.analysis-item-list{border-top:1px solid var(--border)}.analysis-item{border-bottom:1px solid var(--border)}.analysis-item>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;cursor:pointer;padding:14px 24px 14px 0;position:relative;list-style:none}.analysis-item>summary::-webkit-details-marker{display:none}.analysis-item>summary::after{content:'›';position:absolute;right:4px;top:14px;color:var(--muted)}.analysis-item[open]>summary::after{content:'⌄'}.analysis-item-name,.analysis-item-amount{min-width:0;font-size:14px;line-height:1.5}.analysis-item-name>b,.analysis-item-name>span,.analysis-item-name>small{display:block}.analysis-item-name>span{margin-top:2px}.analysis-item-name small,.analysis-item-amount small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.analysis-item-amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.analysis-item-body{padding:4px 0 16px}.analysis-item-body h4{font-size:13px;margin:0 0 8px;color:var(--muted);font-weight:500}.analysis-inputs{margin:0}.analysis-inputs>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,1fr);gap:12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:14px;line-height:1.5}.analysis-inputs dt{color:var(--muted)}.analysis-inputs dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.analysis-inputs small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.analysis-inputs strong{font-weight:500}.analysis-precision p{overflow-wrap:anywhere}
.analysis-detail-scroll{max-width:100%;overflow-x:auto;margin:8px 0}.analysis-detail-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.analysis-detail-table th,.analysis-detail-table td{padding:12px 10px;border-bottom:1px solid var(--border);text-align:right;vertical-align:top;white-space:nowrap}.analysis-detail-table thead th{color:var(--muted);font-size:12px;font-weight:500}.analysis-detail-table th:first-child{text-align:left;white-space:normal}.analysis-detail-table tbody th{font-weight:500}.analysis-detail-table small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
@media(max-width:720px){.analysis-explanation{padding:16px!important}.analysis-close{top:12px;right:10px}.analysis-explanation-heading{padding-right:32px;margin-bottom:16px}.analysis-explanation-heading h3{font-size:16px}.analysis-explanation-total{font-size:28px}.analysis-summary-note{font-size:14px}.analysis-receipt-line{font-size:13px;gap:10px}.analysis-formula-card p{font-size:14px}.analysis-item>summary{grid-template-columns:minmax(0,1fr);gap:6px}.analysis-item-amount{text-align:left;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.analysis-inputs>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);font-size:13px}}

/* Cell drill-down stays above the report, without moving the table. */
.analysis-value{border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;font-variant-numeric:tabular-nums;cursor:pointer;padding:6px 0;text-align:right;min-height:32px;border-radius:3px}.analysis-value:hover,.analysis-value:focus-visible{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.analysis-value:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.analysis-dialog-layer{position:fixed;inset:0;z-index:1500;background:var(--theme-overlay,rgba(0,0,0,.55));display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;overscroll-behavior:contain}.analysis-dialog-layer>.analysis-explanation{width:min(840px,100%);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;margin:0;box-shadow:0 20px 70px var(--theme-shadow-color,#0008);outline:0}.analysis-dialog-layer .analysis-close{position:sticky;top:0;float:right!important;z-index:2;background:var(--surface,#202127)}.analysis-source-evidence{margin-top:22px;border-top:1px solid var(--border);padding-top:12px}.analysis-source-evidence h4{font-size:14px;margin:8px 0 16px}.analysis-dialog-layer .analysis-item-name,.analysis-dialog-layer .fineprint{overflow-wrap:anywhere}
@media(max-width:720px){.analysis-dialog-layer{padding:8px}.analysis-dialog-layer>.analysis-explanation{max-height:calc(100dvh - 16px);border-radius:12px}.analysis-receipt-line{grid-template-columns:minmax(0,1fr) minmax(0,auto)}.analysis-receipt-line strong{overflow-wrap:anywhere;white-space:normal;text-align:right}}

.report-snapshot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;margin:0 0 16px;color:var(--muted);font-size:13px}
.report-snapshot>div{min-width:0;display:grid;gap:4px}.report-snapshot small{font-size:inherit;color:var(--text)}
.report-snapshot .button{flex-shrink:0}@media(max-width:520px){.report-snapshot{align-items:flex-start;flex-wrap:wrap}.report-snapshot .button{margin-left:auto}}
