@import"https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Fraunces:opsz,wght@9..144,700&display=swap";:root{color-scheme:light;color:var(--ink);background:var(--page);font-family:Atkinson Hyperlegible,Verdana,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #1c2923;--muted: #4e5c54;--page: #f5f7f4;--panel: #ffffff;--accent: #17643a;--accent-strong: #104c2b;--line: #d0d9d2;--control-border: #7b8980;--secondary: #e6ebe7;--secondary-hover: #d5ddd7;--danger: #ac2626;--danger-hover: #8e1e1e;--focus: #1456b8}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100dvh;margin:0}.screen{display:grid;min-height:100dvh;padding:clamp(1rem,4vw,2rem);background:var(--page);place-items:stretch}.reader-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,34rem);height:calc(100dvh - clamp(2rem,8vw,4rem));max-height:48rem;margin:auto;padding:clamp(1.25rem,5vw,2.5rem);border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 .5rem 2rem #1c29230f}h1,p{overflow-wrap:anywhere}h1{margin:.4rem 0 0;color:var(--ink);font-family:Fraunces,Georgia,serif;font-size:clamp(3rem,18vw,6rem);line-height:.88;letter-spacing:0}.quick-nav-screen{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;min-height:0;grid-template-rows:minmax(0,1fr) auto;gap:1rem;overflow:hidden;overflow:clip;overscroll-behavior:none}.gesture-area{grid-template-rows:minmax(0,1fr);height:100%;min-height:0;min-width:0;max-height:none;overflow:hidden;overflow:clip;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.quick-nav-instructions{align-self:start;min-height:0;min-width:0;max-height:100%;overflow:hidden;overflow:clip;margin:0;font-size:clamp(1rem,2.8dvh,1.25rem);line-height:1.6;white-space:pre-line}.menu-button{width:100%}.menu-screen{display:block;touch-action:auto}.menu-content{width:min(100%,48rem);margin:0 auto}.menu-content>.menu-button+.menu-button{margin-top:1rem}.home-page{display:flex;flex-direction:column;min-height:100dvh}.home-page>.menu-screen{flex:1;min-height:0}.site-footer{padding:0 clamp(1rem,4vw,2rem) max(1rem,env(safe-area-inset-bottom));color:var(--muted);font-size:.875rem;line-height:1.5}.site-footer-content{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.25rem .25em;width:min(100%,48rem);margin:0 auto;padding-top:1rem;border-top:1px solid var(--line);text-align:center}.site-footer-links{display:inline-flex;align-items:center;gap:.25em}.site-footer a{color:inherit;text-underline-offset:.2em}.site-footer a:hover{color:var(--accent-strong)}.site-footer a:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}.site-footer-links a{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:0;font-size:.875rem}.site-footer-brand{white-space:nowrap}.home-introduction{margin-bottom:1.5rem}.home-introduction h1{margin:0;font-size:1.5rem;line-height:1.2}.home-introduction p{margin:.75rem 0 0;color:var(--muted);line-height:1.5}.menu-restaurant-name,.menu-empty-message{margin:2.5rem 0 1.25rem;padding-top:1.5rem;border-top:2px solid var(--line)}.menu-empty-message{padding-bottom:1rem;font-size:1.125rem;line-height:1.8}.menu-restaurant-name{font-size:clamp(1.75rem,7vw,3rem);line-height:1.2}.menu-section{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line)}.menu-section h3{margin:0 0 1rem;color:var(--accent-strong);font-size:clamp(1.4rem,5vw,2rem)}.menu-item{display:grid;grid-template-columns:1.5rem minmax(0,1fr);margin:0 0 1rem;line-height:1.6}.menu-item-bullet{text-align:center}.menu-section h3,.menu-item{overflow-wrap:anywhere}.recent-menus-page{display:flex;flex-direction:column;min-height:100dvh}.selection-screen{flex:1;min-height:0}.selection-panel{grid-template-rows:none;align-content:start;gap:1.25rem;height:auto;min-height:0;max-height:none;margin:0 auto}.app-version{padding:0 1rem max(1rem,env(safe-area-inset-bottom));color:var(--muted);font-size:.875rem;line-height:1.5;text-align:center}.selection-panel h1{font-size:clamp(2.25rem,10vw,3.75rem);line-height:1.05}.selection-note{margin:0;color:var(--muted);line-height:1.5}.search-panel h1{font-size:clamp(1.75rem,7vw,2.5rem);line-height:1.2}.search-form{display:grid;gap:1.5rem}.search-form .menu-name-field{margin-top:0}.search-query-control{position:relative}.menu-name-field .search-query-control input{padding-right:2.5rem}.search-clear{position:absolute;top:50%;right:.375rem;transform:translateY(-50%);display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:0;border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-size:1.75rem;cursor:pointer;touch-action:manipulation}.search-clear:hover{background:var(--secondary)}.search-results{display:grid;gap:1.25rem}.search-results h2{margin:0;font-size:1.5rem;line-height:1.3}.search-result-card{display:grid;gap:.5rem;min-width:0;padding:1rem;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.search-result-card .menu-button{margin-top:.5rem}.search-source{display:inline-flex;align-items:center;min-height:2.75rem;padding:.5rem;color:var(--accent-strong);line-height:1.5;overflow-wrap:anywhere}.search-venue{margin:0;overflow-wrap:anywhere;font-size:1.35rem;line-height:1.3}.search-menu{margin:0;font-size:1.1rem;font-weight:400;line-height:1.5}.restaurant-options{display:grid;align-content:start;gap:1rem}.restaurant-card{min-width:0;padding:min(1rem,4vw);border:1px solid var(--line);border-radius:8px;background:var(--panel)}.restaurant-card h2{margin:0;overflow-wrap:anywhere;font-size:1.5rem;line-height:1.3}.restaurant-card-actions{margin-top:1rem}.restaurant-card-actions,.management-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.restaurant-options .restaurant-card-actions button{min-width:0;min-height:3rem;padding:.75rem .25rem;font-size:1rem;text-align:center}.menu-management-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));border:0;color:var(--ink);background:var(--page);overflow:auto}.menu-management-dialog::backdrop{background:var(--page)}.management-content{display:flex;flex-direction:column;justify-content:space-between;gap:2rem;width:min(100%,34rem);min-height:100%;margin:auto}.management-content h1{font-size:clamp(2rem,8vw,3rem);line-height:1.2}.management-content p{font-size:1.25rem;line-height:1.6}.menu-name-field{display:grid;gap:.75rem;margin-top:2rem;font-size:1.25rem}.menu-name-field input{width:100%;min-width:0;min-height:3.5rem;padding:.75rem;border:1px solid var(--control-border);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--focus);outline-offset:4px;box-shadow:0 0 0 4px var(--panel)}.management-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.management-actions button{text-align:center}.menu-button,.restaurant-options button,.camera-close,.capture-close{--button-background: var(--secondary);--button-hover: var(--secondary-hover);--button-ink: var(--ink);--button-border: var(--control-border);min-height:4rem;padding:1.25rem;border:1px solid var(--button-border);border-radius:8px;background:var(--button-background);color:var(--button-ink);font:inherit;font-size:clamp(1.1rem,5vw,1.5rem);font-weight:700;line-height:1.4;text-align:left;overflow-wrap:anywhere;cursor:pointer;touch-action:manipulation}.menu-button.primary-button,.restaurant-options .primary-button{--button-background: var(--accent);--button-hover: var(--accent-strong);--button-ink: #ffffff;--button-border: var(--accent)}.menu-button.destructive-button,.restaurant-options .destructive-button{--button-background: var(--danger);--button-hover: var(--danger-hover);--button-ink: #ffffff;--button-border: var(--danger)}.menu-button:hover:not(:disabled),.restaurant-options button:hover:not(:disabled),.camera-close:hover,.capture-close:hover{background:var(--button-hover)}.menu-button.exit-quick-nav{--button-hover: transparent;justify-self:end;width:auto;min-height:2rem;margin-bottom:env(safe-area-inset-bottom,0px);padding:.25rem .5rem;border:0;border-radius:4px;background:transparent;color:var(--accent);font-size:1rem;font-weight:400;text-align:right;text-decoration:underline;text-underline-offset:.2em}button:disabled{border-color:#dce2dd;background:#eef1ee;color:#929c95;cursor:not-allowed}.storage-warning{padding:1rem;border:1px solid var(--accent);line-height:1.5}.processing-panel{margin-top:2rem;padding:clamp(1rem,4vw,2rem);border:1px solid var(--accent);border-radius:8px;background:var(--panel);line-height:1.6}.processing-panel h2{margin:0 0 1rem;color:var(--accent-strong)}.processing-error-actions{display:grid;gap:.75rem}.processing-indicator{display:block;width:2.5rem;height:2.5rem;border:4px solid var(--line);border-top-color:var(--accent-strong);border-radius:50%;animation:processing-spin 1s linear infinite}@keyframes processing-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.processing-indicator{animation:none}}.recent-date{display:block;margin-top:.5rem;color:var(--muted);font-size:1rem;font-weight:400;line-height:1.5;overflow-wrap:anywhere}.image-inspection{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;background:var(--page);overflow:hidden;z-index:10}.capture-screen{display:block}.capture-content h1{margin-top:1rem;font-size:clamp(2rem,8vw,3rem);line-height:1.15}.capture-content>p{line-height:1.6}.image-inspection img{width:100%;height:100%;object-fit:contain}.camera-close,.capture-close{min-width:3rem;min-height:3rem;padding:.5rem 1rem;font-size:1rem}.camera-close{position:absolute;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right))}.capture-close{display:block;margin-left:auto}.camera-status{margin:.5rem 0;line-height:1.5}.camera-message{margin:.5rem 0;padding:.75rem;border:1px solid var(--accent);border-radius:8px;background:var(--panel);line-height:1.5}.camera-message p{margin:0 0 .75rem}.capture-previews{display:flex;flex-wrap:wrap;gap:.75rem;margin:0;padding:.5rem 0;list-style:none}.capture-previews li{position:relative;flex:0 0 5.5rem;height:6rem;border:1px solid var(--line);border-radius:8px}.capture-previews img{width:100%;height:100%;border-radius:7px;object-fit:cover}.capture-thumbnail{display:block;width:100%;height:100%;padding:0;border:0;border-radius:8px;background:var(--panel);cursor:pointer}.capture-remove{position:absolute;top:0;right:0;width:2.75rem;height:2.75rem;border:0;border-radius:0 7px 0 8px;background:var(--danger);color:#fff;font-size:1.5rem;cursor:pointer;touch-action:manipulation}.capture-remove:hover{background:var(--danger-hover)}.camera-actions{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:.75rem;margin-top:.5rem}.camera-actions .menu-button:not(.primary-button){border:2px solid var(--accent)}.camera-actions .menu-button{padding:1rem .75rem;font-size:1rem;text-align:center}@media(max-height:620px){.reader-panel{align-content:start}.selection-panel{gap:.75rem;padding:1rem}.selection-panel h1{margin:0;font-size:clamp(1.5rem,5dvh,2rem)}.restaurant-options{gap:.75rem}.restaurant-options button{min-height:3rem;padding:.75rem 1rem;font-size:1.125rem}}:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular: normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light: normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin: normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone: normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands: normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular: normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular: normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-slab-duo-regular: normal 400 1em/1 "Font Awesome 7 Slab Duo";--fa-font-slab-press-duo-regular: normal 400 1em/1 "Font Awesome 7 Slab Press Duo";--fa-font-pixel-regular: normal 400 1em/1 "Font Awesome 7 Pixel";--fa-font-mosaic-solid: normal 900 1em/1 "Font Awesome 7 Mosaic";--fa-font-vellum-solid: normal 900 1em/1 "Font Awesome 7 Vellum";--fa-font-whiteboard-semibold: normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light: normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid: normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid: normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid: normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin: normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular: normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular: normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular: normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular: normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold: normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold: normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold: normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.0714285714em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);inset-inline-start:calc(-1 * var(--fa-li-width, 2em));inset-block-start:.25em}.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:var(--fa-width, 1.25em)}.fa-layers .svg-inline--fa{top:0;right:0;bottom:0;left:0;margin:auto;position:absolute;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:calc((6 / 10 - .375) * 1em)}.fa-xs{font-size:.75em;line-height:calc(1 / 12 * 1em);vertical-align:.125em}.fa-sm{font-size:.875em;line-height:calc(1 / 14 * 1em);vertical-align:calc((6 / 14 - .375) * 1em)}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:calc((6 / 20 - .375) * 1em)}.fa-xl{font-size:1.5em;line-height:calc(1 / 24 * 1em);vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width: auto}.fa-fw,.fa-width-fixed{--fa-width: 1.25em}.fa-canvas-square{padding-block:.125em;margin-block-end:-.125em}.fa-canvas-roomy{padding-block:.25em;padding-inline:.125em;margin-block-end:-.25em;box-sizing:content-box}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin, 2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(-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, .0625em);box-sizing:var(--fa-border-box-sizing, content-box);padding:var(--fa-border-padding, .1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1.5s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-flip-360{animation-name:fa-flip-360;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .75s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-reverse{--fa-animation-direction: reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, steps(8))}.fa-spin-snap{animation-name:fa-spin-snap;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 3s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-snap-4{animation-name:fa-spin-snap-4;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2.4s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-snap-8{animation-name:fa-spin-snap-8;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 4s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-buzz{animation-name:fa-buzz;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .6s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-wag{animation-name:fa-wag;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .9s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-out);transform-origin:bottom center}.fa-float{animation-name:fa-float;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 3s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out);will-change:transform}.fa-swing{animation-name:fa-swing;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1.2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-out);transform-origin:top center}.fa-jello{animation-name:fa-jello;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, .9s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-out)}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-flip-360,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse,.fa-buzz,.fa-float,.fa-jello,.fa-spin-snap,.fa-spin-snap-4,.fa-spin-snap-8,.fa-swing,.fa-wag{animation:none!important;transition:none!important}}@keyframes fa-beat{0%{transform:scale(1)}25%{transform:scale(calc(1.25 * var(--fa-beat-scale, 1.25)))}45%{transform:scale(calc(1.22 * var(--fa-beat-scale, 1.22)))}65%{transform:scale(calc(1.25 * var(--fa-beat-scale, 1.25)))}90%{transform:scale(1)}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0);animation-timing-function:var(--fa-animation-timing)}14%{transform:scale(var(--fa-bounce-start-scale-x, 1.06),var(--fa-bounce-start-scale-y, .94)) translateY(var(--fa-bounce-anticipation, 3px));animation-timing-function:cubic-bezier(.33,0,.66,.33)}32%{transform:scale(var(--fa-bounce-jump-scale-x, .94),var(--fa-bounce-jump-scale-y, 1.12)) translateY(calc(-1 * var(--fa-bounce-height, .5em)));animation-timing-function:cubic-bezier(.33,.66,.66,1)}52%{transform:scale(1) translateY(calc(-1 * var(--fa-bounce-height, .5em) * 1.1));animation-timing-function:cubic-bezier(.5,0,1,.5)}70%{transform:scale(var(--fa-bounce-land-scale-x, 1.06),var(--fa-bounce-land-scale-y, .92)) translateY(0);animation-timing-function:cubic-bezier(.33,.33,.66,1)}85%{transform:scale(.98,1.04) translateY(calc(-2px * var(--fa-bounce-rebound, 1)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{0%{opacity:1;transform:scale(1);animation-timing-function:cubic-bezier(.2,0,.4,1)}40%{opacity:var(--fa-fade-opacity, .4);transform:scale(.98);animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:1;transform:scale(1)}}@keyframes fa-beat-fade{0%{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1);animation-timing-function:cubic-bezier(.2,0,.4,1)}25%{opacity:calc(var(--fa-beat-fade-opacity, .4) + .4);transform:scale(var(--fa-beat-fade-scale, 1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}45%{opacity:1;transform:scale(var(--fa-beat-fade-scale, 1.25));animation-timing-function:cubic-bezier(.4,0,.2,1)}65%{opacity:calc(var(--fa-beat-fade-opacity, .4) + .4);transform:scale(var(--fa-beat-fade-scale, 1.28));animation-timing-function:cubic-bezier(.4,0,.6,1)}to{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1)}}@keyframes fa-flip{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),0);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),0);animation-timing-function:cubic-bezier(.33,0,.66,.33)}35%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * .6));animation-timing-function:linear}65%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * .5));animation-timing-function:cubic-bezier(.33,.66,.66,1)}92%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * var(--fa-flip-overshoot, 1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -360deg))}}@keyframes fa-flip-360{0%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),0);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),0);animation-timing-function:cubic-bezier(.33,0,.66,.33)}50%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * .6));animation-timing-function:cubic-bezier(.33,.66,.66,1)}80%{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),calc(var(--fa-flip-angle, -360deg) * var(--fa-flip-overshoot, 1.04)));animation-timing-function:cubic-bezier(.33,0,.66,1)}to{transform:perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -360deg))}}@keyframes fa-shake{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,0,.8,1)}8%{transform:rotate(35deg) translate(1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}20%{transform:rotate(-22deg) translate(-1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}35%{transform:rotate(15deg) translate(1px);animation-timing-function:cubic-bezier(.3,0,.7,1)}50%{transform:rotate(-9deg);animation-timing-function:cubic-bezier(.4,0,.6,1)}65%{transform:rotate(5deg);animation-timing-function:cubic-bezier(.4,0,.6,1)}78%{transform:rotate(-3deg);animation-timing-function:cubic-bezier(.4,0,.6,1)}90%{transform:rotate(1deg);animation-timing-function:cubic-bezier(.4,0,.2,1)}to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0,0,.2,1)}12%{transform:rotate(60deg);animation-timing-function:cubic-bezier(.8,0,1,1)}16.67%{transform:rotate(60deg);animation-timing-function:cubic-bezier(0,0,.2,1)}28.67%{transform:rotate(120deg);animation-timing-function:cubic-bezier(.8,0,1,1)}33.33%{transform:rotate(120deg);animation-timing-function:cubic-bezier(0,0,.2,1)}45.33%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(0,0,.2,1)}62%{transform:rotate(240deg);animation-timing-function:cubic-bezier(.8,0,1,1)}66.67%{transform:rotate(240deg);animation-timing-function:cubic-bezier(0,0,.2,1)}78.67%{transform:rotate(300deg);animation-timing-function:cubic-bezier(.8,0,1,1)}83.33%{transform:rotate(300deg);animation-timing-function:cubic-bezier(0,0,.2,1)}95.33%{transform:rotate(360deg);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-4{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0,0,.2,1)}15%{transform:rotate(90deg);animation-timing-function:cubic-bezier(.8,0,1,1)}25%{transform:rotate(90deg);animation-timing-function:cubic-bezier(0,0,.2,1)}40%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(0,0,.2,1)}65%{transform:rotate(270deg);animation-timing-function:cubic-bezier(.8,0,1,1)}75%{transform:rotate(270deg);animation-timing-function:cubic-bezier(0,0,.2,1)}90%{transform:rotate(360deg);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(360deg)}}@keyframes fa-spin-snap-8{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0,0,.2,1)}9%{transform:rotate(45deg);animation-timing-function:cubic-bezier(.8,0,1,1)}12.5%{transform:rotate(45deg);animation-timing-function:cubic-bezier(0,0,.2,1)}21.5%{transform:rotate(90deg);animation-timing-function:cubic-bezier(.8,0,1,1)}25%{transform:rotate(90deg);animation-timing-function:cubic-bezier(0,0,.2,1)}34%{transform:rotate(135deg);animation-timing-function:cubic-bezier(.8,0,1,1)}37.5%{transform:rotate(135deg);animation-timing-function:cubic-bezier(0,0,.2,1)}46.5%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(0,0,.2,1)}59%{transform:rotate(225deg);animation-timing-function:cubic-bezier(.8,0,1,1)}62.5%{transform:rotate(225deg);animation-timing-function:cubic-bezier(0,0,.2,1)}71.5%{transform:rotate(270deg);animation-timing-function:cubic-bezier(.8,0,1,1)}75%{transform:rotate(270deg);animation-timing-function:cubic-bezier(0,0,.2,1)}84%{transform:rotate(315deg);animation-timing-function:cubic-bezier(.8,0,1,1)}87.5%{transform:rotate(315deg);animation-timing-function:cubic-bezier(0,0,.2,1)}96.5%{transform:rotate(360deg);animation-timing-function:cubic-bezier(.8,0,1,1)}to{transform:rotate(360deg)}}@keyframes fa-buzz{0%{transform:translate(0) rotate(0);animation-timing-function:cubic-bezier(.1,0,.9,1)}5%{transform:translate(var(--fa-buzz-distance, 4px)) rotate(.5deg)}10%{transform:translate(calc(-1 * var(--fa-buzz-distance, 4px))) rotate(-.5deg)}15%{transform:translate(var(--fa-buzz-distance, 4px)) rotate(.3deg)}20%{transform:translate(calc(-1 * var(--fa-buzz-distance, 4px))) rotate(-.3deg)}25%{transform:translate(calc(var(--fa-buzz-distance, 4px) * .7)) rotate(.2deg)}30%{transform:translate(calc(-1 * var(--fa-buzz-distance, 4px) * .7)) rotate(-.2deg)}35%{transform:translate(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%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,0,.6,1)}12%{transform:rotate(var(--fa-wag-angle, 12deg));animation-timing-function:cubic-bezier(.4,0,.2,1)}24%{transform:rotate(2deg);animation-timing-function:cubic-bezier(.2,0,.6,1)}36%{transform:rotate(calc(var(--fa-wag-angle, 12deg) * .85));animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{transform:rotate(1deg);animation-timing-function:cubic-bezier(.2,0,.6,1)}58%{transform:rotate(calc(var(--fa-wag-angle, 12deg) * .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) translate(0) rotate(0) scale(var(--fa-float-squash-x, 1.02),var(--fa-float-squash-y, .98));animation-timing-function:cubic-bezier(.33,0,.66,.33)}15%{transform:translateY(calc(-.4 * var(--fa-float-height, 6px))) translate(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(-1 * var(--fa-float-height, 6px))) translate(0) rotate(0) scale(var(--fa-float-stretch-x, .98),var(--fa-float-stretch-y, 1.03));animation-timing-function:cubic-bezier(.5,0,.5,0)}50%{transform:translateY(calc(-.92 * var(--fa-float-height, 6px))) translate(calc(-.5 * var(--fa-float-drift, 1px))) rotate(calc(-.5 * var(--fa-float-tilt, 1deg))) scale(.995,1.01);animation-timing-function:cubic-bezier(.33,0,.66,.33)}70%{transform:translateY(calc(-.3 * var(--fa-float-height, 6px))) translate(calc(-1 * var(--fa-float-drift, 1px))) rotate(calc(-1 * var(--fa-float-tilt, 1deg))) scale(1);animation-timing-function:cubic-bezier(.33,.66,.66,1)}90%{transform:translateY(calc(.05 * var(--fa-float-height, 6px))) translate(0) rotate(0) 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) translate(0) rotate(0) scale(var(--fa-float-squash-x, 1.02),var(--fa-float-squash-y, .98))}}@keyframes fa-swing{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,0,.8,1)}8%{transform:rotate(var(--fa-swing-angle, 22deg));animation-timing-function:cubic-bezier(.3,0,.7,1)}18%{transform:rotate(calc(-1 * var(--fa-swing-angle, 22deg) * .85));animation-timing-function:cubic-bezier(.3,0,.7,1)}28%{transform:rotate(calc(var(--fa-swing-angle, 22deg) * .65));animation-timing-function:cubic-bezier(.35,0,.65,1)}38%{transform:rotate(calc(-1 * var(--fa-swing-angle, 22deg) * .45));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:rotate(calc(var(--fa-swing-angle, 22deg) * .25));animation-timing-function:cubic-bezier(.4,0,.6,1)}56%{transform:rotate(calc(-1 * var(--fa-swing-angle, 22deg) * .1));animation-timing-function:cubic-bezier(.4,0,.6,1)}64%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes fa-jello{0%{transform:scale(1);animation-timing-function:cubic-bezier(.2,0,.8,1)}12%{transform:scale(var(--fa-jello-scale-x, 1.15),calc(2 - var(--fa-jello-scale-x, 1.15)));animation-timing-function:cubic-bezier(.3,0,.7,1)}24%{transform:scale(calc(2 - var(--fa-jello-scale-y, 1.12)),var(--fa-jello-scale-y, 1.12));animation-timing-function:cubic-bezier(.3,0,.7,1)}36%{transform:scale(calc(1 + (var(--fa-jello-scale-x, 1.15) - 1) * .5),calc(2 - (1 + (var(--fa-jello-scale-x, 1.15) - 1) * .5)));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:scale(calc(2 - (1 + (var(--fa-jello-scale-y, 1.12) - 1) * .3)),calc(1 + (var(--fa-jello-scale-y, 1.12) - 1) * .3));animation-timing-function:cubic-bezier(.4,0,.6,1)}58%{transform:scale(1.02,.98);animation-timing-function:cubic-bezier(.4,0,.2,1)}68%{transform:scale(1)}to{transform:scale(1)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle, 0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse, #fff)}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.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{top:0;right:0;bottom:0;left:0;margin:auto;position:absolute;z-index:var(--fa-stack-z-index, auto)}
