: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);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.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-block-start:.25em;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.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);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:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.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:0 0}.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{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.0833333em}.fa-sm{vertical-align:.0535715em;font-size:.875em;line-height:.0714286em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.0416667em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-canvas-square{margin-block-end:-.125em;padding-block:.125em}.fa-canvas-roomy{box-sizing:content-box;margin-block-end:-.25em;padding-block:.25em;padding-inline:.125em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.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}.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}.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{transition:none!important;animation: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%{animation-timing-function:var(--fa-animation-timing);transform:scale(1)translateY(0)}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, 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;animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}40%{opacity:var(--fa-fade-opacity,.4);animation-timing-function:cubic-bezier(.4,0,.6,1);transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes fa-beat-fade{0%{opacity:var(--fa-beat-fade-opacity,.4);animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(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), 0deg);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), 0deg);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), 0deg);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), 0deg);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%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(35deg)translate(1px)}20%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(-22deg)translate(-1px)}35%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(15deg)translate(1px)}50%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-9deg)}65%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(5deg)}78%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-3deg)}90%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:rotate(1deg)}to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}12%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(60deg)}16.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(60deg)}28.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(120deg)}33.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(120deg)}45.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}62%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(240deg)}66.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(240deg)}78.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(300deg)}83.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(300deg)}95.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-4{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}15%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}40%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}65%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}90%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-8{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}9%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(45deg)}12.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(45deg)}21.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}34%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(135deg)}37.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(135deg)}46.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}59%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(225deg)}62.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(225deg)}71.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}84%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(315deg)}87.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(315deg)}96.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-buzz{0%{animation-timing-function:cubic-bezier(.1,0,.9,1);transform:translate(0)rotate(0)}5%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.5deg)}10%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px))) rotate(-.5deg)}15%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.3deg)}20%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px))) rotate(-.3deg)}25%{transform:translateX(calc(var(--fa-buzz-distance,4px) * .7)) rotate(.2deg)}30%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px) * .7)) rotate(-.2deg)}35%{transform:translateX(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%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(0)}12%{transform:rotate(var(--fa-wag-angle,12deg));animation-timing-function:cubic-bezier(.4,0,.2,1)}24%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(2deg)}36%{transform:rotate(calc(var(--fa-wag-angle,12deg) * .85));animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(1deg)}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) translateX(0) rotate(0deg) 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))) translateX(var(--fa-float-drift,1px)) rotate(var(--fa-float-tilt,1deg)) scale(1, 1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}35%{transform:translateY(calc(-1 * var(--fa-float-height,6px))) translateX(0) rotate(0deg) 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))) translateX(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))) translateX(calc(-1 * var(--fa-float-drift,1px))) rotate(calc(-1 * var(--fa-float-tilt,1deg))) scale(1, 1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(.05 * var(--fa-float-height,6px))) translateX(0) rotate(0deg) 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) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98))}}@keyframes fa-swing{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}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%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:scale(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%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:scale(1.02,.98)}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{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.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{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}
:root{--bs-border-radius:4px;--bs-border-radius-lg:4px;--bs-border-radius-sm:3px;--bs-primary:#0d6efd;--bs-primary-rgb:13, 110, 253;--ink:#212529;--muted:#6c757d;--line:#dee2e6;--surface:#fff;--canvas:#f8f9fa;--sidebar:#212529;--sidebar-muted:#aebdd0;--success-soft:#e8f7ef;--warning-soft:#fff5dc;--danger-soft:#fdebec;--blue-soft:#eaf2ff}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--canvas);color:var(--ink);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;line-height:1.5}button,input,select,textarea{font:inherit}.btn{--bs-btn-border-radius:4px;--bs-btn-font-weight:600;min-height:44px}.btn-primary{--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca}.form-control,.form-select{border-color:#cfd8e5;border-radius:4px;min-height:46px}.form-control:focus,.form-select:focus,.btn:focus-visible,a:focus-visible{border-color:#0d6efd;outline:0;box-shadow:0 0 0 .25rem #0d6efd33}.app-shell{grid-template-columns:112px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;z-index:1030;background:#212529;height:100vh;padding:1rem .5rem;position:sticky;top:0}.brand-mark{align-items:center;gap:.75rem;margin:.2rem .55rem 1.8rem;display:flex}.brand-icon{background:#0d6efd;border-radius:4px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.brand-copy strong{font-size:.98rem;line-height:1.2;display:block}.brand-copy span{color:var(--sidebar-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.nav-label{color:#8297af;letter-spacing:.1em;text-transform:uppercase;margin:1.4rem .75rem .45rem;font-size:.72rem;font-weight:700}.side-nav{gap:.3rem;display:grid}.side-nav a{color:#c8d3df;border-radius:4px;align-items:center;gap:.75rem;min-height:46px;padding:.65rem .8rem;font-size:.94rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s,transform .15s;display:flex}.side-nav a:hover{color:#fff;background:#ffffff14}.side-nav a.active{box-shadow:none;color:#fff;background:#0d6efd}.side-nav a svg{width:1.2rem}.sidebar-footer{color:#94a7bc;font-size:.78rem;position:absolute;bottom:1.25rem;left:1.5rem}.app-main{min-width:0}.mobile-bar{color:#fff;z-index:1020;background:#212529;justify-content:space-between;align-items:center;height:64px;padding:0 1rem;display:none;position:sticky;top:0}.mobile-tabs{border-top:1px solid var(--line);padding:.35rem .4rem calc(.35rem + env(safe-area-inset-bottom));z-index:1040;background:#fff;grid-template-columns:repeat(6,1fr);display:none;position:fixed;bottom:0;left:0;right:0}.mobile-tabs a{color:#64748b;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;min-height:52px;font-size:.68rem;font-weight:600;text-decoration:none;display:flex}.mobile-tabs a.active{background:var(--blue-soft);color:#0d6efd}.page-wrap{max-width:1600px;margin:0 auto;padding:1.6rem}.page-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.page-heading h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2vw,2rem);font-weight:700}.page-heading p{color:var(--muted);margin:.25rem 0 0}.surface{background:var(--surface);border:1px solid var(--line);box-shadow:none;border-radius:4px}.surface-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.1rem;display:flex}.surface-header h2,.surface-header h3{margin:0;font-size:1rem;font-weight:700}.status-pill{color:#4b5e75;background:#eef2f7;border-radius:4px;align-items:center;gap:.4rem;padding:.35rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.status-pill.success{background:var(--success-soft);color:#187447}.status-pill.warning{background:var(--warning-soft);color:#7a5910}.status-pill.danger{background:var(--danger-soft);color:#a52b34}.empty-state{color:var(--muted);text-align:center;padding:3rem 1.5rem}.loading-block{background:linear-gradient(90deg,#edf1f5 25%,#f8fafc 50%,#edf1f5 75%) 0 0/200% 100%;border-radius:4px;min-height:120px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%{background-position:100% 0}to{background-position:-100% 0}}.register-layout{grid-template-columns:minmax(0,1fr) 390px;gap:1.25rem;display:grid}.catalog-panel{min-width:0}.category-tabs{scrollbar-width:thin;gap:.5rem;margin-bottom:1rem;padding:.1rem .1rem .35rem;display:flex;overflow-x:auto}.category-tabs button{border:1px solid var(--line);color:#516176;background:#fff;border-radius:4px;flex:none;min-height:42px;padding:.55rem .95rem;font-size:.88rem;font-weight:600}.category-tabs button.active{color:#fff;background:#0d6efd;border-color:#0d6efd}.product-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:.85rem;display:grid}.product-card{border:1px solid var(--line);box-shadow:none;color:var(--ink);text-align:left;background:#fff;border-radius:4px;flex-direction:column;min-height:162px;padding:.9rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.product-card:hover:not(:disabled){box-shadow:none;border-color:#8eb9fb}.product-card:active:not(:disabled){transform:translateY(0)}.product-card:disabled{color:#8b99aa;cursor:not-allowed;background:#f5f7fa}.product-card-top{justify-content:space-between;align-items:center;margin-bottom:auto;display:flex}.product-symbol{background:var(--blue-soft);color:#0d6efd;border-radius:4px;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.1rem;font-weight:700;display:inline-flex}.variant-count{color:#77869a;font-size:.7rem;font-weight:600}.product-name{margin-top:1rem;font-size:.95rem;font-weight:700}.product-price{color:#0d6efd;margin-top:.2rem;font-size:.88rem;font-weight:700}.cart-panel{flex-direction:column;align-self:start;min-height:calc(100vh - 8.5rem);display:flex;position:sticky;top:1.5rem}.cart-count{color:var(--muted);margin-top:.1rem;font-size:.78rem;display:block}.cart-lines{flex:1;min-height:230px;max-height:calc(100vh - 25rem);padding:0 1rem;overflow-y:auto}.empty-cart{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:260px;display:flex}.empty-cart>span{color:#8392a6;background:#edf2f7;border-radius:4px;justify-content:center;align-items:center;width:54px;height:54px;margin-bottom:.8rem;font-size:1.25rem;display:flex}.empty-cart p{margin:.2rem 0 0;font-size:.85rem}.cart-line{border-bottom:1px solid #edf1f5;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.65rem;padding:.9rem 0;display:grid}.cart-line-copy{min-width:0}.cart-line-copy strong,.cart-line-copy span{display:block}.cart-line-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.cart-line-copy span{color:var(--muted);font-size:.75rem}.quantity-control{border:1px solid var(--line);border-radius:4px;grid-template-columns:34px 28px 34px;align-items:center;display:grid;overflow:hidden}.quantity-control button{color:#516176;background:#f8fafc;border:0;height:34px}.quantity-control button:disabled{color:#c5ced9}.quantity-control span{text-align:center;font-size:.82rem;font-weight:700}.line-total{text-align:right;min-width:54px;font-size:.86rem}.cart-total{border-top:1px solid var(--line);background:#f9fbfd;border-radius:0 0 4px 4px;padding:1rem}.cart-total>div{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.cart-total .tax-row{color:var(--muted);font-size:.82rem}.cart-total .total-row{border-top:1px dashed #cbd5e1;margin-top:.75rem;padding-top:.75rem;font-size:1.12rem}.charge-button{margin-top:.65rem}.modal-backdrop-custom{z-index:2000;background:#04112294;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog-card{background:#fff;border-radius:4px;width:100%;max-width:520px;max-height:calc(100vh - 2rem);padding:1.25rem;overflow-y:auto;box-shadow:0 24px 70px #04112247}.small-dialog{max-width:430px}.dialog-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.dialog-header h2{letter-spacing:-.025em;margin:.12rem 0 0;font-size:1.35rem;font-weight:700}.eyebrow{color:#0d6efd;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.icon-button{color:#53657b;background:#eef2f7;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.variant-list{gap:.65rem;display:grid}.variant-list button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:4px;justify-content:space-between;align-items:center;min-height:68px;padding:.75rem .9rem;display:flex}.variant-list button:hover:not(:disabled){background:var(--blue-soft);border-color:#8eb9fb}.variant-list button:disabled{color:#8d9aaa;background:#f5f7fa}.variant-list span strong,.variant-list span small{display:block}.variant-list span small{color:var(--muted);margin-top:.15rem}.checkout-dialog{max-width:480px}.cash-input-wrap{background:#f7f9fc;border:2px solid #cfd8e5;border-radius:4px;align-items:center;margin-bottom:.75rem;padding:0 1rem;display:flex}.cash-input-wrap:focus-within{border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd29}.cash-input-wrap span{color:#76869a;font-size:1.3rem;font-weight:600}.cash-input-wrap input{color:var(--ink);text-align:right;background:0 0;border:0;outline:0;width:100%;padding:.6rem .5rem;font-size:2rem;font-weight:700}.tender-options{grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem;display:grid}.tender-options button{border:1px solid var(--line);color:#44556b;background:#fff;border-radius:4px;min-height:44px;font-size:.82rem;font-weight:700}.tender-options button.active{background:var(--blue-soft);color:#0d6efd;border-color:#0d6efd}.change-preview,.variance-preview{background:#f1f5f9;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.8rem .9rem;display:flex}.change-preview strong{color:#0d6efd;font-size:1.35rem}.checkout-message{border-radius:4px;align-items:flex-start;gap:.6rem;margin-bottom:1rem;padding:.8rem;font-size:.86rem;display:flex}.checkout-message.rejected{background:var(--danger-soft);color:#8d2830}.checkout-message.unknown{background:var(--warning-soft);color:#6b5114}.checkout-footnote{color:var(--muted);text-align:center;margin:.75rem 0 0;font-size:.76rem}.success-receipt{text-align:center;padding:.5rem .25rem}.success-check{background:var(--success-soft);color:#198754;border-radius:4px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;font-size:1.5rem;display:flex}.success-receipt h2{margin:.2rem 0 1.2rem;font-size:1.7rem;font-weight:700}.change-display{background:var(--blue-soft);border-radius:4px;margin-bottom:1rem;padding:1rem;display:grid}.change-display span{color:#47617e;font-size:.82rem;font-weight:600}.change-display strong{color:#0d6efd;letter-spacing:-.05em;font-size:2.5rem}.receipt-summary{justify-content:center;gap:1.5rem;margin-bottom:1.25rem;display:flex}.receipt-summary span{color:var(--muted);font-size:.78rem;display:grid}.receipt-summary strong{color:var(--ink);font-size:.95rem}.drawer-math{background:#f7f9fc;border-radius:4px;gap:.4rem;margin-bottom:1rem;padding:.9rem;display:grid}.drawer-math span{justify-content:space-between;font-size:.86rem;display:flex}@media (max-width:1199.98px){.register-layout{grid-template-columns:minmax(0,1fr) 340px}}@media (max-width:767.98px){.register-layout{display:block}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card{min-height:148px}.cart-panel{min-height:0;margin-top:1rem;position:static;bottom:70px}.cart-lines{max-height:none}.empty-cart{min-height:180px}}.inventory-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.stat-card{align-items:center;gap:.8rem;min-height:104px;padding:1rem;display:flex}.stat-icon{border-radius:4px;flex:none;justify-content:center;align-items:center;width:46px;height:46px;font-size:1.1rem;display:flex}.stat-icon.blue,.stat-icon.cyan,.stat-icon.green,.stat-icon.amber{color:#495057;background:#f1f3f5}.stat-card div strong,.stat-card div span{display:block}.stat-card div strong{letter-spacing:-.03em;font-size:1.3rem}.stat-card div span{color:var(--muted);font-size:.76rem}.inventory-table-card{overflow:hidden}.inventory-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex}.inventory-toolbar .form-select{max-width:180px}.search-field{color:#8190a2;border:1px solid #cfd8e5;border-radius:4px;flex:1;align-items:center;gap:.65rem;max-width:460px;min-height:46px;padding:0 .85rem;display:flex}.search-field:focus-within{border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd26}.search-field input{background:0 0;border:0;outline:0;width:100%;min-width:0}.inventory-table{min-width:850px;font-size:.86rem}.inventory-table>:not(caption)>*>*{border-color:#edf1f5;padding:.75rem 1rem}.inventory-table thead th{color:#63748a;letter-spacing:.04em;text-transform:uppercase;background:#f8fafc;font-size:.72rem;font-weight:700}.item-cell{align-items:center;gap:.65rem;display:flex}.item-cell>span{background:var(--blue-soft);color:#0d6efd;border-radius:4px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.item-cell strong,.item-cell small{display:block}.item-cell small{color:var(--muted);margin-top:.1rem}.category-chip{color:#53657b;background:#edf2f7;border-radius:4px;padding:.3rem .55rem;font-size:.75rem;font-weight:600}.product-dialog{max-width:680px}.variant-editor-heading{justify-content:space-between;align-items:center;margin:1.25rem 0 .65rem;display:flex}.variant-edit-list{gap:.65rem;max-height:43vh;margin-bottom:1rem;display:grid;overflow-y:auto}.variant-edit-card{border:1px solid var(--line);background:#f7f9fc;border-radius:4px;padding:.8rem}.variant-edit-top{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.margin-preview{background:var(--blue-soft);border-radius:4px;gap:.4rem;padding:.8rem;display:grid}.margin-preview span{justify-content:space-between;font-size:.85rem;display:flex}.adjust-result{background:#f1f5f9;border-radius:4px;justify-content:space-between;align-items:center;padding:.8rem .9rem;display:flex}@media (max-width:1199.98px){.inventory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:575.98px){.inventory-stats{grid-template-columns:1fr}.stat-card{min-height:88px}.inventory-toolbar{flex-direction:column;align-items:stretch}.inventory-toolbar .form-select,.search-field{max-width:none}}.export-menu .dropdown-menu.show{display:block}.report-filter{border:1px solid var(--line);background:#fff;border-radius:4px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.5rem;display:flex}.report-filter>span{color:#586a7f;padding-left:.5rem;font-size:.82rem;font-weight:600}.report-filter>div{gap:.25rem;display:flex}.report-filter button{color:#607187;background:0 0;border:0;border-radius:4px;min-height:36px;padding:.45rem .75rem;font-size:.8rem;font-weight:600}.report-filter button.active{background:var(--blue-soft);color:#0d6efd}.report-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.report-metric{align-items:center;gap:.8rem;min-height:118px;padding:1rem;display:flex}.report-metric div small,.report-metric div strong,.report-metric div span{display:block}.report-metric div small{color:var(--muted);font-size:.74rem;font-weight:600}.report-metric div strong{letter-spacing:-.035em;margin:.15rem 0;font-size:1.38rem}.report-metric div span{color:#6c7c90;font-size:.74rem}.report-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:1rem;display:grid}.surface-header>div>span,.surface-header>span{color:var(--muted);margin-top:.1rem;font-size:.75rem;display:block}.category-chart{gap:1.1rem;min-height:305px;padding:1.25rem;display:grid}.category-bar-row{grid-template-columns:minmax(135px,.8fr) minmax(160px,2fr) 74px;align-items:center;gap:.85rem;display:grid}.category-bar-row>div:first-child{min-width:0}.category-bar-row>div:first-child strong,.category-bar-row>div:first-child span:last-child{margin-left:1.1rem;display:block}.category-bar-row>div:first-child strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.category-bar-row>div:first-child span:last-child{color:var(--muted);font-size:.7rem}.chart-key{float:left;border-radius:3px;width:10px;height:10px;margin-top:.25rem}.chart-key,.bar-fill{background:#0d6efd}.bar-track{background:#edf2f7;border-radius:4px;height:10px;overflow:hidden}.bar-fill{border-radius:4px;height:100%;display:block}.category-bar-row>strong{text-align:right;font-size:.85rem}.breakdown-body{padding:.8rem 1.1rem}.breakdown-body>div{border-bottom:1px solid #edf1f5;justify-content:space-between;align-items:center;padding:.65rem 0;font-size:.84rem;display:flex}.breakdown-body>div span{color:var(--muted)}.breakdown-body .breakdown-net{color:var(--ink);border-bottom:0;padding-bottom:1rem;font-size:.94rem;font-weight:700}.breakdown-body .breakdown-net span{color:var(--ink)}.breakdown-body .breakdown-profit{background:var(--success-soft);color:#137146;border:0;border-radius:4px;margin-top:.75rem;padding:.75rem;font-size:.94rem;font-weight:700}.sales-breakdown>p{color:var(--muted);margin:0 1.1rem 1rem;font-size:.7rem}.report-table{min-width:670px;font-size:.84rem}.report-table>:not(caption)>*>*{border-color:#edf1f5;padding:.75rem 1.1rem}.report-table thead th{color:#66778c;letter-spacing:.04em;text-transform:uppercase;background:#f8fafc;font-size:.7rem}.drawer-report-grid{grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.drawer-report-grid>div{border-right:1px solid var(--line);padding:1rem}.drawer-report-grid>div:last-child{border-right:0}.drawer-report-grid span,.drawer-report-grid strong{display:block}.drawer-report-grid span{color:var(--muted);margin-bottom:.25rem;font-size:.7rem}.drawer-report-grid strong{font-size:.95rem}@media (max-width:1199.98px){.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.drawer-report-grid>div{border-bottom:1px solid var(--line)}}@media (max-width:767.98px){.report-filter{flex-direction:column;align-items:stretch}.report-filter>div{overflow-x:auto}.report-grid{grid-template-columns:1fr}.category-bar-row{grid-template-columns:120px minmax(100px,1fr) 70px}}@media (max-width:575.98px){.report-metrics{grid-template-columns:1fr}.report-metric{min-height:96px}.category-bar-row{grid-template-columns:1fr 62px}.category-bar-row>div:first-child{grid-column:1/3}.drawer-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.menu-board{color:#212529;background:#f8f9fa;flex-direction:column;min-height:100vh;padding:clamp(1.3rem,2.5vw,3rem);display:flex;overflow:hidden}.menu-header{flex:none;justify-content:space-between;align-items:center;margin-bottom:clamp(1rem,2vw,2rem);display:flex}.menu-brand{align-items:center;gap:clamp(.8rem,1.5vw,1.4rem);display:flex}.menu-brand>span{box-shadow:none;color:#fff;background:#0d6efd;border-radius:4px;justify-content:center;align-items:center;width:clamp(50px,6vw,76px);height:clamp(50px,6vw,76px);font-size:clamp(1.2rem,2vw,2rem);display:flex}.menu-brand h1{letter-spacing:-.045em;margin:0;font-size:clamp(1.55rem,3.1vw,3.4rem);font-weight:700;line-height:1}.menu-brand p{color:#aac0d8;margin:.4rem 0 0;font-size:clamp(.8rem,1.2vw,1.2rem)}.menu-connection{color:#b8c9dc;background:#ffffff14;border:1px solid #ffffff1a;border-radius:4px;align-items:center;gap:.5rem;padding:.55rem .8rem;font-size:clamp(.7rem,.9vw,.9rem);display:flex}.menu-connection svg{color:#63d39a}.menu-connection.stale{color:#664d03;background:#fff3cd;border-color:#ffe69c}.menu-connection.stale svg{color:#664d03}.menu-columns{flex:auto;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));align-items:start;gap:clamp(.8rem,1.5vw,1.5rem);min-height:0;display:grid}.menu-category{box-shadow:none;color:var(--ink);background:#fff;border:1px solid #dee2e6;border-radius:4px;overflow:hidden}.menu-category h2{letter-spacing:-.025em;border-bottom:1px solid #dfe6ef;margin:0;padding:clamp(.75rem,1.2vw,1.15rem);font-size:clamp(1rem,1.5vw,1.65rem);font-weight:700}.menu-items{padding:0 clamp(.75rem,1.2vw,1.15rem)}.menu-item{border-bottom:1px solid #e4eaf1;padding:clamp(.6rem,.9vw,.9rem) 0}.menu-item:last-child{border-bottom:0}.menu-item h3{margin:0;font-size:clamp(.9rem,1.15vw,1.25rem);font-weight:700}.menu-item p{color:#708197;margin:.15rem 0 0;font-size:clamp(.65rem,.8vw,.86rem)}.menu-variants{gap:.2rem;margin-top:.45rem;display:grid}.menu-variants>div{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.menu-variants>div span{color:#61748a;font-size:clamp(.68rem,.8vw,.88rem)}.menu-variants>div strong{color:#0d6efd;font-size:clamp(.82rem,1vw,1.05rem)}.menu-variants>div.sold-out span,.menu-variants>div.sold-out strong{color:#9aa6b4}.menu-footer{color:#a7bbd1;flex:none;justify-content:center;align-items:center;gap:1.5rem;padding-top:clamp(.75rem,1.5vw,1.5rem);font-size:clamp(.65rem,.85vw,.9rem);display:flex}.menu-footer span:not(:last-child):after{color:#0d6efd;content:"•";margin-left:1.5rem}.menu-loading{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;display:flex}@media (orientation:portrait){.menu-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.menu-columns{grid-template-columns:1fr}.menu-connection span{display:none}.menu-footer{flex-wrap:wrap;gap:.4rem 1rem}.menu-footer span:not(:last-child):after{margin-left:1rem}}@media (max-width:991.98px){.app-shell{display:block}.sidebar{display:none}.mobile-bar,.mobile-tabs{display:flex}.mobile-tabs{display:grid}.page-wrap{padding:1rem 1rem 5.5rem}}@media (max-width:575.98px){.page-heading{flex-direction:column;align-items:stretch}}@media print{.sidebar,.mobile-bar,.mobile-tabs,.no-print{display:none!important}.app-shell{display:block}.page-wrap{max-width:none;padding:0}body{background:#fff}.surface{box-shadow:none}}.sidebar .brand-mark{text-align:center;flex-direction:column;gap:.65rem;margin:0 0 1.75rem}.sidebar .brand-copy strong{overflow-wrap:anywhere;font-size:.78rem}.side-nav a{flex-direction:column;justify-content:center;gap:.5rem;min-height:78px;padding:.75rem .25rem;font-size:.75rem}.side-nav a svg{font-size:1.2rem}button,a,input,select{touch-action:manipulation;-webkit-tap-highlight-color:#0d6efd1f}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #0d6efd}.dialog-card{overscroll-behavior:contain;max-height:calc(100dvh - 2rem)}.icon-button{width:44px;height:44px}.icon-button:hover{background:#dee2e6}.skip-link{z-index:3000;background:#fff;padding:.75rem 1rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}h1,h2,h3{text-wrap:balance}.brand-copy,.product-name,.variant-list span{overflow-wrap:anywhere;min-width:0}strong,.quantity-control,input[inputmode=decimal]{font-variant-numeric:tabular-nums}.register-page{max-width:none;padding:0}.register-heading{border-bottom:1px solid var(--line);background:#fff;align-items:center;min-height:80px;margin:0;padding:1rem 1.5rem}.register-heading h1{letter-spacing:-.02em;font-size:1.35rem}.register-page>.alert{margin:1rem 1.25rem}.register-layout{grid-template-columns:minmax(320px,36%) minmax(0,1fr);align-items:stretch;gap:0}.catalog-panel{grid-area:1/2;padding:1.25rem}.register-search.search-field{background:#fff;max-width:none;min-height:48px;margin-bottom:1rem}.category-tabs{border-bottom:1px solid #cfd3d7;gap:0;margin-bottom:1.25rem;padding:0}.category-tabs button{color:#495057;background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;min-height:48px}.category-tabs button.active{color:#0b5ed7;background:0 0;border-bottom-color:#0d6efd}.category-tabs button:hover{background:#e9ecef}.product-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.product-card{border-top:3px solid #0d6efd;justify-content:flex-end;min-height:142px;padding:1rem}.product-card:hover:not(:disabled){background:#f1f5fb;border-color:#0d6efd}.product-card-top{min-height:20px;margin-bottom:auto}.product-name{margin-top:.75rem;font-weight:600}.product-price{color:#495057;font-weight:500}.variant-count{color:#626970;background:0 0;padding:0;font-size:.72rem}.cart-panel{border:0;border-right:1px solid var(--line);border-radius:0;grid-area:1/1;min-height:calc(100dvh - 80px);top:0}.cart-panel .surface-header{min-height:76px}.cart-lines{min-height:240px;max-height:calc(100dvh - 340px)}.cart-line{grid-template-columns:minmax(0,1fr) auto}.cart-line-copy{grid-column:1/-1}.cart-line-copy strong{white-space:normal;overflow-wrap:anywhere}.quantity-control{grid-template-columns:44px 32px 44px;justify-self:start}.quantity-control button{height:44px}.quantity-control button:hover:not(:disabled){background:#e9ecef}.cart-total{background:#fff;border-radius:0;padding:1.25rem}.cart-total .total-row{border:0;margin-top:0;padding-top:0;font-size:1.35rem}.charge-button{justify-content:space-between;align-items:center;min-height:56px;display:flex}.empty-cart>span{color:#6c757d;background:0 0}.empty-cart strong{color:#495057;font-weight:500}.catalog-panel .empty-state{flex-direction:column;justify-content:center;align-items:center;min-height:300px;display:flex}.empty-state h2{color:#495057;margin:1rem 0 .5rem;font-size:1.1rem}.empty-state p{font-size:.9rem}.report-filter button{min-height:44px}.breakdown-body .breakdown-profit{color:var(--ink);background:#f1f3f5}.breakdown-body .breakdown-profit span{color:var(--ink)}.loading-block{background:#e9ecef;animation:none}@media (max-width:991.98px){.register-page{padding:0 0 calc(76px + env(safe-area-inset-bottom))}.register-heading{padding:.75rem 1rem}.cart-panel{min-height:calc(100dvh - 220px);top:64px}.register-layout{grid-template-columns:minmax(290px,40%) minmax(0,1fr)}.catalog-panel{padding:1rem}.cart-lines{max-height:calc(100dvh - 445px)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767.98px){.register-layout{flex-direction:column;display:flex}.catalog-panel{order:0}.cart-panel{border-top:1px solid var(--line);border-right:0;order:1;align-self:stretch;min-height:0;margin:0;position:static}.cart-lines{min-height:0;max-height:none}.empty-cart{min-height:150px}.register-heading{flex-direction:row;align-items:center}.register-heading .status-pill{max-width:190px;font-size:.7rem}.catalog-panel .empty-state{min-height:200px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.register-shell{height:100dvh;min-height:0;overflow:hidden}.register-shell .app-main{min-height:0;overflow:hidden}.register-shell .sidebar{height:100%}.register-page{flex-direction:column;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.register-page>.alert{border-radius:0;flex:none;margin:0;padding:.5rem .75rem;font-size:.85rem}.register-layout{flex:1;min-height:0;overflow:hidden}.catalog-panel{flex-direction:column;min-height:0;padding:.75rem;display:flex;overflow:hidden}.register-search.search-field{flex:none;margin-bottom:.5rem}.category-tabs{flex:none;margin-bottom:.75rem}.product-grid{overscroll-behavior:contain;align-content:start;min-height:0;padding:3px;overflow-y:auto}.product-card{border-top:1px solid var(--line);min-height:100px;padding:.75rem}.product-card-top:empty{display:none}.product-name{margin-top:0}.cart-panel{align-self:stretch;min-height:0;max-height:100%;position:static;overflow:hidden}.cart-panel .surface-header{flex:none;min-height:60px;padding:.65rem .75rem}.cart-lines{overscroll-behavior:contain;flex:1 1 0;min-height:0;max-height:none}.cart-total{flex:none;padding:.75rem}.empty-cart{justify-content:flex-start;min-height:0;padding:1rem 0;font-size:.85rem}.catalog-panel .empty-state{min-height:0;padding:1rem;overflow-y:auto}.stat-card,.report-metric{min-height:84px}@media (max-width:991.98px){.register-shell{flex-direction:column;display:flex}.register-shell .app-main{flex:1}.register-shell .mobile-tabs{flex:none;position:static}.register-page{padding:0}}@media (max-width:767.98px){.register-layout{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:1fr;display:grid}.catalog-panel{grid-area:1/1}.cart-panel{grid-area:2/1}.cart-panel .surface-header{min-height:44px;padding:.3rem .75rem}.cart-panel .surface-header>div{align-items:center;gap:.5rem;display:flex}.cart-total .total-row{font-size:1rem}.cart-total{padding:.5rem .75rem}.charge-button{min-height:44px;margin-top:.25rem}}.menu-board{isolation:isolate;background:var(--menu-background,#f8f9fa);color:var(--menu-text,#212529);position:relative}.menu-background,.menu-overlay{z-index:-1;pointer-events:none;position:absolute;inset:0}.menu-background{background-position:50%;background-size:cover;inset:-40px}.menu-title{color:var(--menu-heading);overflow-wrap:anywhere;margin-bottom:clamp(1rem,2vw,2rem)}.menu-title h1{margin:0;font-size:clamp(1.5rem,3vw,3.5rem)}.menu-title p{margin:.4rem 0 0;font-size:clamp(1rem,1.5vw,1.75rem)}.menu-category{background:var(--menu-panel);color:var(--menu-text);border-color:color-mix(in srgb, var(--menu-text) 25%, var(--menu-panel))}.menu-category h2,.menu-item{border-color:color-mix(in srgb, var(--menu-text) 25%, var(--menu-panel))}.menu-item p,.menu-variants>div span,.menu-variants>div.sold-out span,.menu-variants>div.sold-out strong{color:var(--menu-text)}.menu-variants>div strong{color:var(--menu-accent)}.menu-item h3,.menu-category h2,.menu-variants>div{overflow-wrap:anywhere;min-width:0}.settings-layout{grid-template-columns:minmax(300px,390px) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.settings-controls{min-width:0}.settings-preview{min-width:0;position:sticky;top:1rem}.menu-preview{border:1px solid var(--line);min-height:400px;max-height:75vh;padding:1rem;overflow-y:auto}.menu-preview .menu-columns{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:.75rem}.menu-preview .menu-title h1{font-size:1.75rem}.menu-preview .menu-title p{font-size:1rem}@media (max-width:1100px){.settings-layout{grid-template-columns:1fr}.settings-preview{position:static}}@media (max-width:575.98px){.mobile-tabs a{font-size:.6rem}}
