/* static/home/oss/fontawesome-free-7.3.1-web/css/fontawesome.min.css */
/*!
 * Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2026 Fonticons, Inc.
 */
.fa,.fa-brands,.fa-classic,.fa-regular,.fa-solid,.fab,.far,.fas{--_fa-family:var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:var(--fa-display,inline-block);font-family:var(--_fa-family);font-feature-settings:normal;font-style:normal;font-synthesis:none;font-variant:normal;font-weight:var(--fa-style,900);line-height:1;text-align:center;text-rendering:auto;width:var(--fa-width,1.25em)}:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)/""}@supports not (content:""/""){:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before{content:var(--fa)}}.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:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;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(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.0625em) var(--fa-border-style,solid) var(--fa-border-color,#eee);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-end,.fa-pull-right{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-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;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-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,.fa-flip-360{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-flip-360{animation-name:fa-flip-360;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-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,.fa-spin-snap-4{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin-snap-4{animation-name:fa-spin-snap-4;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-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,.fa-spin-snap-8{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-buzz{animation-name:fa-buzz;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-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,.fa-swing{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-jello{animation-name:fa-jello;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-beat-fade,.fa-bounce,.fa-buzz,.fa-fade,.fa-flip,.fa-flip-360,.fa-float,.fa-jello,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse,.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(var(--fa-beat-scale, 1.25)*1.25))}45%{transform:scale(calc(var(--fa-beat-scale, 1.22)*1.22))}65%{transform:scale(calc(var(--fa-beat-scale, 1.25)*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(var(--fa-bounce-height, .5em)*-1));animation-timing-function:cubic-bezier(.33,.66,.66,1)}52%{transform:scale(1) translateY(calc(var(--fa-bounce-height, .5em)*-1*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),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, -1turn)*0.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, -1turn)*0.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, -1turn)*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,-1turn))}}@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, -1turn)*0.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, -1turn)*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,-1turn))}}@keyframes fa-shake{0%{transform:rotate(0deg);animation-timing-function:cubic-bezier(.2,0,.8,1)}8%{transform:rotate(35deg) translateX(1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}20%{transform:rotate(-22deg) translateX(-1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}35%{transform:rotate(15deg) translateX(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(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fa-spin-snap{0%{transform:rotate(0deg);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(1turn);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(1turn)}}@keyframes fa-spin-snap-4{0%{transform:rotate(0deg);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(1turn);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(1turn)}}@keyframes fa-spin-snap-8{0%{transform:rotate(0deg);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(1turn);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(1turn)}}@keyframes fa-buzz{0%{transform:translateX(0) rotate(0deg);animation-timing-function:cubic-bezier(.1,0,.9,1)}5%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.5deg)}10%{transform:translateX(calc(var(--fa-buzz-distance, 4px)*-1)) rotate(-.5deg)}15%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.3deg)}20%{transform:translateX(calc(var(--fa-buzz-distance, 4px)*-1)) rotate(-.3deg)}25%{transform:translateX(calc(var(--fa-buzz-distance, 4px)*0.7)) rotate(.2deg)}30%{transform:translateX(calc(var(--fa-buzz-distance, 4px)*-1*0.7)) rotate(-.2deg)}35%{transform:translateX(calc(var(--fa-buzz-distance, 4px)*0.4)) rotate(.1deg)}40%{transform:translateX(0) rotate(0deg)}to{transform:translateX(0) rotate(0deg)}}@keyframes fa-wag{0%{transform:rotate(0deg);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)*0.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)*0.6));animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:rotate(0deg)}to{transform:rotate(0deg)}}@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(var(--fa-float-height, 6px)*-0.4)) translateX(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(var(--fa-float-height, 6px)*-1)) 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(var(--fa-float-height, 6px)*-0.92)) translateX(calc(var(--fa-float-drift, 1px)*-0.5)) rotate(calc(var(--fa-float-tilt, 1deg)*-0.5)) scale(.995,1.01);animation-timing-function:cubic-bezier(.33,0,.66,.33)}70%{transform:translateY(calc(var(--fa-float-height, 6px)*-0.3)) translateX(calc(var(--fa-float-drift, 1px)*-1)) rotate(calc(var(--fa-float-tilt, 1deg)*-1)) scale(1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(var(--fa-float-height, 6px)*0.05)) 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%{transform:rotate(0deg);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(var(--fa-swing-angle, 22deg)*-1*0.85));animation-timing-function:cubic-bezier(.3,0,.7,1)}28%{transform:rotate(calc(var(--fa-swing-angle, 22deg)*0.65));animation-timing-function:cubic-bezier(.35,0,.65,1)}38%{transform:rotate(calc(var(--fa-swing-angle, 22deg)*-1*0.45));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:rotate(calc(var(--fa-swing-angle, 22deg)*0.25));animation-timing-function:cubic-bezier(.4,0,.6,1)}56%{transform:rotate(calc(var(--fa-swing-angle, 22deg)*-1*0.1));animation-timing-function:cubic-bezier(.4,0,.6,1)}64%{transform:rotate(0deg)}to{transform:rotate(0deg)}}@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(.5 + var(--fa-jello-scale-x, 1.15)*0.5),calc(1.5 - var(--fa-jello-scale-x, 1.15)*0.5));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:scale(calc(1.3 - var(--fa-jello-scale-y, 1.12)*0.3),calc(.7 + var(--fa-jello-scale-y, 1.12)*0.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))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{--fa-width:100%;inset:0;position:absolute;text-align:center;width:var(--fa-width);z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}

.fa-0{--fa:"\30 "}.fa-1{--fa:"\31 "}.fa-2{--fa:"\32 "}.fa-3{--fa:"\33 "}.fa-4{--fa:"\34 "}.fa-5{--fa:"\35 "}.fa-6{--fa:"\36 "}.fa-7{--fa:"\37 "}.fa-8{--fa:"\38 "}.fa-9{--fa:"\39 "}.fa-exclamation{--fa:"\!"}.fa-hashtag{--fa:"\#"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"\$"}.fa-percent,.fa-percentage{--fa:"\%"}.fa-asterisk{--fa:"\*"}.fa-add,.fa-plus{--fa:"\+"}.fa-less-than{--fa:"\<"}.fa-equals{--fa:"\="}.fa-greater-than{--fa:"\>"}.fa-question{--fa:"\?"}.fa-at{--fa:"\@"}.fa-a{--fa:"A"}.fa-b{--fa:"B"}.fa-c{--fa:"C"}.fa-d{--fa:"D"}.fa-e{--fa:"E"}.fa-f{--fa:"F"}.fa-g{--fa:"G"}.fa-h{--fa:"H"}.fa-i{--fa:"I"}.fa-j{--fa:"J"}.fa-k{--fa:"K"}.fa-l{--fa:"L"}.fa-m{--fa:"M"}.fa-n{--fa:"N"}.fa-o{--fa:"O"}.fa-p{--fa:"P"}.fa-q{--fa:"Q"}.fa-r{--fa:"R"}.fa-s{--fa:"S"}.fa-t{--fa:"T"}.fa-u{--fa:"U"}.fa-v{--fa:"V"}.fa-w{--fa:"W"}.fa-x{--fa:"X"}.fa-y{--fa:"Y"}.fa-z{--fa:"Z"}.fa-faucet{--fa:"\e005"}.fa-faucet-drip{--fa:"\e006"}.fa-house-chimney-window{--fa:"\e00d"}.fa-house-signal{--fa:"\e012"}.fa-temperature-arrow-down,.fa-temperature-down{--fa:"\e03f"}.fa-temperature-arrow-up,.fa-temperature-up{--fa:"\e040"}.fa-trailer{--fa:"\e041"}.fa-bacteria{--fa:"\e059"}.fa-bacterium{--fa:"\e05a"}.fa-box-tissue{--fa:"\e05b"}.fa-hand-holding-medical{--fa:"\e05c"}.fa-hand-sparkles{--fa:"\e05d"}.fa-hands-bubbles,.fa-hands-wash{--fa:"\e05e"}.fa-handshake-alt-slash,.fa-handshake-simple-slash,.fa-handshake-slash{--fa:"\e060"}.fa-head-side-cough{--fa:"\e061"}.fa-head-side-cough-slash{--fa:"\e062"}.fa-head-side-mask{--fa:"\e063"}.fa-head-side-virus{--fa:"\e064"}.fa-house-chimney-user{--fa:"\e065"}.fa-house-laptop,.fa-laptop-house{--fa:"\e066"}.fa-lungs-virus{--fa:"\e067"}.fa-people-arrows,.fa-people-arrows-left-right{--fa:"\e068"}.fa-plane-slash{--fa:"\e069"}.fa-pump-medical{--fa:"\e06a"}.fa-pump-soap{--fa:"\e06b"}.fa-shield-virus{--fa:"\e06c"}.fa-sink{--fa:"\e06d"}.fa-soap{--fa:"\e06e"}.fa-stopwatch-20{--fa:"\e06f"}.fa-shop-slash,.fa-store-alt-slash{--fa:"\e070"}.fa-store-slash{--fa:"\e071"}.fa-toilet-paper-slash{--fa:"\e072"}.fa-users-slash{--fa:"\e073"}.fa-virus{--fa:"\e074"}.fa-virus-slash{--fa:"\e075"}.fa-viruses{--fa:"\e076"}.fa-vest{--fa:"\e085"}.fa-vest-patches{--fa:"\e086"}.fa-arrow-trend-down{--fa:"\e097"}.fa-arrow-trend-up{--fa:"\e098"}.fa-arrow-up-from-bracket{--fa:"\e09a"}.fa-austral-sign{--fa:"\e0a9"}.fa-baht-sign{--fa:"\e0ac"}.fa-bitcoin-sign{--fa:"\e0b4"}.fa-bolt-lightning{--fa:"\e0b7"}.fa-book-bookmark{--fa:"\e0bb"}.fa-camera-rotate{--fa:"\e0d8"}.fa-cedi-sign{--fa:"\e0df"}.fa-chart-column{--fa:"\e0e3"}.fa-chart-gantt{--fa:"\e0e4"}.fa-clapperboard{--fa:"\e131"}.fa-closed-captioning-slash{--fa:"\e135"}.fa-clover{--fa:"\e139"}.fa-code-compare{--fa:"\e13a"}.fa-code-fork{--fa:"\e13b"}.fa-code-pull-request{--fa:"\e13c"}.fa-colon-sign{--fa:"\e140"}.fa-cruzeiro-sign{--fa:"\e152"}.fa-display{--fa:"\e163"}.fa-dong-sign{--fa:"\e169"}.fa-elevator{--fa:"\e16d"}.fa-filter-circle-xmark{--fa:"\e17b"}.fa-florin-sign{--fa:"\e184"}.fa-folder-closed{--fa:"\e185"}.fa-franc-sign{--fa:"\e18f"}.fa-guarani-sign{--fa:"\e19a"}.fa-gun{--fa:"\e19b"}.fa-hands-clapping{--fa:"\e1a8"}.fa-home-user,.fa-house-user{--fa:"\e1b0"}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:"\e1bc"}.fa-kip-sign{--fa:"\e1c4"}.fa-lari-sign{--fa:"\e1c8"}.fa-litecoin-sign{--fa:"\e1d3"}.fa-manat-sign{--fa:"\e1d5"}.fa-mask-face{--fa:"\e1d7"}.fa-mill-sign{--fa:"\e1ed"}.fa-money-bills{--fa:"\e1f3"}.fa-naira-sign{--fa:"\e1f6"}.fa-notdef{--fa:"\e1fe"}.fa-panorama{--fa:"\e209"}.fa-peseta-sign{--fa:"\e221"}.fa-peso-sign{--fa:"\e222"}.fa-plane-up{--fa:"\e22d"}.fa-rupiah-sign{--fa:"\e23d"}.fa-stairs{--fa:"\e289"}.fa-timeline{--fa:"\e29c"}.fa-truck-front{--fa:"\e2b7"}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:"\e2bb"}.fa-vault{--fa:"\e2c5"}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:"\e2ca"}.fa-wheat-alt,.fa-wheat-awn{--fa:"\e2cd"}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:"\e2ce"}.fa-bangladeshi-taka-sign{--fa:"\e2e6"}.fa-bowl-rice{--fa:"\e2eb"}.fa-person-pregnant{--fa:"\e31e"}.fa-home-lg,.fa-house-chimney{--fa:"\e3af"}.fa-house-crack{--fa:"\e3b1"}.fa-house-medical{--fa:"\e3b2"}.fa-cent-sign{--fa:"\e3f5"}.fa-plus-minus{--fa:"\e43c"}.fa-sailboat{--fa:"\e445"}.fa-section{--fa:"\e447"}.fa-shrimp{--fa:"\e448"}.fa-brazilian-real-sign{--fa:"\e46c"}.fa-chart-simple{--fa:"\e473"}.fa-diagram-next{--fa:"\e476"}.fa-diagram-predecessor{--fa:"\e477"}.fa-diagram-successor{--fa:"\e47a"}.fa-earth-oceania,.fa-globe-oceania{--fa:"\e47b"}.fa-bug-slash{--fa:"\e490"}.fa-file-circle-plus{--fa:"\e494"}.fa-shop-lock{--fa:"\e4a5"}.fa-virus-covid{--fa:"\e4a8"}.fa-virus-covid-slash{--fa:"\e4a9"}.fa-anchor-circle-check{--fa:"\e4aa"}.fa-anchor-circle-exclamation{--fa:"\e4ab"}.fa-anchor-circle-xmark{--fa:"\e4ac"}.fa-anchor-lock{--fa:"\e4ad"}.fa-arrow-down-up-across-line{--fa:"\e4af"}.fa-arrow-down-up-lock{--fa:"\e4b0"}.fa-arrow-right-to-city{--fa:"\e4b3"}.fa-arrow-up-from-ground-water{--fa:"\e4b5"}.fa-arrow-up-from-water-pump{--fa:"\e4b6"}.fa-arrow-up-right-dots{--fa:"\e4b7"}.fa-arrows-down-to-line{--fa:"\e4b8"}.fa-arrows-down-to-people{--fa:"\e4b9"}.fa-arrows-left-right-to-line{--fa:"\e4ba"}.fa-arrows-spin{--fa:"\e4bb"}.fa-arrows-split-up-and-left{--fa:"\e4bc"}.fa-arrows-to-circle{--fa:"\e4bd"}.fa-arrows-to-dot{--fa:"\e4be"}.fa-arrows-to-eye{--fa:"\e4bf"}.fa-arrows-turn-right{--fa:"\e4c0"}.fa-arrows-turn-to-dots{--fa:"\e4c1"}.fa-arrows-up-to-line{--fa:"\e4c2"}.fa-bore-hole{--fa:"\e4c3"}.fa-bottle-droplet{--fa:"\e4c4"}.fa-bottle-water{--fa:"\e4c5"}.fa-bowl-food{--fa:"\e4c6"}.fa-boxes-packing{--fa:"\e4c7"}.fa-bridge{--fa:"\e4c8"}.fa-bridge-circle-check{--fa:"\e4c9"}.fa-bridge-circle-exclamation{--fa:"\e4ca"}.fa-bridge-circle-xmark{--fa:"\e4cb"}.fa-bridge-lock{--fa:"\e4cc"}.fa-bridge-water{--fa:"\e4ce"}.fa-bucket{--fa:"\e4cf"}.fa-bugs{--fa:"\e4d0"}.fa-building-circle-arrow-right{--fa:"\e4d1"}.fa-building-circle-check{--fa:"\e4d2"}.fa-building-circle-exclamation{--fa:"\e4d3"}.fa-building-circle-xmark{--fa:"\e4d4"}.fa-building-flag{--fa:"\e4d5"}.fa-building-lock{--fa:"\e4d6"}.fa-building-ngo{--fa:"\e4d7"}.fa-building-shield{--fa:"\e4d8"}.fa-building-un{--fa:"\e4d9"}.fa-building-user{--fa:"\e4da"}.fa-building-wheat{--fa:"\e4db"}.fa-burst{--fa:"\e4dc"}.fa-car-on{--fa:"\e4dd"}.fa-car-tunnel{--fa:"\e4de"}.fa-child-combatant,.fa-child-rifle{--fa:"\e4e0"}.fa-children{--fa:"\e4e1"}.fa-circle-nodes{--fa:"\e4e2"}.fa-clipboard-question{--fa:"\e4e3"}.fa-cloud-showers-water{--fa:"\e4e4"}.fa-computer{--fa:"\e4e5"}.fa-cubes-stacked{--fa:"\e4e6"}.fa-envelope-circle-check{--fa:"\e4e8"}.fa-explosion{--fa:"\e4e9"}.fa-ferry{--fa:"\e4ea"}.fa-file-circle-exclamation{--fa:"\e4eb"}.fa-file-circle-minus{--fa:"\e4ed"}.fa-file-circle-question{--fa:"\e4ef"}.fa-file-shield{--fa:"\e4f0"}.fa-fire-burner{--fa:"\e4f1"}.fa-fish-fins{--fa:"\e4f2"}.fa-flask-vial{--fa:"\e4f3"}.fa-glass-water{--fa:"\e4f4"}.fa-glass-water-droplet{--fa:"\e4f5"}.fa-group-arrows-rotate{--fa:"\e4f6"}.fa-hand-holding-hand{--fa:"\e4f7"}.fa-handcuffs{--fa:"\e4f8"}.fa-hands-bound{--fa:"\e4f9"}.fa-hands-holding-child{--fa:"\e4fa"}.fa-hands-holding-circle{--fa:"\e4fb"}.fa-heart-circle-bolt{--fa:"\e4fc"}.fa-heart-circle-check{--fa:"\e4fd"}.fa-heart-circle-exclamation{--fa:"\e4fe"}.fa-heart-circle-minus{--fa:"\e4ff"}.fa-heart-circle-plus{--fa:"\e500"}.fa-heart-circle-xmark{--fa:"\e501"}.fa-helicopter-symbol{--fa:"\e502"}.fa-helmet-un{--fa:"\e503"}.fa-hill-avalanche{--fa:"\e507"}.fa-hill-rockslide{--fa:"\e508"}.fa-house-circle-check{--fa:"\e509"}.fa-house-circle-exclamation{--fa:"\e50a"}.fa-house-circle-xmark{--fa:"\e50b"}.fa-house-fire{--fa:"\e50c"}.fa-house-flag{--fa:"\e50d"}.fa-house-flood-water{--fa:"\e50e"}.fa-house-flood-water-circle-arrow-right{--fa:"\e50f"}.fa-house-lock{--fa:"\e510"}.fa-house-medical-circle-check{--fa:"\e511"}.fa-house-medical-circle-exclamation{--fa:"\e512"}.fa-house-medical-circle-xmark{--fa:"\e513"}.fa-house-medical-flag{--fa:"\e514"}.fa-house-tsunami{--fa:"\e515"}.fa-jar{--fa:"\e516"}.fa-jar-wheat{--fa:"\e517"}.fa-jet-fighter-up{--fa:"\e518"}.fa-jug-detergent{--fa:"\e519"}.fa-kitchen-set{--fa:"\e51a"}.fa-land-mine-on{--fa:"\e51b"}.fa-landmark-flag{--fa:"\e51c"}.fa-laptop-file{--fa:"\e51d"}.fa-lines-leaning{--fa:"\e51e"}.fa-location-pin-lock{--fa:"\e51f"}.fa-locust{--fa:"\e520"}.fa-magnifying-glass-arrow-right{--fa:"\e521"}.fa-magnifying-glass-chart{--fa:"\e522"}.fa-mars-and-venus-burst{--fa:"\e523"}.fa-mask-ventilator{--fa:"\e524"}.fa-mattress-pillow{--fa:"\e525"}.fa-mobile-retro{--fa:"\e527"}.fa-money-bill-transfer{--fa:"\e528"}.fa-money-bill-trend-up{--fa:"\e529"}.fa-money-bill-wheat{--fa:"\e52a"}.fa-mosquito{--fa:"\e52b"}.fa-mosquito-net{--fa:"\e52c"}.fa-mound{--fa:"\e52d"}.fa-mountain-city{--fa:"\e52e"}.fa-mountain-sun{--fa:"\e52f"}.fa-oil-well{--fa:"\e532"}.fa-people-group{--fa:"\e533"}.fa-people-line{--fa:"\e534"}.fa-people-pulling{--fa:"\e535"}.fa-people-robbery{--fa:"\e536"}.fa-people-roof{--fa:"\e537"}.fa-person-arrow-down-to-line{--fa:"\e538"}.fa-person-arrow-up-from-line{--fa:"\e539"}.fa-person-breastfeeding{--fa:"\e53a"}.fa-person-burst{--fa:"\e53b"}.fa-person-cane{--fa:"\e53c"}.fa-person-chalkboard{--fa:"\e53d"}.fa-person-circle-check{--fa:"\e53e"}.fa-person-circle-exclamation{--fa:"\e53f"}.fa-person-circle-minus{--fa:"\e540"}.fa-person-circle-plus{--fa:"\e541"}.fa-person-circle-question{--fa:"\e542"}.fa-person-circle-xmark{--fa:"\e543"}.fa-person-dress-burst{--fa:"\e544"}.fa-person-drowning{--fa:"\e545"}.fa-person-falling{--fa:"\e546"}.fa-person-falling-burst{--fa:"\e547"}.fa-person-half-dress{--fa:"\e548"}.fa-person-harassing{--fa:"\e549"}.fa-person-military-pointing{--fa:"\e54a"}.fa-person-military-rifle{--fa:"\e54b"}.fa-person-military-to-person{--fa:"\e54c"}.fa-person-rays{--fa:"\e54d"}.fa-person-rifle{--fa:"\e54e"}.fa-person-shelter{--fa:"\e54f"}.fa-person-walking-arrow-loop-left{--fa:"\e551"}.fa-person-walking-arrow-right{--fa:"\e552"}.fa-person-walking-dashed-line-arrow-right{--fa:"\e553"}.fa-person-walking-luggage{--fa:"\e554"}.fa-plane-circle-check{--fa:"\e555"}.fa-plane-circle-exclamation{--fa:"\e556"}.fa-plane-circle-xmark{--fa:"\e557"}.fa-plane-lock{--fa:"\e558"}.fa-plate-wheat{--fa:"\e55a"}.fa-plug-circle-bolt{--fa:"\e55b"}.fa-plug-circle-check{--fa:"\e55c"}.fa-plug-circle-exclamation{--fa:"\e55d"}.fa-plug-circle-minus{--fa:"\e55e"}.fa-plug-circle-plus{--fa:"\e55f"}.fa-plug-circle-xmark{--fa:"\e560"}.fa-ranking-star{--fa:"\e561"}.fa-road-barrier{--fa:"\e562"}.fa-road-bridge{--fa:"\e563"}.fa-road-circle-check{--fa:"\e564"}.fa-road-circle-exclamation{--fa:"\e565"}.fa-road-circle-xmark{--fa:"\e566"}.fa-road-lock{--fa:"\e567"}.fa-road-spikes{--fa:"\e568"}.fa-rug{--fa:"\e569"}.fa-sack-xmark{--fa:"\e56a"}.fa-school-circle-check{--fa:"\e56b"}.fa-school-circle-exclamation{--fa:"\e56c"}.fa-school-circle-xmark{--fa:"\e56d"}.fa-school-flag{--fa:"\e56e"}.fa-school-lock{--fa:"\e56f"}.fa-sheet-plastic{--fa:"\e571"}.fa-shield-cat{--fa:"\e572"}.fa-shield-dog{--fa:"\e573"}.fa-shield-heart{--fa:"\e574"}.fa-square-nfi{--fa:"\e576"}.fa-square-person-confined{--fa:"\e577"}.fa-square-virus{--fa:"\e578"}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:"\e579"}.fa-sun-plant-wilt{--fa:"\e57a"}.fa-tarp{--fa:"\e57b"}.fa-tarp-droplet{--fa:"\e57c"}.fa-tent{--fa:"\e57d"}.fa-tent-arrow-down-to-line{--fa:"\e57e"}.fa-tent-arrow-left-right{--fa:"\e57f"}.fa-tent-arrow-turn-left{--fa:"\e580"}.fa-tent-arrows-down{--fa:"\e581"}.fa-tents{--fa:"\e582"}.fa-toilet-portable{--fa:"\e583"}.fa-toilets-portable{--fa:"\e584"}.fa-tower-cell{--fa:"\e585"}.fa-tower-observation{--fa:"\e586"}.fa-tree-city{--fa:"\e587"}.fa-trowel{--fa:"\e589"}.fa-trowel-bricks{--fa:"\e58a"}.fa-truck-arrow-right{--fa:"\e58b"}.fa-truck-droplet{--fa:"\e58c"}.fa-truck-field{--fa:"\e58d"}.fa-truck-field-un{--fa:"\e58e"}.fa-truck-plane{--fa:"\e58f"}.fa-users-between-lines{--fa:"\e591"}.fa-users-line{--fa:"\e592"}.fa-users-rays{--fa:"\e593"}.fa-users-rectangle{--fa:"\e594"}.fa-users-viewfinder{--fa:"\e595"}.fa-vial-circle-check{--fa:"\e596"}.fa-vial-virus{--fa:"\e597"}.fa-wheat-awn-circle-exclamation{--fa:"\e598"}.fa-worm{--fa:"\e599"}.fa-xmarks-lines{--fa:"\e59a"}.fa-child-dress{--fa:"\e59c"}.fa-child-reaching{--fa:"\e59d"}.fa-file-circle-check{--fa:"\e5a0"}.fa-file-circle-xmark{--fa:"\e5a1"}.fa-person-through-window{--fa:"\e5a9"}.fa-plant-wilt{--fa:"\e5aa"}.fa-stapler{--fa:"\e5af"}.fa-train-tram{--fa:"\e5b4"}.fa-table-cells-column-lock{--fa:"\e678"}.fa-table-cells-row-lock{--fa:"\e67a"}.fa-web-awesome{--fa:"\e682"}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:"\e68f"}.fa-table-cells-row-unlock{--fa:"\e691"}.fa-chart-diagram{--fa:"\e695"}.fa-comment-nodes{--fa:"\e696"}.fa-file-fragment{--fa:"\e697"}.fa-file-half-dashed{--fa:"\e698"}.fa-hexagon-nodes{--fa:"\e699"}.fa-hexagon-nodes-bolt{--fa:"\e69a"}.fa-square-binary{--fa:"\e69b"}.fa-pentagon{--fa:"\e790"}.fa-non-binary{--fa:"\e807"}.fa-spiral{--fa:"\e80a"}.fa-picture-in-picture{--fa:"\e80b"}.fa-mobile-vibrate{--fa:"\e816"}.fa-single-quote-left{--fa:"\e81b"}.fa-single-quote-right{--fa:"\e81c"}.fa-bus-side{--fa:"\e81d"}.fa-heptagon,.fa-septagon{--fa:"\e820"}.fa-aquarius{--fa:"\e845"}.fa-aries{--fa:"\e846"}.fa-cancer{--fa:"\e847"}.fa-capricorn{--fa:"\e848"}.fa-gemini{--fa:"\e849"}.fa-leo{--fa:"\e84a"}.fa-libra{--fa:"\e84b"}.fa-pisces{--fa:"\e84c"}.fa-sagittarius{--fa:"\e84d"}.fa-scorpio{--fa:"\e84e"}.fa-taurus{--fa:"\e84f"}.fa-virgo{--fa:"\e850"}.fa-glass-martini,.fa-martini-glass-empty{--fa:"\f000"}.fa-music{--fa:"\f001"}.fa-magnifying-glass,.fa-search{--fa:"\f002"}.fa-heart{--fa:"\f004"}.fa-star{--fa:"\f005"}.fa-user,.fa-user-alt,.fa-user-large{--fa:"\f007"}.fa-film,.fa-film-alt,.fa-film-simple{--fa:"\f008"}.fa-table-cells-large,.fa-th-large{--fa:"\f009"}.fa-table-cells,.fa-th{--fa:"\f00a"}.fa-table-list,.fa-th-list{--fa:"\f00b"}.fa-check{--fa:"\f00c"}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:"\f00d"}.fa-magnifying-glass-plus,.fa-search-plus{--fa:"\f00e"}.fa-magnifying-glass-minus,.fa-search-minus{--fa:"\f010"}.fa-power-off{--fa:"\f011"}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:"\f012"}.fa-cog,.fa-gear{--fa:"\f013"}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:"\f015"}.fa-clock,.fa-clock-four{--fa:"\f017"}.fa-road{--fa:"\f018"}.fa-download{--fa:"\f019"}.fa-inbox{--fa:"\f01c"}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:"\f01e"}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:"\f021"}.fa-list-alt,.fa-rectangle-list{--fa:"\f022"}.fa-lock{--fa:"\f023"}.fa-flag{--fa:"\f024"}.fa-headphones,.fa-headphones-alt,.fa-headphones-simple{--fa:"\f025"}.fa-volume-off{--fa:"\f026"}.fa-volume-down,.fa-volume-low{--fa:"\f027"}.fa-volume-high,.fa-volume-up{--fa:"\f028"}.fa-qrcode{--fa:"\f029"}.fa-barcode{--fa:"\f02a"}.fa-tag{--fa:"\f02b"}.fa-tags{--fa:"\f02c"}.fa-book{--fa:"\f02d"}.fa-bookmark{--fa:"\f02e"}.fa-print{--fa:"\f02f"}.fa-camera,.fa-camera-alt{--fa:"\f030"}.fa-font{--fa:"\f031"}.fa-bold{--fa:"\f032"}.fa-italic{--fa:"\f033"}.fa-text-height{--fa:"\f034"}.fa-text-width{--fa:"\f035"}.fa-align-left{--fa:"\f036"}.fa-align-center{--fa:"\f037"}.fa-align-right{--fa:"\f038"}.fa-align-justify{--fa:"\f039"}.fa-list,.fa-list-squares{--fa:"\f03a"}.fa-dedent,.fa-outdent{--fa:"\f03b"}.fa-indent{--fa:"\f03c"}.fa-video,.fa-video-camera{--fa:"\f03d"}.fa-image{--fa:"\f03e"}.fa-location-pin,.fa-map-marker{--fa:"\f041"}.fa-adjust,.fa-circle-half-stroke{--fa:"\f042"}.fa-droplet,.fa-tint{--fa:"\f043"}.fa-edit,.fa-pen-to-square{--fa:"\f044"}.fa-arrows,.fa-arrows-up-down-left-right{--fa:"\f047"}.fa-backward-step,.fa-step-backward{--fa:"\f048"}.fa-backward-fast,.fa-fast-backward{--fa:"\f049"}.fa-backward{--fa:"\f04a"}.fa-play{--fa:"\f04b"}.fa-pause{--fa:"\f04c"}.fa-stop{--fa:"\f04d"}.fa-forward{--fa:"\f04e"}.fa-fast-forward,.fa-forward-fast{--fa:"\f050"}.fa-forward-step,.fa-step-forward{--fa:"\f051"}.fa-eject{--fa:"\f052"}.fa-chevron-left{--fa:"\f053"}.fa-chevron-right{--fa:"\f054"}.fa-circle-plus,.fa-plus-circle{--fa:"\f055"}.fa-circle-minus,.fa-minus-circle{--fa:"\f056"}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:"\f057"}.fa-check-circle,.fa-circle-check{--fa:"\f058"}.fa-circle-question,.fa-question-circle{--fa:"\f059"}.fa-circle-info,.fa-info-circle{--fa:"\f05a"}.fa-crosshairs{--fa:"\f05b"}.fa-ban,.fa-cancel{--fa:"\f05e"}.fa-arrow-left{--fa:"\f060"}.fa-arrow-right{--fa:"\f061"}.fa-arrow-up{--fa:"\f062"}.fa-arrow-down{--fa:"\f063"}.fa-mail-forward,.fa-share{--fa:"\f064"}.fa-expand{--fa:"\f065"}.fa-compress{--fa:"\f066"}.fa-minus,.fa-subtract{--fa:"\f068"}.fa-circle-exclamation,.fa-exclamation-circle{--fa:"\f06a"}.fa-gift{--fa:"\f06b"}.fa-leaf{--fa:"\f06c"}.fa-fire{--fa:"\f06d"}.fa-eye{--fa:"\f06e"}.fa-eye-slash{--fa:"\f070"}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:"\f071"}.fa-plane{--fa:"\f072"}.fa-calendar-alt,.fa-calendar-days{--fa:"\f073"}.fa-random,.fa-shuffle{--fa:"\f074"}.fa-comment{--fa:"\f075"}.fa-magnet{--fa:"\f076"}.fa-chevron-up{--fa:"\f077"}.fa-chevron-down{--fa:"\f078"}.fa-retweet{--fa:"\f079"}.fa-cart-shopping,.fa-shopping-cart{--fa:"\f07a"}.fa-folder,.fa-folder-blank{--fa:"\f07b"}.fa-folder-open{--fa:"\f07c"}.fa-arrows-up-down,.fa-arrows-v{--fa:"\f07d"}.fa-arrows-h,.fa-arrows-left-right{--fa:"\f07e"}.fa-bar-chart,.fa-chart-bar{--fa:"\f080"}.fa-camera-retro{--fa:"\f083"}.fa-key{--fa:"\f084"}.fa-cogs,.fa-gears{--fa:"\f085"}.fa-comments{--fa:"\f086"}.fa-star-half{--fa:"\f089"}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:"\f08b"}.fa-thumb-tack,.fa-thumbtack{--fa:"\f08d"}.fa-arrow-up-right-from-square,.fa-external-link{--fa:"\f08e"}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:"\f090"}.fa-trophy{--fa:"\f091"}.fa-upload{--fa:"\f093"}.fa-lemon{--fa:"\f094"}.fa-phone{--fa:"\f095"}.fa-phone-square,.fa-square-phone{--fa:"\f098"}.fa-unlock{--fa:"\f09c"}.fa-credit-card,.fa-credit-card-alt{--fa:"\f09d"}.fa-feed,.fa-rss{--fa:"\f09e"}.fa-hard-drive,.fa-hdd{--fa:"\f0a0"}.fa-bullhorn{--fa:"\f0a1"}.fa-certificate{--fa:"\f0a3"}.fa-hand-point-right{--fa:"\f0a4"}.fa-hand-point-left{--fa:"\f0a5"}.fa-hand-point-up{--fa:"\f0a6"}.fa-hand-point-down{--fa:"\f0a7"}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:"\f0a8"}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:"\f0a9"}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:"\f0aa"}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:"\f0ab"}.fa-globe{--fa:"\f0ac"}.fa-wrench{--fa:"\f0ad"}.fa-list-check,.fa-tasks{--fa:"\f0ae"}.fa-filter{--fa:"\f0b0"}.fa-briefcase{--fa:"\f0b1"}.fa-arrows-alt,.fa-up-down-left-right{--fa:"\f0b2"}.fa-users{--fa:"\f0c0"}.fa-chain,.fa-link{--fa:"\f0c1"}.fa-cloud{--fa:"\f0c2"}.fa-flask{--fa:"\f0c3"}.fa-cut,.fa-scissors{--fa:"\f0c4"}.fa-copy{--fa:"\f0c5"}.fa-paperclip{--fa:"\f0c6"}.fa-floppy-disk,.fa-save{--fa:"\f0c7"}.fa-square{--fa:"\f0c8"}.fa-bars,.fa-navicon{--fa:"\f0c9"}.fa-list-dots,.fa-list-ul{--fa:"\f0ca"}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:"\f0cb"}.fa-strikethrough{--fa:"\f0cc"}.fa-underline{--fa:"\f0cd"}.fa-table{--fa:"\f0ce"}.fa-magic,.fa-wand-magic{--fa:"\f0d0"}.fa-truck{--fa:"\f0d1"}.fa-money-bill{--fa:"\f0d6"}.fa-caret-down{--fa:"\f0d7"}.fa-caret-up{--fa:"\f0d8"}.fa-caret-left{--fa:"\f0d9"}.fa-caret-right{--fa:"\f0da"}.fa-columns,.fa-table-columns{--fa:"\f0db"}.fa-sort,.fa-unsorted{--fa:"\f0dc"}.fa-sort-desc,.fa-sort-down{--fa:"\f0dd"}.fa-sort-asc,.fa-sort-up{--fa:"\f0de"}.fa-envelope{--fa:"\f0e0"}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:"\f0e2"}.fa-gavel,.fa-legal{--fa:"\f0e3"}.fa-bolt,.fa-zap{--fa:"\f0e7"}.fa-sitemap{--fa:"\f0e8"}.fa-umbrella{--fa:"\f0e9"}.fa-file-clipboard,.fa-paste{--fa:"\f0ea"}.fa-lightbulb{--fa:"\f0eb"}.fa-arrow-right-arrow-left,.fa-exchange{--fa:"\f0ec"}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:"\f0ed"}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:"\f0ee"}.fa-user-doctor,.fa-user-md{--fa:"\f0f0"}.fa-stethoscope{--fa:"\f0f1"}.fa-suitcase{--fa:"\f0f2"}.fa-bell{--fa:"\f0f3"}.fa-coffee,.fa-mug-saucer{--fa:"\f0f4"}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:"\f0f8"}.fa-ambulance,.fa-truck-medical{--fa:"\f0f9"}.fa-medkit,.fa-suitcase-medical{--fa:"\f0fa"}.fa-fighter-jet,.fa-jet-fighter{--fa:"\f0fb"}.fa-beer,.fa-beer-mug-empty{--fa:"\f0fc"}.fa-h-square,.fa-square-h{--fa:"\f0fd"}.fa-plus-square,.fa-square-plus{--fa:"\f0fe"}.fa-angle-double-left,.fa-angles-left{--fa:"\f100"}.fa-angle-double-right,.fa-angles-right{--fa:"\f101"}.fa-angle-double-up,.fa-angles-up{--fa:"\f102"}.fa-angle-double-down,.fa-angles-down{--fa:"\f103"}.fa-angle-left{--fa:"\f104"}.fa-angle-right{--fa:"\f105"}.fa-angle-up{--fa:"\f106"}.fa-angle-down{--fa:"\f107"}.fa-laptop{--fa:"\f109"}.fa-tablet-button{--fa:"\f10a"}.fa-mobile-button{--fa:"\f10b"}.fa-quote-left,.fa-quote-left-alt{--fa:"\f10d"}.fa-quote-right,.fa-quote-right-alt{--fa:"\f10e"}.fa-spinner{--fa:"\f110"}.fa-circle{--fa:"\f111"}.fa-face-smile,.fa-smile{--fa:"\f118"}.fa-face-frown,.fa-frown{--fa:"\f119"}.fa-face-meh,.fa-meh{--fa:"\f11a"}.fa-gamepad{--fa:"\f11b"}.fa-keyboard{--fa:"\f11c"}.fa-flag-checkered{--fa:"\f11e"}.fa-terminal{--fa:"\f120"}.fa-code{--fa:"\f121"}.fa-mail-reply-all,.fa-reply-all{--fa:"\f122"}.fa-location-arrow{--fa:"\f124"}.fa-crop{--fa:"\f125"}.fa-code-branch{--fa:"\f126"}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:"\f127"}.fa-info{--fa:"\f129"}.fa-superscript{--fa:"\f12b"}.fa-subscript{--fa:"\f12c"}.fa-eraser{--fa:"\f12d"}.fa-puzzle-piece{--fa:"\f12e"}.fa-microphone{--fa:"\f130"}.fa-microphone-slash{--fa:"\f131"}.fa-shield,.fa-shield-blank{--fa:"\f132"}.fa-calendar{--fa:"\f133"}.fa-fire-extinguisher{--fa:"\f134"}.fa-rocket{--fa:"\f135"}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:"\f137"}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:"\f138"}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:"\f139"}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:"\f13a"}.fa-anchor{--fa:"\f13d"}.fa-unlock-alt,.fa-unlock-keyhole{--fa:"\f13e"}.fa-bullseye{--fa:"\f140"}.fa-ellipsis,.fa-ellipsis-h{--fa:"\f141"}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:"\f142"}.fa-rss-square,.fa-square-rss{--fa:"\f143"}.fa-circle-play,.fa-play-circle{--fa:"\f144"}.fa-ticket{--fa:"\f145"}.fa-minus-square,.fa-square-minus{--fa:"\f146"}.fa-arrow-turn-up,.fa-level-up{--fa:"\f148"}.fa-arrow-turn-down,.fa-level-down{--fa:"\f149"}.fa-check-square,.fa-square-check{--fa:"\f14a"}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:"\f14b"}.fa-external-link-square,.fa-square-arrow-up-right{--fa:"\f14c"}.fa-share-from-square,.fa-share-square{--fa:"\f14d"}.fa-compass{--fa:"\f14e"}.fa-caret-square-down,.fa-square-caret-down{--fa:"\f150"}.fa-caret-square-up,.fa-square-caret-up{--fa:"\f151"}.fa-caret-square-right,.fa-square-caret-right{--fa:"\f152"}.fa-eur,.fa-euro,.fa-euro-sign{--fa:"\f153"}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:"\f154"}.fa-rupee,.fa-rupee-sign{--fa:"\f156"}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:"\f157"}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:"\f158"}.fa-krw,.fa-won,.fa-won-sign{--fa:"\f159"}.fa-file{--fa:"\f15b"}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:"\f15c"}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:"\f15d"}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:"\f15e"}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:"\f160"}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:"\f161"}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:"\f162"}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:"\f163"}.fa-thumbs-up{--fa:"\f164"}.fa-thumbs-down{--fa:"\f165"}.fa-arrow-down-long,.fa-long-arrow-down{--fa:"\f175"}.fa-arrow-up-long,.fa-long-arrow-up{--fa:"\f176"}.fa-arrow-left-long,.fa-long-arrow-left{--fa:"\f177"}.fa-arrow-right-long,.fa-long-arrow-right{--fa:"\f178"}.fa-female,.fa-person-dress{--fa:"\f182"}.fa-male,.fa-person{--fa:"\f183"}.fa-sun{--fa:"\f185"}.fa-moon{--fa:"\f186"}.fa-archive,.fa-box-archive{--fa:"\f187"}.fa-bug{--fa:"\f188"}.fa-caret-square-left,.fa-square-caret-left{--fa:"\f191"}.fa-circle-dot,.fa-dot-circle{--fa:"\f192"}.fa-wheelchair{--fa:"\f193"}.fa-lira-sign{--fa:"\f195"}.fa-shuttle-space,.fa-space-shuttle{--fa:"\f197"}.fa-envelope-square,.fa-square-envelope{--fa:"\f199"}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:"\f19c"}.fa-graduation-cap,.fa-mortar-board{--fa:"\f19d"}.fa-language{--fa:"\f1ab"}.fa-fax{--fa:"\f1ac"}.fa-building{--fa:"\f1ad"}.fa-child{--fa:"\f1ae"}.fa-paw{--fa:"\f1b0"}.fa-cube{--fa:"\f1b2"}.fa-cubes{--fa:"\f1b3"}.fa-recycle{--fa:"\f1b8"}.fa-automobile,.fa-car{--fa:"\f1b9"}.fa-cab,.fa-taxi{--fa:"\f1ba"}.fa-tree{--fa:"\f1bb"}.fa-database{--fa:"\f1c0"}.fa-file-pdf{--fa:"\f1c1"}.fa-file-word{--fa:"\f1c2"}.fa-file-excel{--fa:"\f1c3"}.fa-file-powerpoint{--fa:"\f1c4"}.fa-file-image{--fa:"\f1c5"}.fa-file-archive,.fa-file-zipper{--fa:"\f1c6"}.fa-file-audio{--fa:"\f1c7"}.fa-file-video{--fa:"\f1c8"}.fa-file-code{--fa:"\f1c9"}.fa-life-ring{--fa:"\f1cd"}.fa-circle-notch{--fa:"\f1ce"}.fa-paper-plane{--fa:"\f1d8"}.fa-clock-rotate-left,.fa-history{--fa:"\f1da"}.fa-header,.fa-heading{--fa:"\f1dc"}.fa-paragraph{--fa:"\f1dd"}.fa-sliders,.fa-sliders-h{--fa:"\f1de"}.fa-share-alt,.fa-share-nodes{--fa:"\f1e0"}.fa-share-alt-square,.fa-square-share-nodes{--fa:"\f1e1"}.fa-bomb{--fa:"\f1e2"}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:"\f1e3"}.fa-teletype,.fa-tty{--fa:"\f1e4"}.fa-binoculars{--fa:"\f1e5"}.fa-plug{--fa:"\f1e6"}.fa-newspaper{--fa:"\f1ea"}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:"\f1eb"}.fa-calculator{--fa:"\f1ec"}.fa-bell-slash{--fa:"\f1f6"}.fa-trash{--fa:"\f1f8"}.fa-copyright{--fa:"\f1f9"}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:"\f1fb"}.fa-paint-brush,.fa-paintbrush{--fa:"\f1fc"}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:"\f1fd"}.fa-area-chart,.fa-chart-area{--fa:"\f1fe"}.fa-chart-pie,.fa-pie-chart{--fa:"\f200"}.fa-chart-line,.fa-line-chart{--fa:"\f201"}.fa-toggle-off{--fa:"\f204"}.fa-toggle-on{--fa:"\f205"}.fa-bicycle{--fa:"\f206"}.fa-bus{--fa:"\f207"}.fa-closed-captioning{--fa:"\f20a"}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:"\f20b"}.fa-cart-plus{--fa:"\f217"}.fa-cart-arrow-down{--fa:"\f218"}.fa-diamond{--fa:"\f219"}.fa-ship{--fa:"\f21a"}.fa-user-secret{--fa:"\f21b"}.fa-motorcycle{--fa:"\f21c"}.fa-street-view{--fa:"\f21d"}.fa-heart-pulse,.fa-heartbeat{--fa:"\f21e"}.fa-venus{--fa:"\f221"}.fa-mars{--fa:"\f222"}.fa-mercury{--fa:"\f223"}.fa-mars-and-venus{--fa:"\f224"}.fa-transgender,.fa-transgender-alt{--fa:"\f225"}.fa-venus-double{--fa:"\f226"}.fa-mars-double{--fa:"\f227"}.fa-venus-mars{--fa:"\f228"}.fa-mars-stroke{--fa:"\f229"}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:"\f22a"}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:"\f22b"}.fa-neuter{--fa:"\f22c"}.fa-genderless{--fa:"\f22d"}.fa-server{--fa:"\f233"}.fa-user-plus{--fa:"\f234"}.fa-user-times,.fa-user-xmark{--fa:"\f235"}.fa-bed{--fa:"\f236"}.fa-train{--fa:"\f238"}.fa-subway,.fa-train-subway{--fa:"\f239"}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:"\f240"}.fa-battery-4,.fa-battery-three-quarters{--fa:"\f241"}.fa-battery-3,.fa-battery-half{--fa:"\f242"}.fa-battery-2,.fa-battery-quarter{--fa:"\f243"}.fa-battery-0,.fa-battery-empty{--fa:"\f244"}.fa-arrow-pointer,.fa-mouse-pointer{--fa:"\f245"}.fa-i-cursor{--fa:"\f246"}.fa-object-group{--fa:"\f247"}.fa-object-ungroup{--fa:"\f248"}.fa-note-sticky,.fa-sticky-note{--fa:"\f249"}.fa-clone{--fa:"\f24d"}.fa-balance-scale,.fa-scale-balanced{--fa:"\f24e"}.fa-hourglass-1,.fa-hourglass-start{--fa:"\f251"}.fa-hourglass-2,.fa-hourglass-half{--fa:"\f252"}.fa-hourglass-3,.fa-hourglass-end{--fa:"\f253"}.fa-hourglass,.fa-hourglass-empty{--fa:"\f254"}.fa-hand-back-fist,.fa-hand-rock{--fa:"\f255"}.fa-hand,.fa-hand-paper{--fa:"\f256"}.fa-hand-scissors{--fa:"\f257"}.fa-hand-lizard{--fa:"\f258"}.fa-hand-spock{--fa:"\f259"}.fa-hand-pointer{--fa:"\f25a"}.fa-hand-peace{--fa:"\f25b"}.fa-trademark{--fa:"\f25c"}.fa-registered{--fa:"\f25d"}.fa-television,.fa-tv,.fa-tv-alt{--fa:"\f26c"}.fa-calendar-plus{--fa:"\f271"}.fa-calendar-minus{--fa:"\f272"}.fa-calendar-times,.fa-calendar-xmark{--fa:"\f273"}.fa-calendar-check{--fa:"\f274"}.fa-industry{--fa:"\f275"}.fa-map-pin{--fa:"\f276"}.fa-map-signs,.fa-signs-post{--fa:"\f277"}.fa-map{--fa:"\f279"}.fa-comment-alt,.fa-message{--fa:"\f27a"}.fa-circle-pause,.fa-pause-circle{--fa:"\f28b"}.fa-circle-stop,.fa-stop-circle{--fa:"\f28d"}.fa-bag-shopping,.fa-shopping-bag{--fa:"\f290"}.fa-basket-shopping,.fa-shopping-basket{--fa:"\f291"}.fa-universal-access{--fa:"\f29a"}.fa-blind,.fa-person-walking-with-cane{--fa:"\f29d"}.fa-audio-description{--fa:"\f29e"}.fa-phone-volume,.fa-volume-control-phone{--fa:"\f2a0"}.fa-braille{--fa:"\f2a1"}.fa-assistive-listening-systems,.fa-ear-listen{--fa:"\f2a2"}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:"\f2a3"}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:"\f2a4"}.fa-hands,.fa-sign-language,.fa-signing{--fa:"\f2a7"}.fa-eye-low-vision,.fa-low-vision{--fa:"\f2a8"}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:"\f2b4"}.fa-handshake,.fa-handshake-alt,.fa-handshake-simple{--fa:"\f2b5"}.fa-envelope-open{--fa:"\f2b6"}.fa-address-book,.fa-contact-book{--fa:"\f2b9"}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:"\f2bb"}.fa-circle-user,.fa-user-circle{--fa:"\f2bd"}.fa-id-badge{--fa:"\f2c1"}.fa-drivers-license,.fa-id-card{--fa:"\f2c2"}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:"\f2c7"}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:"\f2c8"}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:"\f2c9"}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:"\f2ca"}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:"\f2cb"}.fa-shower{--fa:"\f2cc"}.fa-bath,.fa-bathtub{--fa:"\f2cd"}.fa-podcast{--fa:"\f2ce"}.fa-window-maximize{--fa:"\f2d0"}.fa-window-minimize{--fa:"\f2d1"}.fa-window-restore{--fa:"\f2d2"}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:"\f2d3"}.fa-microchip{--fa:"\f2db"}.fa-snowflake{--fa:"\f2dc"}.fa-spoon,.fa-utensil-spoon{--fa:"\f2e5"}.fa-cutlery,.fa-utensils{--fa:"\f2e7"}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:"\f2ea"}.fa-trash-alt,.fa-trash-can{--fa:"\f2ed"}.fa-rotate,.fa-sync-alt{--fa:"\f2f1"}.fa-stopwatch{--fa:"\f2f2"}.fa-right-from-bracket,.fa-sign-out-alt{--fa:"\f2f5"}.fa-right-to-bracket,.fa-sign-in-alt{--fa:"\f2f6"}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:"\f2f9"}.fa-poo{--fa:"\f2fe"}.fa-images{--fa:"\f302"}.fa-pencil,.fa-pencil-alt{--fa:"\f303"}.fa-pen{--fa:"\f304"}.fa-pen-alt,.fa-pen-clip{--fa:"\f305"}.fa-octagon{--fa:"\f306"}.fa-down-long,.fa-long-arrow-alt-down{--fa:"\f309"}.fa-left-long,.fa-long-arrow-alt-left{--fa:"\f30a"}.fa-long-arrow-alt-right,.fa-right-long{--fa:"\f30b"}.fa-long-arrow-alt-up,.fa-up-long{--fa:"\f30c"}.fa-hexagon{--fa:"\f312"}.fa-file-edit,.fa-file-pen{--fa:"\f31c"}.fa-expand-arrows-alt,.fa-maximize{--fa:"\f31e"}.fa-clipboard{--fa:"\f328"}.fa-arrows-alt-h,.fa-left-right{--fa:"\f337"}.fa-arrows-alt-v,.fa-up-down{--fa:"\f338"}.fa-alarm-clock{--fa:"\f34e"}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:"\f358"}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:"\f359"}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:"\f35a"}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:"\f35b"}.fa-external-link-alt,.fa-up-right-from-square{--fa:"\f35d"}.fa-external-link-square-alt,.fa-square-up-right{--fa:"\f360"}.fa-exchange-alt,.fa-right-left{--fa:"\f362"}.fa-repeat{--fa:"\f363"}.fa-code-commit{--fa:"\f386"}.fa-code-merge{--fa:"\f387"}.fa-desktop,.fa-desktop-alt{--fa:"\f390"}.fa-gem{--fa:"\f3a5"}.fa-level-down-alt,.fa-turn-down{--fa:"\f3be"}.fa-level-up-alt,.fa-turn-up{--fa:"\f3bf"}.fa-lock-open{--fa:"\f3c1"}.fa-location-dot,.fa-map-marker-alt{--fa:"\f3c5"}.fa-microphone-alt,.fa-microphone-lines{--fa:"\f3c9"}.fa-mobile-alt,.fa-mobile-screen-button{--fa:"\f3cd"}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:"\f3ce"}.fa-mobile-android-alt,.fa-mobile-screen{--fa:"\f3cf"}.fa-money-bill-1,.fa-money-bill-alt{--fa:"\f3d1"}.fa-phone-slash{--fa:"\f3dd"}.fa-image-portrait,.fa-portrait{--fa:"\f3e0"}.fa-mail-reply,.fa-reply{--fa:"\f3e5"}.fa-shield-alt,.fa-shield-halved{--fa:"\f3ed"}.fa-tablet-alt,.fa-tablet-screen-button{--fa:"\f3fa"}.fa-tablet,.fa-tablet-android{--fa:"\f3fb"}.fa-ticket-alt,.fa-ticket-simple{--fa:"\f3ff"}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:"\f410"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:"\f422"}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:"\f424"}.fa-baseball-bat-ball{--fa:"\f432"}.fa-baseball,.fa-baseball-ball{--fa:"\f433"}.fa-basketball,.fa-basketball-ball{--fa:"\f434"}.fa-bowling-ball{--fa:"\f436"}.fa-chess{--fa:"\f439"}.fa-chess-bishop{--fa:"\f43a"}.fa-chess-board{--fa:"\f43c"}.fa-chess-king{--fa:"\f43f"}.fa-chess-knight{--fa:"\f441"}.fa-chess-pawn{--fa:"\f443"}.fa-chess-queen{--fa:"\f445"}.fa-chess-rook{--fa:"\f447"}.fa-dumbbell{--fa:"\f44b"}.fa-football,.fa-football-ball{--fa:"\f44e"}.fa-golf-ball,.fa-golf-ball-tee{--fa:"\f450"}.fa-hockey-puck{--fa:"\f453"}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:"\f458"}.fa-square-full{--fa:"\f45c"}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:"\f45d"}.fa-volleyball,.fa-volleyball-ball{--fa:"\f45f"}.fa-allergies,.fa-hand-dots{--fa:"\f461"}.fa-band-aid,.fa-bandage{--fa:"\f462"}.fa-box{--fa:"\f466"}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:"\f468"}.fa-briefcase-medical{--fa:"\f469"}.fa-burn,.fa-fire-flame-simple{--fa:"\f46a"}.fa-capsules{--fa:"\f46b"}.fa-clipboard-check{--fa:"\f46c"}.fa-clipboard-list{--fa:"\f46d"}.fa-diagnoses,.fa-person-dots-from-line{--fa:"\f470"}.fa-dna{--fa:"\f471"}.fa-dolly,.fa-dolly-box{--fa:"\f472"}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:"\f474"}.fa-file-medical{--fa:"\f477"}.fa-file-medical-alt,.fa-file-waveform{--fa:"\f478"}.fa-first-aid,.fa-kit-medical{--fa:"\f479"}.fa-circle-h,.fa-hospital-symbol{--fa:"\f47e"}.fa-id-card-alt,.fa-id-card-clip{--fa:"\f47f"}.fa-notes-medical{--fa:"\f481"}.fa-pallet{--fa:"\f482"}.fa-pills{--fa:"\f484"}.fa-prescription-bottle{--fa:"\f485"}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:"\f486"}.fa-bed-pulse,.fa-procedures{--fa:"\f487"}.fa-shipping-fast,.fa-truck-fast{--fa:"\f48b"}.fa-smoking{--fa:"\f48d"}.fa-syringe{--fa:"\f48e"}.fa-tablets{--fa:"\f490"}.fa-thermometer{--fa:"\f491"}.fa-vial{--fa:"\f492"}.fa-vials{--fa:"\f493"}.fa-warehouse{--fa:"\f494"}.fa-weight,.fa-weight-scale{--fa:"\f496"}.fa-x-ray{--fa:"\f497"}.fa-box-open{--fa:"\f49e"}.fa-comment-dots,.fa-commenting{--fa:"\f4ad"}.fa-comment-slash{--fa:"\f4b3"}.fa-couch{--fa:"\f4b8"}.fa-circle-dollar-to-slot,.fa-donate{--fa:"\f4b9"}.fa-dove{--fa:"\f4ba"}.fa-hand-holding{--fa:"\f4bd"}.fa-hand-holding-heart{--fa:"\f4be"}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:"\f4c0"}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:"\f4c1"}.fa-hands-holding{--fa:"\f4c2"}.fa-hands-helping,.fa-handshake-angle{--fa:"\f4c4"}.fa-parachute-box{--fa:"\f4cd"}.fa-people-carry,.fa-people-carry-box{--fa:"\f4ce"}.fa-piggy-bank{--fa:"\f4d3"}.fa-ribbon{--fa:"\f4d6"}.fa-route{--fa:"\f4d7"}.fa-seedling,.fa-sprout{--fa:"\f4d8"}.fa-sign,.fa-sign-hanging{--fa:"\f4d9"}.fa-face-smile-wink,.fa-smile-wink{--fa:"\f4da"}.fa-tape{--fa:"\f4db"}.fa-truck-loading,.fa-truck-ramp-box{--fa:"\f4de"}.fa-truck-moving{--fa:"\f4df"}.fa-video-slash{--fa:"\f4e2"}.fa-wine-glass{--fa:"\f4e3"}.fa-user-astronaut{--fa:"\f4fb"}.fa-user-check{--fa:"\f4fc"}.fa-user-clock{--fa:"\f4fd"}.fa-user-cog,.fa-user-gear{--fa:"\f4fe"}.fa-user-edit,.fa-user-pen{--fa:"\f4ff"}.fa-user-friends,.fa-user-group{--fa:"\f500"}.fa-user-graduate{--fa:"\f501"}.fa-user-lock{--fa:"\f502"}.fa-user-minus{--fa:"\f503"}.fa-user-ninja{--fa:"\f504"}.fa-user-shield{--fa:"\f505"}.fa-user-alt-slash,.fa-user-large-slash,.fa-user-slash{--fa:"\f506"}.fa-user-tag{--fa:"\f507"}.fa-user-tie{--fa:"\f508"}.fa-users-cog,.fa-users-gear{--fa:"\f509"}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:"\f515"}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:"\f516"}.fa-blender{--fa:"\f517"}.fa-book-open{--fa:"\f518"}.fa-broadcast-tower,.fa-tower-broadcast{--fa:"\f519"}.fa-broom{--fa:"\f51a"}.fa-blackboard,.fa-chalkboard{--fa:"\f51b"}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:"\f51c"}.fa-church{--fa:"\f51d"}.fa-coins{--fa:"\f51e"}.fa-compact-disc{--fa:"\f51f"}.fa-crow{--fa:"\f520"}.fa-crown{--fa:"\f521"}.fa-dice{--fa:"\f522"}.fa-dice-five{--fa:"\f523"}.fa-dice-four{--fa:"\f524"}.fa-dice-one{--fa:"\f525"}.fa-dice-six{--fa:"\f526"}.fa-dice-three{--fa:"\f527"}.fa-dice-two{--fa:"\f528"}.fa-divide{--fa:"\f529"}.fa-door-closed{--fa:"\f52a"}.fa-door-open{--fa:"\f52b"}.fa-feather{--fa:"\f52d"}.fa-frog{--fa:"\f52e"}.fa-gas-pump{--fa:"\f52f"}.fa-glasses{--fa:"\f530"}.fa-greater-than-equal{--fa:"\f532"}.fa-helicopter{--fa:"\f533"}.fa-infinity{--fa:"\f534"}.fa-kiwi-bird{--fa:"\f535"}.fa-less-than-equal{--fa:"\f537"}.fa-memory{--fa:"\f538"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:"\f539"}.fa-money-bill-wave{--fa:"\f53a"}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:"\f53b"}.fa-money-check{--fa:"\f53c"}.fa-money-check-alt,.fa-money-check-dollar{--fa:"\f53d"}.fa-not-equal{--fa:"\f53e"}.fa-palette{--fa:"\f53f"}.fa-parking,.fa-square-parking{--fa:"\f540"}.fa-diagram-project,.fa-project-diagram{--fa:"\f542"}.fa-receipt{--fa:"\f543"}.fa-robot{--fa:"\f544"}.fa-ruler{--fa:"\f545"}.fa-ruler-combined{--fa:"\f546"}.fa-ruler-horizontal{--fa:"\f547"}.fa-ruler-vertical{--fa:"\f548"}.fa-school{--fa:"\f549"}.fa-screwdriver{--fa:"\f54a"}.fa-shoe-prints{--fa:"\f54b"}.fa-skull{--fa:"\f54c"}.fa-ban-smoking,.fa-smoking-ban{--fa:"\f54d"}.fa-store{--fa:"\f54e"}.fa-shop,.fa-store-alt{--fa:"\f54f"}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:"\f550"}.fa-stroopwafel{--fa:"\f551"}.fa-toolbox{--fa:"\f552"}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:"\f553"}.fa-person-walking,.fa-walking{--fa:"\f554"}.fa-wallet{--fa:"\f555"}.fa-angry,.fa-face-angry{--fa:"\f556"}.fa-archway{--fa:"\f557"}.fa-atlas,.fa-book-atlas{--fa:"\f558"}.fa-award{--fa:"\f559"}.fa-backspace,.fa-delete-left{--fa:"\f55a"}.fa-bezier-curve{--fa:"\f55b"}.fa-bong{--fa:"\f55c"}.fa-brush{--fa:"\f55d"}.fa-bus-alt,.fa-bus-simple{--fa:"\f55e"}.fa-cannabis{--fa:"\f55f"}.fa-check-double{--fa:"\f560"}.fa-cocktail,.fa-martini-glass-citrus{--fa:"\f561"}.fa-bell-concierge,.fa-concierge-bell{--fa:"\f562"}.fa-cookie{--fa:"\f563"}.fa-cookie-bite{--fa:"\f564"}.fa-crop-alt,.fa-crop-simple{--fa:"\f565"}.fa-digital-tachograph,.fa-tachograph-digital{--fa:"\f566"}.fa-dizzy,.fa-face-dizzy{--fa:"\f567"}.fa-compass-drafting,.fa-drafting-compass{--fa:"\f568"}.fa-drum{--fa:"\f569"}.fa-drum-steelpan{--fa:"\f56a"}.fa-feather-alt,.fa-feather-pointed{--fa:"\f56b"}.fa-file-contract{--fa:"\f56c"}.fa-file-arrow-down,.fa-file-download{--fa:"\f56d"}.fa-arrow-right-from-file,.fa-file-export{--fa:"\f56e"}.fa-arrow-right-to-file,.fa-file-import{--fa:"\f56f"}.fa-file-invoice{--fa:"\f570"}.fa-file-invoice-dollar{--fa:"\f571"}.fa-file-prescription{--fa:"\f572"}.fa-file-signature{--fa:"\f573"}.fa-file-arrow-up,.fa-file-upload{--fa:"\f574"}.fa-fill{--fa:"\f575"}.fa-fill-drip{--fa:"\f576"}.fa-fingerprint{--fa:"\f577"}.fa-fish{--fa:"\f578"}.fa-face-flushed,.fa-flushed{--fa:"\f579"}.fa-face-frown-open,.fa-frown-open{--fa:"\f57a"}.fa-glass-martini-alt,.fa-martini-glass{--fa:"\f57b"}.fa-earth-africa,.fa-globe-africa{--fa:"\f57c"}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:"\f57d"}.fa-earth-asia,.fa-globe-asia{--fa:"\f57e"}.fa-face-grimace,.fa-grimace{--fa:"\f57f"}.fa-face-grin,.fa-grin{--fa:"\f580"}.fa-face-grin-wide,.fa-grin-alt{--fa:"\f581"}.fa-face-grin-beam,.fa-grin-beam{--fa:"\f582"}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:"\f583"}.fa-face-grin-hearts,.fa-grin-hearts{--fa:"\f584"}.fa-face-grin-squint,.fa-grin-squint{--fa:"\f585"}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:"\f586"}.fa-face-grin-stars,.fa-grin-stars{--fa:"\f587"}.fa-face-grin-tears,.fa-grin-tears{--fa:"\f588"}.fa-face-grin-tongue,.fa-grin-tongue{--fa:"\f589"}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:"\f58a"}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:"\f58b"}.fa-face-grin-wink,.fa-grin-wink{--fa:"\f58c"}.fa-grid-horizontal,.fa-grip,.fa-grip-horizontal{--fa:"\f58d"}.fa-grid-vertical,.fa-grip-vertical{--fa:"\f58e"}.fa-headset{--fa:"\f590"}.fa-highlighter{--fa:"\f591"}.fa-hot-tub,.fa-hot-tub-person{--fa:"\f593"}.fa-hotel{--fa:"\f594"}.fa-joint{--fa:"\f595"}.fa-face-kiss,.fa-kiss{--fa:"\f596"}.fa-face-kiss-beam,.fa-kiss-beam{--fa:"\f597"}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:"\f598"}.fa-face-laugh,.fa-laugh{--fa:"\f599"}.fa-face-laugh-beam,.fa-laugh-beam{--fa:"\f59a"}.fa-face-laugh-squint,.fa-laugh-squint{--fa:"\f59b"}.fa-face-laugh-wink,.fa-laugh-wink{--fa:"\f59c"}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:"\f59d"}.fa-map-location,.fa-map-marked{--fa:"\f59f"}.fa-map-location-dot,.fa-map-marked-alt{--fa:"\f5a0"}.fa-marker{--fa:"\f5a1"}.fa-medal{--fa:"\f5a2"}.fa-face-meh-blank,.fa-meh-blank{--fa:"\f5a4"}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:"\f5a5"}.fa-monument{--fa:"\f5a6"}.fa-mortar-pestle{--fa:"\f5a7"}.fa-paint-roller{--fa:"\f5aa"}.fa-passport{--fa:"\f5ab"}.fa-pen-fancy{--fa:"\f5ac"}.fa-pen-nib{--fa:"\f5ad"}.fa-pen-ruler,.fa-pencil-ruler{--fa:"\f5ae"}.fa-plane-arrival{--fa:"\f5af"}.fa-plane-departure{--fa:"\f5b0"}.fa-prescription{--fa:"\f5b1"}.fa-face-sad-cry,.fa-sad-cry{--fa:"\f5b3"}.fa-face-sad-tear,.fa-sad-tear{--fa:"\f5b4"}.fa-shuttle-van,.fa-van-shuttle{--fa:"\f5b6"}.fa-signature{--fa:"\f5b7"}.fa-face-smile-beam,.fa-smile-beam{--fa:"\f5b8"}.fa-solar-panel{--fa:"\f5ba"}.fa-lotus,.fa-spa{--fa:"\f5bb"}.fa-splotch{--fa:"\f5bc"}.fa-spray-can{--fa:"\f5bd"}.fa-stamp{--fa:"\f5bf"}.fa-star-half-alt,.fa-star-half-stroke{--fa:"\f5c0"}.fa-suitcase-rolling{--fa:"\f5c1"}.fa-face-surprise,.fa-surprise{--fa:"\f5c2"}.fa-swatchbook{--fa:"\f5c3"}.fa-person-swimming,.fa-swimmer{--fa:"\f5c4"}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:"\f5c5"}.fa-droplet-slash,.fa-tint-slash{--fa:"\f5c7"}.fa-face-tired,.fa-tired{--fa:"\f5c8"}.fa-tooth{--fa:"\f5c9"}.fa-umbrella-beach{--fa:"\f5ca"}.fa-weight-hanging{--fa:"\f5cd"}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:"\f5ce"}.fa-air-freshener,.fa-spray-can-sparkles{--fa:"\f5d0"}.fa-apple-alt,.fa-apple-whole{--fa:"\f5d1"}.fa-atom{--fa:"\f5d2"}.fa-bone{--fa:"\f5d7"}.fa-book-open-reader,.fa-book-reader{--fa:"\f5da"}.fa-brain{--fa:"\f5dc"}.fa-car-alt,.fa-car-rear{--fa:"\f5de"}.fa-battery-car,.fa-car-battery{--fa:"\f5df"}.fa-car-burst,.fa-car-crash{--fa:"\f5e1"}.fa-car-side{--fa:"\f5e4"}.fa-charging-station{--fa:"\f5e7"}.fa-diamond-turn-right,.fa-directions{--fa:"\f5eb"}.fa-draw-polygon,.fa-vector-polygon{--fa:"\f5ee"}.fa-laptop-code{--fa:"\f5fc"}.fa-layer-group{--fa:"\f5fd"}.fa-location,.fa-location-crosshairs{--fa:"\f601"}.fa-lungs{--fa:"\f604"}.fa-microscope{--fa:"\f610"}.fa-oil-can{--fa:"\f613"}.fa-poop{--fa:"\f619"}.fa-shapes,.fa-triangle-circle-square{--fa:"\f61f"}.fa-star-of-life{--fa:"\f621"}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:"\f624"}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:"\f625"}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:"\f629"}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:"\f62a"}.fa-teeth{--fa:"\f62e"}.fa-teeth-open{--fa:"\f62f"}.fa-masks-theater,.fa-theater-masks{--fa:"\f630"}.fa-traffic-light{--fa:"\f637"}.fa-truck-monster{--fa:"\f63b"}.fa-truck-pickup{--fa:"\f63c"}.fa-ad,.fa-rectangle-ad{--fa:"\f641"}.fa-ankh{--fa:"\f644"}.fa-bible,.fa-book-bible{--fa:"\f647"}.fa-briefcase-clock,.fa-business-time{--fa:"\f64a"}.fa-city{--fa:"\f64f"}.fa-comment-dollar{--fa:"\f651"}.fa-comments-dollar{--fa:"\f653"}.fa-cross{--fa:"\f654"}.fa-dharmachakra{--fa:"\f655"}.fa-envelope-open-text{--fa:"\f658"}.fa-folder-minus{--fa:"\f65d"}.fa-folder-plus{--fa:"\f65e"}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:"\f662"}.fa-gopuram{--fa:"\f664"}.fa-hamsa{--fa:"\f665"}.fa-bahai,.fa-haykal{--fa:"\f666"}.fa-jedi{--fa:"\f669"}.fa-book-journal-whills,.fa-journal-whills{--fa:"\f66a"}.fa-kaaba{--fa:"\f66b"}.fa-khanda{--fa:"\f66d"}.fa-landmark{--fa:"\f66f"}.fa-envelopes-bulk,.fa-mail-bulk{--fa:"\f674"}.fa-menorah{--fa:"\f676"}.fa-mosque{--fa:"\f678"}.fa-om{--fa:"\f679"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:"\f67b"}.fa-peace{--fa:"\f67c"}.fa-place-of-worship{--fa:"\f67f"}.fa-poll,.fa-square-poll-vertical{--fa:"\f681"}.fa-poll-h,.fa-square-poll-horizontal{--fa:"\f682"}.fa-person-praying,.fa-pray{--fa:"\f683"}.fa-hands-praying,.fa-praying-hands{--fa:"\f684"}.fa-book-quran,.fa-quran{--fa:"\f687"}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:"\f688"}.fa-magnifying-glass-location,.fa-search-location{--fa:"\f689"}.fa-socks{--fa:"\f696"}.fa-square-root-alt,.fa-square-root-variable{--fa:"\f698"}.fa-star-and-crescent{--fa:"\f699"}.fa-star-of-david{--fa:"\f69a"}.fa-synagogue{--fa:"\f69b"}.fa-scroll-torah,.fa-torah{--fa:"\f6a0"}.fa-torii-gate{--fa:"\f6a1"}.fa-vihara{--fa:"\f6a7"}.fa-volume,.fa-volume-medium{--fa:"\f6a8"}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:"\f6a9"}.fa-yin-yang{--fa:"\f6ad"}.fa-blender-phone{--fa:"\f6b6"}.fa-book-dead,.fa-book-skull{--fa:"\f6b7"}.fa-campground{--fa:"\f6bb"}.fa-cat{--fa:"\f6be"}.fa-chair{--fa:"\f6c0"}.fa-cloud-moon{--fa:"\f6c3"}.fa-cloud-sun{--fa:"\f6c4"}.fa-cow{--fa:"\f6c8"}.fa-dice-d20{--fa:"\f6cf"}.fa-dice-d6{--fa:"\f6d1"}.fa-dog{--fa:"\f6d3"}.fa-dragon{--fa:"\f6d5"}.fa-drumstick-bite{--fa:"\f6d7"}.fa-dungeon{--fa:"\f6d9"}.fa-file-csv{--fa:"\f6dd"}.fa-fist-raised,.fa-hand-fist{--fa:"\f6de"}.fa-ghost{--fa:"\f6e2"}.fa-hammer{--fa:"\f6e3"}.fa-hanukiah{--fa:"\f6e6"}.fa-hat-wizard{--fa:"\f6e8"}.fa-hiking,.fa-person-hiking{--fa:"\f6ec"}.fa-hippo{--fa:"\f6ed"}.fa-horse{--fa:"\f6f0"}.fa-house-chimney-crack,.fa-house-damage{--fa:"\f6f1"}.fa-hryvnia,.fa-hryvnia-sign{--fa:"\f6f2"}.fa-mask{--fa:"\f6fa"}.fa-mountain{--fa:"\f6fc"}.fa-network-wired{--fa:"\f6ff"}.fa-otter{--fa:"\f700"}.fa-ring{--fa:"\f70b"}.fa-person-running,.fa-running{--fa:"\f70c"}.fa-scroll{--fa:"\f70e"}.fa-skull-crossbones{--fa:"\f714"}.fa-slash{--fa:"\f715"}.fa-spider{--fa:"\f717"}.fa-toilet-paper,.fa-toilet-paper-alt,.fa-toilet-paper-blank{--fa:"\f71e"}.fa-tractor{--fa:"\f722"}.fa-user-injured{--fa:"\f728"}.fa-vr-cardboard{--fa:"\f729"}.fa-wand-sparkles{--fa:"\f72b"}.fa-wind{--fa:"\f72e"}.fa-wine-bottle{--fa:"\f72f"}.fa-cloud-meatball{--fa:"\f73b"}.fa-cloud-moon-rain{--fa:"\f73c"}.fa-cloud-rain{--fa:"\f73d"}.fa-cloud-showers-heavy{--fa:"\f740"}.fa-cloud-sun-rain{--fa:"\f743"}.fa-democrat{--fa:"\f747"}.fa-flag-usa{--fa:"\f74d"}.fa-hurricane{--fa:"\f751"}.fa-landmark-alt,.fa-landmark-dome{--fa:"\f752"}.fa-meteor{--fa:"\f753"}.fa-person-booth{--fa:"\f756"}.fa-poo-bolt,.fa-poo-storm{--fa:"\f75a"}.fa-rainbow{--fa:"\f75b"}.fa-republican{--fa:"\f75e"}.fa-smog{--fa:"\f75f"}.fa-temperature-high{--fa:"\f769"}.fa-temperature-low{--fa:"\f76b"}.fa-cloud-bolt,.fa-thunderstorm{--fa:"\f76c"}.fa-tornado{--fa:"\f76f"}.fa-volcano{--fa:"\f770"}.fa-check-to-slot,.fa-vote-yea{--fa:"\f772"}.fa-water{--fa:"\f773"}.fa-baby{--fa:"\f77c"}.fa-baby-carriage,.fa-carriage-baby{--fa:"\f77d"}.fa-biohazard{--fa:"\f780"}.fa-blog{--fa:"\f781"}.fa-calendar-day{--fa:"\f783"}.fa-calendar-week{--fa:"\f784"}.fa-candy-cane{--fa:"\f786"}.fa-carrot{--fa:"\f787"}.fa-cash-register{--fa:"\f788"}.fa-compress-arrows-alt,.fa-minimize{--fa:"\f78c"}.fa-dumpster{--fa:"\f793"}.fa-dumpster-fire{--fa:"\f794"}.fa-ethernet{--fa:"\f796"}.fa-gifts{--fa:"\f79c"}.fa-champagne-glasses,.fa-glass-cheers{--fa:"\f79f"}.fa-glass-whiskey,.fa-whiskey-glass{--fa:"\f7a0"}.fa-earth-europe,.fa-globe-europe{--fa:"\f7a2"}.fa-grip-lines{--fa:"\f7a4"}.fa-grip-lines-vertical{--fa:"\f7a5"}.fa-guitar{--fa:"\f7a6"}.fa-heart-broken,.fa-heart-crack{--fa:"\f7a9"}.fa-holly-berry{--fa:"\f7aa"}.fa-horse-head{--fa:"\f7ab"}.fa-icicles{--fa:"\f7ad"}.fa-igloo{--fa:"\f7ae"}.fa-mitten{--fa:"\f7b5"}.fa-mug-hot{--fa:"\f7b6"}.fa-radiation{--fa:"\f7b9"}.fa-circle-radiation,.fa-radiation-alt{--fa:"\f7ba"}.fa-restroom{--fa:"\f7bd"}.fa-satellite{--fa:"\f7bf"}.fa-satellite-dish{--fa:"\f7c0"}.fa-sd-card{--fa:"\f7c2"}.fa-sim-card{--fa:"\f7c4"}.fa-person-skating,.fa-skating{--fa:"\f7c5"}.fa-person-skiing,.fa-skiing{--fa:"\f7c9"}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:"\f7ca"}.fa-sleigh{--fa:"\f7cc"}.fa-comment-sms,.fa-sms{--fa:"\f7cd"}.fa-person-snowboarding,.fa-snowboarding{--fa:"\f7ce"}.fa-snowman{--fa:"\f7d0"}.fa-snowplow{--fa:"\f7d2"}.fa-tenge,.fa-tenge-sign{--fa:"\f7d7"}.fa-toilet{--fa:"\f7d8"}.fa-screwdriver-wrench,.fa-tools{--fa:"\f7d9"}.fa-cable-car,.fa-tram{--fa:"\f7da"}.fa-fire-alt,.fa-fire-flame-curved{--fa:"\f7e4"}.fa-bacon{--fa:"\f7e5"}.fa-book-medical{--fa:"\f7e6"}.fa-bread-slice{--fa:"\f7ec"}.fa-cheese{--fa:"\f7ef"}.fa-clinic-medical,.fa-house-chimney-medical{--fa:"\f7f2"}.fa-clipboard-user{--fa:"\f7f3"}.fa-comment-medical{--fa:"\f7f5"}.fa-crutch{--fa:"\f7f7"}.fa-disease{--fa:"\f7fa"}.fa-egg{--fa:"\f7fb"}.fa-folder-tree{--fa:"\f802"}.fa-burger,.fa-hamburger{--fa:"\f805"}.fa-hand-middle-finger{--fa:"\f806"}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:"\f807"}.fa-hospital-user{--fa:"\f80d"}.fa-hotdog{--fa:"\f80f"}.fa-ice-cream{--fa:"\f810"}.fa-laptop-medical{--fa:"\f812"}.fa-pager{--fa:"\f815"}.fa-pepper-hot{--fa:"\f816"}.fa-pizza-slice{--fa:"\f818"}.fa-sack-dollar{--fa:"\f81d"}.fa-book-tanakh,.fa-tanakh{--fa:"\f827"}.fa-bars-progress,.fa-tasks-alt{--fa:"\f828"}.fa-trash-arrow-up,.fa-trash-restore{--fa:"\f829"}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:"\f82a"}.fa-user-nurse{--fa:"\f82f"}.fa-wave-square{--fa:"\f83e"}.fa-biking,.fa-person-biking{--fa:"\f84a"}.fa-border-all{--fa:"\f84c"}.fa-border-none{--fa:"\f850"}.fa-border-style,.fa-border-top-left{--fa:"\f853"}.fa-digging,.fa-person-digging{--fa:"\f85e"}.fa-fan{--fa:"\f863"}.fa-heart-music-camera-bolt,.fa-icons{--fa:"\f86d"}.fa-phone-alt,.fa-phone-flip{--fa:"\f879"}.fa-phone-square-alt,.fa-square-phone-flip{--fa:"\f87b"}.fa-photo-film,.fa-photo-video{--fa:"\f87c"}.fa-remove-format,.fa-text-slash{--fa:"\f87d"}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:"\f881"}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:"\f882"}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:"\f884"}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:"\f885"}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:"\f886"}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:"\f887"}.fa-spell-check{--fa:"\f891"}.fa-voicemail{--fa:"\f897"}.fa-hat-cowboy{--fa:"\f8c0"}.fa-hat-cowboy-side{--fa:"\f8c1"}.fa-computer-mouse,.fa-mouse{--fa:"\f8cc"}.fa-radio{--fa:"\f8d7"}.fa-record-vinyl{--fa:"\f8d9"}.fa-walkie-talkie{--fa:"\f8ef"}.fa-caravan{--fa:"\f8ff"}

/* static/home/oss/fontawesome-free-7.3.1-web/css/solid.min.css */
/*!
 * Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2026 Fonticons, Inc.
 */
:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(/static/home/oss/fontawesome-free-7.3.1-web/webfonts/fa-solid-900.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}
/* static/home/oss/fontawesome-free-7.3.1-web/css/regular.min.css */
/*!
 * Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2026 Fonticons, Inc.
 */
:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(/static/home/oss/fontawesome-free-7.3.1-web/webfonts/fa-regular-400.woff2)}.far{--fa-style:400}.fa-classic,.far{--fa-family:var(--fa-family-classic)}.fa-regular{--fa-style:400}
/* static/home/oss/bootstrap.row.css */
@charset "UTF-8";
/*!
* 精简版，仅保留 .row .col .container
 */


.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-right: calc(var(--bs-gutter-x) / -2);
  margin-left: calc(var(--bs-gutter-x) / -2);
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) / 2);
  padding-left: calc(var(--bs-gutter-x) / 2);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.3333333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.6666666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.3333333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.6666666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.3333333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.6666666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }

  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }

  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }

  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }

  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }

  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }

  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }

  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }

  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }

  .col-md-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-md-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .col-md-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }

  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-md-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }

  .col-md-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }

  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-md-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }

  .col-md-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }

  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }

  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }

  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }

  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }

  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }

  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }

  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }

}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }

  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }

  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }

  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }

  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }

  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }

  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
}
/* static/home/oss/semi@2.27.0_dist.color.css */
@charset "UTF-8"; /*! 仅保留颜色值 */
body {
    --semi-transition_duration-slowest: 0ms;
    --semi-transition_duration-slower: 0ms;
    --semi-transition_duration-slow: 0ms;
    --semi-transition_duration-normal: 0ms;
    --semi-transition_duration-fast: 0ms;
    --semi-transition_duration-faster: 0ms;
    --semi-transition_duration-fastest: 0ms;
    --semi-transition_duration-none: 0ms;
    --semi-transition_function-linear: linear;
    --semi-transition_function-ease: ease;
    --semi-transition_function-easeIn: ease-in;
    --semi-transition_function-easeOut: ease-out;
    --semi-transition_function-easeInIOut: ease-in-out;
    --semi-transition_delay-none: 0ms;
    --semi-transition_delay-slowest: 0ms;
    --semi-transition_delay-slower: 0ms;
    --semi-transition_delay-slow: 0ms;
    --semi-transition_delay-normal: 0ms;
    --semi-transition_delay-fast: 0ms;
    --semi-transition_delay-faster: 0ms;
    --semi-transition_delay-fastest: 0ms;
    --semi-transform_scale-none: scale(1,1);
    --semi-transform_scale-small: scale(1,1);
    --semi-transform_scale-medium: scale(1,1);
    --semi-transform_scale-large: scale(1,1);
    --semi-transform-rotate-none: rotate(0deg);
    --semi-transform_rotate-clockwise90deg: rotate(90deg);
    --semi-transform_rotate-clockwise180deg: rotate(180deg);
    --semi-transform_rotate-clockwise270deg: rotate(270deg);
    --semi-transform_rotate-clockwise360deg: rotate(360deg);
    --semi-transform_rotate-anticlockwise90deg: rotate(-90deg);
    --semi-transform_rotate-anticlockwise180deg: rotate(-180deg);
    --semi-transform_rotate-anticlockwise270deg: rotate(-270deg);
    --semi-transform_rotate-anticlockwise360deg: rotate(-360deg)
}

body,body .semi-always-light {
    --semi-amber-0: 254,251,235;
    --semi-amber-1: 252,245,206;
    --semi-amber-2: 249,232,158;
    --semi-amber-3: 246,216,111;
    --semi-amber-4: 243,198,65;
    --semi-amber-5: 240,177,20;
    --semi-amber-6: 200,138,15;
    --semi-amber-7: 160,102,10;
    --semi-amber-8: 120,70,6;
    --semi-amber-9: 80,43,3;
    --semi-black: 0,0,0;
    --semi-blue-0: 234,245,255;
    --semi-blue-1: 203,231,254;
    --semi-blue-2: 152,205,253;
    --semi-blue-3: 101,178,252;
    --semi-blue-4: 50,149,251;
    --semi-blue-5: 0,100,250;
    --semi-blue-6: 0,98,214;
    --semi-blue-7: 0,79,179;
    --semi-blue-8: 0,61,143;
    --semi-blue-9: 0,44,107;
    --semi-cyan-0: 229,247,248;
    --semi-cyan-1: 194,239,240;
    --semi-cyan-2: 138,221,226;
    --semi-cyan-3: 88,203,211;
    --semi-cyan-4: 44,184,197;
    --semi-cyan-5: 5,164,182;
    --semi-cyan-6: 3,134,152;
    --semi-cyan-7: 1,105,121;
    --semi-cyan-8: 0,77,91;
    --semi-cyan-9: 0,50,61;
    --semi-green-0: 236,247,236;
    --semi-green-1: 208,240,209;
    --semi-green-2: 164,224,167;
    --semi-green-3: 125,209,130;
    --semi-green-4: 90,194,98;
    --semi-green-5: 59,179,70;
    --semi-green-6: 48,149,59;
    --semi-green-7: 37,119,47;
    --semi-green-8: 27,89,36;
    --semi-green-9: 17,60,24;
    --semi-grey-0: 249,249,249;
    --semi-grey-1: 230,232,234;
    --semi-grey-2: 198,202,205;
    --semi-grey-3: 167,171,176;
    --semi-grey-4: 136,141,146;
    --semi-grey-5: 107,112,117;
    --semi-grey-6: 85,91,97;
    --semi-grey-7: 65,70,76;
    --semi-grey-8: 46,50,56;
    --semi-grey-9: 28,31,35;
    --semi-indigo-0: 236,239,248;
    --semi-indigo-1: 209,216,240;
    --semi-indigo-2: 167,179,225;
    --semi-indigo-3: 128,144,211;
    --semi-indigo-4: 94,111,196;
    --semi-indigo-5: 63,81,181;
    --semi-indigo-6: 51,66,161;
    --semi-indigo-7: 40,52,140;
    --semi-indigo-8: 31,40,120;
    --semi-indigo-9: 23,29,99;
    --semi-light-blue-0: 233,247,253;
    --semi-light-blue-1: 201,236,252;
    --semi-light-blue-2: 149,216,248;
    --semi-light-blue-3: 98,195,245;
    --semi-light-blue-4: 48,172,241;
    --semi-light-blue-5: 0,149,238;
    --semi-light-blue-6: 0,123,202;
    --semi-light-blue-7: 0,99,167;
    --semi-light-blue-8: 0,75,131;
    --semi-light-blue-9: 0,53,95;
    --semi-light-green-0: 243,248,236;
    --semi-light-green-1: 227,240,208;
    --semi-light-green-2: 200,226,165;
    --semi-light-green-3: 173,211,126;
    --semi-light-green-4: 147,197,91;
    --semi-light-green-5: 123,182,60;
    --semi-light-green-6: 100,152,48;
    --semi-light-green-7: 78,121,38;
    --semi-light-green-8: 57,91,27;
    --semi-light-green-9: 37,61,18;
    --semi-lime-0: 242,250,230;
    --semi-lime-1: 227,246,197;
    --semi-lime-2: 203,237,142;
    --semi-lime-3: 183,227,91;
    --semi-lime-4: 167,218,44;
    --semi-lime-5: 155,209,0;
    --semi-lime-6: 126,174,0;
    --semi-lime-7: 99,139,0;
    --semi-lime-8: 72,104,0;
    --semi-lime-9: 47,70,0;
    --semi-orange-0: 255,248,234;
    --semi-orange-1: 254,238,204;
    --semi-orange-2: 254,217,152;
    --semi-orange-3: 253,193,101;
    --semi-orange-4: 253,166,51;
    --semi-orange-5: 252,136,0;
    --semi-orange-6: 210,103,0;
    --semi-orange-7: 168,74,0;
    --semi-orange-8: 126,49,0;
    --semi-orange-9: 84,29,0;
    --semi-pink-0: 253,236,239;
    --semi-pink-1: 251,207,216;
    --semi-pink-2: 246,160,181;
    --semi-pink-3: 242,115,150;
    --semi-pink-4: 237,72,123;
    --semi-pink-5: 233,30,99;
    --semi-pink-6: 197,19,86;
    --semi-pink-7: 162,11,72;
    --semi-pink-8: 126,5,58;
    --semi-pink-9: 90,1,43;
    --semi-purple-0: 247,233,247;
    --semi-purple-1: 239,202,240;
    --semi-purple-2: 221,155,224;
    --semi-purple-3: 201,111,209;
    --semi-purple-4: 180,73,194;
    --semi-purple-5: 158,40,179;
    --semi-purple-6: 135,30,158;
    --semi-purple-7: 113,22,138;
    --semi-purple-8: 92,15,117;
    --semi-purple-9: 73,10,97;
    --semi-red-0: 254,242,237;
    --semi-red-1: 254,221,210;
    --semi-red-2: 253,183,165;
    --semi-red-3: 251,144,120;
    --semi-red-4: 250,102,76;
    --semi-red-5: 249,57,32;
    --semi-red-6: 213,37,21;
    --semi-red-7: 178,20,12;
    --semi-red-8: 142,8,5;
    --semi-red-9: 106,1,3;
    --semi-teal-0: 228,247,244;
    --semi-teal-1: 192,240,232;
    --semi-teal-2: 135,224,211;
    --semi-teal-3: 84,209,193;
    --semi-teal-4: 39,194,176;
    --semi-teal-5: 0,179,161;
    --semi-teal-6: 0,149,137;
    --semi-teal-7: 0,119,111;
    --semi-teal-8: 0,89,85;
    --semi-teal-9: 0,60,58;
    --semi-violet-0: 243,237,249;
    --semi-violet-1: 226,209,244;
    --semi-violet-2: 196,167,233;
    --semi-violet-3: 166,127,221;
    --semi-violet-4: 136,91,210;
    --semi-violet-5: 106,58,199;
    --semi-violet-6: 87,47,179;
    --semi-violet-7: 70,37,158;
    --semi-violet-8: 54,28,138;
    --semi-violet-9: 40,20,117;
    --semi-white: 255,255,255;
    --semi-yellow-0: 255,253,234;
    --semi-yellow-1: 254,251,203;
    --semi-yellow-2: 253,243,152;
    --semi-yellow-3: 252,232,101;
    --semi-yellow-4: 251,218,50;
    --semi-yellow-5: 250,200,0;
    --semi-yellow-6: 208,170,0;
    --semi-yellow-7: 167,139,0;
    --semi-yellow-8: 125,106,0;
    --semi-yellow-9: 83,72,0
}

body,body[theme-mode=dark] .semi-always-light {
    --semi-color-white: rgba(var(--semi-white),1);
    --semi-color-black: rgba(var(--semi-black),1);
    --semi-color-primary: rgba(var(--semi-green-5),1);
    /* --semi-color-primary: rgba(var(--semi-blue-5),1); */
    --semi-color-primary-hover: rgba(var(--semi-green-6),1);
    --semi-color-primary-active: rgba(var(--semi-green-7),1);
    --semi-color-primary-disabled: rgba(var(--semi-green-2),1);
    --semi-color-primary-light-default: rgba(var(--semi-green-0),1);
    --semi-color-primary-light-hover: rgba(var(--semi-green-1),1);
    --semi-color-primary-light-active: rgba(var(--semi-green-2),1);
    --semi-color-secondary: rgba(var(--semi-light-blue-5),1);
    --semi-color-secondary-hover: rgba(var(--semi-light-blue-6),1);
    --semi-color-secondary-active: rgba(var(--semi-light-blue-7),1);
    --semi-color-secondary-disabled: rgba(var(--semi-light-blue-2),1);
    --semi-color-secondary-light-default: rgba(var(--semi-light-blue-0),1);
    --semi-color-secondary-light-hover: rgba(var(--semi-light-blue-1),1);
    --semi-color-secondary-light-active: rgba(var(--semi-light-blue-2),1);
    --semi-color-tertiary: rgba(var(--semi-grey-5),1);
    --semi-color-tertiary-hover: rgba(var(--semi-grey-6),1);
    --semi-color-tertiary-active: rgba(var(--semi-grey-7),1);
    --semi-color-tertiary-light-default: rgba(var(--semi-grey-0),1);
    --semi-color-tertiary-light-hover: rgba(var(--semi-grey-1),1);
    --semi-color-tertiary-light-active: rgba(var(--semi-grey-2),1);
    --semi-color-default: rgba(var(--semi-grey-0),1);
    --semi-color-default-hover: rgba(var(--semi-grey-1),1);
    --semi-color-default-active: rgba(var(--semi-grey-2),1);
    --semi-color-info: rgba(var(--semi-blue-5),1);
    --semi-color-info-hover: rgba(var(--semi-blue-6),1);
    --semi-color-info-active: rgba(var(--semi-blue-7),1);
    --semi-color-info-disabled: rgba(var(--semi-blue-2),1);
    --semi-color-info-light-default: rgba(var(--semi-blue-0),1);
    --semi-color-info-light-hover: rgba(var(--semi-blue-1),1);
    --semi-color-info-light-active: rgba(var(--semi-blue-2),1);
    --semi-color-success: rgba(var(--semi-green-5),1);
    --semi-color-success-hover: rgba(var(--semi-green-6),1);
    --semi-color-success-active: rgba(var(--semi-green-7),1);
    --semi-color-success-disabled: rgba(var(--semi-green-2),1);
    --semi-color-success-light-default: rgba(var(--semi-green-0),1);
    --semi-color-success-light-hover: rgba(var(--semi-green-1),1);
    --semi-color-success-light-active: rgba(var(--semi-green-2),1);
    --semi-color-danger: rgba(var(--semi-red-5),1);
    --semi-color-danger-hover: rgba(var(--semi-red-6),1);
    --semi-color-danger-active: rgba(var(--semi-red-7),1);
    --semi-color-danger-light-default: rgba(var(--semi-red-0),1);
    --semi-color-danger-light-hover: rgba(var(--semi-red-1),1);
    --semi-color-danger-light-active: rgba(var(--semi-red-2),1);
    --semi-color-warning: rgba(var(--semi-orange-5),1);
    --semi-color-warning-hover: rgba(var(--semi-orange-6),1);
    --semi-color-warning-active: rgba(var(--semi-orange-7),1);
    --semi-color-warning-light-default: rgba(var(--semi-orange-0),1);
    --semi-color-warning-light-hover: rgba(var(--semi-orange-1),1);
    --semi-color-warning-light-active: rgba(var(--semi-orange-2),1);
    /* --semi-color-focus-border: rgba(var(--semi-blue-5),1); */
    --semi-color-focus-border: rgba(var(--semi-pink-5),1);
    --semi-color-disabled-text: rgba(var(--semi-grey-9),.35);
    --semi-color-disabled-border: rgba(var(--semi-grey-1),1);
    --semi-color-disabled-bg: rgba(var(--semi-grey-1),1);
    --semi-color-disabled-fill: rgba(var(--semi-grey-8),.04);
    --semi-color-shadow: rgba(var(--semi-black),.04);
    --semi-color-link: rgba(var(--semi-blue-5),1);
    --semi-color-link-hover: rgba(var(--semi-blue-6),1);
    --semi-color-link-active: rgba(var(--semi-blue-7),1);
    --semi-color-link-visited: rgba(var(--semi-blue-5),1);
    --semi-color-border: rgba(var(--semi-grey-9),.08);
    --semi-color-nav-bg: rgba(var(--semi-white),1);
    --semi-color-overlay-bg: rgba(22,22,26,0.6);
    --semi-color-fill-0: rgba(var(--semi-grey-8),.05);
    --semi-color-fill-1: rgba(var(--semi-grey-8),.09);
    --semi-color-fill-2: rgba(var(--semi-grey-8),.13);
    --semi-color-bg-0: rgba(var(--semi-white),1);
    --semi-color-bg-1: rgba(var(--semi-white),1);
    --semi-color-bg-2: rgba(var(--semi-white),1);
    --semi-color-bg-3: rgba(var(--semi-white),1);
    --semi-color-bg-4: rgba(var(--semi-white),1);
    --semi-color-text-0: rgba(var(--semi-grey-9),1);
    --semi-color-text-1: rgba(var(--semi-grey-9),.8);
    --semi-color-text-2: rgba(var(--semi-grey-9),.62);
    --semi-color-text-3: rgba(var(--semi-grey-9),.35);
    --semi-shadow-elevated: 0 0 1px rgba(0,0,0,0.3),0 4px 14px rgba(0,0,0,0.1);
    --semi-border-radius-extra-small: 3px;
    --semi-border-radius-small: 3px;
    --semi-border-radius-medium: 6px;
    --semi-border-radius-large: 12px;
    --semi-border-radius-circle: 50%;
    --semi-border-radius-full: 9999px;
    --semi-color-highlight-bg: rgba(var(--semi-yellow-4),1);
    --semi-color-highlight: rgba(var(--semi-black),1)
}

body .semi-always-dark,body[theme-mode=dark] {
    --semi-color-white: #e4e7f5;
    --semi-color-black: rgba(var(--semi-black),1);
    --semi-color-primary: rgba(var(--semi-pink-5),1);
    /* --semi-color-primary: rgba(var(--semi-blue-5),1); */
    --semi-color-primary-hover: rgba(var(--semi-blue-6),1);
    --semi-color-primary-active: rgba(var(--semi-blue-7),1);
    --semi-color-primary-disabled: rgba(var(--semi-blue-2),1);
    --semi-color-primary-light-default: rgba(var(--semi-blue-5),.2);
    --semi-color-primary-light-hover: rgba(var(--semi-blue-5),.3);
    --semi-color-primary-light-active: rgba(var(--semi-blue-5),.4);
    --semi-color-secondary: rgba(var(--semi-light-blue-5),1);
    --semi-color-secondary-hover: rgba(var(--semi-light-blue-6),1);
    --semi-color-secondary-active: rgba(var(--semi-light-blue-7),1);
    --semi-color-secondary-disabled: rgba(var(--semi-light-blue-2),1);
    --semi-color-secondary-light-default: rgba(var(--semi-light-blue-5),.2);
    --semi-color-secondary-light-hover: rgba(var(--semi-light-blue-5),.3);
    --semi-color-secondary-light-active: rgba(var(--semi-light-blue-5),.4);
    --semi-color-tertiary: rgba(var(--semi-grey-5),1);
    --semi-color-tertiary-hover: rgba(var(--semi-grey-6),1);
    --semi-color-tertiary-active: rgba(var(--semi-grey-7),1);
    --semi-color-tertiary-light-default: rgba(var(--semi-grey-5),.2);
    --semi-color-tertiary-light-hover: rgba(var(--semi-grey-5),.3);
    --semi-color-tertiary-light-active: rgba(var(--semi-grey-5),.4);
    --semi-color-default: rgba(var(--semi-grey-0),1);
    --semi-color-default-hover: rgba(var(--semi-grey-1),1);
    --semi-color-default-active: rgba(var(--semi-grey-2),1);
    --semi-color-info: rgba(var(--semi-blue-5),1);
    --semi-color-info-hover: rgba(var(--semi-blue-6),1);
    --semi-color-info-active: rgba(var(--semi-blue-7),1);
    --semi-color-info-disabled: rgba(var(--semi-blue-2),1);
    --semi-color-info-light-default: rgba(var(--semi-blue-5),.2);
    --semi-color-info-light-hover: rgba(var(--semi-blue-5),.3);
    --semi-color-info-light-active: rgba(var(--semi-blue-5),.4);
    --semi-color-success: rgba(var(--semi-green-5),1);
    --semi-color-success-hover: rgba(var(--semi-green-6),1);
    --semi-color-success-active: rgba(var(--semi-green-7),1);
    --semi-color-success-disabled: rgba(var(--semi-green-2),1);
    --semi-color-success-light-default: rgba(var(--semi-green-5),.2);
    --semi-color-success-light-hover: rgba(var(--semi-green-5),.3);
    --semi-color-success-light-active: rgba(var(--semi-green-5),.4);
    --semi-color-danger: rgba(var(--semi-red-5),1);
    --semi-color-danger-hover: rgba(var(--semi-red-6),1);
    --semi-color-danger-active: rgba(var(--semi-red-7),1);
    --semi-color-danger-light-default: rgba(var(--semi-red-5),.2);
    --semi-color-danger-light-hover: rgba(var(--semi-red-5),.3);
    --semi-color-danger-light-active: rgba(var(--semi-red-5),.4);
    --semi-color-warning: rgba(var(--semi-orange-5),1);
    --semi-color-warning-hover: rgba(var(--semi-orange-6),1);
    --semi-color-warning-active: rgba(var(--semi-orange-7),1);
    --semi-color-warning-light-default: rgba(var(--semi-orange-5),.2);
    --semi-color-warning-light-hover: rgba(var(--semi-orange-5),.3);
    --semi-color-warning-light-active: rgba(var(--semi-orange-5),.4);
    --semi-color-focus-border: rgba(var(--semi-blue-5),1);
    --semi-color-disabled-text: rgba(var(--semi-grey-9),.35);
    --semi-color-disabled-border: rgba(var(--semi-grey-1),1);
    --semi-color-disabled-bg: rgba(var(--semi-grey-1),1);
    --semi-color-disabled-fill: rgba(var(--semi-grey-8),.04);
    --semi-color-link: rgba(var(--semi-blue-5),1);
    --semi-color-link-hover: rgba(var(--semi-blue-6),1);
    --semi-color-link-active: rgba(var(--semi-blue-7),1);
    --semi-color-link-visited: rgba(var(--semi-blue-5),1);
    --semi-color-nav-bg: #232429;
    --semi-shadow-elevated: inset 0 0 0 1px hsla(0,0%,100%,0.1),0 4px 14px rgba(0,0,0,0.25);
    --semi-color-overlay-bg: rgba(22,22,26,0.6);
    --semi-color-fill-0: rgba(var(--semi-white),.12);
    --semi-color-fill-1: rgba(var(--semi-white),.16);
    --semi-color-fill-2: rgba(var(--semi-white),.20);
    --semi-color-border: rgba(var(--semi-white),.08);
    --semi-color-shadow: rgba(var(--semi-black),.04);
    --semi-color-bg-0: #16161a;
    --semi-color-bg-1: #232429;
    --semi-color-bg-2: #35363c;
    --semi-color-bg-3: #43444a;
    --semi-color-bg-4: #4f5159;
    --semi-color-text-0: rgba(var(--semi-grey-9),1);
    --semi-color-text-1: rgba(var(--semi-grey-9),.8);
    --semi-color-text-2: rgba(var(--semi-grey-9),.6);
    --semi-color-text-3: rgba(var(--semi-grey-9),.35);
    --semi-border-radius-extra-small: 3px;
    --semi-border-radius-small: 3px;
    --semi-border-radius-medium: 6px;
    --semi-border-radius-large: 12px;
    --semi-border-radius-circle: 50%;
    --semi-border-radius-full: 9999px;
    --semi-color-highlight-bg: rgba(var(--semi-yellow-2),1);
    --semi-color-highlight: rgba(var(--semi-white),1)
}
/* static/home/css/cust.css */
/* cust.css */
@layer utilities {
    /* 输入框统一样式类 */
    .form-input {
        @apply w-full px-3 py-2 
               border border-gray-300 rounded-md shadow-sm 
               focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary 
               transition-all duration-200 
               bg-white text-gray-800 
               placeholder-gray-400;
    }
    
    /* 错误状态样式 */
    .form-input-error {
        @apply border-red-500 focus:ring-red-500 focus:border-red-500;
    }
    
    /* 按钮样式 */
    .btn-primary {
        @apply bg-primary text-white py-2 px-4 rounded-md hover:bg-primary/90 transition-colors;
    }
}
/* static/home/css/main.css */
.left-nav {
    left: 0;
    top: 0;
    position: fixed;
    overflow: hidden;
    background: #f6f7fa;
    z-index: 50;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.left-nav,
.left-nav-empty {
    width: 240px;
    height: 100vh;
    content: "viewport-units-buggyfill; height: 100vh";
}

.left-nav-empty {
    float: left;
}

.main-content {
    display: flow-root;
    position: relative;
    min-height: 100vh;
    content: "viewport-units-buggyfill; min-height: 100vh";
}

.left-nav .left-nav-inner {
    overflow: auto;
    width: 100%;
    -webkit-flex: 1;
    flex: 1;
}

.category-container {
    overflow: hidden;
    padding: 0;
    margin: 0;
}

.category-container li {
    position: relative;
    white-space: nowrap;
    list-style: none;
}

.category-container .category-entry-wrapper {
    margin: 20px 10px 0;
}

.category-container .category-entry-wrapper .category-entry-item {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 43px;
    text-decoration: none;
    cursor: pointer;
}

.category-container .category-entry-wrapper .category-entry-item img {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    margin-left: 20px;
}

.category-container .category-entry-wrapper .category-entry-item i {
    color: var(--semi-color-text-2);
    font-size: 18px;
    margin-right: 10px;
    margin-left: 20px;
}

.category-container .category-entry-wrapper .category-entry-item span {
    font-size: 16px;
    line-height: 23px;
    color: #242424;
}

.category-container .category-entry-wrapper .category-entry-item[data-actived="true"] {
    background: #e8e8fd;
    border-radius: 10px;
}

.category-container .category-entry-wrapper:first-child {
    margin-top: 0;
}

.category-container .category-entry-wrapper {
    margin: 20px 10px 0;
}

.category-container li {
    position: relative;
    white-space: nowrap;
    list-style: none;
}

.search-wrapper {
    margin: 30px 20px 30px 0;
    -webkit-flex: 1;
    flex: 1;
}

.search-content {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

/* ============================================================
 * 结果表格边框
 * ------------------------------------------------------------
 * 站点结果表格统一写法（见 views/home/tools/_template/）：
 *   <table border="1" cellpadding="6" style="border-collapse:collapse;...">
 * 但 Tailwind 的 preflight（static/home/css/tailwind.css 第一条规则）输出：
 *   *, ::before, ::after { border-width: 0; border-style: solid; border-color: #e5e7eb }
 * HTML 的 border="1" 属于「表现性提示」(presentational hint)，层叠优先级最低，
 * 会被这条 (0,0,0) 规则整片盖掉 —— 于是 table / th / td 的边框被统一清零，
 * 表格只剩文字、没有网格线。只写 table{} 是治不好的，必须连单元格一起写。
 *
 * 修复思路：用属性选择器把边框补回来
 *   · `table[border] …` 特异性 (0,1,3)，远高于 preflight 的 (0,0,0)，
 *     与加载顺序无关（tailwind.css 排在 main.css 之后也照样生效）；
 *   · 只匹配写了 border 属性的表格，不影响本来无边框的表格；
 *   · 颜色 #e5e7eb 与 .tool_scan / .tool_print 输入框保持一致；
 *   · >thead / >tbody / >tr 三种结构都覆盖，兼容不带 thead 的表格。
 * ============================================================ */
table[border] {
    border: 1px solid #e5e7eb;
    border-collapse: collapse;
}

table[border]>thead>tr>th,
table[border]>thead>tr>td,
table[border]>tbody>tr>th,
table[border]>tbody>tr>td,
table[border]>tr>th,
table[border]>tr>td {
    border: 1px solid #e5e7eb;
}

/* ============================================================
 * 结果表格换行与等分列宽（长内容不再撑宽表格 / 独吞宽度）
 * ------------------------------------------------------------
 * 症状一：单元格里是「一整串没有空格的字符」（超长整数、连续数字串）时，
 *         表格只往右越长越宽、不肯换行，把所在列顶宽，出现横向滚动条。
 *   原因有两层，只改一层都治不好：
 *     1) `td` 默认只在空格等软换行点断行，长数字串没有空格。
 *        `overflow-wrap: anywhere` 允许在**任意字符**处断行（仅需要时），
 *        而且它**参与 min-content 宽度计算** —— 这点是关键：
 *        `break-word` 不参与，只写它时表格最小宽度仍等于整串数字的宽度。
 *        旧 WebKit 不认 `anywhere`，补 `word-break: break-word` 兜底。
 *     2) `bootstrap.row.css` 的 `.row > *` 是 `flex-shrink:0` 且没写
 *        `min-width`，flex 项走默认 `min-width:auto`（=内容最小宽度），
 *        `max-width:100%` 压不住它，所以栅格子项要显式补 `min-width:0`。
 *
 * 症状二：能换行之后，长内容列（如斐波那契的「数值」）会吞掉 ~88% 宽度，
 *         其余列只剩 3%~5%，短内容（F(1000)）被迫折成两行。
 *   原因：auto 布局把「超出最小宽度的空间」按 max-content 比例分给各列，
 *         长内容列的 max-content 巨大，几乎独吞全部剩余空间；
 *         而规范里 **max-width 对表格单元格不生效**（实测 max-width:35%
 *         与不写完全一样），没法用它给单列限宽。
 *   处理：`table-layout: fixed` —— 列宽不再看内容，N 列等分，
 *         单列上限即 100%/N（4 列 25%、3 列 33%、8 列 12.5%），
 *         3 列起就天然 ≤35%（2 列是 50%，两列表格的合理上限）；
 *         配合上面的 anywhere，任何内容都装得下，也永不再出横向滚动。
 *
 * 表头原本内联写 `white-space:nowrap`，fixed 布局下列宽不再随内容伸缩，
 * 窄屏（8 列每列仅 ~36px）会让表头压到隔壁格，这里统一放开成可换行
 * （!important 用于盖过页面里内联的 style）。
 * ============================================================ */
table[border] {
    table-layout: fixed;
}

table[border]>thead>tr>th,
table[border]>thead>tr>td,
table[border]>tbody>tr>th,
table[border]>tbody>tr>td,
table[border]>tr>th,
table[border]>tr>td {
    overflow-wrap: anywhere;
    word-break: break-word;
}

table[border]>thead>tr>th,
table[border]>tr>th {
    white-space: normal !important;
}

.tool-container .row>* {
    min-width: 0;
}

/* ============================================================
 * 结果表格空态
 * ------------------------------------------------------------
 * 表格在没出结果时只剩一行表头，看着像「坏了 / 没反应」。
 * 现在由 static/home/js/tool-common.js 里的 emptyTableRow() 注入一行
 * colspan 跨满整行的占位行，文字取公共文案 no_data（暂无数据 / 暫無資料 /
 * データがありません / No data available），四语言自动跟着切。
 *   · 时机：DOM ready 时 fillEmptyToolTables() 兜底补；renderTable(sel, []) 也会补；
 *   · 范围：只处理 .tool-container 内的表格，且 tbody 原本为空才补；
 *   · 特异性 (0,3,4) 高于上面的 (0,1,3)，颜色/内边距不会被盖掉。
 * ============================================================ */
table[border]>tbody>tr.tool-table-empty-row>td.tool-table-empty {
    text-align: center;
    color: #9ca3af;
    padding: 8px 6px;
    background: #fcfcfc;
}

/* ============================================================
 * 结果表格标题栏
 * ------------------------------------------------------------
 * 表格上方一行：左边写清「这是什么结果」（计算结果 / 统计结果 / 输出结果），
 * 右边一个「下载 CSV」文字链接，点了把表格内容导出成 CSV。
 *   · 结构：<div class="tool-table-caption">
 *               <span class="tool-table-title">…</span>
 *               <a class="tool-table-csv" data-target="#t-body">…</a>
 *           </div>
 *   · 链接由 tool-common.js 的 bindTableCsvLinks() 统一接管点击，页面不用写 onclick；
 *     不写 data-target 时默认导出「同一容器内的表格」。
 *   · 文字都走 i18n（calculation_result / statistics_result / download_csv），四语言自动切。
 * ============================================================ */
.tool-table-caption {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 10px 0 8px;
    font-size: 14px;
    line-height: 1.2
}

.tool-table-caption .tool-table-title {
    font-weight: 700;
    color: #374151;
    border-left: 3px solid #f59e0b;
    padding-left: 8px;
}

.tool-table-caption .tool-table-csv {
    color: #2563eb;
    /* text-decoration: underline; */
    text-underline-offset: 3px;
    cursor: pointer;
    white-space: nowrap;
}

.tool-table-caption .tool-table-csv:hover {
    color: #1d4ed8;
}

.tool-list-container {
    grid-template-columns: 1fr 1fr 1fr;
    margin: 0 auto 30px;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.tool-list-container .tool-item {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    position: relative;
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, .1);
    border-radius: 10px;
    height: 85px;
    text-decoration: none;
}

.tool-list-container .tool-item img {
    width: 46px;
    height: 46px;
    margin-top: 15px;
    margin-left: 8px;
}

.tool-list-container .tool-item i {
    width: 60px;
    height: 60px;
    min-width: 60px;
    line-height: 57px;
    font-size: 26px;               /* FA 字形在 60px 圆里的合适大小 */
    text-align: center;
    margin-top: 13px;              /* (85-60)/2，与站标 img 的光学中心对齐 */
    margin-left: 10px;
    border-radius: 50%;
    color: var(--icon-fg, #4b5563);
    background-color: var(--semi-color-tertiary-light-default);
}

.left-nav .logo-container {
    text-decoration: none;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin: 25px 0 0 25px;
    white-space: nowrap;
    padding-bottom: 30px;
    cursor: pointer;
}

.left-nav .logo-container div .title {
    font-weight: 600;
    font-size: 20px;
    line-height: 30px;
}

.left-nav .logo-container div .sub-title {
    font-size: 12px;
}

.left-nav .logo-container div span {
    display: block;
}

.left-nav .logo-container img {
    width: 56px;
    height: 56px;
    margin-right: 12px;
}

.main-content .footer-container,
.search-content {
    margin: 0 auto;
}

.tool-list-container .tool-item .tool-content {
    padding: 10px 10px 10px 5px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.tool-list-container .tool-item .tool-content .tool-title {
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    color: #242424;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: flex;
    height: 38px;
    flex-direction: column;
    justify-content: space-evenly;
}

.tool-list-container .tool-item .tool-content .tool-desc {
    font-weight: 400;
    font-size: 13px;
    line-height: 20px;
    margin-top: 0px;
    color: #8f8f8f;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.tool-list-container .tool-item .tool-content em {
    color: #f73131;
    font-style: normal;
    display: contents;
}

/* ============================================================
 * 列表卡片右上角的「NEW」徽标（首页 / 分类页工具列表）
 * ------------------------------------------------------------
 * 输出位置：views/home/index.html 与 views/home/tools/c/class.html
 *   <a ... class="tool-item has-new">
 *       <span class="tool-new-badge">{{.__common.new_badge}}</span>
 * 「哪些工具算新」由 Go 侧 internal/app/home/controllers/newtools.go 决定，
 * 到期自动消失，前端无需任何额外处理。
 * 卡片自身已是 position:relative（见上面的 .tool-item），故直接绝对定位到右上角。
 * 文案走 i18n 的 common.new_badge（NEW / 新 / 新 / 新着），天然多语言。
 * ============================================================ */
.tool-list-container .tool-item .tool-new-badge {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    padding: 0 7px;
    font-size: 10px;
    font-weight: 700;
    line-height: 18px;
    letter-spacing: .5px;
    color: #fff;
    background: linear-gradient(135deg, #3bb346, #2f9c3c);
    border-radius: 0 10px 0 10px;
    box-shadow: 0 2px 6px rgba(59, 179, 70, .35);
    pointer-events: none;
    white-space: nowrap;
}

/* 带徽标的卡片：正文右侧留白，避免徽标压住标题文字 */
.tool-list-container .tool-item.has-new .tool-content {
    padding-right: 46px;
}

/* ============================================================
 * 工具卡片：手机端紧凑化（≤767px）
 * ------------------------------------------------------------
 * 桌面端维持原样（85px 高 + 30px 间距，一行 3 列）。
 * 手机上原来是 85 + 30 = 每张 115px，一屏（约 1000px 可视高度）只放得下 7 张。
 * 这里压到 64 + 12 = 每张 76px（约 -34%），同样高度能放 10 张左右：
 *   - 图标 46 → 34，左右留白同步收窄，并用 align-items:center 整体垂直居中；
 *   - 标题 14px/38px（两行）→ 13px/18px（一行，超长自动省略号；短标题仍是核心名，一行放得下）；
 *   - 描述 13px/20px → 12px/16px，与标题留 3px；
 *   - 列表上下留白 30 → 16px。
 * 只动移动端，桌面与分类页的既有观感不变。
 * ============================================================ */
@media (max-width: 767px) {
    .tool-list-container {
        margin-bottom: 16px;
    }

    .tool-list-container .tool-item {
        height: 64px;
        margin-top: 12px;
        -webkit-align-items: center;
        align-items: center;
    }

    .tool-list-container .tool-item img {
        width: 34px;
        height: 34px;
        margin-top: 0;
        margin-left: 8px;
    }

    /* 列表卡片用 FA 图标时的移动端尺寸（卡片 64px 高） */
    .tool-list-container .tool-item i {
        width: 40px;
        height: 40px;
        min-width: 40px;
        line-height: 40px;
        font-size: 20px;
        margin-top: 0;
        margin-left: 8px;
        border-radius: 50%;
    }

    .tool-list-container .tool-item .tool-content {
        padding: 6px 10px;
    }

    .tool-list-container .tool-item .tool-content .tool-title {
        display: block;
        height: 18px;
        font-size: 16px;
        line-height: 18px;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .tool-list-container .tool-item .tool-content .tool-desc {
        margin-top: 6px;
        font-size: 14px;
        line-height: 16px;
    }    
}

.search-container {
    position: relative;
    -webkit-align-items: center;
    align-items: center;
    background: #f6f7fa;
    border-radius: 25px;
    overflow: hidden;
    z-index: 20;
}

.search-container .search-area {
    display: -webkit-flex;
    display: flex;
    height: 50px;
    position: relative;
    -webkit-align-items: center;
    align-items: center;
}

.search-container .search-area .search-input {
    border: 0;
    outline: none;
    background: #f6f7fa;
    line-height: 30px;
    margin-right: 20px;
    -webkit-flex-grow: 1;
    padding-left: 10px;
    flex-grow: 1;
    color: #242424;
    font-size: 16px;
}

.search-container .search-area .statistics-container {
    position: absolute;
    left: 65px;
    top: 10px;
    line-height: 30px;
    pointer-events: none;
    color: #b3b3b3;
}

.search-container .search-area .statistics-container b {
    color: #136ce9;
}

.search-container .search-area .search-icon {
    font-size: 20px;
    line-height: 40px;
    margin: 0 5px 0 23px;
    color: rgba(0, 0, 0, .1);
}

.share-btn {
    font-size: 18px;
    width: 35px;
    height: 35px;
    line-height: 36px;
    text-align: center;
    cursor: pointer;
    border-radius: 26px;
    color: var(--semi-color-text-2);
    background-color: var(--semi-color-fill-0);
    margin-right: 10px;
}

/**********tool start****************/

@media (max-width: 767px) {    
    .search-wrapper {
        margin: 10px 15px 10px  5px;
    }
    .search-container{
        border-radius:15px;
    }
    .search-container .search-area {
    height: 45px;
    }

    .left-nav,
    .left-nav-empty {
        display: none;
    }

    /* 顶栏右上角的用户菜单（登录态/昵称 + 下拉）：手机上不需要。
       一是它的下拉靠 mouseenter/mouseleave 触发，触摸屏点不出来；
       二是「我的 / 收藏 / 登录」手机端已由底部导航（_bottom_nav.html）承接。
       分享按钮 #shareLink 不在这个容器里，不受影响。 */
    #userMenuContainer {
        display: none;
    }
}

.tool-container,
.tool-content-container {
    border-radius: 10px;
    box-sizing: border-box;
}

.tool-container {
    background: #f6f7fa;
    padding: 0px 20px 20px 20px;
}


.tool-information {
    min-height: 45px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 8px 5px;
}

.tool-information .tool-content .tool-title {
    height: 30px;
    line-height: 30px;
    font-family: PingFang SC;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
}

.tool-information i.icon {
    font-size: 18px;
    width: 30px;
    /* height: 40px; */
    /* line-height: 40px; */
    text-align: center;
    border-radius: 26px;
    color: var(--icon-fg, #4b5563);
    /* background-color: var(--icon-bg, rgb(240 241 242)); */
    margin-right: 5px;
    /* color: var(--semi-color-text-2);     */
}


/* ---------------- 工具页标题图标配色 ----------------
 * 颜色不写死在页面，也不写在这里 —— 口径是「颜色跟图标走」：
 *   色板键（如 teal-2）登记在 Go 清单的 Color 字段
 *   → 控制器透传成 ViewPage.Color（lists.go）
 *   → 页面模板输出 class="fa fa-xxx icon{{if .info.Color}} icon-{{.info.Color}}{{end}}"
 *   → 色值由 tools/tailwind/input.css 里 theme() 引用 Tailwind 官方调色板生成
 *     （.icon-<色相>-<档位>，16 色相 × 3 档 = 48 种，只设 --icon-fg/--icon-bg）
 * 上面的 .tool-information i.icon 与 game.css 的 .game-header-icon 消费这两个变量。
 * Color 为空时回退默认灰底灰字。改色板请改 input.css 后重新构建：tools/tailwind/build.bat
 */

/* ---------------- 工具页「收藏」按钮（标题所在行的最右端，见 static/home/js/favorite.js） ---------------- */
/*
 * 布局口径：按钮不塞进标题元素内部（那样只会紧贴标题文字），
 * 而是作为「标题所在那一行」的最后一个 flex 子项，靠右对齐：
 *   工具页  行容器 = .tool-information（图标 + .tool-content + 按钮）
 *   游戏页  行容器 = .game-header     （图标 + 标题 + 按钮，描述已换到第二行）
 * 让标题撑满剩余宽度（flex:1），按钮自然被推到整行最右端。
 * 对应的行容器会带上 .has-fav-btn 类（由 favorite.js 添加）。
 */
.tool-information.has-fav-btn .tool-content,
.game-header.has-fav-btn h1 {
    flex: 1 1 auto;
    min-width: 0;
}

/* 标题过长时省略，避免顶到右侧按钮上 */
.tool-information.has-fav-btn .tool-title,
.game-header.has-fav-btn h1 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tool-fav-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-left: 12px;
    padding: 0 10px;
    height: 26px;
    vertical-align: middle;
    font-family: inherit;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    color: var(--semi-color-text-2, #6b7280);
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 13px;
    cursor: pointer;
    white-space: nowrap;
    flex: 0 0 auto;
    transition: color .15s, border-color .15s, background-color .15s;
}

.tool-fav-btn:hover {
    color: var(--semi-color-primary, #0064fa);
    border-color: currentColor;
}

/* 已收藏：实心星 + 琥珀色，和移动端底栏「收藏」的图标语义保持一致 */
.tool-fav-btn.is-on {
    color: #f5a623; 
    border-color: rgba(245, 166, 35, .45);
    background-color: rgba(245, 166, 35, .08); 
}

.tool-fav-btn:disabled {
    opacity: .6;
    cursor: default;
}

.tool-fav-btn i {
    font-size: 12px;
}
.tool-fav-btn.is-on i{
    font-size: 14px;
}

@media (max-width: 767px) {
    .tool-fav-btn {
        margin-left: 8px;
        padding: 0 9px;
    }

    /* 窄屏只留星标，免得把标题挤换行 */
    .tool-fav-btn .tool-fav-text {
        display: none;
    }
}

.tool-content-container .pc-content {
    padding: 20px 30px 30px;
    min-height: 200px;
    overflow: auto;
}

.tool-content-container {
    background: #fff;
    position: relative;
}

#app {
    min-height: 200px;
    /* display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center; */
    /* margin-top: 20px; */
    position: relative;
}

body[data-pc=true] .tool-useguide-modal .tool-useguide {
    border-radius: 10px;
    background: #fafbfc;
    color: #262626;
    font-size: 14px;
    font-style: normal;
    margin-top: 30px;
    padding: 20px;
    max-height: none;
}

.tool-useguide {
    margin-top: 22px;
    max-height: 600px;
    overflow-y: auto;
    background: #f6f7fa;
    border-radius: 10px;
    padding: 30px 50px;
    box-sizing: border-box;
}

@media screen and (max-width:768px) {
    .tool-useguide {
        padding: 10px;
    }

    .tool-container {
        padding: 5px;
    }

    .tool-content-container {
        padding: 0;
    }

    .tool-content-container .pc-content {
        padding: 0 5px
    }

    /* 手机端 .pc-content 只有 5px 内边距，挡不住 bootstrap .row 自带的
       -12px 左右负 margin（3button-info.html 那排「消息 + 3 按钮」就是 .row），
       会左右各超出 7px，触发 .pc-content(overflow:auto) 的横向滚动条，
       表现为 .toolbuttongroup 下方出现一条横拉条。
       这里把 .tool-container 内 .row 的负 margin 与子项的 gutter 内边距一起归零：
       原本 -12px 与 +12px 正好抵消，子元素位置一个像素不变，只是不再溢出。
       工具模板里手机端全部是 col-12 堆叠（无 col-6/col-4 并排），归零无副作用。 */
    .tool-container .row {
        margin-left: 0;
        margin-right: 0;
    }

    .tool-container .row > * {
        padding-left: 0;
        padding-right: 0;
    }

    .tool-information .tool-content .tool-title {
        font-size: 14px;
    }
}

body[data-pc=true] .tool-useguide-modal .tool-useguide .tool-description {
    margin-top: 10px;
}

.tool-useguide .tool-description {
    margin-top: 20px;
    font-weight: 400;
    font-size: 14px;
    color: #8f8f8f;
}

.tool-useguide .tool-description,
.tool-useguide h3 {
    font-family: PingFang SC;
    font-style: normal;
    line-height: 20px;
}

.more-examples a {
    line-height: 35px;
}

.toolbuttongroup {
    min-height: 75px;
    padding: 10px 2px;
    text-align: center;
}

.toolbuttongroup button:active {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    --tw-translate-y: 0.25rem;
}

.tool_copy,
.tool_clear,
.tool_export {
    width: 2.0rem;
    height: 2.0rem;
    color: var(--semi-color-text-2);
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: var(--semi-color-fill-1);
    margin-right: .5rem;
}

.tool_export:hover {
    color: #3bb346;
}

.tool_copy:hover {
    color: #3bb346;
}

.tool_clear:hover {
    color: #d52515;
}
.example-btn {
    padding: .4rem 0.8rem;
}
.run-btn{
    padding: .35rem 0.75rem;
}

/* ============================================================
 * 表格内联「复制」图标按钮（公共组件）
 * ------------------------------------------------------------
 * 生成方式：static/home/js/tool-common.js 的 copyIconBtn()
 * 用法（表格 / 任意位置都能用，无需写 onclick）：
 *   `<td>${copyIconBtn(text)}</td>`                        复制纯文本
 *   `<td>${copyIconBtn('', {target:'#textResult'})}</td>`  复制某元素的值
 * 设计：纯图标无文字（天然免翻译）+ 浅色背景 + hover 主题绿 + 复制成功打勾
 * 注意：Tailwind preflight 会清零 button 的 border / background，
 *       这里用类选择器 (0,1,0) 覆盖，优先级足够；勿改成裸 button 选择器。
 * ============================================================ */
.tool-inline-copy {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    background-color: #f3f4f6;
    color: #6b7280;
    float: right;
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
    vertical-align: middle;
    transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}

.tool-inline-copy:hover {
    color: #3bb346;
    background-color: #eef7ef;
    border-color: #9fdcb3;
}

.tool-inline-copy:active {
    background-color: #e2f1e6;
}

/* 复制成功后的短暂反馈（由 tool-common.js 添加/移除） */
.tool-inline-copy.is-copied {
    color: #ffffff;
    background-color: #3bb346;
    border-color: #3bb346;
}

.tool_scan,
.tool_print {
    width: 100%;
    outline: none;
    border: 1px solid #e5e7eb;
    padding: 5px 10px;
    border-radius: 5px;
}

.tool_print {
    background-color: #f8f8f8;
}

.toolresultinfo {
    color: #1c1f23cc;
    min-height: 2rem;
    line-height: 25px;
    padding-left: 5px;
    border-radius: 3px;
}

.tool_alert {
    z-index: 50;
    padding: 0.5rem 1rem;
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity));
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    left: 50%;
    transition-duration: 1000ms;
    bottom: 2.5rem;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    position: fixed;
    border-radius: 0.25rem;
    color: white;
}

@media (max-width: 767px) {
    .tool_alert {
        width: auto;
        left: 25%;
    }
}

.toolparams {
    background-color: var(--semi-color-info-light-default);
    border-radius: 5px;
    margin: 5px 0;
}

.toolparams label {
    cursor: pointer;
}

.toolparams>div {
    padding: 6px 10px;
}

.toolparams select {
    padding: 0.25rem 0.75rem;
}

.toolparams input[type=text],
.toolparams input[type=number] {
    padding: 0.25rem 0.5rem;
}

.toolparams input[type=number] {
    width: 100px;
}

/* ---------- 参数区统一（2026-10-03 早期 32 个工具体检后补） ----------
   1) .toolparams 若是 .row 的直接子元素，会被 bootstrap.row.css 的 .row > * 加上
      左右各 12px 的 gutter 内边距，蓝底框因此比上方输入/输出框宽 24px
      （同一批页面里有的 940px、有的 916px，就是这一条造成的）。
      这里统一收回到与 .pc-content 内容同宽，两种写法渲染结果一致。 */
.tool-container .row > .toolparams {
    width: calc(100% - var(--bs-gutter-x, 1.5rem));
    margin-left: calc(var(--bs-gutter-x, 1.5rem) / 2);
    margin-right: calc(var(--bs-gutter-x, 1.5rem) / 2);
    padding: 5px 3px;
    font-size: 14px;
}

/* 2) tailwind 的 preflight 把 select/textarea 的边框清成 0，而 input 靠页面里
      手写的 .border 工具类才有边框 —— 同一参数区里下拉框/多行框光秃秃、
      输入框有框。这里给参数区控件统一补边框与圆角（与 .border/.rounded 同值）。 */
.toolparams input[type=text],
.toolparams input[type=number],
.toolparams select,
.toolparams textarea {
    border: 1px solid rgb(229, 231, 235);
    border-radius: 4px;
    background-color: #fff;
    min-width: 6rem;
}

/* 参数区里的多行输入：独占一行、与所在参数行同宽（原先只有 sku-generator
   用页面局部 .text90x / .form-control 自己实现，现已下沉为公共样式） */
.toolparams textarea {
    display: block;
    width: 100%;
    padding: 4px 8px;
}

.more_examples a {
    padding: 5px 15px 5px 0;

}

/**********tool end****************/


/**********footer start****************/
.footer-empty {
    height: 215px;
}

.footer-content {
    width: 100%;
    position: absolute;
    bottom: 0;
    margin-bottom: 50px;
}

.footer-content .line {
    border: 1px solid #f6f7fa;
    height: 0;
    width: 100%;
    margin: 0 auto;
}

.footer-content .userid-debug-container {
    height: 50px;
}

.footer-content .footer-infor {
    display: -webkit-flex;
    display: flex;
}

.footer-content .footer-infor .footer-introduce {
    font-family: PingFang SC;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 18px;
    color: #242424;
    height: 18px;
    margin-bottom: 10px;
}

.footer-content .footer-infor .license-pc {
    height: 18px;
    line-height: 18px;
}

.license-pc a {
    color: #8f8f8f !important;
    position: relative;
    margin: 0 !important;
    font-family: PingFang SC;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
}

.footer-content .footer-infor .copyright-pc {
    font-family: PingFang SC;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #8f8f8f;
    box-sizing: border-box;
}

.footer-content .footer-infor .copyright-pc {
    font-family: PingFang SC;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #8f8f8f;
    box-sizing: border-box;
}

.license-pc .vertical {
    padding-right: 12px;
    margin-right: 12px;
    content: "";
    display: inline-block;
    width: 1px;
    height: 11px;
    border-right: 1px solid var(--semi-color-border);
}

@media screen and (max-width:768px) {
    .footer-content .footer-infor .footer-introduce {
        font-size: 14px;
    }

}

/*
  底部语言切换：≤767px 时整块隐藏。
  移动端顶部 H5 头部（_mobile_header.html，靠 Tailwind 的 md:hidden 在 <768px 显示）
  已经有一个功能完全相同的语言下拉，一屏里出现两个只会让人以为是两回事。
  断点取 767px 是为了和 Tailwind 的 md(768px) 严丝合缝地互补：
  桌面端顶部头部隐藏，此时底部这个就是页面上唯一的语言入口，必须保留。
  （工具页 / 分类页 / 404 页的底部同样是这套模板，一并生效。）
*/
@media screen and (max-width: 767px) {
    .footer-content .userid-debug-container {
        display: none;
    }
}

/**********footer end****************/



/**************nav start***************/
.nav-box .upgrade-pro {
    background-color: #eebf8a;
    color: #8e520d;
    font-size: 12px;
    padding: 4px 14px;
    border-radius: 24px;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
}


/*************nav end******************/

/**************long tail start***************/
/* 通用长尾页正文块（views/home/layout/_longtail.html 与 _longtail_links.html）
   - 表格刻意不写 border="1"：那条属性会被本文件的 table[border] 规则接管成
     table-layout:fixed 等分列宽，而长尾表格的列宽并不相等（有的列是长算式、长数字），
     所以这里单开一套 .lt-table。
   - 配色沿用站点浅色底，不做深色主题。 */
.lt-section {
    margin-top: 18px;
    padding: 20px 22px;
    background-color: #fff;
    border: 1px solid #eceff3;
    border-radius: 10px;
}

.lt-head {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}

.lt-badge {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 20px;
    background-color: #eef7f0;
    color: #2f9e44;
    font-size: 12px;
    font-weight: 600;
}

.lt-h1 {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: #1f2933;
    line-height: 1.45;
}

.lt-summary {
    margin: 0 0 14px;
    font-size: 14.5px;
    line-height: 1.8;
    color: #3d4852;
}

.lt-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 16px;
    padding: 0;
    list-style: none;
}

.lt-fact {
    flex: 1 1 200px;
    min-width: 0;
    padding: 10px 12px;
    background-color: #f7f9fb;
    border: 1px solid #eceff3;
    border-radius: 8px;
}

.lt-fact-label {
    display: block;
    font-size: 12px;
    color: #8b95a1;
    margin-bottom: 4px;
}

.lt-fact-value {
    display: block;
    font-size: 15px;
    font-weight: 600;
    color: #1f2933;
    word-break: break-all;
}

.lt-table-block {
    margin: 0 0 16px;
}

.lt-table-title {
    font-size: 14.5px;
    font-weight: 700;
    color: #1f2933;
    margin: 0 0 8px;
}

.lt-table-scroll {
    width: 100%;
    overflow-x: auto;
}

.lt-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.lt-table th,
.lt-table td {
    border: 1px solid #e5e9ef;
    padding: 7px 10px;
    text-align: left;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.lt-table th {
    background-color: #f5f7fa;
    font-weight: 600;
    white-space: nowrap;
}

.lt-table tbody tr:nth-child(even) {
    background-color: #fafbfc;
}

.lt-notes {
    margin: 0 0 16px;
    padding-left: 18px;
    color: #6b7480;
    font-size: 13px;
    line-height: 1.8;
}

.lt-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lt-chip {
    display: inline-block;
    padding: 5px 12px;
    border: 1px solid #dfe5ec;
    border-radius: 16px;
    background-color: #f8fafc;
    color: #2b6cb0;
    font-size: 13px;
    text-decoration: none;
}

.lt-chip:hover {
    background-color: #eef4fb;
    border-color: #c9dcf3;
}

.lt-links-block {
    margin-top: 16px;
    padding: 16px 18px;
    background-color: #fff;
    border: 1px solid #eceff3;
    border-radius: 10px;
}

@media screen and (max-width: 767px) {
    .lt-section {
        padding: 16px 14px;
    }

    .lt-h1 {
        font-size: 17px;
    }

    .lt-fact {
        flex: 1 1 100%;
    }
}

/**************long tail end***************/

/* static/home/css/game.css */
/* ============================================================
 * game.css —— 数字游戏（/class/game）专用样式
 * ------------------------------------------------------------
 * 与计算类工具页（tool-container 三件套：输入框 + 参数区 + 结果表格）
 * 完全不同的一套布局：卡片式游戏区 + 顶部统计面板 + 结果弹层。
 *
 * 设计约定（9 个游戏页统一遵守，新增游戏请沿用）：
 *   1) 只使用站内 Semi 语义色变量，不写死十六进制色，保证与全站一致
 *   2) 所有规则挂在 .game-page 作用域下，不污染其它页面
 *   3) 交互文案由页面自己的 .game-* 元素承载，样式在这里统一
 *   4) 移动端断点：768px（平板/大屏手机）、480px（小屏）
 * ============================================================ */

.game-page {
    max-width: 860px;
    margin: 0 auto;
    padding: 0 12px 32px;
    color: var(--semi-color-text-0);
}

/* ---------------- 页面标题区 ----------------
 * 图标独占左侧，右侧分两行（H5 与桌面一致）：
 *   左列        = 图标，纵向跨两行并垂直居中
 *   右列第一行  = 标题 + 收藏按钮（按钮由 favorite.js 注入到 .game-header 末尾）
 *   右列第二行  = 描述，横跨标题与收藏两列，左边缘与标题对齐
 * 旧版把「标题 + 描述」塞在图标右侧的窄列里：H5 上描述被挤成多行，而图标与
 * 收藏按钮两侧还空着。
 * 实现：grid 三列两行 + 显式定位。收藏按钮是 JS appendChild 到 .game-header
 * 末尾的（DOM 里排在描述之后），靠 grid-column/grid-row 归位到第一行最右，
 * 无需改动页面结构 —— 新增游戏页零改动即生效。
 * 图标尺寸统一走 --game-icon-size，改一处即可。
 */
.game-header {
    --game-icon-size: 45px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 12px;
    row-gap: 4px;
    padding: 18px 4px 14px;
}

/* 左列：图标，独占两行高度并垂直居中 */
.game-header .game-header-icon {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: center;
    width: var(--game-icon-size);
    height: var(--game-icon-size);
    line-height: var(--game-icon-size);
    text-align: center;
    font-size: 19px;
    border-radius: 50%;
    /* 配色跟图标走：模板输出 icon-{{.info.Color}}，未配色回退 Semi 主题色 */
    color: var(--icon-fg, var(--semi-color-primary));
    background-color: var(--icon-bg, var(--semi-color-primary-light-default));
}

/* 右列第一行：标题 */
.game-header h1 {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    min-width: 0;
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
}

/* 右列第一行最右端：收藏按钮（favorite.js 注入，DOM 中位于描述之后） */
.game-header .tool-fav-btn {
    grid-column: 3;
    grid-row: 1;
    align-self: center;
    margin-left: 0; /* 与标题的间距由 column-gap 提供 */
}

/* 右列第二行：描述，横跨标题与收藏两列 */
.game-header .game-sub {
    grid-column: 2 / 4;
    grid-row: 2;
    align-self: start;
    min-width: 0;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--semi-color-text-2);
}

/* ---------------- 主卡片 ---------------- */
.game-card {
    background-color: var(--semi-color-bg-0);
    border: 1px solid var(--semi-color-border);
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, .05);
}

/* ---------------- 设置区 ---------------- */
.game-settings {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 18px;
    padding: 10px 14px;
    margin-bottom: 16px;
    border-radius: 12px;
    background-color: var(--semi-color-fill-0);
}

.game-settings .game-field {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--semi-color-text-1);
}

.game-settings select,
.game-settings input[type="number"],
.game-settings input[type="text"] {
    padding: 0.25rem 0.5rem;
    font-size: 14px;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-bg-0);
    border: 1px solid var(--semi-color-border);
    border-radius: 8px;
    outline: none;
    min-height: 2.2rem;
    min-width: 6rem;
}

.game-settings select:focus,
.game-settings input[type="number"]:focus,
.game-settings input[type="text"]:focus {
    border-color: var(--semi-color-primary);
    box-shadow: 0 0 0 2px var(--semi-color-primary-light-default);
}

.game-settings input[type="number"] {
    width: 72px;
}

/* 模式/分段按钮组（如「二进制转换训练」的 4 个模式） */
.game-modes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.game-mode-btn {
    padding: 7px 16px;
    font-size: 14px;
    font-weight: 500;
    color: var(--semi-color-text-1);
    background-color: var(--semi-color-fill-0);
    border: 1px solid transparent;
    border-radius: 999px;
    cursor: pointer;
    transition: all .2s;
}

.game-mode-btn:hover {
    background-color: var(--semi-color-fill-1);
}

.game-mode-btn[data-active="true"] {
    color: var(--semi-color-white);
    background-color: var(--semi-color-primary);
}

/* ---------------- 统计面板 ---------------- */
.game-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.game-stat {
    flex: 1 1 0;
    min-width: 78px;
    padding: 10px 6px;
    text-align: center;
    border-radius: 10px;
    /* 计分卡用主色淡绿底（得分数字本身也是主色绿），
       与上方参数区 .game-settings 的中性灰底拉开色相差异，避免两块糊在一起 */
    background-color: var(--semi-color-primary-light-default);
}

.game-stat .game-stat-value {
    display: block;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--semi-color-primary);
    font-variant-numeric: tabular-nums;
}

.game-stat .game-stat-label {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    color: var(--semi-color-text-2);
}

/* ---------------- 游戏区 ---------------- */
.game-stage {
    text-align: center;
}

.game-status {
    min-height: 24px;
    margin-bottom: 8px;
    font-size: 15px;
    font-weight: 600;
    color: var(--semi-color-text-1);
}

/* 大号展示区（数字闪现 / 算式 / 倒计时） */
.game-display {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 84px;
    margin: 10px 0;
    padding: 16px;
    font-size: 34px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-fill-0);
    border-radius: 12px;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
}

.game-display.is-long {
    font-size: 26px;
    letter-spacing: 1px;
}

.game-display.is-vlong {
    font-size: 20px;
    letter-spacing: 0;
}

/* 反馈文字 */
.game-feedback {
    min-height: 24px;
    margin: 8px 0;
    font-size: 15px;
    font-weight: 600;
}

.game-feedback.is-ok {
    color: var(--semi-color-success);
}

.game-feedback.is-bad {
    color: var(--semi-color-danger);
}

/* 倒计时/进度条 */
.game-progress {
    width: 100%;
    height: 10px;
    margin: 10px 0;
    background-color: var(--semi-color-fill-1);
    border-radius: 999px;
    overflow: hidden;
}

.game-progress>i {
    display: block;
    width: 0;
    height: 100%;
    border-radius: 999px;
    background-color: var(--semi-color-primary);
    transition: width .3s linear;
}

.game-progress>i.is-warning {
    background-color: var(--semi-color-warning);
}

.game-progress>i.is-danger {
    background-color: var(--semi-color-danger);
}

/* ---------------- 网格（数独 / 华容道 / 拼图 / 质数网格 / 翻卡） ---------------- */
.game-grid {
    display: grid;
    gap: 6px;
    margin: 14px auto;
    justify-content: center;
    user-select: none;
}

/* 正方形格子，宽度自适应容器 */
.game-grid.is-square {
    gap: 1px;
    padding: 2px;
    background-color: var(--semi-color-border);
    border-radius: 8px;
}

.game-cell {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-bg-0);
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background-color .18s, color .18s, transform .18s;
}

.game-cell:hover {
    background-color: var(--semi-color-fill-1);
}

/* 数独：宫格粗线 */
.game-cell.is-edge-right {
    box-shadow: inset -2px 0 0 0 var(--semi-color-text-1);
}

.game-cell.is-edge-bottom {
    box-shadow: inset 0 -2px 0 0 var(--semi-color-text-1);
}

.game-cell.is-edge-right.is-edge-bottom {
    box-shadow: inset -2px 0 0 0 var(--semi-color-text-1), inset 0 -2px 0 0 var(--semi-color-text-1);
}

.game-cell.is-fixed {
    font-weight: 700;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-fill-0);
    cursor: default;
}

.game-cell.is-hint {
    background-color: var(--semi-color-primary-light-default);
}

.game-cell.is-active {
    background-color: var(--semi-color-primary-light-active);
    box-shadow: inset 0 0 0 2px var(--semi-color-primary);
}

.game-cell.is-wrong {
    color: var(--semi-color-danger);
}

.game-cell.is-good {
    color: var(--semi-color-success);
}

.game-cell.is-empty {
    background-color: transparent;
    cursor: default;
}

/* 数独候选笔记：格内的 3x3 小格 */
.game-notes {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    height: 100%;
    font-size: .55rem;
    font-weight: 500;
    color: var(--semi-color-text-2);
    pointer-events: none;
}

.game-notes span {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ---------------- 数字键盘（数独 / 心算） ---------------- */
.game-keypad {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    max-width: 420px;
    margin: 14px auto;
}

.game-keypad.is-3col {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 300px;
}

.game-key {
    padding: 10px 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-fill-0);
    border: 1px solid transparent;
    border-radius: 10px;
    cursor: pointer;
    transition: all .18s;
    touch-action: manipulation;
}

.game-key:hover {
    background-color: var(--semi-color-fill-1);
    transform: translateY(-1px);
}

.game-key.is-primary {
    color: var(--semi-color-white);
    background-color: var(--semi-color-primary);
}

.game-key.is-wide {
    grid-column: span 2;
}

/* ---------------- 按钮 ---------------- */
.game-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 14px;
}

.game-btn {
    padding: 10px 22px;
    font-size: 15px;
    font-weight: 600;
    color: var(--semi-color-white);
    background-color: var(--semi-color-primary);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all .2s;
}

.game-btn:hover:not(:disabled) {
    background-color: var(--semi-color-primary-hover);
    transform: translateY(-2px);
}

.game-btn:disabled {
    cursor: not-allowed;
    opacity: .55;
    transform: none;
}

.game-btn.is-start {
    background-color: var(--semi-color-success);
}

.game-btn.is-start:hover:not(:disabled) {
    background-color: var(--semi-color-success-hover);
}

.game-btn.is-next {
    background-color: var(--semi-color-secondary);
}

.game-btn.is-next:hover:not(:disabled) {
    background-color: var(--semi-color-secondary-hover);
}

.game-btn.is-ghost {
    color: var(--semi-color-text-1);
    background-color: var(--semi-color-fill-0);
}

.game-btn.is-ghost:hover:not(:disabled) {
    background-color: var(--semi-color-fill-1);
}

.game-btn.is-danger {
    background-color: var(--semi-color-danger);
}

.game-btn.is-danger:hover:not(:disabled) {
    background-color: var(--semi-color-danger-hover);
}

/* ---------------- 输入框（游戏内答题） ---------------- */
.game-input {
    width: 100%;
    max-width: 320px;
    padding: 10px 14px;
    font-size: 1.2rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 3px;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-bg-0);
    border: 2px solid var(--semi-color-border);
    border-radius: 10px;
    outline: none;
}

.game-input:focus {
    border-color: var(--semi-color-primary);
}

/* ---------------- 结果面板 ---------------- */
.game-result {
    display: none;
    margin-top: 16px;
    padding: 18px;
    text-align: center;
    border-radius: 12px;
    background-color: var(--semi-color-fill-0);
}

.game-result[data-show="true"] {
    display: block;
}

.game-result h3 {
    margin: 0 0 12px;
    font-size: 18px;
    font-weight: 700;
}

.game-result .game-result-comment {
    margin-top: 10px;
    font-size: 15px;
    font-weight: 600;
    color: var(--semi-color-primary);
}

/* ---------------- 位可视化（二进制训练） ---------------- */
.game-bits {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    margin: 12px 0;
}

.game-bit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.game-bit>b {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    font-size: 1rem;
    font-weight: 700;
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-fill-0);
    border: 2px solid var(--semi-color-border);
    border-radius: 8px;
    cursor: pointer;
    transition: all .18s;
}

.game-bit>b.is-on {
    color: var(--semi-color-white);
    background-color: var(--semi-color-primary);
    border-color: var(--semi-color-primary);
}

.game-bit>b.is-picked {
    box-shadow: 0 0 0 3px var(--semi-color-warning-light-active);
    border-color: var(--semi-color-warning);
}

.game-bit>span {
    font-size: .68rem;
    color: var(--semi-color-text-3);
    white-space: nowrap;
}

.game-bit>span.is-light {
    color: var(--semi-color-primary);
    font-weight: 600;
}

/* ---------------- 翻卡（记忆猎人） ---------------- */
.game-cards {
    display: grid;
    gap: 10px;
    justify-content: center;
    margin: 14px auto;
}

/* 未翻开（卡背）：深绿底白字，与已配对的卡片明确区分。
   注意：本主题里 --semi-color-primary 与 --semi-color-success 是同一个颜色
   （都是 --semi-green-5），所以「已配对」绝不能再用 success，否则两张卡看起来一模一样
   （用户反馈「答对的和未翻开的色块颜色一样」）。这里改用浅绿底 + 深绿字。 */
.game-card-face {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 1 / 1;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--semi-color-white);
    background-color: var(--semi-color-secondary);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all .25s;
    user-select: none;
}

.game-card-face:hover {
    transform: translateY(-2px);
}

/* 已翻开但尚未配对：浅色底 + 深色数字，一眼看出「这张看过了」 */
.game-card-face.is-open {
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-fill-0);
    box-shadow: inset 0 0 0 2px var(--semi-color-border);
}

/* 已配对成功：浅绿底 + 深绿数字 + 绿色描边，与未翻开的深绿卡背、已翻开的灰底都不同 */
.game-card-face.is-matched {
    color: #fff;
    background-color: var(--semi-color-primary);
    box-shadow: inset 0 0 0 2px var(--semi-color-success);
    cursor: default;
    opacity: 1;
}

/* 暗色主题：success-light-default 会变成半透明浅绿，这里换成 fill 系保证对比 */
body[theme-mode=dark] .game-card-face.is-matched {
    color: var(--semi-color-success);
    background-color: var(--semi-color-fill-1);
    box-shadow: inset 0 0 0 2px var(--semi-color-success);
}

/* ---------------- 说明区（关于工具） ---------------- */
.game-info-section {
    margin-top: 20px;
    padding: 16px 18px;
    border-radius: 12px;
    background-color: var(--semi-color-fill-0);
    font-size: 14px;
    line-height: 1.75;
    color: var(--semi-color-text-1);
}

.game-info-section h2 {
    margin: 0 0 8px;
    font-size: 15px;
    font-weight: 700;
    color: var(--semi-color-text-0);
}

.game-info-section p {
    margin: 0 0 8px;
}

.game-info-section p:last-child {
    margin-bottom: 0;
}

/* ---------------- 工具类 ---------------- */
.game-hidden {
    display: none !important;
}

/* ---------------- 响应式 ---------------- */
@media (max-width: 768px) {
    .game-page {
        padding: 0 10px 24px;
    }

    /* 标题区收紧；窄屏不给描述留缩进，宽度全给文字 */
    .game-header {
        padding: 14px 2px 12px;
        column-gap: 10px;
        row-gap: 5px;
    }

    .game-card {
        padding: 14px;
        border-radius: 14px;
    }

    .game-header h1 {
        font-size: 19px;
    }

    .game-display {
        min-height: 68px;
        font-size: 26px;
    }

    .game-stat .game-stat-value {
        font-size: 18px;
    }

    .game-stat .game-stat-label {
        font-size: 11px;
    }

    .game-btn {
        padding: 9px 16px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .game-header {
        --game-icon-size: 40px;
    }

    .game-settings {
        gap: 8px 12px;
        padding: 10px;
    }

    .game-settings .game-field {
        font-size: 13px;
    }

    .game-display {
        min-height: 58px;
        padding: 10px;
        font-size: 22px;
    }

    .game-stat {
        min-width: 62px;
        padding: 8px 4px;
    }

    .game-stat .game-stat-value {
        font-size: 16px;
    }

    .game-cell {
        font-size: .95rem;
    }

    .game-keypad {
        gap: 6px;
    }

    .game-key {
        padding: 9px 0;
        font-size: 1rem;
    }

    .game-bit>b {
        width: 30px;
        height: 30px;
        font-size: .9rem;
    }

    .game-bit>span {
        font-size: .6rem;
    }
}

/* ============================================================
 * 数字拼图（number-puzzle-game）专用的高对比度配色
 * ------------------------------------------------------------
 * 问题：通用 .game-cell 用 --semi-color-bg-0（纯白）做底色、数字用深灰，
 * 而卡片本身也是白底，格子和背景几乎融在一起，浅灰的 .is-fixed 更是看不清。
 * 处理：只在 .game-page.is-puzzle 作用域内换一套对比更强的配色，
 *      数字用「深底白字」，空格用下沉的暗槽。
 *
 * 四态配色（用户反馈「未完成是绿色、完成还是绿色，混在一起」，故明确分色）：
 *   • 未开始 .game-grid.is-idle .game-cell → 白底灰字（目标序列预览）
 *   • 进行中 .game-cell                     → 主色绿 + 白字
 *   • 已归位 .game-cell.is-fixed            → info 蓝 + 白字（原为 primary-active 深绿，
 *                                            与本主题的绿底几乎同色，已弃用）
 *   • 选中   .game-cell.is-active           → warning 橙
 *   交换瞬间再看落点闪一下：归位闪 is-good（亮蓝）、未归位闪 is-wrong（红）。
 *   注意本主题里 --semi-color-primary 与 --semi-color-success 同为 green-5，
 *   所以「已归位」绝不能再用 success 系，否则又和进行中的绿撞色。
 * ============================================================ */
.game-page.is-puzzle .game-grid.is-square {
    gap: 5px;
    padding: 8px;
    background-color: var(--semi-color-fill-2);
    border-radius: 12px;
}

/* 有数字的格子：深色底 + 白色数字，与白色卡片形成强反差 */
.game-page.is-puzzle .game-cell {
    color: var(--semi-color-white);
    font-weight: 700;
    background-color: var(--semi-color-primary);
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .18);
}

/* 未开始：棋盘上按目标顺序摆着 1..N，但还没开局，用中性白底灰字表示「等待开始」，
   与进行中的绿、已归位的蓝都区分开（否则一进页面满盘绿=看起来像已通关） */
.game-page.is-puzzle .game-grid.is-idle .game-cell {
    cursor: default;
    color: var(--semi-color-text-2);
    background-color: var(--semi-color-bg-0);
    box-shadow: inset 0 0 0 1px var(--semi-color-border);
}

.game-page.is-puzzle .game-grid.is-idle .game-cell:hover {
    background-color: var(--semi-color-bg-0);
    transform: none;
}

.game-page.is-puzzle .game-cell:hover {
    background-color: var(--semi-color-primary-hover);
    transform: translateY(-1px);
}

/* 已归位（数字已在正确位置）：info 蓝 + 白字，与进行中的绿拉开明显色差 */
.game-page.is-puzzle .game-cell.is-fixed {
    color: var(--semi-color-white);
    background-color: var(--semi-color-info);
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .45), 0 1px 3px rgba(0, 0, 0, .18);
}

/* 当前选中、等待交换的格子：橙黄底 + 描边，一眼能看出选了哪个 */
.game-page.is-puzzle .game-cell.is-active {
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-warning);
    box-shadow: inset 0 0 0 3px var(--semi-color-warning-active), 0 2px 6px rgba(0, 0, 0, .22);
}

/* 提示（点「提示」按钮后闪 900ms 的那块）：高亮黄。
   不能用 info 蓝 —— 「已归位」已经占用蓝色，再撞色就回到「分不清」的老问题 */
.game-page.is-puzzle .game-cell.is-hint {
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-highlight-bg);
}

/* 交换瞬间的落点反馈（600ms 后由脚本移除）：
   归位闪亮蓝、未归位闪红 —— 否则「点第二张牌」除了数字换位没有任何颜色变化 */
.game-page.is-puzzle .game-cell.is-wrong {
    background-color: var(--semi-color-danger);
    color: var(--semi-color-white);
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .45), 0 2px 8px rgba(0, 0, 0, .22);
    transform: translateY(-2px);
}

.game-page.is-puzzle .game-cell.is-good {
    background-color: var(--semi-color-info-hover);
    color: var(--semi-color-white);
    box-shadow: inset 0 0 0 2px var(--semi-color-white), 0 2px 8px rgba(0, 0, 0, .22);
    transform: translateY(-2px);
}

/* 暗色主题：卡片本身已是深色，格子改用浅色底 + 深色字才够对比 */
body[theme-mode=dark] .game-page.is-puzzle .game-cell {
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-fill-2);
}

body[theme-mode=dark] .game-page.is-puzzle .game-cell:hover {
    background-color: var(--semi-color-fill-1);
}

/* 暗色下的「未开始」：比进行中的格更暗淡，维持等待感 */
body[theme-mode=dark] .game-page.is-puzzle .game-grid.is-idle .game-cell {
    color: var(--semi-color-text-2);
    background-color: var(--semi-color-fill-1);
}

body[theme-mode=dark] .game-page.is-puzzle .game-cell.is-fixed {
    color: var(--semi-color-white);
    background-color: var(--semi-color-info);
}

body[theme-mode=dark] .game-page.is-puzzle .game-cell.is-active {
    color: var(--semi-color-text-0);
    background-color: var(--semi-color-warning);
}
/* static/home/css/bottom-nav.css */
/* ============================================================================
   移动端底部导航（H5）
   ----------------------------------------------------------------------------
   背景：站点的分类侧栏 .left-nav 在 ≤767px 被 display:none，手机上没有任何
   导航入口，返回首页 / 看收藏 / 进个人中心都要从右上角的小字下拉里绕。

   规则：
     - 只在 ≤767px 显示（与 .left-nav 的隐藏断点完全一致），桌面端零影响；
     - 高度 56px，底部叠加 iPhone 安全区内边距，避免被 Home Indicator 压住；
     - 三个入口：首页 / 收藏 / 我的（不放消息——没有消息要主动推给用户，
       消息入口保留在「我的」页面里）；
     - 高亮由 `_bottom_nav.html` 末尾的内联脚本按 pathname 判定，不依赖各页面模板。

   标记结构见 views/home/layout/_bottom_nav.html。
   引入位置：views/home/layout/_header.html（<head> 内，main.css 之后）。
   ========================================================================== */

.tb-bnav {
    display: none;
}

@media (max-width: 767px) {

    .tb-bnav {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 900;
        display: flex;
        align-items: stretch;
        height: 56px;
        background: rgba(255, 255, 255, .96);
        -webkit-backdrop-filter: saturate(180%) blur(12px);
        backdrop-filter: saturate(180%) blur(12px);
        border-top: 1px solid #e5e7eb;
        box-shadow: 0 -2px 14px rgba(16, 24, 40, .06);
        /* iPhone 底部安全区（iOS 11.2+ 用 env()，老版本用 constant() 兜底） */
        padding-bottom: constant(safe-area-inset-bottom);
        padding-bottom: env(safe-area-inset-bottom);
        box-sizing: content-box;
    }

    /* 给页面底部让出导航的高度，否则会盖住页脚最后一行。
       个人中心系列页面 body 带 min-h-screen，配合 border-box 不会多出滚动条。 */
    body {
        padding-bottom: calc(56px + constant(safe-area-inset-bottom));
        padding-bottom: calc(56px + env(safe-area-inset-bottom));
    }

    /* 工具页的 toast 原本固定在 bottom:2.5rem，会被底栏压住，这里抬到导航之上 */
    .tool_alert {
        bottom: calc(56px + env(safe-area-inset-bottom) + .75rem);
    }

    .tb-bnav-item {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        text-decoration: none;
        color: #9ca3af;
        position: relative;
        -webkit-tap-highlight-color: transparent;
        transition: color .16s ease;
    }

    .tb-bnav-item svg {
        width: 22px;
        height: 22px;
        stroke-width: 1.9;
        transition: transform .16s ease;
    }

    .tb-bnav-label {
        font-size: 10px;
        line-height: 1;
        letter-spacing: .01em;
    }

    .tb-bnav-item.is-active {
        color: #3bb346;
        font-weight: 600;
    }

    .tb-bnav-item.is-active svg {
        transform: translateY(-1px);
    }

    /* 激活项顶部的指示条 */
    .tb-bnav-item.is-active::before {
        content: "";
        position: absolute;
        top: 0;
        width: 22px;
        height: 2.5px;
        border-radius: 0 0 3px 3px;
        background: #3bb346;
    }

    .tb-bnav-item:active {
        opacity: .75;
    }
}

