/*!
 * Font Awesome Free 6.0.0 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 2022 Fonticons, Inc.
 */.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-duotone,.fa-light,.fa-regular,.fa-solid,.fa-thin,.fab,.fad,.fal,.far,.fas,.fat{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.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-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left: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,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;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:before{content:"0"}.fa-1:before{content:"1"}.fa-2:before{content:"2"}.fa-3:before{content:"3"}.fa-4:before{content:"4"}.fa-5:before{content:"5"}.fa-6:before{content:"6"}.fa-7:before{content:"7"}.fa-8:before{content:"8"}.fa-9:before{content:"9"}.fa-a:before{content:"A"}.fa-address-book:before,.fa-contact-book:before{content:""}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:""}.fa-align-center:before{content:""}.fa-align-justify:before{content:""}.fa-align-left:before{content:""}.fa-align-right:before{content:""}.fa-anchor:before{content:""}.fa-angle-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-double-down:before,.fa-angles-down:before{content:""}.fa-angle-double-left:before,.fa-angles-left:before{content:""}.fa-angle-double-right:before,.fa-angles-right:before{content:""}.fa-angle-double-up:before,.fa-angles-up:before{content:""}.fa-ankh:before{content:""}.fa-apple-alt:before,.fa-apple-whole:before{content:""}.fa-archway:before{content:""}.fa-arrow-down:before{content:""}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:""}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:""}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:""}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:""}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:""}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:""}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:""}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:""}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:""}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:""}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:""}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:""}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:""}.fa-arrow-trend-down:before{content:""}.fa-arrow-trend-up:before{content:""}.fa-arrow-turn-down:before,.fa-level-down:before{content:""}.fa-arrow-turn-up:before,.fa-level-up:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:""}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:""}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:""}.fa-arrow-up-from-bracket:before{content:""}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:""}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:""}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:""}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:""}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:""}.fa-arrows-h:before,.fa-arrows-left-right:before{content:""}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:""}.fa-arrows-up-down:before,.fa-arrows-v:before{content:""}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:""}.fa-asterisk:before{content:"*"}.fa-at:before{content:"@"}.fa-atom:before{content:""}.fa-audio-description:before{content:""}.fa-austral-sign:before{content:""}.fa-award:before{content:""}.fa-b:before{content:"B"}.fa-baby:before{content:""}.fa-baby-carriage:before,.fa-carriage-baby:before{content:""}.fa-backward:before{content:""}.fa-backward-fast:before,.fa-fast-backward:before{content:""}.fa-backward-step:before,.fa-step-backward:before{content:""}.fa-bacon:before{content:""}.fa-bacteria:before{content:""}.fa-bacterium:before{content:""}.fa-bag-shopping:before,.fa-shopping-bag:before{content:""}.fa-bahai:before{content:""}.fa-baht-sign:before{content:""}.fa-ban:before,.fa-cancel:before{content:""}.fa-ban-smoking:before,.fa-smoking-ban:before{content:""}.fa-band-aid:before,.fa-bandage:before{content:""}.fa-barcode:before{content:""}.fa-bars:before,.fa-navicon:before{content:""}.fa-bars-progress:before,.fa-tasks-alt:before{content:""}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:""}.fa-baseball-ball:before,.fa-baseball:before{content:""}.fa-baseball-bat-ball:before{content:""}.fa-basket-shopping:before,.fa-shopping-basket:before{content:""}.fa-basketball-ball:before,.fa-basketball:before{content:""}.fa-bath:before,.fa-bathtub:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-half:before{content:""}.fa-battery-2:before,.fa-battery-quarter:before{content:""}.fa-battery-4:before,.fa-battery-three-quarters:before{content:""}.fa-bed:before{content:""}.fa-bed-pulse:before,.fa-procedures:before{content:""}.fa-beer-mug-empty:before,.fa-beer:before{content:""}.fa-bell:before{content:""}.fa-bell-concierge:before,.fa-concierge-bell:before{content:""}.fa-bell-slash:before{content:""}.fa-bezier-curve:before{content:""}.fa-bicycle:before{content:""}.fa-binoculars:before{content:""}.fa-biohazard:before{content:""}.fa-bitcoin-sign:before{content:""}.fa-blender:before{content:""}.fa-blender-phone:before{content:""}.fa-blog:before{content:""}.fa-bold:before{content:""}.fa-bolt:before,.fa-zap:before{content:""}.fa-bolt-lightning:before{content:""}.fa-bomb:before{content:""}.fa-bone:before{content:""}.fa-bong:before{content:""}.fa-book:before{content:""}.fa-atlas:before,.fa-book-atlas:before{content:""}.fa-bible:before,.fa-book-bible:before{content:""}.fa-book-journal-whills:before,.fa-journal-whills:before{content:""}.fa-book-medical:before{content:""}.fa-book-open:before{content:""}.fa-book-open-reader:before,.fa-book-reader:before{content:""}.fa-book-quran:before,.fa-quran:before{content:""}.fa-book-dead:before,.fa-book-skull:before{content:""}.fa-bookmark:before{content:""}.fa-border-all:before{content:""}.fa-border-none:before{content:""}.fa-border-style:before,.fa-border-top-left:before{content:""}.fa-bowling-ball:before{content:""}.fa-box:before{content:""}.fa-archive:before,.fa-box-archive:before{content:""}.fa-box-open:before{content:""}.fa-box-tissue:before{content:""}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:""}.fa-braille:before{content:""}.fa-brain:before{content:""}.fa-brazilian-real-sign:before{content:""}.fa-bread-slice:before{content:""}.fa-briefcase:before{content:""}.fa-briefcase-medical:before{content:""}.fa-broom:before{content:""}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:""}.fa-brush:before{content:""}.fa-bug:before{content:""}.fa-bug-slash:before{content:""}.fa-building:before{content:""}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:""}.fa-bullhorn:before{content:""}.fa-bullseye:before{content:""}.fa-burger:before,.fa-hamburger:before{content:""}.fa-bus:before{content:""}.fa-bus-alt:before,.fa-bus-simple:before{content:""}.fa-briefcase-clock:before,.fa-business-time:before{content:""}.fa-c:before{content:"C"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:""}.fa-calculator:before{content:""}.fa-calendar:before{content:""}.fa-calendar-check:before{content:""}.fa-calendar-day:before{content:""}.fa-calendar-alt:before,.fa-calendar-days:before{content:""}.fa-calendar-minus:before{content:""}.fa-calendar-plus:before{content:""}.fa-calendar-week:before{content:""}.fa-calendar-times:before,.fa-calendar-xmark:before{content:""}.fa-camera-alt:before,.fa-camera:before{content:""}.fa-camera-retro:before{content:""}.fa-camera-rotate:before{content:""}.fa-campground:before{content:""}.fa-candy-cane:before{content:""}.fa-cannabis:before{content:""}.fa-capsules:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-battery-car:before,.fa-car-battery:before{content:""}.fa-car-crash:before{content:""}.fa-car-alt:before,.fa-car-rear:before{content:""}.fa-car-side:before{content:""}.fa-caravan:before{content:""}.fa-caret-down:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-caret-up:before{content:""}.fa-carrot:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:""}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-shopping:before,.fa-shopping-cart:before{content:""}.fa-cash-register:before{content:""}.fa-cat:before{content:""}.fa-cedi-sign:before{content:""}.fa-cent-sign:before{content:""}.fa-certificate:before{content:""}.fa-chair:before{content:""}.fa-blackboard:before,.fa-chalkboard:before{content:""}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:""}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:""}.fa-charging-station:before{content:""}.fa-area-chart:before,.fa-chart-area:before{content:""}.fa-bar-chart:before,.fa-chart-bar:before{content:""}.fa-chart-column:before{content:""}.fa-chart-gantt:before{content:""}.fa-chart-line:before,.fa-line-chart:before{content:""}.fa-chart-pie:before,.fa-pie-chart:before{content:""}.fa-check:before{content:""}.fa-check-double:before{content:""}.fa-check-to-slot:before,.fa-vote-yea:before{content:""}.fa-cheese:before{content:""}.fa-chess:before{content:""}.fa-chess-bishop:before{content:""}.fa-chess-board:before{content:""}.fa-chess-king:before{content:""}.fa-chess-knight:before{content:""}.fa-chess-pawn:before{content:""}.fa-chess-queen:before{content:""}.fa-chess-rook:before{content:""}.fa-chevron-down:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-chevron-up:before{content:""}.fa-child:before{content:""}.fa-church:before{content:""}.fa-circle:before{content:""}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:""}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:""}.fa-check-circle:before,.fa-circle-check:before{content:""}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:""}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:""}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:""}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:""}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:""}.fa-circle-dot:before,.fa-dot-circle:before{content:""}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:""}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:""}.fa-circle-h:before,.fa-hospital-symbol:before{content:""}.fa-adjust:before,.fa-circle-half-stroke:before{content:""}.fa-circle-info:before,.fa-info-circle:before{content:""}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:""}.fa-circle-minus:before,.fa-minus-circle:before{content:""}.fa-circle-notch:before{content:""}.fa-circle-pause:before,.fa-pause-circle:before{content:""}.fa-circle-play:before,.fa-play-circle:before{content:""}.fa-circle-plus:before,.fa-plus-circle:before{content:""}.fa-circle-question:before,.fa-question-circle:before{content:""}.fa-circle-radiation:before,.fa-radiation-alt:before{content:""}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:""}.fa-circle-stop:before,.fa-stop-circle:before{content:""}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:""}.fa-circle-user:before,.fa-user-circle:before{content:""}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:""}.fa-city:before{content:""}.fa-clapperboard:before{content:""}.fa-clipboard:before{content:""}.fa-clipboard-check:before{content:""}.fa-clipboard-list:before{content:""}.fa-clock-four:before,.fa-clock:before{content:""}.fa-clock-rotate-left:before,.fa-history:before{content:""}.fa-clone:before{content:""}.fa-closed-captioning:before{content:""}.fa-cloud:before{content:""}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:""}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:""}.fa-cloud-meatball:before{content:""}.fa-cloud-moon:before{content:""}.fa-cloud-moon-rain:before{content:""}.fa-cloud-rain:before{content:""}.fa-cloud-showers-heavy:before{content:""}.fa-cloud-sun:before{content:""}.fa-cloud-sun-rain:before{content:""}.fa-clover:before{content:""}.fa-code:before{content:""}.fa-code-branch:before{content:""}.fa-code-commit:before{content:""}.fa-code-compare:before{content:""}.fa-code-fork:before{content:""}.fa-code-merge:before{content:""}.fa-code-pull-request:before{content:""}.fa-coins:before{content:""}.fa-colon-sign:before{content:""}.fa-comment:before{content:""}.fa-comment-dollar:before{content:""}.fa-comment-dots:before,.fa-commenting:before{content:""}.fa-comment-medical:before{content:""}.fa-comment-slash:before{content:""}.fa-comment-sms:before,.fa-sms:before{content:""}.fa-comments:before{content:""}.fa-comments-dollar:before{content:""}.fa-compact-disc:before{content:""}.fa-compass:before{content:""}.fa-compass-drafting:before,.fa-drafting-compass:before{content:""}.fa-compress:before{content:""}.fa-computer-mouse:before,.fa-mouse:before{content:""}.fa-cookie:before{content:""}.fa-cookie-bite:before{content:""}.fa-copy:before{content:""}.fa-copyright:before{content:""}.fa-couch:before{content:""}.fa-credit-card-alt:before,.fa-credit-card:before{content:""}.fa-crop:before{content:""}.fa-crop-alt:before,.fa-crop-simple:before{content:""}.fa-cross:before{content:""}.fa-crosshairs:before{content:""}.fa-crow:before{content:""}.fa-crown:before{content:""}.fa-crutch:before{content:""}.fa-cruzeiro-sign:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-d:before{content:"D"}.fa-database:before{content:""}.fa-backspace:before,.fa-delete-left:before{content:""}.fa-democrat:before{content:""}.fa-desktop-alt:before,.fa-desktop:before{content:""}.fa-dharmachakra:before{content:""}.fa-diagram-next:before{content:""}.fa-diagram-predecessor:before{content:""}.fa-diagram-project:before,.fa-project-diagram:before{content:""}.fa-diagram-successor:before{content:""}.fa-diamond:before{content:""}.fa-diamond-turn-right:before,.fa-directions:before{content:""}.fa-dice:before{content:""}.fa-dice-d20:before{content:""}.fa-dice-d6:before{content:""}.fa-dice-five:before{content:""}.fa-dice-four:before{content:""}.fa-dice-one:before{content:""}.fa-dice-six:before{content:""}.fa-dice-three:before{content:""}.fa-dice-two:before{content:""}.fa-disease:before{content:""}.fa-divide:before{content:""}.fa-dna:before{content:""}.fa-dog:before{content:""}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"$"}.fa-dolly-box:before,.fa-dolly:before{content:""}.fa-dong-sign:before{content:""}.fa-door-closed:before{content:""}.fa-door-open:before{content:""}.fa-dove:before{content:""}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:""}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:""}.fa-download:before{content:""}.fa-dragon:before{content:""}.fa-draw-polygon:before{content:""}.fa-droplet:before,.fa-tint:before{content:""}.fa-droplet-slash:before,.fa-tint-slash:before{content:""}.fa-drum:before{content:""}.fa-drum-steelpan:before{content:""}.fa-drumstick-bite:before{content:""}.fa-dumbbell:before{content:""}.fa-dumpster:before{content:""}.fa-dumpster-fire:before{content:""}.fa-dungeon:before{content:""}.fa-e:before{content:"E"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:""}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:""}.fa-earth-africa:before,.fa-globe-africa:before{content:""}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:""}.fa-earth-asia:before,.fa-globe-asia:before{content:""}.fa-earth-europe:before,.fa-globe-europe:before{content:""}.fa-earth-oceania:before,.fa-globe-oceania:before{content:""}.fa-egg:before{content:""}.fa-eject:before{content:""}.fa-elevator:before{content:""}.fa-ellipsis-h:before,.fa-ellipsis:before{content:""}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:""}.fa-envelope:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-text:before{content:""}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:""}.fa-equals:before{content:"="}.fa-eraser:before{content:""}.fa-ethernet:before{content:""}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:""}.fa-exclamation:before{content:"!"}.fa-expand:before{content:""}.fa-eye:before{content:""}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:""}.fa-eye-low-vision:before,.fa-low-vision:before{content:""}.fa-eye-slash:before{content:""}.fa-f:before{content:"F"}.fa-angry:before,.fa-face-angry:before{content:""}.fa-dizzy:before,.fa-face-dizzy:before{content:""}.fa-face-flushed:before,.fa-flushed:before{content:""}.fa-face-frown:before,.fa-frown:before{content:""}.fa-face-frown-open:before,.fa-frown-open:before{content:""}.fa-face-grimace:before,.fa-grimace:before{content:""}.fa-face-grin:before,.fa-grin:before{content:""}.fa-face-grin-beam:before,.fa-grin-beam:before{content:""}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:""}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:""}.fa-face-grin-squint:before,.fa-grin-squint:before{content:""}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:""}.fa-face-grin-stars:before,.fa-grin-stars:before{content:""}.fa-face-grin-tears:before,.fa-grin-tears:before{content:""}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:""}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:""}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:""}.fa-face-grin-wide:before,.fa-grin-alt:before{content:""}.fa-face-grin-wink:before,.fa-grin-wink:before{content:""}.fa-face-kiss:before,.fa-kiss:before{content:""}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:""}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:""}.fa-face-laugh:before,.fa-laugh:before{content:""}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:""}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:""}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:""}.fa-face-meh:before,.fa-meh:before{content:""}.fa-face-meh-blank:before,.fa-meh-blank:before{content:""}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:""}.fa-face-sad-cry:before,.fa-sad-cry:before{content:""}.fa-face-sad-tear:before,.fa-sad-tear:before{content:""}.fa-face-smile:before,.fa-smile:before{content:""}.fa-face-smile-beam:before,.fa-smile-beam:before{content:""}.fa-face-smile-wink:before,.fa-smile-wink:before{content:""}.fa-face-surprise:before,.fa-surprise:before{content:""}.fa-face-tired:before,.fa-tired:before{content:""}.fa-fan:before{content:""}.fa-faucet:before{content:""}.fa-fax:before{content:""}.fa-feather:before{content:""}.fa-feather-alt:before,.fa-feather-pointed:before{content:""}.fa-file:before{content:""}.fa-file-arrow-down:before,.fa-file-download:before{content:""}.fa-file-arrow-up:before,.fa-file-upload:before{content:""}.fa-file-audio:before{content:""}.fa-file-code:before{content:""}.fa-file-contract:before{content:""}.fa-file-csv:before{content:""}.fa-file-excel:before{content:""}.fa-arrow-right-from-file:before,.fa-file-export:before{content:""}.fa-file-image:before{content:""}.fa-arrow-right-to-file:before,.fa-file-import:before{content:""}.fa-file-invoice:before{content:""}.fa-file-invoice-dollar:before{content:""}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:""}.fa-file-medical:before{content:""}.fa-file-pdf:before{content:""}.fa-file-powerpoint:before{content:""}.fa-file-prescription:before{content:""}.fa-file-signature:before{content:""}.fa-file-video:before{content:""}.fa-file-medical-alt:before,.fa-file-waveform:before{content:""}.fa-file-word:before{content:""}.fa-file-archive:before,.fa-file-zipper:before{content:""}.fa-fill:before{content:""}.fa-fill-drip:before{content:""}.fa-film:before{content:""}.fa-filter:before{content:""}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:""}.fa-filter-circle-xmark:before{content:""}.fa-fingerprint:before{content:""}.fa-fire:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:""}.fa-burn:before,.fa-fire-flame-simple:before{content:""}.fa-fish:before{content:""}.fa-flag:before{content:""}.fa-flag-checkered:before{content:""}.fa-flag-usa:before{content:""}.fa-flask:before{content:""}.fa-floppy-disk:before,.fa-save:before{content:""}.fa-florin-sign:before{content:""}.fa-folder:before{content:""}.fa-folder-minus:before{content:""}.fa-folder-open:before{content:""}.fa-folder-plus:before{content:""}.fa-folder-tree:before{content:""}.fa-font:before{content:""}.fa-football-ball:before,.fa-football:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before,.fa-forward-fast:before{content:""}.fa-forward-step:before,.fa-step-forward:before{content:""}.fa-franc-sign:before{content:""}.fa-frog:before{content:""}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:""}.fa-g:before{content:"G"}.fa-gamepad:before{content:""}.fa-gas-pump:before{content:""}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:""}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:""}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:""}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-gem:before{content:""}.fa-genderless:before{content:""}.fa-ghost:before{content:""}.fa-gift:before{content:""}.fa-gifts:before{content:""}.fa-glasses:before{content:""}.fa-globe:before{content:""}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:""}.fa-gopuram:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-greater-than:before{content:">"}.fa-greater-than-equal:before{content:""}.fa-grip-horizontal:before,.fa-grip:before{content:""}.fa-grip-lines:before{content:""}.fa-grip-lines-vertical:before{content:""}.fa-grip-vertical:before{content:""}.fa-guarani-sign:before{content:""}.fa-guitar:before{content:""}.fa-gun:before{content:""}.fa-h:before{content:"H"}.fa-hammer:before{content:""}.fa-hamsa:before{content:""}.fa-hand-paper:before,.fa-hand:before{content:""}.fa-hand-back-fist:before,.fa-hand-rock:before{content:""}.fa-allergies:before,.fa-hand-dots:before{content:""}.fa-fist-raised:before,.fa-hand-fist:before{content:""}.fa-hand-holding:before{content:""}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:""}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:""}.fa-hand-holding-heart:before{content:""}.fa-hand-holding-medical:before{content:""}.fa-hand-lizard:before{content:""}.fa-hand-middle-finger:before{content:""}.fa-hand-peace:before{content:""}.fa-hand-point-down:before{content:""}.fa-hand-point-left:before{content:""}.fa-hand-point-right:before{content:""}.fa-hand-point-up:before{content:""}.fa-hand-pointer:before{content:""}.fa-hand-scissors:before{content:""}.fa-hand-sparkles:before{content:""}.fa-hand-spock:before{content:""}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:""}.fa-hands-bubbles:before,.fa-hands-wash:before{content:""}.fa-hands-clapping:before{content:""}.fa-hands-holding:before{content:""}.fa-hands-praying:before,.fa-praying-hands:before{content:""}.fa-handshake:before{content:""}.fa-hands-helping:before,.fa-handshake-angle:before{content:""}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:""}.fa-handshake-slash:before{content:""}.fa-hanukiah:before{content:""}.fa-hard-drive:before,.fa-hdd:before{content:""}.fa-hashtag:before{content:"#"}.fa-hat-cowboy:before{content:""}.fa-hat-cowboy-side:before{content:""}.fa-hat-wizard:before{content:""}.fa-head-side-cough:before{content:""}.fa-head-side-cough-slash:before{content:""}.fa-head-side-mask:before{content:""}.fa-head-side-virus:before{content:""}.fa-header:before,.fa-heading:before{content:""}.fa-headphones:before{content:""}.fa-headphones-alt:before,.fa-headphones-simple:before{content:""}.fa-headset:before{content:""}.fa-heart:before{content:""}.fa-heart-broken:before,.fa-heart-crack:before{content:""}.fa-heart-pulse:before,.fa-heartbeat:before{content:""}.fa-helicopter:before{content:""}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:""}.fa-highlighter:before{content:""}.fa-hippo:before{content:""}.fa-hockey-puck:before{content:""}.fa-holly-berry:before{content:""}.fa-horse:before{content:""}.fa-horse-head:before{content:""}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:""}.fa-hospital-user:before{content:""}.fa-hot-tub-person:before,.fa-hot-tub:before{content:""}.fa-hotdog:before{content:""}.fa-hotel:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before,.fa-hourglass:before{content:""}.fa-hourglass-empty:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:""}.fa-home-lg:before,.fa-house-chimney:before{content:""}.fa-house-chimney-crack:before,.fa-house-damage:before{content:""}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:""}.fa-house-chimney-user:before{content:""}.fa-house-chimney-window:before{content:""}.fa-house-crack:before{content:""}.fa-house-laptop:before,.fa-laptop-house:before{content:""}.fa-house-medical:before{content:""}.fa-home-user:before,.fa-house-user:before{content:""}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:""}.fa-i:before{content:"I"}.fa-i-cursor:before{content:""}.fa-ice-cream:before{content:""}.fa-icicles:before{content:""}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-id-card-alt:before,.fa-id-card-clip:before{content:""}.fa-igloo:before{content:""}.fa-image:before{content:""}.fa-image-portrait:before,.fa-portrait:before{content:""}.fa-images:before{content:""}.fa-inbox:before{content:""}.fa-indent:before{content:""}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:""}.fa-industry:before{content:""}.fa-infinity:before{content:""}.fa-info:before{content:""}.fa-italic:before{content:""}.fa-j:before{content:"J"}.fa-jedi:before{content:""}.fa-fighter-jet:before,.fa-jet-fighter:before{content:""}.fa-joint:before{content:""}.fa-k:before{content:"K"}.fa-kaaba:before{content:""}.fa-key:before{content:""}.fa-keyboard:before{content:""}.fa-khanda:before{content:""}.fa-kip-sign:before{content:""}.fa-first-aid:before,.fa-kit-medical:before{content:""}.fa-kiwi-bird:before{content:""}.fa-l:before{content:"L"}.fa-landmark:before{content:""}.fa-language:before{content:""}.fa-laptop:before{content:""}.fa-laptop-code:before{content:""}.fa-laptop-medical:before{content:""}.fa-lari-sign:before{content:""}.fa-layer-group:before{content:""}.fa-leaf:before{content:""}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:""}.fa-arrows-alt-h:before,.fa-left-right:before{content:""}.fa-lemon:before{content:""}.fa-less-than:before{content:"<"}.fa-less-than-equal:before{content:""}.fa-life-ring:before{content:""}.fa-lightbulb:before{content:""}.fa-chain:before,.fa-link:before{content:""}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:""}.fa-lira-sign:before{content:""}.fa-list-squares:before,.fa-list:before{content:""}.fa-list-check:before,.fa-tasks:before{content:""}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:""}.fa-list-dots:before,.fa-list-ul:before{content:""}.fa-litecoin-sign:before{content:""}.fa-location-arrow:before{content:""}.fa-location-crosshairs:before,.fa-location:before{content:""}.fa-location-dot:before,.fa-map-marker-alt:before{content:""}.fa-location-pin:before,.fa-map-marker:before{content:""}.fa-lock:before{content:""}.fa-lock-open:before{content:""}.fa-lungs:before{content:""}.fa-lungs-virus:before{content:""}.fa-m:before{content:"M"}.fa-magnet:before{content:""}.fa-magnifying-glass:before,.fa-search:before{content:""}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:""}.fa-magnifying-glass-location:before,.fa-search-location:before{content:""}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:""}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:""}.fa-manat-sign:before{content:""}.fa-map:before{content:""}.fa-map-location:before,.fa-map-marked:before{content:""}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:""}.fa-map-pin:before{content:""}.fa-marker:before{content:""}.fa-mars:before{content:""}.fa-mars-and-venus:before{content:""}.fa-mars-double:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:""}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:""}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:""}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:""}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:""}.fa-mask:before{content:""}.fa-mask-face:before{content:""}.fa-masks-theater:before,.fa-theater-masks:before{content:""}.fa-expand-arrows-alt:before,.fa-maximize:before{content:""}.fa-medal:before{content:""}.fa-memory:before{content:""}.fa-menorah:before{content:""}.fa-mercury:before{content:""}.fa-comment-alt:before,.fa-message:before{content:""}.fa-meteor:before{content:""}.fa-microchip:before{content:""}.fa-microphone:before{content:""}.fa-microphone-alt:before,.fa-microphone-lines:before{content:""}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:""}.fa-microphone-slash:before{content:""}.fa-microscope:before{content:""}.fa-mill-sign:before{content:""}.fa-compress-arrows-alt:before,.fa-minimize:before{content:""}.fa-minus:before,.fa-subtract:before{content:""}.fa-mitten:before{content:""}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-mobile-button:before{content:""}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:""}.fa-money-bill:before{content:""}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:""}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:""}.fa-money-bill-wave:before{content:""}.fa-money-check:before{content:""}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:""}.fa-monument:before{content:""}.fa-moon:before{content:""}.fa-mortar-pestle:before{content:""}.fa-mosque:before{content:""}.fa-motorcycle:before{content:""}.fa-mountain:before{content:""}.fa-mug-hot:before{content:""}.fa-coffee:before,.fa-mug-saucer:before{content:""}.fa-music:before{content:""}.fa-n:before{content:"N"}.fa-naira-sign:before{content:""}.fa-network-wired:before{content:""}.fa-neuter:before{content:""}.fa-newspaper:before{content:""}.fa-not-equal:before{content:""}.fa-note-sticky:before,.fa-sticky-note:before{content:""}.fa-notes-medical:before{content:""}.fa-o:before{content:"O"}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-oil-can:before{content:""}.fa-om:before{content:""}.fa-otter:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-p:before{content:"P"}.fa-pager:before{content:""}.fa-paint-roller:before{content:""}.fa-paint-brush:before,.fa-paintbrush:before{content:""}.fa-palette:before{content:""}.fa-pallet:before{content:""}.fa-panorama:before{content:""}.fa-paper-plane:before{content:""}.fa-paperclip:before{content:""}.fa-parachute-box:before{content:""}.fa-paragraph:before{content:""}.fa-passport:before{content:""}.fa-file-clipboard:before,.fa-paste:before{content:""}.fa-pause:before{content:""}.fa-paw:before{content:""}.fa-peace:before{content:""}.fa-pen:before{content:""}.fa-pen-alt:before,.fa-pen-clip:before{content:""}.fa-pen-fancy:before{content:""}.fa-pen-nib:before{content:""}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:""}.fa-edit:before,.fa-pen-to-square:before{content:""}.fa-pencil-alt:before,.fa-pencil:before{content:""}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:""}.fa-people-carry-box:before,.fa-people-carry:before{content:""}.fa-pepper-hot:before{content:""}.fa-percent:before,.fa-percentage:before{content:"%"}.fa-male:before,.fa-person:before{content:""}.fa-biking:before,.fa-person-biking:before{content:""}.fa-person-booth:before{content:""}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:""}.fa-female:before,.fa-person-dress:before{content:""}.fa-hiking:before,.fa-person-hiking:before{content:""}.fa-person-praying:before,.fa-pray:before{content:""}.fa-person-running:before,.fa-running:before{content:""}.fa-person-skating:before,.fa-skating:before{content:""}.fa-person-skiing:before,.fa-skiing:before{content:""}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:""}.fa-person-snowboarding:before,.fa-snowboarding:before{content:""}.fa-person-swimming:before,.fa-swimmer:before{content:""}.fa-person-walking:before,.fa-walking:before{content:""}.fa-blind:before,.fa-person-walking-with-cane:before{content:""}.fa-peseta-sign:before{content:""}.fa-peso-sign:before{content:""}.fa-phone:before{content:""}.fa-phone-alt:before,.fa-phone-flip:before{content:""}.fa-phone-slash:before{content:""}.fa-phone-volume:before,.fa-volume-control-phone:before{content:""}.fa-photo-film:before,.fa-photo-video:before{content:""}.fa-piggy-bank:before{content:""}.fa-pills:before{content:""}.fa-pizza-slice:before{content:""}.fa-place-of-worship:before{content:""}.fa-plane:before{content:""}.fa-plane-arrival:before{content:""}.fa-plane-departure:before{content:""}.fa-plane-slash:before{content:""}.fa-play:before{content:""}.fa-plug:before{content:""}.fa-add:before,.fa-plus:before{content:"+"}.fa-plus-minus:before{content:""}.fa-podcast:before{content:""}.fa-poo:before{content:""}.fa-poo-bolt:before,.fa-poo-storm:before{content:""}.fa-poop:before{content:""}.fa-power-off:before{content:""}.fa-prescription:before{content:""}.fa-prescription-bottle:before{content:""}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:""}.fa-print:before{content:""}.fa-pump-medical:before{content:""}.fa-pump-soap:before{content:""}.fa-puzzle-piece:before{content:""}.fa-q:before{content:"Q"}.fa-qrcode:before{content:""}.fa-question:before{content:"?"}.fa-quote-left-alt:before,.fa-quote-left:before{content:""}.fa-quote-right-alt:before,.fa-quote-right:before{content:""}.fa-r:before{content:"R"}.fa-radiation:before{content:""}.fa-rainbow:before{content:""}.fa-receipt:before{content:""}.fa-record-vinyl:before{content:""}.fa-ad:before,.fa-rectangle-ad:before{content:""}.fa-list-alt:before,.fa-rectangle-list:before{content:""}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-recycle:before{content:""}.fa-registered:before{content:""}.fa-repeat:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-republican:before{content:""}.fa-restroom:before{content:""}.fa-retweet:before{content:""}.fa-ribbon:before{content:""}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:""}.fa-exchange-alt:before,.fa-right-left:before{content:""}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:""}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:""}.fa-ring:before{content:""}.fa-road:before{content:""}.fa-robot:before{content:""}.fa-rocket:before{content:""}.fa-rotate:before,.fa-sync-alt:before{content:""}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:""}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:""}.fa-route:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:""}.fa-ruler:before{content:""}.fa-ruler-combined:before{content:""}.fa-ruler-horizontal:before{content:""}.fa-ruler-vertical:before{content:""}.fa-rupee-sign:before,.fa-rupee:before{content:""}.fa-rupiah-sign:before{content:""}.fa-s:before{content:"S"}.fa-sailboat:before{content:""}.fa-satellite:before{content:""}.fa-satellite-dish:before{content:""}.fa-balance-scale:before,.fa-scale-balanced:before{content:""}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:""}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:""}.fa-school:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-screwdriver:before{content:""}.fa-screwdriver-wrench:before,.fa-tools:before{content:""}.fa-scroll:before{content:""}.fa-scroll-torah:before,.fa-torah:before{content:""}.fa-sd-card:before{content:""}.fa-section:before{content:""}.fa-seedling:before,.fa-sprout:before{content:""}.fa-server:before{content:""}.fa-shapes:before,.fa-triangle-circle-square:before{content:""}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:""}.fa-share-from-square:before,.fa-share-square:before{content:""}.fa-share-alt:before,.fa-share-nodes:before{content:""}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:""}.fa-shield:before{content:""}.fa-shield-alt:before,.fa-shield-blank:before{content:""}.fa-shield-virus:before{content:""}.fa-ship:before{content:""}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:""}.fa-shoe-prints:before{content:""}.fa-shop:before,.fa-store-alt:before{content:""}.fa-shop-slash:before,.fa-store-alt-slash:before{content:""}.fa-shower:before{content:""}.fa-shrimp:before{content:""}.fa-random:before,.fa-shuffle:before{content:""}.fa-shuttle-space:before,.fa-space-shuttle:before{content:""}.fa-sign-hanging:before,.fa-sign:before{content:""}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:""}.fa-signature:before{content:""}.fa-map-signs:before,.fa-signs-post:before{content:""}.fa-sim-card:before{content:""}.fa-sink:before{content:""}.fa-sitemap:before{content:""}.fa-skull:before{content:""}.fa-skull-crossbones:before{content:""}.fa-slash:before{content:""}.fa-sleigh:before{content:""}.fa-sliders-h:before,.fa-sliders:before{content:""}.fa-smog:before{content:""}.fa-smoking:before{content:""}.fa-snowflake:before{content:""}.fa-snowman:before{content:""}.fa-snowplow:before{content:""}.fa-soap:before{content:""}.fa-socks:before{content:""}.fa-solar-panel:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-spa:before{content:""}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:""}.fa-spell-check:before{content:""}.fa-spider:before{content:""}.fa-spinner:before{content:""}.fa-splotch:before{content:""}.fa-spoon:before,.fa-utensil-spoon:before{content:""}.fa-spray-can:before{content:""}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:""}.fa-square:before{content:""}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:""}.fa-caret-square-down:before,.fa-square-caret-down:before{content:""}.fa-caret-square-left:before,.fa-square-caret-left:before{content:""}.fa-caret-square-right:before,.fa-square-caret-right:before{content:""}.fa-caret-square-up:before,.fa-square-caret-up:before{content:""}.fa-check-square:before,.fa-square-check:before{content:""}.fa-envelope-square:before,.fa-square-envelope:before{content:""}.fa-square-full:before{content:""}.fa-h-square:before,.fa-square-h:before{content:""}.fa-minus-square:before,.fa-square-minus:before{content:""}.fa-parking:before,.fa-square-parking:before{content:""}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:""}.fa-phone-square:before,.fa-square-phone:before{content:""}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:""}.fa-plus-square:before,.fa-square-plus:before{content:""}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:""}.fa-poll:before,.fa-square-poll-vertical:before{content:""}.fa-square-root-alt:before,.fa-square-root-variable:before{content:""}.fa-rss-square:before,.fa-square-rss:before{content:""}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:""}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:""}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:""}.fa-stairs:before{content:""}.fa-stamp:before{content:""}.fa-star:before{content:""}.fa-star-and-crescent:before{content:""}.fa-star-half:before{content:""}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:""}.fa-star-of-david:before{content:""}.fa-star-of-life:before{content:""}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:""}.fa-stethoscope:before{content:""}.fa-stop:before{content:""}.fa-stopwatch:before{content:""}.fa-stopwatch-20:before{content:""}.fa-store:before{content:""}.fa-store-slash:before{content:""}.fa-street-view:before{content:""}.fa-strikethrough:before{content:""}.fa-stroopwafel:before{content:""}.fa-subscript:before{content:""}.fa-suitcase:before{content:""}.fa-medkit:before,.fa-suitcase-medical:before{content:""}.fa-suitcase-rolling:before{content:""}.fa-sun:before{content:""}.fa-superscript:before{content:""}.fa-swatchbook:before{content:""}.fa-synagogue:before{content:""}.fa-syringe:before{content:""}.fa-t:before{content:"T"}.fa-table:before{content:""}.fa-table-cells:before,.fa-th:before{content:""}.fa-table-cells-large:before,.fa-th-large:before{content:""}.fa-columns:before,.fa-table-columns:before{content:""}.fa-table-list:before,.fa-th-list:before{content:""}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:""}.fa-tablet-android:before,.fa-tablet:before{content:""}.fa-tablet-button:before{content:""}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:""}.fa-tablets:before{content:""}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-tape:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-teeth:before{content:""}.fa-teeth-open:before{content:""}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:""}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-temperature-high:before{content:""}.fa-temperature-low:before{content:""}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-tenge-sign:before,.fa-tenge:before{content:""}.fa-terminal:before{content:""}.fa-text-height:before{content:""}.fa-remove-format:before,.fa-text-slash:before{content:""}.fa-text-width:before{content:""}.fa-thermometer:before{content:""}.fa-thumbs-down:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumb-tack:before,.fa-thumbtack:before{content:""}.fa-ticket:before{content:""}.fa-ticket-alt:before,.fa-ticket-simple:before{content:""}.fa-timeline:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-toilet:before{content:""}.fa-toilet-paper:before{content:""}.fa-toilet-paper-slash:before{content:""}.fa-toolbox:before{content:""}.fa-tooth:before{content:""}.fa-torii-gate:before{content:""}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:""}.fa-tractor:before{content:""}.fa-trademark:before{content:""}.fa-traffic-light:before{content:""}.fa-trailer:before{content:""}.fa-train:before{content:""}.fa-subway:before,.fa-train-subway:before{content:""}.fa-train-tram:before,.fa-tram:before{content:""}.fa-transgender-alt:before,.fa-transgender:before{content:""}.fa-trash:before{content:""}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:""}.fa-trash-alt:before,.fa-trash-can:before{content:""}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:""}.fa-tree:before{content:""}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:""}.fa-trophy:before{content:""}.fa-truck:before{content:""}.fa-shipping-fast:before,.fa-truck-fast:before{content:""}.fa-ambulance:before,.fa-truck-medical:before{content:""}.fa-truck-monster:before{content:""}.fa-truck-moving:before{content:""}.fa-truck-pickup:before{content:""}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:""}.fa-teletype:before,.fa-tty:before{content:""}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:""}.fa-level-down-alt:before,.fa-turn-down:before{content:""}.fa-level-up-alt:before,.fa-turn-up:before{content:""}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:""}.fa-u:before{content:"U"}.fa-umbrella:before{content:""}.fa-umbrella-beach:before{content:""}.fa-underline:before{content:""}.fa-universal-access:before{content:""}.fa-unlock:before{content:""}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:""}.fa-arrows-alt-v:before,.fa-up-down:before{content:""}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:""}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:""}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:""}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:""}.fa-upload:before{content:""}.fa-user:before{content:""}.fa-user-astronaut:before{content:""}.fa-user-check:before{content:""}.fa-user-clock:before{content:""}.fa-user-doctor:before,.fa-user-md:before{content:""}.fa-user-cog:before,.fa-user-gear:before{content:""}.fa-user-graduate:before{content:""}.fa-user-friends:before,.fa-user-group:before{content:""}.fa-user-injured:before{content:""}.fa-user-alt:before,.fa-user-large:before{content:""}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:""}.fa-user-lock:before{content:""}.fa-user-minus:before{content:""}.fa-user-ninja:before{content:""}.fa-user-nurse:before{content:""}.fa-user-edit:before,.fa-user-pen:before{content:""}.fa-user-plus:before{content:""}.fa-user-secret:before{content:""}.fa-user-shield:before{content:""}.fa-user-slash:before{content:""}.fa-user-tag:before{content:""}.fa-user-tie:before{content:""}.fa-user-times:before,.fa-user-xmark:before{content:""}.fa-users:before{content:""}.fa-users-cog:before,.fa-users-gear:before{content:""}.fa-users-slash:before{content:""}.fa-cutlery:before,.fa-utensils:before{content:""}.fa-v:before{content:"V"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:""}.fa-vault:before{content:""}.fa-vector-square:before{content:""}.fa-venus:before{content:""}.fa-venus-double:before{content:""}.fa-venus-mars:before{content:""}.fa-vest:before{content:""}.fa-vest-patches:before{content:""}.fa-vial:before{content:""}.fa-vials:before{content:""}.fa-video-camera:before,.fa-video:before{content:""}.fa-video-slash:before{content:""}.fa-vihara:before{content:""}.fa-virus:before{content:""}.fa-virus-covid:before{content:""}.fa-virus-covid-slash:before{content:""}.fa-virus-slash:before{content:""}.fa-viruses:before{content:""}.fa-voicemail:before{content:""}.fa-volleyball-ball:before,.fa-volleyball:before{content:""}.fa-volume-high:before,.fa-volume-up:before{content:""}.fa-volume-down:before,.fa-volume-low:before{content:""}.fa-volume-off:before{content:""}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:""}.fa-vr-cardboard:before{content:""}.fa-w:before{content:"W"}.fa-wallet:before{content:""}.fa-magic:before,.fa-wand-magic:before{content:""}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:""}.fa-wand-sparkles:before{content:""}.fa-warehouse:before{content:""}.fa-water:before{content:""}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:""}.fa-wave-square:before{content:""}.fa-weight-hanging:before{content:""}.fa-weight-scale:before,.fa-weight:before{content:""}.fa-wheelchair:before{content:""}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:""}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:""}.fa-wind:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-wine-bottle:before{content:""}.fa-wine-glass:before{content:""}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:""}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:""}.fa-wrench:before{content:""}.fa-x:before{content:"X"}.fa-x-ray:before{content:""}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:""}.fa-y:before{content:"Y"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:""}.fa-yin-yang:before{content:""}.fa-z:before{content:"Z"}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(/admin/assets/fa-brands-400-B8Wb4MVL.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-family:"Font Awesome 6 Brands";font-weight:400}.fa-42-group:before,.fa-innosoft:before{content:""}.fa-500px:before{content:""}.fa-accessible-icon:before{content:""}.fa-accusoft:before{content:""}.fa-adn:before{content:""}.fa-adversal:before{content:""}.fa-affiliatetheme:before{content:""}.fa-airbnb:before{content:""}.fa-algolia:before{content:""}.fa-alipay:before{content:""}.fa-amazon:before{content:""}.fa-amazon-pay:before{content:""}.fa-amilia:before{content:""}.fa-android:before{content:""}.fa-angellist:before{content:""}.fa-angrycreative:before{content:""}.fa-angular:before{content:""}.fa-app-store:before{content:""}.fa-app-store-ios:before{content:""}.fa-apper:before{content:""}.fa-apple:before{content:""}.fa-apple-pay:before{content:""}.fa-artstation:before{content:""}.fa-asymmetrik:before{content:""}.fa-atlassian:before{content:""}.fa-audible:before{content:""}.fa-autoprefixer:before{content:""}.fa-avianex:before{content:""}.fa-aviato:before{content:""}.fa-aws:before{content:""}.fa-bandcamp:before{content:""}.fa-battle-net:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-bilibili:before{content:""}.fa-bimobject:before{content:""}.fa-bitbucket:before{content:""}.fa-bitcoin:before{content:""}.fa-bity:before{content:""}.fa-black-tie:before{content:""}.fa-blackberry:before{content:""}.fa-blogger:before{content:""}.fa-blogger-b:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-bootstrap:before{content:""}.fa-bots:before{content:""}.fa-btc:before{content:""}.fa-buffer:before{content:""}.fa-buromobelexperte:before{content:""}.fa-buy-n-large:before{content:""}.fa-buysellads:before{content:""}.fa-canadian-maple-leaf:before{content:""}.fa-cc-amazon-pay:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-apple-pay:before{content:""}.fa-cc-diners-club:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-cc-visa:before{content:""}.fa-centercode:before{content:""}.fa-centos:before{content:""}.fa-chrome:before{content:""}.fa-chromecast:before{content:""}.fa-cloudflare:before{content:""}.fa-cloudscale:before{content:""}.fa-cloudsmith:before{content:""}.fa-cloudversify:before{content:""}.fa-cmplid:before{content:""}.fa-codepen:before{content:""}.fa-codiepie:before{content:""}.fa-confluence:before{content:""}.fa-connectdevelop:before{content:""}.fa-contao:before{content:""}.fa-cotton-bureau:before{content:""}.fa-cpanel:before{content:""}.fa-creative-commons:before{content:""}.fa-creative-commons-by:before{content:""}.fa-creative-commons-nc:before{content:""}.fa-creative-commons-nc-eu:before{content:""}.fa-creative-commons-nc-jp:before{content:""}.fa-creative-commons-nd:before{content:""}.fa-creative-commons-pd:before{content:""}.fa-creative-commons-pd-alt:before{content:""}.fa-creative-commons-remix:before{content:""}.fa-creative-commons-sa:before{content:""}.fa-creative-commons-sampling:before{content:""}.fa-creative-commons-sampling-plus:before{content:""}.fa-creative-commons-share:before{content:""}.fa-creative-commons-zero:before{content:""}.fa-critical-role:before{content:""}.fa-css3:before{content:""}.fa-css3-alt:before{content:""}.fa-cuttlefish:before{content:""}.fa-d-and-d:before{content:""}.fa-d-and-d-beyond:before{content:""}.fa-dailymotion:before{content:""}.fa-dashcube:before{content:""}.fa-deezer:before{content:""}.fa-delicious:before{content:""}.fa-deploydog:before{content:""}.fa-deskpro:before{content:""}.fa-dev:before{content:""}.fa-deviantart:before{content:""}.fa-dhl:before{content:""}.fa-diaspora:before{content:""}.fa-digg:before{content:""}.fa-digital-ocean:before{content:""}.fa-discord:before{content:""}.fa-discourse:before{content:""}.fa-dochub:before{content:""}.fa-docker:before{content:""}.fa-draft2digital:before{content:""}.fa-dribbble:before{content:""}.fa-dribbble-square:before{content:""}.fa-dropbox:before{content:""}.fa-drupal:before{content:""}.fa-dyalog:before{content:""}.fa-earlybirds:before{content:""}.fa-ebay:before{content:""}.fa-edge:before{content:""}.fa-edge-legacy:before{content:""}.fa-elementor:before{content:""}.fa-ello:before{content:""}.fa-ember:before{content:""}.fa-empire:before{content:""}.fa-envira:before{content:""}.fa-erlang:before{content:""}.fa-ethereum:before{content:""}.fa-etsy:before{content:""}.fa-evernote:before{content:""}.fa-expeditedssl:before{content:""}.fa-facebook:before{content:""}.fa-facebook-f:before{content:""}.fa-facebook-messenger:before{content:""}.fa-facebook-square:before{content:""}.fa-fantasy-flight-games:before{content:""}.fa-fedex:before{content:""}.fa-fedora:before{content:""}.fa-figma:before{content:""}.fa-firefox:before{content:""}.fa-firefox-browser:before{content:""}.fa-first-order:before{content:""}.fa-first-order-alt:before{content:""}.fa-firstdraft:before{content:""}.fa-flickr:before{content:""}.fa-flipboard:before{content:""}.fa-fly:before{content:""}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:""}.fa-fonticons:before{content:""}.fa-fonticons-fi:before{content:""}.fa-fort-awesome:before{content:""}.fa-fort-awesome-alt:before{content:""}.fa-forumbee:before{content:""}.fa-foursquare:before{content:""}.fa-free-code-camp:before{content:""}.fa-freebsd:before{content:""}.fa-fulcrum:before{content:""}.fa-galactic-republic:before{content:""}.fa-galactic-senate:before{content:""}.fa-get-pocket:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-git:before{content:""}.fa-git-alt:before{content:""}.fa-git-square:before{content:""}.fa-github:before{content:""}.fa-github-alt:before{content:""}.fa-github-square:before{content:""}.fa-gitkraken:before{content:""}.fa-gitlab:before{content:""}.fa-gitter:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-gofore:before{content:""}.fa-golang:before{content:""}.fa-goodreads:before{content:""}.fa-goodreads-g:before{content:""}.fa-google:before{content:""}.fa-google-drive:before{content:""}.fa-google-pay:before{content:""}.fa-google-play:before{content:""}.fa-google-plus:before{content:""}.fa-google-plus-g:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-wallet:before{content:""}.fa-gratipay:before{content:""}.fa-grav:before{content:""}.fa-gripfire:before{content:""}.fa-grunt:before{content:""}.fa-guilded:before{content:""}.fa-gulp:before{content:""}.fa-hacker-news:before{content:""}.fa-hacker-news-square:before{content:""}.fa-hackerrank:before{content:""}.fa-hashnode:before{content:""}.fa-hips:before{content:""}.fa-hire-a-helper:before{content:""}.fa-hive:before{content:""}.fa-hooli:before{content:""}.fa-hornbill:before{content:""}.fa-hotjar:before{content:""}.fa-houzz:before{content:""}.fa-html5:before{content:""}.fa-hubspot:before{content:""}.fa-ideal:before{content:""}.fa-imdb:before{content:""}.fa-instagram:before{content:""}.fa-instagram-square:before{content:""}.fa-instalod:before{content:""}.fa-intercom:before{content:""}.fa-internet-explorer:before{content:""}.fa-invision:before{content:""}.fa-ioxhost:before{content:""}.fa-itch-io:before{content:""}.fa-itunes:before{content:""}.fa-itunes-note:before{content:""}.fa-java:before{content:""}.fa-jedi-order:before{content:""}.fa-jenkins:before{content:""}.fa-jira:before{content:""}.fa-joget:before{content:""}.fa-joomla:before{content:""}.fa-js:before{content:""}.fa-js-square:before{content:""}.fa-jsfiddle:before{content:""}.fa-kaggle:before{content:""}.fa-keybase:before{content:""}.fa-keycdn:before{content:""}.fa-kickstarter:before{content:""}.fa-kickstarter-k:before{content:""}.fa-korvue:before{content:""}.fa-laravel:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-leanpub:before{content:""}.fa-less:before{content:""}.fa-line:before{content:""}.fa-linkedin:before{content:""}.fa-linkedin-in:before{content:""}.fa-linode:before{content:""}.fa-linux:before{content:""}.fa-lyft:before{content:""}.fa-magento:before{content:""}.fa-mailchimp:before{content:""}.fa-mandalorian:before{content:""}.fa-markdown:before{content:""}.fa-mastodon:before{content:""}.fa-maxcdn:before{content:""}.fa-mdb:before{content:""}.fa-medapps:before{content:""}.fa-medium-m:before,.fa-medium:before{content:""}.fa-medrt:before{content:""}.fa-meetup:before{content:""}.fa-megaport:before{content:""}.fa-mendeley:before{content:""}.fa-microblog:before{content:""}.fa-microsoft:before{content:""}.fa-mix:before{content:""}.fa-mixcloud:before{content:""}.fa-mixer:before{content:""}.fa-mizuni:before{content:""}.fa-modx:before{content:""}.fa-monero:before{content:""}.fa-napster:before{content:""}.fa-neos:before{content:""}.fa-nimblr:before{content:""}.fa-node:before{content:""}.fa-node-js:before{content:""}.fa-npm:before{content:""}.fa-ns8:before{content:""}.fa-nutritionix:before{content:""}.fa-octopus-deploy:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-old-republic:before{content:""}.fa-opencart:before{content:""}.fa-openid:before{content:""}.fa-opera:before{content:""}.fa-optin-monster:before{content:""}.fa-orcid:before{content:""}.fa-osi:before{content:""}.fa-padlet:before{content:""}.fa-page4:before{content:""}.fa-pagelines:before{content:""}.fa-palfed:before{content:""}.fa-patreon:before{content:""}.fa-paypal:before{content:""}.fa-perbyte:before{content:""}.fa-periscope:before{content:""}.fa-phabricator:before{content:""}.fa-phoenix-framework:before{content:""}.fa-phoenix-squadron:before{content:""}.fa-php:before{content:""}.fa-pied-piper:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-pied-piper-hat:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-square:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-p:before{content:""}.fa-pinterest-square:before{content:""}.fa-pix:before{content:""}.fa-playstation:before{content:""}.fa-product-hunt:before{content:""}.fa-pushed:before{content:""}.fa-python:before{content:""}.fa-qq:before{content:""}.fa-quinscape:before{content:""}.fa-quora:before{content:""}.fa-r-project:before{content:""}.fa-raspberry-pi:before{content:""}.fa-ravelry:before{content:""}.fa-react:before{content:""}.fa-reacteurope:before{content:""}.fa-readme:before{content:""}.fa-rebel:before{content:""}.fa-red-river:before{content:""}.fa-reddit:before{content:""}.fa-reddit-alien:before{content:""}.fa-reddit-square:before{content:""}.fa-redhat:before{content:""}.fa-renren:before{content:""}.fa-replyd:before{content:""}.fa-researchgate:before{content:""}.fa-resolving:before{content:""}.fa-rev:before{content:""}.fa-rocketchat:before{content:""}.fa-rockrms:before{content:""}.fa-rust:before{content:""}.fa-safari:before{content:""}.fa-salesforce:before{content:""}.fa-sass:before{content:""}.fa-schlix:before{content:""}.fa-scribd:before{content:""}.fa-searchengin:before{content:""}.fa-sellcast:before{content:""}.fa-sellsy:before{content:""}.fa-servicestack:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-shopify:before{content:""}.fa-shopware:before{content:""}.fa-simplybuilt:before{content:""}.fa-sistrix:before{content:""}.fa-sith:before{content:""}.fa-sitrox:before{content:""}.fa-sketch:before{content:""}.fa-skyatlas:before{content:""}.fa-skype:before{content:""}.fa-slack-hash:before,.fa-slack:before{content:""}.fa-slideshare:before{content:""}.fa-snapchat-ghost:before,.fa-snapchat:before{content:""}.fa-snapchat-square:before{content:""}.fa-soundcloud:before{content:""}.fa-sourcetree:before{content:""}.fa-speakap:before{content:""}.fa-speaker-deck:before{content:""}.fa-spotify:before{content:""}.fa-square-font-awesome:before{content:""}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:""}.fa-squarespace:before{content:""}.fa-stack-exchange:before{content:""}.fa-stack-overflow:before{content:""}.fa-stackpath:before{content:""}.fa-staylinked:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-steam-symbol:before{content:""}.fa-sticker-mule:before{content:""}.fa-strava:before{content:""}.fa-stripe:before{content:""}.fa-stripe-s:before{content:""}.fa-studiovinari:before{content:""}.fa-stumbleupon:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-superpowers:before{content:""}.fa-supple:before{content:""}.fa-suse:before{content:""}.fa-swift:before{content:""}.fa-symfony:before{content:""}.fa-teamspeak:before{content:""}.fa-telegram-plane:before,.fa-telegram:before{content:""}.fa-tencent-weibo:before{content:""}.fa-the-red-yeti:before{content:""}.fa-themeco:before{content:""}.fa-themeisle:before{content:""}.fa-think-peaks:before{content:""}.fa-tiktok:before{content:""}.fa-trade-federation:before{content:""}.fa-trello:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-twitch:before{content:""}.fa-twitter:before{content:""}.fa-twitter-square:before{content:""}.fa-typo3:before{content:""}.fa-uber:before{content:""}.fa-ubuntu:before{content:""}.fa-uikit:before{content:""}.fa-umbraco:before{content:""}.fa-uncharted:before{content:""}.fa-uniregistry:before{content:""}.fa-unity:before{content:""}.fa-unsplash:before{content:""}.fa-untappd:before{content:""}.fa-ups:before{content:""}.fa-usb:before{content:""}.fa-usps:before{content:""}.fa-ussunnah:before{content:""}.fa-vaadin:before{content:""}.fa-viacoin:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-viber:before{content:""}.fa-vimeo:before{content:""}.fa-vimeo-square:before{content:""}.fa-vimeo-v:before{content:""}.fa-vine:before{content:""}.fa-vk:before{content:""}.fa-vnv:before{content:""}.fa-vuejs:before{content:""}.fa-watchman-monitoring:before{content:""}.fa-waze:before{content:""}.fa-weebly:before{content:""}.fa-weibo:before{content:""}.fa-weixin:before{content:""}.fa-whatsapp:before{content:""}.fa-whatsapp-square:before{content:""}.fa-whmcs:before{content:""}.fa-wikipedia-w:before{content:""}.fa-windows:before{content:""}.fa-wirsindhandwerk:before,.fa-wsh:before{content:""}.fa-wix:before{content:""}.fa-wizards-of-the-coast:before{content:""}.fa-wodu:before{content:""}.fa-wolf-pack-battalion:before{content:""}.fa-wordpress:before{content:""}.fa-wordpress-simple:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpexplorer:before{content:""}.fa-wpforms:before{content:""}.fa-wpressr:before{content:""}.fa-xbox:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-y-combinator:before{content:""}.fa-yahoo:before{content:""}.fa-yammer:before{content:""}.fa-yandex:before{content:""}.fa-yandex-international:before{content:""}.fa-yarn:before{content:""}.fa-yelp:before{content:""}.fa-yoast:before{content:""}.fa-youtube:before{content:""}.fa-youtube-square:before{content:""}.fa-zhihu:before{content:""}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(/admin/assets/fa-regular-400-BtQPhu7h.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-family:"Font Awesome 6 Free";font-weight:400}:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(/admin/assets/fa-solid-900-DByUvYfa.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-family:"Font Awesome 6 Free";font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(/admin/assets/fa-brands-400-B8Wb4MVL.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(/admin/assets/fa-solid-900-DByUvYfa.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(/admin/assets/fa-regular-400-BtQPhu7h.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(/admin/assets/fa-solid-900-DByUvYfa.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(/admin/assets/fa-brands-400-B8Wb4MVL.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(/admin/assets/fa-regular-400-BtQPhu7h.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f250,u+f252,u+f27a}:root{--primary-color: #1890ff;--primary-hover: #40a9ff;--primary-active: #096dd9;--primary-light: #e6f7ff;--primary-lighter: #bae7ff;--success-color: #52c41a;--success-light: #f6ffed;--success-border: #b7eb8f;--warning-color: #faad14;--warning-light: #fffbe6;--warning-border: #ffe58f;--error-color: #f5222d;--error-light: #fff1f0;--error-border: #ffa39e;--info-color: #1890ff;--info-light: #e6f7ff;--info-border: #91d5ff;--modern-primary: #2c3e50;--modern-primary-light: #34495e;--modern-primary-lighter: #4a5f7f;--modern-gray-50: #f8f9fa;--modern-gray-100: #f1f3f5;--modern-gray-200: #e9ecef;--modern-gray-300: #dee2e6;--modern-gray-400: #ced4da;--modern-gray-500: #adb5bd;--modern-gray-600: #6c757d;--modern-gray-700: #495057;--modern-gray-800: #343a40;--modern-gray-900: #212529;--modern-accent: #3b82f6;--modern-accent-light: #60a5fa;--modern-accent-lighter: #93c5fd;--shimmer-gradient: linear-gradient( 90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 50%, rgba(255, 255, 255, 0) 100% );--card-gradient: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);--status-success: #10b981;--status-success-light: #d1fae5;--status-warning: #f59e0b;--status-warning-light: #fef3c7;--status-error: #ef4444;--status-error-light: #fee2e2;--status-info: #3b82f6;--status-info-light: #dbeafe;--bg-color: #f0f2f5;--bg-white: #ffffff;--bg-gray: #fafafa;--border-color: #d9d9d9;--border-light: #f0f0f0;--border-dark: #bfbfbf;--text-primary: #262626;--text-secondary: #595959;--text-tertiary: #8c8c8c;--text-disabled: #bfbfbf;--sidebar-bg: #001529;--sidebar-text: rgba(255, 255, 255, .65);--sidebar-text-hover: #ffffff;--sidebar-active-bg: #1890ff;--sidebar-submenu-bg: #000c17;--header-bg: #ffffff;--header-height: 64px;--header-shadow: 0 2px 8px rgba(0, 0, 0, .08);--sidebar-width: 200px;--sidebar-collapsed-width: 80px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-xxl: 24px;--border-radius-sm: 2px;--border-radius-base: 4px;--border-radius-lg: 8px;--border-radius-xl: 12px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .08);--shadow-base: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s;--transition-base: .3s;--transition-slow: .5s;--z-dropdown: 1000;--z-modal: 1050;--z-notification: 1100;--z-tooltip: 1200;--table-header-bg: #fafafa;--table-row-hover: #f5f5f5;--table-border: #f0f0f0;--input-height: 40px;--input-height-sm: 32px;--input-height-lg: 48px;--input-border: #d9d9d9;--input-border-hover: #40a9ff;--input-border-focus: #1890ff;--input-bg: #ffffff;--input-bg-disabled: #f5f5f5}[data-theme=dark]{--bg-color: #141414;--bg-white: #1f1f1f;--bg-gray: #262626;--text-primary: rgba(255, 255, 255, .85);--text-secondary: rgba(255, 255, 255, .65);--text-tertiary: rgba(255, 255, 255, .45);--border-color: #434343;--border-light: #303030;--table-header-bg: #1f1f1f;--table-row-hover: #262626}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:var(--font-size-base);line-height:1.5715;color:var(--text-primary);background-color:var(--bg-color);min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-gray);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--primary-hover)}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit;font-size:inherit;line-height:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.35;color:var(--text-primary)}h1{font-size:var(--font-size-xxl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}h4{font-size:var(--font-size-base)}h5{font-size:var(--font-size-sm)}h6{font-size:var(--font-size-xs)}::selection{background-color:var(--primary-lighter);color:var(--text-primary)}[disabled]{cursor:not-allowed;opacity:.6}.app-layout{display:flex;min-height:100vh}.sidebar-container{width:var(--sidebar-width);background-color:var(--sidebar-bg);position:fixed;left:0;top:0;bottom:0;z-index:100;transition:width var(--transition-base);overflow:hidden}.sidebar-container.collapsed{width:var(--sidebar-collapsed-width)}.main-layout{flex:1;display:flex;flex-direction:column;margin-left:var(--sidebar-width);transition:margin-left var(--transition-base)}.sidebar-container.collapsed+.main-layout{margin-left:var(--sidebar-collapsed-width)}.top-bar{height:var(--header-height);background-color:var(--header-bg);box-shadow:var(--header-shadow);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-lg);position:sticky;top:0;z-index:99}.content-wrapper{flex:1;padding:var(--spacing-lg);background-color:var(--bg-color);min-height:calc(100vh - var(--header-height))}.page-container{max-width:1600px;margin:0 auto}.breadcrumb{margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-tertiary)}.breadcrumb-item{display:flex;align-items:center;gap:var(--spacing-sm)}.breadcrumb-item:not(:last-child):after{content:"/";margin-left:var(--spacing-sm);color:var(--text-disabled)}.breadcrumb-item a{color:var(--text-tertiary)}.breadcrumb-item a:hover{color:var(--primary-color)}.breadcrumb-item.active{color:var(--text-primary)}.page-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.page-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.page-title i{color:var(--primary-color)}.page-description{margin-top:var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-sm)}.content-card{background-color:var(--bg-white);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.content-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.content-card-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.content-card-title i{color:var(--primary-color)}.content-card-footer{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.grid{display:grid;gap:var(--spacing-lg)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1200px){.grid-cols-4{grid-template-columns:repeat(3,1fr)}}@media (max-width: 992px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.sidebar-container{transform:translate(-100%);width:var(--sidebar-width)}.sidebar-container.mobile-open{transform:translate(0)}.main-layout{margin-left:0}.content-wrapper{padding:var(--spacing-md)}.grid-cols-2,.grid-cols-3,.grid-cols-4,.stats-grid{grid-template-columns:1fr}}@media (max-width: 576px){.top-bar{padding:0 var(--spacing-md)}.content-wrapper{padding:var(--spacing-sm)}.content-card{padding:var(--spacing-md)}}.loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl)}.spinner{width:40px;height:40px;border:4px solid var(--border-light);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-base)}.slide-enter-active,.slide-leave-active{transition:transform var(--transition-base)}.slide-enter-from{transform:translate(-20px)}.slide-leave-to{transform:translate(20px)}.sidebar-logo{height:var(--header-height);display:flex;align-items:center;justify-content:center;padding:0 var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.1);transition:all var(--transition-base)}.sidebar-logo-link{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--sidebar-text-hover);text-decoration:none;font-size:var(--font-size-lg);font-weight:600;white-space:nowrap}.sidebar-logo-icon{font-size:24px;color:var(--primary-color)}.sidebar-logo-text{transition:opacity var(--transition-base)}.sidebar-container.collapsed .sidebar-logo-text{opacity:0;width:0;overflow:hidden}.sidebar-menu{padding:var(--spacing-md) 0;overflow-y:auto;height:calc(100vh - var(--header-height))}.sidebar-menu::-webkit-scrollbar{width:4px}.sidebar-menu::-webkit-scrollbar-thumb{background:#fff3}.menu-item{position:relative;margin:4px var(--spacing-sm)}.menu-item-link{display:flex;align-items:center;padding:12px var(--spacing-md);color:var(--sidebar-text);text-decoration:none;border-radius:var(--border-radius-base);transition:all var(--transition-base);cursor:pointer;-webkit-user-select:none;user-select:none}.menu-item-link:hover{color:var(--sidebar-text-hover);background-color:#ffffff14}.menu-item-link.active{color:var(--sidebar-text-hover);background-color:var(--sidebar-active-bg)}.menu-item-icon{font-size:18px;min-width:24px;text-align:center;transition:all var(--transition-base)}.menu-item-text{flex:1;margin-left:var(--spacing-md);white-space:nowrap;transition:opacity var(--transition-base)}.sidebar-container.collapsed .menu-item-text{opacity:0;width:0;margin-left:0;overflow:hidden}.menu-item-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:var(--font-size-xs);font-weight:600;line-height:20px;color:#fff;background-color:var(--error-color);border-radius:10px;transition:opacity var(--transition-base)}.sidebar-container.collapsed .menu-item-badge{opacity:0}.menu-submenu{position:relative}.submenu-title{display:flex;align-items:center;padding:12px var(--spacing-md);color:var(--sidebar-text);cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base);margin:4px var(--spacing-sm)}.submenu-title:hover{color:var(--sidebar-text-hover);background-color:#ffffff14}.submenu-arrow{margin-left:auto;font-size:var(--font-size-xs);transition:transform var(--transition-base)}.menu-submenu.open .submenu-arrow{transform:rotate(180deg)}.submenu-items{max-height:0;overflow:hidden;transition:max-height var(--transition-base)}.menu-submenu.open .submenu-items{max-height:500px}.submenu-item{padding-left:48px}.sidebar-container.collapsed .submenu-items{display:none}.sidebar-toggle{position:absolute;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--sidebar-text);cursor:pointer;transition:all var(--transition-base)}.sidebar-toggle:hover{background-color:#fff3;color:var(--sidebar-text-hover)}.sidebar-toggle i{transition:transform var(--transition-base)}.sidebar-container.collapsed .sidebar-toggle i{transform:rotate(180deg)}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:99}@media (max-width: 768px){.sidebar-overlay.show{display:block}.sidebar-container{box-shadow:2px 0 8px #00000026}}.menu-tooltip{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);padding:6px 12px;background-color:#000000d9;color:#fff;font-size:var(--font-size-sm);border-radius:var(--border-radius-base);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-base);z-index:1000}.sidebar-container.collapsed .menu-item:hover .menu-tooltip{opacity:1}.sidebar-container:not(.collapsed) .menu-tooltip{display:none}.menu-group{margin:var(--spacing-md) 0}.menu-group-title{padding:8px var(--spacing-lg);color:#ffffff73;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:600;transition:opacity var(--transition-base)}.sidebar-container.collapsed .menu-group-title{opacity:0;height:0;padding:0;overflow:hidden}.menu-divider{height:1px;margin:var(--spacing-sm) var(--spacing-lg);background-color:#ffffff1a}.menu-item-link.parent-menu{position:relative}.menu-item-arrow{margin-left:auto;font-size:12px;transition:transform var(--transition-base),opacity var(--transition-base)}.menu-item-link.parent-menu.expanded .menu-item-arrow{transform:rotate(0)}.sidebar-container.collapsed .menu-item-arrow{opacity:0}.submenu{padding-left:0;overflow:hidden;transition:max-height .3s ease-out}.submenu-item-link{display:flex;align-items:center;padding:10px var(--spacing-md) 10px 48px;color:#ffffffb3;text-decoration:none;border-radius:var(--border-radius-base);transition:all var(--transition-base);cursor:pointer;-webkit-user-select:none;user-select:none;margin:2px var(--spacing-sm)}.submenu-item-link:hover{color:var(--sidebar-text-hover);background-color:#ffffff14}.submenu-item-link.active{color:var(--sidebar-text-hover);background-color:#ffffff26}.submenu-item-icon{font-size:16px;min-width:20px;text-align:center}.submenu-item-text{margin-left:var(--spacing-sm);white-space:nowrap;font-size:14px}.sidebar-container.collapsed .submenu{display:none}.submenu-item{position:relative}.submenu-item-link.parent-submenu{display:flex;align-items:center;padding:10px var(--spacing-md) 10px 48px;color:#fffc;text-decoration:none;border-radius:var(--border-radius-base);transition:all var(--transition-base);cursor:pointer;-webkit-user-select:none;user-select:none;margin:2px var(--spacing-sm);font-weight:500}.submenu-item-link.parent-submenu:hover{color:var(--sidebar-text-hover);background-color:#ffffff1f}.submenu-item-link.parent-submenu.active{color:var(--sidebar-text-hover);background-color:#fff3}.submenu-item-arrow{margin-left:auto;font-size:10px;transition:transform var(--transition-base),opacity var(--transition-base)}.submenu-item-link.parent-submenu.expanded .submenu-item-arrow{transform:rotate(90deg)}.sidebar-container.collapsed .submenu-item-arrow{opacity:0}.nested-submenu{padding-left:0;overflow:hidden;transition:max-height .3s ease-out;background-color:#ffffff08;border-radius:0 0 var(--border-radius-base) var(--border-radius-base);margin:0 var(--spacing-sm) 2px var(--spacing-sm)}.nested-submenu-item-link{display:flex;align-items:center;padding:8px var(--spacing-md) 8px 68px;color:#ffffffa6;text-decoration:none;border-radius:var(--border-radius-base);transition:all var(--transition-base);cursor:pointer;-webkit-user-select:none;user-select:none;margin:1px 0}.nested-submenu-item-link:hover{color:var(--sidebar-text-hover);background-color:#ffffff14}.nested-submenu-item-link.active{color:var(--sidebar-text-hover);background-color:#ffffff26;box-shadow:inset 2px 0 0 var(--primary-color)}.nested-submenu-item-icon{font-size:14px;min-width:16px;text-align:center;opacity:.8}.nested-submenu-item-text{margin-left:var(--spacing-sm);white-space:nowrap;font-size:13px}.sidebar-container.collapsed .nested-submenu{display:none}.topbar-left{display:flex;align-items:center;gap:var(--spacing-md)}.topbar-menu-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;background-color:transparent;border:none;color:var(--text-primary);font-size:20px;cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.topbar-menu-toggle:hover{background-color:var(--bg-gray)}@media (max-width: 768px){.topbar-menu-toggle{display:flex}}.topbar-breadcrumb{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-tertiary)}.topbar-breadcrumb-item{display:flex;align-items:center;gap:var(--spacing-sm)}.topbar-breadcrumb-item:not(:last-child):after{content:"/";margin-left:var(--spacing-sm);color:var(--text-disabled)}.topbar-breadcrumb-item.active{color:var(--text-primary);font-weight:500}.topbar-right{display:flex;align-items:center;gap:var(--spacing-md)}.topbar-search{position:relative;width:240px}.topbar-search-input{width:100%;height:36px;padding:0 var(--spacing-md) 0 36px;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);font-size:var(--font-size-sm);background-color:var(--bg-gray);transition:all var(--transition-base)}.topbar-search-input:focus{outline:none;border-color:var(--primary-color);background-color:var(--bg-white);box-shadow:0 0 0 2px var(--primary-light)}.topbar-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);font-size:var(--font-size-base)}@media (max-width: 768px){.topbar-search{display:none}}.topbar-notification{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;color:var(--text-primary);font-size:18px;cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.topbar-notification:hover{background-color:var(--bg-gray)}.topbar-notification-badge{position:absolute;top:8px;right:8px;min-width:18px;height:18px;padding:0 4px;display:flex;align-items:center;justify-content:center;background-color:var(--error-color);color:#fff;font-size:10px;font-weight:600;border-radius:9px;border:2px solid var(--header-bg)}.topbar-user{display:flex;align-items:center;gap:var(--spacing-sm);padding:6px 12px;cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.topbar-user:hover{background-color:var(--bg-gray)}.topbar-user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--font-size-sm);font-weight:600}.topbar-user-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.topbar-user-info{display:flex;flex-direction:column;align-items:flex-start}.topbar-user-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);line-height:1.2}.topbar-user-role{font-size:var(--font-size-xs);color:var(--text-tertiary);line-height:1.2}.topbar-user-arrow{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-left:var(--spacing-xs)}@media (max-width: 576px){.topbar-user-info{display:none}}.topbar-user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background-color:var(--bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-sm) 0;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-base);z-index:var(--z-dropdown)}.topbar-user.active .topbar-user-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.topbar-user-dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:10px var(--spacing-md);color:var(--text-primary);text-decoration:none;cursor:pointer;transition:all var(--transition-base)}.topbar-user-dropdown-item:hover{background-color:var(--bg-gray)}.topbar-user-dropdown-item i{width:16px;text-align:center;color:var(--text-tertiary)}.topbar-user-dropdown-divider{height:1px;margin:var(--spacing-sm) 0;background-color:var(--border-light)}.topbar-fullscreen{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;color:var(--text-primary);font-size:18px;cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.topbar-fullscreen:hover{background-color:var(--bg-gray)}@media (max-width: 576px){.topbar-fullscreen{display:none}}.topbar-theme-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;color:var(--text-primary);font-size:18px;cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.topbar-theme-toggle:hover{background-color:var(--bg-gray)}@media (max-width: 576px){.topbar-theme-toggle{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:8px 16px;font-size:var(--font-size-base);font-weight:500;line-height:1.5715;text-align:center;text-decoration:none;border:1px solid transparent;border-radius:var(--border-radius-base);cursor:pointer;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-sm{padding:4px 12px;font-size:var(--font-size-sm);height:var(--input-height-sm)}.btn-lg{padding:12px 24px;font-size:var(--font-size-lg);height:var(--input-height-lg)}.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-primary:active:not(:disabled){background-color:var(--primary-active);border-color:var(--primary-active)}.btn-success{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){background-color:#73d13d;border-color:#73d13d}.btn-warning{background-color:var(--warning-color);border-color:var(--warning-color);color:#fff}.btn-warning:hover:not(:disabled){background-color:#ffc53d;border-color:#ffc53d}.btn-danger{background-color:var(--error-color);border-color:var(--error-color);color:#fff}.btn-danger:hover:not(:disabled){background-color:#ff4d4f;border-color:#ff4d4f}.btn-default{background-color:var(--bg-white);border-color:var(--border-color);color:var(--text-primary)}.btn-default:hover:not(:disabled){color:var(--primary-color);border-color:var(--primary-color)}.btn-outline{background-color:transparent;border-color:var(--primary-color);color:var(--primary-color)}.btn-outline:hover:not(:disabled){background-color:var(--primary-color);color:#fff}.btn-text{background-color:transparent;border-color:transparent;color:var(--primary-color)}.btn-text:hover:not(:disabled){background-color:var(--primary-light)}.btn-link{background-color:transparent;border-color:transparent;color:var(--primary-color);padding:0}.btn-link:hover:not(:disabled){color:var(--primary-hover)}.btn-group{display:inline-flex;gap:var(--spacing-sm)}.badge{display:inline-flex;align-items:center;justify-content:center;padding:0 8px;height:22px;font-size:var(--font-size-xs);font-weight:500;line-height:22px;border-radius:11px;white-space:nowrap}.badge-primary{background-color:var(--primary-light);color:var(--primary-color)}.badge-success{background-color:var(--success-light);color:var(--success-color)}.badge-warning{background-color:var(--warning-light);color:var(--warning-color)}.badge-danger{background-color:var(--error-light);color:var(--error-color)}.badge-info{background-color:var(--info-light);color:var(--info-color)}.badge-default{background-color:var(--bg-gray);color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;font-size:var(--font-size-sm);font-weight:500;border-radius:12px}.status-active{background-color:var(--success-light);color:var(--success-color);border:1px solid var(--success-border)}.status-inactive{background-color:var(--error-light);color:var(--error-color);border:1px solid var(--error-border)}.status-pending{background-color:var(--warning-light);color:var(--warning-color);border:1px solid var(--warning-border)}.status-open{background-color:var(--info-light);color:var(--info-color);border:1px solid var(--info-border)}.status-closed{background-color:var(--bg-gray);color:var(--text-tertiary);border:1px solid var(--border-color)}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:var(--font-size-xs);line-height:20px;border:1px solid var(--border-color);border-radius:var(--border-radius-base);background-color:var(--bg-gray);color:var(--text-primary)}.tag-closable{padding-right:4px}.tag-close{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:4px;font-size:10px;cursor:pointer;border-radius:50%;transition:all var(--transition-fast)}.tag-close:hover{background-color:#0000001a}.stat-card{background:var(--card-gradient);border-radius:16px;padding:var(--spacing-lg);box-shadow:0 2px 8px #0000000a,0 1px 2px #0000000f;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--modern-gray-200);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:var(--shimmer-gradient);transform:rotate(45deg);animation:shimmer 3s infinite;pointer-events:none}.stat-card:hover{box-shadow:0 8px 24px #00000014,0 2px 6px #0000000a;transform:translateY(-4px);border-color:var(--modern-gray-300)}.stat-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);position:relative;z-index:1}.stat-card-title{font-size:var(--font-size-sm);color:var(--modern-gray-600);font-weight:600;letter-spacing:.3px;text-transform:uppercase}.stat-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:22px;transition:all .3s ease;background:var(--modern-gray-100);color:var(--modern-primary)}.stat-card:hover .stat-card-icon{transform:scale(1.05);background:var(--modern-gray-200)}.stat-card-icon.primary,.stat-card-icon.success,.stat-card-icon.warning,.stat-card-icon.danger{background:var(--modern-gray-100);color:var(--modern-primary);box-shadow:0 2px 8px #2c3e501a}.stat-card:hover .stat-card-icon.primary,.stat-card:hover .stat-card-icon.success,.stat-card:hover .stat-card-icon.warning,.stat-card:hover .stat-card-icon.danger{background:var(--modern-accent);color:#fff;box-shadow:0 4px 12px #3b82f64d}.stat-card-value{font-size:36px;font-weight:700;color:var(--modern-primary);line-height:1.2;margin-bottom:var(--spacing-sm);letter-spacing:-1px;position:relative;z-index:1}.stat-card-footer{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--modern-gray-500);position:relative;z-index:1}.stat-card-trend{display:inline-flex;align-items:center;gap:3px;font-weight:600;padding:3px 8px;border-radius:8px;font-size:11px}.stat-card-trend.up{color:var(--status-success);background-color:var(--status-success-light)}.stat-card-trend.down{color:var(--status-error);background-color:var(--status-error-light)}.alert{padding:12px 16px;border-radius:var(--border-radius-base);border:1px solid;margin-bottom:var(--spacing-md);display:flex;align-items:flex-start;gap:var(--spacing-sm)}.alert-icon{font-size:16px;flex-shrink:0}.alert-content{flex:1}.alert-title{font-weight:600;margin-bottom:4px}.alert-success{background-color:var(--success-light);border-color:var(--success-border);color:var(--success-color)}.alert-warning{background-color:var(--warning-light);border-color:var(--warning-border);color:var(--warning-color)}.alert-error{background-color:var(--error-light);border-color:var(--error-border);color:var(--error-color)}.alert-info{background-color:var(--info-light);border-color:var(--info-border);color:var(--info-color)}.markdown-content{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#333}.markdown-content strong{font-weight:600;color:#1f2937}.markdown-content em{font-style:italic;color:#4b5563}.markdown-content code{background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:3px;padding:2px 6px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:.9em;color:#d63384}.markdown-content pre{background-color:#1f2937;color:#e5e7eb;padding:12px;border-radius:4px;overflow-x:auto;margin:12px 0;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:.9em;line-height:1.5}.markdown-content pre code{background-color:transparent;border:none;padding:0;color:#e5e7eb}.markdown-content a{color:#2563eb;text-decoration:none;border-bottom:1px solid #2563eb;transition:all .2s}.markdown-content a:hover{color:#1d4ed8;background-color:#eff6ff}.markdown-content br{display:block;content:"";margin:.5em 0}.markdown-content .latex-block{display:block;margin:12px 0;padding:12px;background-color:#f9fafb;border-left:3px solid #3b82f6;border-radius:4px;font-style:italic;color:#1f2937}.markdown-content .latex-inline{display:inline;font-style:italic;color:#1f2937}.file-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.file-item{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);border-radius:var(--border-radius-sm);background-color:var(--bg-color-secondary);transition:background-color var(--transition-base)}.file-item:hover{background-color:var(--bg-color-hover)}.file-name{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;flex:1;min-width:0}.file-name i{font-size:var(--font-size-base);flex-shrink:0}.file-size{font-size:var(--font-size-xs);color:var(--text-color-secondary);white-space:nowrap}.file-name.pdf-file i{color:#dc2626}.file-name.word-file i{color:#2563eb}.file-name.pdf-file:before{content:"PDF";display:inline-block;background-color:#dc2626;color:#fff;font-size:10px;padding:1px 4px;border-radius:2px;margin-right:var(--spacing-xs);font-weight:600}.file-name.word-file:before{content:"Word";display:inline-block;background-color:#2563eb;color:#fff;font-size:10px;padding:1px 4px;border-radius:2px;margin-right:var(--spacing-xs);font-weight:600}.file-item .btn-action.small.download{min-width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs)}.file-item .btn-action.small.download:hover{background-color:var(--primary-color-hover)}@media (max-width: 768px){.file-info{gap:var(--spacing-sm)}.file-item{flex-wrap:wrap;gap:var(--spacing-xs)}.file-name{font-size:var(--font-size-xs);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name:before{flex-shrink:0}}.file-type-indicator{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:50%;font-size:var(--font-size-xs);font-weight:600;color:#fff;margin-right:var(--spacing-xs);flex-shrink:0}.file-type-indicator.pdf{background-color:#dc2626}.file-type-indicator.word{background-color:#2563eb}.table-container{background-color:var(--bg-white);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.table thead{background-color:var(--table-header-bg)}.table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--table-border);white-space:nowrap}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-base)}.table th.sortable:hover{background-color:var(--bg-gray)}.table th .sort-icon{margin-left:4px;font-size:var(--font-size-xs);color:var(--text-tertiary)}.table th.sorted .sort-icon{color:var(--primary-color)}.table tbody tr{border-bottom:1px solid var(--table-border);transition:background-color var(--transition-base)}.table tbody tr:last-child{border-bottom:none}.table tbody tr:hover{background-color:var(--table-row-hover)}.table td{padding:12px 16px;color:var(--text-primary);vertical-align:middle}.table-striped tbody tr:nth-child(2n){background-color:var(--bg-gray)}.table-striped tbody tr:nth-child(2n):hover{background-color:var(--table-row-hover)}.table-compact th,.table-compact td{padding:8px 12px}.table-actions{display:flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap}.table-action-btn{padding:4px 8px;font-size:var(--font-size-sm);border:none;background-color:transparent;color:var(--primary-color);cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.table-action-btn:hover{background-color:var(--primary-light)}.table-action-btn.danger{color:var(--error-color)}.table-action-btn.danger:hover{background-color:var(--error-light)}.table-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--table-border);background-color:var(--bg-white)}.table-toolbar-left,.table-toolbar-right{display:flex;align-items:center;gap:var(--spacing-sm)}.table-toolbar-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.table-search{position:relative;width:240px}.table-search-input{width:100%;height:32px;padding:0 32px 0 12px;border:1px solid var(--border-color);border-radius:var(--border-radius-base);font-size:var(--font-size-sm);transition:all var(--transition-base)}.table-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-light)}.table-search-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);font-size:var(--font-size-sm)}.table-pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--table-border);background-color:var(--bg-white)}.pagination-info{font-size:var(--font-size-sm);color:var(--text-secondary)}.pagination-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.pagination-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background-color:var(--bg-white);color:var(--text-primary);border-radius:var(--border-radius-base);cursor:pointer;transition:all var(--transition-base)}.pagination-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.table-empty{padding:var(--spacing-xxl) var(--spacing-lg);text-align:center;color:var(--text-tertiary)}.table-empty-icon{font-size:48px;color:var(--text-disabled);margin-bottom:var(--spacing-md)}.table-empty-text{font-size:var(--font-size-base);margin-bottom:var(--spacing-sm)}.table-empty-description{font-size:var(--font-size-sm);color:var(--text-tertiary)}.table-loading{position:relative;min-height:200px}.table-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#fffc;display:flex;align-items:center;justify-content:center;z-index:10}.table-checkbox{width:16px;height:16px;cursor:pointer}.table-selected{background-color:var(--primary-light)!important}.table-expand-icon{cursor:pointer;transition:transform var(--transition-base)}.table-expand-icon.expanded{transform:rotate(90deg)}.table-expanded-row{background-color:var(--bg-gray)}.table-expanded-content{padding:var(--spacing-md) var(--spacing-lg)}@media (max-width: 768px){.table-toolbar{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.table-toolbar-left,.table-toolbar-right{width:100%;justify-content:space-between}.table-search{width:100%}.table-pagination{flex-direction:column;gap:var(--spacing-sm)}.pagination-controls{width:100%;justify-content:center}}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:inline-block;margin-bottom:var(--spacing-sm);font-size:var(--font-size-base);font-weight:500;color:var(--text-primary);line-height:1.5715}.form-label.required:before{content:"*";color:var(--error-color);margin-right:4px}.form-control{width:100%;height:var(--input-height);padding:4px 12px;font-size:var(--font-size-base);line-height:1.5715;color:var(--text-primary);background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--border-radius-base);transition:all var(--transition-base)}.form-control:hover{border-color:var(--input-border-hover)}.form-control:focus{outline:none;border-color:var(--input-border-focus);box-shadow:0 0 0 2px var(--primary-light)}.form-control:disabled{background-color:var(--input-bg-disabled);color:var(--text-disabled);cursor:not-allowed}.form-control::placeholder{color:var(--text-tertiary)}.form-control-sm{height:var(--input-height-sm);padding:0 8px;font-size:var(--font-size-sm)}.form-control-lg{height:var(--input-height-lg);padding:8px 16px;font-size:var(--font-size-lg)}textarea.form-control{height:auto;min-height:80px;padding:8px 12px;resize:vertical}select.form-control{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23595959' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.form-check{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.form-check-input{width:16px;height:16px;cursor:pointer;flex-shrink:0}.form-check-label{font-size:var(--font-size-base);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.input-group{display:flex;align-items:stretch;width:100%}.input-group .form-control{flex:1;border-radius:0}.input-group .form-control:first-child{border-top-left-radius:var(--border-radius-base);border-bottom-left-radius:var(--border-radius-base)}.input-group .form-control:last-child{border-top-right-radius:var(--border-radius-base);border-bottom-right-radius:var(--border-radius-base)}.input-group-prepend,.input-group-append{display:flex;align-items:center;padding:0 12px;background-color:var(--bg-gray);border:1px solid var(--input-border);color:var(--text-secondary);white-space:nowrap}.input-group-prepend{border-right:none;border-top-left-radius:var(--border-radius-base);border-bottom-left-radius:var(--border-radius-base)}.input-group-append{border-left:none;border-top-right-radius:var(--border-radius-base);border-bottom-right-radius:var(--border-radius-base)}.form-help{display:block;margin-top:4px;font-size:var(--font-size-sm);color:var(--text-tertiary);line-height:1.5}.form-group.has-error .form-control{border-color:var(--error-color)}.form-group.has-error .form-control:focus{box-shadow:0 0 0 2px var(--error-light)}.form-group.has-success .form-control{border-color:var(--success-color)}.form-group.has-success .form-control:focus{box-shadow:0 0 0 2px var(--success-light)}.form-error{display:block;margin-top:4px;font-size:var(--font-size-sm);color:var(--error-color)}.form-success{display:block;margin-top:4px;font-size:var(--font-size-sm);color:var(--success-color)}.form-inline{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.form-inline .form-group{margin-bottom:0;flex:1;min-width:200px}.form-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.form-col{flex:1}.form-actions{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.form-actions.centered{justify-content:center}.form-actions.right{justify-content:flex-end}.file-upload{position:relative}.file-upload-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden}.file-upload-label{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:8px 16px;background-color:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--border-radius-base);color:var(--text-primary);cursor:pointer;transition:all var(--transition-base)}.file-upload-label:hover{border-color:var(--primary-color);color:var(--primary-color)}.file-upload-text{margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-tertiary)}.form-switch{position:relative;display:inline-block;width:44px;height:22px}.form-switch-input{opacity:0;width:0;height:0}.form-switch-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);border-radius:11px;transition:all var(--transition-base)}.form-switch-slider:before{content:"";position:absolute;height:18px;width:18px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:all var(--transition-base)}.form-switch-input:checked+.form-switch-slider{background-color:var(--primary-color)}.form-switch-input:checked+.form-switch-slider:before{transform:translate(22px)}.form-switch-input:disabled+.form-switch-slider{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-row{flex-direction:column}.form-inline{flex-direction:column;align-items:stretch}.form-inline .form-group{width:100%}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000073;display:flex;align-items:flex-start;justify-content:center;z-index:var(--z-modal);padding:0;overflow-y:auto}.modal{background-color:var(--bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);max-width:520px;width:100%;max-height:none;display:flex;flex-direction:column;animation:modalFadeIn var(--transition-base);margin-top:0;margin-bottom:var(--spacing-lg);margin-left:var(--spacing-lg);margin-right:var(--spacing-lg)}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-sm{max-width:400px}.modal-lg{max-width:800px}.modal-xl{max-width:1140px}.modal-full{max-width:calc(100vw - 32px);max-height:calc(100vh - 32px)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);flex-shrink:0}.modal-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.modal-title i{color:var(--primary-color)}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;color:var(--text-tertiary);font-size:18px;cursor:pointer;border-radius:var(--border-radius-base);transition:all var(--transition-base)}.modal-close:hover{background-color:var(--bg-gray);color:var(--text-primary)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:3px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-light);flex-shrink:0}.modal-footer.centered{justify-content:center}.modal-footer.space-between{justify-content:space-between}.modal-confirm{text-align:center}.modal-confirm-icon{width:64px;height:64px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:32px}.modal-confirm-icon.warning{background-color:var(--warning-light);color:var(--warning-color)}.modal-confirm-icon.danger{background-color:var(--error-light);color:var(--error-color)}.modal-confirm-icon.success{background-color:var(--success-light);color:var(--success-color)}.modal-confirm-icon.info{background-color:var(--info-light);color:var(--info-color)}.modal-confirm-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.modal-confirm-content{font-size:var(--font-size-base);color:var(--text-secondary);line-height:1.6}@media (max-width: 768px){.modal-overlay{padding:var(--spacing-sm)}.modal{max-width:100%;max-height:calc(100vh - 16px)}.modal-lg,.modal-xl{max-width:100%}.modal-header,.modal-body,.modal-footer{padding:var(--spacing-md)}}.drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000073;z-index:var(--z-modal)}.drawer{position:fixed;top:0;bottom:0;background-color:var(--bg-white);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;z-index:calc(var(--z-modal) + 1)}.drawer-right{right:0;animation:drawerSlideInRight var(--transition-base)}.drawer-left{left:0;animation:drawerSlideInLeft var(--transition-base)}@keyframes drawerSlideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes drawerSlideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.drawer-sm{width:320px}.drawer-md{width:480px}.drawer-lg{width:720px}@media (max-width: 768px){.drawer{width:100%!important}}.notification-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-notification);display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:384px}.notification-item{background-color:var(--bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-md);display:flex;align-items:flex-start;gap:var(--spacing-sm);animation:notificationSlideIn var(--transition-base);cursor:pointer}@keyframes notificationSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.notification-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:var(--font-size-base);flex-shrink:0}.notification-icon.success{background-color:var(--success-light);color:var(--success-color)}.notification-icon.error{background-color:var(--error-light);color:var(--error-color)}.notification-icon.warning{background-color:var(--warning-light);color:var(--warning-color)}.notification-icon.info{background-color:var(--info-light);color:var(--info-color)}.notification-content{flex:1}.notification-title{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin-bottom:2px}.notification-message{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.notification-container{left:var(--spacing-md);right:var(--spacing-md);max-width:none}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3c72,#2a5298,#7e8ba3);padding:var(--spacing-lg)}.login-card{background-color:var(--bg-white);border-radius:var(--border-radius-xl);box-shadow:0 20px 60px #0000004d;padding:var(--spacing-xxl);width:100%;max-width:420px;animation:loginFadeIn .5s ease-out}@keyframes loginFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-logo{width:64px;height:64px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));border-radius:var(--border-radius-xl);font-size:32px;color:#fff}.login-title{font-size:var(--font-size-xxl);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.login-subtitle{font-size:var(--font-size-base);color:var(--text-secondary)}.login-form .form-group{margin-bottom:var(--spacing-lg)}.login-form .form-control{height:48px;padding:0 16px;font-size:var(--font-size-base)}.login-form .form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light)}.login-options{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.login-remember{display:flex;align-items:center;gap:var(--spacing-sm)}.login-remember input{width:16px;height:16px;cursor:pointer}.login-remember label{font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.login-forgot{font-size:var(--font-size-sm);color:var(--primary-color);text-decoration:none}.login-forgot:hover{color:var(--primary-hover);text-decoration:underline}.login-button{width:100%;height:48px;font-size:var(--font-size-base);font-weight:600;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));border:none;border-radius:var(--border-radius-base);color:#fff;cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #1890ff66}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:var(--spacing-xl);text-align:center;font-size:var(--font-size-sm);color:var(--text-tertiary)}.login-footer a{color:var(--primary-color);text-decoration:none}.login-footer a:hover{text-decoration:underline}.login-divider{display:flex;align-items:center;margin:var(--spacing-lg) 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background-color:var(--border-color)}.login-divider span{padding:0 var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-tertiary)}.login-social{display:flex;gap:var(--spacing-sm);justify-content:center}.login-social-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--border-radius-base);background-color:var(--bg-white);color:var(--text-secondary);font-size:20px;cursor:pointer;transition:all var(--transition-base)}.login-social-btn:hover{border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-2px)}.login-error{padding:var(--spacing-md);margin-bottom:var(--spacing-lg);background-color:var(--error-light);border:1px solid var(--error-border);border-radius:var(--border-radius-base);color:var(--error-color);font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--spacing-sm)}.login-error i{font-size:var(--font-size-base)}@media (max-width: 576px){.login-container{padding:var(--spacing-md)}.login-card{padding:var(--spacing-lg)}.login-title{font-size:var(--font-size-xl)}.login-options{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}.login-loading{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.text-primary{color:var(--primary-color)!important}.text-success{color:var(--success-color)!important}.text-warning{color:var(--warning-color)!important}.text-danger{color:var(--error-color)!important}.text-info{color:var(--info-color)!important}.text-muted{color:var(--text-tertiary)!important}.text-disabled{color:var(--text-disabled)!important}.bg-primary{background-color:var(--primary-color)!important}.bg-success{background-color:var(--success-color)!important}.bg-warning{background-color:var(--warning-color)!important}.bg-danger{background-color:var(--error-color)!important}.bg-info{background-color:var(--info-color)!important}.bg-white{background-color:var(--bg-white)!important}.bg-gray{background-color:var(--bg-gray)!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.text-justify{text-align:justify!important}.text-xs{font-size:var(--font-size-xs)!important}.text-sm{font-size:var(--font-size-sm)!important}.text-base{font-size:var(--font-size-base)!important}.text-lg{font-size:var(--font-size-lg)!important}.text-xl{font-size:var(--font-size-xl)!important}.text-xxl{font-size:var(--font-size-xxl)!important}.font-normal{font-weight:400!important}.font-medium{font-weight:500!important}.font-semibold{font-weight:600!important}.font-bold{font-weight:700!important}.m-0{margin:0!important}.m-xs{margin:var(--spacing-xs)!important}.m-sm{margin:var(--spacing-sm)!important}.m-md{margin:var(--spacing-md)!important}.m-lg{margin:var(--spacing-lg)!important}.m-xl{margin:var(--spacing-xl)!important}.mt-0{margin-top:0!important}.mt-xs{margin-top:var(--spacing-xs)!important}.mt-sm{margin-top:var(--spacing-sm)!important}.mt-md{margin-top:var(--spacing-md)!important}.mt-lg{margin-top:var(--spacing-lg)!important}.mt-xl{margin-top:var(--spacing-xl)!important}.mb-0{margin-bottom:0!important}.mb-xs{margin-bottom:var(--spacing-xs)!important}.mb-sm{margin-bottom:var(--spacing-sm)!important}.mb-md{margin-bottom:var(--spacing-md)!important}.mb-lg{margin-bottom:var(--spacing-lg)!important}.mb-xl{margin-bottom:var(--spacing-xl)!important}.ml-0{margin-left:0!important}.ml-xs{margin-left:var(--spacing-xs)!important}.ml-sm{margin-left:var(--spacing-sm)!important}.ml-md{margin-left:var(--spacing-md)!important}.ml-lg{margin-left:var(--spacing-lg)!important}.ml-xl{margin-left:var(--spacing-xl)!important}.mr-0{margin-right:0!important}.mr-xs{margin-right:var(--spacing-xs)!important}.mr-sm{margin-right:var(--spacing-sm)!important}.mr-md{margin-right:var(--spacing-md)!important}.mr-lg{margin-right:var(--spacing-lg)!important}.mr-xl{margin-right:var(--spacing-xl)!important}.p-0{padding:0!important}.p-xs{padding:var(--spacing-xs)!important}.p-sm{padding:var(--spacing-sm)!important}.p-md{padding:var(--spacing-md)!important}.p-lg{padding:var(--spacing-lg)!important}.p-xl{padding:var(--spacing-xl)!important}.pt-0{padding-top:0!important}.pt-xs{padding-top:var(--spacing-xs)!important}.pt-sm{padding-top:var(--spacing-sm)!important}.pt-md{padding-top:var(--spacing-md)!important}.pt-lg{padding-top:var(--spacing-lg)!important}.pt-xl{padding-top:var(--spacing-xl)!important}.pb-0{padding-bottom:0!important}.pb-xs{padding-bottom:var(--spacing-xs)!important}.pb-sm{padding-bottom:var(--spacing-sm)!important}.pb-md{padding-bottom:var(--spacing-md)!important}.pb-lg{padding-bottom:var(--spacing-lg)!important}.pb-xl{padding-bottom:var(--spacing-xl)!important}.pl-0{padding-left:0!important}.pl-xs{padding-left:var(--spacing-xs)!important}.pl-sm{padding-left:var(--spacing-sm)!important}.pl-md{padding-left:var(--spacing-md)!important}.pl-lg{padding-left:var(--spacing-lg)!important}.pl-xl{padding-left:var(--spacing-xl)!important}.pr-0{padding-right:0!important}.pr-xs{padding-right:var(--spacing-xs)!important}.pr-sm{padding-right:var(--spacing-sm)!important}.pr-md{padding-right:var(--spacing-md)!important}.pr-lg{padding-right:var(--spacing-lg)!important}.pr-xl{padding-right:var(--spacing-xl)!important}.d-none{display:none!important}.d-block{display:block!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-grid{display:grid!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end!important}.justify-center{justify-content:center!important}.justify-between{justify-content:space-between!important}.justify-around{justify-content:space-around!important}.items-start{align-items:flex-start!important}.items-end{align-items:flex-end!important}.items-center{align-items:center!important}.items-baseline{align-items:baseline!important}.items-stretch{align-items:stretch!important}.flex-1{flex:1!important}.flex-auto{flex:auto!important}.flex-none{flex:none!important}.gap-0{gap:0!important}.gap-xs{gap:var(--spacing-xs)!important}.gap-sm{gap:var(--spacing-sm)!important}.gap-md{gap:var(--spacing-md)!important}.gap-lg{gap:var(--spacing-lg)!important}.gap-xl{gap:var(--spacing-xl)!important}.w-full{width:100%!important}.w-auto{width:auto!important}.w-50{width:50%!important}.w-25{width:25%!important}.w-75{width:75%!important}.h-full{height:100%!important}.h-auto{height:auto!important}.h-screen{height:100vh!important}.border{border:1px solid var(--border-color)!important}.border-0{border:none!important}.border-t{border-top:1px solid var(--border-color)!important}.border-b{border-bottom:1px solid var(--border-color)!important}.border-l{border-left:1px solid var(--border-color)!important}.border-r{border-right:1px solid var(--border-color)!important}.rounded-none{border-radius:0!important}.rounded-sm{border-radius:var(--border-radius-sm)!important}.rounded{border-radius:var(--border-radius-base)!important}.rounded-lg{border-radius:var(--border-radius-lg)!important}.rounded-xl{border-radius:var(--border-radius-xl)!important}.rounded-full{border-radius:9999px!important}.shadow-none{box-shadow:none!important}.shadow-sm{box-shadow:var(--shadow-sm)!important}.shadow{box-shadow:var(--shadow-base)!important}.shadow-lg{box-shadow:var(--shadow-lg)!important}.shadow-xl{box-shadow:var(--shadow-xl)!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-y-auto{overflow-y:auto!important}.relative{position:relative!important}.absolute{position:absolute!important}.fixed{position:fixed!important}.sticky{position:sticky!important}.cursor-pointer{cursor:pointer!important}.cursor-default{cursor:default!important}.cursor-not-allowed{cursor:not-allowed!important}.select-none{-webkit-user-select:none!important;user-select:none!important}.select-text{-webkit-user-select:text!important;user-select:text!important}.select-all{-webkit-user-select:all!important;user-select:all!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.truncate{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.line-clamp-1{display:-webkit-box!important;-webkit-line-clamp:1!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.line-clamp-2{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.line-clamp-3{display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}@media (max-width: 768px){.mobile-hidden{display:none!important}}@media (min-width: 769px){.desktop-hidden{display:none!important}}.reference-answer-editor{padding:20px}.reference-answer-editor .loading-state{text-align:center;padding:40px;color:#666;font-size:16px}.reference-answer-editor .form-group{margin-bottom:20px}.reference-answer-editor label{display:block;margin-bottom:8px;font-weight:600;color:#333}.reference-answer-editor .label-hint{font-weight:400;color:#666;font-size:.9em}.reference-answer-editor .code-actions{margin-bottom:10px;display:flex;gap:10px}.reference-answer-editor .code-editor{font-family:Courier New,Courier,monospace;font-size:13px;line-height:1.5;background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;padding:12px;resize:vertical}.reference-answer-editor .code-editor:focus{outline:none;border-color:#4caf50;background-color:#fff}.execution-result{margin:20px 0;padding:15px;border-radius:8px;background-color:#f8f9fa}.execution-result h4{margin-top:0;margin-bottom:15px;color:#333}.result-success{color:#28a745}.result-success>p:first-child{font-weight:600;font-size:16px;margin-bottom:5px}.result-success>p:first-child i{margin-right:8px}.result-error{color:#dc3545}.result-error>p:first-child{font-weight:600;font-size:16px;margin-bottom:10px}.result-error>p:first-child i{margin-right:8px}.output-section,.images-section{margin-top:15px}.output-section strong,.images-section strong{display:block;margin-bottom:8px;color:#333}.output-section pre{background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:12px;overflow-x:auto;font-size:13px;line-height:1.5;color:#333;margin:0}.result-error pre{background-color:#fff;border:1px solid #dc3545;border-radius:4px;padding:12px;overflow-x:auto;font-size:13px;line-height:1.5;color:#dc3545;margin:0}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;margin-top:10px}.image-item{border:1px solid #ddd;border-radius:8px;overflow:hidden;background-color:#fff;box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s}.image-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.image-item img{width:100%;height:auto;display:block;cursor:pointer}.saved-images{margin:20px 0;padding:15px;background-color:#f8f9fa;border-radius:8px}.saved-images h4{margin-top:0;margin-bottom:15px;color:#333}.action-buttons{display:flex;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid #ddd}.action-buttons .btn{padding:10px 20px;font-size:14px}.btn-primary{background-color:#4caf50;color:#fff;border:none}.btn-primary:hover:not(:disabled){background-color:#45a049}.btn-success{background-color:#2196f3;color:#fff;border:none}.btn-success:hover:not(:disabled){background-color:#0b7dda}.btn-danger{background-color:#f44336;color:#fff;border:none}.btn-danger:hover:not(:disabled){background-color:#da190b}.btn:disabled{opacity:.6;cursor:not-allowed}.btn i{margin-right:5px}@media (max-width: 768px){.reference-answer-editor{padding:15px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.ai-grading-task-panel{padding:20px}@keyframes shimmer{0%{transform:translate(-100%) translateY(-100%) rotate(45deg)}to{transform:translate(100%) translateY(100%) rotate(45deg)}}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px;border:none;outline:none}.ai-grading-task-panel .stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:12px;padding:20px;display:flex;align-items:center;gap:15px;box-shadow:0 2px 8px #0000000a,0 1px 2px #0000000f;transition:all .3s ease;position:relative;overflow:hidden;border:none!important;border-top:none!important;border-bottom:none!important}.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014,0 2px 6px #0000000a}.ai-grading-task-panel .stat-card.pending,.ai-grading-task-panel .stat-card.processing,.ai-grading-task-panel .stat-card.completed,.ai-grading-task-panel .stat-card.failed{border-left:3px solid var(--modern-primary)!important;border-top:none!important;border-right:none!important;border-bottom:none!important}.stat-value{font-size:28px;font-weight:700;color:var(--modern-primary)}.stat-label{font-size:12px;color:var(--modern-gray-600);margin-top:5px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.task-controls{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;display:flex;justify-content:flex-start;align-items:center;box-shadow:0 2px 4px #0000001a;gap:15px;flex-wrap:nowrap;border:none;border-top:none;outline:none}.filter-label{font-weight:500;color:#333;white-space:nowrap;margin:0;flex-shrink:0}.filter-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;cursor:pointer;min-width:100px;height:38px;flex-shrink:0}.task-controls .btn-refresh,.task-controls .btn-toggle{padding:8px 20px;border:1px solid var(--modern-gray-300);border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease;font-weight:500;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;height:38px;line-height:1.5;min-width:120px;flex-shrink:0}.btn-refresh{background:var(--modern-primary);color:#fff;border-color:var(--modern-primary)}.btn-refresh:hover{background:var(--modern-primary-light);border-color:var(--modern-primary-light);transform:translateY(-1px);box-shadow:0 4px 12px #2c3e5033}.btn-toggle{background:var(--modern-gray-100);color:var(--modern-primary)}.btn-toggle.active{background:var(--modern-primary);color:#fff;border-color:var(--modern-primary)}.btn-toggle:hover{background:var(--modern-gray-200);transform:translateY(-1px)}.task-list{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.loading,.empty{text-align:center;padding:40px;color:#999;font-size:16px}.task-table{width:100%;border-collapse:collapse;min-width:1200px}.task-table thead{background:var(--modern-gray-50);position:sticky;top:0;z-index:10}.task-table th{padding:12px 8px;text-align:left;font-weight:600;color:var(--modern-gray-700);border-bottom:2px solid var(--modern-gray-200);font-size:13px;white-space:nowrap}.task-table td{padding:10px 8px;border-bottom:1px solid var(--modern-gray-200);font-size:13px;vertical-align:middle}.task-table tbody tr.status-pending{border-left:3px solid var(--status-warning)}.task-table tbody tr.status-processing{border-left:3px solid var(--status-info)}.task-table tbody tr.status-completed{border-left:3px solid var(--status-success)}.task-table tbody tr.status-failed{border-left:3px solid var(--status-error)}.error-message-short{max-width:200px;font-size:12px;color:var(--status-error);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-value{font-weight:700;color:var(--modern-accent);font-size:14px}.status-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;border:1px solid}.status-badge.status-pending{background:var(--status-warning-light);color:var(--status-warning);border-color:var(--status-warning)}.status-badge.status-processing{background:var(--status-info-light);color:var(--status-info);border-color:var(--status-info)}.status-badge.status-completed{background:var(--status-success-light);color:var(--status-success);border-color:var(--status-success)}.status-badge.status-failed{background:var(--status-error-light);color:var(--status-error);border-color:var(--status-error)}.priority-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;border:1px solid}.priority-badge.priority-10{background:#fff3e0;color:#f57c00;border-color:#ffb74d}.priority-badge.priority-0{background:var(--modern-gray-100);color:var(--modern-gray-600);border-color:var(--modern-gray-300)}.task-actions{display:flex;gap:5px;justify-content:center}.btn-action{padding:6px 10px;border:1px solid var(--modern-gray-300);border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease;background:var(--modern-gray-50);color:var(--modern-primary)}.btn-action:hover{transform:translateY(-2px);background:var(--modern-primary);color:#fff;border-color:var(--modern-primary);box-shadow:0 4px 12px #2c3e5033}.btn-retry:hover,.btn-view:hover,.btn-delete:hover{background:var(--modern-primary);color:#fff}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:80vh;overflow:auto;box-shadow:0 4px 20px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h3{margin:0;font-size:20px;color:#333}.btn-close{background:none;border:none;font-size:28px;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close:hover{background:#f5f5f5;color:#333}.modal-body{padding:20px}.result-item{margin-bottom:20px}.result-item label{display:block;font-weight:600;color:#333;margin-bottom:8px}.result-item .score{font-size:28px;font-weight:700;color:var(--modern-primary)}.result-item .comment,.result-item .prompt,.result-item .error-msg{background:var(--modern-gray-100);padding:14px;border-radius:8px;white-space:pre-wrap;word-wrap:break-word;line-height:1.6;border:1px solid var(--modern-gray-300)}.result-item .error-msg{background:var(--modern-gray-200);color:var(--modern-gray-800);border-color:var(--modern-gray-400)}@media (max-width: 768px){.stats-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.stat-card{padding:15px}.stat-icon{font-size:24px}.stat-value{font-size:20px}.task-controls{flex-wrap:wrap;gap:10px}.filter-label,.filter-select{flex-shrink:0}.task-controls .btn-refresh,.task-controls .btn-toggle{padding:10px 16px;font-size:13px}.task-table{font-size:11px}.task-table th,.task-table td{padding:6px 4px}.task-table th:nth-child(n+5),.task-table td:nth-child(n+5){display:none}}@media (max-width: 1024px){.task-table{min-width:100%;font-size:12px}.task-table th,.task-table td{padding:8px 6px}}.ai-model-settings,.cdn-strategy-settings{padding:0;margin:0}.model-selector,.strategy-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:24px}.model-option,.strategy-option{border:1px solid #d9d9d9;border-radius:8px;padding:20px;cursor:pointer;transition:all .2s ease;background:#fff;position:relative}.model-option:hover,.strategy-option:hover{border-color:#1890ff;box-shadow:0 2px 8px #1890ff1f}.model-option.active,.strategy-option.active{border-color:#1890ff;background:#f0f5ff;box-shadow:0 2px 8px #1890ff26}.model-option.recommended,.strategy-option.recommended{border-color:#52c41a}.model-option.recommended:hover,.model-option.recommended.active,.strategy-option.recommended:hover,.strategy-option.recommended.active{border-color:#52c41a;box-shadow:0 2px 8px #52c41a26}.model-header,.strategy-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.model-header input[type=radio],.strategy-header input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#1890ff}.model-header strong{font-size:16px;color:#262626;flex:1;font-weight:600}.badge{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.model-name{font-size:13px;color:#8c8c8c;margin-bottom:12px;font-family:SF Mono,Monaco,Consolas,monospace;font-weight:500}.model-description{font-size:14px;color:#595959;line-height:1.7;margin-bottom:16px}.model-stats{display:flex;gap:16px;margin-bottom:16px;padding:12px 16px;background:#fafafa;border-radius:6px;border:1px solid #f0f0f0}.stat-icon{font-size:14px;color:#8c8c8c}.stat-value{font-weight:600;color:#262626}.model-features{display:flex;flex-wrap:wrap;gap:8px}.feature{padding:4px 10px;background:#f6ffed;border:1px solid #d9f7be;border-radius:4px;font-size:12px;color:#52c41a;font-weight:500}.model-option.active .feature{background:#d9f7be;border-color:#b7eb8f}.settings-actions{display:flex;gap:12px;margin-bottom:24px}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){background:#40a9ff;box-shadow:0 2px 8px #1890ff33}.btn-primary:disabled{background:#d9d9d9;cursor:not-allowed;opacity:.6}.btn-secondary{background:#fff;color:#262626;border:1px solid #d9d9d9}.btn-secondary:hover:not(:disabled){background:#fafafa;border-color:#1890ff;color:#1890ff}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.message{padding:12px 16px;border-radius:6px;font-size:14px;animation:slideIn .3s ease}@media (max-width: 900px){.model-selector{grid-template-columns:1fr}}.strategy-description{color:#595959;font-size:14px;line-height:1.6;margin-bottom:16px}.settings-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:24px}.info-box{background:#fafafa;border:1px solid #e8e8e8;border-radius:6px;padding:16px}.info-box h4{font-size:15px;margin:0 0 12px;color:#262626;font-weight:600}.info-box ul{margin:0;padding-left:20px;color:#595959;font-size:14px;line-height:1.8}.info-box li{margin-bottom:6px}.info-box li strong{color:#262626}@media (max-width: 600px){.ai-model-settings,.cdn-strategy-settings{padding:15px}.model-option,.strategy-option{padding:16px}.model-stats{flex-direction:column;gap:8px}.settings-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.system-settings-page{padding:0}.system-settings-page .page-header{margin-bottom:24px}.system-settings-page .page-header h2{margin:0 0 8px;font-size:26px;color:#2c3e50}.system-settings-page .page-description{margin:0;color:#7f8c8d;font-size:14px}.system-settings-page .settings-container{display:flex;flex-direction:column;gap:20px;max-width:860px;margin:0 auto;width:100%}.system-settings-page .settings-section{background:#fff;border-radius:12px;padding:22px 24px;box-shadow:0 2px 8px #00000014;transition:box-shadow .3s ease}.system-settings-page .settings-section:hover{box-shadow:0 4px 12px #0000001f}.system-settings-page .settings-section .ai-model-settings,.system-settings-page .settings-section .cdn-strategy-settings,.system-settings-page .settings-section .student-delete-permission-settings,.system-settings-page .settings-section .reference-code-execution-settings,.system-settings-page .settings-section .academic-year-settings{max-width:none;padding:0;margin:0}@media (max-width: 768px){.system-settings-page .settings-section{padding:18px 16px}.system-settings-page .page-header h2{font-size:22px}}.academic-year-settings{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.settings-header h3{margin:0 0 8px;font-size:20px;font-weight:600;color:#333}.settings-header .description{margin:0;font-size:14px;color:#666}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{display:inline-block;width:14px;height:14px;border:2px solid #f3f3f3;border-top:2px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:4px;padding:16px;color:#c33;margin:20px 0}.retry-button{margin-top:12px;padding:8px 16px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.retry-button:hover{background-color:#45a049}.setting-section{margin-bottom:32px;padding:20px;background-color:#f9f9f9;border-radius:6px}.setting-section:last-child{margin-bottom:0}.section-title{margin:0 0 16px;font-size:16px;font-weight:600;color:#444}.current-year-selector{display:flex;align-items:center;gap:12px}.current-year-selector label{font-weight:500;color:#555;margin:0}.year-select{flex:1;max-width:300px;padding:10px 16px;font-size:15px;border:2px solid #ddd;border-radius:6px;background-color:#fff;cursor:pointer;transition:border-color .3s}.year-select:hover{border-color:#4caf50}.year-select:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.year-select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.updating-indicator{display:flex;align-items:center;color:#4caf50;font-size:14px;font-weight:500}.years-list{display:flex;flex-direction:column;gap:12px}.year-item{padding:16px;background-color:#fff;border:2px solid #e0e0e0;border-radius:6px;transition:all .3s}.year-item:hover{border-color:#4caf50;box-shadow:0 2px 8px #4caf501a}.year-item.active{border-color:#4caf50;background-color:#f0fdf4}.year-item.closed{border-color:#f44336;background-color:#fef2f2;opacity:.85}.year-info{margin-bottom:12px}.year-name{font-size:16px;font-weight:600;color:#333}.current-badge{display:inline-block;margin-left:8px;padding:2px 8px;background-color:#4caf50;color:#fff;font-size:12px;font-weight:500;border-radius:12px}.closed-badge{display:inline-block;margin-left:8px;padding:2px 8px;background-color:#f44336;color:#fff;font-size:12px;font-weight:500;border-radius:12px}.year-actions{display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid #e0e0e0}.closed-toggle{padding:8px 16px;font-size:14px;font-weight:500;color:#fff;background-color:#f44336;border:none;border-radius:6px;cursor:pointer;transition:all .3s}.closed-toggle:hover{background-color:#da190b;transform:translateY(-1px);box-shadow:0 2px 8px #f443364d}.closed-toggle.closed{background-color:#4caf50}.closed-toggle.closed:hover{background-color:#45a049;box-shadow:0 2px 8px #4caf504d}.year-stats{display:flex;flex-wrap:wrap;gap:16px}.stat-item{font-size:14px;color:#666;padding:4px 0}.info-section{background-color:#e3f2fd;border-color:#bbdefb}.info-list{margin:0;padding-left:20px}.info-list li{margin-bottom:8px;color:#444;line-height:1.6}.info-list li:last-child{margin-bottom:0}.create-year-form{display:flex;flex-direction:column;gap:12px}.form-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.form-row label{font-weight:500;color:#555;margin:0;white-space:nowrap}.year-input{flex:1;min-width:200px;padding:10px 16px;font-size:15px;border:2px solid #ddd;border-radius:6px;background-color:#fff;transition:border-color .3s}.year-input:hover{border-color:#4caf50}.year-input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.year-input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.create-button{padding:10px 24px;font-size:15px;font-weight:500;color:#fff;background-color:#4caf50;border:none;border-radius:6px;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:8px}.create-button:hover:not(:disabled){background-color:#45a049;transform:translateY(-1px);box-shadow:0 2px 8px #4caf504d}.create-button:active:not(:disabled){transform:translateY(0)}.create-button:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.form-hint{margin:0;padding:0;font-size:13px;color:#666;font-style:italic}@media (max-width: 768px){.academic-year-settings{padding:16px}.current-year-selector{flex-direction:column;align-items:flex-start}.year-select{max-width:none;width:100%}.form-row{flex-direction:column;align-items:stretch}.year-input{min-width:none;width:100%}.create-button{width:100%;justify-content:center}.year-stats{flex-direction:column;gap:8px}}.settings-content{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.student-delete-permission-settings{width:100%}.student-delete-permission-settings .settings-header{margin-bottom:25px}.student-delete-permission-settings .settings-header h3{margin:0 0 8px;font-size:22px;color:#2c3e50}.student-delete-permission-settings .settings-description{margin:0;color:#7f8c8d;font-size:14px}.student-delete-permission-settings .loading-state{text-align:center;padding:40px 20px;color:#95a5a6}.student-delete-permission-settings .spinner{border:3px solid #f3f3f3;border-top:3px solid #3498db;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 15px}.student-delete-permission-settings .permission-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:15px;margin-bottom:25px}.student-delete-permission-settings .permission-option{border:2px solid #e0e0e0;border-radius:10px;padding:18px 20px;cursor:pointer;transition:all .3s ease;background:#fff}.student-delete-permission-settings .permission-option:hover{border-color:#3498db;box-shadow:0 2px 8px #3498db26;transform:translateY(-2px)}.student-delete-permission-settings .permission-option.active{border-color:#3498db;background:#f0f9ff;box-shadow:0 2px 12px #3498db33}.student-delete-permission-settings .permission-option.recommended{border-color:#27ae60}.student-delete-permission-settings .permission-option.recommended:hover{border-color:#219a52}.student-delete-permission-settings .permission-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.student-delete-permission-settings .permission-header input[type=radio]{margin:0;cursor:pointer;width:18px;height:18px}.student-delete-permission-settings .permission-header strong{font-size:16px;color:#2c3e50;flex:1}.student-delete-permission-settings .badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.student-delete-permission-settings .badge-recommended{background:#27ae60;color:#fff}.student-delete-permission-settings .badge-current{background:#3498db;color:#fff}.student-delete-permission-settings .permission-description{color:#7f8c8d;font-size:14px;margin-bottom:12px;line-height:1.5}.student-delete-permission-settings .permission-features{display:flex;flex-direction:column;gap:6px}.student-delete-permission-settings .feature{color:#555;font-size:13px;line-height:1.6}.student-delete-permission-settings .settings-info{margin:20px 0}.student-delete-permission-settings .info-box{background:#fff9e6;border-left:4px solid #f39c12;border-radius:6px;padding:15px 18px}.student-delete-permission-settings .info-box h4{margin:0 0 10px;font-size:15px;color:#e67e22}.student-delete-permission-settings .info-box ul{margin:0;padding-left:20px}.student-delete-permission-settings .info-box li{color:#666;font-size:14px;line-height:1.8;margin-bottom:5px}.student-delete-permission-settings .info-box li strong{color:#2c3e50}.student-delete-permission-settings .settings-actions{display:flex;gap:12px;margin-top:25px;padding-top:20px;border-top:1px solid #e0e0e0}.student-delete-permission-settings .btn-primary,.student-delete-permission-settings .btn-secondary{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px}.student-delete-permission-settings .btn-primary{background:#3498db;color:#fff}.student-delete-permission-settings .btn-primary:hover:not(:disabled){background:#2980b9;transform:translateY(-1px);box-shadow:0 2px 8px #3498db4d}.student-delete-permission-settings .btn-primary:disabled{background:#bdc3c7;cursor:not-allowed;opacity:.6}.student-delete-permission-settings .btn-secondary{background:#ecf0f1;color:#7f8c8d}.student-delete-permission-settings .btn-secondary:hover:not(:disabled){background:#d5dbdb;color:#2c3e50}.student-delete-permission-settings .message{margin-top:20px;padding:12px 16px;border-radius:6px;font-size:14px;line-height:1.5;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.student-delete-permission-settings .message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.student-delete-permission-settings .message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.student-delete-permission-settings .settings-header h3{font-size:19px}.student-delete-permission-settings .permission-option{padding:15px}.student-delete-permission-settings .settings-actions{flex-direction:column}.student-delete-permission-settings .btn-primary,.student-delete-permission-settings .btn-secondary{width:100%;justify-content:center}}.stats-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);color:var(--modern-primary);padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000000a,0 1px 2px #0000000f;transition:all .3s ease;border:1px solid var(--modern-gray-200);position:relative;overflow:hidden}.stat-card:nth-child(1),.stat-card:nth-child(2),.stat-card:nth-child(3),.stat-card:nth-child(4){background:linear-gradient(135deg,#fff,#f8f9fa)}.stat-label{font-size:.75rem;color:var(--modern-gray-600);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px;font-weight:600;position:relative;z-index:1}.stat-value{font-size:2rem;font-weight:700;color:var(--modern-primary);position:relative;z-index:1}.grade-table{font-size:.875rem}.grade-table th{background-color:#f8f9fa;font-weight:600;text-align:center;padding:12px 8px;border:1px solid #dee2e6}.grade-table td{text-align:center;padding:8px;border:1px solid #dee2e6}.grade-cell{display:flex;flex-direction:column;gap:4px;min-width:120px}.grade-cell-simple{display:flex;flex-direction:column;gap:4px;min-width:80px;align-items:center}.score-item{padding:4px 8px;border-radius:4px;font-size:.875rem;font-weight:600}.submission-count{font-size:.7rem;color:#6c757d;font-style:italic}.score-excellent{background-color:var(--modern-gray-100);color:var(--modern-primary);border:1px solid var(--modern-gray-300)}.score-good{background-color:var(--modern-gray-100);color:var(--modern-primary-light);border:1px solid var(--modern-gray-300)}.score-fair{background-color:var(--modern-gray-100);color:var(--modern-gray-700);border:1px solid var(--modern-gray-300)}.score-pass{background-color:var(--modern-gray-100);color:var(--modern-gray-600);border:1px solid var(--modern-gray-300)}.score-fail{background-color:var(--modern-gray-200);color:var(--modern-gray-700);font-weight:700;border:1px solid var(--modern-gray-400)}.score-none{background-color:var(--modern-gray-50);color:var(--modern-gray-500);border:1px solid var(--modern-gray-200)}.score-adjusted{background-color:#fff3cd;color:#856404;border:1px solid #ffc107;font-weight:700;padding:4px 8px;border-radius:4px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 #ffc10766}50%{box-shadow:0 0 0 6px #ffc10700}}.score-missing{color:#dc3545;font-style:italic}.score-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-weight:600;font-size:.875rem}.badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:600;border:1px solid var(--modern-gray-300)}.badge-success{background-color:var(--modern-gray-100);color:var(--modern-primary);border-color:var(--modern-gray-300)}.badge-secondary{background-color:var(--modern-gray-50);color:var(--modern-gray-600);border-color:var(--modern-gray-200)}.filter-section{background-color:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem}.form-select,.form-input{width:100%;padding:.5rem .75rem;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-select:focus,.form-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.empty-state{text-align:center;padding:3rem 1rem;color:#6c757d}.empty-state i{font-size:3rem;color:#dee2e6;margin-bottom:1rem}.empty-state p{font-size:1rem;margin:0}@media (max-width: 768px){.stats-panel{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.5rem}.grade-table{font-size:.75rem}.grade-cell{min-width:100px}.score-item{font-size:.7rem;padding:3px 6px}}@media (max-width: 480px){.stats-panel{grid-template-columns:1fr}}.report-actions-section{margin:1.5rem 0;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid #ffc107}.report-actions-section .btn{margin-right:1rem}.report-actions-section small{display:block;margin-top:.5rem;color:#6c757d}.alert{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between}.alert-info i{margin-right:.5rem}.mode-selector{display:flex;gap:1rem;margin-bottom:2rem;justify-content:center}.mode-selector .btn{padding:.75rem 2rem;font-size:1rem}.config-selector.merged-mode{max-width:800px;margin:0 auto}.checkbox-list{border:1px solid #ddd;border-radius:5px;padding:1rem;max-height:200px;overflow-y:auto}.checkbox-item{display:flex;align-items:center;padding:.5rem;margin-bottom:.5rem;cursor:pointer}.checkbox-item input[type=checkbox]{margin-right:.75rem;width:18px;height:18px}.checkbox-item:hover{background:#f5f5f5}.thesis-rounds-section{margin:2rem 0}.thesis-rounds-section h4{margin-bottom:1rem}.class-thesis-config{margin-bottom:1.5rem;padding:1rem;background:#f9f9f9;border-radius:5px}.class-thesis-config h5{margin-bottom:.75rem;color:#667eea}.weight-config-section{margin:2rem 0;padding:1.5rem;background:#f0f7ff;border-radius:5px}.weight-config-section h4{margin-bottom:1rem}.weight-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.weight-item{display:flex;flex-direction:column}.weight-item label{margin-bottom:.5rem;font-weight:500}.weight-item input{padding:.5rem;border:1px solid #ddd;border-radius:4px}.total-weight{text-align:center;font-weight:700;padding:.75rem;background:#fff;border-radius:4px}.total-weight.valid{color:#28a745}.total-weight.invalid{color:#dc3545}.grade-detail-table-container{overflow-x:auto;margin:2rem 0;border:1px solid #ddd;border-radius:8px}.grade-detail-table{width:100%;border-collapse:collapse;min-width:max-content}.grade-detail-table th,.grade-detail-table td{padding:10px 12px;text-align:center;border:1px solid #ddd;white-space:nowrap}.grade-detail-table thead{background:#667eea;color:#fff}.grade-detail-table th{font-weight:600;position:sticky;top:0;z-index:10}.grade-detail-table tbody tr:nth-child(2n){background:#f9f9f9}.grade-detail-table tbody tr:hover{background:#f0f7ff}.grade-detail-table .fixed-column{position:sticky;background:#fff;z-index:5;border-right:2px solid #667eea}.grade-detail-table thead th.fixed-column{z-index:15;background:#667eea}.grade-detail-table td:nth-child(1),.grade-detail-table th:nth-child(1){left:0;min-width:100px}.grade-detail-table td:nth-child(2),.grade-detail-table th:nth-child(2){left:100px;min-width:100px}.grade-detail-table td:nth-child(3),.grade-detail-table th:nth-child(3){left:200px;min-width:120px}.grade-detail-table tbody tr:hover td.fixed-column{background:#f0f7ff}.total-score-column{font-weight:700;background:#f0f7ff;color:#667eea}.score-cell{min-width:60px}.score-cell.empty{color:#999}@media (max-width: 768px){.mode-selector{flex-direction:column}.weight-items{grid-template-columns:1fr 1fr}}.database-comparison{padding:20px;max-width:1400px;margin:0 auto}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.toolbar h2{margin:0;color:#333;font-size:24px}.toolbar .actions{display:flex;gap:10px}.toolbar button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s}.toolbar button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#1976d2;color:#fff}.btn-primary:hover:not(:disabled){background:#1565c0}.btn-secondary{background:#757575;color:#fff}.btn-secondary:hover:not(:disabled){background:#616161}.loading-container{text-align:center;padding:60px 20px}.spinner{border:4px solid #f3f3f3;border-top:4px solid #1976d2;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 20px}.overview-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat{background:#f5f5f5;padding:20px;border-radius:8px;text-align:center;transition:transform .2s}.stat:hover{transform:translateY(-2px)}.stat .label{display:block;font-size:14px;color:#666;margin-bottom:10px}.stat .value{display:block;font-size:32px;font-weight:700;color:#333}.stat-success{background:#e8f5e9}.stat-success .value{color:#2e7d32}.stat-warning{background:#fff3e0}.stat-warning .value{color:#e65100}.stat-error{background:#ffebee}.stat-error .value{color:#c62828}.table-list{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.table-item{display:flex;align-items:center;padding:12px;border-bottom:1px solid #eee;transition:background .2s}.table-item:last-child{border-bottom:none}.table-item.clickable{cursor:pointer}.table-item.clickable:hover{background:#f5f5f5}.table-item.selected{background:#e3f2fd;border-left:4px solid #1976d2}.table-item .icon{font-size:20px;margin-right:10px}.table-item .name{flex:1;font-weight:500;font-size:16px}.table-item .issue-count{color:#ff9800;font-size:14px;margin-right:10px;padding:4px 8px;background:#fff3e0;border-radius:4px}.table-item .expand-icon{color:#999;font-size:12px}.details-panel{position:fixed;right:0;top:60px;bottom:0;width:600px;background:#fff;box-shadow:-2px 0 10px #0003;overflow-y:auto;z-index:1000;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid #e0e0e0;position:sticky;top:0;background:#fff;z-index:10}.panel-header h3{margin:0;font-size:20px;color:#333}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#999;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.close-btn:hover{background:#f5f5f5;color:#333}.panel-body{padding:20px}.info-section{background:#f9f9f9;padding:15px;border-radius:6px;margin-bottom:20px}.info-item{margin-bottom:8px;font-size:14px}.info-item:last-child{margin-bottom:0}.info-item strong{color:#666}.diff-section{margin-bottom:30px}.diff-section h4{margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid #eee;font-size:16px}.diff-section h4.severity-error{color:#c62828;border-color:#c62828}.diff-section h4.severity-warning{color:#f57c00;border-color:#f57c00}.diff-item{background:#f9f9f9;padding:15px;border-radius:6px;margin-bottom:10px;border-left:4px solid #ccc}.diff-item.severity-error{border-left-color:#c62828;background:#ffebee}.diff-item.severity-warning{border-left-color:#f57c00;background:#fff3e0}.diff-item.severity-info{border-left-color:#1976d2;background:#e3f2fd}.field-name{font-weight:600;font-size:16px;margin-bottom:5px;color:#333}.field-type{color:#666;font-family:Courier New,monospace;margin-bottom:10px;font-size:13px}.field-suggestion{margin-top:10px}.field-suggestion strong{color:#666;font-size:14px}.field-suggestion code,.field-suggestion pre{display:block;background:#263238;color:#aed581;padding:10px;border-radius:4px;font-size:13px;overflow-x:auto;margin-top:5px;font-family:Courier New,monospace}.usage-stats{font-size:14px;color:#666;margin:5px 0;padding:5px 10px;background:#ffffff80;border-radius:4px}.type-comparison{display:flex;align-items:center;gap:10px;margin:10px 0;font-family:Courier New,monospace;font-size:14px}.type-comparison .arrow{color:#999;font-size:16px}.type-comparison .model-type{color:#1976d2}.type-comparison .db-type{color:#f57c00}.no-issues{text-align:center;padding:40px 20px;color:#2e7d32}.no-issues i{font-size:48px;margin-bottom:15px}.no-issues p{font-size:16px;margin:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid #e0e0e0}.modal-header h3{margin:0;font-size:20px}.modal-body{padding:20px;overflow-y:auto}.warnings{background:#fff3e0;border-left:4px solid #f57c00;padding:15px;margin-bottom:20px;border-radius:4px}.warning-item{margin-bottom:8px;color:#e65100;font-size:14px}.warning-item:last-child{margin-bottom:0}.sql-script{background:#263238;color:#aed581;padding:20px;border-radius:6px;font-size:14px;overflow-x:auto;margin-bottom:20px;font-family:Courier New,monospace;line-height:1.6}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-actions button{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s}.database-tables{padding:20px;max-width:1400px;margin:0 auto}.database-tables .page-title{font-size:24px;font-weight:600;color:#333;margin-bottom:30px;display:flex;align-items:center;gap:10px}.database-tables .page-title i{color:#1976d2}.table-selector-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.selector-group{display:flex;align-items:center;gap:15px}.selector-group label{font-weight:500;color:#555;white-space:nowrap}.table-select{flex:1;max-width:400px;height:40px;padding:0 15px;border:1px solid #ddd;border-radius:4px;font-size:14px;background-color:#fff;cursor:pointer;transition:border-color .3s}.table-select:hover{border-color:#1976d2}.table-select:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.btn-refresh{width:40px;height:40px;border:1px solid #ddd;border-radius:4px;background:#fff;color:#666;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-refresh:hover:not(:disabled){background:#f5f5f5;border-color:#1976d2;color:#1976d2}.btn-refresh:disabled{opacity:.5;cursor:not-allowed}.error-message{background:#ffebee;border:1px solid #ef5350;border-radius:4px;padding:15px;margin-bottom:20px;color:#c62828;display:flex;align-items:center;gap:10px}.loading{text-align:center;padding:40px;color:#666;font-size:16px}.loading i{margin-right:10px}.table-content{display:flex;flex-direction:column;gap:20px}.table-info-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid #90caf9;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d}.table-info-card h3{font-size:18px;font-weight:600;color:#1565c0;margin:0 0 15px;display:flex;align-items:center;gap:8px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.info-item{display:flex;flex-direction:column;gap:5px}.info-label{font-size:13px;color:#1565c0;font-weight:500}.info-value{font-size:16px;color:#0d47a1;font-weight:600}.columns-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d}.columns-table-container h3{font-size:18px;font-weight:600;color:#333;margin:0 0 15px;display:flex;align-items:center;gap:8px}.table-wrapper{overflow-x:auto}.columns-table{width:100%;border-collapse:collapse;font-size:14px}.columns-table thead{background:#f5f5f5;border-bottom:2px solid #e0e0e0}.columns-table th{padding:12px 15px;text-align:left;font-weight:600;color:#555;white-space:nowrap}.columns-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background-color .2s}.columns-table tbody tr:nth-child(odd){background:#fafafa}.columns-table tbody tr:hover{background:#f0f0f0}.columns-table td{padding:12px 15px}.col-index{width:60px;text-align:center;color:#999;font-weight:500}.col-name code,.col-type code,.col-default code{background:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:13px;color:#d32f2f}.col-type code{color:#1976d2}.col-default code{color:#388e3c}.col-nullable{text-align:center}.badge{display:inline-block;padding:3px 8px;border-radius:3px;font-size:12px;font-weight:600}.badge-yes{background:#c8e6c9;color:#2e7d32}.badge-no{background:#ffcdd2;color:#c62828}.text-muted{color:#999;font-style:italic}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state i{font-size:64px;color:#ddd;margin-bottom:20px}.empty-state p{font-size:16px;margin:0}@media (max-width: 768px){.database-tables{padding:15px}.selector-group{flex-direction:column;align-items:stretch}.table-select{max-width:none}.info-grid{grid-template-columns:1fr}.columns-table{font-size:12px}.columns-table th,.columns-table td{padding:8px 10px}}.learning-progress-container{display:flex;flex-direction:column;gap:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.stat-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.stat-card-title{font-size:14px;color:#666;font-weight:500}.stat-card-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff}.stat-card-icon.primary{background:#1890ff}.stat-card-icon.success{background:#52c41a}.stat-card-icon.warning{background:#faad14}.stat-card-icon.danger{background:#f5222d}.stat-card-icon.info{background:#13c2c2}.stat-card-value{font-size:32px;font-weight:700;color:#333}.progress-cell{display:flex;align-items:center;gap:12px}.progress-bar-container{flex:1;height:24px;background:#f0f0f0;border-radius:12px;overflow:hidden;min-width:100px}.progress-bar{height:100%;transition:width .3s ease;border-radius:12px}.progress-text{font-size:12px;color:#666;white-space:nowrap;min-width:80px}.score-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:14px;font-weight:500;background:#e6f7ff;color:#1890ff}.score-badge.success{background:#f6ffed;color:#52c41a}.score-badge.danger{background:#fff1f0;color:#f5222d}.score-badge.empty{background:#fafafa;color:#999}.time-text{font-size:12px;color:#666}.time-text.empty{color:#999}.student-row{transition:background-color .2s ease}.student-row:hover{background-color:#fafafa}.student-row.inactive{opacity:.6}.expand-btn{background:none;border:none;cursor:pointer;padding:4px 8px;color:#1890ff;font-size:12px;transition:transform .3s ease}.expand-btn:hover{color:#40a9ff}.expand-btn.expanded{transform:rotate(90deg)}.detail-row{background-color:#fafafa}.detail-row td{padding:0!important}.student-detail{padding:20px}.student-detail h4{margin:0 0 16px;font-size:14px;font-weight:600;color:#333}.detail-table{width:100%;border-collapse:collapse;font-size:13px}.detail-table thead{background-color:#f5f5f5}.detail-table th{padding:12px;text-align:left;font-weight:600;color:#666;border-bottom:1px solid #e8e8e8}.detail-table td{padding:12px;border-bottom:1px solid #f0f0f0}.detail-table tbody tr:hover{background-color:#f9f9f9}.status-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:12px;font-weight:500}.status-badge.未提交{background:#fff1f0;color:#f5222d}.status-badge.已提交{background:#e6f7ff;color:#1890ff}.status-badge.已评分{background:#f6ffed;color:#52c41a}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.toolbar-left,.toolbar-right{display:flex;gap:16px;align-items:center}.toolbar-left .form-group{display:flex;align-items:center;gap:8px}.toolbar-left label{font-weight:500;color:#333;white-space:nowrap}.toolbar-left select,.search-input{min-width:200px}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.toolbar{flex-direction:column;align-items:stretch}.toolbar-left,.toolbar-right{flex-direction:column}.toolbar-left select,.search-input{width:100%}.data-table{font-size:12px}.progress-text{display:none}.progress-bar-container{min-width:60px}}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-draft{background-color:#6c757d;color:#fff}.badge-published{background-color:#ffc107;color:#000}.badge-started{background-color:#28a745;color:#fff}.badge-ended{background-color:#17a2b8;color:#fff}.badge-success{background-color:#28a745;color:#fff}.badge-secondary{background-color:#6c757d;color:#fff}.thesis-management{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.thesis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e9ecef}.thesis-title{font-size:24px;font-weight:600;color:#2c3e50;margin:0}.thesis-actions{display:flex;gap:12px}.thesis-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.thesis-stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:12px;text-align:center;box-shadow:0 4px 6px #0000001a;transition:transform .2s ease}.thesis-stat-card:hover{transform:translateY(-2px)}.thesis-stat-card.primary{background:linear-gradient(135deg,#4facfe,#00f2fe)}.thesis-stat-card.success{background:linear-gradient(135deg,#43e97b,#38f9d7)}.thesis-stat-card.warning{background:linear-gradient(135deg,#fa709a,#fee140)}.thesis-stat-card.info{background:linear-gradient(135deg,#30cfd0,#330867)}.stat-number{font-size:32px;font-weight:700;margin-bottom:8px}.stat-label{font-size:14px;opacity:.9;font-weight:500}.thesis-filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;min-width:150px}.filter-label{font-size:14px;font-weight:500;color:#495057;margin-bottom:4px}.filter-input,.filter-select{padding:8px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .2s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-input{min-width:250px}.thesis-table-container{overflow-x:auto;border-radius:8px;border:1px solid #e9ecef}.thesis-table{width:100%;border-collapse:collapse;background:#fff}.thesis-table th,.thesis-table td{padding:12px;text-align:left;border-bottom:1px solid #e9ecef}.thesis-table th{background:#f8f9fa;font-weight:600;color:#495057;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.thesis-table tbody tr:hover{background:#f8f9fa}.thesis-table tbody tr.selected{background:#e3f2fd}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-badge.draft{background:#e9ecef;color:#495057}.status-badge.published{background:#d4edda;color:#155724}.status-badge.selection{background:#cce5ff;color:#004085}.status-badge.confirmation{background:#fff3cd;color:#856404}.status-badge.completed{background:#d1ecf1;color:#0c5460}.status-badge.cancelled{background:#f8d7da;color:#721c24}.priority-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:8px;font-size:12px;font-weight:500}.priority-badge.high{background:#ffebee;color:#c62828}.priority-badge.medium{background:#fff3e0;color:#ef6c00}.priority-badge.low{background:#e8f5e8;color:#2e7d32}.action-buttons{display:flex;gap:8px}.btn-action{padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px}.btn-action.view{background:#e3f2fd;color:#1976d2}.btn-action.view:hover{background:#bbdefb}.btn-action.edit{background:#e8f5e8;color:#388e3c}.btn-action.edit:hover{background:#c8e6c9}.btn-action.delete{background:#ffebee;color:#d32f2f}.btn-action.delete:hover{background:#ffcdd2}.btn-action.primary{background:#667eea;color:#fff}.btn-action.primary:hover{background:#5a67d8}.btn-action.warning{background:#f59e0b;color:#fff}.btn-action.warning:hover{background:#d97706}.thesis-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.thesis-modal-content{background:#fff;border-radius:12px;padding:24px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.thesis-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.thesis-modal-title{font-size:20px;font-weight:600;color:#2c3e50;margin:0}.btn-close{background:none;border:none;font-size:24px;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s ease}.btn-close:hover{background:#f8f9fa;color:#495057}.thesis-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:14px;font-weight:500;color:#495057}.form-input,.form-textarea,.form-select{padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .2s ease}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-textarea{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid #e9ecef}.countdown-display{font-family:Courier New,monospace;font-weight:600;color:#2c3e50;background:#f8f9fa;padding:8px 12px;border-radius:6px;border:1px solid #e9ecef}.countdown-display.urgent{background:#ffebee;color:#c62828;border-color:#ffcdd2;animation:pulse 1s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.progress-bar{width:100%;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:#6c757d;margin-top:4px;text-align:center}.topic-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.topic-tag{background:#e9ecef;color:#495057;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.category-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}@media (max-width: 768px){.thesis-management{padding:16px}.thesis-header{flex-direction:column;align-items:flex-start;gap:16px}.thesis-stats-grid{grid-template-columns:repeat(2,1fr)}.thesis-filters{flex-direction:column;align-items:stretch}.filter-group{width:100%}.search-input{min-width:auto}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.thesis-table-container{font-size:14px}.thesis-table th,.thesis-table td{padding:8px}.action-buttons{flex-direction:column}}@media (max-width: 480px){.thesis-stats-grid{grid-template-columns:1fr}.thesis-modal-content{width:95%;padding:16px}}.thesis-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:#6c757d}.spinner{width:24px;height:24px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-right:12px}.thesis-empty-state{text-align:center;padding:60px 20px;color:#6c757d}.empty-title{font-size:18px;font-weight:600;margin-bottom:8px}.empty-description{font-size:14px;line-height:1.5;margin-bottom:24px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:16px}.info-item{padding:12px;background:#f8f9fa;border-radius:6px}.info-item label{display:block;font-size:12px;font-weight:600;color:#6c757d;text-transform:uppercase;margin-bottom:6px}.info-item div{font-size:14px;color:#2c3e50}.status-actions{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f8f9fa;border-radius:8px;margin-top:16px}.status-info{display:flex;align-items:center;gap:16px}.status-badge{padding:8px 16px;border-radius:16px;font-size:14px;font-weight:600}.status-desc{font-size:14px;color:#6c757d}.status-buttons{display:flex;gap:12px}.mt-4{margin-top:24px}.btn-sm{padding:6px 12px;font-size:13px}.topic-item,.class-item{padding:12px;margin-bottom:8px;background:#f8f9fa;border-radius:6px;transition:background .2s}.topic-item:hover,.class-item:hover{background:#e9ecef}.topic-item label,.class-item label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin:0}.topic-item input[type=checkbox],.class-item input[type=checkbox]{margin-top:4px;cursor:pointer}.alert{padding:12px 16px;border-radius:6px;margin-bottom:16px}.alert-info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.alert-warning{background-color:#fff3cd;border:1px solid #ffc107;color:#856404}.alert i{margin-right:8px}.topic-list,.class-list{max-height:500px;overflow-y:auto;border:1px solid #dee2e6;border-radius:6px;padding:12px;background:#fff}.topic-item:last-child,.class-item:last-child{margin-bottom:0}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid #dee2e6}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:20px}.stat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 12px #00000014;display:flex;align-items:center;gap:16px;transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;flex-shrink:0}.stat-label{font-size:13px;color:#6c757d;margin-bottom:4px;font-weight:500}.stat-value{font-size:28px;font-weight:700;color:#2c3e50;line-height:1}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 0}.pagination .btn-action{min-width:80px}.pagination span{color:#6c757d;font-size:14px}.thesis-table tbody tr:hover{background-color:#f8f9fa}.thesis-table .text-muted{color:#6c757d;font-size:13px}.thesis-table .mb-1{margin-bottom:4px}.status-cell{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.status-cell .status-badge{flex-shrink:0}.status-cell .btn-action.small{padding:4px 10px;font-size:12px;border-radius:4px;transition:all .2s}.status-cell .btn-action.small:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.status-cell .btn-action.secondary{background:#6c757d;color:#fff;border:1px solid #5a6268}.status-cell .btn-action.secondary:hover{background:#5a6268;border-color:#495057}.status-cell .btn-action .fa-undo{margin-right:4px}.status-cell .btn-action:hover .fa-undo{transform:rotate(-45deg);transition:transform .3s ease}.score-display{display:flex;align-items:center;gap:8px}.score-item{display:inline-flex;align-items:center;gap:6px;padding:2px 6px;border-radius:4px;font-weight:600;font-size:14px;background:transparent}.score-item.ai-score{color:#667eea}.score-item.ai-score .score-label{color:#999;font-size:11px;font-weight:500}.score-item.teacher-score{color:#2ea043}.score-item.teacher-score .score-label{color:#999;font-size:11px;font-weight:500}.score-value{font-weight:700;font-size:15px}.score-value.score-excellent{color:#28a745}.score-value.score-good{color:#17a2b8}.score-value.score-pass{color:#ffc107}.score-value.score-fail{color:#dc3545}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;padding-right:30px;transition:background-color .2s ease}.data-table th.sortable:hover{background-color:#e9ecef}.data-table th.sortable .sort-icon{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#6c757d;font-size:12px;display:inline-flex;align-items:center}.data-table th.sortable .sort-icon i{transition:transform .2s ease}.data-table .student-no{font-family:Courier New,monospace;font-weight:600;color:#495057;font-size:14px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column}.modal-container.large{max-width:1200px}.modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:10px}.modal-header h2 i{color:#3b82f6}.btn-close{background:none;border:none;font-size:20px;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.btn-close:hover{background:#f3f4f6;color:#1f2937}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.review-section{margin-bottom:32px}.review-section:last-child{margin-bottom:0}.section-title{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-item{display:flex;gap:8px}.info-item .label{font-weight:500;color:#6b7280;white-space:nowrap}.info-item .value{color:#1f2937;word-break:break-word}.score-overview{display:flex;gap:20px}.score-card{flex:1;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:12px;padding:24px;text-align:center}.score-card.primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.score-label{font-size:14px;font-weight:500;margin-bottom:12px;opacity:.9}.score-value{font-size:32px;font-weight:700}.score-value.large{font-size:48px}.score-excellent{color:#10b981}.score-good{color:#3b82f6}.score-pass{color:#f59e0b}.score-fail{color:#ef4444}.dimension-item{display:grid;grid-template-columns:120px 1fr 60px;gap:12px;align-items:center}.dimension-label{font-weight:500;color:#374151}.dimension-bar-container{background:#e5e7eb;border-radius:8px;height:24px;overflow:hidden;position:relative}.dimension-bar{height:100%;border-radius:8px;transition:width .3s ease;background:linear-gradient(90deg,#3b82f6,#2563eb)}.dimension-bar.score-excellent{background:linear-gradient(90deg,#10b981,#059669)}.dimension-bar.score-good{background:linear-gradient(90deg,#3b82f6,#2563eb)}.dimension-bar.score-pass{background:linear-gradient(90deg,#f59e0b,#d97706)}.dimension-bar.score-fail{background:linear-gradient(90deg,#ef4444,#dc2626)}.dimension-value{text-align:right;font-weight:600;font-size:16px}.comment-block{margin-bottom:20px;background:#f9fafb;border-radius:8px;padding:16px;border-left:4px solid #3b82f6}.comment-block:last-child{margin-bottom:0}.comment-title{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 12px;display:flex;align-items:center;gap:8px}.comment-title.success{color:#10b981}.comment-title.warning{color:#f59e0b}.comment-title.info{color:#3b82f6}.comment-content{color:#374151;line-height:1.6;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.modal-container{max-width:100%;max-height:100vh;border-radius:0}.score-overview{flex-direction:column}.dimension-item{grid-template-columns:100px 1fr 50px;gap:8px}.info-grid{grid-template-columns:1fr}}.modal-body .loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280}.modal-body .spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.thesis-ai-queue-panel{padding:20px}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:12px;padding:20px;display:flex;align-items:center;gap:15px;box-shadow:0 2px 8px #0000000a,0 1px 2px #0000000f;transition:all .3s ease;border:1px solid var(--modern-gray-200);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);transform:rotate(45deg);animation:shimmer 3s infinite;pointer-events:none}@keyframes shimmer{0%{transform:translate(-100%) rotate(45deg)}to{transform:translate(100%) rotate(45deg)}}.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014,0 2px 6px #0000000a;border-color:var(--modern-gray-300)}.stat-card.pending,.stat-card.processing,.stat-card.completed,.stat-card.failed,.stat-card.worker{border-left:3px solid var(--modern-primary)}.stat-icon{font-size:32px;color:var(--modern-primary);position:relative;z-index:1}.stat-content{flex:1;position:relative;z-index:1}.stat-value{font-size:28px;font-weight:700;color:var(--modern-primary);margin-bottom:4px}.stat-label{font-size:13px;color:var(--modern-gray-600);font-weight:500}.worker-status{display:inline-block;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:600}.worker-status.running{background:#d4edda;color:#155724}.worker-status.stopped{background:#f8d7da;color:#721c24}.worker-status.unknown{background:#fff3cd;color:#856404}.control-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.filter-group,.action-group{display:flex;gap:10px}.form-select{padding:8px 12px;border:1px solid var(--modern-gray-300);border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:all .3s ease}.form-select:hover{border-color:var(--modern-primary)}.form-select:focus{outline:none;border-color:var(--modern-primary);box-shadow:0 0 0 3px #007bff1a}.btn-action{padding:8px 16px;border:1px solid var(--modern-gray-300);border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease;background:#fff;color:var(--modern-primary);display:inline-flex;align-items:center;gap:6px}.btn-action:hover{background:var(--modern-gray-50);border-color:var(--modern-primary)}.btn-action.primary{background:var(--modern-primary);color:#fff;border-color:var(--modern-primary)}.btn-action.primary:hover{background:#0056b3}.btn-action.success{background:#28a745;color:#fff;border-color:#28a745}.btn-action.success:hover{background:#218838}.btn-action.warning{background:#ffc107;color:#212529;border-color:#ffc107}.btn-action.warning:hover{background:#e0a800}.btn-action.small{padding:4px 8px;font-size:12px}.btn-action:disabled{opacity:.5;cursor:not-allowed}.task-list-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.loading-state,.empty-state{padding:60px 20px;text-align:center;color:var(--modern-gray-500)}.loading-state i,.empty-state i{font-size:48px;margin-bottom:16px;display:block}.loading-state p,.empty-state p{font-size:16px;margin:0}.task-table{width:100%;border-collapse:collapse}.task-table thead{background:var(--modern-gray-50);border-bottom:2px solid var(--modern-gray-200)}.task-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:13px;color:var(--modern-gray-700);text-transform:uppercase;letter-spacing:.5px}.task-table td{padding:12px 16px;border-bottom:1px solid var(--modern-gray-200);font-size:14px}.task-table tbody tr{transition:background-color .2s ease}.task-table tbody tr:hover{background:var(--modern-gray-50)}.student-name{font-weight:600;color:var(--modern-primary)}.student-no{font-size:12px;color:var(--modern-gray-600)}.thesis-title{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.status-queued{background:#e3f2fd;color:#1976d2}.status-badge.status-processing{background:#fff3e0;color:#f57c00}.status-badge.status-retry{background:#fce4ec;color:#c2185b}.status-badge.status-completed{background:#e8f5e9;color:#388e3c}.status-badge.status-failed{background:#ffebee;color:#d32f2f}.status-badge.status-cancelled{background:#f5f5f5;color:#616161}.priority-badge{display:inline-block;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:600;background:var(--modern-gray-100);color:var(--modern-primary);border:1px solid var(--modern-gray-300)}.task-actions{display:flex;gap:5px}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:20px;border-top:1px solid var(--modern-gray-200)}.btn-page{padding:8px 16px;border:1px solid var(--modern-gray-300);border-radius:6px;background:#fff;color:var(--modern-primary);cursor:pointer;transition:all .3s ease}.btn-page:hover:not(:disabled){background:var(--modern-primary);color:#fff;border-color:var(--modern-primary)}.btn-page:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:14px;color:var(--modern-gray-600)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--modern-gray-200)}.modal-header h3{margin:0;font-size:20px;color:var(--modern-primary)}.btn-close{background:none;border:none;font-size:20px;color:var(--modern-gray-500);cursor:pointer;padding:4px 8px;transition:color .2s ease}.btn-close:hover{color:var(--modern-primary)}.modal-body{padding:24px;overflow-y:auto}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 16px;font-size:16px;color:var(--modern-primary);border-bottom:2px solid var(--modern-gray-200);padding-bottom:8px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-size:12px;color:var(--modern-gray-600);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detail-item span{font-size:14px;color:var(--modern-primary)}@media (max-width: 1200px){.stats-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.stats-cards{grid-template-columns:repeat(2,1fr)}.control-bar{flex-direction:column;gap:15px}.filter-group,.action-group{width:100%;flex-wrap:wrap}.detail-grid{grid-template-columns:1fr}}@media (max-width: 480px){.stats-cards{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f0f2f5;min-height:100vh;color:#333}.app-container{min-height:100vh;display:flex;flex-direction:column}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 2rem;box-shadow:0 2px 20px #0000001a;display:flex;justify-content:space-between;align-items:center}.header h1{color:#1890ff;font-size:1.8rem;font-weight:700}.header .user-info{display:flex;align-items:center;gap:1rem}.main-content{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:3rem;border-radius:20px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:400px}.login-card h2{text-align:center;margin-bottom:2rem;color:#1890ff;font-size:2rem}.nav-tabs{display:flex;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:.5rem;margin-bottom:2rem;box-shadow:0 10px 30px #0000001a;overflow-x:auto}.nav-tab{flex:1;padding:1rem 1.5rem;text-align:center;cursor:pointer;border-radius:10px;transition:all .3s ease;white-space:nowrap;font-weight:500;min-width:120px}.nav-tab:hover{background:#1890ff1a;transform:translateY(-2px)}.nav-tab.active{background:#1890ff;color:#fff;box-shadow:0 5px 15px #1890ff4d}.content-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;box-shadow:0 20px 40px #0000001a;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#555}.form-control{width:100%;padding:.75rem 1rem;border:2px solid #e1e5e9;border-radius:10px;font-size:1rem;transition:all .3s ease;background:#fff}.form-control:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 3px #1890ff1a}.btn{padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;margin-right:.5rem;margin-bottom:.5rem}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-primary{background:#1890ff;color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.btn-success{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #28a74566}.btn-danger{background:linear-gradient(135deg,#dc3545,#e83e8c);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #dc354566}.btn-outline{background:transparent;border:2px solid #1890ff;color:#1890ff}.btn-outline:hover:not(:disabled){background:#1890ff;color:#fff}.table-container{overflow-x:auto;border-radius:15px;box-shadow:0 10px 30px #0000001a}.table{width:100%;border-collapse:collapse;background:#fff}.table th{background:#fafafa;color:#262626;padding:1rem;text-align:left;border-bottom:2px solid #e8e8e8;font-weight:600}.table td{padding:1rem;border-bottom:1px solid #e1e5e9}.table tr:hover{background:#667eea0d}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ai-grade-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ai-grade-enabled{background:#1890ff;color:#fff;box-shadow:0 2px 4px #1890ff4d}.ai-grade-disabled{background:#6c757d1a;color:#6c757d;border:1px solid rgba(108,117,125,.2)}.status-active{background:#28a7451a;color:#28a745}.status-inactive{background:#dc35451a;color:#dc3545}.status-open{background:#17a2b81a;color:#17a2b8}.status-closed{background:#ffc1071a;color:#ffc107}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:20px;text-align:center;box-shadow:0 10px 30px #0000001a;transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px)}.stat-number{font-size:3rem;font-weight:700;color:#1890ff}.stat-label{color:#666;font-weight:600;margin-top:.5rem}.alert{padding:1rem 1.5rem;border-radius:10px;margin-bottom:1rem;font-weight:500}.alert-success{background:#28a7451a;color:#28a745;border:1px solid rgba(40,167,69,.2)}.alert-error{background:#dc35451a;color:#dc3545;border:1px solid rgba(220,53,69,.2)}.loading{display:flex;justify-content:center;align-items:center;padding:2rem}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #1890ff;border-radius:50%;animation:spin 1s linear infinite}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.notification-container{position:fixed;top:20px;right:20px;z-index:9999}.notification-item{margin-bottom:10px;cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:flex-start;z-index:1000;padding:0;box-sizing:border-box;overflow-y:auto}.modal-content{background:#fff;border-radius:20px;padding:2rem;max-width:600px;width:90%;max-height:none;overflow-y:visible;box-shadow:0 20px 40px #0003;margin:0 20px 20px}.modal-content h3{margin-bottom:1.5rem;color:#1890ff;text-align:center}.modal-content textarea{resize:vertical;min-height:80px}@media (max-width: 768px){.main-content{padding:1rem}.header{padding:1rem;flex-direction:column;gap:1rem}.nav-tabs{flex-direction:column}.nav-tab{min-width:auto}.modal-content{margin:1rem;width:calc(100% - 2rem)}}.vue-progress-bar{display:flex;align-items:center;width:100%}.progress-track{flex:1;position:relative;border-radius:100px;overflow:hidden}.progress-bar{height:100%;border-radius:inherit;position:relative;overflow:hidden;transition:width .6s ease}.progress-text{white-space:nowrap;font-size:14px;color:#606266;line-height:1}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.hardware-progress-container{background:linear-gradient(145deg,#2c3e50,#34495e);border-radius:12px;padding:16px;margin:8px 0;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a,inset 0 -1px #0003;border:1px solid #4a5568;position:relative;overflow:hidden}.hardware-progress-container:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:scan 3s infinite}@keyframes scan{0%{left:-100%}to{left:100%}}.hardware-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.performance-label{color:#ecf0f1;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.performance-label i{color:#3498db;font-size:16px}.performance-value{display:flex;align-items:center;gap:8px}.score-number{color:#ecf0f1;font-size:24px;font-weight:700;font-family:Courier New,monospace;text-shadow:0 0 10px rgba(255,255,255,.3)}.score-unit{color:#bdc3c7;font-size:12px;font-weight:500}.rank-badge{background:linear-gradient(45deg,#e74c3c,#c0392b);color:#fff;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;box-shadow:0 2px 8px #e74c3c4d}.rank-badge.rank-legendary{background:linear-gradient(45deg,#ff6b35,#f7931e);box-shadow:0 2px 8px #ff6b3566}.rank-badge.rank-excellent{background:linear-gradient(45deg,#00d4aa,#00a8cc);box-shadow:0 2px 8px #00d4aa66}.rank-badge.rank-good{background:linear-gradient(45deg,#4ecdc4,#44a08d);box-shadow:0 2px 8px #4ecdc466}.hardware-progress-track{height:32px;border-radius:16px;position:relative;overflow:hidden;margin:8px 0}.hardware-progress-bar{height:100%;border-radius:16px;position:relative;overflow:hidden;min-width:2px}.progress-shine{position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.3) 0%,transparent 100%);border-radius:16px 16px 0 0}.progress-segments{position:absolute;top:0;left:0;right:0;bottom:0;display:flex}.progress-segments .segment{flex:1;border-right:1px solid rgba(255,255,255,.2);height:100%}.progress-segments .segment:last-child{border-right:none}.progress-markers{position:absolute;top:-4px;left:0;right:0;height:40px;pointer-events:none}.progress-markers .marker{position:absolute;width:2px;height:8px;background:#fff6;border-radius:1px;transform:translate(-50%)}.hardware-progress-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.performance-level{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.performance-level.legendary{color:#ff6b35;text-shadow:0 0 8px rgba(255,107,53,.5)}.performance-level.excellent{color:#00d4aa;text-shadow:0 0 8px rgba(0,212,170,.5)}.performance-level.good{color:#4ecdc4;text-shadow:0 0 8px rgba(78,205,196,.5)}.performance-level.average{color:#ffd93d;text-shadow:0 0 8px rgba(255,217,61,.5)}.performance-level.poor{color:#ff6b6b;text-shadow:0 0 8px rgba(255,107,107,.5)}.percentage-display{color:#ecf0f1;font-size:16px;font-weight:700;font-family:Courier New,monospace;text-shadow:0 0 8px rgba(255,255,255,.3)}.hardware-leaderboard{padding:2rem}.leaderboard-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.leaderboard-item{display:flex;align-items:center;padding:1rem;border-bottom:1px solid #eee;transition:background-color .2s}.leaderboard-item:hover{background-color:#f8f9fa}.leaderboard-item.top-performer{background:linear-gradient(135deg,#fff3cd,#fff)}.rank-badge{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:1rem;flex-shrink:0}.rank-badge.rank-1{background:linear-gradient(135deg,gold,#ffed4e);color:#b8860b;font-size:1.2rem}.rank-badge.rank-2{background:linear-gradient(135deg,silver,#e8e8e8);color:#666;font-size:1.1rem}.rank-badge.rank-3{background:linear-gradient(135deg,#cd7f32,#daa520);color:#8b4513;font-size:1.1rem}.rank-badge:not(.rank-1):not(.rank-2):not(.rank-3){background:#f8f9fa;color:#666;border:2px solid #dee2e6}.student-info{flex:1;margin-right:1rem}.student-name{font-weight:700;font-size:1.1rem;margin-bottom:.25rem}.student-details{color:#666;font-size:.9rem}.performance-info{flex:2;margin-right:1rem}.score-bar-container{display:flex;align-items:center;gap:.5rem}.score-label{font-weight:700;color:#333;min-width:60px;text-align:right}.leaderboard-item .vue-progress-bar{flex:1;max-width:200px;min-width:150px}.leaderboard-item .progress-track{background:#e9ecef;border-radius:10px;box-shadow:inset 0 1px 2px #0000001a}.leaderboard-item .progress-bar{background:linear-gradient(90deg,currentColor,rgba(255,255,255,.2));border-radius:10px;box-shadow:0 1px 2px #0000001a}.score-bar{flex:1;height:20px;background:#e9ecef;border-radius:10px;overflow:hidden;position:relative}.score-fill{height:100%;border-radius:10px;transition:width .3s ease;background:linear-gradient(90deg,currentColor,rgba(255,255,255,.2))}.runtime-label{color:#666;font-size:.9rem;min-width:50px}.submission-time{color:#666;font-size:.85rem;text-align:right;min-width:120px}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.8rem;font-weight:500;text-align:center;white-space:nowrap}.status-pending{background-color:#e3f2fd;color:#1976d2;border:1px solid #bbdefb}.status-active{background-color:#e8f5e8;color:#2e7d32;border:1px solid #c8e6c9}.status-inactive{background-color:#ffebee;color:#c62828;border:1px solid #ffcdd2}.status-success{background-color:#e8f5e8;color:#1b5e20;border:1px solid #a5d6a7}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;overflow-y:auto;background-color:#00000080;display:flex;justify-content:center;align-items:flex-start;z-index:1000}.modal{background:#fff;border-radius:.5rem;box-shadow:0 10px 30px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{padding:1.5rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;color:#333}.modal-body{padding:1.5rem}.modal-footer{padding:1.5rem;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;gap:1rem}.text-success{color:#28a745!important}.text-warning{color:#ffc107!important}.text-danger{color:#dc3545!important}.text-info{color:#17a2b8!important}.text-muted{color:#6c757d!important}.btn-sm{padding:.25rem .5rem;font-size:.8rem;border-radius:.25rem}.ai-comment-preview{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;border-radius:4px;background:#17a2b81a;border:1px solid rgba(23,162,184,.2);transition:all .2s ease}.ai-comment-preview:hover{background:#17a2b833;border-color:#17a2b866;transform:translateY(-1px)}.ai-comment-preview i{color:#17a2b8}.ai-comment-preview span{font-size:.85rem;color:#17a2b8}.ai-score{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500;background:#17a2b81a;color:#17a2b8}.ai-score i{font-size:.7rem}.tabs-nav{display:flex;gap:0;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.tab-button{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#666;font-size:15px;font-weight:500;cursor:pointer;transition:all .3s;position:relative;bottom:-2px}.tab-button:hover{color:#4caf50;background-color:#4caf500d}.tab-button.active{color:#4caf50;border-bottom-color:#4caf50;font-weight:600}.tab-button i{margin-right:6px}.modal-large{max-width:1000px;width:95%;max-height:none;overflow-y:visible;margin-top:0;margin-bottom:20px}@media (max-width: 768px){.modal{width:95%;margin:1rem}.modal-large{max-width:95%}.tabs-nav{overflow-x:auto}.tab-button{padding:10px 16px;font-size:14px;white-space:nowrap}.ai-comment-preview{font-size:.8rem;padding:.2rem .4rem}}.thesis-ai-dashboard,.thesis-ai-review-management,.thesis-ai-review-detail,.thesis-ai-model-settings{max-width:1400px;margin:0 auto;padding:20px}.dashboard-header,.management-header,.settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.page-title{font-size:28px;font-weight:700;color:#2c3e50;margin:0 0 8px;display:flex;align-items:center;gap:12px}.page-title i{color:#3498db}.header-actions{display:flex;gap:12px;align-items:center}.filter-group{display:flex;gap:12px}.form-select,.form-input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s ease}.form-select:focus,.form-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #00000014;border:1px solid #f0f0f0;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.stat-card.blue{border-left:4px solid #3498db}.stat-card.green{border-left:4px solid #27ae60}.stat-card.orange{border-left:4px solid #f39c12}.stat-card.purple{border-left:4px solid #9b59b6}.stat-number{font-size:36px;font-weight:700;color:#2c3e50;line-height:1;margin-bottom:4px}.stat-label{font-size:14px;color:#7f8c8d;font-weight:500}.stat-change{font-size:12px;font-weight:600;margin-top:8px;padding:2px 6px;border-radius:12px;display:inline-block}.stat-change.positive{color:#27ae60;background:#27ae601a}.stat-change.negative{color:#e74c3c;background:#e74c3c1a}.stat-change.neutral{color:#95a5a6;background:#95a5a61a}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.chart-card,.analysis-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #00000014;border:1px solid #f0f0f0}.chart-header,.analysis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-title,.analysis-title{font-size:16px;font-weight:600;color:#2c3e50;margin:0}.btn-icon{background:none;border:none;color:#95a5a6;cursor:pointer;padding:4px;border-radius:4px;transition:color .3s ease}.btn-icon:hover{color:#3498db}.progress-overview{display:flex;align-items:center;gap:30px}.progress-ring-container{position:relative;width:120px;height:120px}.progress-ring{transform:rotate(-90deg)}.progress-ring-bg{fill:none;stroke:#f0f0f0;stroke-width:8}.progress-ring-fill{fill:none;stroke:#3498db;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .3s ease}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.progress-percentage{font-size:24px;font-weight:700;color:#2c3e50}.progress-label{font-size:12px;color:#95a5a6;margin-top:4px}.progress-details{flex:1;display:flex;flex-direction:column;gap:12px}.progress-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f8f9fa;border-radius:6px}.progress-label{font-size:14px;color:#7f8c8d}.progress-value{font-weight:600;color:#2c3e50}.score-distribution{display:flex;flex-direction:column;gap:12px}.score-bar{display:flex;align-items:center;gap:12px}.score-label{font-size:14px;color:#7f8c8d;min-width:60px}.score-bar-container{flex:1;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.score-bar-fill{height:100%;background:linear-gradient(90deg,#e74c3c,#f39c12,#27ae60);transition:width .3s ease}.score-count{font-weight:600;color:#2c3e50;min-width:30px;text-align:right}.dimension-scores{display:flex;flex-direction:column;gap:16px}.dimension-item{display:flex;flex-direction:column;gap:8px}.dimension-header{display:flex;justify-content:space-between;align-items:center}.dimension-name{font-size:14px;color:#2c3e50;font-weight:500}.dimension-score{font-weight:700;padding:2px 8px;border-radius:12px;font-size:12px}.dimension-score.excellent{color:#27ae60;background:#27ae601a}.dimension-score.good{color:#f39c12;background:#f39c121a}.dimension-score.pass{color:#3498db;background:#3498db1a}.dimension-score.fail{color:#e74c3c;background:#e74c3c1a}.dimension-bar{height:6px;background:#f0f0f0;border-radius:3px;overflow:hidden}.dimension-fill{height:100%;transition:width .3s ease}.dimension-fill.excellent{background:#27ae60}.dimension-fill.good{background:#f39c12}.dimension-fill.pass{background:#3498db}.dimension-fill.fail{background:#e74c3c}.model-stats{display:flex;flex-direction:column;gap:12px}.model-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f8f9fa;border-radius:6px;border:1px solid #f0f0f0}.model-info{display:flex;flex-direction:column;gap:4px}.model-name{font-weight:600;color:#2c3e50}.model-usage{font-size:12px;color:#7f8c8d}.model-performance{text-align:right}.performance-label{font-size:12px;color:#7f8c8d}.performance-score{font-weight:700;font-size:14px;padding:2px 6px;border-radius:10px}.performance-score.high{color:#27ae60;background:#27ae601a}.performance-score.medium{color:#f39c12;background:#f39c121a}.performance-score.low{color:#e74c3c;background:#e74c3c1a}.stats-bar{display:flex;gap:30px;margin-bottom:20px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0}.stat-item{text-align:center}.stat-item .stat-label{font-size:12px;color:#7f8c8d;margin-bottom:4px}.stat-item .stat-value{font-size:24px;font-weight:700;color:#2c3e50}.stat-item .stat-value.success{color:#27ae60}.stat-item .stat-value.info{color:#3498db}.submissions-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #f0f0f0;overflow:hidden}.table-actions{padding:16px 20px;background:#f8f9fa;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#2c3e50}.selection-info{font-size:14px;color:#3498db;font-weight:500}.data-table-wrapper{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{background:#f8f9fa;padding:12px 16px;text-align:left;font-weight:600;color:#2c3e50;border-bottom:1px solid #f0f0f0;white-space:nowrap}.data-table td{padding:12px 16px;border-bottom:1px solid #f0f0f0;vertical-align:top}.data-table tr:hover{background:#f8f9fa}.data-table tr.selected{background:#3498db0d}.student-info{display:flex;flex-direction:column;gap:2px}.student-name{font-weight:600;color:#2c3e50}.student-details{font-size:12px;color:#7f8c8d}.thesis-info{display:flex;flex-direction:column;gap:4px;max-width:300px}.thesis-title{font-weight:500;color:#2c3e50;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.thesis-topic{font-size:12px;color:#7f8c8d}.file-info{display:flex;flex-direction:column;gap:2px}.file-name{font-size:13px;color:#2c3e50;font-weight:500}.file-size{font-size:12px;color:#7f8c8d}.status-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.status-badge.primary{background:#3498db1a;color:#3498db}.status-badge.success{background:#27ae601a;color:#27ae60}.status-badge.warning{background:#f39c121a;color:#f39c12}.status-badge.danger{background:#e74c3c1a;color:#e74c3c}.status-badge.info{background:#3498db1a;color:#3498db}.status-badge.secondary{background:#95a5a61a;color:#95a5a6}.score-display{display:flex;flex-direction:column;gap:4px;align-items:center}.score-value{font-weight:700;font-size:16px;padding:4px 8px;border-radius:8px}.score-value.excellent{color:#27ae60;background:#27ae601a}.score-value.good{color:#f39c12;background:#f39c121a}.score-value.pass{color:#3498db;background:#3498db1a}.score-value.fail{color:#e74c3c;background:#e74c3c1a}.score-confidence{font-size:11px;color:#7f8c8d}.final-score .score-value{font-size:18px}.progress-bar-small{width:100%;height:4px;background:#f0f0f0;border-radius:2px;overflow:hidden;margin-top:4px}.progress-fill{height:100%;background:#3498db;transition:width .3s ease}.action-buttons{display:flex;gap:4px}.btn-action{padding:6px 10px;border:1px solid #ddd;background:#fff;color:#7f8c8d;border-radius:4px;cursor:pointer;font-size:12px;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px}.btn-action:hover{background:#f8f9fa;color:#2c3e50;border-color:#bbb}.btn-action.primary{background:#3498db;color:#fff;border-color:#3498db}.btn-action.primary:hover{background:#2980b9;border-color:#2980b9}.btn-action.success{background:#27ae60;color:#fff;border-color:#27ae60}.btn-action.success:hover{background:#229954;border-color:#229954}.btn-action.view:hover{color:#3498db;border-color:#3498db}.btn-action.edit:hover{color:#f39c12;border-color:#f39c12}.btn-action.delete:hover{color:#e74c3c;border-color:#e74c3c}.btn-action.download:hover{color:#27ae60;border-color:#27ae60}.btn-action.retry:hover{color:#9b59b6;border-color:#9b59b6}.pagination-wrapper{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f8f9fa;border-top:1px solid #f0f0f0}.pagination-info{font-size:14px;color:#7f8c8d}.pagination{display:flex;gap:4px}.btn-pagination{padding:6px 12px;border:1px solid #ddd;background:#fff;color:#7f8c8d;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s ease;min-width:36px}.btn-pagination:hover:not(:disabled){background:#f8f9fa;color:#2c3e50}.btn-pagination.active{background:#3498db;color:#fff;border-color:#3498db}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#7f8c8d}.spinner{width:32px;height:32px;border:3px solid #f0f0f0;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#7f8c8d}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state h3{margin:0 0 8px;color:#95a5a6}@media (max-width: 1200px){.charts-grid{grid-template-columns:1fr}.header-actions{flex-direction:column;gap:12px;align-items:stretch}.filter-group{flex-wrap:wrap}}@media (max-width: 768px){.thesis-ai-dashboard,.thesis-ai-review-management{padding:16px}.dashboard-header,.management-header{flex-direction:column;gap:16px;align-items:stretch}.stats-grid{grid-template-columns:1fr}.stats-bar{flex-wrap:wrap;gap:16px}.data-table{font-size:12px}.data-table th,.data-table td{padding:8px}.action-buttons{flex-direction:column;gap:2px}.pagination-wrapper{flex-direction:column;gap:16px;text-align:center}}.settings-tabs{margin-bottom:30px}.tab-nav{display:flex;gap:4px;border-bottom:2px solid #f0f0f0;padding:0 12px}.tab-btn{padding:12px 20px;border:none;background:none;color:#7f8c8d;font-size:14px;font-weight:500;cursor:pointer;border-radius:8px 8px 0 0;transition:all .3s ease;display:flex;align-items:center;gap:8px}.tab-btn:hover{color:#2c3e50;background:#3498db0d}.tab-btn.active{color:#3498db;background:#3498db1a;border-bottom:2px solid #3498db}.tab-content{min-height:400px}.models-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.model-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 12px #00000014;border:1px solid #f0f0f0;transition:all .3s ease;position:relative}.model-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.model-card.inactive{opacity:.7;background:#f8f9fa}.model-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.model-name{font-size:16px;font-weight:600;color:#2c3e50;margin:0 0 4px}.model-type{font-size:12px;color:#7f8c8d;background:#f0f0f0;padding:2px 6px;border-radius:10px}.model-details{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.model-spec{display:flex;justify-content:space-between;font-size:13px}.model-spec label{color:#7f8c8d}.model-spec span{color:#2c3e50;font-weight:500}.model-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;padding:12px;background:#f8f9fa;border-radius:6px}.model-stats .stat-item{text-align:center}.model-stats .stat-label{font-size:11px;color:#7f8c8d;display:block;margin-bottom:2px}.model-stats .stat-value{font-size:14px;font-weight:600;color:#2c3e50}.model-actions{display:flex;gap:8px;justify-content:flex-end}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.slider{background-color:#3498db}input:checked+.slider:before{transform:translate(20px)}.thesis-ai-settings-container{padding:20px;max-width:1400px;margin:0 auto}.thesis-ai-settings-container .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--border-color, #e0e0e0)}.thesis-ai-settings-container .page-header h1{font-size:28px;color:var(--text-primary, #333);margin:0}.thesis-ai-settings-container .page-header h1 i{margin-right:10px;color:var(--primary-color, #1976d2)}.thesis-ai-settings-container .header-actions{display:flex;gap:10px}.settings-list{display:grid;gap:20px}.setting-card{background:#fff;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;padding:20px;transition:all .3s ease}.setting-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.setting-card.active{border-color:var(--success-color, #4caf50);background:linear-gradient(to right,#f1f8f4,#fff)}.setting-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.setting-info h3{font-size:20px;color:var(--text-primary, #333);margin:0 0 8px}.setting-description{color:var(--text-secondary, #666);margin:0;font-size:14px}.setting-badges{display:flex;gap:8px}.badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.badge-success{background:var(--success-color, #4caf50);color:#fff}.badge-info{background:var(--info-color, #2196f3);color:#fff}.badge i{margin-right:4px}.setting-details{margin:15px 0;padding:15px;background:var(--bg-light, #f9f9f9);border-radius:6px}.detail-item{margin-bottom:12px}.detail-item:last-child{margin-bottom:0}.detail-item label{display:block;font-weight:600;color:var(--text-primary, #333);margin-bottom:8px;font-size:14px}.dimensions-list,.options-list{display:flex;flex-wrap:wrap;gap:8px}.dimension-tag,.option-tag{display:inline-block;padding:6px 12px;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:13px;color:var(--text-primary, #333)}.dimension-tag{border-left:3px solid var(--primary-color, #1976d2)}.option-tag{border-left:3px solid var(--warning-color, #ff9800)}.setting-actions{display:flex;gap:8px;margin-top:15px;padding-top:15px;border-top:1px solid var(--border-color, #e0e0e0)}.btn-action{padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.btn-action:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.btn-action.view{background:var(--info-color, #2196f3);color:#fff}.btn-action.edit{background:var(--warning-color, #ff9800);color:#fff}.btn-action.activate{background:var(--success-color, #4caf50);color:#fff}.btn-action.delete{background:var(--danger-color, #f44336);color:#fff}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary, #666)}.empty-icon{font-size:64px;color:var(--border-color, #e0e0e0);margin-bottom:20px}.empty-state h3{font-size:20px;margin:0 0 10px;color:var(--text-primary, #333)}.empty-state p{margin:0;font-size:14px}.settings-modal{margin-top:40px;margin-bottom:40px}.settings-modal .modal-body{max-height:calc(100vh - 200px);overflow-y:auto;padding:0}.settings-section{padding:24px;border-bottom:1px solid var(--border-color, #e0e0e0)}.settings-section:last-child{border-bottom:none}.section-title{font-size:16px;font-weight:600;color:var(--text-primary, #333);margin:0 0 20px;display:flex;align-items:center;gap:8px}.section-title i{color:var(--primary-color, #1976d2);font-size:18px}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-weight:600;margin-bottom:8px;color:var(--text-primary, #333);font-size:14px}.form-group .required{color:var(--danger-color, #f44336)}.form-control{width:100%;padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:14px;transition:border-color .2s ease;box-sizing:border-box}.form-control:focus{outline:none;border-color:var(--primary-color, #1976d2);box-shadow:0 0 0 3px #1976d21a}textarea.form-control{min-height:80px;resize:vertical;font-family:inherit}.prompt-textarea{font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.6}.form-text{display:block;margin-top:6px;font-size:12px;color:var(--text-secondary, #666)}.dimensions-config{border:1px solid var(--border-color, #e0e0e0);border-radius:6px;overflow:hidden;background:#fff}.dimension-item{display:grid;grid-template-columns:40px 1fr 150px;gap:15px;align-items:start;padding:15px;border-bottom:1px solid var(--border-color, #e0e0e0);background:#fff;transition:background .2s ease}.dimension-item:last-child{border-bottom:none}.dimension-item:hover{background:var(--bg-light, #f9f9f9)}.dimension-checkbox{display:flex;align-items:center;justify-content:center;padding-top:8px}.dimension-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.dimension-info{display:flex;flex-direction:column;gap:8px}.dimension-info label{font-weight:600;font-size:14px;color:var(--text-primary, #333);margin:0;cursor:pointer}.dimension-desc{width:100%;padding:6px 10px;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:13px;color:var(--text-secondary, #666)}.dimension-desc:disabled{background:var(--bg-light, #f5f5f5);color:var(--text-tertiary, #999)}.dimension-weight{display:flex;align-items:center;gap:8px;padding-top:8px}.weight-input{width:80px;padding:6px 10px;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;text-align:right;font-size:14px}.weight-input:disabled{background:var(--bg-light, #f5f5f5);color:var(--text-tertiary, #999)}.weight-input:focus{outline:none;border-color:var(--primary-color, #1976d2)}.weight-percent{color:var(--text-secondary, #666);font-size:13px;font-weight:500;min-width:40px}.extra-options-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.option-checkbox{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--bg-light, #f9f9f9);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;cursor:pointer;transition:all .2s ease}.option-checkbox:hover{background:#fff;border-color:var(--primary-color, #1976d2);box-shadow:0 2px 4px #0000000d}.option-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;flex-shrink:0}.option-checkbox span{margin:0;cursor:pointer;font-weight:400;font-size:14px;color:var(--text-primary, #333)}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.btn:active{transform:translateY(0)}.btn-primary{background:var(--primary-color, #1976d2);color:#fff}.btn-primary:hover{background:#1565c0}.btn-secondary{background:var(--bg-light, #f5f5f5);color:var(--text-primary, #333);border:1px solid var(--border-color, #e0e0e0)}.btn-secondary:hover{background:var(--border-color, #e0e0e0)}.btn-action.warning{background:var(--warning-color, #ff9800);color:#fff}.thesis-ai-review-model-selector{max-width:1200px;margin:0 auto;padding:24px}.settings-header{margin-bottom:32px;padding-bottom:16px;border-bottom:2px solid #e8e8e8}.settings-header h3{font-size:20px;margin-bottom:8px;color:#262626;font-weight:600}.settings-description{color:#8c8c8c;font-size:14px;margin:0;line-height:1.6}.loading-state{text-align:center;padding:60px 20px}.spinner{border:3px solid #f5f5f5;border-top:3px solid #1890ff;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.model-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:16px;margin-bottom:24px}.model-option{border:1px solid #d9d9d9;border-radius:8px;padding:20px;cursor:pointer;transition:all .2s ease;background:#fff;position:relative}.model-option:hover{border-color:#1890ff;box-shadow:0 2px 8px #1890ff1f}.model-option.active{border-color:#1890ff;background:#f0f5ff;box-shadow:0 2px 8px #1890ff26}.model-option.recommended{border-color:#52c41a}.model-option.recommended:hover,.model-option.recommended.active{border-color:#52c41a;box-shadow:0 2px 8px #52c41a26}.model-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.model-header input[type=radio]{width:18px;height:18px;cursor:pointer}.model-header strong{font-size:16px;color:#262626;flex:1}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-recommended{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.badge-current{background:#e6f7ff;color:#1890ff;border:1px solid #91d5ff}.model-name{font-size:14px;color:#595959;margin-bottom:8px;font-family:Courier New,monospace}.model-description{font-size:14px;color:#8c8c8c;line-height:1.6;margin-bottom:16px}.model-stats{display:flex;gap:16px;margin-bottom:12px;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:6px;font-size:13px}.stat-icon{font-size:16px}.stat-label{color:#8c8c8c}.stat-value{color:#262626;font-weight:500}.model-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.feature{background:#fafafa;padding:4px 12px;border-radius:4px;font-size:13px;color:#595959}.model-use-cases{margin-top:16px;padding-top:12px;border-top:1px solid #f0f0f0}.use-cases-title{font-size:13px;color:#595959;margin-bottom:8px;font-weight:500}.use-cases-list{margin:0;padding-left:20px;list-style-type:disc}.use-cases-list li{font-size:13px;color:#8c8c8c;margin-bottom:4px}.settings-actions{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #e8e8e8}.btn-primary{background:#1890ff;color:#fff;border:none;padding:10px 24px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease;font-weight:500}.btn-primary:hover:not(:disabled){background:#40a9ff}.btn-primary:disabled{background:#d9d9d9;cursor:not-allowed}.btn-secondary{background:#fff;color:#595959;border:1px solid #d9d9d9;padding:10px 24px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease;font-weight:500}.btn-secondary:hover:not(:disabled){color:#262626;border-color:#1890ff}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.message{margin-top:24px;padding:12px 16px;border-radius:6px;font-size:14px}.message.success{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.message.error{background:#fff2f0;color:#ff4d4f;border:1px solid #ffccc7}.message.info{background:#e6f7ff;color:#1890ff;border:1px solid #91d5ff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.stat-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff}.stat-icon.bg-blue{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-icon.bg-green{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-icon.bg-orange{background:linear-gradient(135deg,#fa709a,#fee140)}.stat-icon.bg-purple{background:linear-gradient(135deg,#30cfd0,#330867)}.stat-content{flex:1}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.progress-bar{width:100px;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);transition:width .3s ease}.badge{display:inline-block;padding:.25rem .75rem;font-size:.875rem;font-weight:500;border-radius:12px;white-space:nowrap}.badge-primary{background:#e3f2fd;color:#1976d2}.badge-success{background:#e8f5e9;color:#388e3c}.badge-warning{background:#fff3e0;color:#f57c00}.badge-danger{background:#ffebee;color:#d32f2f}.badge-info{background:#e1f5fe;color:#0288d1}.badge-secondary{background:#f5f5f5;color:#757575}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary)}.empty-state i{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state p{margin-bottom:1rem;font-size:1rem}.form-select{padding:.5rem 2rem .5rem .75rem;border:1px solid var(--border-color);border-radius:6px;background:#fff;font-size:.875rem;cursor:pointer;min-width:200px}.form-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4299e11a}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.progress-bar{width:60px}}.grade-parts{display:flex;flex-direction:column;gap:20px;margin:20px 0}.grade-part{border:1px solid #ddd;border-radius:8px;padding:20px;background:#f9f9f9}.grade-part h4{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px;font-size:16px;color:#333}.weight-input{display:flex;align-items:center;gap:10px;font-size:14px}.weight-input input{display:inline-block}.grade-part .help-text{margin:0 0 15px;font-size:13px;color:#666;font-style:italic}.checkbox-list{max-height:300px;overflow-y:auto;border:1px solid #ddd;border-radius:4px;padding:10px;background:#fff}.checkbox-item{padding:8px 10px;border-bottom:1px solid #eee}.checkbox-item:last-child{border-bottom:none}.checkbox-item label{display:flex;align-items:center;cursor:pointer;margin:0;font-weight:400}.checkbox-item input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer}.checkbox-item span{flex:1;font-size:14px}.checkbox-item .question-id{flex:none;font-size:12px;color:#999;margin-left:10px}.selection-count{text-align:center;padding:10px;background:#e7f3ff;border-radius:4px;margin:10px 0 0;font-size:14px;color:#06c;font-weight:700}.empty-hint{text-align:center;padding:20px;color:#999;font-style:italic}.weight-details{background:#f5f5f5;padding:15px;border-radius:4px}.weight-details p{margin:5px 0;font-size:14px}.weight-details .total-weight{margin-top:10px;padding-top:10px;border-top:2px solid #ddd;font-size:16px}.weight-details strong{color:#06c;min-width:50px;display:inline-block;text-align:right}.warning-text{color:#f60;font-size:13px;margin-left:10px}@media (max-width: 768px){.grade-part{padding:15px}.grade-part h4{flex-direction:column;align-items:flex-start;gap:10px}.checkbox-list{max-height:200px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-width:900px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.large-modal{max-width:1200px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #ddd}.modal-header h3{margin:0;font-size:18px;color:#333}.modal-body{flex:1;overflow-y:auto;padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #ddd}.attendance-info{background:#f5f5f5;padding:15px;border-radius:4px;margin-bottom:20px}.attendance-info p{margin:5px 0;font-size:14px}.attendance-info .badge{display:inline-block;background:#06c;color:#fff;padding:4px 10px;border-radius:4px;margin-right:8px;font-size:13px}.students-table-wrapper{overflow-x:auto;border:1px solid #ddd;border-radius:4px}.students-table-wrapper .data-table{margin:0;min-width:600px}.students-table-wrapper .data-table th{position:sticky;top:0;background:#f8f9fa;z-index:10}.students-table-wrapper .data-table td{padding:8px}.score-input{width:100px;min-width:80px;text-align:center}.score-input:focus{border-color:#06c;box-shadow:0 0 0 2px #06c3;outline:none}.score-items{display:flex;flex-direction:column;gap:15px}.score-item{border:1px solid #ddd;border-radius:4px;padding:15px;background:#fff}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-weight:700;color:#333}.form-row{display:flex;gap:15px}.score-items button{margin-top:10px}.modal-content .data-table{font-size:14px}.modal-content .data-table thead{background:#f8f9fa}.modal-content .data-table tbody tr:hover{background:#f9f9f9}.modal-content .data-table td,.modal-content .data-table th{border:1px solid #ddd}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/admin/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/admin/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/admin/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/admin/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/admin/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/admin/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/admin/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/admin/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/admin/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/admin/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/admin/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/admin/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/admin/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/admin/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/admin/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/admin/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/admin/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/admin/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/admin/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/admin/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/admin/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/admin/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/admin/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/admin/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/admin/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/admin/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/admin/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/admin/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/admin/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/admin/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/admin/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/admin/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/admin/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/admin/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/admin/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/admin/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/admin/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/admin/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/admin/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/admin/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/admin/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/admin/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/admin/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/admin/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/admin/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/admin/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/admin/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/admin/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/admin/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/admin/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.login-stage[data-v-503ab90a]{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;overflow:hidden;background:linear-gradient(135deg,#eef2ff,#e8eafe 45%,#f3f0ff)}.bg[data-v-503ab90a]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.blob[data-v-503ab90a]{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}.b1[data-v-503ab90a]{width:42vw;height:42vw;min-width:280px;min-height:280px;left:-8%;top:-10%;background:radial-gradient(circle,#c7d2fe,transparent 70%);animation:drift-503ab90a 18s ease-in-out infinite}.b2[data-v-503ab90a]{width:38vw;height:38vw;min-width:260px;min-height:260px;right:-6%;top:6%;background:radial-gradient(circle,#ddd6fe,transparent 70%);animation:drift-503ab90a 22s ease-in-out infinite reverse}.b3[data-v-503ab90a]{width:36vw;height:36vw;min-width:240px;min-height:240px;left:30%;bottom:-14%;background:radial-gradient(circle,#bae6fd,transparent 70%);animation:drift-503ab90a 20s ease-in-out infinite}@keyframes drift-503ab90a{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-26px) scale(1.12)}}.grid-overlay[data-v-503ab90a]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(99,102,241,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(99,102,241,.04) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%)}@media (prefers-reduced-motion: reduce){.blob[data-v-503ab90a]{animation:none}}.login-card[data-v-503ab90a]{position:relative;z-index:1;width:100%;max-width:340px;padding:30px 26px 24px;border-radius:18px;background:#ffffffc7;border:1px solid rgba(255,255,255,.9);box-shadow:0 20px 50px #4f46e51f;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);color:#1f2937;animation:card-in-503ab90a .45s ease-out}@keyframes card-in-503ab90a{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.login-brand[data-v-503ab90a]{display:flex;justify-content:center;margin-bottom:10px}.brand-mark[data-v-503ab90a]{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;font-size:1.2rem;color:#fff;background:linear-gradient(135deg,#2563eb,#7c3aed);box-shadow:0 8px 20px #4f46e559}.login-title[data-v-503ab90a]{text-align:center;font-size:1.3rem;font-weight:700;margin-bottom:4px;letter-spacing:.5px}.login-subtitle[data-v-503ab90a]{text-align:center;font-size:.85rem;color:#6b7280;margin-bottom:22px}.login-form[data-v-503ab90a]{display:flex;flex-direction:column;gap:18px}.field[data-v-503ab90a]{position:relative;padding-top:16px}.field-label[data-v-503ab90a]{position:absolute;left:4px;top:0;color:#6b7280;font-size:.78rem;font-weight:500;display:flex;align-items:center;gap:6px}.field-label i[data-v-503ab90a]{font-size:.7rem;color:#9ca3af}.field-input[data-v-503ab90a]{width:100%;padding:6px 4px;font-size:.98rem;color:#1f2937;background:transparent;border:none;border-bottom:1px solid #e5e7eb;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:40px}.field-input[data-v-503ab90a]:focus{border-bottom-color:transparent}.field-line[data-v-503ab90a]{position:absolute;left:0;bottom:0;height:2px;width:0;background:linear-gradient(90deg,#2563eb,#7c3aed);transition:width .3s ease}.field-input:focus~.field-line[data-v-503ab90a]{width:100%}.login-btn[data-v-503ab90a]{margin-top:6px;height:44px;border:none;border-radius:12px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-size:.95rem;font-weight:600;letter-spacing:1px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease;box-shadow:0 8px 20px #4f46e547}.login-btn[data-v-503ab90a]:hover:not(:disabled){transform:translateY(-1px)}.login-btn[data-v-503ab90a]:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.login-spinner[data-v-503ab90a]{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin-503ab90a .7s linear infinite}@keyframes spin-503ab90a{to{transform:rotate(360deg)}}.login-footer[data-v-503ab90a]{margin-top:18px;text-align:center;font-size:.74rem;color:#9ca3af}.cluster-tag[data-v-c60cd386]{display:inline-block;padding:2px 8px;margin:2px 4px 2px 0;background:#f0f5ff;border:1px solid #adc6ff;border-radius:4px;font-size:12px}.sim-badge[data-v-c60cd386]{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600}.empty-state[data-v-c60cd386]{text-align:center;padding:60px 20px;color:#999}.empty-state p[data-v-c60cd386]{margin-top:16px}.modal-overlay[data-v-c60cd386]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-c60cd386]{background:#fff;border-radius:8px;width:90%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.pair-modal[data-v-c60cd386]{width:95%;max-width:1400px}.verdict-modal[data-v-c60cd386]{width:480px}.modal-header[data-v-c60cd386]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee}.modal-header h2[data-v-c60cd386]{margin:0;font-size:18px;display:flex;align-items:center;gap:10px}.modal-close[data-v-c60cd386]{background:none;border:none;cursor:pointer;font-size:18px;color:#999}.modal-body[data-v-c60cd386]{padding:16px 20px;overflow:auto}.modal-footer[data-v-c60cd386]{padding:12px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:8px}.pair-grid[data-v-c60cd386]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pair-col[data-v-c60cd386]{display:flex;flex-direction:column;min-width:0}.pair-col-header[data-v-c60cd386]{padding:8px 12px;background:#fafafa;border:1px solid #eee;border-bottom:none;font-weight:600;font-size:13px}.code-block[data-v-c60cd386]{margin:0;padding:12px;background:#1e1e1e;color:#d4d4d4;border:1px solid #333;border-radius:0 0 4px 4px;font-family:Consolas,Monaco,monospace;font-size:12px;line-height:1.5;white-space:pre;overflow:auto;max-height:60vh}.btn-sm[data-v-c60cd386]{padding:3px 8px;font-size:12px;margin-right:4px}.tag[data-v-c60cd386]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.tag-success[data-v-c60cd386]{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.tag-warning[data-v-c60cd386]{background:#fffbe6;color:#faad14;border:1px solid #ffe58f}.tag-danger[data-v-c60cd386]{background:#fff1f0;color:#f5222d;border:1px solid #ffa39e}.tag-default[data-v-c60cd386]{background:#fafafa;color:#999;border:1px solid #d9d9d9}
