@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root,:host{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-slab-duo-regular:normal 400 1em/1 "Font Awesome 7 Slab Duo";--fa-font-slab-press-duo-regular:normal 400 1em/1 "Font Awesome 7 Slab Press Duo";--fa-font-pixel-regular:normal 400 1em/1 "Font Awesome 7 Pixel";--fa-font-mosaic-solid:normal 900 1em/1 "Font Awesome 7 Mosaic";--fa-font-vellum-solid:normal 900 1em/1 "Font Awesome 7 Vellum";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);inset-block-start:.25em;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.0833333em}.fa-sm{vertical-align:.0535715em;font-size:.875em;line-height:.0714286em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.0416667em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-canvas-square{margin-block-end:-.125em;padding-block:.125em}.fa-canvas-roomy{box-sizing:content-box;margin-block-end:-.25em;padding-block:.25em;padding-inline:.125em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1.5s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-flip-360{animation-name:fa-flip-360;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.75s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}.fa-spin-snap{animation-name:fa-spin-snap;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,3s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-snap-4{animation-name:fa-spin-snap-4;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2.4s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-snap-8{animation-name:fa-spin-snap-8;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,4s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-buzz{animation-name:fa-buzz;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.6s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-wag{animation-name:fa-wag;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.9s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out);transform-origin:bottom}.fa-float{animation-name:fa-float;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,3s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out);will-change:transform}.fa-swing{animation-name:fa-swing;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1.2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out);transform-origin:top}.fa-jello{animation-name:fa-jello;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.9s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out)}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-flip-360,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse,.fa-buzz,.fa-float,.fa-jello,.fa-spin-snap,.fa-spin-snap-4,.fa-spin-snap-8,.fa-swing,.fa-wag{transition:none!important;animation:none!important}}@keyframes fa-beat{0%{transform:scale(1)}25%{transform:scale(calc(1.25 * var(--fa-beat-scale,1.25)))}45%{transform:scale(calc(1.22 * var(--fa-beat-scale,1.22)))}65%{transform:scale(calc(1.25 * var(--fa-beat-scale,1.25)))}90%{transform:scale(1)}}@keyframes fa-bounce{0%{animation-timing-function:var(--fa-animation-timing);transform:scale(1)translateY(0)}14%{transform:scale(var(--fa-bounce-start-scale-x,1.06), var(--fa-bounce-start-scale-y,.94)) translateY(var(--fa-bounce-anticipation,3px));animation-timing-function:cubic-bezier(.33,0,.66,.33)}32%{transform:scale(var(--fa-bounce-jump-scale-x,.94), var(--fa-bounce-jump-scale-y,1.12)) translateY(calc(-1 * var(--fa-bounce-height,.5em)));animation-timing-function:cubic-bezier(.33,.66,.66,1)}52%{transform:scale(1, 1) translateY(calc(-1 * var(--fa-bounce-height,.5em) * 1.1));animation-timing-function:cubic-bezier(.5,0,1,.5)}70%{transform:scale(var(--fa-bounce-land-scale-x,1.06), var(--fa-bounce-land-scale-y,.92)) translateY(0);animation-timing-function:cubic-bezier(.33,.33,.66,1)}85%{transform:scale(.98, 1.04) translateY(calc(-2px * var(--fa-bounce-rebound,1)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{0%{opacity:1;animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}40%{opacity:var(--fa-fade-opacity,.4);animation-timing-function:cubic-bezier(.4,0,.6,1);transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes fa-beat-fade{0%{opacity:var(--fa-beat-fade-opacity,.4);animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}25%{opacity:calc(var(--fa-beat-fade-opacity,.4) + .4);transform:scale(var(--fa-beat-fade-scale,1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}45%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.25));animation-timing-function:cubic-bezier(.4,0,.2,1)}65%{opacity:calc(var(--fa-beat-fade-opacity,.4) + .4);transform:scale(var(--fa-beat-fade-scale,1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}}@keyframes fa-flip{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale,.95)) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.33,0,.66,.33)}35%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * .6));animation-timing-function:linear}65%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * .5));animation-timing-function:cubic-bezier(.33,.66,.66,1)}92%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * var(--fa-flip-overshoot,1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), var(--fa-flip-angle,-360deg))}}@keyframes fa-flip-360{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale,.95)) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), 0deg);animation-timing-function:cubic-bezier(.33,0,.66,.33)}50%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * .6));animation-timing-function:cubic-bezier(.33,.66,.66,1)}80%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), calc(var(--fa-flip-angle,-360deg) * var(--fa-flip-overshoot,1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), var(--fa-flip-angle,-360deg))}}@keyframes fa-shake{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(35deg)translate(1px)}20%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(-22deg)translate(-1px)}35%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(15deg)translate(1px)}50%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-9deg)}65%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(5deg)}78%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-3deg)}90%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:rotate(1deg)}to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}12%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(60deg)}16.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(60deg)}28.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(120deg)}33.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(120deg)}45.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}62%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(240deg)}66.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(240deg)}78.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(300deg)}83.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(300deg)}95.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-4{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}15%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}40%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}65%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}90%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-8{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}9%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(45deg)}12.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(45deg)}21.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}34%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(135deg)}37.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(135deg)}46.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}59%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(225deg)}62.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(225deg)}71.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}84%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(315deg)}87.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(315deg)}96.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes fa-buzz{0%{animation-timing-function:cubic-bezier(.1,0,.9,1);transform:translate(0)rotate(0)}5%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.5deg)}10%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px))) rotate(-.5deg)}15%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.3deg)}20%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px))) rotate(-.3deg)}25%{transform:translateX(calc(var(--fa-buzz-distance,4px) * .7)) rotate(.2deg)}30%{transform:translateX(calc(-1 * var(--fa-buzz-distance,4px) * .7)) rotate(-.2deg)}35%{transform:translateX(calc(var(--fa-buzz-distance,4px) * .4)) rotate(.1deg)}40%{transform:translate(0)rotate(0)}to{transform:translate(0)rotate(0)}}@keyframes fa-wag{0%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(0)}12%{transform:rotate(var(--fa-wag-angle,12deg));animation-timing-function:cubic-bezier(.4,0,.2,1)}24%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(2deg)}36%{transform:rotate(calc(var(--fa-wag-angle,12deg) * .85));animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(1deg)}58%{transform:rotate(calc(var(--fa-wag-angle,12deg) * .6));animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-float{0%{transform:translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98));animation-timing-function:cubic-bezier(.33,0,.66,.33)}15%{transform:translateY(calc(-.4 * var(--fa-float-height,6px))) translateX(var(--fa-float-drift,1px)) rotate(var(--fa-float-tilt,1deg)) scale(1, 1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}35%{transform:translateY(calc(-1 * var(--fa-float-height,6px))) translateX(0) rotate(0deg) scale(var(--fa-float-stretch-x,.98), var(--fa-float-stretch-y,1.03));animation-timing-function:cubic-bezier(.5,0,.5,0)}50%{transform:translateY(calc(-.92 * var(--fa-float-height,6px))) translateX(calc(-.5 * var(--fa-float-drift,1px))) rotate(calc(-.5 * var(--fa-float-tilt,1deg))) scale(.995, 1.01);animation-timing-function:cubic-bezier(.33,0,.66,.33)}70%{transform:translateY(calc(-.3 * var(--fa-float-height,6px))) translateX(calc(-1 * var(--fa-float-drift,1px))) rotate(calc(-1 * var(--fa-float-tilt,1deg))) scale(1, 1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(.05 * var(--fa-float-height,6px))) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02), var(--fa-float-squash-y,.98))}}@keyframes fa-swing{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{transform:rotate(var(--fa-swing-angle,22deg));animation-timing-function:cubic-bezier(.3,0,.7,1)}18%{transform:rotate(calc(-1 * var(--fa-swing-angle,22deg) * .85));animation-timing-function:cubic-bezier(.3,0,.7,1)}28%{transform:rotate(calc(var(--fa-swing-angle,22deg) * .65));animation-timing-function:cubic-bezier(.35,0,.65,1)}38%{transform:rotate(calc(-1 * var(--fa-swing-angle,22deg) * .45));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:rotate(calc(var(--fa-swing-angle,22deg) * .25));animation-timing-function:cubic-bezier(.4,0,.6,1)}56%{transform:rotate(calc(-1 * var(--fa-swing-angle,22deg) * .1));animation-timing-function:cubic-bezier(.4,0,.6,1)}64%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-jello{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:scale(1)}12%{transform:scale(var(--fa-jello-scale-x,1.15), calc(2 - var(--fa-jello-scale-x,1.15)));animation-timing-function:cubic-bezier(.3,0,.7,1)}24%{transform:scale(calc(2 - var(--fa-jello-scale-y,1.12)), var(--fa-jello-scale-y,1.12));animation-timing-function:cubic-bezier(.3,0,.7,1)}36%{transform:scale(calc(1 + (var(--fa-jello-scale-x,1.15) - 1) * .5), calc(2 - (1 + (var(--fa-jello-scale-x,1.15) - 1) * .5)));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:scale(calc(2 - (1 + (var(--fa-jello-scale-y,1.12) - 1) * .3)), calc(1 + (var(--fa-jello-scale-y,1.12) - 1) * .3));animation-timing-function:cubic-bezier(.4,0,.6,1)}58%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:scale(1.02,.98)}68%{transform:scale(1)}to{transform:scale(1)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}
:root{--bg-primary:#0a0c10;--bg-surface:#12161e99;--bg-surface-hover:#1a202cd9;--bg-sidebar:#0d1117d9;--border-color:#ffffff14;--border-color-glow:#3b82f64d;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-color:#3b82f6;--accent-glow:#3b82f626;--accent-hover:#60a5fa;--success-color:#10b981;--success-glow:#10b98126;--danger-color:#ef4444;--danger-glow:#ef444426;--font-family:var(--font-geist-sans), system-ui, -apple-system, sans-serif;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1);--glass-blur:blur(12px);--card-shadow:0 8px 32px 0 #0000005e;--input-bg:#0003;--folder-color:#fbbf24;--type-badge-text:#a5b4fc;--modal-bg:#11141d;--table-header-bg:#0003;--table-row-hover-bg:#ffffff05;--badge-admin-bg:#3b82f626;--badge-admin-text:#93c5fd;--badge-admin-border:#3b82f64d;--badge-user-bg:#9ca3af26;--badge-user-text:#e5e7eb;--badge-user-border:#9ca3af4d;--logo-filter:invert(1) hue-rotate(180deg)}[data-theme=light]{--bg-primary:#f4f6fa;--bg-surface:#ffffffb3;--bg-surface-hover:#f1f5f9e6;--bg-sidebar:#ffffffd9;--border-color:#0f172a14;--border-color-glow:#3b82f633;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-color:#2563eb;--accent-glow:#2563eb26;--accent-hover:#1d4ed8;--success-color:#059669;--success-glow:#05966926;--danger-color:#dc2626;--danger-glow:#dc262626;--card-shadow:0 8px 32px 0 #1f26870f;--input-bg:#ffffffe6;--folder-color:#b45309;--type-badge-text:#4338ca;--modal-bg:#fff;--table-header-bg:#0000000a;--table-row-hover-bg:#00000005;--badge-admin-bg:#3b82f61a;--badge-admin-text:#1e40af;--badge-admin-border:#3b82f633;--badge-user-bg:#64748b1a;--badge-user-text:#475569;--badge-user-border:#64748b33;--logo-filter:none}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);height:100%;color:var(--text-primary);font-family:var(--font-family);-webkit-font-smoothing:antialiased;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.dashboard-container{background-image:radial-gradient(circle at 10% 20%,#3b82f60d 0%,#0000 40%),radial-gradient(circle at 90% 80%,#10b98108 0%,#0000 40%);background-attachment:fixed;height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-color);width:260px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);z-index:10;flex-direction:column;flex-shrink:0;padding:24px;display:flex;overflow-y:auto}.sidebar-brand{letter-spacing:-.025em;color:var(--text-primary);align-items:center;gap:10px;margin-bottom:40px;font-size:1.25rem;font-weight:700;display:flex}.sidebar-brand-icon{background:var(--accent-color);width:12px;height:12px;box-shadow:0 0 10px var(--accent-color);border-radius:50%}.sidebar-menu{flex-direction:column;flex-grow:1;gap:8px;list-style:none;display:flex}.sidebar-item{width:100%}.sidebar-link{color:var(--text-secondary);transition:var(--transition-smooth);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;width:100%;padding:12px 16px;font-size:.95rem;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover,.sidebar-link.active{color:var(--text-primary);background:var(--bg-surface-hover);border-color:var(--border-color);box-shadow:0 4px 12px #0000001a}.sidebar-link.active{border-color:var(--border-color-glow);background:#3b82f614}.sidebar-footer{border-top:1px solid var(--border-color);margin-top:auto;padding-top:20px}.main-content{flex-direction:column;flex-grow:1;min-width:0;display:flex}.dashboard-header{border-bottom:1px solid var(--border-color);height:70px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);z-index:90;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 40px;display:flex;position:relative}.welcome-msg{color:var(--text-secondary);font-size:1rem;font-weight:500}.welcome-msg span{color:var(--text-primary);font-weight:600}.content-body{flex-grow:1;padding:40px;overflow-y:auto}.glass-card{background:var(--bg-surface);border:1px solid var(--border-color);box-shadow:var(--card-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:var(--transition-smooth);border-radius:16px;padding:32px}.glass-card:hover{border-color:var(--border-color-glow);box-shadow:0 12px 40px #3b82f614}.form-group{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.form-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-input{border:1px solid var(--border-color);background:var(--input-bg);width:100%;color:var(--text-primary);transition:var(--transition-smooth);border-radius:8px;outline:none;padding:12px 16px;font-size:.95rem}.form-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239ca3af'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.btn{cursor:pointer;transition:var(--transition-smooth);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent-color);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 16px var(--accent-glow)}.btn-secondary{border:1px solid var(--border-color);color:var(--text-secondary);background:0 0}.btn-secondary:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--text-muted)}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover{box-shadow:0 4px 16px var(--danger-glow);background:#f87171}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover{box-shadow:0 4px 16px var(--success-glow);background:#34d399}.btn-warning{color:#fff;background:#d97706}.btn-warning:hover{background:#ea8a1a;box-shadow:0 4px 16px #d9770659}.btn-small{border-radius:6px;padding:8px 14px;font-size:.85rem}.login-container{background-image:radial-gradient(circle at 30% 30%,#3b82f614 0%,#0000 50%),radial-gradient(circle at 70% 70%,#10b9810d 0%,#0000 50%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{width:100%;max-width:420px}.login-title{text-align:center;letter-spacing:-.025em;margin-bottom:24px;font-size:1.75rem;font-weight:700}.notification{border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:.9rem;display:flex}.notification-error{color:#fca5a5;background:#ef44441a;border-color:#ef444433}.notification-success{color:#6ee7b7;background:#10b9811a;border-color:#10b98133}.notification-warning{color:#fcd34d;background:#f59e0b1a;border-color:#f59e0b40}.notification-failed{color:#fecaca;background:#ef44442e;border-color:#ef444480;font-weight:600}[data-theme=light] .notification-failed{color:#991b1b;background:#ef444433;border-color:#dc26268c}.table-container{border:1px solid var(--border-color);border-radius:12px;margin-top:24px;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.95rem}@media (min-width:1025px){table.docmgmt-table th,table.docmgmt-table td{padding-left:12px;padding-right:12px}table.docmgmt-table td.docmgmt-col-name{word-break:break-word;min-width:220px}table.docmgmt-table th.docmgmt-col-tight,table.docmgmt-table td.docmgmt-col-tight,table.docmgmt-table th.docmgmt-actions,table.docmgmt-table td.docmgmt-actions{white-space:nowrap;width:1%}table.docmgmt-table td.docmgmt-actions .btn{gap:5px;padding:6px 10px;font-size:.78rem}}.data-table th{background:var(--table-header-bg);color:var(--text-secondary);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.05em;padding:16px 24px;font-size:.75rem;font-weight:600}.data-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:16px 24px}.data-table th,.data-table td{text-align:center}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--table-row-hover-bg)}.badge{text-transform:capitalize;border-radius:9999px;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-admin{background:var(--badge-admin-bg);color:var(--badge-admin-text);border:1px solid var(--badge-admin-border)}.badge-user{background:var(--badge-user-bg);color:var(--badge-user-text);border:1px solid var(--badge-user-border)}.status-pill{letter-spacing:.04em;white-space:nowrap;border-radius:9999px;align-items:center;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.status-pill.is-processed{color:#6ee7b7;background:#10b98126;border:1px solid #10b9814d}.status-pill.is-processing{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f64d}.status-pill.is-pending{color:#e5e7eb;background:#9ca3af2e;border:1px solid #9ca3af59}.status-pill.is-failed{color:#fca5a5;background:#ef444426;border:1px solid #ef44444d}.status-pill.is-held{color:#cbd5e1;background:#94a3b826;border:1px dashed #94a3b873}[data-theme=light] .status-pill.is-processed{color:#047857;background:#0596691f;border-color:#05966959}[data-theme=light] .status-pill.is-processing{color:#1d4ed8;background:#2563eb1f;border-color:#2563eb59}[data-theme=light] .status-pill.is-pending{color:#334155;background:#64748b24;border-color:#64748b66}[data-theme=light] .status-pill.is-failed{color:#b91c1c;background:#dc26261a;border-color:#dc262659}[data-theme=light] .status-pill.is-held{color:#475569;background:#64748b1f;border-color:#64748b80}.actions-cell{vertical-align:middle;white-space:nowrap}.actions-cell .actions-inner{align-items:center;gap:8px;display:inline-flex}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--modal-bg);border:1px solid var(--border-color-glow);width:100%;max-width:500px;box-shadow:var(--card-shadow);border-radius:16px;flex-direction:column;max-height:calc(100vh - 40px);display:flex}.modal-content form{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{font-size:1.25rem;font-weight:700}.modal-close{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-content.modal-edit-user{max-width:640px}.modal-edit-user .modal-body{padding-top:18px;padding-bottom:18px}.modal-edit-user .modal-body .form-group{margin-bottom:14px}.modal-footer{border-top:1px solid var(--border-color);flex-shrink:0;justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.text-center{text-align:center}.mt-4{margin-top:16px}.mb-6{margin-bottom:24px}.flex-between{justify-content:space-between;align-items:center;display:flex}.page-title{letter-spacing:-.02em;font-size:1.75rem;font-weight:700}.empty-state{text-align:center;border:1px dashed var(--border-color);color:var(--text-secondary);background:#ffffff03;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-state-icon{color:var(--text-muted);margin-bottom:16px;font-size:3rem}.empty-state-title{color:var(--text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:600}.empty-state-desc{max-width:400px;font-size:.95rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar-toggle-btn{color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:8px;margin-left:-8px;padding:8px;display:block}@media (min-width:1025px){.sidebar{transition:width .25s,padding .25s,opacity .2s}.sidebar-collapsed .sidebar{opacity:0;border-right:none;width:0;min-width:0;padding:0;overflow:hidden}}.sidebar-toggle-btn:hover{background:var(--bg-surface-hover)}.sidebar-mobile-close-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:4px;padding:4px;display:none}.sidebar-mobile-close-btn:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.sidebar-mobile-overlay{display:none}@media (max-width:1024px){html,body{width:100%;max-width:100%!important;overflow-x:hidden!important}.sidebar-toggle-btn,.sidebar-mobile-close-btn{display:block}.sidebar{visibility:hidden;z-index:1000;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1),visibility .3s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-open .sidebar{visibility:visible;transform:translate(0)}.sidebar-mobile-overlay{-webkit-backdrop-filter:blur(4px);z-index:999;background:#00000080;position:fixed;inset:0}.sidebar-open .sidebar-mobile-overlay{display:block}.dashboard-container,.main-content{width:100%!important;max-width:100vw!important;overflow-x:hidden!important}.dashboard-header{gap:10px;padding:0 20px}.header-user-text{max-width:120px}.ocr-controls{width:100%}.ocr-controls>select,.ocr-controls>button{flex:1;min-width:0;width:auto!important}.ocr-table th,.ocr-table td{padding-left:6px!important;padding-right:6px!important}.ocr-table .ocr-col-chevron{width:28px}.ocr-table .ocr-col-result{width:100px}.content-body{padding:20px}.glass-card{padding:16px!important}}.dashboard-kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}@media (max-width:1024px){.dashboard-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.dashboard-kpi-grid{grid-template-columns:1fr}.docmgmt-total-card{flex:100%!important;width:100%!important}}.dashboard-kpi-grid-3{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;display:grid}@media (max-width:1024px){.dashboard-kpi-grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.dashboard-kpi-grid-3{grid-template-columns:1fr}}.dashboard-tokens-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:640px){.dashboard-tokens-grid{grid-template-columns:1fr}}.dashboard-columns-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:1024px){.dashboard-columns-grid{grid-template-columns:1fr;gap:16px}}.chat-workspace-grid{grid-template-columns:280px 1fr;gap:20px;height:calc(100vh - 120px);min-height:500px;display:grid}@media (max-width:1024px){.chat-workspace-grid{grid-template-columns:1fr!important;gap:0!important;height:calc(100vh - 140px)!important}.chat-back-to-sessions-btn{display:inline-flex!important}.chat-has-active-session .chat-sessions-panel,.chat-no-active-session .chat-feed-panel{display:none!important}.chat-session-header{flex-wrap:wrap!important;gap:6px!important;padding:12px 14px!important}.chat-session-header h3{font-size:.88rem!important}.chat-messages-feed{padding:14px!important}.chat-input-form{gap:8px!important;padding:10px 12px!important}.chat-input-form>button:first-child{padding:8px 12px!important;font-size:.75rem!important}.chat-input-form>input{flex:1!important;min-width:0!important;padding:10px 12px!important;font-size:.85rem!important}.chat-input-form>button[type=submit],.chat-input-form>button.btn-secondary{flex-shrink:0!important;padding:10px 14px!important;font-size:.82rem!important}.chat-thinking-label,.chat-send-label{display:none!important}.chat-input-form>button:first-child{gap:0!important;padding:10px!important}.chat-input-form>button[type=submit]{padding:10px 12px!important}.chat-token-badge{display:none!important}.chat-ai-badge{padding:2px 6px!important;font-size:.65rem!important}.chat-msg-bubble{max-width:95%!important;padding:14px 18px!important;font-size:.88rem!important}}.embed-chat-root .chat-workspace-grid{gap:0!important;height:100%!important;min-height:0!important}.embed-chat-root .chat-sessions-panel{height:100%;min-height:0}.chat-workspace-grid.chat-sidebar-collapsed{grid-template-columns:1fr}.chat-workspace-grid.chat-sidebar-collapsed .chat-sessions-panel{display:none!important}@media (max-width:1024px){.chat-collapse-toggle{display:none!important}}.document-analysis-grid{grid-template-columns:1fr 1.6fr;align-items:start;gap:20px;display:grid}@media (max-width:1024px){.document-analysis-grid{grid-template-columns:1fr}}.mysql-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:640px){.mysql-grid{grid-template-columns:1fr}.notif-dropdown{background:var(--bg-primary,#0f1117)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;width:auto!important;max-width:100vw!important;position:fixed!important;top:60px!important;left:8px!important;right:8px!important}}.token-usage-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:16px;display:flex}.token-usage-desc{max-width:none}@media (max-width:768px){.token-usage-header{flex-direction:column;align-items:stretch;gap:16px}.token-usage-reset-btn{text-align:center;align-self:flex-start;width:100%}}.settings-tabs-container::-webkit-scrollbar{display:none}@media (max-width:640px){.settings-tabs-container+.flex-between{flex-direction:column!important;align-items:stretch!important;gap:12px!important;margin-bottom:24px!important}.settings-tabs-container+.flex-between button,.settings-tabs-container+.flex-between a{justify-content:center!important;align-self:flex-start!important;width:100%!important}}.document-toolbar{border-bottom:1px solid var(--border-color);background:#0000000d;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.document-toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.document-toolbar-actions .btn-secondary{background:var(--modal-bg)}.document-toolbar-actions .btn-secondary:hover{background:var(--bg-surface-hover)}.document-toolbar-metadata{flex-shrink:0;align-items:center;gap:16px;display:flex}.document-sync-status{color:var(--text-muted);align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.sync-dot{borderRadius:50%;background:#10b981;width:6px;height:6px;display:inline-block}.document-items-count{color:var(--text-muted);font-size:.85rem}@media (max-width:1024px){.document-toolbar{flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:12px 16px!important}.document-toolbar-actions{flex-wrap:wrap!important;gap:8px!important;display:flex!important}.document-toolbar-actions button{flex:auto!important;justify-content:center!important;padding:8px 12px!important;font-size:.82rem!important}.document-toolbar-metadata{border-top:1px solid var(--border-color);margin-top:4px;padding-top:8px;justify-content:space-between!important;width:100%!important;display:flex!important}}@media (max-width:640px){.document-toolbar-actions{grid-template-columns:1fr 1fr!important;gap:8px!important;display:grid!important}.document-toolbar-actions button{width:100%!important}.document-toolbar-actions #upload-btn{grid-column:1/-1!important}}@media (min-width:1025px){.mobile-only{display:none!important}}@media (max-width:1024px){.desktop-only{display:none!important}th.mobile-only,td.mobile-only{display:table-cell!important}.data-table th,.data-table td{padding:12px 10px!important}tr.detail-row td{background:#ffffff03!important;border-top:none!important;padding:0!important}.table-detail-content{border-left:4px solid var(--accent-color);background:#7878780f;flex-direction:column;gap:10px;padding:16px 20px;display:flex}}.mobile-card-chevron{width:18px;height:18px;color:var(--text-muted);cursor:pointer;vertical-align:middle}.mobile-card-actions{justify-content:flex-end;gap:6px;display:flex}.mobile-card-action-btn{border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:#ffffff08;border-radius:8px;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:inline-flex}.mobile-card-action-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background:#3b82f60f}.mobile-card-action-btn.danger{background:var(--danger-color);color:#fff;border-color:#0000}.mobile-card-action-btn.danger:hover{background:#dc2626;border-color:#0000}.mobile-card-action-btn.danger-hover{color:var(--text-muted)}.mobile-card-action-btn.danger-hover:hover{color:var(--danger-color);border-color:var(--danger-color);background:#ef44440f}.mobile-card-action-btn.filled-danger{background:var(--danger-color)!important;color:#fff!important;border:none!important}.mobile-card-action-btn.filled-danger:hover{transform:scale(1.05);background:#dc2626!important}.mobile-card-action-btn.primary{background:var(--accent-color);color:#fff;border-color:#0000}.mobile-card-action-btn.primary:hover{background:var(--accent-hover);border-color:#0000}.mobile-card-action-btn.success{background:var(--success-color,#10b981);color:#fff;border-color:#0000}.mobile-card-action-btn.success:hover{background:#059669;border-color:#0000}.mobile-card-detail-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.mobile-card-detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;font-size:.78rem}.mobile-card-detail-value{color:var(--text-primary);text-align:right;text-overflow:ellipsis;min-width:0;font-size:.85rem;overflow:hidden}.table-detail-content .form-input{max-width:180px;font-size:.85rem}@media (max-width:768px){.settings-stack{grid-template-columns:1fr!important;gap:10px!important}}.app-version-badge{border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-secondary);font-size:.76rem;font-weight:700;font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.02em;white-space:nowrap;cursor:pointer;transition:var(--transition-smooth);border-radius:999px;align-items:center;padding:4px 12px;display:inline-flex}.app-version-badge:hover{border-color:var(--accent-color);color:var(--accent-color)}.app-version-badge.is-nonprod{color:#d97706;background:#d977061a;border-color:#d97706}.app-version-badge.is-nonprod:hover{color:#ea8a1a;border-color:#ea8a1a}.release-version{font-family:var(--font-mono,ui-monospace, monospace);color:var(--accent-color);font-size:1rem;font-weight:800}.release-build-info{border:1px solid var(--border-color);background:var(--table-header-bg);border-radius:10px;margin-top:4px;padding:14px 16px}.release-build-row{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;font-size:.8rem;display:flex}.access-denied-card{text-align:center;border-color:var(--danger-color);width:100%;max-width:460px;box-shadow:0 10px 40px var(--danger-glow);padding:40px 32px;position:relative;overflow:hidden}.access-denied-card:before{content:"";background:var(--danger-color);height:4px;position:absolute;top:0;left:0;right:0}.access-denied-icon{background:var(--danger-glow);border:2px solid var(--danger-color);width:72px;height:72px;color:var(--danger-color);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;display:flex;position:relative}.access-denied-icon:after{content:"";border:2px solid var(--danger-color);border-radius:50%;animation:2s ease-out infinite access-denied-pulse;position:absolute;inset:-2px}@keyframes access-denied-pulse{0%{opacity:.7;transform:scale(1)}70%{opacity:0;transform:scale(1.35)}to{opacity:0;transform:scale(1.35)}}.access-denied-chip{background:var(--danger-glow);border:1px solid var(--danger-color);color:var(--danger-color);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-bottom:10px;padding:3px 12px;font-size:.7rem;font-weight:700;display:inline-block}.access-denied-title{color:var(--danger-color);letter-spacing:-.01em;margin:0 0 10px;font-size:1.5rem;font-weight:800}.access-denied-progress{background:var(--border-color);border-radius:999px;height:4px;overflow:hidden}.access-denied-progress>span{background:var(--danger-color);height:100%;transition:width 1s linear;display:block}@media (prefers-reduced-motion:reduce){.access-denied-icon:after{animation:none}.access-denied-progress>span{transition:none}}.platform-chat-head{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title action""desc action";align-items:start;column-gap:16px;margin-bottom:14px;display:grid}@media (max-width:768px){.platform-chat-head{grid-template-areas:"title action""desc desc";row-gap:8px}}.settings-2col{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}@media (max-width:768px){.settings-2col{grid-template-columns:1fr;gap:14px}}.filter-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:12px;display:grid}.filter-grid .filter-actions{grid-column:1/-1;align-items:center;gap:8px;display:flex}.filter-grid>.form-group{min-width:0}@media (max-width:1200px){.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:460px){.filter-grid{grid-template-columns:1fr}}
