:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular: normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light: normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin: normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone: normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands: normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular: normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular: normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-slab-duo-regular: normal 400 1em/1 "Font Awesome 7 Slab Duo";--fa-font-slab-press-duo-regular: normal 400 1em/1 "Font Awesome 7 Slab Press Duo";--fa-font-pixel-regular: normal 400 1em/1 "Font Awesome 7 Pixel";--fa-font-mosaic-solid: normal 900 1em/1 "Font Awesome 7 Mosaic";--fa-font-vellum-solid: normal 900 1em/1 "Font Awesome 7 Vellum";--fa-font-whiteboard-semibold: normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light: normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid: normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid: normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid: normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin: normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular: normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular: normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular: normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular: normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold: normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold: normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold: normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.0714285714em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);inset-inline-start:calc(-1 * var(--fa-li-width, 2em));inset-block-start:.25em}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.fa-layers .svg-inline--fa{top:0;right:0;bottom:0;left:0;margin:auto;position:absolute;transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color, #ff253a);border-radius:var(--fa-counter-border-radius, 1em);box-sizing:border-box;color:var(--fa-inverse, #fff);line-height:var(--fa-counter-line-height, 1);max-width:var(--fa-counter-max-width, 5em);min-width:var(--fa-counter-min-width, 1.5em);overflow:hidden;padding:var(--fa-counter-padding, .25em .5em);right:var(--fa-right, 0);text-overflow:ellipsis;top:var(--fa-top, 0);transform:scale(var(--fa-counter-scale, .25));transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom, 0);right:var(--fa-right, 0);top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom, 0);left:var(--fa-left, 0);right:auto;top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top, 0);right:var(--fa-right, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top right}.fa-layers-top-left{left:var(--fa-left, 0);right:auto;top:var(--fa-top, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:calc((6 / 10 - .375) * 1em)}.fa-xs{font-size:.75em;line-height:calc(1 / 12 * 1em);vertical-align:.125em}.fa-sm{font-size:.875em;line-height:calc(1 / 14 * 1em);vertical-align:calc((6 / 14 - .375) * 1em)}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:calc((6 / 20 - .375) * 1em)}.fa-xl{font-size:1.5em;line-height:calc(1 / 24 * 1em);vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width: auto}.fa-fw,.fa-width-fixed{--fa-width: 1.25em}.fa-canvas-square{padding-block:.125em;margin-block-end:-.125em}.fa-canvas-roomy{padding-block:.25em;padding-inline:.125em;margin-block-end:-.25em;box-sizing:content-box}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin, 2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(-1 * var(--fa-li-width, 2em));position:absolute;text-align:center;width:var(--fa-li-width, 2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color, #eee);border-radius:var(--fa-border-radius, .1em);border-style:var(--fa-border-style, solid);border-width:var(--fa-border-width, .0625em);box-sizing:var(--fa-border-box-sizing, content-box);padding:var(--fa-border-padding, .1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1.5s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-flip-360{animation-name:fa-flip-360;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .75s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-reverse{--fa-animation-direction: reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, steps(8))}.fa-spin-snap{animation-name:fa-spin-snap;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 3s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-snap-4{animation-name:fa-spin-snap-4;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2.4s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-snap-8{animation-name:fa-spin-snap-8;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 4s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-buzz{animation-name:fa-buzz;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .6s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-wag{animation-name:fa-wag;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .9s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-out);transform-origin:bottom center}.fa-float{animation-name:fa-float;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 3s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out);will-change:transform}.fa-swing{animation-name:fa-swing;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1.2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-out);transform-origin:top center}.fa-jello{animation-name:fa-jello;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .9s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-out)}@media (prefers-reduced-motion: reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-flip-360,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse,.fa-buzz,.fa-float,.fa-jello,.fa-spin-snap,.fa-spin-snap-4,.fa-spin-snap-8,.fa-swing,.fa-wag{animation:none!important;transition:none!important}}@keyframes fa-beat{0%{transform:scale(1)}25%{transform:scale(calc(1.25 * var(--fa-beat-scale, 1.25)))}45%{transform:scale(calc(1.22 * var(--fa-beat-scale, 1.22)))}65%{transform:scale(calc(1.25 * var(--fa-beat-scale, 1.25)))}90%{transform:scale(1)}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0);animation-timing-function:var(--fa-animation-timing)}14%{transform:scale(var(--fa-bounce-start-scale-x, 1.06),var(--fa-bounce-start-scale-y, .94)) translateY(var(--fa-bounce-anticipation, 3px));animation-timing-function:cubic-bezier(.33,0,.66,.33)}32%{transform:scale(var(--fa-bounce-jump-scale-x, .94),var(--fa-bounce-jump-scale-y, 1.12)) translateY(calc(-1 * var(--fa-bounce-height, .5em)));animation-timing-function:cubic-bezier(.33,.66,.66,1)}52%{transform:scale(1) translateY(calc(-1 * var(--fa-bounce-height, .5em) * 1.1));animation-timing-function:cubic-bezier(.5,0,1,.5)}70%{transform:scale(var(--fa-bounce-land-scale-x, 1.06),var(--fa-bounce-land-scale-y, .92)) translateY(0);animation-timing-function:cubic-bezier(.33,.33,.66,1)}85%{transform:scale(.98,1.04) translateY(calc(-2px * var(--fa-bounce-rebound, 1)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{0%{opacity:1;transform:scale(1);animation-timing-function:cubic-bezier(.2,0,.4,1)}40%{opacity:var(--fa-fade-opacity, .4);transform:scale(.98);animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:1;transform:scale(1)}}@keyframes fa-beat-fade{0%{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1);animation-timing-function:cubic-bezier(.2,0,.4,1)}25%{opacity:calc(var(--fa-beat-fade-opacity, .4) + .4);transform:scale(var(--fa-beat-fade-scale, 1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}45%{opacity:1;transform:scale(var(--fa-beat-fade-scale, 1.25));animation-timing-function:cubic-bezier(.4,0,.2,1)}65%{opacity:calc(var(--fa-beat-fade-opacity, .4) + .4);transform:scale(var(--fa-beat-fade-scale, 1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1)}}@keyframes fa-flip{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),0);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale, .95)) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),0);animation-timing-function:cubic-bezier(.33,0,.66,.33)}35%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * .6));animation-timing-function:linear}65%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * .5));animation-timing-function:cubic-bezier(.33,.66,.66,1)}92%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * var(--fa-flip-overshoot, 1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -360deg))}}@keyframes fa-flip-360{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),0);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale, .95)) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),0);animation-timing-function:cubic-bezier(.33,0,.66,.33)}50%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * .6));animation-timing-function:cubic-bezier(.33,.66,.66,1)}80%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * var(--fa-flip-overshoot, 1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -360deg))}}@keyframes fa-shake{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,0,.8,1)}8%{transform:rotate(35deg) translate(1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}20%{transform:rotate(-22deg) translate(-1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}35%{transform:rotate(15deg) translate(1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}50%{transform:rotate(-9deg);animation-timing-function:cubic-bezier(.4,0,.6,1)}65%{transform:rotate(5deg);animation-timing-function:cubic-bezier(.4,0,.6,1)}78%{transform:rotate(-3deg);animation-timing-function:cubic-bezier(.4,0,.6,1)}90%{transform:rotate(1deg);animation-timing-function:cubic-bezier(.4,0,.2,1)}to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0,0,.2,1)}12%{transform:rotate(60deg);animation-timing-function:cubic-bezier(.8,0,1,1)}16.67%{transform:rotate(60deg);animation-timing-function:cubic-bezier(0,0,.2,1)}28.67%{transform:rotate(120deg);animation-timing-function:cubic-bezier(.8,0,1,1)}33.33%{transform:rotate(120deg);animation-timing-function:cubic-bezier(0,0,.2,1)}45.33%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(0,0,.2,1)}62%{transform:rotate(240deg);animation-timing-function:cubic-bezier(.8,0,1,1)}66.67%{transform:rotate(240deg);animation-timing-function:cubic-bezier(0,0,.2,1)}78.67%{transform:rotate(300deg);animation-timing-function:cubic-bezier(.8,0,1,1)}83.33%{transform:rotate(300deg);animation-timing-function:cubic-bezier(0,0,.2,1)}95.33%{transform:rotate(360deg);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-4{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0,0,.2,1)}15%{transform:rotate(90deg);animation-timing-function:cubic-bezier(.8,0,1,1)}25%{transform:rotate(90deg);animation-timing-function:cubic-bezier(0,0,.2,1)}40%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(0,0,.2,1)}65%{transform:rotate(270deg);animation-timing-function:cubic-bezier(.8,0,1,1)}75%{transform:rotate(270deg);animation-timing-function:cubic-bezier(0,0,.2,1)}90%{transform:rotate(360deg);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-8{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0,0,.2,1)}9%{transform:rotate(45deg);animation-timing-function:cubic-bezier(.8,0,1,1)}12.5%{transform:rotate(45deg);animation-timing-function:cubic-bezier(0,0,.2,1)}21.5%{transform:rotate(90deg);animation-timing-function:cubic-bezier(.8,0,1,1)}25%{transform:rotate(90deg);animation-timing-function:cubic-bezier(0,0,.2,1)}34%{transform:rotate(135deg);animation-timing-function:cubic-bezier(.8,0,1,1)}37.5%{transform:rotate(135deg);animation-timing-function:cubic-bezier(0,0,.2,1)}46.5%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(0,0,.2,1)}59%{transform:rotate(225deg);animation-timing-function:cubic-bezier(.8,0,1,1)}62.5%{transform:rotate(225deg);animation-timing-function:cubic-bezier(0,0,.2,1)}71.5%{transform:rotate(270deg);animation-timing-function:cubic-bezier(.8,0,1,1)}75%{transform:rotate(270deg);animation-timing-function:cubic-bezier(0,0,.2,1)}84%{transform:rotate(315deg);animation-timing-function:cubic-bezier(.8,0,1,1)}87.5%{transform:rotate(315deg);animation-timing-function:cubic-bezier(0,0,.2,1)}96.5%{transform:rotate(360deg);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(360deg)}}@keyframes fa-buzz{0%{transform:translate(0) rotate(0);animation-timing-function:cubic-bezier(.1,0,.9,1)}5%{transform:translate(var(--fa-buzz-distance, 4px)) rotate(.5deg)}10%{transform:translate(calc(-1 * var(--fa-buzz-distance, 4px))) rotate(-.5deg)}15%{transform:translate(var(--fa-buzz-distance, 4px)) rotate(.3deg)}20%{transform:translate(calc(-1 * var(--fa-buzz-distance, 4px))) rotate(-.3deg)}25%{transform:translate(calc(var(--fa-buzz-distance, 4px) * .7)) rotate(.2deg)}30%{transform:translate(calc(-1 * var(--fa-buzz-distance, 4px) * .7)) rotate(-.2deg)}35%{transform:translate(calc(var(--fa-buzz-distance, 4px) * .4)) rotate(.1deg)}40%{transform:translate(0) rotate(0)}to{transform:translate(0) rotate(0)}}@keyframes fa-wag{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,0,.6,1)}12%{transform:rotate(var(--fa-wag-angle, 12deg));animation-timing-function:cubic-bezier(.4,0,.2,1)}24%{transform:rotate(2deg);animation-timing-function:cubic-bezier(.2,0,.6,1)}36%{transform:rotate(calc(var(--fa-wag-angle, 12deg) * .85));animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{transform:rotate(1deg);animation-timing-function:cubic-bezier(.2,0,.6,1)}58%{transform:rotate(calc(var(--fa-wag-angle, 12deg) * .6));animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-float{0%{transform:translateY(0) translate(0) rotate(0) scale(var(--fa-float-squash-x, 1.02),var(--fa-float-squash-y, .98));animation-timing-function:cubic-bezier(.33,0,.66,.33)}15%{transform:translateY(calc(-.4 * var(--fa-float-height, 6px))) translate(var(--fa-float-drift, 1px)) rotate(var(--fa-float-tilt, 1deg)) scale(1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}35%{transform:translateY(calc(-1 * var(--fa-float-height, 6px))) translate(0) rotate(0) scale(var(--fa-float-stretch-x, .98),var(--fa-float-stretch-y, 1.03));animation-timing-function:cubic-bezier(.5,0,.5,0)}50%{transform:translateY(calc(-.92 * var(--fa-float-height, 6px))) translate(calc(-.5 * var(--fa-float-drift, 1px))) rotate(calc(-.5 * var(--fa-float-tilt, 1deg))) scale(.995,1.01);animation-timing-function:cubic-bezier(.33,0,.66,.33)}70%{transform:translateY(calc(-.3 * var(--fa-float-height, 6px))) translate(calc(-1 * var(--fa-float-drift, 1px))) rotate(calc(-1 * var(--fa-float-tilt, 1deg))) scale(1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(.05 * var(--fa-float-height, 6px))) translate(0) rotate(0) scale(var(--fa-float-squash-x, 1.02),var(--fa-float-squash-y, .98));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:translateY(0) translate(0) rotate(0) scale(var(--fa-float-squash-x, 1.02),var(--fa-float-squash-y, .98))}}@keyframes fa-swing{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,0,.8,1)}8%{transform:rotate(var(--fa-swing-angle, 22deg));animation-timing-function:cubic-bezier(.3,0,.7,1)}18%{transform:rotate(calc(-1 * var(--fa-swing-angle, 22deg) * .85));animation-timing-function:cubic-bezier(.3,0,.7,1)}28%{transform:rotate(calc(var(--fa-swing-angle, 22deg) * .65));animation-timing-function:cubic-bezier(.35,0,.65,1)}38%{transform:rotate(calc(-1 * var(--fa-swing-angle, 22deg) * .45));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:rotate(calc(var(--fa-swing-angle, 22deg) * .25));animation-timing-function:cubic-bezier(.4,0,.6,1)}56%{transform:rotate(calc(-1 * var(--fa-swing-angle, 22deg) * .1));animation-timing-function:cubic-bezier(.4,0,.6,1)}64%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-jello{0%{transform:scale(1);animation-timing-function:cubic-bezier(.2,0,.8,1)}12%{transform:scale(var(--fa-jello-scale-x, 1.15),calc(2 - var(--fa-jello-scale-x, 1.15)));animation-timing-function:cubic-bezier(.3,0,.7,1)}24%{transform:scale(calc(2 - var(--fa-jello-scale-y, 1.12)),var(--fa-jello-scale-y, 1.12));animation-timing-function:cubic-bezier(.3,0,.7,1)}36%{transform:scale(calc(1 + (var(--fa-jello-scale-x, 1.15) - 1) * .5),calc(2 - (1 + (var(--fa-jello-scale-x, 1.15) - 1) * .5)));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:scale(calc(2 - (1 + (var(--fa-jello-scale-y, 1.12) - 1) * .3)),calc(1 + (var(--fa-jello-scale-y, 1.12) - 1) * .3));animation-timing-function:cubic-bezier(.4,0,.6,1)}58%{transform:scale(1.02,.98);animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:scale(1)}to{transform:scale(1)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle, 0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse, #fff)}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-inverse{color:var(--fa-inverse, #fff)}.svg-inline--fa.fa-stack-1x{--fa-width: 1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width: 2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{top:0;right:0;bottom:0;left:0;margin:auto;position:absolute;z-index:var(--fa-stack-z-index, auto)}:root{--color-teal: #00a99d;--color-teal-dark: #007f78;--color-teal-soft: #d3f0ed;--color-coral: #ff6b7a;--color-amber: #f5a623;--color-orange: #ff7a3d;--color-red: #e0395c;--color-green: #2e9e6a;--color-bg: #fbfaf6;--color-surface: #ffffff;--color-surface-2: #f4f1ea;--color-text: #15212a;--color-text-muted: #5b6b75;--color-border: #e8e4dc;--color-border-strong: #cfc8bb;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--shadow-sm: 0 1px 2px rgba(15, 36, 49, .05);--shadow-md: 0 6px 24px rgba(15, 36, 49, .07);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}a{color:var(--color-teal-dark);text-decoration:none}a:hover{color:var(--color-teal)}button{font-family:inherit}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1}.app-footer{border-top:1px solid var(--color-border);padding:18px 32px;color:var(--color-text-muted);font-size:13px;background:var(--color-surface)}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.app-header__inner{max-width:1360px;margin:0 auto;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;color:var(--color-text);font-weight:600;font-size:17px;letter-spacing:-.01em}.brand:hover{color:var(--color-text)}.brand__logo{height:34px;width:auto;display:block}.brand__name{padding-left:14px;border-left:1px solid var(--color-border-strong);font-size:15px;font-weight:500;color:var(--color-text-muted)}.app-header__nav{display:flex;gap:8px;align-items:center}.app-header__user{display:flex;align-items:center;gap:10px;margin-left:8px}.app-header__version{font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--color-teal-dark);background:var(--color-teal-soft);padding:2px 8px;border-radius:999px}.app-header__email{font-size:13px;color:var(--color-text-muted);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navlink{padding:8px 14px;border-radius:999px;color:var(--color-text-muted);font-weight:500;font-size:14px}.navlink:hover{background:var(--color-surface-2);color:var(--color-text)}.navlink--active{background:var(--color-teal-soft);color:var(--color-teal-dark)}.auth-splash{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg)}.auth-splash__spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--color-border-strong);border-top-color:var(--color-teal);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:32px 20px;background:var(--color-bg)}.login__card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:36px 36px 32px}.login__logo{display:block;width:240px;max-width:70%;height:auto;margin:0 auto 22px}.login__intro{text-align:center;margin-bottom:24px}.login__title{margin:0 0 4px;font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.login__sub{margin:0;font-size:14px;color:var(--color-text-muted)}.login__form{display:flex;flex-direction:column;gap:16px}.login__field{display:flex;flex-direction:column;gap:6px}.login__label{font-size:13px;font-weight:500;color:var(--color-text)}.login__input{height:42px;width:100%}.login__submit{width:100%;height:44px;margin-top:4px;font-size:15px}.login__error{margin:0;padding:9px 12px;font-size:13px;color:var(--color-red);background:#fcd9e0;border:1px solid #f3b6c2;border-radius:var(--radius-sm)}.login__foot{margin:0;max-width:420px;text-align:center;font-size:12px;color:var(--color-text-muted)}.page{max-width:1360px;margin:0 auto;padding:24px 32px 32px}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:18px 20px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-border-strong)}.stat-card--teal:before{background:var(--color-teal)}.stat-card--teal-soft:before{background:var(--color-teal-soft)}.stat-card--amber:before{background:var(--color-amber)}.stat-card--orange:before{background:var(--color-orange)}.stat-card--red:before{background:var(--color-red)}.stat-card--neutral:before{background:var(--color-border-strong)}.stat-card__value{font-size:26px;font-weight:700;letter-spacing:-.02em}.stat-card__label{margin-top:4px;color:var(--color-text-muted);font-size:13px;font-weight:500}.stat-card__sub{margin-top:6px;font-size:12px;color:var(--color-text-muted);font-style:italic}.charts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.chart-panel{margin-bottom:0}.pie__body{display:flex;align-items:center;gap:20px;margin-top:10px}.pie__svg{width:140px;height:140px;flex-shrink:0}.pie__legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.pie__legend-item{display:flex;align-items:center;gap:8px;font-size:13px}.pie__swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.pie__legend-label{color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pie__legend-value{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:600;color:var(--color-text)}.pie__legend-pct{font-weight:400;color:var(--color-text-muted)}@media (max-width: 720px){.charts{grid-template-columns:1fr}}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:22px 24px;box-shadow:var(--shadow-sm);margin-bottom:20px}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:18px}.filters__field{display:flex;flex-direction:column;gap:4px;min-width:140px}.filters__field--grow{flex:1 1 240px}.filters__label{font-size:12px;color:var(--color-text-muted);font-weight:500}.input{height:38px;padding:0 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);font:inherit;color:var(--color-text)}.input:focus{outline:2px solid var(--color-teal-soft);border-color:var(--color-teal)}.btn{height:38px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;font-weight:500;font-size:14px}.btn--ghost{background:transparent;border-color:var(--color-border-strong);color:var(--color-text)}.btn--ghost:hover{background:var(--color-surface-2)}.btn--ghost:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--color-teal);border-color:var(--color-teal);color:#fff}.btn--primary:hover{background:var(--color-teal-dark);border-color:var(--color-teal-dark)}.btn--primary:disabled{opacity:.45;cursor:not-allowed}.btn--sm{height:32px;padding:0 12px;font-size:13px}.table-wrap{overflow-x:auto;border-radius:var(--radius-sm)}.site-table{width:100%;border-collapse:collapse;font-size:14px}.site-table th,.site-table td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--color-border);vertical-align:middle}.site-table th{background:var(--color-surface-2);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.site-table tbody tr:hover{background:#00a99d0f}.site-table .num{text-align:right;font-variant-numeric:tabular-nums}.site-table .muted{color:var(--color-text-muted)}.site-table .truncate{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-row{cursor:pointer}.site-row:focus{outline:2px solid var(--color-teal);outline-offset:-2px}.row-name{font-weight:500;color:var(--color-text)}.row-link{color:var(--color-text);font-weight:500}.row-link:hover{color:var(--color-teal-dark);text-decoration:underline}.ext:after{content:" ↗";font-size:11px;opacity:.6}.table-empty{padding:36px;text-align:center;color:var(--color-text-muted);background:var(--color-surface-2);border-radius:var(--radius-sm)}.badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500;letter-spacing:.02em;text-align:center;line-height:1.35}.badge--neutral{background:#ecebe6;color:#5b6b75}.badge--ghost{background:transparent;color:var(--color-text-muted);padding:0}.badge--teal{background:var(--color-teal-soft);color:var(--color-teal-dark)}.badge--amber{background:#fdecc8;color:#8a5a00}.badge--orange{background:#ffdcc6;color:#9c4400}.badge--red{background:#fcd9e0;color:#9c1633}.badge--green{background:#d3f0dc;color:#1e6c45}.badge--lg{font-size:14px;padding:5px 14px;font-weight:600}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:14px;flex-wrap:wrap;gap:12px}.pagination__info{font-size:13px;color:var(--color-text-muted)}.pagination__buttons{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.pagination__pageinfo{padding:0 12px;font-size:13px;color:var(--color-text-muted)}.backlink{display:inline-block;margin-bottom:16px;font-size:14px;color:var(--color-text-muted)}.backlink:hover{color:var(--color-teal-dark)}.detail-header{margin-bottom:18px}.detail-title{margin:0 0 4px;font-size:26px;letter-spacing:-.02em}.detail-link{font-size:14px}.detail-subtitle{margin:0;font-size:14px;color:var(--color-text-muted)}.evaluation-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.evaluation-header__actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.evaluation-header__actions .error{font-size:13px}.detail-rail{display:flex;flex-direction:column;gap:14px}.detail-rail .panel{margin-bottom:0}.detail-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end}.status-control{display:flex;flex-direction:column;gap:4px}.status-control__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.status-select{height:34px;padding:0 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);font:inherit;font-size:14px;color:var(--color-text);cursor:pointer}.status-select:focus{outline:2px solid var(--color-teal-soft);border-color:var(--color-teal)}.status-select:disabled{opacity:.6;cursor:progress}.status-control__error{font-size:12px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.detail-main{min-width:0}.detail-rail{position:sticky;top:20px;align-self:start}.note-form{margin:10px 0 18px}.note-input{height:auto;width:100%;padding:10px 12px;resize:vertical;line-height:1.4}.note-form__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}.note-error{font-size:13px}.note-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.note-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);padding:10px 12px}.note-item__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.note-item__time{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.note-delete{flex-shrink:0;border:none;background:transparent;cursor:pointer;padding:2px 4px;line-height:1;font-size:14px;color:var(--color-text-muted);border-radius:var(--radius-sm);--fa-primary-color: var(--color-red);--fa-secondary-color: var(--color-red);--fa-primary-opacity: 1;--fa-secondary-opacity: .3;transition:color .12s ease,background .12s ease}.note-delete:hover{color:var(--color-red);background:var(--color-surface)}.note-delete:disabled{opacity:.4;cursor:not-allowed}.note-item__text{margin:0;font-size:14px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.note-item__author{margin:6px 0 0;font-size:12px;font-style:italic;color:var(--color-text-muted);text-align:right}.note-item--status{background:var(--color-surface);border-left:3px solid var(--color-teal)}.status-event{display:flex;align-items:flex-start;gap:8px}.status-event__icon{color:var(--color-teal);margin-top:3px;flex-shrink:0;--fa-primary-opacity: 1;--fa-secondary-opacity: .35}.status-event__from{color:var(--color-text-muted);font-size:13px}@media (max-width: 880px){.detail-layout{grid-template-columns:1fr}.detail-rail{position:static}}.block{margin-bottom:16px}.block:last-child{margin-bottom:0}.block__title{margin:0 0 6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.block__value{margin:0;font-size:15px;font-weight:500}.block__list{margin:4px 0 0;padding-left:18px;font-size:14px}.block__list li{margin-bottom:4px}.block__empty{margin:0;color:var(--color-text-muted);font-size:14px;font-style:italic}.rawjson{background:var(--color-surface-2);padding:14px 16px;border-radius:var(--radius-sm);font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,Consolas,monospace;font-size:12px;overflow-x:auto;white-space:pre;color:var(--color-text);margin-top:12px}.rawjson-summary{cursor:pointer;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.rawjson-summary:hover{color:var(--color-text)}.recheck-control{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.rating-banner{display:flex;align-items:center;gap:14px;font-size:18px}.rating-banner__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.panel__heading{margin:0 0 16px;font-size:17px;letter-spacing:-.01em}.detail-grid--tight{gap:14px;margin-bottom:16px}.disclosure-verbatim{margin-bottom:16px}.disclosure-quote{margin:6px 0 0;padding:10px 14px;border-left:3px solid var(--color-teal);background:var(--color-surface-2);border-radius:var(--radius-sm);font-size:14px;line-height:1.5;white-space:pre-wrap}.output-rating__rated{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.output-rating__summary{min-width:0;flex:1 1 auto}.output-rating__actions{flex-shrink:0;display:flex;align-items:center;gap:6px}.output-rating__modify{color:var(--color-text-muted)}.output-rating__delete{color:var(--color-red);--fa-secondary-opacity: .4}.output-rating__comment{margin:8px 0 4px;font-size:15px;line-height:1.5;white-space:pre-wrap}.output-rating__meta{margin:6px 0 0;font-size:12px;color:var(--color-text-muted)}.rating-accepted{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--color-green)}.rating-accepted__icon{--fa-primary-color: var(--color-green);--fa-secondary-color: var(--color-green);--fa-secondary-opacity: .35}.rating-accept-note{display:flex;align-items:center;gap:8px;margin:16px 0 0;font-size:14px;color:var(--color-text-muted)}.rating-accept-note__icon{--fa-primary-color: var(--color-green);--fa-secondary-color: var(--color-green);--fa-secondary-opacity: .35}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f243173;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:24px 26px;width:100%;max-width:520px;max-height:calc(100vh - 40px);overflow-y:auto}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal__title{margin:0;font-size:20px;letter-spacing:-.01em}.modal__close{border:none;background:transparent;cursor:pointer;font-size:18px;color:var(--color-text-muted);padding:4px;line-height:1}.modal__close:hover{color:var(--color-text)}.modal__hint{margin:8px 0 18px;font-size:13px;color:var(--color-text-muted);line-height:1.5}.modal form .filters__label{display:block;margin-bottom:6px}.modal form .input{width:100%}.rating-field-label{margin-top:16px}.rating-textarea{height:auto;width:100%;padding:10px 12px;resize:vertical;line-height:1.4}.modal__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:20px}.modal__actions .error{margin-right:auto;font-size:13px}.error{color:var(--color-red)}@media (max-width: 720px){.app-header__inner,.page{padding:18px}}.forecast-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:16px}.forecast-title{margin:0 0 4px;font-size:26px;letter-spacing:-.02em}.forecast-sub{margin:0;font-size:14px;color:var(--color-text-muted);max-width:66ch}.forecast-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.forecast-refreshed{font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.prov-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 16px;margin-bottom:20px}.prov-legend__label{font-weight:600;color:var(--color-text);margin-right:4px}.badge.prov{font-size:10px;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;vertical-align:middle}.hero-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}.hero-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:20px 22px;position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%}.hero-card--in:before{background:var(--color-teal)}.hero-card--out:before{background:var(--color-orange)}.hero-card--net:before{background:var(--color-border-strong)}.hero-card__label{font-size:13px;font-weight:500;color:var(--color-text-muted)}.hero-card__value{margin:8px 0 10px;font-size:34px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.hero-card__sub{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-muted)}@media (max-width: 900px){.hero-grid{grid-template-columns:1fr}}.metric-flow{display:flex;flex-direction:column}.flow-step{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed var(--color-border)}.flow-step:first-child{grid-template-columns:1fr auto}.flow-step:last-child{border-bottom:none}.flow-op{font-size:18px;font-weight:600;color:var(--color-text-muted);text-align:center}.flow-label{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14.5px}.flow-note{flex-basis:100%;font-size:12px;color:var(--color-text-muted)}.flow-val{font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.flow-step--result{border-top:2px solid var(--color-border-strong);margin-top:2px;padding-top:14px}.flow-step--result .flow-label{font-weight:600}.flow-step--result .flow-val{font-size:20px;color:var(--color-teal-dark)}.chart-block{margin-top:22px}.chart-block__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}.daily-chart{width:100%;height:auto;display:block}.daily-chart__ylabel{fill:var(--color-text-muted);font-size:11px;font-variant-numeric:tabular-nums}.daily-chart__xlabel{fill:var(--color-text-muted);font-size:11px}.qa-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.qa-list li{display:block;font-size:14px;line-height:1.55;color:var(--color-text);padding-left:2px}.qa-list .prov{margin-right:4px}.qa-list code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px;background:var(--color-surface-2);padding:1px 5px;border-radius:4px}.site-table tr.total td{font-weight:700;background:var(--color-surface-2);border-top:1.5px solid var(--color-border-strong)}.site-table tr.hl td{background:var(--color-teal-soft);color:var(--color-teal-dark);font-weight:600}.flow-working{flex-basis:100%;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-top:2px}.calc-working{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11.5px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-top:4px}.window-row{display:flex;align-items:center;gap:12px;margin-bottom:18px}.window-row__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.window-toggle{display:inline-flex;border:1px solid var(--color-border-strong);border-radius:999px;overflow:hidden;background:var(--color-surface)}.window-toggle button{border:none;background:transparent;padding:7px 16px;font-size:13px;font-weight:500;color:var(--color-text-muted);cursor:pointer}.window-toggle button.active{background:var(--color-teal);color:#fff}.window-toggle button:not(.active):hover{background:var(--color-surface-2);color:var(--color-text)}.funding{border-top:3px solid var(--color-teal)}.funding-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:6px}.funding-field{display:flex;flex-direction:column;gap:6px}.funding-field__label{font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px}.funding-field .input{width:100%;height:42px;font-variant-numeric:tabular-nums}.funding-toggle{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:13px;color:var(--color-text);cursor:pointer}.funding-toggle__note{color:var(--color-text-muted)}.funding-verdict{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-top:18px;padding:16px 20px;border-radius:var(--radius-md)}.funding-verdict.short{background:#fcd9e0;border:1px solid #f3b6c2}.funding-verdict.ok{background:#d3f0dc;border:1px solid #b6e0c4}.funding-verdict__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.funding-verdict.short .funding-verdict__label{color:#9c1633}.funding-verdict.ok .funding-verdict__label{color:#1e6c45}.funding-verdict__value{font-size:26px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.funding-verdict.short .funding-verdict__value{color:#9c1633}.funding-verdict.ok .funding-verdict__value{color:#1e6c45}.funding-verdict__note{font-size:13px;color:var(--color-text-muted)}.date-range{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11.5px;font-weight:500;letter-spacing:0;color:var(--color-text-muted);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:999px;padding:1px 8px;white-space:nowrap;vertical-align:middle}.panel__heading .date-range{margin-left:8px;font-weight:500}.flow-label .date-range{flex-shrink:0}.hero-card .date-range{display:inline-block;margin-top:6px}.window-row .date-range{margin-left:4px}.funding-explain{margin-top:10px;padding:14px 16px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.55;color:var(--color-text-muted);max-width:78ch}.funding-explain p{margin:0}.funding-explain strong{color:var(--color-text);font-weight:600}.page--narrow{max-width:780px}.recon-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}.recon-title{margin:0 0 4px;font-size:26px;letter-spacing:-.02em}.recon-sub{margin:0;font-size:14px;color:var(--color-text-muted);max-width:72ch}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.panel-head .panel__heading{margin-bottom:2px}.tiny{font-size:12px}.muted{color:var(--color-text-muted)}.picker{margin-bottom:22px}.picker__label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.picker__req,.picker__opt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:999px;margin-left:6px;vertical-align:middle}.picker__req{background:var(--color-teal-soft);color:var(--color-teal-dark)}.picker__opt{background:var(--color-surface-2);color:var(--color-text-muted)}.picker__input{display:block;width:100%;font:inherit;font-size:14px;padding:10px 12px;border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-2);cursor:pointer}.picker__input:hover{border-color:var(--color-teal)}.picker__hint{margin:8px 0 0;font-size:13px;color:var(--color-text-muted)}.form-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:6px}.form-actions__note{font-size:13px;color:var(--color-text-muted)}.diff{font-variant-numeric:tabular-nums;font-weight:600}.diff--zero{color:var(--color-green)}.diff--open{color:var(--color-red)}.row-open td{background:#fff7ef}.amount{font-variant-numeric:tabular-nums;font-weight:600}.amount--in{color:var(--color-text)}.amount--out{color:var(--color-orange)}.ledger-table{width:100%;border-collapse:collapse;font-size:14.5px;font-variant-numeric:tabular-nums}.ledger-table td{padding:8px 0}.ledger-table td.num{text-align:right;white-space:nowrap}.ledger-table tr.subtotal td{border-bottom:1px solid var(--color-border-strong)}.ledger-table tr.total td{border-top:1px solid var(--color-text);border-bottom:4px double var(--color-text);font-weight:700;padding-top:9px;padding-bottom:9px}.site-table--tight th,.site-table--tight td{padding:7px 10px;font-size:13px}.exc td{vertical-align:top}.exc--done td{opacity:.55}.exc-detail td{background:var(--color-surface-2);padding:0}.exc-panel{padding:16px 18px}.exc-hint{margin:0 0 12px;font-size:13px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.exc-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-top:14px}.exc-learn{margin:10px 0 0}.retailer-hints{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.retailer-hints li{padding:8px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-teal);border-radius:var(--radius-sm);font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;text-decoration:none;white-space:nowrap}a.btn,a.btn:hover{text-decoration:none}a.btn--primary,a.btn--primary:hover{color:#fff}.picker__input{padding:0;display:flex;align-items:center;gap:12px;font-size:14px;color:var(--color-text-muted);overflow:hidden}.picker__input::file-selector-button{height:38px;padding:0 16px;margin:10px 14px 10px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:500;font-size:14px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.picker__input::file-selector-button:hover{background:var(--color-teal-soft);border-color:var(--color-teal);color:var(--color-teal-dark)}.site-table--tight td{padding:10px}.site-table--tight td:last-child,.site-table--tight th:last-child{padding-left:18px;text-align:right;white-space:nowrap;width:1%}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.chip{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-muted);border-radius:999px;padding:5px 13px;font:inherit;font-size:13px;font-weight:500;cursor:pointer}.chip:hover{background:var(--color-surface-2);color:var(--color-text)}.chip--on{background:var(--color-teal-soft);border-color:var(--color-teal);color:var(--color-teal-dark)}.table-wrap--tall{max-height:520px;overflow-y:auto}.src{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px;vertical-align:middle;margin-left:6px;white-space:nowrap;cursor:help}.src--bank{background:#dce9f5;color:#1d4d75}.src--alp{background:var(--color-teal-soft);color:var(--color-teal-dark)}.src--cashflows{background:#ffdcc6;color:#9c4400}.src--calc{background:#ecebe6;color:#5b6b75}.src--you{background:#fdecc8;color:#8a5a00}.ex{position:relative;display:inline-block;margin-left:5px;vertical-align:middle}.ex__mark{width:16px;height:16px;border-radius:50%;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-muted);font-size:10px;font-weight:700;line-height:1;cursor:help;padding:0;display:inline-flex;align-items:center;justify-content:center}.ex__mark:hover,.ex__mark:focus-visible{background:var(--color-teal);border-color:var(--color-teal);color:#fff;outline:none}.ex__bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:260px;background:var(--color-text);color:#fff;font-size:12.5px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;text-align:left;padding:10px 12px;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transition:opacity .12s ease;z-index:60;pointer-events:none}.ex__bubble--wide{width:340px}.ex__bubble:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:var(--color-text)}.ex__mark:hover+.ex__bubble,.ex__mark:focus-visible+.ex__bubble{opacity:1;visibility:visible}.panel-note{background:var(--color-surface-2);border-left:3px solid var(--color-teal);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:16px}.panel-note p{margin:0}.panel-note__what{font-size:14px;color:var(--color-text)}.panel-note__meta{font-size:13px;color:var(--color-text-muted);margin-top:6px!important}.panel-note__meta strong{color:var(--color-text);font-weight:600}.table-wrap{overflow:visible}.table-wrap--tall{overflow-y:auto;overflow-x:auto}.head-action{display:inline-flex;align-items:center}.exc-panel .panel-note{margin-bottom:14px}.posting{margin-top:16px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-green);border-radius:var(--radius-sm)}.posting__head{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:4px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.posting__src{margin:0 0 8px}.posting .ledger-table td{padding:6px 0;font-size:13.5px}.hero-card__sub--stack{flex-direction:column;align-items:flex-start;gap:6px}.swatch-wrap{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0;display:inline-block;border:1px solid rgba(0,0,0,.14)}.swatch--yellow{background:#f7d774}.swatch--green{background:#7fc99a}.swatch--blue{background:#8ab6e0}.swatch--red{background:#e4726f}.swatch--lilac{background:#c3a6dd}.swatch--novuna{background:#b9b3a6}.swatch--none{background:transparent;border-style:dashed}.swatch__label{font-size:12.5px;color:var(--color-text-muted)}.colour-picker{display:flex;flex-direction:column;gap:6px}.colour-picker__row{display:flex;gap:8px;flex-wrap:wrap}.colour-opt{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-muted);border-radius:999px;padding:6px 13px;font:inherit;font-size:13px;cursor:pointer}.colour-opt:hover{background:var(--color-surface-2);color:var(--color-text)}.colour-opt--on{border-color:var(--color-teal);background:var(--color-teal-soft);color:var(--color-teal-dark);font-weight:600}.colour-legend{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:13px;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:11px 16px;margin-bottom:18px}.colour-legend__label{font-weight:600;color:var(--color-text)}.hero-card{overflow:visible}.hero-card:before{border-radius:var(--radius-md) 0 0 var(--radius-md)}.hero-card:hover,.hero-card:focus-within{z-index:5}.stat-card{overflow:visible}.stat-card:before{border-radius:var(--radius-md) 0 0 var(--radius-md)}.panel{overflow:visible}.btn--danger{background:var(--color-red);border-color:var(--color-red);color:#fff}.btn--danger:hover{background:#c22d4d;border-color:#c22d4d}.row-actions{text-align:right;white-space:nowrap;width:1%}.confirm{display:inline-flex;align-items:center;gap:8px}.head-action{gap:10px}.swatch--circle{background:#5fb8d6}.review{display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;max-width:1360px;margin:0 auto;min-height:calc(100vh - 140px)}.review__queue{border-right:1px solid var(--color-border);background:var(--color-surface);display:flex;flex-direction:column;max-height:calc(100vh - 140px);position:sticky;top:0}.review__queue-head{padding:22px 22px 14px;border-bottom:1px solid var(--color-border)}.review__title{margin:0 0 3px;font-size:18px;letter-spacing:-.01em}.review__progress{height:4px;border-radius:999px;background:var(--color-surface-2);margin:12px 0 10px;overflow:hidden}.review__progress span{display:block;height:100%;background:var(--color-teal);transition:width .2s ease}.review__back{color:var(--color-text-muted)}.review__list{list-style:none;margin:0;padding:6px;overflow-y:auto;flex:1}.review__item{width:100%;display:flex;align-items:center;gap:10px;padding:9px 12px;border:none;background:transparent;border-radius:var(--radius-sm);font:inherit;font-size:13.5px;cursor:pointer;text-align:left}.review__item:hover{background:var(--color-surface-2)}.review__item--on{background:var(--color-teal-soft)}.review__item--done{opacity:.5}.review__dot{width:7px;height:7px;border-radius:50%;background:var(--color-teal);flex-shrink:0}.review__dot--done{background:var(--color-border-strong)}.review__item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.review__item-amt{font-variant-numeric:tabular-nums;font-size:13px;white-space:nowrap}.review__pane{padding:26px 30px 60px;min-width:0}.review__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--color-border);margin-bottom:22px}.review__eyebrow{font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:8px}.review__payer{margin:0 0 6px;font-size:27px;letter-spacing:-.02em}.review__sub{margin:0;font-size:14px;color:var(--color-text-muted)}.review__amount{font-size:34px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}.review__label{font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin:4px 0 12px}.cand{width:100%;display:grid;grid-template-columns:34px minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:18px;padding:15px 18px;margin-bottom:10px;background:var(--color-surface);border:1px solid var(--color-teal-soft);border-radius:var(--radius-md);cursor:pointer;font:inherit;text-align:left}.cand:hover:not(:disabled){border-color:var(--color-teal);background:#f4fbfa}.cand:disabled{cursor:not-allowed;opacity:.55}.cand--weak{border-color:var(--color-border);background:var(--color-surface-2)}.cand__rank{width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.cand__main{display:flex;flex-direction:column;gap:3px;min-width:0}.cand__title{font-size:15px;color:var(--color-text)}.cand__title code{font-size:14px}.cand__meta{font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.cand__why{font-size:13px;color:var(--color-text-muted)}.cand__amt{font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.review__none{margin-bottom:20px}.review__manual{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin:22px 0 18px}.review__manual .filters__field--grow{flex:1 1 280px}.review__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.review__keys{margin-top:16px}.review__empty{padding:60px;text-align:center;color:var(--color-text-muted)}@media (max-width: 940px){.review{grid-template-columns:1fr}.review__queue{position:static;max-height:320px;border-right:none;border-bottom:1px solid var(--color-border)}.review__pane{padding:22px 18px 50px}}.panel-head__actions{display:inline-flex;align-items:center;gap:12px}
