:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-slab-duo-regular:normal 400 1em/1 "Font Awesome 7 Slab Duo";--fa-font-slab-press-duo-regular:normal 400 1em/1 "Font Awesome 7 Slab Press Duo";--fa-font-pixel-regular:normal 400 1em/1 "Font Awesome 7 Pixel";--fa-font-mosaic-solid:normal 900 1em/1 "Font Awesome 7 Mosaic";--fa-font-vellum-solid:normal 900 1em/1 "Font Awesome 7 Vellum";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa .fa-pull-start,.svg-inline--fa.fa-pull-left{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa .fa-pull-end,.svg-inline--fa.fa-pull-right{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);inset-block-start:.25em;inset-inline-start:calc(var(--fa-li-width,2em)*-1)}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.08333em}.fa-sm{vertical-align:.05357em;font-size:.875em;line-height:.07143em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.04167em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-canvas-square{margin-block-end:-.125em;padding-block:.125em}.fa-canvas-roomy{box-sizing:content-box;margin-block-end:-.25em;padding-block:.25em;padding-inline:.125em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(var(--fa-li-width,2em)*-1)}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-end,.fa-pull-right{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-flip{animation-name:fa-flip;animation-duration:var(--fa-animation-duration,1.5s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-flip,.fa-flip-360{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-flip-360{animation-name:fa-flip-360;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.75s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}.fa-spin-snap{animation-name:fa-spin-snap;animation-duration:var(--fa-animation-duration,3s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-snap,.fa-spin-snap-4{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin-snap-4{animation-name:fa-spin-snap-4;animation-duration:var(--fa-animation-duration,2.4s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-snap-8{animation-name:fa-spin-snap-8;animation-duration:var(--fa-animation-duration,4s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-buzz,.fa-spin-snap-8{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-buzz{animation-name:fa-buzz;animation-duration:var(--fa-animation-duration,.6s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-wag{animation-name:fa-wag;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,.9s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out);transform-origin:bottom}.fa-float{animation-name:fa-float;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,3s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out);will-change:transform}.fa-swing{animation-name:fa-swing;animation-duration:var(--fa-animation-duration,1.2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out);transform-origin:top}.fa-jello,.fa-swing{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-jello{animation-name:fa-jello;animation-duration:var(--fa-animation-duration,.9s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-out)}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-buzz,.fa-fade,.fa-flip,.fa-flip-360,.fa-float,.fa-jello,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse,.fa-spin-snap,.fa-spin-snap-4,.fa-spin-snap-8,.fa-swing,.fa-wag{transition:none!important;animation:none!important}}@keyframes fa-beat{0%{transform:scale(1)}25%{transform:scale(calc(var(--fa-beat-scale,1.25)*1.25))}45%{transform:scale(calc(var(--fa-beat-scale,1.22)*1.22))}65%{transform:scale(calc(var(--fa-beat-scale,1.25)*1.25))}90%{transform:scale(1)}}@keyframes fa-bounce{0%{animation-timing-function:var(--fa-animation-timing);transform:scale(1)translateY(0)}14%{transform:scale(var(--fa-bounce-start-scale-x,1.06),var(--fa-bounce-start-scale-y,.94)) translateY(var(--fa-bounce-anticipation,3px));animation-timing-function:cubic-bezier(.33,0,.66,.33)}32%{transform:scale(var(--fa-bounce-jump-scale-x,.94),var(--fa-bounce-jump-scale-y,1.12)) translateY(calc(var(--fa-bounce-height,.5em)*-1));animation-timing-function:cubic-bezier(.33,.66,.66,1)}52%{transform:scale(1) translateY(calc(var(--fa-bounce-height,.5em)*-1*1.1));animation-timing-function:cubic-bezier(.5,0,1,.5)}70%{transform:scale(var(--fa-bounce-land-scale-x,1.06),var(--fa-bounce-land-scale-y,.92)) translateY(0);animation-timing-function:cubic-bezier(.33,.33,.66,1)}85%{transform:scale(.98,1.04) translateY(calc(-2px*var(--fa-bounce-rebound,1)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{0%{opacity:1;animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}40%{opacity:var(--fa-fade-opacity,.4);animation-timing-function:cubic-bezier(.4,0,.6,1);transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes fa-beat-fade{0%{opacity:var(--fa-beat-fade-opacity,.4);animation-timing-function:cubic-bezier(.2,0,.4,1);transform:scale(1)}25%{opacity:calc(var(--fa-beat-fade-opacity,.4) + .4);transform:scale(var(--fa-beat-fade-scale,1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}45%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.25));animation-timing-function:cubic-bezier(.4,0,.2,1)}65%{opacity:calc(var(--fa-beat-fade-opacity,.4) + .4);transform:scale(var(--fa-beat-fade-scale,1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}}@keyframes fa-flip{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),0deg);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale,.95)) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),0deg);animation-timing-function:cubic-bezier(.33,0,.66,.33)}35%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),calc(var(--fa-flip-angle,-1turn)*.6));animation-timing-function:linear}65%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),calc(var(--fa-flip-angle,-1turn)*.5));animation-timing-function:cubic-bezier(.33,.66,.66,1)}92%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),calc(var(--fa-flip-angle,-1turn)*var(--fa-flip-overshoot,1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-1turn))}}@keyframes fa-flip-360{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),0deg);animation-timing-function:cubic-bezier(.2,0,.4,1)}8%{transform:perspective(2em) scale(var(--fa-flip-anticipation-scale,.95)) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),0deg);animation-timing-function:cubic-bezier(.33,0,.66,.33)}50%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),calc(var(--fa-flip-angle,-1turn)*.6));animation-timing-function:cubic-bezier(.33,.66,.66,1)}80%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),calc(var(--fa-flip-angle,-1turn)*var(--fa-flip-overshoot,1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-1turn))}}@keyframes fa-shake{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(35deg)translate(1px)}20%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(-22deg)translate(-1px)}35%{animation-timing-function:cubic-bezier(.3,0,.7,1);transform:rotate(15deg)translate(1px)}50%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-9deg)}65%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(5deg)}78%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:rotate(-3deg)}90%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:rotate(1deg)}to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes fa-spin-snap{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}12%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(60deg)}16.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(60deg)}28.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(120deg)}33.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(120deg)}45.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}62%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(240deg)}66.67%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(240deg)}78.67%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(300deg)}83.33%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(300deg)}95.33%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(1turn)}to{transform:rotate(1turn)}}@keyframes fa-spin-snap-4{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}15%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}40%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}65%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}90%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(1turn)}to{transform:rotate(1turn)}}@keyframes fa-spin-snap-8{0%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(0)}9%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(45deg)}12.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(45deg)}21.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(90deg)}25%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(90deg)}34%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(135deg)}37.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(135deg)}46.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(180deg)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(180deg)}59%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(225deg)}62.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(225deg)}71.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(270deg)}75%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(270deg)}84%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(315deg)}87.5%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:rotate(315deg)}96.5%{animation-timing-function:cubic-bezier(.8,0,1,1);transform:rotate(1turn)}to{transform:rotate(1turn)}}@keyframes fa-buzz{0%{animation-timing-function:cubic-bezier(.1,0,.9,1);transform:translate(0)rotate(0)}5%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.5deg)}10%{transform:translateX(calc(var(--fa-buzz-distance,4px)*-1)) rotate(-.5deg)}15%{transform:translateX(var(--fa-buzz-distance,4px)) rotate(.3deg)}20%{transform:translateX(calc(var(--fa-buzz-distance,4px)*-1)) rotate(-.3deg)}25%{transform:translateX(calc(var(--fa-buzz-distance,4px)*.7)) rotate(.2deg)}30%{transform:translateX(calc(var(--fa-buzz-distance,4px)*-1*.7)) rotate(-.2deg)}35%{transform:translateX(calc(var(--fa-buzz-distance,4px)*.4)) rotate(.1deg)}40%{transform:translate(0)rotate(0)}to{transform:translate(0)rotate(0)}}@keyframes fa-wag{0%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(0)}12%{transform:rotate(var(--fa-wag-angle,12deg));animation-timing-function:cubic-bezier(.4,0,.2,1)}24%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(2deg)}36%{transform:rotate(calc(var(--fa-wag-angle,12deg)*.85));animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{animation-timing-function:cubic-bezier(.2,0,.6,1);transform:rotate(1deg)}58%{transform:rotate(calc(var(--fa-wag-angle,12deg)*.6));animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-float{0%{transform:translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02),var(--fa-float-squash-y,.98));animation-timing-function:cubic-bezier(.33,0,.66,.33)}15%{transform:translateY(calc(var(--fa-float-height,6px)*-.4)) translateX(var(--fa-float-drift,1px)) rotate(var(--fa-float-tilt,1deg)) scale(1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}35%{transform:translateY(calc(var(--fa-float-height,6px)*-1)) translateX(0) rotate(0deg) scale(var(--fa-float-stretch-x,.98),var(--fa-float-stretch-y,1.03));animation-timing-function:cubic-bezier(.5,0,.5,0)}50%{transform:translateY(calc(var(--fa-float-height,6px)*-.92)) translateX(calc(var(--fa-float-drift,1px)*-.5)) rotate(calc(var(--fa-float-tilt,1deg)*-.5)) scale(.995,1.01);animation-timing-function:cubic-bezier(.33,0,.66,.33)}70%{transform:translateY(calc(var(--fa-float-height,6px)*-.3)) translateX(calc(var(--fa-float-drift,1px)*-1)) rotate(calc(var(--fa-float-tilt,1deg)*-1)) scale(1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(var(--fa-float-height,6px)*.05)) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02),var(--fa-float-squash-y,.98));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x,1.02),var(--fa-float-squash-y,.98))}}@keyframes fa-swing{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:rotate(0)}8%{transform:rotate(var(--fa-swing-angle,22deg));animation-timing-function:cubic-bezier(.3,0,.7,1)}18%{transform:rotate(calc(var(--fa-swing-angle,22deg)*-1*.85));animation-timing-function:cubic-bezier(.3,0,.7,1)}28%{transform:rotate(calc(var(--fa-swing-angle,22deg)*.65));animation-timing-function:cubic-bezier(.35,0,.65,1)}38%{transform:rotate(calc(var(--fa-swing-angle,22deg)*-1*.45));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:rotate(calc(var(--fa-swing-angle,22deg)*.25));animation-timing-function:cubic-bezier(.4,0,.6,1)}56%{transform:rotate(calc(var(--fa-swing-angle,22deg)*-1*.1));animation-timing-function:cubic-bezier(.4,0,.6,1)}64%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-jello{0%{animation-timing-function:cubic-bezier(.2,0,.8,1);transform:scale(1)}12%{transform:scale(var(--fa-jello-scale-x,1.15),calc(2 - var(--fa-jello-scale-x,1.15)));animation-timing-function:cubic-bezier(.3,0,.7,1)}24%{transform:scale(calc(2 - var(--fa-jello-scale-y,1.12)),var(--fa-jello-scale-y,1.12));animation-timing-function:cubic-bezier(.3,0,.7,1)}36%{transform:scale(calc(1 + (var(--fa-jello-scale-x,1.15) - 1)*.5),calc(1 - (var(--fa-jello-scale-x,1.15) - 1)*.5));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:scale(calc(1 - (var(--fa-jello-scale-y,1.12) - 1)*.3),calc(1 + (var(--fa-jello-scale-y,1.12) - 1)*.3));animation-timing-function:cubic-bezier(.4,0,.6,1)}58%{animation-timing-function:cubic-bezier(.4,0,.2,1);transform:scale(1.02,.98)}68%{transform:scale(1)}to{transform:scale(1)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}.driver-popover{all:unset;font-family:var(--driver-popover-font-family,"Helvetica Neue",Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif);box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover-title{zoom:1;margin:0;font-size:19px;font-weight:700;line-height:1.5;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:focus,.driver-popover-close-btn:hover{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.5}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer-btn{all:unset;box-sizing:border-box;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-popover-footer-btn:focus,.driver-popover-footer-btn:hover{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-none,.driver-popover-arrow-side-center{display:none}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration,.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration,.4s)}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}:root{--color-primary:#d4819b;--color-primary-light:#ebb3c6;--color-accent:#f0c78e;--color-bg:#fff5f8;--color-surface:#fffafc;--color-surface-alt:#f3edf7;--color-text:#3a3640;--color-text-secondary:#6e5f73;--color-border:#e4c2d4;--color-danger:#e57373;--color-success:#81b29a;--color-warning:#e4a853;--color-primary-soft:color-mix(in oklch, var(--color-primary) 14%, transparent);--color-primary-dark:#b5657d;--color-accent-soft:color-mix(in oklch, var(--color-accent) 16%, transparent);--color-danger-soft:#fde8e8;--color-success-soft:#e8f3ec;--color-warning-soft:#fef3e0;--color-border-strong:#d89cb6;--color-ink-berry:#9e4a68;--color-accent-ink:#c9832b;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Be Vietnam Pro", system-ui, sans-serif;--font-cjk:"Noto Serif SC", serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", "Segoe UI Mono", Consolas, Menlo, monospace;--fs-h1:clamp(28px, 4vw, 32px);--fs-h2:clamp(22px, 3vw, 24px);--fs-h3:20px;--fs-body:16px;--fs-small:14px;--fs-caption:12px;--gap-xs:4px;--gap-sm:8px;--gap-md:16px;--gap-lg:24px;--gap-xl:32px;--gap-2xl:48px;--gap-3xl:64px;--container:1280px;--gutter:32px;--btn-sm-font-size:var(--fs-caption);--btn-sm-padding:6px 14px;--select-chevron:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20fill%3D%22none%22%20stroke%3D%22%236b6369%22%20stroke-width%3D%222%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E);--radius-sm:10px;--radius-md:16px;--radius-pill:9999px;--shadow-card:0 2px 10px #9e4a681a;--shadow-card-hover:0 8px 22px #9e4a682e;--transition-fast:.2s ease;--transition-theme:.32s ease;--focus-ring:0 0 0 3px var(--color-primary-soft);--focus-ring-color:var(--color-primary);--ring-berry:0 0 0 3px color-mix(in oklch, var(--color-primary) 22%, transparent)}[data-theme=dark]{--color-primary:#c4899a;--color-primary-light:#a36b7d;--color-accent:#d4b87a;--color-bg:#1a1018;--color-surface:#241c22;--color-surface-alt:#2d2530;--color-text:#e8e0e4;--color-text-secondary:#9b9098;--color-border:#3d3540;--color-primary-soft:color-mix(in oklch, var(--color-primary) 18%, transparent);--color-primary-dark:#a36b7d;--color-accent-soft:color-mix(in oklch, var(--color-accent) 18%, transparent);--color-border-strong:#524551;--color-ink-berry:#e6a6c0;--color-accent-ink:#e0be80;--shadow-card:0 2px 10px #00000047;--shadow-card-hover:0 8px 22px #0006}[data-theme=dark] .callout-warning{background:color-mix(in oklch,var(--color-warning) 15%,var(--color-surface))}[data-theme=dark] .callout-info{background:color-mix(in oklch,var(--color-primary) 15%,var(--color-surface))}[data-theme=dark] .callout-danger,[data-theme=dark] .diff-current{background:color-mix(in oklch,var(--color-danger) 15%,var(--color-surface))}[data-theme=dark] .diff-proposed{background:color-mix(in oklch,var(--color-success) 15%,var(--color-surface))}[data-theme=dark] .diff-new-note,[data-theme=dark] .new-tag-chip{color:var(--color-accent)}[data-theme=dark] .new-tag-chip--added{color:var(--color-success)}[data-theme=dark] .cover-placeholder,[data-theme=dark] .novel-card-cover-placeholder{background:linear-gradient(135deg,var(--color-surface),var(--color-surface-alt));color:color-mix(in oklch,var(--color-text-secondary) 45%,transparent)}[data-theme=dark] .badge{background:color-mix(in oklch,currentColor 18%,transparent);border-color:color-mix(in oklch,currentColor 32%,transparent)}[data-theme=dark] .badge-archived,[data-theme=dark] .badge-dismissed,[data-theme=dark] .badge-hiatus,[data-theme=dark] .badge-not-translated{color:#b8aeb5}[data-theme=dark] .badge-translating{color:var(--color-primary)}[data-theme=dark] .badge-rejected{color:#e8897c}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}img,svg{max-width:100%;display:block}a{text-decoration:none}a,button{color:inherit}button{font:inherit;cursor:pointer;background:0 0;border:none}p{text-wrap:pretty;margin:0}h1,h2,h3,h4,h5,h6{text-wrap:balance;margin:0}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}ol,ul{margin:0;padding:0;list-style:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:where(a,button,input,select,textarea,.btn,.tag-pill,.filter-chip,.pagination-btn,.window-toggle-option,.sidebar-nav a,.novel-card-link,[role=button],[tabindex]):focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;box-shadow:var(--focus-ring)}:where(a,button,input,select,textarea,[role=button],[tabindex]):focus:not(:focus-visible){outline:none}.container{max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.page-content{min-height:100vh;padding-top:64px}.section{padding-block:var(--gap-2xl)}.section+.section{border-top:1px solid var(--color-border)}.stack{flex-direction:column;display:flex}.row,.row-between{align-items:center;gap:var(--gap-md);display:flex}.row-between{flex-wrap:wrap;justify-content:space-between}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2,.grid-3{gap:var(--gap-lg);display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-4,.grid-5{gap:var(--gap-lg);display:grid}.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.novel-grid{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}.author-grid,.novel-grid{gap:var(--gap-lg);grid-auto-rows:1fr;display:grid}.author-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.h1,h1{font-size:var(--fs-h1);letter-spacing:-.02em;font-weight:700;line-height:1.2}.h1,.h2,h1,h2{font-family:var(--font-display)}.h2,h2{font-size:var(--fs-h2);letter-spacing:-.01em;line-height:1.3}.h2,.h3,h2,h3{font-weight:600}.h3,h3{font-size:var(--fs-h3);line-height:1.4}.text-secondary{color:var(--color-text-secondary)}.text-sm{font-size:var(--fs-small)}.text-caption{font-size:var(--fs-caption);letter-spacing:.02em}.text-cjk{font-family:var(--font-cjk)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.prose{font-size:var(--fs-body);color:var(--color-text);line-height:1.75}.prose>*{margin:0}.prose>*+*{margin-top:var(--gap-md)}.prose h3,.prose h4{font-family:var(--font-display);color:var(--color-ink-berry);font-weight:600;line-height:1.35}.prose h3{font-size:var(--fs-h3)}.prose h4{font-size:var(--fs-body)}.prose>*+:is(h3,h4){margin-top:var(--gap-lg)}.prose :is(h3,h4)+*{margin-top:var(--gap-sm)}.prose strong{color:var(--color-ink-berry);font-weight:600}.prose em{font-style:italic}.prose a{color:var(--color-primary);text-underline-offset:2px;word-break:break-word;text-decoration:underline}.prose a:hover{color:var(--color-primary-dark)}.prose :is(ul,ol){padding-left:var(--gap-lg)}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li::marker{color:var(--color-primary)}.prose li+li,.prose li>:is(ul,ol){margin-top:var(--gap-xs)}.prose blockquote{padding:var(--gap-xs) 0 var(--gap-xs) var(--gap-md);border-left:3px solid var(--color-border-strong);color:var(--color-text-secondary);font-style:italic}.prose blockquote>*+*{margin-top:var(--gap-sm)}.prose hr{border:0;border-top:1px solid var(--color-border);margin:var(--gap-lg) 0}.prose code{border-radius:var(--radius-sm);background:var(--color-surface-alt);font-family:var(--font-mono);padding:1px 5px;font-size:.9em}.navbar{z-index:50;background:color-mix(in oklch,var(--color-surface) 95%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);height:64px;position:fixed;top:0;left:0;right:0}.navbar-inner{max-width:var(--container);padding-inline:var(--gutter);justify-content:space-between;align-items:center;gap:var(--gap-lg);height:100%;margin-inline:auto;display:flex}.navbar-logo{gap:var(--gap-sm);font-family:var(--font-display);color:var(--color-primary);letter-spacing:-.01em;white-space:nowrap;font-size:20px;font-weight:700}.app-logo,.navbar-logo{align-items:center;display:inline-flex}.app-logo{flex-shrink:0}.app-logo-img{width:auto;max-width:100%;height:36px;display:block}.app-logo-img--dark,[data-theme=dark] .app-logo-img--light{display:none}[data-theme=dark] .app-logo-img--dark{display:block}.navbar-nav{gap:var(--gap-lg);display:flex}.navbar-nav a{font-size:var(--fs-small);color:var(--color-text-secondary);transition:color var(--transition-fast);border-bottom:2px solid #0000;padding:4px 0}.navbar-nav a.active,.navbar-nav a:hover{color:var(--color-primary)}.navbar-nav a.active{border-bottom-color:var(--color-primary)}.navbar-actions,.search-bar{align-items:center;gap:var(--gap-sm);display:flex}.search-bar{background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-pill);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);padding:10px 16px}.search-bar:focus-within{border-color:var(--color-primary);box-shadow:var(--ring-berry)}.search-bar input{font:inherit;font-size:var(--fs-small);color:var(--color-text);background:0 0;border:none;outline:none;flex:1;min-width:0}.search-bar input::placeholder{color:var(--color-text-secondary)}.search-bar-compact{max-width:240px;padding:7px 14px}.search-bar-compact:focus-within{max-width:360px}.search-bar-full{width:100%;max-width:600px;padding:14px 20px}.search-bar-full input{font-size:var(--fs-body)}.search-icon{width:18px;height:18px;color:var(--color-text-secondary);flex-shrink:0}.btn{font-size:var(--fs-small);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-weight:500;display:inline-flex}.btn:active{transform:translateY(1px)scale(.98)}.btn-pill{border-radius:var(--radius-pill);padding:10px 24px}.btn-rounded{border-radius:var(--radius-sm);padding:10px 20px}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:color-mix(in oklch,var(--color-primary) 85%,#fff)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-alt);border-color:var(--color-primary)}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger:hover{background:color-mix(in oklch,var(--color-danger) 85%,#000)}.btn-success{background:var(--color-success);color:#fff;border-color:var(--color-success)}.btn-warning{background:var(--color-warning);color:#fff;border-color:var(--color-warning)}.btn-ghost{color:var(--color-text-secondary);background:0 0;padding:8px}.btn-ghost:hover{color:var(--color-primary)}.btn-sm{font-size:var(--btn-sm-font-size);padding:var(--btn-sm-padding)}.btn-block{justify-content:center;width:100%}.guide-link{margin-top:var(--gap-xs);color:var(--color-primary);white-space:nowrap;font-weight:500;display:inline-block}.guide-link:hover{text-decoration:underline}@media (width<=768px){.btn-shrink-mobile{font-size:var(--btn-sm-font-size);padding:var(--btn-sm-padding)}}.btn-icon{border-radius:var(--radius-sm);place-items:center;width:40px;height:40px;padding:0;display:inline-grid}.btn[disabled]{opacity:.5;pointer-events:none}.btn-outline-dashed{color:var(--color-primary);border:2px dashed var(--color-primary-light);background:0 0}.btn-outline-dashed:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.back-link{font-size:var(--fs-small);color:var(--color-text-secondary);transition:color var(--transition-fast);align-items:center;gap:6px;padding:0;display:inline-flex}.back-link:hover{color:var(--color-primary)}.chevron-toggle{transition:transform var(--transition-fast)}.chevron-toggle.is-open{transform:rotate(180deg)}.divider-dotted{border:none;border-top:3px dotted var(--color-primary-light);margin:var(--gap-xl) 0;opacity:.6}.tag-pill-dot:before{content:"";background:var(--color-primary);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-right:6px}.card-cute{transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.card-cute:hover{box-shadow:var(--shadow-card-hover),var(--ring-berry);border-color:var(--color-primary);transform:translateY(-2px)}@keyframes cute-pulse{0%,to{box-shadow:var(--shadow-card)}50%{box-shadow:0 2px 16px #d4819b24}}.novel-card-featured{animation:3s ease-in-out infinite cute-pulse}.card{background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden}.card-body{padding:var(--gap-lg)}.card-hover{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card-hover:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.novel-card{cursor:pointer;min-width:0;height:100%;position:relative}.novel-card>.card{flex-direction:column;height:100%;display:flex}.novel-card-cover{aspect-ratio:4/5;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--color-surface-alt);flex-shrink:0;max-height:300px;overflow:hidden}.novel-card-cover-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform var(--transition-fast)}.novel-card:hover .novel-card-cover-img{transform:scale(1.05)}.novel-card-cover-placeholder{width:100%;height:100%;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--fs-caption);background:linear-gradient(135deg,var(--color-surface-alt),var(--color-border));place-items:center;display:grid}.novel-card-info{padding:var(--gap-md);flex-direction:column;flex:1;display:flex}.novel-card-title{margin-bottom:var(--gap-xs);transition:color var(--transition-fast)}.novel-card:hover .novel-card-title{color:var(--color-primary)}.novel-card-link{appearance:none;cursor:pointer;text-align:left;color:inherit;font:inherit;font-size:var(--fs-body);-webkit-line-clamp:2;background:0 0;border:0;-webkit-box-orient:vertical;min-height:2.8em;padding:0;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.novel-card-link:after{content:"";border-radius:var(--radius-md);position:absolute;inset:0}.novel-card-byline{align-items:baseline;gap:var(--gap-sm);margin-bottom:var(--gap-sm);display:flex}.novel-card-byline-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);flex-shrink:0;font-size:11px;font-weight:600}.novel-card-byline-name{min-width:0;font-size:var(--fs-caption);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.novel-card-summary{font-size:var(--fs-caption);color:var(--color-text-secondary);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;min-height:4.5em;line-height:1.5;display:-webkit-box;overflow:hidden}.novel-card-chapters,.novel-card-summary,.novel-card-tags{margin-bottom:var(--gap-sm)}.novel-card-tags{z-index:1;gap:var(--gap-xs);flex-wrap:wrap;align-content:flex-start;height:64px;display:flex;position:relative;overflow:hidden}.novel-card-tags .tag-pill{white-space:nowrap;flex-shrink:0}.novel-card-traits{font-size:var(--fs-caption);color:var(--color-text-secondary);margin-bottom:var(--gap-sm);min-height:3em;line-height:1.5}.novel-card-trait-line{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.novel-card-traits--single .novel-card-trait-line{-webkit-line-clamp:2;line-clamp:2}.novel-card-bottom{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.author-card{text-align:center;min-width:0;height:100%;padding:var(--gap-lg);background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-card);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);flex-direction:column;align-items:center;display:flex;position:relative}.author-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.author-avatar{aspect-ratio:1;width:80px;height:80px;margin-bottom:var(--gap-md);background:linear-gradient(135deg,var(--color-surface-alt),var(--color-border));overflow:hidden}.author-avatar-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.author-avatar-initial{font-family:var(--font-display);font-size:var(--fs-h3);color:var(--color-text-secondary);font-weight:600}.author-name{font-size:var(--fs-body);color:var(--color-text);margin-bottom:var(--gap-xs);transition:color var(--transition-fast);overflow-wrap:break-word;max-width:100%;font-weight:600;line-height:1.4}.author-card:hover .author-name{color:var(--color-primary)}.author-link{appearance:none;cursor:pointer;color:inherit;font:inherit;background:0 0;border:0;max-width:100%;padding:0;font-weight:600}.author-link:after{content:"";border-radius:var(--radius-md);position:absolute;inset:0}.author-aliases{font-size:var(--fs-caption);color:var(--color-text-secondary);margin-bottom:var(--gap-sm);-webkit-line-clamp:1;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.author-novel-count{font-size:var(--fs-small);color:var(--color-primary);margin-top:auto;font-weight:500}.contributor-grid{gap:var(--gap-lg);grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;display:grid}.contributor-card{align-items:center;gap:var(--gap-xs);min-width:0;height:100%;padding:var(--gap-lg);text-align:center;background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-card);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);flex-direction:column;display:flex;position:relative}.contributor-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.contributor-card.is-top{border-color:var(--color-accent)}.contributor-rank{top:var(--gap-sm);left:var(--gap-sm);border-radius:var(--radius-pill);min-width:24px;height:24px;font-family:var(--font-mono);font-size:var(--fs-caption);place-items:center;padding:0 6px;font-weight:700;display:grid;position:absolute}.rank-1{background:var(--color-accent);color:#fff}.rank-2{background:var(--color-primary-light);color:#fff}.rank-3{background:color-mix(in oklch,var(--color-accent) 65%,var(--color-primary));color:#fff}.rank-default{background:var(--color-surface-alt);color:var(--color-text-secondary)}.contributor-avatar{--avatar-size:72px;margin-top:var(--gap-xs)}.contributor-card.is-top .contributor-avatar{--avatar-size:88px;box-shadow:0 0 0 4px var(--color-accent-soft)}.contributor-name{font-weight:600;font-size:var(--fs-body);color:var(--color-text);transition:color var(--transition-fast);overflow-wrap:break-word;max-width:100%;line-height:1.3}.contributor-card:hover .contributor-name{color:var(--color-primary)}.contributor-link{appearance:none;cursor:pointer;color:inherit;font:inherit;background:0 0;border:0;padding:0;font-weight:600}.contributor-link:after{content:"";border-radius:var(--radius-md);position:absolute;inset:0}.contributor-count{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--color-primary);padding-top:2px;font-weight:600}.contributor-count span{color:var(--color-text-secondary);font-weight:400}.contributor-join{justify-content:center;gap:var(--gap-sm);border-style:dashed;border-color:var(--color-primary-light);box-shadow:none;color:var(--color-primary);background:0 0;text-decoration:none}.contributor-join:hover{background:var(--color-primary-soft);box-shadow:none}.contributor-join-icon{width:44px;height:44px;margin-top:var(--gap-sm);background:var(--color-primary-soft);color:var(--color-primary);border-radius:50%;place-items:center;display:grid}.contributor-join-text{font-weight:600;font-size:var(--fs-small)}.contributor-join-sub{font-size:var(--fs-caption);color:var(--color-text-secondary);font-weight:400}.panel{padding:var(--gap-lg);background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md)}.panel+.panel{margin-top:var(--gap-lg)}.panel-title{align-items:center;gap:var(--gap-sm);margin-bottom:var(--gap-md);font-family:var(--font-display);font-size:var(--fs-h3);display:flex}.panel-title svg{color:var(--color-primary)}.badge{border-radius:var(--radius-pill);font-size:var(--fs-caption);white-space:nowrap;border:1px solid #0000;align-items:center;gap:4px;padding:4px 10px;font-weight:500;line-height:1;display:inline-flex}.badge-sm{padding:2px 8px;font-size:10px}.badge-ongoing{color:#d4a04a;background:#fff6ea;border-color:#f5d99e}.badge-completed{color:#6da37a;background:#edf8ef;border-color:#c5e4cc}.badge-hiatus,.badge-not-translated{color:#9b8e99;background:#fff0f5;border-color:#f0e0eb}.badge-translating{color:#e8a0bf;background:#fdf2f7;border-color:#f0e0eb}.badge-fully-translated{color:#6da37a;background:#edf8ef;border-color:#c5e4cc}.badge-pending{color:#d4a04a;background:#fff6ea;border-color:#f5d99e}.badge-approved{color:#6da37a;background:#edf8ef;border-color:#c5e4cc}.badge-rejected{color:#d46a6a;background:#fef0f0;border-color:#f5c6c6}.badge-revision{color:#5b8edd;background:#edf4ff;border-color:#c5d8f8}.badge-resolved{color:#6da37a;background:#edf8ef;border-color:#c5e4cc}.badge-dismissed{color:#9b8e99;background:#fff0f5;border-color:#f0e0eb}.badge-partial{color:#c88a3e;background:#fef3e0;border-color:#f5d99e}.badge-proposed{color:#d4a04a;background:#fff6ea;border-color:#f5d99e}.badge-published{color:#6da37a;background:#edf8ef;border-color:#c5e4cc}.badge-archived{color:#9b8e99;background:#fff0f5;border-color:#f0e0eb}.badge-tier-gold{color:var(--color-accent-ink);background:var(--color-accent-soft);border-color:color-mix(in oklch,var(--color-accent) 40%,transparent)}.badge-tier-mauve{color:var(--color-primary);background:var(--color-primary-soft);border-color:color-mix(in oklch,var(--color-primary) 35%,transparent)}.badge-tier-new{color:var(--color-text-secondary);border-color:var(--color-border)}.badge-tier-new,.tag-pill{background:var(--color-surface-alt)}.tag-pill{color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);font-size:var(--fs-caption);transition:background var(--transition-fast),border-color var(--transition-fast);align-items:center;padding:4px 12px;display:inline-flex}.tag-pill:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.tag-pill-genre{color:var(--color-ink-berry);font-weight:500}.tag-pill-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000}.tag-pill-toggle:hover{border-color:var(--color-primary-light)}.tag-pill-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tag-pill-toggle.active{background:var(--color-success);color:#fff;border-color:var(--color-success)}.tag-pill-toggle.active:hover{background:color-mix(in oklch,var(--color-success) 85%,#000);border-color:var(--color-success)}.tag-pill-toggle.exclude{background:var(--color-danger);color:#fff;border-color:var(--color-danger);text-decoration:line-through}.tag-pill-toggle.exclude:hover{background:color-mix(in oklch,var(--color-danger) 85%,#000);border-color:var(--color-danger)}.filter-count{border-radius:var(--radius-pill);background:var(--color-primary);color:#fff;min-width:20px;height:20px;font-size:11px;font-weight:600;font-family:var(--font-mono);flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.tag-pill-more{cursor:pointer;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;font-weight:500}.tag-popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-card-hover);padding:var(--gap-md);max-width:260px;position:absolute}.tag-popover-title{margin:0 0 var(--gap-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);font-size:11px;font-weight:600}.tag-popover-body{gap:var(--gap-xs);flex-wrap:wrap;display:flex}.tag-popover:after{content:"";left:calc(var(--p-popover-arrow-left,0px) + 14px);background:var(--color-surface);border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);width:11px;height:11px;position:absolute;top:-6px;transform:rotate(45deg)}.tag-popover[data-p-popover-flipped=true]:after{top:auto;bottom:-6px;transform:rotate(225deg)}.subs-tabs{gap:var(--gap-xs);border-bottom:1px solid var(--color-border);margin-bottom:var(--gap-lg);flex-wrap:wrap;display:flex;position:relative}.subs-tabs:after{content:"";width:var(--ind-w,0);height:2px;transform:translate(var(--ind-x,0),calc(var(--ind-y,0px) + var(--ind-h,0px) - 2px));background:var(--color-primary);pointer-events:none;position:absolute;top:0;left:0}.subs-tab{cursor:pointer;font-family:var(--font-body);font-size:var(--fs-small);color:var(--color-text-secondary);transition:color var(--transition-fast),border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 14px;font-weight:500;display:inline-flex}.subs-tab:hover{color:var(--color-text)}.subs-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.subs-tabs.has-indicator .subs-tab.active{border-bottom-color:#0000}.subs-tab-count{font-family:var(--font-mono);border-radius:var(--radius-pill);background:var(--color-surface-alt);color:var(--color-text-secondary);padding:1px 7px;font-size:11px;font-weight:600}.subs-tab.active .subs-tab-count{background:var(--color-primary-soft);color:var(--color-primary)}.new-tag-chip{border-radius:var(--radius-pill);font-size:var(--fs-caption);background:var(--color-accent-soft);border:1px solid color-mix(in oklch,var(--color-accent) 45%,transparent);color:var(--color-accent-ink);align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.new-tag-chip.is-removable{padding-right:6px}.new-tag-chip--added{background:var(--color-success-soft,#edf5ec);border-color:var(--color-success);color:var(--color-success)}.new-tag{text-transform:uppercase;letter-spacing:.04em;opacity:.85;font-size:9px;font-weight:700}.tagpick{padding:var(--gap-sm);border-radius:var(--radius-sm);background:color-mix(in oklch,var(--color-success) 6%,transparent);border:1px solid color-mix(in oklch,var(--color-success) 40%,var(--color-border))}.tagpick-selected{margin-bottom:var(--gap-sm);transition:height var(--transition-fast);overflow:hidden}.tagpick-selected-inner{align-content:flex-start;gap:var(--gap-xs);flex-wrap:wrap;min-height:32px;display:flex}.tagpick-empty{font-size:var(--fs-caption);color:var(--color-text-secondary);padding:4px 2px}.tagpick-chip{border-radius:var(--radius-pill);background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--fs-caption);color:var(--color-text);align-items:center;gap:4px;padding:4px 6px 4px 12px;display:inline-flex}.tagpick-chip-x{cursor:pointer;width:16px;height:16px;color:var(--color-text-secondary);background:0 0;border:none;border-radius:50%;place-items:center;display:grid}.tagpick-chip-x:hover{background:var(--color-border);color:var(--color-text)}.tagpick-search{position:relative}.tagpick-search-icon{color:var(--color-text-secondary);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.tagpick-search-input{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;font-family:var(--font-body);font-size:var(--fs-small);color:var(--color-text);padding:8px 12px 8px 32px}.tagpick-search-input:focus{border-color:var(--color-primary);box-shadow:var(--ring-berry);outline:none}.tagpick-menu{margin-top:var(--gap-sm);scrollbar-gutter:stable;height:224px;transition:height var(--transition-fast);flex-direction:column;gap:2px;display:flex;overflow-y:auto}.tagpick-menu-item{text-align:left;cursor:pointer;border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);font-size:var(--fs-small);color:var(--color-text);background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;display:flex}.tagpick-menu-item:hover,.tagpick-menu-item[aria-selected=true]{background:var(--color-surface-alt)}.tagpick-menu-item .ico{color:var(--color-text-secondary);flex-shrink:0}.tagpick-menu-item mark{background:var(--color-primary-soft);color:var(--color-primary);border-radius:3px;padding:0 1px}.tagpick-menu-add{color:var(--color-accent-ink)}.tagpick-menu-add .ico{color:var(--color-accent)}.tagpick-menu-add strong{font-weight:600}.tagpick-menu-empty,.tagpick-sim-hint{color:var(--color-text-secondary);font-size:var(--fs-caption)}.tagpick-menu-empty{padding:10px}.tagpick-alias-note{border-radius:var(--radius-sm);background:var(--color-primary-soft);font-size:var(--fs-caption);color:var(--color-text-secondary);margin-bottom:2px;padding:6px 10px}.tagpick-alias-note strong{color:var(--color-text);font-weight:600}.edit-field{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:var(--gap-md);transition:border-color var(--transition-fast)}.edit-field.active{border-color:var(--color-primary)}.ef-toggle{align-items:center;gap:var(--gap-sm);padding:var(--gap-md);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.ef-toggle input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px}.ef-label{font-weight:600;font-size:var(--fs-small)}.ef-preview{font-size:var(--fs-caption);color:var(--color-text-secondary);font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;max-width:45%;margin-left:auto;overflow:hidden}.ef-body{align-items:center;gap:var(--gap-md);padding:0 var(--gap-md) var(--gap-md);grid-template-columns:1fr auto 1fr;display:grid}.ef-body-stack{grid-template-columns:1fr!important}.ef-body-stack .ef-arrow{justify-self:start;transform:rotate(90deg)}.ef-col-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin-bottom:4px;font-size:11px;font-weight:600}.ef-current-box{padding:var(--gap-sm) var(--gap-md);border-radius:var(--radius-sm);background:color-mix(in oklch,var(--color-danger) 8%,transparent);border:1px solid color-mix(in oklch,var(--color-danger) 20%,transparent);font-size:var(--fs-small);color:var(--color-text);align-items:center;min-height:40px;display:flex}.ef-arrow{color:var(--color-text-secondary);font-size:18px}.ef-input,.ef-select,.ef-textarea{width:100%;padding:var(--gap-sm) var(--gap-md);border:1px solid color-mix(in oklch,var(--color-success) 40%,var(--color-border));border-radius:var(--radius-sm);background:color-mix(in oklch,var(--color-success) 6%,transparent);font-family:var(--font-body);font-size:var(--fs-small);color:var(--color-text)}.ef-textarea{resize:vertical;min-height:90px;line-height:1.6}.ef-input:focus,.ef-select:focus,.ef-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.tag-cloud{justify-content:center;align-items:center;gap:var(--gap-md);padding:var(--gap-xl) 0;flex-wrap:wrap;display:flex}.tag-grid{gap:var(--gap-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.tag-card{gap:var(--gap-xs);min-width:0;padding:var(--gap-md) var(--gap-lg);background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);color:inherit;flex-direction:column;text-decoration:none;display:flex;position:relative}.tag-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.tag-card-name{font-family:var(--font-body);font-size:var(--fs-body);color:var(--color-text);transition:color var(--transition-fast);overflow-wrap:break-word;font-weight:600;line-height:1.4}.tag-card-count,.tag-card:hover .tag-card-name{color:var(--color-primary)}.tag-card-count{border-radius:var(--radius-pill);font-size:var(--fs-caption);font-weight:500;font-family:var(--font-mono);background:var(--color-primary-soft);margin-top:var(--gap-xs);align-self:flex-start;align-items:center;padding:2px 10px;display:inline-flex}.tag-header{background:var(--color-surface-alt);padding:var(--gap-2xl) 0;text-align:center}.tag-header h1{margin-bottom:var(--gap-sm)}.tag-meta{justify-content:center;align-items:center;gap:var(--gap-md);flex-wrap:wrap;display:flex}.tag-category-badge{border-radius:var(--radius-pill);font-size:var(--fs-small);background:var(--color-primary-soft);color:var(--color-primary);border:1px solid color-mix(in oklch,var(--color-primary) 25%,transparent);align-items:center;padding:5px 16px;font-weight:500;display:inline-flex}.tag-novel-count{font-size:var(--fs-small);color:var(--color-text-secondary)}.tag-novel-count strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--color-text)}.filter-chip{background:var(--color-surface-alt);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);font-size:var(--fs-caption);transition:background var(--transition-fast);align-items:center;gap:6px;padding:4px 12px;display:inline-flex}.filter-chip-remove{cursor:pointer;width:14px;height:14px;color:var(--color-text-secondary);transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);border-radius:50%;place-items:center;padding:0;display:inline-grid}.filter-chip-remove:hover{background:var(--color-danger-soft);color:var(--color-danger);transform:scale(1.12)}.filter-chip-exclude{color:var(--color-danger);text-decoration:line-through}.window-toggle{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-pill);max-width:100%;display:inline-flex;position:relative;overflow-x:auto}.window-toggle:before{content:"";width:var(--ind-w,0);height:var(--ind-h,100%);transform:translate(var(--ind-x,0),var(--ind-y,0));background:var(--color-primary);border-radius:var(--radius-pill);pointer-events:none;position:absolute;top:0;left:0}.window-toggle-option{z-index:1;font-size:var(--fs-caption);white-space:nowrap;cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface);color:var(--color-text-secondary);flex-shrink:0;padding:6px 16px;font-weight:500;position:relative}.window-toggle-option.active{background:var(--color-primary);color:#fff}.window-toggle.has-indicator .window-toggle-option.active{background:0 0}.pagination-shell{justify-content:center;align-items:center;gap:var(--gap-sm);margin-top:var(--gap-xl);flex-wrap:wrap;display:flex}.pagination-shell--bar{justify-content:space-between}.pagination-info{font-size:var(--fs-small);color:var(--color-text-secondary)}.pagination{justify-content:flex-end;align-items:center;gap:var(--gap-xs);flex-wrap:wrap;display:flex}.table-card .pagination-shell{padding:var(--gap-md) var(--gap-lg);border-top:1px solid var(--color-border);flex:none;margin-top:0}.pagination-btn{border-radius:var(--radius-pill);min-width:36px;height:36px;font-size:var(--fs-small);cursor:pointer;background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast);border:1px solid #0000;place-items:center;display:inline-grid}.pagination-btn:hover{background:var(--color-surface-alt)}.pagination-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-btn[disabled]{opacity:.4;pointer-events:none}.pagination-ellipsis{color:var(--color-text-secondary);padding:0 4px}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:var(--fs-caption);color:var(--color-text-secondary);font-weight:500}.field-label-row{justify-content:space-between;align-items:center;display:flex}.field-label-right{color:var(--color-text-secondary);font-weight:400}.field-input,.field-select,.field-textarea{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;font-size:var(--fs-small);transition:border-color var(--transition-fast);padding:10px 14px}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:var(--color-primary);box-shadow:var(--ring-berry);outline:none}.field-textarea{resize:vertical;min-height:96px}.field-error{color:var(--color-danger)}.field-error,.field-hint{font-size:var(--fs-caption)}.field-hint{color:var(--color-text-secondary)}.checkbox-group,.radio-group{gap:var(--gap-sm);flex-direction:column;display:flex}.checkbox-option,.radio-option{align-items:center;gap:var(--gap-sm);font-size:var(--fs-small);cursor:pointer;transition:color var(--transition-fast);display:flex}.checkbox-option:hover,.radio-option:hover{color:var(--color-primary)}@keyframes heart-pop{0%{opacity:0;transform:scale(.6)}50%{transform:scale(1.25)}to{opacity:1;transform:scale(1)}}input[type=checkbox],input[type=radio]{appearance:none;border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;vertical-align:middle;border-radius:5px;flex-shrink:0;width:20px;height:20px;margin:0;transition:background .2s,border-color .2s;position:relative}input[type=radio]{border-radius:50%}input[type=checkbox]:after{background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22m12%2021.35-1.45-1.32C5.4%2015.36%202%2012.28%202%208.5%202%205.42%204.42%203%207.5%203c1.74%200%203.41.81%204.5%202.09C13.09%203.81%2014.76%203%2016.5%203%2019.58%203%2022%205.42%2022%208.5c0%203.78-3.4%206.86-8.55%2011.54z%22%2F%3E%3C%2Fsvg%3E) 50%/0 no-repeat;border-radius:3px}input[type=checkbox]:after,input[type=radio]:after{content:"";opacity:0;transition:background-size .25s cubic-bezier(.34,1.56,.64,1),opacity .2s;position:absolute;inset:2px}input[type=radio]:after{background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2024%2024%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%226%22%2F%3E%3C%2Fsvg%3E) 50%/0 no-repeat;border-radius:50%}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--color-success);border-color:var(--color-success)}input[type=checkbox]:checked:after{opacity:1;background-size:13px;animation:.3s cubic-bezier(.34,1.56,.64,1) heart-pop}input[type=radio]:checked:after{opacity:1;background-size:10px;animation:.3s cubic-bezier(.34,1.56,.64,1) heart-pop}input[type=checkbox]:indeterminate{background:var(--color-success);border-color:var(--color-success)}input[type=checkbox]:indeterminate:after{opacity:1;background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%222.5%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M6%2012h12%22%2F%3E%3C%2Fsvg%3E) 50%/12px no-repeat}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--color-success);outline-offset:2px;box-shadow:none}input[type=checkbox]:focus-visible{border-radius:7px}input[type=checkbox].checkbox-sm{border-radius:4px;width:16px;height:16px}input[type=checkbox].checkbox-sm:checked:after{background-size:10px}input[type=checkbox].checkbox-circle{border-radius:50%}input[type=checkbox].checkbox-circle:after{background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2024%2024%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%226%22%2F%3E%3C%2Fsvg%3E) 50%/0 no-repeat;border-radius:50%}input[type=checkbox].checkbox-circle:checked:after{background-size:10px}input[type=checkbox].checkbox-exclude{border-color:var(--color-danger)}input[type=checkbox].checkbox-exclude:after{background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%222.5%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22m8%208%208%208M16%208l-8%208%22%2F%3E%3C%2Fsvg%3E) 50%/0 no-repeat}input[type=checkbox].checkbox-exclude:checked{background:var(--color-danger);border-color:var(--color-danger)}input[type=checkbox].checkbox-exclude:checked:after{opacity:1;background-size:10px;animation:.3s cubic-bezier(.34,1.56,.64,1) heart-pop}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-small)}.data-table td,.data-table th{text-align:left;white-space:nowrap;border-bottom:1px solid var(--color-border);padding:12px 14px}.data-table th{color:var(--color-text-secondary);font-weight:500;font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.04em}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--color-surface-alt)}.data-table tbody tr{cursor:pointer}.data-table-wrap{overflow-x:auto}.data-table thead{z-index:3}.data-table thead th{z-index:1;background:var(--color-surface);position:sticky;top:0}.data-table--sticky-actions td:last-child,.data-table--sticky-actions th:last-child{background:var(--color-surface);z-index:1;text-align:center;will-change:transform;position:sticky;right:0}.data-table--sticky-actions thead th:last-child{z-index:2}.data-table--sticky-col-2 td:nth-child(2),.data-table--sticky-col-2 th:nth-child(2),.data-table--sticky-col-3 td:nth-child(3),.data-table--sticky-col-3 th:nth-child(3){z-index:1;background:var(--color-surface);min-width:var(--sticky-col-min-width,150px);position:sticky;left:0}.data-table--sticky-col-2 thead th:nth-child(2),.data-table--sticky-col-3 thead th:nth-child(3){z-index:2}.data-table--sticky-col-2 tbody tr:hover td:nth-child(2),.data-table--sticky-col-3 tbody tr:hover td:nth-child(3){background:var(--color-surface-alt)}.data-table tbody tr[data-p-selected=true],.data-table--sticky-col-2 tbody tr[data-p-selected=true] td:nth-child(2),.data-table--sticky-col-3 tbody tr[data-p-selected=true] td:nth-child(3){background:var(--color-primary-soft)}.select-dropdown{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);font:inherit;font-size:var(--fs-small);color:var(--color-text);appearance:none;background-image:var(--select-chevron);cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast);background-position:right 10px center;background-repeat:no-repeat;padding:8px 32px 8px 12px}.select-dropdown:hover{border-color:var(--color-primary-light)}.ef-select,.field-select{appearance:none;background-image:var(--select-chevron);background-position:right 10px center;background-repeat:no-repeat}.field-select{padding-right:32px}.ef-select{padding-right:34px}@media (width<=768px){.ef-input,.ef-select,.ef-textarea,.field-input,.field-select,.field-textarea,.select-dropdown{font-size:var(--fs-caption);padding:8px 10px}.ef-select,.field-select,.select-dropdown{background-position:right 8px center;padding-right:28px}.tagpick-search-input{font-size:var(--fs-caption);padding:8px 10px 8px 28px}.tagpick-search-icon{left:8px}}.sidebar{width:280px;padding:var(--gap-lg);background:var(--color-surface);border-right:1px solid var(--color-border);flex-shrink:0;overflow-y:auto}.sidebar-section{margin-bottom:var(--gap-lg)}.sidebar-section-header{cursor:pointer;padding:var(--gap-sm) 0;font-weight:600;font-size:var(--fs-small);justify-content:space-between;align-items:center;display:flex}.sidebar-section-header-static{cursor:default}.sidebar-section-body{padding-top:var(--gap-sm)}.sidebar-nav a{align-items:center;gap:var(--gap-sm);padding:10px var(--gap-md);border-radius:var(--radius-sm);font-size:var(--fs-small);color:var(--color-text-secondary);transition:all var(--transition-fast);display:flex}.sidebar-nav a:hover{background:var(--color-surface-alt);color:var(--color-text)}.sidebar-nav a.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:500}.sidebar-nav-section{margin-bottom:var(--gap-md)}.sidebar-nav-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);padding:var(--gap-sm) var(--gap-md);margin-bottom:var(--gap-xs);font-size:11px;font-weight:600}.drawer-identity{align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md) var(--gap-md);display:flex}.drawer-identity-text{min-width:0}.drawer-identity-name{font-size:var(--fs-small);color:var(--color-text);font-weight:600}.drawer-identity-email{font-size:var(--fs-caption);color:var(--color-text-secondary);overflow-wrap:anywhere}@media (width<=768px){.sidebar-nav-section{margin-bottom:var(--gap-sm)}.sidebar-nav-label{padding:var(--gap-xs) var(--gap-md)}.drawer-identity{padding:var(--gap-xs) var(--gap-md) var(--gap-sm)}}.admin-sidebar{flex-direction:column;width:260px;padding:0;display:flex;overflow:hidden}.admin-sidebar-header{padding:var(--gap-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.admin-sidebar-logo{font-family:var(--font-display);color:var(--color-primary);letter-spacing:-.01em;font-size:17px;font-weight:700}.admin-sidebar-subtitle{font-family:var(--font-body);font-size:var(--fs-caption);color:var(--color-text-secondary);margin-top:2px;font-weight:400;display:block}.admin-sidebar-logo .app-logo-img{height:30px}.admin-sidebar .sidebar-nav-groups{padding:var(--gap-md);flex:auto;min-height:0;overflow-y:auto}.admin-sidebar-footer{padding:var(--gap-md);border-top:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0}.layout-with-sidebar{min-height:calc(100vh - 64px);display:flex}.layout-main{min-width:0;padding:var(--gap-xl);flex:1}.page-header{justify-content:space-between;align-items:center;gap:var(--gap-md);margin-bottom:var(--gap-xl);flex-wrap:wrap;display:flex}.page-header h1{margin:0}.search-row{align-items:center;gap:var(--gap-md);margin-bottom:var(--gap-lg);flex-wrap:wrap;display:flex}.search-row .search-bar{flex:1;min-width:240px;max-width:400px}.stat-strip{background:var(--color-border);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;display:grid;overflow:hidden}.stat-strip .stat-cell{padding:var(--gap-md) var(--gap-lg);background:var(--color-surface);flex-direction:column;gap:2px;display:flex}.stat-strip a.stat-cell{transition:background var(--transition-fast)}.stat-strip a.stat-cell:hover{background:var(--color-primary-soft)}.stat-strip a.stat-cell:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.stat-strip .stat-n{font-family:var(--font-display);color:var(--color-text);font-size:26px;font-weight:700;line-height:1.1}.stat-strip .stat-label{font-size:var(--fs-caption);color:var(--color-text-secondary)}.stat-strip .stat-sub{color:var(--color-text-secondary);opacity:.85;font-size:11px}.table-card{background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);margin-bottom:var(--gap-xl);overflow:hidden}.table-section{min-height:600px}.page-content:has(.admin-page){height:100vh;overflow:hidden}.page-content:has(.admin-page) .layout-with-sidebar{height:100%}.page-content:has(.admin-page) .layout-main{flex-direction:column;min-height:0;display:flex;overflow:hidden}.page-content:has(.admin-scroll-page){height:100vh;overflow:hidden}.page-content:has(.admin-scroll-page) .layout-with-sidebar{height:100%}.page-content:has(.admin-scroll-page) .layout-main{min-height:0;overflow-y:auto}.admin-page{flex-direction:column;height:100%;min-height:0;display:flex}.admin-page>.page-header,.admin-page>.search-row{flex:none}.admin-table,.admin-table .table-card,.admin-table>.table-section{flex-direction:column;flex:0 auto;min-height:0;display:flex}.admin-table .table-card{margin-bottom:0}.admin-table .data-table-wrap{overflow:visible}.admin-table .data-table-wrap,.admin-table [data-pc-name=datatable]{flex-direction:column;flex:0 auto;min-height:0;display:flex}.admin-table [data-pc-name=datatable]>[data-pc-section=tablecontainer]{flex:0 auto;min-height:0}.table-empty{align-items:center;gap:var(--gap-md);padding:var(--gap-2xl) var(--gap-lg);text-align:center;color:var(--color-text-secondary);font-size:var(--fs-small);flex-direction:column;display:flex}.table-empty-icon{color:var(--color-primary-light)}.name-cell{vertical-align:bottom;text-overflow:ellipsis;white-space:nowrap;max-width:220px;display:inline-block;overflow:hidden}.name-cell--clamp{max-width:var(--sticky-col-max-width,500px)}.author-avatar{border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-weight:600;display:grid}.aliases-list,.author-avatar{font-size:var(--fs-caption);color:var(--color-text-secondary)}.aliases-list{line-height:1.5}.action-link{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);transition:all var(--transition-fast);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.action-link:hover{background:var(--color-surface-alt);color:var(--color-primary)}.navbar-admin-label{background:var(--color-primary-soft);color:var(--color-primary);font-family:var(--font-body);font-size:var(--fs-caption);border-radius:var(--radius-pill);letter-spacing:.02em;vertical-align:middle;align-items:center;margin-left:8px;padding:2px 8px;font-weight:500;display:inline-flex}.admin-user{align-items:center;gap:var(--gap-sm);font-size:var(--fs-small);color:var(--color-text-secondary);display:flex}.admin-user-avatar{--avatar-bg:var(--color-surface-alt);--avatar-fg:var(--color-primary);border:1px solid var(--color-border)}.user-avatar{border:1px solid var(--color-border);background:var(--color-surface-alt);cursor:pointer;width:36px;height:36px;transition:border-color var(--transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.user-avatar:hover{border-color:var(--color-primary-light)}.footer{background:var(--color-surface-alt);border-top:1px solid var(--color-border);padding:var(--gap-lg) 0;color:var(--color-text-secondary);font-size:var(--fs-small)}.footer-links{justify-content:center;align-items:center;gap:var(--gap-sm) var(--gap-md);flex-wrap:wrap;display:flex}.footer-links a{color:var(--color-text-secondary);transition:color var(--transition-fast)}.footer-links a:hover{color:var(--color-primary)}.footer-links a:not(:last-child):after{content:"·";margin-left:var(--gap-md);color:var(--color-border)}.footer-bottom{margin-top:var(--gap-sm);text-align:center;font-size:var(--fs-caption)}.hero{background:var(--color-surface-alt);padding:var(--gap-3xl) 0 var(--gap-2xl);text-align:center}.hero h1{margin-bottom:var(--gap-md)}.hero .lead{color:var(--color-text-secondary);max-width:48ch;margin:0 auto var(--gap-xl);font-size:18px;line-height:1.6}.hero-actions{justify-content:center;gap:var(--gap-md);flex-wrap:wrap;display:flex}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-in-left{0%{transform:translate(-100%)}to{transform:none}}.drawer-slide-in{animation:drawer-in-left var(--transition-fast) ease-out}.modal-overlay{background:color-mix(in oklch,var(--color-surface-alt) 55%,transparent);-webkit-backdrop-filter:blur(8px);z-index:300;padding:var(--gap-lg);animation:overlay-in var(--transition-fast) ease-out;place-items:center;display:grid;position:fixed;inset:0}.modal-enter-active,.modal-leave-active{transition:opacity var(--transition-fast),transform var(--transition-fast)}.modal-enter-from,.modal-leave-to{opacity:0;transform:translateY(8px)scale(.96)}.slide-over-enter-active{transition:transform .35s cubic-bezier(.22,1,.36,1),opacity .25s}.slide-over-leave-active{transition:transform .25s cubic-bezier(.55,0,1,.45),opacity .2s}.slide-over-enter-from,.slide-over-leave-to{opacity:0;transform:translate(30%)scale(.98)}.slide-over-mask{transition:opacity .3s}.slide-over-content{padding:var(--gap-lg);flex:auto;min-height:0;overflow-y:auto}@media (width<=768px){.slide-over-content{padding:var(--gap-sm)}}.slide-over-footer{gap:var(--gap-sm);padding:var(--gap-lg);border-top:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;flex-shrink:0;display:flex}@media (width<=768px){.slide-over-footer{padding:var(--gap-md)}}.modal{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card-hover);flex-direction:column;width:100%;max-width:560px;max-height:85vh;display:flex;overflow:hidden}.modal-wide{max-width:800px}.modal-overlay-flush{padding:0}.modal-fullscreen{border-radius:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh}.modal-header{padding:var(--gap-lg);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}@media (width<=768px){.modal-header{padding:var(--gap-sm) var(--gap-md)}}.modal-body{padding:var(--gap-lg);flex:auto;min-height:0;overflow-y:auto}@media (width<=768px){.modal-body{padding:var(--gap-md)}}.modal-body-flex{flex-direction:column;display:flex}.modal-footer{justify-content:flex-end;gap:var(--gap-sm);padding:var(--gap-lg);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.cloud-dialog-overlay{z-index:300;padding:var(--gap-lg);background:color-mix(in oklch,var(--color-surface-alt) 55%,transparent);-webkit-backdrop-filter:blur(8px);animation:overlay-in var(--transition-fast) ease-out;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cloud-dialog{background:color-mix(in oklch,var(--color-surface) 92%,transparent);border:1px solid var(--color-primary-light);border-radius:var(--radius-md);width:100%;max-width:400px;padding:var(--gap-xl);text-align:center;box-shadow:0 16px 48px #d4819b1f}.cloud-dialog-title{font-family:var(--font-body);color:var(--color-text);margin-bottom:var(--gap-sm);font-size:18px;font-weight:600}.cloud-dialog-body{font-size:var(--fs-small);color:var(--color-text-secondary);margin-bottom:var(--gap-xl);line-height:1.6}.cloud-dialog-actions{gap:var(--gap-sm);justify-content:center;display:flex}.cloud-dialog-enter-from,.cloud-dialog-leave-to{opacity:0;transform:translateY(16px)scale(.95)}.cloud-dialog-enter-active,.cloud-dialog-leave-active{transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s}.steps{margin-bottom:var(--gap-xl);gap:0}.step,.steps{align-items:center;display:flex}.step{gap:var(--gap-sm);font-size:var(--fs-small);color:var(--color-text-secondary)}.step-number{width:28px;height:28px;font-size:var(--fs-caption);background:var(--color-surface-alt);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:50%;place-items:center;font-weight:600;display:grid}.step.active .step-number{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.step.completed .step-number{background:var(--color-success);color:#fff;border-color:var(--color-success)}.step-line{background:var(--color-border);height:1px;margin:0 var(--gap-sm);flex:1;min-width:24px}.cover-placeholder{aspect-ratio:2/3;background:linear-gradient(135deg,var(--color-surface-alt),var(--color-border));border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--fs-caption);place-items:center;display:grid}.summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--gap-lg);transition:transform var(--transition-fast)}.summary-card:hover{transform:translateY(-2px)}.summary-card-count{font-family:var(--font-display);font-size:var(--fs-h2);color:var(--color-primary);margin-bottom:var(--gap-xs);font-weight:700}.summary-card-label{font-size:var(--fs-small);color:var(--color-text-secondary)}.diff-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.diff-header{padding:var(--gap-md) var(--gap-lg);background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);font-size:var(--fs-caption);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;grid-template-columns:40px 120px 1fr 1fr;font-weight:600;display:grid}.diff-header-select{justify-content:center;align-items:center;display:flex}.diff-row{border-bottom:1px solid var(--color-border);grid-template-columns:40px 120px 1fr 1fr;align-items:stretch;display:grid}.diff-row:last-child{border-bottom:none}.diff-checkbox{padding:var(--gap-md);justify-content:center;align-items:center;display:flex}.diff-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px}.diff-label{padding:var(--gap-md);font-size:var(--fs-small);color:var(--color-text-secondary);border-right:1px solid var(--color-border);align-items:center;font-weight:600;display:flex}.diff-current{background:var(--color-danger-soft,#fdecea);border-right:1px solid var(--color-border)}.diff-current,.diff-proposed{padding:var(--gap-md) var(--gap-lg);font-size:var(--fs-small);white-space:pre-wrap;word-break:break-word;align-items:center;display:flex}.diff-proposed{background:var(--color-success-soft,#edf5ec)}.diff-tag-list{gap:var(--gap-xs);flex-wrap:wrap;display:flex}.diff-tag{border-radius:var(--radius-pill);font-size:var(--fs-caption);background:var(--color-surface-alt);border:1px solid var(--color-border);padding:2px 10px;display:inline-flex}.diff-tag-added{background:var(--color-success-soft,#edf5ec);border-color:var(--color-success);color:var(--color-success)}.diff-tag-removed{background:var(--color-danger-soft,#fdecea);border-color:var(--color-danger);color:var(--color-danger);text-decoration:line-through}.diff-new-note{margin-top:var(--gap-md);padding:var(--gap-sm) var(--gap-md);background:var(--color-accent-soft);border-radius:var(--radius-sm);font-size:var(--fs-caption);color:var(--color-accent-ink);align-items:flex-start;gap:6px;line-height:1.5;display:flex}.diff-new-note svg{flex-shrink:0;margin-top:1px}.callout{padding:var(--gap-md) var(--gap-lg);border-radius:var(--radius-sm);font-size:var(--fs-small)}.callout-warning{background:var(--color-warning-soft);border-left:3px solid var(--color-warning)}.callout-info{background:color-mix(in oklch,var(--color-primary) 8%,transparent);border-left:3px solid var(--color-primary-light)}.callout-danger{background:var(--color-danger-soft);border-left:3px solid var(--color-danger)}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.skeleton{background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface-alt) 50%,var(--color-border) 75%);border-radius:var(--radius-sm);background-size:400px 100%;animation:1.5s linear infinite shimmer}@media (width<=1024px){:root{--gutter:24px}.author-grid,.contributor-grid,.grid-4,.grid-5,.tag-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar{width:240px}.admin-sidebar{width:220px}}@media (width<=768px){:root{--gutter:16px}.navbar{height:56px}.page-content{padding-top:56px}.navbar-nav{display:none}.navbar-logo{font-size:16px}.app-logo-img{height:28px}.grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:minmax(0,1fr)}.author-grid,.contributor-grid,.novel-grid{gap:var(--gap-md)}.author-grid,.contributor-grid,.novel-grid,.tag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tag-cloud{gap:var(--gap-sm)}.hero{padding:var(--gap-2xl) 0}.layout-with-sidebar{flex-direction:column}.sidebar{display:none}.sidebar-grid{gap:var(--gap-md) var(--gap-lg);grid-template-columns:repeat(2,1fr);align-items:start;max-width:720px;margin-inline:auto;display:grid}.sidebar-grid .sidebar-section{margin-bottom:0}.sidebar-grid .sidebar-section-span{grid-column:1/-1}.layout-main{padding:var(--gap-md)}.diff-header{display:none}.diff-row{grid-template-columns:auto 1fr}.diff-checkbox{padding-right:var(--gap-xs);justify-content:flex-start}.diff-label{border-right:none}.diff-current,.diff-proposed{border-right:none;grid-column:1/-1}.ef-body{grid-template-columns:1fr}.ef-arrow{display:none}.ef-toggle{flex-wrap:wrap}.ef-preview{max-width:100%;padding-left:calc(18px + var(--gap-sm));flex-basis:100%;margin-left:0}.steps{margin-bottom:var(--gap-md)}.step-label{display:none}.step-number{width:24px;height:24px;font-size:11px}.step-line{min-width:12px;margin:0 6px}.page-header{flex-direction:column;align-items:flex-start}.callout{font-size:var(--fs-caption);padding:var(--gap-sm) var(--gap-md)}.admin-page .search-row{gap:var(--gap-sm)}.admin-page .search-row .search-bar{min-width:140px}.admin-page .search-row .search-bar-full{gap:var(--gap-xs);padding:7px 14px}.admin-page .search-row .search-bar-full input{font-size:var(--fs-caption)}.admin-page .search-row .search-bar-full .search-icon{width:15px;height:15px}.admin-page>.page-header{margin-bottom:var(--gap-md)}.admin-page>.search-row{margin-bottom:var(--gap-sm)}.admin-table .table-card{margin-bottom:0}.table-card .pagination-shell{padding:var(--gap-sm) var(--gap-md)}.admin-page .page-header .btn{font-size:var(--fs-caption);padding:6px 14px}.data-table--sticky-actions td:last-child,.data-table--sticky-actions th:last-child{white-space:nowrap;padding-left:var(--gap-sm);padding-right:var(--gap-sm);width:1%!important}.data-table--sticky-actions thead th:last-child{font-size:0}.data-table--sticky-col-2 td:nth-child(2),.data-table--sticky-col-2 th:nth-child(2),.data-table--sticky-col-3 td:nth-child(3),.data-table--sticky-col-3 th:nth-child(3){width:var(--sticky-col-width-mobile,150px)!important}.name-cell{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;vertical-align:baseline}.name-cell--clamp{-webkit-line-clamp:2;line-clamp:2;max-width:var(--sticky-col-width-mobile,150px);-webkit-box-orient:vertical;display:-webkit-inline-box}.subs-tab{font-size:var(--fs-caption);padding:8px 10px}.subs-tab-count{padding:1px 5px}.data-table{font-size:var(--fs-caption)}.data-table td,.data-table th{padding:8px 10px}.data-table tbody td{height:61px}.action-link{width:28px;height:28px}.actions-cell{gap:2px!important}.tag-pill{padding:2px 8px;font-size:11px}.novel-card-tags{height:52px}}@media (width<=560px){.novel-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}}@media (width<=430px){.search-bar-full{padding:10px 16px}.window-toggle-option{padding:6px 12px}}.page-enter-active{transition:opacity .28s,transform .28s}.page-leave-active{transition:opacity .2s,transform .2s}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-4px)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeleton{animation:none!important}}html.theme-transition,html.theme-transition *,html.theme-transition :after,html.theme-transition :before{transition:background-color var(--transition-theme),border-color var(--transition-theme),color var(--transition-theme),fill var(--transition-theme)!important}.theme-toggle-icon--dark,[data-theme=dark] .theme-toggle-icon--light{display:none}[data-theme=dark] .theme-toggle-icon--dark{display:inline-block}.toggle-switch{background:var(--color-border);border-radius:var(--radius-pill);cursor:pointer;width:40px;height:22px;transition:background var(--transition-fast);border:none;flex-shrink:0;padding:0;position:relative}.toggle-switch:after{content:"";width:16px;height:16px;transition:transform var(--transition-fast);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.toggle-switch.active{background:var(--color-primary)}.toggle-switch.active:after{transform:translate(18px)}.toggle-switch.toggle-switch--success.active{background:var(--color-success)}.toggle-switch:focus-visible{box-shadow:var(--focus-ring);outline:none}.toggle-switch:disabled{opacity:.5;cursor:not-allowed}.toggle-switch--sm{width:36px;height:20px}.toggle-switch--sm:after{width:16px;height:16px;top:2px;left:2px}.toggle-switch--sm.active:after{transform:translate(16px)}.tag-cat-badge{border-radius:var(--radius-pill);font-size:var(--fs-caption);white-space:nowrap;align-items:center;padding:3px 10px;font-weight:500;line-height:1.2;display:inline-flex}.tag-cat-badge--sm{padding:2px 8px;font-size:11px}.tag-cat-badge--primary{color:var(--color-primary);background:var(--color-primary-soft);border:1px solid color-mix(in oklch,var(--color-primary) 25%,transparent)}.tag-cat-badge--success{color:var(--color-success);background:color-mix(in oklch,var(--color-success) 14%,transparent);border:1px solid color-mix(in oklch,var(--color-success) 30%,transparent)}.tag-cat-badge--warning{color:var(--color-warning);background:color-mix(in oklch,var(--color-warning) 16%,transparent);border:1px solid color-mix(in oklch,var(--color-warning) 32%,transparent)}.tag-cat-badge--accent{color:var(--color-accent);background:var(--color-accent-soft);border:1px solid color-mix(in oklch,var(--color-accent) 28%,transparent)}.tag-cat-badge--danger{color:var(--color-danger);background:color-mix(in oklch,var(--color-danger) 14%,transparent);border:1px solid color-mix(in oklch,var(--color-danger) 30%,transparent)}.tag-cat-badge--muted{color:var(--color-text-secondary);background:var(--color-surface-alt);border:1px solid var(--color-border)}input[type=checkbox].table-checkbox{cursor:pointer;width:16px;height:16px}input[type=checkbox].table-checkbox:checked:after{background-size:10px}.order-input{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);width:56px;font:inherit;font-size:var(--fs-caption);text-align:center;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast);padding:4px 8px}.order-input:focus{border-color:var(--color-primary);outline:none}.bulk-actions{align-items:center;gap:var(--gap-md);margin-bottom:var(--gap-lg);flex-wrap:wrap;display:flex}.bulk-actions-count{font-size:var(--fs-small);font-weight:500}.action-link--danger:hover{background:var(--color-danger-soft);color:var(--color-danger)}.action-link--warning:hover{background:var(--color-warning-soft);color:var(--color-warning)}.berry{--veil:color-mix(in srgb, var(--color-bg) 60%, transparent);background-image:linear-gradient(var(--veil),var(--veil)),var(--berry);background-repeat:repeat,repeat;background-size:auto,var(--berry-scale,90px);filter:saturate(.85);background-position:50%}[data-theme=dark] .berry{--veil:color-mix(in srgb, var(--color-bg) 55%, transparent);filter:saturate(.82)brightness(.9)}.divider-berry{--berry-scale:78px;border-radius:var(--radius-pill);height:52px;margin:var(--gap-xl) 0;border:none;-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.berry-ribbon{--berry-scale:56px;width:100%;height:40px;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.berry-badge{--berry-scale:40px;border:1.5px solid var(--color-border-strong);width:46px;height:46px;box-shadow:var(--shadow-card);border-radius:14px;flex-shrink:0}.berry-hem{--berry-scale:70px;height:34px;-webkit-mask-image:radial-gradient(circle at 50% 100%,#0000 11px,#000 12px);mask-image:radial-gradient(circle at 50% 100%,#0000 11px,#000 12px);-webkit-mask-position:bottom;mask-position:bottom;-webkit-mask-size:34px 34px;mask-size:34px 34px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.berry-hem--pinned{pointer-events:none;position:absolute;bottom:0;left:0;right:0}.driver-popover.driver-popover{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:0 12px 32px color-mix(in oklch,var(--color-text) 18%,transparent);font-family:var(--font-body)}.driver-popover .driver-popover-title{font-family:var(--font-display);font-size:var(--fs-h3);color:var(--color-text)}.driver-popover .driver-popover-description{color:var(--color-text-secondary);line-height:1.6}.driver-popover .driver-popover-progress-text{color:var(--color-text-secondary);font-size:var(--fs-caption)}.driver-popover .driver-popover-prev-btn{background:var(--color-surface-alt);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-pill);text-shadow:none;font-family:var(--font-body)}.driver-popover .driver-popover-next-btn{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);border-radius:var(--radius-pill);text-shadow:none;font-family:var(--font-body)}.driver-popover .driver-popover-close-btn{color:var(--color-text-secondary)}.driver-popover .driver-popover-arrow{display:none}.falling-decor[data-v-12bb80ae]{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.drifter[data-v-12bb80ae]{will-change:transform;width:34px;height:34px;position:absolute;top:0;left:0}.drifter--star[data-v-12bb80ae]{width:26px;height:26px}.drifter-svg[data-v-12bb80ae]{width:100%;height:100%;display:block}.drifter--leaf-gold[data-v-12bb80ae]{color:var(--color-accent)}.drifter--leaf-rose[data-v-12bb80ae]{color:var(--color-primary-light)}.drifter--leaf-mauve[data-v-12bb80ae]{color:var(--color-primary)}.drifter--star-gold[data-v-12bb80ae]{color:var(--color-accent)}.drifter--star-berry[data-v-12bb80ae]{color:var(--color-ink-berry)}.drifter--star-pale[data-v-12bb80ae]{color:var(--color-text)}.leaf-body[data-v-12bb80ae]{fill:currentColor}.leaf-vein[data-v-12bb80ae]{fill:none;stroke:currentColor;stroke-width:.6px;opacity:.45}.star-shape[data-v-12bb80ae]{fill:currentColor;stroke:currentColor;stroke-width:2.4px;stroke-linejoin:round}.drifter--star .drifter-svg[data-v-12bb80ae]{filter:drop-shadow(0 0 3px)}
