.fin{min-width:0}.fin-section{view-transition-name:fin-section}.topbar__titles:has(>.fin-title){view-transition-name:fin-title}.content__subtitle:has(+.fin){view-transition-name:fin-subtitle}@supports not (view-transition-name: none){.fin-section{animation:fin-enter var(--dur-section) var(--ease-enter) backwards}}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-group(fin-section),::view-transition-group(fin-title),::view-transition-group(fin-subtitle){animation:none}::view-transition-old(fin-section){animation:fin-leave var(--dur-press) var(--ease-exit) both}::view-transition-new(fin-section){animation:fin-enter var(--dur-section) var(--ease-enter) var(--delay-section) both}::view-transition-old(fin-title),::view-transition-old(fin-subtitle){animation:fin-fade-out var(--delay-section) var(--ease-exit) both}::view-transition-new(fin-title),::view-transition-new(fin-subtitle){animation:fin-enter var(--dur-section) var(--ease-enter) var(--delay-section) both}::view-transition-group(fin-nav-pill),::view-transition-group(fin-tab-pill){animation-duration:var(--dur-section);animation-timing-function:var(--ease-enter)}@keyframes fin-enter{0%{opacity:0;transform:translateY(10px)}}@keyframes fin-leave{to{opacity:0;transform:translateY(-6px)}}@keyframes fin-fade-out{to{opacity:0}}@keyframes fin-fade-in{0%{opacity:0}}.cascade{animation:rise var(--dur-enter) var(--ease-enter) backwards;animation-delay:calc(var(--i, 0) * var(--stagger))}.fin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}.period{display:inline-flex;align-items:center;height:38px;padding:0 2px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);transition:opacity var(--dur-hover) var(--ease-enter)}.period--inactive{opacity:.55}.period__step{width:34px;height:32px;border:0;border-radius:var(--radius-pill);background:none;font-size:var(--text-xl);line-height:1;color:var(--ink-secondary);cursor:pointer;transition:background var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.period__step:hover:not(:disabled){background:var(--surface-hover);color:var(--ink)}.period__step:active:not(:disabled){transform:scale(var(--press-scale-sm))}.period__step:disabled{opacity:.3;cursor:default}.period__label{position:relative;display:block;width:168px;height:36px;overflow:hidden;font-weight:var(--weight-strong);font-size:var(--text-md);letter-spacing:-.01em}.slide{position:absolute;top:0;right:0;bottom:0;left:0}.slide__item{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;white-space:nowrap}.slide--forward .slide__item--in{animation:slide-from-right var(--dur-section) var(--ease-enter) backwards}.slide--forward .slide__item--out{animation:slide-to-left var(--dur-leave) var(--ease-exit) forwards}.slide--back .slide__item--in{animation:slide-from-left var(--dur-section) var(--ease-enter) backwards}.slide--back .slide__item--out{animation:slide-to-right var(--dur-leave) var(--ease-exit) forwards}@keyframes slide-from-right{0%{opacity:0;transform:translate(22px)}}@keyframes slide-from-left{0%{opacity:0;transform:translate(-22px)}}@keyframes slide-to-left{to{opacity:0;transform:translate(-22px)}}@keyframes slide-to-right{to{opacity:0;transform:translate(22px)}}.segmented{position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:3px;border-radius:var(--radius-pill);background:var(--surface-sunken);border:1px solid var(--line);isolation:isolate}.segmented__thumb{position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / var(--count));border-radius:var(--radius-pill);background:var(--surface-raised);box-shadow:var(--thumb-shadow),0 0 0 1px var(--line);transition:transform var(--dur-enter) var(--ease-enter);z-index:-1}.segmented__option{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border:0;background:none;padding:0 14px;border-radius:var(--radius-pill);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--ink-secondary);cursor:pointer;white-space:nowrap;transition:color var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.segmented__option:hover{color:var(--ink)}.segmented__option:active{transform:scale(.96)}.segmented__option--on{color:var(--ink)}.segmented__option:disabled{opacity:.5;cursor:default}.segmented--sm .segmented__option{padding:0 11px;min-height:22px;font-size:var(--text-sm)}.city{position:relative;display:inline-flex;align-items:center;height:38px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);transition:border-color var(--dur-hover) var(--ease-enter)}.city:hover{border-color:var(--ink-muted)}.city:has(:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.city__icon{position:absolute;left:13px;color:var(--ink-muted);pointer-events:none}.city__chevron{position:absolute;right:13px;font-size:var(--text-xs);color:var(--ink-muted);pointer-events:none}.city__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;height:100%;padding:0 34px 0 33px;font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;border-radius:var(--radius-pill);max-width:240px}.city__select:focus{outline:none}.city--single{background:transparent;border-style:dashed}.city--single:hover{border-color:var(--line-strong)}.city--single .city__select{display:inline-flex;align-items:center;padding-right:16px;cursor:default;color:var(--ink-secondary)}.freshness{display:inline-flex;align-items:center;gap:7px;font-size:var(--text-sm);color:var(--ink-secondary);white-space:nowrap}.freshness__dot{width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 18%,transparent)}.freshness--stale{color:var(--warning-text)}.freshness__last{font-weight:var(--weight-strong)}.fin-notices{display:flex;flex-direction:column;gap:8px;margin:-8px 0 18px}.fin-notices>*,.fin-appear{animation:rise var(--dur-enter) var(--ease-enter) backwards}.fin-notices .caveat__text{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.fin-notice__text{flex:1 1 320px}.fin-notice__close{padding:0}.closed-section{max-width:640px}.closed-section .panel__state{padding:40px 24px;gap:10px}.closed-section__title{font-size:var(--text-lg);font-weight:var(--weight-strong)}.closed-section__text{max-width:52ch}.freshness--stale .freshness__dot{background:var(--warning);box-shadow:0 0 0 3px color-mix(in srgb,var(--warning) 22%,transparent)}.freshness--failed{color:var(--critical-text)}.freshness--failed .freshness__dot{background:var(--critical);box-shadow:0 0 0 3px color-mix(in srgb,var(--critical) 22%,transparent)}.fin-tabs{display:none}.fin-tab{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--ink-secondary);white-space:nowrap;transition:color var(--dur-hover) var(--ease-enter)}.fin-tab:hover{color:var(--ink);text-decoration:none}.fin-tab--active{color:var(--ink);font-weight:var(--weight-strong)}.fin-tab__pill{position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px;background:var(--accent);view-transition-name:fin-tab-pill}.fin-tab__text{position:relative}.fin-stack{display:flex;flex-direction:column;gap:18px}.fin-grid{display:grid;gap:18px}.fin-grid--main{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr)}.fin-grid--half{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi-grid--3,.kpi-grid--n3{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-grid--n2{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid--n1{grid-template-columns:minmax(0,1fr)}.kpi{position:relative;display:flex;flex-direction:column;min-height:140px;width:100%;padding:16px 18px 14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);color:inherit;font:inherit;text-align:left}.kpi--static{min-height:0}.kpi__value--bad{color:var(--critical-text)}.kpi:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;box-shadow:var(--shadow-lift);opacity:0;pointer-events:none;transition:opacity var(--dur-hover) var(--ease-enter)}.kpi--link{cursor:pointer;transition:transform var(--dur-hover) var(--ease-enter),border-color var(--dur-hover) var(--ease-enter)}.kpi--link:hover{transform:translateY(-2px);border-color:var(--line-strong)}.kpi--link:hover:after{opacity:1}.kpi--link:active{transform:translateY(0) scale(.985);transition-duration:var(--dur-press)}.kpi__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.kpi__label{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--ink-secondary)}.kpi__tag{padding:1px 7px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--ink-secondary);white-space:nowrap}.kpi__main{display:flex;flex-wrap:nowrap;align-items:flex-end;justify-content:space-between;gap:4px 10px;margin-top:8px;min-width:0}.kpi__value{font-size:var(--text-kpi);font-weight:var(--weight-strong);line-height:1.1;letter-spacing:-.025em;font-variant-numeric:tabular-nums;white-space:nowrap}.kpi__foot{margin-top:auto;padding-top:10px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.kpi__meta{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:var(--text-sm)}.kpi__line{min-height:calc(var(--text-sm) * 1.5)}.kpi>.kpi__value{margin-top:8px}.kpi__delta{display:inline-flex;align-items:baseline;gap:6px;flex-wrap:wrap}.kpi__hint{font-size:var(--text-sm);color:var(--ink-muted)}.kpi__closed{margin-top:10px;font-size:var(--text-lg);font-weight:var(--weight-strong);color:var(--ink-secondary)}.kpi--closed{background:var(--surface-sunken);border-style:dashed}.sparkline{flex:0 1 112px;min-width:64px;height:30px;overflow:visible;margin-bottom:1px}.sparkline__line{stroke-dasharray:1;stroke-dashoffset:1;stroke-linecap:round;stroke-linejoin:round;animation:draw var(--dur-chart) var(--ease-enter) 80ms forwards}.sparkline__dot{opacity:0;animation:dot-in var(--dur-enter) var(--ease-enter) var(--dur-chart) forwards}@keyframes dot-in{to{opacity:1}}.sparkline__gap{stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:2 3}@keyframes draw{to{stroke-dashoffset:0}}.panel{position:relative;min-width:0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.panel__header{display:flex;align-items:flex-start;flex-wrap:wrap;gap:10px 12px;padding:16px 18px 0}.panel__heading{flex:1 1 14rem;min-width:0}.panel__actions{flex:0 1 auto;max-width:100%;min-width:0}.panel__title{font-size:var(--text-lg);font-weight:var(--weight-strong)}.panel__subtitle{margin-top:2px;font-size:var(--text-sm);color:var(--ink-muted);max-width:88ch;text-wrap:pretty}.panel__body{padding:14px 18px 18px}.panel__body--flush{padding:0}.panel__header+.panel__body--flush{padding-top:14px}.panel__body--flush .panel__content>.caveat{margin:0 18px 12px}.panel__content{transition:opacity var(--dur-enter) var(--ease-enter)}.panel--refreshing .panel__content{opacity:.55}.panel__progress{position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;opacity:0;pointer-events:none}.panel--refreshing .panel__progress{opacity:1;animation:progress var(--dur-loop-progress) var(--ease-enter) infinite}@keyframes progress{0%{transform:scaleX(0);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}50.1%{transform-origin:right}to{transform:scaleX(0);transform-origin:right}}.panel__state{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 12px;text-align:center}.panel__state-icon{color:var(--ink-muted)}.panel__state-hint{max-width:60ch}.panel__state-action{margin-top:6px}.skeleton-columns{display:flex;align-items:flex-end;gap:10px;padding-left:60px}.skeleton-columns .skeleton{flex:1}.bars{display:flex;flex-direction:column;gap:2px;container-type:inline-size}.bars__row,.bars__reference-row{display:grid;grid-template-columns:minmax(110px,30%) minmax(0,1fr) var(--value-width) var(--aside-width);align-items:center;column-gap:12px}.bars__row{width:100%;min-height:44px;padding:6px 8px;border:0;border-radius:var(--radius);background:none;color:inherit;font:inherit;text-align:left}.bars--interactive .bars__row{cursor:pointer;transition:background var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.bars--interactive .bars__row:hover{background:var(--surface-hover)}.bars--interactive .bars__row:active{transform:scale(.99)}.bars__row:focus-visible{outline-offset:-2px}.bars__row--selected{background:var(--accent-soft)}.bars__label{display:flex;flex-direction:column;min-width:0}.bars__name-row{display:flex;align-items:center;gap:8px;min-width:0}.bars__trend{width:44px;height:14px;flex-shrink:0;color:var(--ink-muted);overflow:visible}.sparkline__ghost{opacity:0;animation:dot-in var(--dur-enter) var(--ease-enter) var(--dur-chart) forwards}.bars__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);font-weight:var(--weight-medium)}.bars__sub{font-size:var(--text-sm);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bars__track{position:relative;display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:22px}.bars__bar{display:block;width:100%;height:9px;border-radius:2px;transform-origin:left center;transition:transform var(--dur-chart) var(--ease-enter)}.bars--single .bars__bar{height:14px;border-radius:3px}.bars__bar--negative{background:repeating-linear-gradient(135deg,var(--critical) 0 3px,color-mix(in srgb,var(--critical) 35%,transparent) 3px 6px)}.bars__values{display:flex;flex-direction:column;align-items:flex-end;font-size:var(--text-base);line-height:1.3;white-space:nowrap}.bars__value:first-child{font-weight:var(--weight-strong)}.bars__value+.bars__value{color:var(--ink-secondary)}.bars__aside{display:flex;justify-content:flex-end;font-size:var(--text-sm);white-space:nowrap}.bars__reference-line{position:absolute;top:-5px;bottom:-5px;left:0;width:100%;border-left:1.5px dashed var(--ink-muted);pointer-events:none;transition:transform var(--dur-chart) var(--ease-enter)}.bars__reference-row{padding:0 8px}.bars__reference-track{position:relative;height:18px}.bars__reference{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform var(--dur-chart) var(--ease-enter)}.bars__reference-label{position:absolute;left:0;bottom:2px;transform:translate(-50%);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--ink-secondary);white-space:nowrap}@container (max-width: 520px){.bars__row,.bars__reference-row{grid-template-columns:minmax(0,1fr) var(--value-width) var(--aside-width);row-gap:5px}.bars__label{grid-column:1 / -1}.bars__reference-spacer{display:none}.bars__reference-row>span:last-child{display:none}}.columns__readout{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;min-height:22px;margin-bottom:14px;font-size:var(--text-base)}.columns__readout-title{min-width:120px;font-weight:var(--weight-strong)}.columns__readout-item{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap}.swatch{display:inline-block;width:9px;height:9px;border-radius:2px;align-self:center}.swatch--dot{width:9px;height:9px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 2px var(--surface)}.columns__body{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px}.columns__axis{position:relative}.columns__tick{position:absolute;top:0;right:0;font-size:var(--text-xs);line-height:1;color:var(--ink-muted);white-space:nowrap}.columns__plot{position:relative;display:flex;border-radius:var(--radius-sm)}.columns__plot:focus-visible{outline-offset:4px}.columns__grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.columns__gridline{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line)}.columns__gridline--zero{background:var(--line-strong)}.columns__slot{position:relative;flex:1;display:flex;justify-content:center;cursor:pointer}.columns__slot:before{content:"";position:absolute;top:-4px;right:2px;bottom:-4px;left:2px;border-radius:var(--radius-sm);background:var(--surface-hover);opacity:0;transition:opacity var(--dur-hover) var(--ease-enter)}.columns__slot--highlight:before{background:var(--accent-soft);opacity:1}.columns__slot--active:before{opacity:1}.columns__slot--active.columns__slot--highlight:before{background:color-mix(in srgb,var(--accent) 16%,transparent)}.columns__group{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:2px;width:72%;max-width:34px;height:100%}.columns__bar{position:relative;flex:1;max-width:14px;border-radius:3px 3px 0 0;transform-origin:bottom;transition:transform var(--dur-chart) var(--ease-enter)}.columns__bar--negative{background:repeating-linear-gradient(135deg,var(--critical) 0 3px,color-mix(in srgb,var(--critical) 35%,transparent) 3px 6px)}.columns__group--diverging .columns__bar{position:absolute;left:50%;width:16px;margin-left:-8px;max-width:none}.columns__bar--down{transform-origin:top;border-radius:0 0 3px 3px}.columns__net{position:absolute;top:0;left:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 2px var(--surface);transition:transform var(--dur-chart) var(--ease-enter),opacity var(--dur-enter) var(--ease-enter);pointer-events:none}.columns{container-type:inline-size}.columns__labels{display:flex;margin:8px 0 0 60px}.columns__label{flex:1;text-align:center;font-size:var(--text-xs);color:var(--ink-muted);transition:color var(--dur-hover) var(--ease-enter)}.columns__label--active{color:var(--ink);font-weight:var(--weight-strong)}@container (max-width: 420px){.columns__label--odd:not(.columns__label--active){visibility:hidden}}@container (max-width: 260px){.columns__label--third-off:not(.columns__label--active){visibility:hidden}}.columns__missing{position:absolute;left:50%;bottom:0;width:18px;height:12px;margin-left:-9px;border:1px dashed var(--line-strong);border-bottom:0;border-radius:3px 3px 0 0;pointer-events:none}.columns__label--missing{color:var(--ink-muted);opacity:.7}.segments{position:relative;height:18px;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-sunken)}.segments__part{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;transition:transform var(--dur-chart) var(--ease-enter)}.segments__gap{position:absolute;top:0;right:0;bottom:0;left:-1px;border-left:2px solid var(--surface);transition:transform var(--dur-chart) var(--ease-enter)}.ageing-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.ageing-legend{list-style:none;margin:0;padding:0;display:grid;gap:7px;font-size:var(--text-base)}.ageing-legend li{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:8px}.buckets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.bucket{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken)}.bucket__value{margin-top:6px;font-size:var(--text-lg);font-weight:var(--weight-strong);letter-spacing:-.01em}.signals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.signal{--tone: var(--accent);--tone-text: var(--accent);position:relative;display:grid;gap:3px;width:100%;padding:12px 36px 12px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer;overflow:hidden;transition:transform var(--dur-hover) var(--ease-enter),border-color var(--dur-hover) var(--ease-enter)}.signal:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--tone)}.signal:hover{transform:translate(2px);border-color:color-mix(in srgb,var(--tone) 40%,var(--line))}.signal:active{transform:scale(.99);transition-duration:var(--dur-press)}.signal--critical{--tone: var(--critical);--tone-text: var(--critical-text);background:color-mix(in srgb,var(--critical) 5%,var(--surface))}.signal--warning{--tone: var(--warning);--tone-text: var(--warning-text)}.signal--positive{--tone: var(--good);--tone-text: var(--good-text)}.signal__badge{justify-self:start;display:inline-flex;gap:5px;align-items:center;margin-bottom:3px;padding:1px 8px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-strong);color:var(--tone-text);background:color-mix(in srgb,var(--tone) 14%,transparent)}.signal__title{font-size:var(--text-md);font-weight:var(--weight-strong)}.signal__text{font-size:var(--text-base);color:var(--ink-secondary)}.signal__rule{margin-top:3px;font-size:var(--text-sm);color:var(--ink-muted)}.signal__arrow{position:absolute;right:14px;top:50%;margin-top:-8px;color:var(--ink-muted);transition:transform var(--dur-hover) var(--ease-enter),color var(--dur-hover) var(--ease-enter)}.signal:hover .signal__arrow{transform:translate(3px);color:var(--ink)}.caveat{display:flex;gap:9px;align-items:flex-start;padding:9px 12px;border-radius:var(--radius);font-size:var(--text-base);line-height:1.45;color:var(--ink-secondary);background:var(--surface-sunken);border:1px solid var(--line)}.panel .caveat{margin-bottom:12px}.caveat__icon{margin-top:1px;color:var(--accent-text)}.caveat__text{flex:1;min-width:0}.caveat__text strong{color:var(--ink)}.caveat--warn{background:color-mix(in srgb,var(--warning) 9%,var(--surface));border-color:color-mix(in srgb,var(--warning) 40%,transparent)}.caveat--warn .caveat__icon{color:var(--warning-text)}.caveat--bad{background:color-mix(in srgb,var(--critical) 7%,var(--surface));border-color:color-mix(in srgb,var(--critical) 35%,transparent);color:var(--ink)}.caveat--bad .caveat__icon{color:var(--critical-text)}.caveat--good .caveat__icon{color:var(--good-text)}.caveat--details{display:block;padding:0;background:var(--surface)}.caveat--details summary{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;cursor:pointer;color:var(--ink-secondary);font-weight:var(--weight-medium);list-style:none;border-radius:inherit}.caveat--details summary::-webkit-details-marker{display:none}.caveat--details summary .icon:last-child{margin-left:auto;transition:transform var(--dur-hover) var(--ease-enter)}.caveat--details[open] summary .icon:last-child{transform:rotate(180deg)}.caveat__count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-sunken);border:1px solid var(--line);font-size:var(--text-xs)}.caveat--details ul{margin:0;padding:0 14px 12px 34px;display:grid;gap:4px}.caveat--details[open] ul{animation:rise var(--dur-enter) var(--ease-enter) backwards}.fin-footnote{font-size:var(--text-sm);color:var(--ink-muted);max-width:760px}.link-button{border:0;background:none;padding:6px 0 0;color:var(--accent-text);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer}.link-button:hover{text-decoration:underline}.fin-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.fin-table th{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink-secondary);white-space:nowrap}.fin-table td{padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}.fin-table .num{text-align:right;font-variant-numeric:tabular-nums}.fin-table tbody tr:last-child td{border-bottom:0}.fin-table th:first-child,.fin-table td:first-child{padding-left:0}.fin-table th:last-child,.fin-table td:last-child{padding-right:0}.fin-table--interactive tbody tr{cursor:pointer;transition:background var(--dur-hover) var(--ease-enter)}.fin-table--interactive tbody tr:hover{background:var(--surface-hover)}.fin-table--interactive tbody tr:focus-visible{outline-offset:-2px}.pnl-table td:first-child{white-space:normal;min-width:150px}.pnl-line--sub td:first-child{padding-left:16px;color:var(--ink-secondary);font-size:var(--text-base)}.pnl-line--result td{font-weight:var(--weight-strong);background:var(--surface-sunken)}.pnl-line--result td:first-child{padding-left:10px;border-radius:6px 0 0 6px}.pnl-table th:last-child,.pnl-table td:last-child{padding-right:10px}.pnl-line td .tiny{font-weight:var(--weight-regular)}.pnl-table--wide th:first-child{width:46%}.fin-footnote--in-panel{margin-top:12px}.pnl-line--expense td:first-child{padding-left:16px;color:var(--ink-secondary)}.pnl-line--section td{padding-top:14px;color:var(--ink-muted-aa);font-size:var(--text-sm, 12px);text-transform:none}.debt-view{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.recon-flag{display:inline-block;margin-left:6px}.abc-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.abc-chip{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken);font-size:var(--text-base)}.abc-chip__code,.abc-badge{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:var(--radius-sm);font-weight:var(--weight-strong);font-size:var(--text-sm);flex-shrink:0}.abc-badge{width:22px;height:22px;font-size:var(--text-xs)}.abc-chip--A .abc-chip__code,.abc-badge--A{background:var(--age-4);color:var(--on-age-strong)}.abc-chip--B .abc-chip__code,.abc-badge--B{background:var(--age-2);color:var(--on-age-strong)}.abc-chip--C .abc-chip__code,.abc-badge--C{background:var(--age-0);color:var(--ink)}.drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);opacity:0;transition:opacity var(--dur-drill) var(--ease-enter)}.drawer-layer--open .drawer-backdrop{opacity:1}.drawer-layer--leave .drawer-backdrop{opacity:0;transition:opacity var(--dur-leave) var(--ease-exit)}.drawer{position:absolute;top:12px;right:12px;bottom:12px;display:flex;flex-direction:column;width:min(600px,calc(100vw - 24px));border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lift);overflow:hidden;transition:transform var(--dur-drill) var(--ease-enter),opacity var(--dur-drill) var(--ease-enter)}.drawer-ghost{position:fixed;display:none;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:var(--radius-lg);background:var(--accent-soft);transform-origin:top left;pointer-events:none;transition:transform var(--dur-drill) var(--ease-enter),opacity var(--dur-enter) var(--ease-enter) var(--delay-drill-ghost)}.drawer-layer--flip .drawer-ghost{display:block}.drawer-layer--flip.drawer-layer--open .drawer-ghost{opacity:0}.drawer-layer--flip.drawer-layer--leave .drawer-ghost{opacity:0;transition:transform var(--dur-leave) var(--ease-exit);animation:ghost-return var(--dur-leave) linear both}@keyframes ghost-return{0%{opacity:0}30%{opacity:1}60%{opacity:1}to{opacity:0}}.drawer-layer--flip .drawer{opacity:0}.drawer-layer--flip.drawer-layer--open .drawer{opacity:1;transition:opacity var(--dur-leave) var(--ease-enter) var(--delay-drill-panel)}.drawer-layer--slide.drawer-layer--enter .drawer{transform:translate(40px);opacity:0}.drawer-layer--leave .drawer{opacity:0;transition:transform var(--dur-leave) var(--ease-exit),opacity var(--dur-press) var(--ease-exit)}.drawer-layer--slide.drawer-layer--leave .drawer{transform:translate(40px)}.drawer__grip{display:none}.drawer__header{display:flex;align-items:flex-start;gap:12px;padding:18px 20px 14px;border-bottom:1px solid var(--line)}.drawer__title{font-size:var(--text-xl);font-weight:var(--weight-strong)}.drawer__subtitle{margin-top:2px;font-size:var(--text-base);color:var(--ink-muted)}.drawer__close{display:grid;place-items:center;width:var(--control-h);height:var(--control-h);flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink-secondary);cursor:pointer;transition:background var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.drawer__close:hover{background:var(--surface-hover);color:var(--ink)}.drawer__close:active{transform:scale(var(--press-scale-sm))}.drawer__body{flex:1;overflow-y:auto;padding:18px 20px 24px;overscroll-behavior:contain}.drawer .panel{border-radius:var(--radius)}.drill-step{animation:drill-in var(--dur-section) var(--ease-enter) backwards}@keyframes drill-in{0%{opacity:0;transform:translate(16px)}}.drill-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.drill-kpi{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken)}.drill-kpi__value{margin-top:3px;font-size:var(--text-xl);font-weight:var(--weight-strong);letter-spacing:-.015em}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:14px;font-size:var(--text-base)}.crumbs__item{display:inline-flex;align-items:center;gap:4px}.crumbs__sep{color:var(--ink-muted)}.crumbs .link-button{padding:0}@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid--3,.kpi-grid--n3{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-grid--n2{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid--n1,.fin-grid--main{grid-template-columns:minmax(0,1fr)}.buckets{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.fin-grid--half{grid-template-columns:minmax(0,1fr)}.fin-tabs{display:flex;gap:2px;margin:-8px -16px 16px;padding:0 8px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.fin-tabs::-webkit-scrollbar{display:none}}@media(max-width:640px){.fin-toolbar{gap:8px}.period{flex:1 1 100%;justify-content:space-between;height:48px}.period__step{width:44px;height:44px}.city{height:48px}.segmented__option{min-height:40px}.segmented--sm .segmented__option{min-height:38px}.panel__actions .btn,.signals__more,.panel__content>.link-button{min-height:44px}.drawer__grip{display:flex}.fin-tabs{margin:-6px -12px 14px;padding:0 4px}.drawer__header{padding-top:6px}.drawer__close{width:44px;height:44px}.period__label{flex:1;width:auto}.fin-toolbar .segmented,.city{flex:1 1 auto}.city__select{width:100%;max-width:none}.freshness{flex:1 1 100%}.kpi-grid,.kpi-grid--3,.kpi-grid--n3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi-grid--n1{grid-template-columns:minmax(0,1fr)}.kpi-grid--3>:last-child,.kpi-grid--n3>:last-child{grid-column:1 / -1}.kpi{min-height:0;padding:13px 14px 12px}.kpi__value{font-size:var(--text-xl)}.kpi__foot{flex-direction:column;align-items:stretch}.kpi__main{flex-wrap:wrap}.kpi__main .sparkline{flex:1 1 100%;height:26px}.panel__header{padding:14px 14px 0}.panel__body{padding:12px 14px 14px}.columns__body{grid-template-columns:40px minmax(0,1fr);gap:6px}.columns__labels{margin-left:46px}.columns__group{width:84%}.skeleton-columns{padding-left:46px;gap:6px}.buckets{grid-template-columns:repeat(2,minmax(0,1fr))}.pnl-table th:nth-child(3),.pnl-table td:nth-child(3){display:none}.pnl-table td:first-child{min-width:0}.pnl-table td{padding-left:6px;padding-right:6px}.abc-summary{grid-template-columns:minmax(0,1fr)}.drawer{top:auto;left:0;right:0;bottom:0;width:100%;max-height:88dvh;border-radius:16px 16px 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom)}.drawer-layer--slide.drawer-layer--enter .drawer,.drawer-layer--slide.drawer-layer--leave .drawer{transform:translateY(48px)}}@media(prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:fin-fade-out var(--dur-reduce) linear both!important}::view-transition-new(*){animation:fin-fade-in var(--dur-reduce) linear both!important}.cascade,.fin-appear,.fin-notices>*,.fin-section,.drill-step,.notes[open] ul{animation:fin-fade-in var(--dur-reduce) linear backwards!important;animation-delay:0s!important}.slide__item--in,.slide__item--out{animation:none!important}.slide__item--out{display:none}.bars__bar,.bars__reference,.bars__reference-line,.columns__bar,.columns__net,.segments__part,.segments__gap,.segmented__thumb{transition:none!important}.sparkline__line{animation:none;stroke-dashoffset:0}.sparkline__dot,.sparkline__ghost{animation:none;opacity:1}.period__step:active:not(:disabled),.segmented__option:active,.drawer__close:active,.top-overdue__row:active,.kpi--link:hover,.kpi--link:active,.signal:hover,.signal:active,.bars--interactive .bars__row:active,.signal:hover .signal__arrow{transform:none}.drawer,.drawer-layer--slide.drawer-layer--enter .drawer,.drawer-layer--slide.drawer-layer--leave .drawer{transform:none!important;transition:opacity var(--dur-reduce) linear!important}.drawer-layer--enter .drawer{opacity:0}.panel--refreshing .panel__progress{animation:none;transform:scaleX(1);opacity:.5}.drawer-layer--flip.drawer-layer--leave .drawer-ghost{animation:none}.columns-fill>.columns{transition:none}.drawer-ghost{display:none!important}.drawer-layer--flip .drawer{transition:opacity var(--dur-reduce) linear!important;transition-delay:0s!important}}.fin-grid--main{align-items:stretch}.fin-col{display:flex;flex-direction:column;gap:18px;min-width:0}.fin-col>:last-child{flex:1 0 auto}.panel--fill{display:flex;flex-direction:column}.panel--fill>.panel__body,.panel--fill .panel__content,.panel--fill .fill-stack{flex:1 0 auto;display:flex;flex-direction:column}.columns-fill{position:relative;flex:1 0 auto}.columns-fill>.columns{position:absolute;top:0;left:0;right:0}.fill-rows{position:relative;flex:1 0 0;min-height:0}.fill-rows__inner{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.top-overdue{display:flex;flex-direction:column;padding-top:4px;border-top:1px solid var(--line)}.top-overdue__title{padding:6px 0 2px;font-size:var(--text-sm);color:var(--ink-muted)}.top-overdue__row{display:flex;align-items:center;gap:12px;height:36px;margin:0 -8px;padding:0 8px;border:0;border-radius:var(--radius-sm);background:none;color:inherit;font:inherit;font-size:var(--text-base);text-align:left;cursor:pointer;transition:background var(--dur-hover) var(--ease-enter)}.top-overdue__row:hover{background:var(--surface-hover)}.top-overdue__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-secondary)}.signal--skeleton{cursor:default}.signal--skeleton:before{background:var(--line-strong)}.signal--skeleton .signal__badge{background:none;padding:1px 0}@media(max-width:1180px){.fin-grid--main{display:flex;flex-direction:column;align-items:stretch}.fin-col{display:contents}.fin-col>:last-child{flex:none}.fin-col--main>:nth-child(1){order:1}.fin-col:not(.fin-col--main)>:nth-child(1){order:2}.fin-col--main>:nth-child(2){order:3}.fin-col:not(.fin-col--main)>:nth-child(2){order:4}}.ageing-legend .chart-legend__swatch{width:12px;height:12px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 14%,transparent)}.kpi--skeleton .kpi__label,.kpi--skeleton .kpi__value,.kpi--skeleton .kpi__meta{flex:1 1 auto;min-width:0}.snapshot-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);font-size:var(--text-base);font-weight:var(--weight-strong);white-space:nowrap}.snapshot-chip__icon{color:var(--ink-muted)}.turnover-month{max-width:200px}.stack-rows{display:flex;flex-direction:column;gap:2px;container-type:inline-size}.stack-rows__row{display:grid;grid-template-columns:minmax(110px,30%) minmax(0,1fr) 96px;align-items:center;column-gap:12px;width:100%;min-height:48px;padding:6px 8px;border:0;border-radius:var(--radius);background:none;color:inherit;font:inherit;text-align:left}.stack-rows--interactive .stack-rows__row{cursor:pointer;transition:background var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.stack-rows--interactive .stack-rows__row:hover{background:var(--surface-hover)}.stack-rows--interactive .stack-rows__row:active{transform:scale(.99)}.stack-rows__row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.stack-rows__track{display:block;min-width:0}.stack-rows__scale{display:block;transform-origin:left center;transition:transform var(--dur-chart) var(--ease-enter)}.stack-rows__scale .segments{height:16px;border-radius:3px}@container (max-width: 520px){.stack-rows__row{grid-template-columns:minmax(0,1fr) 88px;row-gap:5px}.stack-rows__row .bars__label{grid-column:1 / -1}}.trend-rows{display:flex;flex-direction:column;gap:2px;container-type:inline-size}.trend-rows__row,.trend-rows__axis{display:grid;grid-template-columns:minmax(120px,30%) minmax(0,1fr) 78px;align-items:center;column-gap:14px;width:100%;padding:6px 8px;border:0;border-radius:var(--radius);background:none;color:inherit;font:inherit;text-align:left}.trend-rows__row--button{cursor:pointer;transition:background var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.trend-rows__row--button:hover{background:var(--surface-hover)}.trend-rows__row--button:active{transform:scale(.99)}.trend-rows__row--button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.trend-rows__aside{display:flex;justify-content:flex-end;font-size:var(--text-sm);white-space:nowrap}.trend-rows__axis{padding-top:2px;padding-bottom:0}.mini-columns{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:3px;height:34px}.mini-columns__slot{position:relative;height:100%;display:flex;align-items:flex-end}.mini-columns__bar{display:block;width:100%;height:100%;border-radius:2px 2px 0 0;transform-origin:bottom;transition:transform var(--dur-chart) var(--ease-enter)}.mini-columns__slot:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line-strong)}.mini-columns__slot--missing:after{height:0;background:none;border-top:1px dashed var(--line-strong)}.mini-columns--labels{height:auto;align-items:start}.mini-columns__label--missing{opacity:.6}.mini-columns__label{font-size:var(--text-xs);line-height:1.2;text-align:center;color:var(--ink-muted);white-space:nowrap;overflow:hidden}.mini-columns__label--on{color:var(--ink);font-weight:var(--weight-strong)}@container (max-width: 520px){.trend-rows__row,.trend-rows__axis{grid-template-columns:minmax(0,1fr) 64px;row-gap:6px}.trend-rows__row .bars__label{grid-column:1 / -1}.trend-rows__axis>span:first-child{display:none}.trend-rows__axis>span:last-child{display:none}.trend-rows__axis{grid-template-columns:minmax(0,1fr) 64px}.mini-columns__label:nth-child(2n):not(.mini-columns__label--on){visibility:hidden}.mini-columns__label{overflow:visible}}.insights-buckets{grid-template-columns:repeat(var(--count, 5),minmax(0,1fr))}.single-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:10px 0}.stock-name{max-width:420px;overflow:hidden;text-overflow:ellipsis;font-weight:var(--weight-regular)}.stock-sub{display:none;font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--ink-muted)}.stock-flag{color:var(--critical-text);font-weight:var(--weight-medium)}.ageing-legend__share{font-weight:var(--weight-regular)}@media(max-width:1180px){.insights-buckets{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.insights .panel__header{flex-wrap:wrap}.insights .panel__header>div:first-child{flex-basis:100%}.stock-table th:nth-child(2),.stock-table td:nth-child(2){display:none}.stock-sub{display:block}.insights-buckets{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-name{max-width:200px}.snapshot-chip{flex:1 1 100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.stack-rows__scale,.mini-columns__bar{transition:none!important}.stack-rows--interactive .stack-rows__row:active,.trend-rows__row--button:active{transform:none}}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter/inter-cyrillic-wght-normal.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter/inter-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter/inter-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light;--font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--text-kpi: 28px;--weight-regular: 400;--weight-medium: 500;--weight-strong: 600;--surface: #fcfcfb;--page: #f9f9f7;--surface-raised: #ffffff;--surface-sunken: #f2f2ee;--surface-hover: #f4f4f0;--ink: #0b0b0b;--ink-secondary: #52514e;--ink-muted: #6b6a65;--line: #e1e0d9;--line-strong: #c3c2b7;--ring: rgba(11, 11, 11, .1);--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-1-soft: #cde2fb;--good: #0ca30c;--good-text: #006300;--warning: #fab219;--warning-text: #9a4a12;--serious: #ec835a;--critical: #d03b3b;--critical-text: #c23a3a;--accent: #2a78d6;--accent-text: #2468c4;--accent-fill: #2468c4;--on-accent: #ffffff;--accent-soft: rgba(42, 120, 214, .09);--accent-ink: var(--on-accent);--mode-bg: #0b0b0b;--mode-ink: #f9f9f7;--mode-accent: #fab219;--scrim: rgba(11, 11, 11, .36);--scrim-strong: rgba(11, 11, 11, .5);--radius-lg: 12px;--radius: 8px;--radius-sm: 6px;--radius-pill: 999px;--control-h: 36px;--control-h-sm: 28px;--shadow: 0 1px 2px rgba(11, 11, 11, .04), 0 4px 16px rgba(11, 11, 11, .04);--shadow-lift: 0 2px 4px rgba(11, 11, 11, .05), 0 12px 28px rgba(11, 11, 11, .08);--thumb-shadow: 0 1px 2px rgba(11, 11, 11, .12);--sidebar-width: 248px;--sidebar-rail: 64px;--flow-out: #e34948;--age-0: #b4b3aa;--age-1: #86b6ef;--age-2: #2a78d6;--age-3: #1c5cab;--age-4: #0d366b;--stock-nodate: #dddcd4;--on-age-strong: #ffffff;--ink-muted-aa: var(--ink-muted);--sb-bg: #121211;--sb-raised: #1d1d1b;--sb-ink: #f3f3f1;--sb-ink-secondary: #c9c8c1;--sb-ink-muted: #a3a199;--sb-line: rgba(255, 255, 255, .08);--sb-hover: rgba(255, 255, 255, .06);--sb-active: rgba(255, 255, 255, .1);--sb-accent: #5598e7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--dur-press: .12s;--dur-hover: .16s;--dur-enter: .24s;--dur-section: .26s;--dur-leave: .2s;--dur-chart: .36s;--dur-count: .38s;--dur-drill: .38s;--delay-section: 80ms;--stagger: 25ms;--delay-drill-ghost: calc(var(--dur-drill) - .12s);--delay-drill-panel: calc(var(--dur-drill) - .2s);--dur-loop: 1.3s;--dur-loop-progress: 1.2s;--dur-reduce: .12s;--press-scale: .97;--press-scale-sm: .94;--ease-enter: cubic-bezier(.2, 0, 0, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1)}:root[data-theme=dark]{color-scheme:dark;--surface: #1a1a19;--page: #0d0d0d;--surface-raised: #212120;--surface-sunken: #151514;--surface-hover: #262625;--ink: #ffffff;--ink-secondary: #c3c2b7;--ink-muted: #9a9890;--line: #2c2c2a;--line-strong: #383835;--ring: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-1-soft: #184f95;--good: #0ca30c;--good-text: #3fb950;--warning: #fab219;--warning-text: #f0a070;--serious: #ec835a;--critical: #d03b3b;--critical-text: #f06a66;--accent: #3987e5;--accent-text: #5598e7;--accent-fill: #2563b8;--on-accent: #ffffff;--accent-soft: rgba(57, 135, 229, .16);--mode-bg: #f9f9f7;--mode-ink: #0b0b0b;--mode-accent: #9a4a12;--scrim: rgba(0, 0, 0, .5);--scrim-strong: rgba(0, 0, 0, .62);--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 16px rgba(0, 0, 0, .3);--shadow-lift: 0 2px 4px rgba(0, 0, 0, .4), 0 12px 28px rgba(0, 0, 0, .45);--thumb-shadow: 0 1px 2px rgba(0, 0, 0, .5);--flow-out: #e66767;--age-0: #5a5955;--age-1: #1c5cab;--age-2: #3987e5;--age-3: #6da7ec;--age-4: #b7d3f6;--stock-nodate: #34342f;--on-age-strong: #0b0b0b;--sb-bg: #121211;--sb-raised: #1d1d1b}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);font-size:var(--text-md);font-weight:var(--weight-regular);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv01","cv05"}h1,h2,h3,h4{margin:0;font-weight:var(--weight-strong);letter-spacing:-.011em}h1{font-size:var(--text-2xl);line-height:1.2}h2,h3{font-size:var(--text-lg)}p{margin:0}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}code{font-family:var(--font-mono);font-size:.92em}:where(button,a,[tabindex],summary,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:2px}:where(button,a,[tabindex],summary):focus:not(:focus-visible){outline:none}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em}.app{min-height:100%;display:flex;flex-direction:column}.shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);flex:1;min-height:0}.sidebar{color-scheme:dark;--surface: var(--sb-bg);--surface-raised: var(--sb-raised);--surface-sunken: var(--sb-raised);--surface-hover: var(--sb-hover);--ink: var(--sb-ink);--ink-secondary: var(--sb-ink-secondary);--ink-muted: var(--sb-ink-muted);--line: var(--sb-line);--line-strong: rgba(255, 255, 255, .16);--accent-soft: var(--sb-active);--accent-text: var(--sb-accent);--critical-text: #f06a66;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--sb-bg);color:var(--sb-ink);border-right:1px solid var(--sb-line)}.app--preview .sidebar{top:var(--mode-bar-h, 0px);height:calc(100vh - var(--mode-bar-h, 0px))}.sidebar__brand{padding:20px 20px 16px;display:flex;align-items:center;gap:10px}.sidebar__mark{width:28px;height:28px;border-radius:var(--radius);background:var(--sb-accent);color:var(--sb-bg);display:grid;place-items:center;font-weight:var(--weight-strong);font-size:var(--text-md);flex-shrink:0}.sidebar__names{min-width:0}.sidebar__title{font-weight:var(--weight-strong);font-size:var(--text-md);line-height:1.25}.sidebar__subtitle{font-size:var(--text-sm);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__nav{flex:1;padding:4px 12px 16px;display:flex;flex-direction:column;gap:2px}.nav-group{display:flex;flex-direction:column;gap:2px}.nav-section{margin:14px 0 4px;padding:0 10px;font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.02em;color:var(--ink-muted)}.nav-section--first{margin-top:4px}.nav-item{position:relative;display:flex;align-items:center;gap:10px;min-height:34px;padding:7px 10px;border-radius:var(--radius-sm);color:var(--ink-secondary);font-size:var(--text-base);font-weight:var(--weight-medium);transition:background var(--dur-hover) var(--ease-enter),color var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.nav-item:hover{background:var(--surface-hover);color:var(--ink);text-decoration:none}.nav-item:active{transform:scale(.98)}.nav-item--active{background:var(--sb-active);color:var(--sb-ink)}.nav-item__icon{opacity:.9}.nav-item__pill{position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:2px;background:var(--sb-accent);view-transition-name:fin-nav-pill}.sidebar__footer{position:relative;border-top:1px solid var(--line);padding:12px}.user-chip{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--radius-sm);width:100%;background:none;border:none;cursor:pointer;text-align:left;color:var(--ink);transition:background var(--dur-hover) var(--ease-enter)}.user-chip:hover{background:var(--surface-hover)}.user-chip__text{min-width:0;flex:1;display:flex;flex-direction:column}.user-chip__more{color:var(--ink-muted)}.avatar{width:30px;height:30px;border-radius:50%;background:var(--surface-sunken);border:1px solid var(--line);display:grid;place-items:center;font-size:var(--text-sm);font-weight:var(--weight-strong);color:var(--ink-secondary);flex-shrink:0}.user-chip__name{font-size:var(--text-base);font-weight:var(--weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip__role{font-size:var(--text-sm);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:var(--mode-bar-h, 0px);z-index:10;background:color-mix(in srgb,var(--page) 95%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:14px 28px;display:flex;align-items:center;gap:16px}.topbar__titles{flex:1;min-width:0}.topbar__subtitle{font-size:var(--text-sm);color:var(--ink-muted);margin-top:2px;max-width:72ch}.content{padding:24px 28px 56px;max-width:1440px;width:100%}.grid{display:grid;gap:18px}.grid--kpi{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}.stack{display:flex;flex-direction:column;gap:16px}.stack--sm{gap:var(--space-2)}.stack--md{gap:var(--space-3)}.stack--lg{gap:var(--space-5)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row--tight{gap:6px}.spacer{flex:1}.table-scroll{position:relative;min-width:0}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.table-scroll:before,.table-scroll:after{content:"";position:absolute;top:0;bottom:0;width:16px;pointer-events:none;opacity:0;z-index:3;transition:opacity var(--dur-hover) var(--ease-enter)}.table-scroll:after{right:0;background:linear-gradient(to left,var(--scrim),transparent);opacity:0}.table-scroll:before{left:var(--sticky-width, 0px);background:linear-gradient(to right,var(--scrim),transparent)}.table-scroll--right:after{opacity:.35}.table-scroll--left:before{opacity:.35}table.data{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-base)}table.data th,table.data td{padding:9px 14px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}table.data th{position:sticky;top:0;background:var(--surface-sunken);font-weight:var(--weight-medium);font-size:var(--text-sm);color:var(--ink-secondary);z-index:1;-webkit-user-select:none;user-select:none}table.data th.sortable{cursor:pointer}table.data th.sortable:hover{color:var(--ink)}table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}table.data tbody tr{transition:background var(--dur-hover) var(--ease-enter)}table.data tbody tr:hover{background:var(--surface-hover)}table.data tbody tr:last-child td{border-bottom:none}table.data tfoot td{background:var(--surface-sunken);font-weight:var(--weight-strong);border-top:1px solid var(--line-strong);border-bottom:none;position:sticky;bottom:0}.sticky-first table th:first-child,.sticky-first table td:first-child{position:sticky;left:0;z-index:2;background:var(--surface)}.sticky-first table th:first-child{z-index:4;background:var(--surface-sunken)}.sticky-first table tfoot td:first-child{background:var(--surface-sunken)}.sticky-first table tbody tr:hover td:first-child{background:var(--surface-hover)}.density-compact table.data th,.density-compact table.data td{padding:5px 10px}.cell-muted{color:var(--ink-muted)}.cell-negative{color:var(--critical-text)}.sort-arrow{display:inline-flex;margin-left:4px;opacity:.6;vertical-align:-2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:var(--control-h);padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--dur-hover) var(--ease-enter),border-color var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.btn:hover:not(:disabled){background:var(--surface-hover);text-decoration:none}.btn:active:not(:disabled){transform:scale(var(--press-scale))}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--accent-fill);border-color:var(--accent-fill);color:var(--on-accent)}.btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent-fill) 88%,var(--ink))}.btn--ghost{border-color:transparent;background:transparent}.btn--ghost:hover:not(:disabled){background:var(--surface-hover)}.btn--danger{color:var(--critical-text);border-color:color-mix(in srgb,var(--critical) 35%,transparent)}.btn--sm{height:var(--control-h-sm);padding:0 10px;font-size:var(--text-sm)}.btn--icon{width:var(--control-h);padding:0}.btn--sm.btn--icon{width:var(--control-h-sm)}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field__label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink-secondary)}.input,.select{height:var(--control-h);padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background-color:var(--surface-raised);min-width:0;width:100%;font-size:var(--text-md);transition:border-color var(--dur-hover) var(--ease-enter)}textarea.input{height:auto;padding:8px 10px}.input:focus,.select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236b6a65' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:14px 14px}:root[data-theme=dark] .select,.sidebar .select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%239a9890' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E")}.input--sm,.select--sm{height:var(--control-h-sm);font-size:var(--text-sm);width:auto}.select--sm{padding:0 28px 0 8px;background-position:right 8px center}.chip-group{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:5px;height:var(--control-h-sm);padding:0 11px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;transition:background var(--dur-hover) var(--ease-enter),border-color var(--dur-hover) var(--ease-enter),color var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.chip:hover:not(:disabled){background:var(--surface-hover)}.chip:active:not(:disabled){transform:scale(var(--press-scale))}.chip:disabled{opacity:.55;cursor:default}.chip--on{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:var(--accent-text)}.chip--on:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 14%,transparent)}.chip__check{display:none;margin-left:-3px}.chip--on .chip__check{display:inline-block;animation:check-in var(--dur-hover) var(--ease-enter) backwards}@keyframes check-in{0%{opacity:0;transform:scale(.6)}}.tabs{position:relative;display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border:0;background:none;color:var(--ink-secondary);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;transition:color var(--dur-hover) var(--ease-enter)}.tab:hover{color:var(--ink);text-decoration:none}.tab--on{color:var(--ink);font-weight:var(--weight-strong)}.tabs__bar{position:absolute;left:0;bottom:0;width:100px;height:2px;border-radius:2px;background:var(--accent);transform-origin:left center;pointer-events:none}.tabs__bar--ready{transition:transform var(--dur-section) var(--ease-enter)}.tab-panel{animation:fin-enter var(--dur-section) var(--ease-enter) backwards}@property --fade-start{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --fade-end{syntax: "<length>"; inherits: false; initial-value: 0px;}@supports (animation-timeline: scroll()){.tabs,.fin-tabs{-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--fade-start),#000 calc(100% - var(--fade-end)),transparent);mask-image:linear-gradient(to right,transparent,#000 var(--fade-start),#000 calc(100% - var(--fade-end)),transparent);animation:scroll-fade linear both;animation-timeline:scroll(self inline)}}@keyframes scroll-fade{0%{--fade-start: 0px;--fade-end: 24px}8%{--fade-start: 24px}92%{--fade-end: 24px}to{--fade-start: 24px;--fade-end: 0px}}.tab__count{color:var(--ink-muted);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-medium);border:1px solid var(--line);background:var(--surface-sunken);color:var(--ink-secondary);white-space:nowrap}.badge--good{color:var(--good-text);border-color:color-mix(in srgb,var(--good) 30%,transparent);background:color-mix(in srgb,var(--good) 8%,transparent)}.badge--warn{color:var(--warning-text);border-color:color-mix(in srgb,var(--warning) 45%,transparent);background:color-mix(in srgb,var(--warning) 12%,transparent)}.badge--bad{color:var(--critical-text);border-color:color-mix(in srgb,var(--critical) 32%,transparent);background:color-mix(in srgb,var(--critical) 8%,transparent)}.badge--accent{color:var(--accent-text);border-color:color-mix(in srgb,var(--accent) 32%,transparent);background:var(--accent-soft)}.toggle{display:inline-flex;align-items:flex-start;gap:10px;cursor:pointer;min-height:24px}.toggle--disabled{cursor:default;opacity:.6}.toggle__input{position:absolute;opacity:0;width:1px;height:1px}.toggle__track{position:relative;flex-shrink:0;width:34px;height:20px;margin-top:1px;border-radius:var(--radius-pill);background:var(--line-strong);transition:background var(--dur-hover) var(--ease-enter)}.toggle__thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-raised);box-shadow:var(--thumb-shadow);transition:transform var(--dur-enter) var(--ease-enter)}.toggle__input:checked+.toggle__track{background:var(--accent-fill)}.toggle__input:checked+.toggle__track .toggle__thumb{transform:translate(14px)}.toggle__input:focus-visible+.toggle__track{outline:2px solid var(--accent);outline-offset:2px}.toggle__text{display:flex;flex-direction:column;min-width:0}.toggle__label{font-size:var(--text-md);font-weight:var(--weight-medium)}.toggle__hint{font-size:var(--text-sm);color:var(--ink-muted)}.empty{display:flex;flex-direction:column;align-items:center;padding:40px 24px;text-align:center;color:var(--ink-muted)}.empty__icon{color:var(--ink-muted)}.empty__title{margin-top:10px;font-weight:var(--weight-strong);color:var(--ink-secondary)}.empty__hint{margin-top:4px;font-size:var(--text-base);max-width:460px}.empty__action{margin-top:12px}.skeleton{background:linear-gradient(90deg,var(--surface-sunken) 25%,var(--surface-hover) 50%,var(--surface-sunken) 75%);background-size:200% 100%;animation:shimmer var(--dur-loop) linear infinite;border-radius:var(--radius-sm)}.skeleton--text{display:inline-block;height:.8em;vertical-align:middle;max-width:100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-table{display:flex;flex-direction:column}.skeleton-table__row{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:24px;align-items:center;height:40px;padding:0 14px;border-bottom:1px solid var(--line)}.skeleton-table__row:first-child{background:var(--surface-sunken)}.skeleton-table__row>:not(:first-child){justify-self:end}.chart-legend{display:flex;flex-wrap:wrap;gap:14px;padding:0 4px 10px;font-size:var(--text-base);color:var(--ink-secondary)}.chart-legend__item{display:flex;align-items:center;gap:6px}.chart-legend--tight{padding:0;font-size:var(--text-sm);gap:6px 16px}.chart-legend__swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.login{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr);place-items:start center;padding:max(24px,14vh) 16px 24px;background:radial-gradient(1000px 500px at 15% -10%,var(--accent-soft),transparent 60%),var(--page)}.login__card{width:100%;max-width:396px;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:28px}.login__card{view-transition-name:login-card}.login__notice{animation:rise var(--dur-enter) var(--ease-enter) var(--delay-section) backwards}:root[data-vt=login]::view-transition-old(login-card){animation:login-leave var(--dur-leave) var(--ease-exit) both}:root[data-vt=login]::view-transition-new(root){animation:fade-in var(--dur-section) var(--ease-enter) var(--delay-section) both}:root[data-vt=logout]::view-transition-old(root){animation:fade-out var(--dur-leave) var(--ease-exit) both}:root[data-vt=logout]::view-transition-new(login-card){animation:rise var(--dur-section) var(--ease-enter) var(--delay-section) both}@keyframes login-leave{to{opacity:0;transform:scale(.98)}}@keyframes fade-out{to{opacity:0}}.login__brand{display:flex;align-items:center;gap:11px;margin-bottom:22px}.login__demo{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.login__demo-title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink-muted);margin-bottom:9px}.demo-user{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 8px;width:100%;min-width:0;padding:6px 8px;border-radius:var(--radius-sm);border:none;background:none;cursor:pointer;text-align:left;font-size:var(--text-base);transition:background var(--dur-hover) var(--ease-enter)}.demo-user:hover{background:var(--surface-hover)}.demo-user__name{font-weight:var(--weight-medium);overflow-wrap:anywhere}.demo-user__role{color:var(--ink-muted);font-size:var(--text-sm)}.mono{font-variant-numeric:tabular-nums}.warning-text{color:var(--warning-text)}.muted{color:var(--ink-muted)}.secondary{color:var(--ink-secondary)}.small{font-size:var(--text-base)}.tiny{font-size:var(--text-sm)}.strong{font-weight:var(--weight-strong)}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.input--sm{padding:0 8px}.report-period{gap:8px 12px}.report-period__hint{color:var(--warning-text)}.divider{height:1px;background:var(--line);margin:4px 0}.matrix-cell{width:36px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink-muted);cursor:pointer;display:grid;place-items:center;padding:0;transition:background var(--dur-hover) var(--ease-enter),border-color var(--dur-hover) var(--ease-enter)}.matrix-cell:hover{background:var(--surface-hover)}.matrix-cell--allow{background:color-mix(in srgb,var(--good) 14%,transparent);border-color:color-mix(in srgb,var(--good) 45%,transparent);color:var(--good-text)}.matrix-cell--deny{background:color-mix(in srgb,var(--critical) 12%,transparent);border-color:color-mix(in srgb,var(--critical) 42%,transparent);color:var(--critical-text)}.delta{display:inline-flex;align-items:center;gap:3px;font-variant-numeric:tabular-nums;font-weight:var(--weight-medium);white-space:nowrap}.delta .icon{vertical-align:0}.delta--up{color:var(--good-text)}.delta--down{color:var(--critical-text)}.delta--flat{color:var(--ink-muted)}.menu-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25}.menu{position:absolute;bottom:calc(100% + 6px);left:12px;right:12px;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow);padding:5px;z-index:30;animation:rise var(--dur-enter) var(--ease-enter) backwards}.menu__item{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:0 10px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;text-align:left;font-size:var(--text-base);color:var(--ink);transition:background var(--dur-hover) var(--ease-enter)}.menu__item:hover{background:var(--surface-hover)}.menu__item--danger{color:var(--critical-text)}.menu__item .icon{color:var(--ink-muted)}.menu__item--danger .icon{color:inherit}.menu__header{padding:8px 10px 6px;border-bottom:1px solid var(--line);margin-bottom:4px}.menu__label{padding:8px 10px 4px;font-size:var(--text-xs);color:var(--ink-muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim-strong);display:grid;place-items:center;padding:24px;z-index:100;animation:fade-in var(--dur-enter) var(--ease-enter) backwards}.modal{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);padding:22px;animation:rise var(--dur-enter) var(--ease-enter) backwards}.modal__title{margin-bottom:14px}.modal-backdrop--leave{animation:fade-out var(--dur-leave) var(--ease-exit) forwards;pointer-events:none}.modal-backdrop--leave .modal{animation:lift-out var(--dur-leave) var(--ease-exit) forwards}@keyframes lift-out{to{opacity:0;transform:translateY(-4px)}}.dropzone{border:1.5px dashed var(--line-strong);border-radius:var(--radius-lg);padding:34px 20px;text-align:center;background:var(--surface-sunken);transition:border-color var(--dur-hover) var(--ease-enter),background var(--dur-hover) var(--ease-enter);cursor:pointer}.dropzone:hover,.dropzone--over{border-color:var(--accent);background:var(--accent-soft)}.dropzone__icon{color:var(--ink-muted)}.dropzone__title{margin-top:8px;font-weight:var(--weight-medium)}.dropzone__hint{margin-top:3px;font-size:var(--text-base);color:var(--ink-muted)}.token-value{display:block;padding:10px 12px;border-radius:var(--radius);background:var(--surface-sunken);border:1px solid var(--line);font-family:var(--font-mono);font-size:var(--text-base);word-break:break-all;-webkit-user-select:all;user-select:all}.report-tile{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);color:inherit;transition:border-color var(--dur-hover) var(--ease-enter),background var(--dur-hover) var(--ease-enter)}.report-tile:hover{border-color:var(--accent);background:var(--surface-hover);text-decoration:none}.progress{height:6px;border-radius:3px;background:var(--surface-sunken);border:1px solid var(--line);overflow:hidden}.progress__fill{height:100%;background:var(--accent);transform-origin:left center;transition:transform var(--dur-chart) var(--ease-enter)}.sidebar__toggle{display:none;margin-left:auto;width:40px;height:40px;border:1px solid var(--sb-line);border-radius:var(--radius);background:transparent;cursor:pointer;align-items:center;justify-content:center;transition:background var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.sidebar__toggle:active{transform:scale(.94)}.sidebar__toggle-bars,.sidebar__toggle-bars:before,.sidebar__toggle-bars:after{display:block;width:16px;height:2px;border-radius:1px;background:var(--sb-ink);transition:transform var(--dur-enter) var(--ease-enter),opacity var(--dur-hover) var(--ease-enter)}.sidebar__toggle-bars{position:relative}.sidebar__toggle-bars:before,.sidebar__toggle-bars:after{content:"";position:absolute;left:0}.sidebar__toggle-bars:before{transform:translateY(-5px)}.sidebar__toggle-bars:after{transform:translateY(5px)}.sidebar--open .sidebar__toggle-bars{background:transparent}.sidebar--open .sidebar__toggle-bars:before{transform:rotate(45deg)}.sidebar--open .sidebar__toggle-bars:after{transform:rotate(-45deg)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@keyframes fade-in{0%{opacity:0}}.app--preview{--mode-bar-h: 44px}.mode-bar{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:12px;height:var(--mode-bar-h);padding:0 20px;background:var(--mode-bg);color:var(--mode-ink);font-size:var(--text-base);color-scheme:dark}:root[data-theme=dark] .mode-bar{color-scheme:light}.mode-bar .icon{color:var(--mode-accent)}.mode-bar__text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-bar__roles,.mode-bar__note{opacity:.75}.mode-bar__exit{background:transparent;color:var(--mode-ink);border-color:color-mix(in srgb,var(--mode-ink) 40%,transparent)}.mode-bar__exit:hover:not(:disabled){background:color-mix(in srgb,var(--mode-ink) 12%,transparent)}.app--preview:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;border:3px solid var(--mode-bg);pointer-events:none;z-index:59}.nav-item__count{margin-left:auto;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--ink-muted)}.catalog-search{width:100%;max-width:420px}.catalog-group__title{margin:0 0 8px;font-size:var(--text-sm);font-weight:var(--weight-strong);color:var(--ink-muted)}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));align-items:start;gap:10px}.catalog-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink);min-width:0;transition:border-color var(--dur-hover) var(--ease-enter),background var(--dur-hover) var(--ease-enter)}a.catalog-card:hover{border-color:var(--line-strong);background:var(--surface-hover);text-decoration:none}.catalog-card__head{display:flex;align-items:flex-start;gap:8px}.catalog-card__title{flex:1;font-weight:var(--weight-strong);font-size:var(--text-md)}.catalog-card__text{font-size:var(--text-base);color:var(--ink-secondary);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.catalog-card--off{background:var(--surface-sunken);cursor:default}.access-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.access-head__who{flex:1;min-width:200px}.access-head__name{font-size:var(--text-lg);font-weight:var(--weight-strong)}.access-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.access-summary__item{padding:10px 12px;border-radius:var(--radius);background:var(--surface-sunken);min-width:0}.access-summary__label{font-size:var(--text-sm);color:var(--ink-muted)}.access-summary__value{font-size:var(--text-md);font-weight:var(--weight-strong);overflow-wrap:anywhere}.access-list{display:flex;flex-direction:column}.access-row{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-top:1px solid var(--line);min-width:0}.access-row:first-child{border-top:none}.access-row__main{flex:1;min-width:0}.access-row__title{font-weight:var(--weight-medium);overflow-wrap:anywhere}.access-row__note{font-size:var(--text-sm);color:var(--ink-secondary);margin-top:2px;overflow-wrap:anywhere}.access-row__note--warn{color:var(--warning-text)}.access-row__side{display:flex;gap:6px;align-items:center;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.access-group+.access-group{margin-top:14px}.access-group__head{display:flex;align-items:center;gap:10px;margin-bottom:4px;flex-wrap:wrap}.access-group__title{font-weight:var(--weight-strong);flex:1}.access-dot{width:8px;height:8px;border-radius:50%;margin-top:7px;flex-shrink:0;background:var(--line-strong)}.access-dot--on{background:var(--good)}.access-dot--off{background:var(--critical)}.metric-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.metric-chip{display:inline-flex;align-items:center;gap:6px;height:var(--control-h-sm);padding:0 10px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);font-size:var(--text-sm);cursor:pointer;max-width:100%;transition:background var(--dur-hover) var(--ease-enter),color var(--dur-hover) var(--ease-enter)}.metric-chip:hover{background:var(--surface-hover)}.metric-chip:disabled{cursor:default;opacity:.7}.metric-chip--hidden{text-decoration:line-through;color:var(--ink-muted);background:var(--surface-sunken)}.metric-chip__mark{display:inline-flex}.access-tabs{display:flex;gap:6px;flex-wrap:wrap}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.content{padding:18px 16px 40px}.topbar{padding:12px 16px;position:static}.topbar h1{font-size:var(--text-xl)}.sidebar{position:sticky;top:var(--mode-bar-h, 0px);z-index:40;height:auto;max-height:100vh;overflow:visible;border-right:none;border-bottom:1px solid var(--sb-line)}.sidebar__brand{padding:10px 16px}.sidebar__toggle{display:inline-flex}.sidebar__nav,.sidebar__footer{display:none}.sidebar--open .sidebar__nav{display:flex;max-height:calc(100vh - 140px);overflow-y:auto;padding:4px 12px 12px;animation:rise var(--dur-enter) var(--ease-enter) backwards}.sidebar--open .sidebar__footer{display:block}}@media(max-width:600px){.access-row{flex-wrap:wrap;gap:6px 10px}.access-row__main{flex:1 1 0}.access-row__side{flex-basis:100%;justify-content:flex-start}.access-dot+.access-row__main+.access-row__side{padding-left:18px}.mode-bar{padding:0 12px}.mode-bar__roles,.mode-bar__note{display:none}.login__card{padding:22px 18px}}@media(prefers-reduced-motion:reduce){.progress__fill,.toggle__thumb,.sidebar__toggle-bars,.sidebar__toggle-bars:before,.sidebar__toggle-bars:after{transition:none}.btn:active:not(:disabled),.chip:active:not(:disabled),.nav-item:active,.sidebar__toggle:active{transform:none}.tabs__bar--ready{transition:none}.login__notice,.tab-panel{animation:fade-in var(--dur-reduce) linear backwards}.skeleton{animation:none;background:var(--surface-sunken)}.sidebar--open .sidebar__nav,.menu,.modal,.chip--on .chip__check{animation:fade-in var(--dur-reduce) linear backwards}}.report-controls__grid{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px 16px;align-items:start}.report-controls__label{padding-top:6px;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink-secondary)}.report-controls__value{min-width:0;display:flex;flex-direction:column;gap:8px}.report-controls__value.chip-group,.report-controls__value.row{flex-direction:row}.back-link{display:inline-flex;align-items:center;gap:4px}@media(max-width:640px){.report-controls__grid{grid-template-columns:minmax(0,1fr);gap:6px}.report-controls__label{padding-top:8px}}.catalog-card__note{margin-top:4px;font-size:var(--text-sm);color:var(--ink-secondary)}table.data tr.row--bad td:first-child{box-shadow:inset 3px 0 0 var(--critical)}.panel__more{padding:10px 14px 12px;border-top:1px solid var(--line)}.panel__more .link-button{padding:0}.matrix th:not(:first-child),.matrix td:not(:first-child){text-align:center}.matrix th:first-child{min-width:260px}.matrix td:first-child{white-space:normal;min-width:220px}.matrix__role{border:0;background:none;padding:2px 6px;border-radius:var(--radius-sm);color:var(--ink);font-weight:var(--weight-strong);cursor:pointer;transition:background var(--dur-hover) var(--ease-enter)}.matrix__role:hover{background:var(--surface-hover)}.matrix__role--on{background:var(--accent-soft);color:var(--accent-text)}.matrix__count{font-weight:var(--weight-regular)}.sticky-first table td.matrix__category,.matrix__category{position:static;background:var(--surface-sunken);font-size:var(--text-xs);font-weight:var(--weight-strong);color:var(--ink-muted);text-align:left!important}.matrix-cell{position:relative}.matrix-cell__part{position:absolute;right:4px;top:4px;width:4px;height:4px;border-radius:50%;background:currentColor}.form-inline{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.form-inline>.field{flex:0 1 220px}.form-inline>.form-inline__action{flex:0 0 auto}.popover{overflow-y:auto;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-lift);animation:rise var(--dur-enter) var(--ease-enter) backwards}.popover__option{display:flex;align-items:center;gap:8px;min-height:32px;padding:0 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base)}.popover__option:hover{background:var(--surface-hover)}.popover__option input{accent-color:var(--accent-fill)}.menu__theme{display:flex;flex-direction:column;gap:4px;padding:4px 6px 8px;border-bottom:1px solid var(--line);margin-bottom:4px}.menu__theme .menu__label{padding:4px 4px 0}.menu__theme .segmented{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.menu__theme .segmented__option{min-width:0;padding:0 6px;overflow:hidden;text-overflow:ellipsis}.content__subtitle{display:none}.sheet-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95}.sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);opacity:0;transition:opacity var(--dur-leave) var(--ease-exit)}.sheet{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;max-height:88dvh;background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0;box-shadow:var(--shadow-lift);transform:translateY(100%);transition:transform var(--dur-leave) var(--ease-exit);padding-bottom:env(safe-area-inset-bottom)}.sheet-layer--open .sheet-scrim{opacity:1;transition:opacity var(--dur-enter) var(--ease-enter)}.sheet-layer--open .sheet{transform:none;transition:transform var(--dur-enter) var(--ease-enter)}.sheet__grip,.drawer__grip{display:flex;justify-content:center;padding:8px 0 2px;touch-action:none}.sheet__handle,.drawer__handle{width:36px;height:4px;border-radius:var(--radius-pill);background:var(--line-strong)}.sheet__header{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 16px;touch-action:none}.sheet__title{flex:1;font-size:var(--text-lg)}.sheet__body{overflow-y:auto;overscroll-behavior:contain;padding:4px 16px 16px}.sheet__footer{padding:12px 16px;border-top:1px solid var(--line);display:flex;gap:8px}.sheet__footer .btn{flex:1;height:44px}.more{display:flex;flex-direction:column;gap:14px}.more__group{display:flex;flex-direction:column}.more__title{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--ink-muted);padding:0 4px 4px}.more__note{font-size:var(--text-sm);color:var(--ink-muted);padding:0 4px 8px}.more__item{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 8px;border:0;background:none;border-radius:var(--radius);color:var(--ink);font-size:var(--text-md);text-align:left;cursor:pointer}.more__item:hover{background:var(--surface-hover);text-decoration:none}.more__item .icon{color:var(--ink-muted)}.more__item--active{background:var(--accent-soft);color:var(--accent-text)}.more__item--active .icon{color:inherit}.more__item--danger{color:var(--critical-text)}.more .menu__theme{border:0;padding:0 4px 8px}.tabbar{display:none}@media(max-width:640px){.shell{display:block}.sidebar{display:none}.topbar{position:sticky;top:var(--mode-bar-h, 0px);height:48px;padding:0 12px 0 16px;gap:8px}.topbar h1{font-size:var(--text-lg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__subtitle,.topbar__theme{display:none}.content{padding:14px 12px calc(84px + env(safe-area-inset-bottom))}.content__subtitle{display:block;margin:-2px 0 14px;font-size:var(--text-sm);color:var(--ink-muted)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);padding:4px 4px env(safe-area-inset-bottom);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.tabbar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;border:0;background:none;border-radius:var(--radius);color:var(--ink-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:color var(--dur-hover) var(--ease-enter),transform var(--dur-press) var(--ease-enter)}.tabbar__item:hover{text-decoration:none;color:var(--ink)}.tabbar__item:active{transform:scale(.94)}.tabbar__item--active{color:var(--accent-text)}.btn{min-height:44px}.btn--sm{min-height:36px}.chip{height:36px}.input,.select{height:44px;font-size:var(--text-lg)}}@media(min-width:901px)and (max-width:1180px){.shell{grid-template-columns:var(--sidebar-rail) minmax(0,1fr)}.sidebar{overflow:visible}.sidebar__brand{justify-content:center;padding:18px 0 12px}.sidebar__names,.nav-item__label,.user-chip__text,.user-chip__more{display:none}.sidebar__nav{padding:4px 10px 16px;overflow-y:auto;overflow-x:visible}.nav-section{height:1px;margin:10px 6px;padding:0;font-size:0;background:var(--sb-line)}.nav-section--first{display:none}.nav-item{justify-content:center;padding:0;min-height:40px}.nav-item__pill{left:-10px}.sidebar__footer{padding:10px}.user-chip{justify-content:center;padding:6px 0}.menu{left:calc(100% + 8px);right:auto;bottom:8px;width:260px}}@media(prefers-reduced-motion:reduce){.sheet,.sheet-layer--open .sheet{transform:none;transition:opacity var(--dur-reduce) linear;opacity:0}.sheet-layer--open .sheet{opacity:1}.tabbar__item:active{transform:none}}.report-filterbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sheet .report-controls{border:0;background:none}.sheet .report-controls>.panel__body{padding:0}.sheet .segmented{display:flex;flex-wrap:wrap;border-radius:var(--radius)}.sheet .segmented__thumb{display:none}.sheet .segmented__option{flex:1 1 auto;border-radius:var(--radius-sm)}.sheet .segmented__option--on{background:var(--surface-raised);box-shadow:var(--thumb-shadow),0 0 0 1px var(--line)}@media(max-width:640px){.table-wrap--cards{overflow:visible}.table-wrap--cards table.data,.table-wrap--cards table.data tbody,.table-wrap--cards table.data tr,.table-wrap--cards table.data td{display:block;width:100%}.table-wrap--cards table.data thead{display:none}.table-wrap--cards table.data tr{padding:10px 14px;border-bottom:1px solid var(--line)}.table-wrap--cards table.data tbody tr:last-child{border-bottom:0}.table-wrap--cards table.data td{position:static;display:flex;justify-content:space-between;gap:12px;padding:2px 0;border:0;white-space:normal;text-align:right;background:none!important;box-shadow:none!important}.table-wrap--cards table.data td:before{content:attr(data-label);flex-shrink:0;color:var(--ink-muted);font-size:var(--text-sm);text-align:left}.table-wrap--cards table.data td:first-child{display:block;text-align:left;font-weight:var(--weight-medium);padding-bottom:4px}.table-wrap--cards table.data td:first-child:before{content:none}.table-wrap--cards table.data td.minor,.table-wrap--cards table.data td:empty{display:none}.table-wrap--cards table.data tr.row--bad{box-shadow:inset 3px 0 0 var(--critical)}.table-wrap--cards+.table-scroll:after,.table-scroll:has(.table-wrap--cards):before,.table-scroll:has(.table-wrap--cards):after{display:none}}@media(max-width:640px){.table-wrap--cards table.data td:has(>.muted:only-child){display:none}}.rail-tip{display:none}@media(min-width:901px)and (max-width:1180px){.rail-tip{position:fixed;left:calc(var(--sidebar-rail) + 6px);z-index:70;display:block;padding:5px 9px;border-radius:var(--radius-sm);background:var(--sb-raised);color:var(--sb-ink);font-size:var(--text-sm);white-space:nowrap;box-shadow:var(--shadow);transform:translateY(-50%);pointer-events:none;animation:fade-in var(--dur-hover) var(--ease-enter) backwards}}.matrix-cell--conflict{border-style:dashed;border-color:var(--warning);color:var(--warning-text);background:color-mix(in srgb,var(--warning) 12%,transparent)}table.data tr.row--group td{position:static;background:var(--surface-sunken);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--ink-muted);padding-top:6px;padding-bottom:6px}@media(max-width:640px){.table-wrap--cards table.data tr.row--group{padding:6px 14px;background:var(--surface-sunken)}.table-wrap--cards table.data tr.row--group td:before{content:none}}.topbar__search{color:var(--ink-secondary);gap:8px}.topbar__search-kbd{margin-left:4px}.palette-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}.palette-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);animation:fade-in var(--dur-enter) var(--ease-enter) backwards}.palette{position:relative;display:flex;flex-direction:column;width:min(620px,100%);max-height:min(560px,76vh);background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);overflow:hidden;animation:palette-in var(--dur-enter) var(--ease-enter) backwards}@keyframes palette-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}}.palette-layer--leave{pointer-events:none}.palette-layer--leave .palette-scrim{animation:fade-out var(--dur-leave) var(--ease-exit) forwards}.palette-layer--leave .palette{animation:lift-out var(--dur-leave) var(--ease-exit) forwards}.palette__search{display:flex;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid var(--line);color:var(--ink-muted)}.palette__input{flex:1;height:52px;border:0;background:none;font-size:var(--text-lg);color:var(--ink);outline:none;min-width:0}.palette__input:focus-visible{outline:none}.palette__list{overflow-y:auto;padding:6px;overscroll-behavior:contain}.palette__group{padding:10px 10px 4px;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--ink-muted)}.palette__item{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:var(--radius-sm);cursor:pointer;color:var(--ink)}.palette__item .icon{color:var(--ink-muted)}.palette__item--active{background:var(--accent-soft)}.palette__item--active .icon{color:var(--accent-text)}.palette__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette__hint{font-size:var(--text-sm);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}.palette__empty{padding:24px 12px;text-align:center;color:var(--ink-muted);font-size:var(--text-base)}.palette__foot{display:flex;gap:16px;padding:8px 14px;border-top:1px solid var(--line);font-size:var(--text-xs);color:var(--ink-muted)}.palette__kbd{display:inline-flex;align-items:center;height:20px;padding:0 6px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;font-family:var(--font);font-size:var(--text-xs);color:var(--ink-muted);background:var(--surface)}@media(max-width:900px){.topbar__search-text,.topbar__search-kbd{display:none}.topbar__search{width:var(--control-h);padding:0}}@media(max-width:640px){.palette-layer{padding:8px}.palette{max-height:calc(100dvh - 16px)}.palette__foot{display:none}.topbar__search{width:44px;min-height:44px}}@media(prefers-reduced-motion:reduce){.palette{animation:fade-in var(--dur-reduce) linear backwards}.palette-layer--leave .palette,.modal-backdrop--leave .modal{animation:fade-out var(--dur-reduce) linear forwards}}.row--end{justify-content:flex-end;flex-wrap:nowrap}.saved-mark{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--good-text);white-space:nowrap;animation:saved-in var(--dur-hover) var(--ease-enter) backwards}.saved-mark--leave{animation:saved-out var(--dur-leave) var(--ease-exit) forwards}@keyframes saved-in{0%{opacity:0;transform:translate(-4px)}}@keyframes saved-out{to{opacity:0}}table.data tbody tr.row--flash td{animation:row-flash var(--dur-chart) var(--ease-exit) backwards}@keyframes row-flash{0%,35%{background-color:var(--accent-soft)}}table.data tbody tr.row--new{animation:rise var(--dur-enter) var(--ease-enter) backwards}table.data tbody tr.row--leave{opacity:0;transition:opacity var(--dur-leave) var(--ease-exit)}.wrap-cell{white-space:normal!important;min-width:200px;max-width:420px}.wrap-cell--wide{min-width:260px;max-width:520px}.search-row{display:flex;gap:8px;align-items:center}.search-row>.input{flex:1 1 auto;min-width:0}.search-row>.btn{flex:0 0 auto}.toast{position:fixed;right:24px;bottom:24px;z-index:120;display:flex;align-items:flex-start;gap:10px;max-width:min(440px,calc(100vw - 32px));padding:12px 8px 12px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-raised);box-shadow:var(--shadow-lift);font-size:var(--text-base);animation:rise var(--dur-enter) var(--ease-enter) backwards}.toast--leave{animation:saved-out var(--dur-leave) var(--ease-exit) forwards;pointer-events:none}.toast__icon{margin-top:2px;color:var(--good-text)}.toast__text{flex:1;min-width:0}@media(max-width:640px){.toast{left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom));max-width:none}}@media(prefers-reduced-motion:reduce){.saved-mark,.toast,table.data tbody tr.row--new{animation:fade-in var(--dur-reduce) linear backwards}table.data tbody tr.row--flash td{animation-duration:var(--dur-reduce)}}.month-picker{flex-wrap:nowrap}.month-picker .select:first-child{width:160px}.month-picker .select:last-child{width:96px}.section-title{margin-top:8px}.panel__pad{padding:12px 18px 16px}@media(max-width:640px){.panel__pad{padding:12px 14px 14px}}@media(max-width:640px){.table-wrap--cards table.data td>.select{flex:0 0 62%;width:62%}.table-wrap--cards table.data td:has(>.row:empty){display:none}}
