:root{--color-bg: #f6f6f3;--color-bg-soft: #efeeea;--color-surface: #ffffff;--color-surface-2: #fafaf7;--color-ink: #16181d;--color-ink-2: #3a3f47;--color-ink-3: #6c727a;--color-line: rgba(22, 24, 29, .08);--color-line-strong: rgba(22, 24, 29, .16);--color-accent: #0066ff;--color-accent-2: #00d4ff;--color-accent-soft: rgba(0, 102, 255, .12);--color-success: #16a34a;--color-warning: #d97706;--color-danger: #dc2626;--color-info: #2563eb;--glass-bg: rgba(255, 255, 255, .55);--glass-stroke: rgba(255, 255, 255, .65);--glass-blur: 18px;--glass-shadow: 0 8px 32px rgba(17, 24, 39, .08), inset 0 1px 0 rgba(255, 255, 255, .6);--radius-xs: 8px;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 22px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 6px 24px rgba(17, 24, 39, .07);--shadow-lg: 0 24px 60px rgba(17, 24, 39, .12);--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--font-display: "Montserrat", "Pretendard Variable", Pretendard, -apple-system, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--fs-xs: clamp(.72rem, .7rem + .1vw, .78rem);--fs-sm: clamp(.82rem, .78rem + .2vw, .92rem);--fs-base: clamp(.94rem, .9rem + .2vw, 1.02rem);--fs-lg: clamp(1.12rem, 1rem + .6vw, 1.32rem);--fs-xl: clamp(1.5rem, 1.2rem + 1.4vw, 2.2rem);--fs-2xl: clamp(2rem, 1.6rem + 2vw, 3.2rem);--fs-3xl: clamp(2.4rem, 1.8rem + 2.6vw, 4.2rem);--fs-page-title: clamp(1.6rem, 1.3rem + 1.2vw, 2.4rem);--fs-mega: clamp(3rem, 2.4rem + 2.8vw, 5rem);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .16s;--dur-md: .28s;--dur-slow: .52s;--container: min(1240px, 100% - 2rem);--header-h: 64px;--grain-opacity: .06;color-scheme:light}[data-theme=dark]{--color-bg: #0b0d12;--color-bg-soft: #0f131a;--color-surface: #131822;--color-surface-2: #161c27;--color-ink: #f3f5f8;--color-ink-2: #c2c8d2;--color-ink-3: #8d95a3;--color-line: rgba(255, 255, 255, .08);--color-line-strong: rgba(255, 255, 255, .16);--color-accent: #4d9bff;--color-accent-2: #6fe3ff;--color-accent-soft: rgba(77, 155, 255, .18);--glass-bg: rgba(20, 25, 35, .55);--glass-stroke: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .06);--grain-opacity: .09;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg: #0b0d12;--color-bg-soft: #0f131a;--color-surface: #131822;--color-surface-2: #161c27;--color-ink: #f3f5f8;--color-ink-2: #c2c8d2;--color-ink-3: #8d95a3;--color-line: rgba(255, 255, 255, .08);--color-line-strong: rgba(255, 255, 255, .16);--color-accent: #4d9bff;--color-accent-2: #6fe3ff;--color-accent-soft: rgba(77, 155, 255, .18);--glass-bg: rgba(20, 25, 35, .55);--glass-stroke: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .06);--grain-opacity: .09;color-scheme:dark}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-base);color:var(--color-ink);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss01","ss03";min-height:100svh;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.4' numOctaves='2' seed='7' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:240px 240px;mix-blend-mode:overlay}body:after{content:"";position:fixed;inset:-20vmax;pointer-events:none;z-index:0;background:radial-gradient(40vmax 40vmax at 15% 10%,color-mix(in oklab,var(--color-accent) 20%,transparent),transparent 60%),radial-gradient(45vmax 45vmax at 85% 90%,color-mix(in oklab,var(--color-accent-2) 18%,transparent),transparent 65%);filter:blur(60px);opacity:.7}#root{position:relative;z-index:1}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 .5em;line-height:1.1;text-wrap:balance}h1{font-size:var(--fs-3xl);font-weight:800}h2{font-size:var(--fs-2xl);font-weight:700}h3{font-size:var(--fs-xl);font-weight:700}.page-title{font-size:var(--fs-page-title);font-weight:700;letter-spacing:-.005em}.page-title svg{font-size:.85em;opacity:.85}.mega-num{font-family:var(--font-display);font-size:var(--fs-mega);font-weight:800;line-height:1;letter-spacing:-.02em}p{margin:0 0 1em;color:var(--color-ink-2);line-height:1.6;text-wrap:pretty}a{color:inherit;text-decoration:none;text-underline-offset:3px}a:hover{text-decoration:underline}.skip-nav{position:absolute;left:-9999px;top:0;z-index:100;background:var(--color-ink);color:var(--color-bg);padding:.75rem 1rem;border-radius:0 0 var(--radius-sm) 0}.skip-nav:focus{left:0;outline:3px solid var(--color-accent)}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px;border-radius:4px}button,input,select,textarea,optgroup{font-family:inherit;font-size:inherit;color:inherit}input,select,textarea{font-family:var(--font-sans)}img{max-width:100%;display:block}.container{width:var(--container);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.glass{background:var(--glass-bg);border:1px solid var(--glass-stroke);border-radius:var(--radius-lg);backdrop-filter:blur(var(--glass-blur)) saturate(140%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);box-shadow:var(--glass-shadow)}.site-header{position:sticky;top:0;z-index:50;height:var(--header-h);display:flex;align-items:center;padding-inline:clamp(1rem,4vw,2rem);border-bottom:1px solid transparent;transition:background var(--dur-md) var(--ease-out),backdrop-filter var(--dur-md),border-color var(--dur-md)}.site-header.scrolled{background:color-mix(in oklab,var(--color-bg) 65%,transparent);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom-color:var(--color-line)}.site-header .brand{font-family:var(--font-display);font-weight:800;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:.6rem}.site-header .brand-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-2));display:grid;place-items:center;color:#fff;font-size:14px}.site-header nav.primary{display:flex;gap:.25rem;margin-inline-start:2rem}.site-header nav.primary a{padding:.7rem .95rem;min-height:44px;display:inline-flex;align-items:center;gap:.4rem;border-radius:var(--radius-pill);color:var(--color-ink-2);font-weight:500}.site-header nav.primary a:hover{background:var(--color-line);text-decoration:none}.site-header nav.primary a[aria-current=page]{background:var(--color-accent);color:#fff;font-weight:600}.site-header .right{margin-inline-start:auto;display:flex;align-items:center;gap:.5rem}.btn{--btn-bg: var(--color-ink);--btn-fg: var(--color-bg);position:relative;display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;border-radius:var(--radius-pill);border:1px solid transparent;background:var(--btn-bg);color:var(--btn-fg);font-weight:600;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-md),box-shadow var(--dur-md),color var(--dur-md);will-change:transform}.btn:hover{box-shadow:var(--shadow-md)}.btn:active{transform:translateY(1px) scale(.99)}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn-ghost{--btn-bg: transparent;--btn-fg: var(--color-ink);border-color:var(--color-line-strong)}.btn-accent{--btn-bg: linear-gradient(135deg, var(--color-accent), var(--color-accent-2));--btn-fg: white}.btn-danger{--btn-bg: var(--color-danger);--btn-fg: white}.ripple{position:absolute;inset:auto;border-radius:50%;transform:translate(-50%,-50%) scale(0);background:#fff6;pointer-events:none;animation:ripple-out .6s var(--ease-out) forwards;z-index:0;mix-blend-mode:overlay}@keyframes ripple-out{to{transform:translate(-50%,-50%) scale(28);opacity:0}}.card{position:relative;padding:1.25rem;border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-line);transition:transform var(--dur-md) var(--ease-out),box-shadow var(--dur-md);transform-style:preserve-3d;will-change:transform;overflow:hidden;min-width:0}.card:hover{box-shadow:var(--shadow-lg)}.card .card-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:700;margin:0 0 .5rem}.card .card-sub{color:var(--color-ink-3);font-size:var(--fs-sm)}.card.spot:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(240px circle at var(--spot-x, 50%) var(--spot-y, 50%),color-mix(in oklab,var(--color-accent) 22%,transparent),transparent 60%);opacity:0;transition:opacity var(--dur-md) var(--ease-out);pointer-events:none}.card.spot:hover:before{opacity:1}.bento{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:640px){.bento{grid-template-columns:repeat(4,1fr);gap:1.1rem}}@media(min-width:1024px){.bento{grid-template-columns:repeat(6,1fr);gap:1.25rem}}.bento>*{grid-column:span 6}@media(min-width:640px){.bento .b-1,.bento .b-2{grid-column:span 2}.bento .b-3,.bento .b-4{grid-column:span 4}.bento .b-5,.bento .b-6{grid-column:span 2}}@media(min-width:1024px){.bento .b-1{grid-column:span 2;grid-row:span 2}.bento .b-2,.bento .b-3{grid-column:span 2}.bento .b-4,.bento .b-5{grid-column:span 4}.bento .b-6{grid-column:span 2}}.reveal{opacity:0;transform:translateY(24px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}.reveal.in{opacity:1;transform:none}.skeleton{position:relative;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-bg-soft);min-height:16px}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--color-ink) 6%,transparent),transparent);transform:translate(-100%);animation:shimmer 1.6s infinite}@keyframes shimmer{to{transform:translate(100%)}}.h-scroll{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.25rem .25rem 1rem;margin:0 -.25rem;-webkit-overflow-scrolling:touch}.h-scroll>*{scroll-snap-align:start;flex:0 0 78%;min-width:260px;max-width:320px}@media(min-width:900px){.h-scroll>*{flex-basis:32%}}.h-scroll::-webkit-scrollbar{height:8px}.h-scroll::-webkit-scrollbar-thumb{background:var(--color-line-strong);border-radius:999px}.menu-overlay{position:fixed;inset:0;z-index:60;background:color-mix(in oklab,var(--color-bg) 85%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:grid;place-items:center;padding:2rem;opacity:0;pointer-events:none;transition:opacity var(--dur-md) var(--ease-out)}.menu-overlay[data-open=true]{opacity:1;pointer-events:auto}.menu-overlay nav{display:grid;gap:1rem;text-align:center}.menu-overlay nav a{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;padding:.4rem 1rem;border-radius:var(--radius-md)}.menu-overlay nav a:hover{background:var(--color-line);text-decoration:none}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:600;background:var(--color-line);color:var(--color-ink-2);letter-spacing:.02em}.badge.success{background:color-mix(in oklab,var(--color-success) 18%,transparent);color:var(--color-success)}.badge.warn{background:color-mix(in oklab,var(--color-warning) 18%,transparent);color:var(--color-warning)}.badge.danger{background:color-mix(in oklab,var(--color-danger) 18%,transparent);color:var(--color-danger)}.badge.info{background:var(--color-accent-soft);color:var(--color-accent)}.field{display:grid;gap:.35rem;margin-bottom:.85rem}.field>label{font-size:var(--fs-sm);color:var(--color-ink-2);font-weight:600}.field input,.field select,.field textarea{width:100%;padding:.65rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--color-accent) 25%,transparent);outline:none}.table-wrap{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap::-webkit-scrollbar{height:8px}.table-wrap::-webkit-scrollbar-thumb{background:var(--color-line-strong);border-radius:999px}.table{width:100%;min-width:var(--table-min-w, 720px);border-collapse:collapse;font-variant-numeric:tabular-nums}.table th,.table td{text-align:left;padding:.75rem .85rem;border-bottom:1px solid var(--color-line);white-space:nowrap}.table th{color:var(--color-ink-3);font-weight:600;font-size:var(--fs-sm)}.table tbody tr:hover{background:var(--color-line)}.empty-state{display:grid;place-items:center;gap:.5rem;padding:2rem 1rem;color:var(--color-ink-3);text-align:center}.empty-state .icon-lg{font-size:1.8rem;opacity:.5}.logo-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1.25rem;align-items:center;opacity:.85}.logo-row .logo{font-family:var(--font-display);font-weight:700;font-size:1.1rem;letter-spacing:.02em;color:var(--color-ink-3);display:inline-flex;align-items:center;gap:.4rem;justify-content:center}.dot{width:8px;height:8px;border-radius:999px;background:var(--color-success);display:inline-block;position:relative;vertical-align:middle}.dot:after{content:"";position:absolute;inset:-4px;border-radius:inherit;background:inherit;opacity:.35;animation:pulse 1.8s infinite}@keyframes pulse{0%{transform:scale(.6);opacity:.6}to{transform:scale(1.8);opacity:0}}.stack{display:grid;gap:1rem}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.row.space-between{justify-content:space-between}.muted{color:var(--color-ink-3)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.toast-region{position:fixed;right:1rem;bottom:1rem;z-index:80;display:grid;gap:.5rem;max-width:360px}.toast{padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-line);box-shadow:var(--shadow-md);display:flex;align-items:center;gap:.6rem;font-size:var(--fs-sm);animation:toast-in .2s var(--ease-out) both}.toast.error{border-color:color-mix(in oklab,var(--color-danger) 30%,var(--color-line))}.toast.success{border-color:color-mix(in oklab,var(--color-success) 30%,var(--color-line))}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone"}svg.svg-inline--fa:not(:root),svg.svg-inline--fa:not(:host){overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.07143em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin, .3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin, .3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width, 1.25em)}.fa-layers svg.svg-inline--fa{inset:0;margin:auto;position:absolute}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.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);overflow:hidden;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:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom, 0);right:var(--fa-right, 0);top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom, 0);left:var(--fa-left, 0);right:auto;top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top, 0);right:var(--fa-right, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top right}.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:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin, 2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(-1 * var(--fa-li-width, 2em));position:absolute;text-align:center;width:var(--fa-li-width, 2em);line-height:inherit}.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, .08em);padding:var(--fa-border-padding, .2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin, .3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin, .3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 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, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.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))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale, 1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound, -.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale, 1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle, 0))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{inset:0;margin:auto;position:absolute;z-index:var(--fa-stack-z-index, auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse, #fff)}.sr-only,.fa-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:not(:focus),.fa-sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}
