/**
 * Framework7 9.0.1
 * Full featured mobile HTML framework for building iOS & Android apps
 * https://framework7.io/
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 26, 2025
 */

/*====================
  Core
  ==================== */

:root {
  --f7-safe-area-left: 0px;
  --f7-safe-area-right: 0px;
  --f7-safe-area-top: 0px;
  --f7-safe-area-bottom: 0px;
  --f7-safe-area-outer-left: 0px;
  --f7-safe-area-outer-right: 0px;
  --f7-device-pixel-ratio: 1;
}

@supports (left: env(safe-area-inset-left)) {
  :root {
    --f7-safe-area-top: env(safe-area-inset-top);
    --f7-safe-area-bottom: env(safe-area-inset-bottom);
  }

  :root .ios-left-edge,
  :root .ios-edges,
  :root .safe-area-left,
  :root .safe-areas,
  :root .popup,
  :root .sheet-modal,
  :root .panel-left {
    --f7-safe-area-left: env(safe-area-inset-left);
    --f7-safe-area-outer-left: env(safe-area-inset-left);
  }

  :root .ios-right-edge,
  :root .ios-edges,
  :root .safe-area-right,
  :root .safe-areas,
  :root .popup,
  :root .sheet-modal,
  :root .panel-right {
    --f7-safe-area-right: env(safe-area-inset-right);
    --f7-safe-area-outer-right: env(safe-area-inset-right);
  }

  :root .no-safe-areas,
  :root .no-safe-area-left,
  :root .no-ios-edges,
  :root .no-ios-left-edge {
    --f7-safe-area-left: 0px;
    --f7-safe-area-outer-left: 0px;
  }

  :root .no-safe-areas,
  :root .no-safe-area-right,
  :root .no-ios-edges,
  :root .no-ios-right-edge {
    --f7-safe-area-right: 0px;
    --f7-safe-area-outer-right: 0px;
  }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  :root {
    --f7-device-pixel-ratio: 2;
  }
}

@media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 3dppx) {
  :root {
    --f7-device-pixel-ratio: 3;
  }
}

/*====================
  Fonts & Bars
  ==================== */

:root {
  --f7-font-size: 14px;
  --f7-bars-translucent-opacity: 0.8;
  --f7-bars-translucent-blur: 20px;
}

.ios {
  --f7-font-family: -apple-system, SF Pro Text, SF UI Text, system-ui, Helvetica Neue, Helvetica, Arial, sans-serif;
  --f7-line-height: 1.4;
  --f7-bars-border-color: transparent;
  /*
  --f7-bars-link-color: var(--f7-theme-color);
  */
  --f7-glass-bg-color: rgba(255, 255, 255, 0.75);
  --f7-glass-shadow: inset -1px -1px 0px -0.5px #ffffff, inset 1px 1px 0px -0.5px #ffffff, inset 3px 3px 10px -3px #ddd, inset -3px -3px 10px -3px #ddd, inset 0 0 5px 1px #fff, inset 0 0 0 0.5px rgba(0, 0, 0, 0.25), inset 0 0 24px 0 rgba(0, 0, 0, 0.1), 0 0 25px 0 rgba(0, 0, 0, 0.2);
  --f7-glass-shadow-thumb: inset -3px -3px 0px -3.5px #ffffff, inset 3px 3px 0px -3.5px #ffffff, inset 0px 0px 0px 0.5px rgba(255, 255, 255, 0.5), inset 3px 3px 10px -2px #eee, inset -3px -3px 10px -2px #eee, inset 0 0 5px 1px #fff;
  --f7-bars-text-color: #000;
  --f7-text-color: #000;
  --f7-bars-bg-color: #efeff4;
}

.ios .dark,
.ios.dark {
  --f7-glass-bg-color: rgba(50, 50, 50, 0.5);
  --f7-glass-shadow: inset -2px -2px 0.5px -2.5px rgba(255, 255, 255, 0.4), inset 3px 3px 0.5px -3.5px rgba(255, 255, 255, 0.4), inset 2px 2px 0.5px -2px #262626, inset -2px -2px 0.5px -2px #262626, inset 0 0 5px 1px #141414, inset 0 0 0 1px rgba(255, 255, 255, 0.15), inset 0 0 10px 0 rgba(255, 255, 255, 0.075), inset 0 0 24px 0 rgba(255, 255, 255, 0.05), 0 0 25px 0 rgba(0, 0, 0, 0.15);
  --f7-glass-shadow-thumb: inset 3px 3px 0px -3.5px #ffffff, inset -3px -3px 0px -3.5px #ffffff, inset -0.5px -0.5px 0px rgba(255, 255, 255, 0.5), inset 0.5px 0.5px 0px rgba(255, 255, 255, 0.1), inset -3px 3px 0px -3.5px rgba(255, 255, 255, 0.25), inset 0px -5px 0px -3.5px rgba(255, 255, 255, 0.25), inset 0px -5px 5px rgba(255, 255, 255, 0.25);
  --f7-bars-text-color: #fff;
  --f7-text-color: #fff;
  --f7-bars-bg-color: rgba(0, 0, 0, 0.5);
}

.md {
  --f7-font-family: Roboto, system-ui, Noto, Helvetica, Arial, sans-serif;
  --f7-line-height: 1.5;
  --f7-bars-border-color: transparent;
  --f7-text-color: #212121;
}

.md .dark,
.md.dark {
  --f7-text-color: rgba(255, 255, 255, 0.87);
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-bars-link-color: var(--f7-md-on-surface);
  --f7-bars-bg-color: var(--f7-md-surface-2);
  --f7-bars-bg-color-rgb: var(--f7-md-surface-2-rgb);
}

/*====================
  Color Themes
  ==================== */

.text-color-primary {
  --f7-theme-color-text-color: var(--f7-theme-color);
}

.bg-color-primary {
  --f7-theme-color-bg-color: var(--f7-theme-color);
}

.border-color-primary {
  --f7-theme-color-border-color: var(--f7-theme-color);
}

.ripple-color-primary {
  --f7-theme-color-ripple-color: rgba(var(--f7-theme-color-rgb), 0.3);
}

@font-face {
  font-family: 'framework7-core-icons';

  src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAA2UABAAAAAAGZAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABbAAAABoAAAAcqepx4kdERUYAAAGIAAAAIwAAACQAfQBXR1BPUwAAAawAAAAuAAAANuAY7+xHU1VCAAAB3AAAAawAAAQkBKcLck9TLzIAAAOIAAAASgAAAGBRKF+WY21hcAAAA9QAAACJAAABYt6F0cBjdnQgAAAEYAAAAAQAAAAEABEBRGdhc3AAAARkAAAACAAAAAj//wADZ2x5ZgAABGwAAAUaAAAKmDl32O9oZWFkAAAJiAAAADAAAAA2LZDoBWhoZWEAAAm4AAAAIAAAACQHgQM9aG10eAAACdgAAABlAAABJC7p//Fsb2NhAAAKQAAAAJQAAACUSJxLbG1heHAAAArUAAAAHwAAACAAjwBPbmFtZQAACvQAAAFSAAAC1n9rlKpwb3N0AAAMSAAAAUsAAAJxUpmL2HicY2BgYGQAgvvXTkWC6Kecl4/AaABV+gfkAAB4nGNgZGBg4AFiGSBmAkJmBk0GRgYtBg8gmwUsxgAADXYA1QB4nGNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB4nHVTSU4CQRR91Y0RZyaBKGAYVIKI8zzPhgULb0BiNBriynAEj0E8h0vP4MoDuPIIJvh+NdBNV0inU9X/vf//q1e/oQCMIoMyVKP++oIgAoyg3YYgqvH0WGcMzhexgF6DUPY3hhFD02pZf3bFrtkPsBkv4hpbmEKWTwYL3IW55vlkkOJXClEyJj14FknEkSDDQVcw4UFn2WO6h4VRQA1NtPCJHxVUJVVVz+pNvasP9aV+LcuK45YZCb7zukba1yHEChLPcnfGiv1Mt5uXt2Pwolpd2sc7pL5+XgFzPk7Z4HjVJRnLYY28QbocxoXB8LtY4TqohuB7HTyCGX1Diz6d67yFQR3OMW7kOro2OojZ9chAuh6uYsyoJgr3OZemm0sYYU3pFet1veTcuTHJlUksoYorniSmNeQ1JpUKrBXt5R5zN4ghlU7Yz4tLTP6DTXohc53k6ZLUHtJ7R2fEUCgZp3Q0z/riszvfLr7NTiFWl0g3PkTXitR4h3scMD+mcyP0pf+2SvTKiznZy1q7GxXtN3RGctxZ2uV/3I04pxtmToS7NP3OIvcP0IBD6HicY2Bh/MI4gYGVgYHRhzGNgYHBHUp/ZZBkaGFgYGJgZWaAAUYGJBCQ5prC0MCgwFDFeOD/AQY9ps+MxTA1jAfAShQYxABDtQxkAAB4nGNgYGBmgGAZBkYGEIgB8hjBfBYGByDNw8DBwARkKzDoMlgyxDNU/f8PFAXxDIC8xP///z/+f/3/1f8b/q+HmgAHjGwMcCFGJiDBxICmAGI1HLAwMLCysXNwcnHz8PIxEAP4GQQEhYRFRMXEJSSlpGVk5eQVFJWUVVTV1DU0iTKA1gAAxH4T6AAAAAARAUQAAAAB//8AAnic7VXdTxxVFL9nlp27sOx87MdMpHULdNhpUgW7s7uD7RaI9CMhlBoDisSkULe8WI3V8BFTdnkrbYprTAkp6VsTm9iXsg9q+gDoC7VxNSE2MaZP+GCi9akP2qQMnjOzi0D/A9Pk3K9z7z1z7u/8zhkmMJUxdh0GmI9x1roIrC1b4jXsr+Si6H+YLfkEnLJFH6n9pC5xEZ5mS0B6S7VU01L3qzMTo6Mw4NxWwUJrgLLiNpyph2j+XPdc97/XCdt0PtS+KrhqVoOtFl6HIcwwmUVYjLFwsxjVkplUIqlFxeZECmyT6+aX/dlsf/bG+Z6e8z2Q3nNhT+ECdGX7jx7tf7OHlM6TvR/uefcC2YTNf5gE78BHTGOsE8xEZh/YGV2TQde42AZcNBPi5cuhBgk7SaI+JIXcuY39XlRIUmhrs74+5L5p81uw0OkwYy3NskCeke1UJrkPNDAB4LdgoxZcXg5qTcF1uSQI60GtMbi0TNp12cNg83dYgS+wrryAVnRupk1xfzPZ0GJRrjfTq/H10DWdmOatncdHRq6cPcC/Gj52bLh7djpRiPEDI1dGRo53tPLu4e7uYdcvlmBLiJ+fsQhHk/bS+LixsAAZd2BePDYfwwLMsgB+NdZEh3QOC869olEuG8VfU95YOctC8B3kyJ4NOph2EWTDKReNgcqI+D5BLA56WNgdkLbR/yihi/Fqg4Qf8On46KUlAmBd/gkEWCdUUFHFgr4TZaue3zY6ZNqrN41Cwfga+3zLzv00uqvzynZLvmC4WDqzNaPCYxZkOr4KKcJ1W0czptBoCErYaKwJK4LQtZpZrcoR50dnY34efJAE3/z8H6t2dct++nBL7WzQsWdxI9CwptuwQFhZn63QAO0IYhW3HmiHDFNw4eHhguHyA0I8qgS+CUQDp7ik8SPQGlCiuMalJvEjlfvn4TVI0H2287adgZTEZ7iGTdICY2MBSEi0IJ3Ex8a4iwcbgjLep38VOwpNMX+6KQZlx4LyY8u6blluXrzNfoaXmUR54WaEBPgVTI6e4TpFqXvfHxEPhyS5/urncl1QvhUA3iXXhyTPvzNwAu0Tz5BB3LzpBgQS7sA8fjMNjmHMQpTHGLRt7BYr3H40GBk0XrH7+j7oWxzs6BjsmH4rMhjHVZ996HAnaXZigX5SgrnM4pR0O4DQpPkqDOPjqNvpJ7IBOeH5eeamkc8bVHs2/4TbMIcoqexFrDaVKhMh//ZT6ekEYpvpcvJiaWqqdPHByVzu5Ilc7sSp+CmU3nhvbxzmpu5MTd1xNs5dPZf7NPe9t+XKf3k0Ch8jPxls2dNtGC0WjarA6W0LjM+msyw8ElZYA2N+1cVNxfzCvOIgms0mtCIXkjq0G6mWH8KpSDjs3I81NESc+2GIhNPh94RHDS0tDRvRMq1TtCtEIBO28GTFpzi7C2cJ14zHr06o5u7dnZRqVQIzyNeZgKJ5DPPqajsEIEv3I0gejK7LHo04+rcavCQG6/jpkCyq/s5PgnAoqDyo5WfkkF8Qe1fUXbWKqpCJFcoYG4MhHMbHq7gdxNoy8AxuBycn45MT8QmUSbAnvBmJW1eHhLKQYLXEu5SSsZKags5FtlWFtWtza2tz167lM3mUAvUvwYG1NeeXNbhRsPN5u+D2u/Pe9bMp3WSWKd+de9BehFmapty899GbBAvfRHmHPqtpL/OoCdZG2WuIdGrald1xUDx6U757PxQk9iXOLwU8SsMbz8ThX+V3//AAAHicY2BkYGAA4vPlMlPi+W2+MnAzMYDAU87LR2D0/x//elnSmD4DuRwMYGkAYMsNmnicY2BkYGD6/K+XQY8l7f8PBgaWNAagCArwBACRVQXFeJxj2M0gyAACqxgGNWAMAOKQ/z8YdYD0AaDAPiA9C4gPAbHO/58Mx4FiQMySBhW3AGInID4LFD8L1OcGZLtAxUDs1UAMVMv05v9/ht1ANsP/H2AztYFiZyFmMBkD9QLlAAK6GvAAAAAAAAAqACoAKgA0AD4ASABSAFwAZgBwAHoAhACOAJgAogCsALYAwADKANQA3gDoAPIA/AEGARABGgEkAS4BOAFCAUwBVgFgAWoBdAF+AYgBkgGcAaYBsgHcAgYCKAJSAmQCegKMAq4CvgLOAwADFgM2A1YDaAOGA5gDvAPaA+oEHgQ4BGgEiASoBLoE1AT8BRIFLAVMeJxjYGRgYPBkkGNgYQABJiBmZACJOTDogQQADhwA3wB4nK2QP2sCQRDF3/oPkiKBENuwpYp37AkqWEawsQkp7C/nRRe9W1kPRPJl0qVLmS6fIpAyZT5H3q1LSGGRwoNhfvfmze7MArjAKwQOXwv3ngWaePFcwTk+PFcRiVvPNTTFs+c6LsWn5waalSs6Re2Mf3euq2SBDp48V3CNd89VPODLcw0dUXiu40a8eW5Q/8YYBhvsYaGxwBIFJGdO0GbuQTH66JJnWCPGnK6MYalM6Y5JpZ7xDO2qGJvN3urFspCtpC17qtfvytk6nutMWzldxnYdZxs9p/ORzWVrih2HsFhhiIBXl5yStOMcW1ptnKU7Y1fDIDE2DXRicspHvX8NEycWLlvul7qtQu4lMWL8f4SDf0AtYnfw+zaYmLyYGLtIZS9UciSPjkp9EEQqKJ/jFIvP6LOsa+eTnEVxrtBlxXJqt9rkUqkoVEqd4MYfrhmFugAAeJxtUIduwjAUvIO27AJlj45vqbr33lUUklCiAkbGlP49NTiMSH2SJb9353t3RgSzmkxA/Fen+hARRJFDAUWUUEYFVdRQRwNN7OMAhzjCMU409wznuMAlrnCNG9ziDvd4wCOe8IwXvOIN7/jAJyOMco3r3GCMcSaYZIppZrjJLHPMc4sFFllimRVWWWOdDTa5zR3uci859GzpdCxfDBNOVwy96S3vdLwfKfqW9L86aoYFtJ6bnWNdr610n7GlFON5l9Ko890Sv/qeCzG1SCYkm16Fy32h/Lbv2MrXk4WRrBFvCaVET0smpO36YooU5q9dMe5b9kgKaceGQqrAojFh5sk5dzTIBDkMkF8CwSS9Kpt1va6nPEuKUd+dbg96HXqgpGW8rXqZBV0KGQ+akAv/Z8+Nm4T6j0IrNHXTqC6Is0h6XgxLmCV/CZ27wAA=') format('woff');

  font-weight: 400;

  font-style: normal;
}

html {
  overscroll-behavior: none;
}

html,
body,
.framework7-root {
  position: relative;
  height: 100%;
  width: 100%;
  overflow-x: hidden;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
  background: #fff;
  overflow: hidden;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  font-family: var(--f7-font-family);
  font-size: var(--f7-font-size);
  line-height: var(--f7-line-height);
  color: var(--f7-text-color);
  scrollbar-width: none;
  scrollbar-color: transparent;
}

body::-webkit-scrollbar {
  -webkit-appearance: none;
          appearance: none;
  width: 0px;
  display: none;
  opacity: 0;
  background: transparent;
}

body::-webkit-scrollbar-track {
  box-shadow: none;
  background: transparent;
}

body::-webkit-scrollbar-thumb {
  background-color: transparent;
  outline: none;
  border-radius: 9999px;
  position: relative;
}

.dark body,
body.dark {
  background: #000;
}

.dark {
  color: var(--f7-text-color);
}

.framework7-root {
  overflow: hidden;
  box-sizing: border-box;
}

.framework7-initializing *,
.framework7-initializing *:before,
.framework7-initializing *:after {
  transition-duration: 0ms !important;
}

.device-ios,
.device-android {
  cursor: pointer;
}

.device-ios {
  touch-action: manipulation;
}

@media (width: 1024px) and (height: 691px) and (orientation: landscape) {
  html,
  body,
  .framework7-root {
    height: 671px;
  }
}

@media (width: 1024px) and (height: 692px) and (orientation: landscape) {
  html,
  body,
  .framework7-root {
    height: 672px;
  }
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}

a,
input,
textarea,
select {
  outline: 0;
}

a {
  cursor: pointer;
  text-decoration: none;
  color: var(--f7-theme-color);
}

.link,
.item-link {
  cursor: pointer;
}

p {
  margin: 1em 0;
}

.disabled {
  opacity: 0.55 !important;
  pointer-events: none !important;
}

html.device-full-viewport,
html.device-full-viewport body {
  height: 100vh;
}

.ios .md-only,
.ios .if-md,
.ios .if-not-ios,
.ios .not-ios {
  display: none !important;
}

@media (width: 1024px) and (height: 691px) and (orientation: landscape) {
  .ios,
  .ios body,
  .ios .framework7-root {
    height: 671px;
  }
}

@media (width: 1024px) and (height: 692px) and (orientation: landscape) {
  .ios,
  .ios body,
  .ios .framework7-root {
    height: 672px;
  }
}

.md .ios-only,
.md .if-ios,
.md .if-not-md,
.md .not-md {
  display: none !important;
}

/* === Statusbar === */

/* === Views === */

.views,
.view {
  position: relative;
  height: 100%;
  z-index: 5000;
  overflow: hidden;
  box-sizing: border-box;
}

.framework7-root > .view,
.framework7-root > .views {
  height: 100%;
}

.view-resize-handler {
  width: 6px;
  height: 100%;
  position: absolute;
  left: var(--f7-page-master-width);
  margin-left: -3px;
  top: 0;
  cursor: col-resize;
  z-index: 1000;
  display: none;
}

.view-master-detail .view-resize-handler {
  display: block;
}

/* === Pages === */

:root {
  --f7-page-master-width: 320px;
  --f7-page-master-border-color: rgba(0, 0, 0, 0.1);
  --f7-page-master-border-width: 1px;
  --f7-page-swipeback-transition-duration: 300ms;
  --f7-page-parallax-transition-duration: 500ms;
  --f7-page-cover-transition-duration: 450ms;
  --f7-page-dive-transition-duration: 500ms;
  --f7-page-fade-transition-duration: 500ms;
  --f7-page-flip-transition-duration: 700ms;
  --f7-page-push-transition-duration: 500ms;
  /*
  --f7-page-content-extra-padding-top: 0px;
  --f7-page-content-extra-padding-bottom: 0px;
  */
  --f7-page-title-line-height: 1.2;
  --f7-page-title-text-color: inherit;
  --f7-page-title-padding-left: 16px;
  --f7-page-title-padding-right: 16px;
}

.ios {
  --f7-page-transition-duration: 400ms;
  --f7-page-title-font-size: 34px;
  --f7-page-title-font-weight: 700;
  --f7-page-title-letter-spacing: -0.03em;
  --f7-page-title-padding-vertical: 6px;
  --f7-page-bg-color: #efeff4;
}

.ios .dark,
.ios.dark {
  --f7-page-bg-color: #000;
}

.md {
  --f7-page-transition-duration: 400ms;
  --f7-page-title-font-size: 34px;
  --f7-page-title-font-weight: 500;
  --f7-page-title-letter-spacing: 0;
  --f7-page-title-padding-vertical: 8px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-page-bg-color: var(--f7-md-surface);
}

.dark {
  --f7-page-master-border-color: rgba(255, 255, 255, 0.2);
}

.pages {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.page {
  box-sizing: border-box;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: none;
  background-color: var(--f7-page-bg-color);
  z-index: 1;
}

.page-transparent {
  background-color: transparent;
}

.page-with-navbar-large-collapsed {
  --f7-navbar-large-collapse-progress: 1;
}

.page-previous {
  pointer-events: none;
}

.page-content {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
  height: 100%;
  position: relative;
  z-index: 1;
  padding-top: calc(var(--f7-page-navbar-offset, 0px) + var(--f7-page-toolbar-top-offset, 0px) + var(--f7-page-subnavbar-offset, 0px) + var(--f7-page-searchbar-offset, 0px) + var(--f7-page-content-extra-padding-top, 0px));
  padding-bottom: calc(var(--f7-page-toolbar-bottom-offset, 0px) + var(--f7-safe-area-bottom) + var(--f7-page-content-extra-padding-bottom, 0px));
}

.page-previous .page-opacity-effect {
  opacity: 1;
}

.page-previous:after {
  opacity: 1;
}

.page-transitioning,
.page-transitioning .page-shadow-effect,
.page-transitioning .page-opacity-effect {
  transition-duration: var(--f7-page-transition-duration);
}

.page-transitioning-swipeback,
.page-transitioning-swipeback .page-shadow-effect,
.page-transitioning-swipeback .page-opacity-effect {
  transition-duration: var(--f7-page-swipeback-transition-duration);
}

.router-transition-forward .page-next,
.router-transition-backward .page-next,
.router-transition-forward .page-current,
.router-transition-backward .page-current {
  pointer-events: none;
}

.page-shadow-effect {
  position: absolute;
  top: 0;
  width: 16px;
  bottom: 0;
  z-index: -1;
  content: '';
  opacity: 0;
  right: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
}

.page-opacity-effect {
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.1);
  width: 100%;
  bottom: 0;
  content: '';
  opacity: 0;
  z-index: 10000;
}

.ios .page-previous {
  transform: translate3d(-20%, 0, 0);
}

.ios .page-next {
  transform: translate3d(100%, 0, 0);
}

.ios .page-current .page-shadow-effect {
  opacity: 1;
}

.ios .router-transition-forward .page-next {
  animation: ios-page-next-to-current var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-forward .page-next:before {
  position: absolute;
  top: 0;
  width: 16px;
  bottom: 0;
  z-index: -1;
  content: '';
  opacity: 0;
  right: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
  animation: ios-page-element-fade-in var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-forward .page-current {
  animation: ios-page-current-to-previous var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-forward .page-current:after {
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.1);
  width: 100%;
  bottom: 0;
  content: '';
  opacity: 0;
  z-index: 10000;
  animation: ios-page-element-fade-in var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-backward .page-previous {
  animation: ios-page-previous-to-current var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-backward .page-previous:after {
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.1);
  width: 100%;
  bottom: 0;
  content: '';
  opacity: 0;
  z-index: 10000;
  animation: ios-page-element-fade-out var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-backward .page-current {
  animation: ios-page-current-to-next var(--f7-page-transition-duration) forwards;
}

.ios .router-transition-backward .page-current:before {
  position: absolute;
  top: 0;
  width: 16px;
  bottom: 0;
  z-index: -1;
  content: '';
  opacity: 0;
  right: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
  animation: ios-page-element-fade-out var(--f7-page-transition-duration) forwards;
}

@keyframes ios-page-next-to-current {
  from {
    transform: translate3d(100%, 0, 0);
  }

  to {
    transform: translate3d(0%, 0, 0);
  }
}

@keyframes ios-page-previous-to-current {
  from {
    transform: translate3d(-20%, 0, 0);
  }

  to {
    transform: translate3d(0%, 0, 0);
  }
}

@keyframes ios-page-current-to-previous {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-20%, 0, 0);
  }
}

@keyframes ios-page-current-to-next {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes ios-page-element-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes ios-page-element-fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.md .page-previous {
  transform: translate3d(-24px, 0px, 0);
}

.md .page-next {
  pointer-events: none;
  transform: translate3d(128px, 0px, 0);
  opacity: 0;
}

.md .page-next.page-next-on-right {
  transform: translate3d(100%, 0, 0);
  opacity: 1;
}

.md .router-transition-forward .page-next {
  opacity: 1;
  animation: md-page-next-to-current var(--f7-page-transition-duration) forwards cubic-bezier(0, 0.8, 0.3, 1);
}

.md .router-transition-forward .page-current {
  animation: md-page-current-to-previous var(--f7-page-transition-duration) forwards cubic-bezier(0, 0.8, 0.3, 1);
}

.md .router-transition-backward .page-current {
  animation: md-page-current-to-next calc(var(--f7-page-transition-duration) / 2) forwards cubic-bezier(0, 1, 0.8, 1), md-page-current-to-next-opacity calc(var(--f7-page-transition-duration) / 2) forwards;
}

.md .router-transition-backward .page-previous {
  animation: md-page-previous-to-current calc(var(--f7-page-transition-duration) / 2) forwards cubic-bezier(0, 1, 0.8, 1);
}

@keyframes md-page-next-to-current {
  from {
    transform: translate3d(128px, 0px, 0);
  }

  to {
    transform: translate3d(0px, 0px, 0);
  }
}

@keyframes md-page-current-to-next {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(128px, 0px, 0);
  }
}

@keyframes md-page-current-to-next-opacity {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes md-page-current-to-previous {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-24px, 0px, 0);
  }
}

@keyframes md-page-previous-to-current {
  from {
    transform: translate3d(-24px, 0px, 0);
  }

  to {
    transform: translate3d(0, 0px, 0);
  }
}

.view:not(.view-master-detail) .page-master-stacked {
  display: none;
}

.view-master-detail .page-master {
  width: var(--f7-page-master-width);
  --f7-safe-area-right: 0px;
  --f7-safe-area-outer-right: 0px;
  border-right: var(--f7-page-master-border-width) solid var(--f7-page-master-border-color);
}

.view-master-detail .page-master-detail {
  width: calc(100% - var(--f7-page-master-width));
  --f7-safe-area-left: 0px;
  --f7-safe-area-outer-left: 0px;
  left: var(--f7-page-master-width);
}

.view-master-detail .page-master {
  z-index: 2;
  transform: none;
  pointer-events: auto;
}

.view-master-detail .page-master:before,
.view-master-detail .page-master:after {
  display: none;
}

.view-master-detail.router-transition .page-master {
  animation: none;
}

.md .router-transition-custom .page-previous,
.ios .router-transition-custom .page-previous,
.md .router-transition-custom .page-next,
.ios .router-transition-custom .page-next {
  opacity: 1;
  transform: none;
}

.md .router-transition-custom.view-master-detail .page-master,
.ios .router-transition-custom.view-master-detail .page-master {
  animation: none;
}

.page-title {
  position: relative;
  z-index: 10;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--f7-page-title-text-color);
  letter-spacing: var(--f7-page-title-letter-spacing);
  font-size: var(--f7-page-title-font-size);
  font-weight: var(--f7-page-title-font-weight);
  line-height: var(--f7-page-title-line-height);
  padding-left: calc(var(--f7-page-title-padding-left) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-page-title-padding-right) + var(--f7-safe-area-right));
  padding-top: var(--f7-page-title-padding-vertical);
  padding-bottom: var(--f7-page-title-padding-vertical);
  box-sizing: border-box;
  overflow: hidden;
  width: 100%;
}

.router-transition-f7-circle-forward:after,
.router-transition-f7-circle-backward:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100vmax;
  height: 100vmax;
  margin-left: -50vmax;
  margin-top: -50vmax;
  background: var(--f7-page-bg-color);
  z-index: 100;
}

.router-transition-f7-circle-forward .page,
.router-transition-f7-circle-backward .page {
  pointer-events: none;
}

.router-transition-f7-circle-forward:after {
  transform: scale(0);
  border-radius: 50%;
  animation: f7-circle-circle-in 400ms forwards;
}

.ios .router-transition-f7-circle-forward .page-next,
.md .router-transition-f7-circle-forward .page-next {
  opacity: 0;
  transform: scale(0.9);
  animation: f7-circle-next-to-current 300ms forwards;
  animation-delay: 300ms;
  z-index: 150;
}

.router-transition-f7-circle-backward:after {
  animation: f7-circle-circle-out 300ms forwards;
  animation-delay: 350ms;
}

.ios .router-transition-f7-circle-backward .page-current,
.md .router-transition-f7-circle-backward .page-current {
  animation: f7-circle-current-to-next 700ms forwards;
  z-index: 150;
}

@keyframes f7-circle-circle-in {
  from {
    transform: scale(0);
    border-radius: 50%;
  }

  50% {
    border-radius: 50%;
  }

  to {
    transform: scale(1);
    border-radius: 0%;
  }
}

@keyframes f7-circle-circle-out {
  from {
    transform: scale(1);
    border-radius: 0%;
  }

  50% {
    border-radius: 50%;
  }

  to {
    transform: scale(0);
    border-radius: 50%;
  }
}

@keyframes f7-circle-next-to-current {
  from {
    transform: scale(0.9);
    opacity: 0;
  }

  40% {
    transform: scale(1.035);
    opacity: 1;
  }

  to {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes f7-circle-current-to-next {
  from {
    transform: scale(1);
    opacity: 1;
  }

  34% {
    transform: scale(1.035);
    opacity: 1;
  }

  57% {
    transform: scale(0.9);
    opacity: 0;
  }

  to {
    transform: scale(0.9);
    opacity: 0;
  }
}

.router-transition-f7-cover-v-forward,
.router-transition-f7-cover-v-backward {
  background: #000;
  perspective: 1200px;
}

.router-transition-f7-cover-v-forward .page,
.router-transition-f7-cover-v-backward .page {
  pointer-events: none;
}

.router-transition-f7-cover-v-forward .page-next {
  animation: f7-cover-v-next-to-current var(--f7-page-cover-transition-duration) forwards;
}

.router-transition-f7-cover-v-forward .page-current {
  animation: f7-cover-v-current-to-prev var(--f7-page-cover-transition-duration) forwards;
}

.router-transition-f7-cover-v-backward .page-current {
  animation: f7-cover-v-current-to-next var(--f7-page-cover-transition-duration) forwards;
}

.router-transition-f7-cover-v-backward .page-previous {
  animation: f7-cover-v-prev-to-current var(--f7-page-cover-transition-duration) forwards;
}

@keyframes f7-cover-v-next-to-current {
  from {
    transform: translateY(100%);
  }

  to {
    transform: translateY(0%);
  }
}

@keyframes f7-cover-v-current-to-next {
  from {
    transform: translateY(0%);
  }

  to {
    transform: translateY(100%);
  }
}

@keyframes f7-cover-v-current-to-prev {
  from {
    transform: translateZ(0);
    opacity: 1;
  }

  to {
    transform: translateZ(-300px);
    opacity: 0.5;
  }
}

@keyframes f7-cover-v-prev-to-current {
  from {
    transform: translateZ(-300px);
    opacity: 0.5;
  }

  to {
    transform: translateZ(0);
    opacity: 1;
  }
}

.router-transition-f7-cover-forward,
.router-transition-f7-cover-backward {
  background: #000;
  perspective: 1200px;
}

.router-transition-f7-cover-forward .page,
.router-transition-f7-cover-backward .page {
  pointer-events: none;
}

.router-transition-f7-cover-forward .page-next {
  animation: f7-cover-next-to-current var(--f7-page-cover-transition-duration) forwards;
}

.router-transition-f7-cover-forward .page-current {
  animation: f7-cover-current-to-prev var(--f7-page-cover-transition-duration) forwards;
}

.router-transition-f7-cover-backward .page-current {
  animation: f7-cover-current-to-next var(--f7-page-cover-transition-duration) forwards;
}

.router-transition-f7-cover-backward .page-previous {
  animation: f7-cover-prev-to-current var(--f7-page-cover-transition-duration) forwards;
}

@keyframes f7-cover-next-to-current {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0%);
  }
}

@keyframes f7-cover-current-to-next {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(100%);
  }
}

@keyframes f7-cover-current-to-prev {
  from {
    transform: translateZ(0);
    opacity: 1;
  }

  to {
    transform: translateZ(-300px);
    opacity: 0.5;
  }
}

@keyframes f7-cover-prev-to-current {
  from {
    transform: translateZ(-300px);
    opacity: 0.5;
  }

  to {
    transform: translateZ(0);
    opacity: 1;
  }
}

.router-transition-f7-dive-forward,
.router-transition-f7-dive-backward {
  background: var(--f7-page-bg-color);
  perspective: 1200px;
}

.router-transition-f7-dive-forward .page,
.router-transition-f7-dive-backward .page {
  pointer-events: none;
}

.router-transition-f7-dive-forward .page-next {
  animation: f7-dive-next-to-current var(--f7-page-dive-transition-duration) forwards;
}

.router-transition-f7-dive-forward .page-current {
  animation: f7-dive-current-to-prev var(--f7-page-dive-transition-duration) forwards;
}

.router-transition-f7-dive-backward .page-current {
  animation: f7-dive-current-to-next var(--f7-page-dive-transition-duration) forwards;
}

.router-transition-f7-dive-backward .page-previous {
  animation: f7-dive-prev-to-current var(--f7-page-dive-transition-duration) forwards;
}

@keyframes f7-dive-next-to-current {
  from {
    opacity: 0;
    transform: translateZ(-150px);
  }

  50% {
    opacity: 0;
  }

  to {
    opacity: 1;
    transform: translateZ(0px);
  }
}

@keyframes f7-dive-current-to-next {
  from {
    opacity: 1;
    transform: translateZ(0px);
  }

  50% {
    opacity: 0;
  }

  to {
    opacity: 0;
    transform: translateZ(-150px);
  }
}

@keyframes f7-dive-current-to-prev {
  from {
    transform: translateZ(0px);
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  to {
    opacity: 0;
    transform: translateZ(150px);
  }
}

@keyframes f7-dive-prev-to-current {
  from {
    opacity: 0;
    transform: translateZ(150px);
  }

  50% {
    opacity: 0;
  }

  to {
    opacity: 1;
    transform: translateZ(0px);
  }
}

.router-transition-f7-fade-forward,
.router-transition-f7-fade-backward {
  background: var(--f7-page-bg-color);
}

.router-transition-f7-fade-forward .page,
.router-transition-f7-fade-backward .page {
  pointer-events: none;
}

.ios .router-transition-f7-fade-forward .page-next,
.md .router-transition-f7-fade-forward .page-next {
  opacity: 0;
  animation: f7-fade-in var(--f7-page-fade-transition-duration) forwards;
}

.ios .router-transition-f7-fade-forward .page-current,
.md .router-transition-f7-fade-forward .page-current {
  animation: f7-fade-out var(--f7-page-fade-transition-duration) forwards;
}

.ios .router-transition-f7-fade-backward .page-current,
.md .router-transition-f7-fade-backward .page-current {
  animation: f7-fade-out var(--f7-page-fade-transition-duration) forwards;
}

.ios .router-transition-f7-fade-backward .page-previous,
.md .router-transition-f7-fade-backward .page-previous {
  animation: f7-fade-in var(--f7-page-fade-transition-duration) forwards;
}

@keyframes f7-fade-in {
  from {
    opacity: 0;
  }

  50% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes f7-fade-out {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  to {
    opacity: 0;
  }
}

.router-transition-f7-flip-forward,
.router-transition-f7-flip-backward {
  background: #000;
  perspective: 1200px;
}

.router-transition-f7-flip-forward .page,
.router-transition-f7-flip-backward .page {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  overflow: hidden;
  pointer-events: none;
}

.router-transition-f7-flip-forward .page-next {
  transform-style: preserve-3d;
  animation: f7-flip-next-to-current var(--f7-page-flip-transition-duration) forwards;
}

.router-transition-f7-flip-forward .page-current {
  transform-style: preserve-3d;
  animation: f7-flip-current-to-prev var(--f7-page-flip-transition-duration) forwards;
}

.router-transition-f7-flip-backward .page-current {
  transform-style: preserve-3d;
  animation: f7-flip-current-to-next var(--f7-page-flip-transition-duration) forwards;
}

.router-transition-f7-flip-backward .page-previous {
  transform-style: preserve-3d;
  animation: f7-flip-prev-to-current var(--f7-page-flip-transition-duration) forwards;
}

@keyframes f7-flip-next-to-current {
  from {
    border-radius: 32px;
    transform: translateZ(-100vmax) rotateY(180deg);
  }

  to {
    border-radius: 0;
    transform: translateZ(0px) rotateY(0deg);
  }
}

@keyframes f7-flip-current-to-next {
  from {
    border-radius: 0px;
    transform: translateZ(0px) rotateY(0deg);
  }

  to {
    border-radius: 32px;
    transform: translateZ(-100vmax) rotateY(180deg);
  }
}

@keyframes f7-flip-current-to-prev {
  from {
    border-radius: 0px;
    transform: translateZ(0px) rotateY(0deg);
  }

  to {
    border-radius: 32px;
    transform: translateZ(-100vmax) rotateY(-180deg);
  }
}

@keyframes f7-flip-prev-to-current {
  from {
    border-radius: 32px;
    transform: translateZ(-100vmax) rotateY(-180deg);
  }

  to {
    border-radius: 0px;
    transform: translateZ(0px) rotateY(0deg);
  }
}

.router-transition-f7-parallax-forward .page {
  pointer-events: none;
}

.router-transition-f7-parallax-forward .page-next {
  animation: f7-parallax-next-to-current var(--f7-page-parallax-transition-duration) forwards;
}

.router-transition-f7-parallax-forward .page-current {
  animation: f7-parallax-current-to-prev var(--f7-page-parallax-transition-duration) forwards;
}

.router-transition-f7-parallax-backward .page {
  pointer-events: none;
}

.router-transition-f7-parallax-backward .page-current {
  animation: f7-parallax-current-to-next var(--f7-page-parallax-transition-duration) forwards;
}

.router-transition-f7-parallax-backward .page-previous {
  animation: f7-parallax-prev-to-current var(--f7-page-parallax-transition-duration) forwards;
}

@keyframes f7-parallax-next-to-current {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0%);
  }
}

@keyframes f7-parallax-current-to-next {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(100%);
  }
}

@keyframes f7-parallax-current-to-prev {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(-20%);
  }
}

@keyframes f7-parallax-prev-to-current {
  from {
    transform: translateX(-20%);
  }

  to {
    transform: translateX(0%);
  }
}

.router-transition-f7-push-forward .page {
  pointer-events: none;
}

.router-transition-f7-push-forward .page-next {
  animation: f7-push-next-to-current var(--f7-page-push-transition-duration) forwards;
}

.router-transition-f7-push-forward .page-current {
  animation: f7-push-current-to-prev var(--f7-page-push-transition-duration) forwards;
}

.router-transition-f7-push-backward .page {
  pointer-events: none;
}

.router-transition-f7-push-backward .page-current {
  animation: f7-push-current-to-next var(--f7-page-push-transition-duration) forwards;
}

.router-transition-f7-push-backward .page-previous {
  animation: f7-push-prev-to-current var(--f7-page-push-transition-duration) forwards;
}

@keyframes f7-push-next-to-current {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0%);
  }
}

@keyframes f7-push-current-to-next {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(100%);
  }
}

@keyframes f7-push-current-to-prev {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(-100%);
  }
}

@keyframes f7-push-prev-to-current {
  from {
    transform: translateX(-100%);
  }

  to {
    transform: translateX(0%);
  }
}

/* === Link === */

:root {
  --f7-link-highlight-black: rgba(0, 0, 0, 0.1);
  --f7-link-highlight-white: rgba(255, 255, 255, 0.15);
  --f7-link-highlight-color: rgba(var(--f7-theme-color-rgb), 0.15);
}

.ios {
  --f7-link-pressed-opacity: 0.3;
}

.link,
.tab-link {
  display: inline-flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  z-index: 1;
  --f7-touch-ripple-color: var(--f7-link-touch-ripple-color, rgba(var(--f7-theme-color-rgb), 0.25));
}

.link i + span,
.link i + i,
.link span + i,
.link span + span {
  margin-left: 4px;
}

.link[class*='color-'] {
  color: var(--f7-theme-color);
}

.ios .link {
  transition: opacity 300ms;
}

.ios .link.active-state {
  opacity: var(--f7-link-pressed-opacity);
  transition-duration: 0ms;
}

/* === Navbar === */

:root {
  /*
  --f7-navbar-bg-color: var(--f7-bars-bg-color);
  --f7-navbar-bg-color-rgb: var(--f7-bars-bg-color-rgb);
  --f7-navbar-border-color: var(--f7-bars-border-color);
  */
  --f7-navbar-hide-show-transition-duration: 400ms;
  --f7-navbar-title-line-height: 1.2;
  --f7-navbar-subtitle-text-align: inherit;
  --f7-navbar-large-title-line-height: 1.2;
  --f7-navbar-large-title-text-color: inherit;
  --f7-navbar-large-title-padding-left: 16px;
  --f7-navbar-large-title-padding-right: 16px;
}

.ios {
  /*
  --f7-navbar-link-color: var(--f7-bars-link-color);
  --f7-navbar-text-color: var(--f7-bars-text-color);
  */
  --f7-navbar-link-color: var(--f7-bars-text-color);
  --f7-navbar-height: 76px;
  --f7-navbar-font-size: 17px;
  --f7-navbar-title-font-size: inherit;
  --f7-navbar-inner-padding-left: 16px;
  --f7-navbar-inner-padding-right: 16px;
  --f7-navbar-title-font-weight: 600;
  --f7-navbar-title-margin-left: 0;
  --f7-navbar-title-margin-right: 0;
  --f7-navbar-title-text-align: center;
  --f7-navbar-subtitle-font-size: 10px;
  --f7-navbar-subtitle-line-height: 1;
  --f7-navbar-large-title-height: 52px;
  --f7-navbar-large-title-font-size: 34px;
  --f7-navbar-large-title-font-weight: 700;
  --f7-navbar-large-title-letter-spacing: -0.03em;
  --f7-navbar-large-title-padding-vertical: 6px;
  /*
  --f7-navbar-link-height: var(--f7-navbar-height);
  --f7-navbar-link-line-height: var(--f7-navbar-height);
  */
  --f7-navbar-subtitle-text-color: rgba(0, 0, 0, 0.55);
}

.ios .dark,
.ios.dark {
  --f7-navbar-subtitle-text-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-navbar-height: 64px;
  --f7-navbar-font-size: 16px;
  --f7-navbar-title-font-size: 22px;
  --f7-navbar-inner-padding-left: 0px;
  --f7-navbar-inner-padding-right: 0px;
  --f7-navbar-title-font-weight: 400;
  --f7-navbar-title-margin-left: 0px;
  --f7-navbar-title-margin-right: 16px;
  --f7-navbar-title-text-align: left;
  --f7-navbar-subtitle-font-size: 14px;
  --f7-navbar-subtitle-line-height: 1.2;
  --f7-navbar-large-title-font-size: 28px;
  --f7-navbar-large-title-height: 88px;
  --f7-navbar-large-title-font-weight: 400;
  --f7-navbar-large-title-letter-spacing: 0;
  --f7-navbar-large-title-padding-vertical: 8px;
  --f7-navbar-link-height: 48px;
  --f7-navbar-link-line-height: 48px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-navbar-link-color: var(--f7-md-on-surface);
  --f7-navbar-text-color: var(--f7-md-on-surface);
  --f7-navbar-subtitle-text-color: var(--f7-md-on-surface-variant);
}

.navbars,
.navbar {
  z-index: 500;
  left: 0;
  top: 0;
  width: 100%;
}

.navbars {
  position: absolute;
}

.navbars .navbar {
  z-index: auto;
}

.navbars .navbar-transitioning {
  z-index: 500;
}

.navbar {
  --f7-navbar-large-collapse-progress: 0;
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  box-sizing: border-box;
  margin: 0;
  height: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
  color: var(--f7-navbar-text-color, var(--f7-bars-text-color));
  font-size: var(--f7-navbar-font-size);
}

.navbar b {
  font-weight: 500;
}

.navbar a {
  color: var(--f7-navbar-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
}

.navbar a.link {
  display: flex;
  justify-content: flex-start;
}

.navbar .title,
.navbar .left,
.navbar .right {
  position: relative;
  z-index: 10;
}

.navbar .title {
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex-shrink: 10;
  font-weight: var(--f7-navbar-title-font-weight);
  display: inline-block;
  line-height: var(--f7-navbar-title-line-height);
  text-align: var(--f7-navbar-title-text-align);
  font-size: var(--f7-navbar-title-font-size);
  margin-left: var(--f7-navbar-title-margin-left);
  margin-right: var(--f7-navbar-title-margin-left);
}

.navbar .subtitle {
  display: block;
  color: var(--f7-navbar-subtitle-text-color);
  font-weight: normal;
  font-size: var(--f7-navbar-subtitle-font-size);
  line-height: var(--f7-navbar-subtitle-line-height);
  text-align: var(--f7-navbar-subtitle-text-align);
}

.navbar .left,
.navbar .right {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.navbar .right:first-child {
  position: absolute;
  height: 100%;
}

.navbar.no-outline .navbar-bg:after,
.navbar .no-outline .navbar-bg:after {
  display: none !important;
}

.navbar.no-outline .title-large:after,
.navbar .no-outline .title-large:after {
  display: none !important;
}

.navbar.navbar-hidden .navbar-bg:before,
.navbar-hidden .navbar .navbar-bg:before {
  opacity: 0 !important;
}

.navbar-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  transition-property: transform;
}

.navbar-transitioning,
.navbar-transitioning .left,
.navbar-transitioning .title,
.navbar-transitioning .right,
.navbar-transitioning .title-large-text,
.navbar-transitioning .navbar-bg,
.navbar-transitioning .subnavbar,
.navbar-transitioning .navbar-bg:before {
  transition-duration: var(--f7-navbar-hide-show-transition-duration);
}

.navbar-hidden {
  transform: translate3d(0, calc(-1 * var(--f7-navbar-height)), 0);
}

.navbar-hidden .navbar-inner {
  pointer-events: none;
}

.navbar-hidden .navbar-inner > .left,
.navbar-hidden .navbar-inner > .title,
.navbar-hidden .navbar-inner > .right {
  opacity: 0 !important;
}

.navbar-hidden .subnavbar {
  pointer-events: auto;
}

.navbar-hidden-statusbar {
  transform: translate3d(0, calc(-1 * var(--f7-navbar-height) - var(--f7-safe-area-top)), 0);
}

.navbar-large-hidden .navbar-large {
  --f7-navbar-large-collapse-progress: 1;
}

.navbar-inner {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: var(--f7-safe-area-top) calc(var(--f7-navbar-inner-padding-right) + var(--f7-safe-area-right)) 0 calc(var(--f7-navbar-inner-padding-left) + var(--f7-safe-area-left));
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.views > .navbar,
.view > .navbar,
.page > .navbar {
  position: absolute;
}

.ios .navbar:not(.navbar-large) .navbar-bg {
  --f7-navbar-large-collapse-progress: 1;
}

.navbar-large .title {
  opacity: var(--f7-navbar-large-collapse-progress);
}

.navbar-large-collapsed {
  --f7-navbar-large-collapse-progress: 1;
}

.navbar-large-collapsed .title-large {
  pointer-events: none;
}

.navbar-large-collapsed .title-large-text {
  opacity: 0;
}

.navbar .title-large {
  box-sizing: border-box;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  display: flex;
  white-space: nowrap;
  height: var(--f7-navbar-large-title-height);
  z-index: 5;
}

.navbar .title-large-text {
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--f7-navbar-large-title-text-color);
  letter-spacing: var(--f7-navbar-large-title-letter-spacing);
  font-size: var(--f7-navbar-large-title-font-size);
  font-weight: var(--f7-navbar-large-title-font-weight);
  line-height: var(--f7-navbar-large-title-line-height);
  padding-left: calc(var(--f7-navbar-large-title-padding-left) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-navbar-large-title-padding-right) + var(--f7-safe-area-right));
  padding-top: var(--f7-navbar-large-title-padding-vertical);
  padding-bottom: var(--f7-navbar-large-title-padding-vertical);
  box-sizing: border-box;
  overflow: hidden;
  width: 100%;
  transform: translate3d(0px, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0);
  transform-origin: calc(var(--f7-navbar-large-title-padding-left) + var(--f7-safe-area-left)) center;
}

.navbar-no-title-large-transition .title-large-text {
  transition-duration: 0ms;
}

.navbar ~ * {
  --f7-page-navbar-offset: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbar ~ * .page-with-navbar-large,
.navbar ~ .page-with-navbar-large,
.page-with-navbar-large .navbar ~ * {
  --f7-page-navbar-offset: calc(var(--f7-navbar-height) + var(--f7-navbar-large-title-height) + var(--f7-safe-area-top));
}

.page.no-navbar,
.page.no-navbar .navbar ~ * {
  --f7-page-navbar-offset: var(--f7-safe-area-top);
}

.ios {
  --f7-navbarLeftTextOffset: calc(4px + 12px + var(--f7-navbar-inner-padding-left));
  --f7-navbarTitleLargeOffset: var(--f7-navbar-large-title-padding-left);
}

.ios .navbar .title-large {
  align-items: flex-end;
}

.ios .navbar a.link {
  height: 100%;
  padding: 0 12px;
}

.ios .navbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  width: 44px;
  margin: 0;
  justify-content: center;
}

.ios .navbar .left a + a,
.ios .navbar .right a + a {
  margin-left: 16px;
}

.ios .navbar b {
  font-weight: 600;
}

.ios .navbar .left {
  margin-right: 10px;
}

.ios .navbar .right {
  margin-left: 10px;
}

.ios .navbar .right:first-child {
  right: calc(8px + var(--f7-safe-area-right));
}

.ios .navbar-bg {
  height: 100%;
}

.ios .navbar-bg::before {
  content: '';
  position: absolute;
  inset: 0;
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  -webkit-mask-image: linear-gradient(to bottom, black calc(50% + var(--f7-safe-area-top, 0px)), transparent 100%);
          mask-image: linear-gradient(to bottom, black calc(50% + var(--f7-safe-area-top, 0px)), transparent 100%);
}

.ios .navbar-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: linear-gradient(to bottom, var(--f7-navbar-bg-color, var(--f7-bars-bg-color)) var(--f7-safe-area-top, 0px), transparent 100%);
}

.ios .navbar-inner {
  justify-content: space-between;
  padding-top: calc(16px + var(--f7-safe-area-top));
  padding-bottom: 16px;
}

.ios .navbar .left,
.ios .navbar .right,
.ios .navbar .navbar-pane {
  height: 100%;
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow);
  background-color: var(--f7-glass-bg-color);
  border-radius: 64px;
  min-width: 44px;
}

.ios .navbar-pane {
  display: flex;
  align-items: center;
  justify-content: center;
}

.ios .navbar-inner-left-title {
  justify-content: flex-start;
}

.ios .navbar-inner-left-title .right {
  margin-left: auto;
}

.ios .navbar-inner-left-title .title {
  text-align: left;
  margin-right: 10px;
}

.ios .navbar-transparent:not(.navbar-large):not(.navbar-transparent-visible):not(
      .with-searchbar-expandable-enabled
    ) .title {
  opacity: 0;
}

.view-master-detail .page-master {
  z-index: 525;
}

.md .navbar .title-large {
  align-items: center;
  overflow: hidden;
}

.md .navbar .left {
  margin-left: 4px;
  margin-right: 4px;
}

.md .navbar a.link {
  padding: 0 12px;
  min-width: 48px;
  height: var(--f7-navbar-link-height, var(--f7-navbar-height));
}

.md .navbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  min-width: 0;
  flex-shrink: 0;
  width: 48px;
}

.md .navbar .right {
  margin-left: auto;
  margin-right: 4px;
}

.md .navbar .right:first-child {
  right: var(--f7-safe-area-right);
}

.md .navbar-pane {
  display: contents;
}

.md .navbar-bg {
  background: var(--f7-navbar-bg-color);
  background-color: var(--f7-navbar-bg-color, var(--f7-bars-bg-color));
}

.md .navbar-bg:after,
.md .navbar-bg:before {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.md .navbar-bg:after {
  content: '';
  position: absolute;
  background-color: var(--f7-navbar-border-color, var(--f7-bars-border-color));
  display: block;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
  z-index: 1;
}

.md .navbar-inner {
  justify-content: flex-start;
  overflow: hidden;
}

.md .navbar-large:not(.navbar-large-collapsed) .navbar-inner {
  overflow: visible;
}

.md .page.page-with-subnavbar .navbar-inner {
  overflow: visible;
}

.md .navbar-inner:not(.navbar-inner-centered-title) .title:first-child {
  margin-left: 16px;
}

.md .navbar-inner-centered-title {
  justify-content: space-between;
}

.md .navbar-inner-centered-title .right {
  margin-left: 0;
}

.md .navbar-inner-centered-title .title {
  text-align: center;
}

.md .navbar-transparent:not(.navbar-large):not(.navbar-transparent-visible):not(
      .with-searchbar-expandable-enabled
    ) .navbar-bg,
.md .navbar-transparent:not(.navbar-large):not(.navbar-transparent-visible):not(
      .with-searchbar-expandable-enabled
    ) .title {
  opacity: 0;
}

.md .navbar-large .navbar-bg {
  height: calc(100% + var(--f7-navbar-large-title-height));
  transform: translate3d(0px, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0);
}

.md .navbar-large-transparent .navbar-bg,
.md .navbar-large.navbar-transparent .navbar-bg {
  opacity: var(--f7-navbar-large-collapse-progress);
}

/* === Toolbar === */

:root {
  /*
  --f7-toolbar-bg-color: var(--f7-bars-bg-color);
  --f7-toolbar-bg-color-rgb: var(--f7-bars-bg-color-rgb);
  --f7-toolbar-border-color: var(--f7-bars-border-color);
  --f7-toolbar-text-color: var(--f7-bars-text-color);
  */
  --f7-tabbar-link-active-bg-color: transparent;
  --f7-tabbar-label-text-transform: none;
  --f7-toolbar-hide-show-transition-duration: 400ms;
}

.ios {
  --f7-toolbar-height: 64px;
  --f7-toolbar-font-size: 17px;
  --f7-toolbar-inner-padding-left: 16px;
  --f7-toolbar-inner-padding-right: 16px;
  --f7-toolbar-link-font-weight: 400;
  --f7-toolbar-link-color: var(--f7-bars-text-color);
  --f7-tabbar-link-inactive-color: var(--f7-bars-text-color);
  /*
  --f7-toolbar-link-height: var(--f7-toolbar-height);
  --f7-toolbar-link-line-height: var(--f7-toolbar-height);
  --f7-tabbar-link-active-color: var(--f7-theme-color);
  */
  --f7-tabbar-icons-height: 80px;
  --f7-tabbar-icons-tablet-height: 80px;
  --f7-tabbar-icon-size: 28px;
  --f7-tabbar-link-text-transform: none;
  --f7-tabbar-link-font-weight: 400;
  --f7-tabbar-link-letter-spacing: 0;
  --f7-tabbar-label-font-size: 12px;
  --f7-tabbar-label-tablet-font-size: 14px;
  --f7-tabbar-label-font-weight: 500;
  --f7-tabbar-label-letter-spacing: 0.01;
  --f7-tabbar-link-highlight-bg-color: rgba(0, 0, 0, 0.1);
  --f7-tabbar-link-highlight-active-bg-color: rgba(0, 0, 0, 0.05);
}

.ios .dark,
.ios.dark {
  --f7-tabbar-link-highlight-bg-color: rgba(255, 255, 255, 0.15);
  --f7-tabbar-link-highlight-active-bg-color: rgba(255, 255, 255, 0.1);
}

.md {
  --f7-toolbar-height: 56px;
  --f7-toolbar-font-size: 14px;
  --f7-toolbar-inner-padding-left: 0px;
  --f7-toolbar-inner-padding-right: 0px;
  /*
  --f7-toolbar-link-color: var(--f7-bars-link-color);
  --f7-toolbar-link-height: var(--f7-toolbar-height);
  --f7-toolbar-link-line-height: var(--f7-toolbar-height);
  */
  --f7-tabbar-icons-height: 80px;
  --f7-tabbar-icons-tablet-height: 80px;
  --f7-tabbar-icon-size: 24px;
  --f7-tabbar-link-text-transform: none;
  --f7-tabbar-link-font-weight: 500;
  --f7-tabbar-link-letter-spacing: 0;
  --f7-toolbar-link-font-weight: 500;
  --f7-tabbar-label-font-size: 12px;
  --f7-tabbar-label-tablet-font-size: 12px;
  --f7-tabbar-label-font-weight: 500;
  --f7-tabbar-label-letter-spacing: 0;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-tabbar-link-active-color: var(--f7-md-on-secondary-container);
  --f7-tabbar-link-active-border-color: var(--f7-md-primary);
  --f7-tabbar-link-inactive-color: var(--f7-md-on-surface-variant);
  --f7-tabbar-link-active-icon-bg-color: var(--f7-md-secondary-container);
}

.toolbar {
  width: 100%;
  position: relative;
  margin: 0;
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 600;
  box-sizing: border-box;
  left: 0;
  height: var(--f7-toolbar-height);
  flex-shrink: 0;
  color: var(--f7-toolbar-text-color, var(--f7-bars-text-color));
  font-size: var(--f7-toolbar-font-size);
}

.toolbar b {
  font-weight: 600;
}

.toolbar a {
  color: var(--f7-toolbar-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
  box-sizing: border-box;
  flex-shrink: 1;
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.toolbar .link {
  display: flex;
  font-weight: var(--f7-toolbar-link-font-weight);
}

.toolbar i.icon {
  display: block;
}

.toolbar:after,
.toolbar:before {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.views > .toolbar,
.view > .toolbar,
.page > .toolbar {
  position: absolute;
}

.toolbar-top,
.ios .toolbar-top-ios,
.md .toolbar-top-md {
  top: 0;
}

.toolbar-bottom,
.ios .toolbar-bottom-ios,
.md .toolbar-bottom-md {
  bottom: 0;
  height: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom));
}

.toolbar-bottom .toolbar-inner,
.ios .toolbar-bottom-ios .toolbar-inner,
.md .toolbar-bottom-md .toolbar-inner {
  height: auto;
  top: 0;
  bottom: var(--f7-safe-area-bottom);
}

.toolbar-inner {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  box-sizing: border-box;
  align-items: center;
  align-content: center;
  padding: 0 calc(var(--f7-toolbar-inner-padding-right) + var(--f7-safe-area-right)) 0 calc(var(--f7-toolbar-inner-padding-left) + var(--f7-safe-area-left));
}

.views > .tabbar,
.views > .tabbar-icons {
  z-index: 5001;
}

.tabbar a,
.tabbar-icons a {
  color: var(--f7-tabbar-link-inactive-color);
}

.tabbar .link,
.tabbar-icons .link {
  line-height: 1.4;
}

.tabbar .tab-link,
.tabbar-icons .tab-link,
.tabbar .link,
.tabbar-icons .link {
  height: 100%;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-transform: var(--f7-tabbar-link-text-transform);
  font-weight: var(--f7-tabbar-link-font-weight);
  letter-spacing: var(--f7-tabbar-link-letter-spacing);
  overflow: hidden;
}

.tabbar .tab-link-active,
.tabbar-icons .tab-link-active {
  color: var(--f7-tabbar-link-active-color, var(--f7-theme-color));
  background-color: var(--f7-tabbar-link-active-bg-color, transparent);
}

.tabbar i.icon,
.tabbar-icons i.icon {
  font-size: var(--f7-tabbar-icon-size);
  height: var(--f7-tabbar-icon-size);
  line-height: var(--f7-tabbar-icon-size);
}

.tabbar-icons {
  --f7-toolbar-height: var(--f7-tabbar-icons-height);
}

.tabbar-icons .tab-link,
.tabbar-icons .link {
  height: 100%;
  justify-content: center;
  align-items: center;
}

.tabbar-icons .tabbar-label {
  display: block;
  line-height: 1;
  margin: 0;
  position: relative;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--f7-tabbar-label-font-size);
  text-transform: var(--f7-tabbar-label-text-transform);
  font-weight: var(--f7-tabbar-label-font-weight);
  letter-spacing: var(--f7-tabbar-label-letter-spacing);
}

@media (min-width: 768px) and (min-height: 600px) {
  :root {
    --f7-tabbar-icons-height: var(--f7-tabbar-icons-tablet-height);
    --f7-tabbar-label-font-size: var(--f7-tabbar-label-tablet-font-size);
  }
}

.tabbar-scrollable .toolbar-inner {
  justify-content: flex-start;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scrollbar-color: transparent;
}

.tabbar-scrollable .toolbar-inner::-webkit-scrollbar {
  -webkit-appearance: none;
          appearance: none;
  width: 0px;
  display: none;
  opacity: 0;
  background: transparent;
}

.tabbar-scrollable .toolbar-inner::-webkit-scrollbar-track {
  box-shadow: none;
  background: transparent;
}

.tabbar-scrollable .toolbar-inner::-webkit-scrollbar-thumb {
  background-color: transparent;
  outline: none;
  border-radius: 9999px;
  position: relative;
}

.tabbar-scrollable .tab-link,
.tabbar-scrollable .link {
  width: auto;
  flex-shrink: 0;
}

.toolbar-transitioning,
.navbar-transitioning + .toolbar,
.navbar-transitioning ~ * .toolbar {
  transition-duration: var(--f7-toolbar-hide-show-transition-duration);
}

.toolbar-bottom ~ *,
.ios .toolbar-bottom-ios ~ *,
.md .toolbar-bottom-md ~ * {
  --f7-page-toolbar-bottom-offset: var(--f7-toolbar-height);
}

.toolbar-bottom.tabbar-icons ~ *,
.ios .toolbar-bottom-ios.tabbar-icons ~ *,
.md .toolbar-bottom-md.tabbar-icons ~ * {
  --f7-page-toolbar-bottom-offset: var(--f7-tabbar-icons-height);
}

.toolbar-bottom.toolbar-hidden,
.ios .toolbar-bottom-ios.toolbar-hidden,
.md .toolbar-bottom-md.toolbar-hidden {
  transform: translate3d(0, 100%, 0);
}

.toolbar-top ~ *,
.ios .toolbar-top-ios ~ *,
.md .toolbar-top-md ~ *,
.sheet-modal-bottom > .toolbar:not(.toolbar-bottom) ~ * {
  --f7-page-toolbar-top-offset: var(--f7-toolbar-height);
}

.toolbar-top.tabbar-icons ~ *,
.ios .toolbar-top-ios.tabbar-icons ~ *,
.md .toolbar-top-md.tabbar-icons ~ *,
.sheet-modal-bottom > .toolbar:not(.toolbar-bottom).tabbar-icons ~ * {
  --f7-page-toolbar-top-offset: var(--f7-tabbar-icons-height);
}

.toolbar-top.toolbar-hidden,
.ios .toolbar-top-ios.toolbar-hidden,
.md .toolbar-top-md.toolbar-hidden {
  transform: translate3d(0, -100%, 0);
}

.navbar ~ .toolbar-top,
.navbars ~ .toolbar-top,
.ios .navbar ~ .toolbar-top-ios,
.ios .navbars ~ .toolbar-top-ios,
.md .navbar ~ .toolbar-top-md,
.navbar ~ * .toolbar-top,
.navbars ~ * .toolbar-top,
.ios .navbar ~ * .toolbar-top-ios,
.ios .navbars ~ * .toolbar-top-ios,
.md .navbar ~ * .toolbar-top-md,
.navbar ~ .page:not(.no-navbar) .toolbar-top,
.navbars ~ .page:not(.no-navbar) .toolbar-top,
.ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios,
.ios .navbars ~ .page:not(.no-navbar) .toolbar-top-ios,
.md .navbar ~ .page:not(.no-navbar) .toolbar-top-md {
  top: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbar ~ .toolbar-top.toolbar-hidden,
.navbars ~ .toolbar-top.toolbar-hidden,
.ios .navbar ~ .toolbar-top-ios.toolbar-hidden,
.ios .navbars ~ .toolbar-top-ios.toolbar-hidden,
.md .navbar ~ .toolbar-top-md.toolbar-hidden,
.navbar ~ * .toolbar-top.toolbar-hidden,
.navbars ~ * .toolbar-top.toolbar-hidden,
.ios .navbar ~ * .toolbar-top-ios.toolbar-hidden,
.ios .navbars ~ * .toolbar-top-ios.toolbar-hidden,
.md .navbar ~ * .toolbar-top-md.toolbar-hidden,
.navbar ~ .page:not(.no-navbar) .toolbar-top.toolbar-hidden,
.navbars ~ .page:not(.no-navbar) .toolbar-top.toolbar-hidden,
.ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios.toolbar-hidden,
.ios .navbars ~ .page:not(.no-navbar) .toolbar-top-ios.toolbar-hidden,
.md .navbar ~ .page:not(.no-navbar) .toolbar-top-md.toolbar-hidden {
  transform: translate3d(0, calc(-1 * (var(--f7-navbar-height) + var(--f7-toolbar-height) + var(--f7-safe-area-top))), 0);
}

.navbar ~ .toolbar-top.toolbar-hidden.tabbar-icons,
.navbars ~ .toolbar-top.toolbar-hidden.tabbar-icons,
.ios .navbar ~ .toolbar-top-ios.toolbar-hidden.tabbar-icons,
.ios .navbars ~ .toolbar-top-ios.toolbar-hidden.tabbar-icons,
.md .navbar ~ .toolbar-top-md.toolbar-hidden.tabbar-icons,
.navbar ~ * .toolbar-top.toolbar-hidden.tabbar-icons,
.navbars ~ * .toolbar-top.toolbar-hidden.tabbar-icons,
.ios .navbar ~ * .toolbar-top-ios.toolbar-hidden.tabbar-icons,
.ios .navbars ~ * .toolbar-top-ios.toolbar-hidden.tabbar-icons,
.md .navbar ~ * .toolbar-top-md.toolbar-hidden.tabbar-icons,
.navbar ~ .page:not(.no-navbar) .toolbar-top.toolbar-hidden.tabbar-icons,
.navbars ~ .page:not(.no-navbar) .toolbar-top.toolbar-hidden.tabbar-icons,
.ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios.toolbar-hidden.tabbar-icons,
.ios .navbars ~ .page:not(.no-navbar) .toolbar-top-ios.toolbar-hidden.tabbar-icons,
.md .navbar ~ .page:not(.no-navbar) .toolbar-top-md.toolbar-hidden.tabbar-icons {
  transform: translate3d(0, calc(-1 * (var(--f7-navbar-height) + var(--f7-tabbar-icons-height) + var(--f7-safe-area-top))), 0);
}

.navbar-hidden + .toolbar-top:not(.toolbar-hidden),
.ios .navbar-hidden + .toolbar-top-ios:not(.toolbar-hidden),
.md .navbar-hidden + .toolbar-top-md:not(.toolbar-hidden),
.navbar-hidden ~ * .toolbar-top:not(.toolbar-hidden),
.ios .navbar-hidden ~ * .toolbar-top-ios:not(.toolbar-hidden),
.md .navbar-hidden ~ * .toolbar-top-md:not(.toolbar-hidden) {
  transform: translate3d(0, calc(0px - var(--f7-navbar-height)), 0);
}

.navbar-large-hidden + .toolbar-top:not(.toolbar-hidden),
.ios .navbar-large-hidden + .toolbar-top-ios:not(.toolbar-hidden),
.md .navbar-large-hidden + .toolbar-top-md:not(.toolbar-hidden),
.navbar-large-hidden ~ * .toolbar-top:not(.toolbar-hidden),
.ios .navbar-large-hidden ~ * .toolbar-top-ios:not(.toolbar-hidden),
.md .navbar-large-hidden ~ * .toolbar-top-md:not(.toolbar-hidden) {
  transform: translate3d(0, calc(0px - var(--f7-navbar-height) - var(--f7-navbar-large-title-height)), 0);
}

.ios .toolbar-pane {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.ios .toolbar-pane,
.ios .toolbar .left,
.ios .toolbar .right {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: relative;
  z-index: 1;
  border-radius: 32px;
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow);
  background-color: var(--f7-glass-bg-color);
}

.ios .toolbar .left {
  margin-right: auto;
}

.ios .toolbar .right {
  margin-left: auto;
}

.ios .toolbar .left:empty,
.ios .toolbar .right:empty {
  display: none;
}

.ios .toolbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  min-width: 48px;
  min-height: 48px;
  padding: 0;
}

.ios .toolbar .link {
  padding: 0 12px;
  height: 100%;
}

.ios .toolbar::before,
.ios .toolbar::after {
  pointer-events: none;
  content: '';
  position: absolute;
  inset: 0;
}

.ios .toolbar::before {
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  -webkit-mask-image: linear-gradient(to top, black calc(50% + var(--f7-safe-area-bottom, 0px)), transparent 100%);
          mask-image: linear-gradient(to top, black calc(50% + var(--f7-safe-area-bottom, 0px)), transparent 100%);
}

.ios .toolbar::after {
  background-image: linear-gradient(to top, var(--f7-toolbar-bg-color, var(--f7-bars-bg-color)) var(--f7-safe-area-bottom, 0px), transparent 100%);
}

.ios .toolbar.toolbar-bottom::before,
.ios .toolbar.messagebar::before,
.ios .toolbar.toolbar-bottom::after,
.ios .toolbar.messagebar::after {
  top: -16px;
}

.ios .toolbar.toolbar-bottom .toolbar-inner,
.ios .toolbar.messagebar .toolbar-inner {
  padding-bottom: 16px;
}

.ios .toolbar.toolbar-top::before,
.ios .toolbar:not(.toolbar-bottom, .toolbar-top, .messagebar)::before {
  -webkit-mask-image: linear-gradient(to bottom, black calc(50% + var(--f7-safe-area-top, 0px)), transparent 100%);
          mask-image: linear-gradient(to bottom, black calc(50% + var(--f7-safe-area-top, 0px)), transparent 100%);
}

.ios .toolbar.toolbar-top::after,
.ios .toolbar:not(.toolbar-bottom, .toolbar-top, .messagebar)::after {
  background-image: linear-gradient(to bottom, var(--f7-toolbar-bg-color, var(--f7-bars-bg-color)) var(--f7-safe-area-top, 0px), transparent 100%);
}

.ios .toolbar.toolbar-top::before,
.ios .toolbar:not(.toolbar-bottom, .toolbar-top, .messagebar)::before,
.ios .toolbar.toolbar-top::after,
.ios .toolbar:not(.toolbar-bottom, .toolbar-top, .messagebar)::after {
  bottom: -16px;
}

.ios .toolbar.toolbar-top .toolbar-inner,
.ios .toolbar:not(.toolbar-bottom, .toolbar-top, .messagebar) .toolbar-inner {
  padding-top: 16px;
}

.ios .navbar ~ .toolbar-top::before,
.ios .navbar ~ .toolbar-top::after {
  display: none;
}

.ios .toolbar-inner {
  justify-content: center;
  overflow: visible;
  gap: 16px;
}

.ios .tabbar-scrollable .toolbar-pane {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scrollbar-color: transparent;
  justify-content: flex-start;
}

.ios .tabbar-scrollable .toolbar-pane::-webkit-scrollbar {
  -webkit-appearance: none;
          appearance: none;
  width: 0px;
  display: none;
  opacity: 0;
  background: transparent;
}

.ios .tabbar-scrollable .toolbar-pane::-webkit-scrollbar-track {
  box-shadow: none;
  background: transparent;
}

.ios .tabbar-scrollable .toolbar-pane::-webkit-scrollbar-thumb {
  background-color: transparent;
  outline: none;
  border-radius: 9999px;
  position: relative;
}

.ios .tabbar:not(.tabbar-scrollable) {
  touch-action: none;
}

.ios .tabbar-icons .tab-link,
.ios .tabbar-icons .link {
  padding-top: 4px;
  padding-bottom: 4px;
}

.ios .tabbar-icons .tab-link i + span,
.ios .tabbar-icons .link i + span {
  margin: 0;
  margin-top: 4px;
}

@media (max-width: 767px) {
  .ios .tabbar .toolbar-pane {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .ios .tabbar .tab-link {
    padding-left: 16px;
    padding-right: 16px;
    min-width: 96px;
  }
}

.ios .tabbar-scrollable .toolbar-inner {
  justify-content: flex-start;
}

.ios .tabbar-scrollable .tab-link,
.ios .tabbar-scrollable .link {
  padding: 0 8px;
}

.ios .tab-link-highlight {
  position: absolute;
  height: 100%;
  top: 0;
  transition-duration: 300ms;
  border-radius: inherit;
  left: 0;
}

.ios .tab-link-highlight::before,
.ios .tab-link-highlight::after {
  content: '';
  position: absolute;
  inset: 4px;
  border-radius: inherit;
  transition-duration: 300ms;
}

.ios .tab-link-highlight::before {
  background-color: var(--f7-tabbar-link-highlight-bg-color);
}

.ios .tab-link-highlight::after {
  opacity: 0;
  box-shadow: var(--f7-glass-shadow-thumb);
  background-color: var(--f7-tabbar-link-highlight-active-bg-color);
}

.ios .tab-link-highlight-pressed::before {
  opacity: 0;
}

.ios .tab-link-highlight-pressed::after {
  opacity: 1;
}

.ios .tab-link-highlight-pressed::before,
.ios .tab-link-highlight-pressed::after {
  scale: 1.4;
}

.md .toolbar-pane {
  display: contents;
}

.md .toolbar {
  background-color: var(--f7-toolbar-bg-color, var(--f7-bars-bg-color));
}

.md .toolbar .link {
  justify-content: center;
  padding: 0 12px;
  min-width: 48px;
  min-height: 48px;
  line-height: var(--f7-toolbar-link-line-height, var(--f7-toolbar-height));
  height: var(--f7-toolbar-link-height, var(--f7-toolbar-height));
}

.md .toolbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  min-width: 48px;
  flex-shrink: 0;
  padding: 0;
}

.md .toolbar-top.no-outline:after,
.md .md .toolbar-top-md.no-outline:after {
  display: none !important;
}

.md .toolbar-top.toolbar-hidden:before,
.md .md .toolbar-top-md.toolbar-hidden:before {
  display: none !important;
}

.md .toolbar-top:after,
.md .md .toolbar-top-md:after,
.md .toolbar-top:before,
.md .md .toolbar-top-md:before {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.md .toolbar-top:after,
.md .md .toolbar-top-md:after {
  content: '';
  position: absolute;
  background-color: var(--f7-toolbar-border-color, var(--f7-bars-border-color));
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.md .toolbar-bottom.no-outline:before,
.md .md .toolbar-bottom-md.no-outline:before {
  display: none !important;
}

.md .toolbar-bottom.toolbar-hidden:after,
.md .md .toolbar-bottom-md.toolbar-hidden:after {
  display: none !important;
}

.md .toolbar-bottom:before,
.md .md .toolbar-bottom-md:before {
  content: '';
  position: absolute;
  background-color: var(--f7-toolbar-border-color, var(--f7-bars-border-color));
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.md .toolbar-inner {
  justify-content: space-between;
  overflow: hidden;
}

.md .tabbar .tab-link,
.md .tabbar-icons .tab-link,
.md .tabbar .link,
.md .tabbar-icons .link {
  padding-left: 0;
  padding-right: 0;
}

.md .tabbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.md .tabbar-icons a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  flex-shrink: initial;
}

.md .tabbar .tab-link,
.md .tabbar-icons .tab-link {
  transition-duration: 300ms;
  overflow: hidden;
  position: relative;
}

.md .tabbar i.icon,
.md .tabbar-icons i.icon {
  position: relative;
}

.md .tabbar i.icon::before,
.md .tabbar-icons i.icon::before {
  content: '';
  width: 64px;
  height: 32px;
  border-radius: 32px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%) scaleX(0.5);
  background: var(--f7-tabbar-link-active-icon-bg-color);
  opacity: 0;
  transition-duration: 200ms;
  z-index: -1;
}

.md .tabbar i.icon + .tabbar-label,
.md .tabbar-icons i.icon + .tabbar-label {
  margin-top: 8px;
}

.md .tabbar .tab-link-active i.icon::before,
.md .tabbar-icons .tab-link-active i.icon::before {
  opacity: 1;
  transform: translateX(-50%) translateY(-50%) scaleX(1);
}

.md .tabbar-icons .tab-link,
.md .tabbar-icons .link {
  padding-top: 8px;
  padding-bottom: 8px;
}

.md .tabbar-label {
  max-width: 100%;
  overflow: hidden;
  line-height: 1.2;
}

.md .tabbar-scrollable .toolbar-inner {
  overflow: auto;
}

.md .tabbar-scrollable .tab-link,
.md .tabbar-scrollable .link {
  padding: 0 12px;
}

.md .toolbar-top-md .tab-link-highlight,
.md .toolbar-top .tab-link-highlight {
  bottom: 0;
}

.md .toolbar-bottom .tab-link-highlight,
.md .toolbar-bottom-md .tab-link-highlight {
  top: 0;
}

.md .tabbar.tabbar-icons .tab-link-highlight,
.md .tabbar-icons.tabbar-icons .tab-link-highlight {
  display: none;
}

.md .tabbar:not(.tabbar-icons) .tab-link-highlight,
.md .tabbar-icons:not(.tabbar-icons) .tab-link-highlight {
  position: absolute;
  height: 2px;
  background: var(--f7-tabbar-link-active-border-color, var(--f7-theme-color));
  transition-duration: 300ms;
  left: 0;
}

/* === Subnavbar === */

:root {
  /*

  --f7-subnavbar-bg-color-rgb: var(--f7-bars-bg-color-rgb);
  --f7-subnavbar-border-color: var(--f7-bars-border-color);
  --f7-subnavbar-link-color: var(--f7-bars-link-color);
  --f7-subnavbar-text-color: var(--f7-bars-text-color);
  */
  --f7-subnavbar-title-line-height: 1.2;
}

.ios {
  --f7-subnavbar-height: 44px;
  --f7-subnavbar-offset-left: calc(16px + var(--f7-safe-area-left));
  --f7-subnavbar-offset-right: calc(16px + var(--f7-safe-area-right));
  --f7-subnavbar-inner-padding-left: 5px;
  --f7-subnavbar-inner-padding-right: 5px;
  --f7-subnavbar-title-font-size: 24px;
  --f7-subnavbar-title-font-weight: 700;
  --f7-subnavbar-title-letter-spacing: -0.03em;
  --f7-subnavbar-title-margin-left: 8px;
  --f7-subnavbar-bg-color: var(--f7-glass-bg-color);
  /*
  --f7-subnavbar-link-height: var(--f7-subnavbar-height);
  --f7-subnavbar-link-line-height: var(--f7-subnavbar-height);
  */
}

.md {
  --f7-subnavbar-height: 64px;
  --f7-subnavbar-offset-left: 0;
  --f7-subnavbar-offset-right: 0;
  --f7-subnavbar-inner-padding-left: calc(16px + var(--f7-safe-area-left));
  --f7-subnavbar-inner-padding-right: calc(16px + var(--f7-safe-area-right));
  --f7-subnavbar-title-font-size: 22px;
  --f7-subnavbar-title-font-weight: 400;
  --f7-subnavbar-title-letter-spacing: 0;
  --f7-subnavbar-title-margin-left: 0px;
  /*
  --f7-subnavbar-bg-color: var(--f7-bars-bg-color);
  --f7-subnavbar-link-height: var(--f7-subnavbar-height);
  --f7-subnavbar-link-line-height: var(--f7-subnavbar-height);
  */
}

.subnavbar {
  position: absolute;
  left: var(--f7-subnavbar-offset-left);
  right: var(--f7-subnavbar-offset-right);
  top: 0;
  z-index: 600;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: var(--f7-subnavbar-bg-color, var(--f7-bars-bg-color));
  color: var(--f7-subnavbar-text-color, var(--f7-bars-text-color));
}

.subnavbar .subnavbar-title {
  position: relative;
  overflow: hidden;
  text-overflow: ellpsis;
  white-space: nowrap;
  font-size: var(--f7-subnavbar-title-font-size);
  font-weight: var(--f7-subnavbar-title-font-weight);
  text-align: left;
  display: inline-block;
  line-height: var(--f7-subnavbar-title-line-height);
  letter-spacing: var(--f7-subnavbar-title-letter-spacing);
  margin-left: var(--f7-subnavbar-title-margin-left);
}

.subnavbar .left,
.subnavbar .right {
  flex-shrink: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.subnavbar .right:first-child {
  position: absolute;
  height: 100%;
}

.subnavbar a {
  color: var(--f7-subnavbar-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
}

.subnavbar a.link {
  line-height: var(--f7-subnavbar-link-line-height, var(--f7-subnavbar-height));
  height: var(--f7-subnavbar-link-height, var(--f7-subnavbar-height));
}

.subnavbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  min-width: var(--f7-subnavbar-height);
}

.subnavbar.no-outline:after {
  display: none !important;
}

.subnavbar.navbar-hidden:before {
  display: none !important;
}

.subnavbar:after,
.subnavbar:before {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.subnavbar:after {
  content: '';
  position: absolute;
  background-color: var(--f7-subnavbar-border-color, var(--f7-bars-border-color));
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.subnavbar-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  justify-content: space-between;
  overflow: hidden;
  padding: 0 var(--f7-subnavbar-inner-padding-left) 0 var(--f7-subnavbar-inner-padding-right);
}

.navbar .subnavbar {
  top: 100%;
}

.views > .subnavbar,
.view > .subnavbar,
.page > .subnavbar {
  position: absolute;
}

.navbar ~ * .subnavbar,
.navbars ~ * .subnavbar,
.page-with-subnavbar .navbar ~ .subnavbar,
.page-with-subnavbar .navbar ~ * .subnavbar,
.navbar ~ .page-with-subnavbar:not(.no-navbar) .subnavbar,
.navbar ~ .subnavbar,
.navbars ~ .page-with-subnavbar:not(.no-navbar) .subnavbar,
.navbars ~ .subnavbar {
  top: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbar ~ .page-with-navbar-large:not(.no-navbar) .subnavbar,
.navbars ~ .page-with-navbar-large:not(.no-navbar) .subnavbar,
.page-with-subnavbar.page-with-navbar-large .navbar ~ .subnavbar,
.page-with-subnavbar.page-with-navbar-large .navbar ~ * .subnavbar,
.navbar .title-large ~ .subnavbar {
  top: calc(var(--f7-navbar-height) + var(--f7-navbar-large-title-height) + var(--f7-safe-area-top));
  transform: translate3d(0, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0);
}

.page-with-subnavbar,
.subnavbar ~ * {
  --f7-page-subnavbar-offset: var(--f7-subnavbar-height);
}

.ios .subnavbar {
  height: calc(var(--f7-subnavbar-height) + 1px);
  margin-top: -1px;
  padding-top: 1px;
  border-radius: var(--f7-subnavbar-height);
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  --f7-segmented-strong-bg-color: transparent;
}

.ios .subnavbar:has(> .searchbar) {
  background: transparent;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
  box-shadow: none;
}

.ios .subnavbar .subnavbar-inner {
  border-radius: inherit;
}

.ios .subnavbar .title {
  align-self: flex-start;
  flex-shrink: 10;
}

.ios .subnavbar .left a + a,
.ios .subnavbar .right a + a {
  margin-left: 16px;
}

.ios .subnavbar .left {
  margin-right: 10px;
}

.ios .subnavbar .right {
  margin-left: 10px;
}

.ios .subnavbar .right:first-child {
  right: 8px;
}

.ios .subnavbar a.link {
  justify-content: flex-start;
}

.ios .subnavbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  justify-content: center;
  margin: 0;
}

.md .subnavbar {
  height: var(--f7-subnavbar-height);
}

.md .subnavbar .right {
  margin-left: auto;
}

.md .subnavbar .right:first-child {
  right: 16px;
}

.md .subnavbar a.link {
  justify-content: center;
  padding: 0 12px;
}

.md .subnavbar a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  flex-shrink: 0;
  padding: 0 12px;
}

.md .subnavbar-inner > a.link:first-child {
  margin-left: calc(-1 * var(--f7-subnavbar-inner-padding-left));
}

.md .subnavbar-inner > a.link:last-child {
  margin-right: calc(-1 * var(--f7-subnavbar-inner-padding-right));
}

/* === Content Block === */

:root {
  --f7-block-padding-horizontal: 16px;
  --f7-block-padding-vertical: 16px;
  --f7-block-font-size: inherit;
  --f7-block-header-margin: 10px;
  --f7-block-footer-margin: 10px;
  --f7-block-header-font-size: 14px;
  --f7-block-footer-font-size: 14px;
  --f7-block-title-text-transform: none;
  --f7-block-title-white-space: nowrap;
  --f7-block-title-medium-text-transform: none;
  --f7-block-title-large-text-transform: none;
  --f7-block-inset-side-margin: 16px;
}

:root .dark,
:root.dark {
  --f7-block-outline-border-color: rgba(255, 255, 255, 0.15);
}

.ios {
  --f7-block-text-color: inherit;
  --f7-block-margin-vertical: 35px;
  --f7-block-outline-border-color: rgba(0, 0, 0, 0.22);
  --f7-block-title-font-size: 17px;
  --f7-block-title-font-weight: 600;
  --f7-block-title-line-height: 20px;
  --f7-block-title-margin-bottom: 10px;
  --f7-block-title-medium-font-size: 20px;
  --f7-block-title-medium-font-weight: bold;
  --f7-block-title-medium-line-height: 1.4;
  --f7-block-title-large-font-size: 22px;
  --f7-block-title-large-font-weight: bold;
  --f7-block-title-large-line-height: 1.3;
  --f7-block-inset-border-radius: 24px;
  --f7-block-title-text-color: rgba(0, 0, 0, 0.6);
  --f7-block-strong-text-color: #000;
  --f7-block-header-text-color: rgba(0, 0, 0, 0.45);
  --f7-block-footer-text-color: rgba(0, 0, 0, 0.45);
  --f7-block-strong-bg-color: #fff;
  --f7-block-title-medium-text-color: #000;
  --f7-block-title-large-text-color: #000;
}

.ios .dark,
.ios.dark {
  --f7-block-title-text-color: rgba(255, 255, 255, 0.6);
  --f7-block-header-text-color: rgba(255, 255, 255, 0.55);
  --f7-block-footer-text-color: rgba(255, 255, 255, 0.55);
  --f7-block-strong-text-color: #fff;
  --f7-block-strong-bg-color: #1c1c1d;
  --f7-block-title-medium-text-color: #fff;
  --f7-block-title-large-text-color: #fff;
}

.md {
  --f7-block-margin-vertical: 32px;
  --f7-block-title-font-size: inherit;
  --f7-block-title-font-weight: 500;
  --f7-block-title-line-height: 16px;
  --f7-block-title-margin-bottom: 16px;
  --f7-block-title-medium-font-size: 16px;
  --f7-block-title-medium-font-weight: 500;
  --f7-block-title-medium-line-height: 1.3;
  --f7-block-title-large-font-size: 22px;
  --f7-block-title-large-font-weight: 500;
  --f7-block-title-large-line-height: 1.2;
  --f7-block-inset-border-radius: 16px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-block-text-color: var(--f7-md-on-surface);
  --f7-block-strong-text-color: var(--f7-md-on-surface);
  --f7-block-outline-border-color: var(--f7-md-outline);
  --f7-block-title-text-color: var(--f7-theme-color);
  --f7-block-title-medium-text-color: var(--f7-theme-color);
  --f7-block-title-large-text-color: var(--f7-theme-color);
  --f7-block-strong-bg-color: var(--f7-md-surface-1);
  --f7-block-header-text-color: var(--f7-md-on-surface-variant);
  --f7-block-footer-text-color: var(--f7-md-on-surface-variant);
}

.block {
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  color: var(--f7-block-text-color);
  margin: var(--f7-block-margin-vertical) 0;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: calc(var(--f7-block-padding-horizontal) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-block-padding-horizontal) + var(--f7-safe-area-right));
  font-size: var(--f7-block-font-size);
}

.block > h1:first-child,
.block > h2:first-child,
.block > h3:first-child,
.block > h4:first-child,
.block > p:first-child {
  margin-top: 0;
}

.block > h1:last-child,
.block > h2:last-child,
.block > h3:last-child,
.block > h4:last-child,
.block > p:last-child {
  margin-bottom: 0;
}

.block-strong,
.ios .block-strong-ios,
.md .block-strong-md {
  color: var(--f7-block-strong-text-color);
  padding-top: var(--f7-block-padding-vertical);
  padding-bottom: var(--f7-block-padding-vertical);
  background-color: var(--f7-block-strong-bg-color);
}

.block-outline:not(.inset):before,
.ios .block-outline-ios:not(.inset):not(.inset-ios):before,
.md .block-outline-md:not(.inset):not(.inset-md):before {
  content: '';
  position: absolute;
  background-color: var(--f7-block-outline-border-color);
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.block-outline:not(.inset):after,
.ios .block-outline-ios:not(.inset):not(.inset-ios):after,
.md .block-outline-md:not(.inset):not(.inset-md):after {
  content: '';
  position: absolute;
  background-color: var(--f7-block-outline-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.block-outline.inset,
.ios .block-outline-ios.inset,
.ios .block-outline-ios.inset-ios,
.md .block-outline-md.inset,
.md .block-outline-md.inset-md {
  border: 1px solid var(--f7-block-outline-border-color);
}

.block-title {
  position: relative;
  overflow: hidden;
  margin: 0;
  white-space: var(--f7-block-title-white-space);
  text-overflow: ellipsis;
  text-transform: var(--f7-block-title-text-transform);
  color: var(--f7-block-title-text-color);
  font-size: var(--f7-block-title-font-size, inherit);
  font-weight: var(--f7-block-title-font-weight);
  line-height: var(--f7-block-title-line-height);
  margin-top: var(--f7-block-margin-vertical);
  margin-bottom: var(--f7-block-title-margin-bottom);
  margin-left: calc(var(--f7-block-padding-horizontal) + var(--f7-safe-area-left));
  margin-right: calc(var(--f7-block-padding-horizontal) + var(--f7-safe-area-right));
}

.block-title + .list,
.block-title + .block,
.block-title + .card,
.block-title + .timeline,
.block-title + .block-header {
  margin-top: 0px;
}

.block-title-medium {
  font-size: var(--f7-block-title-medium-font-size);
  text-transform: var(--f7-block-title-medium-text-transform);
  color: var(--f7-block-title-medium-text-color);
  font-weight: var(--f7-block-title-medium-font-weight);
  line-height: var(--f7-block-title-medium-line-height);
}

.block-title-large {
  font-size: var(--f7-block-title-large-font-size);
  text-transform: var(--f7-block-title-large-text-transform);
  color: var(--f7-block-title-large-text-color);
  font-weight: var(--f7-block-title-large-font-weight);
  line-height: var(--f7-block-title-large-line-height);
}

.block > .block-title:first-child,
.list > .block-title:first-child {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.block-header {
  color: var(--f7-block-header-text-color);
  font-size: var(--f7-block-header-font-size);
  margin-bottom: var(--f7-block-header-margin);
  margin-top: var(--f7-block-margin-vertical);
}

.block-header + .list,
.block-header + .block,
.block-header + .card,
.block-header + .timeline {
  margin-top: var(--f7-block-header-margin);
}

.block-footer {
  color: var(--f7-block-footer-text-color);
  font-size: var(--f7-block-footer-font-size);
  margin-top: var(--f7-block-footer-margin);
  margin-bottom: var(--f7-block-margin-vertical);
}

.block-footer,
.block-header {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: calc(var(--f7-block-padding-horizontal) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-block-padding-horizontal) + var(--f7-safe-area-right));
}

.block-footer ul:first-child,
.block-header ul:first-child,
.block-footer p:first-child,
.block-header p:first-child,
.block-footer h1:first-child,
.block-header h1:first-child,
.block-footer h2:first-child,
.block-header h2:first-child,
.block-footer h3:first-child,
.block-header h3:first-child,
.block-footer h4:first-child,
.block-header h4:first-child {
  margin-top: 0;
}

.block-footer ul:last-child,
.block-header ul:last-child,
.block-footer p:last-child,
.block-header p:last-child,
.block-footer h1:last-child,
.block-header h1:last-child,
.block-footer h2:last-child,
.block-header h2:last-child,
.block-footer h3:last-child,
.block-header h3:last-child,
.block-footer h4:last-child,
.block-header h4:last-child {
  margin-bottom: 0;
}

.block-footer ul:first-child:last-child,
.block-header ul:first-child:last-child,
.block-footer p:first-child:last-child,
.block-header p:first-child:last-child,
.block-footer h1:first-child:last-child,
.block-header h1:first-child:last-child,
.block-footer h2:first-child:last-child,
.block-header h2:first-child:last-child,
.block-footer h3:first-child:last-child,
.block-header h3:first-child:last-child,
.block-footer h4:first-child:last-child,
.block-header h4:first-child:last-child {
  margin-top: 0;
  margin-bottom: 0;
}

.list .block-header,
.block .block-header,
.card .block-header,
.timeline .block-header {
  margin-top: 0;
}

.list .block-footer,
.block .block-footer,
.card .block-footer,
.timeline .block-footer {
  margin-bottom: 0;
}

.list + .block-footer,
.block + .block-footer,
.card + .block-footer,
.timeline + .block-footer {
  margin-top: calc(-1 * (var(--f7-block-margin-vertical) - var(--f7-block-footer-margin)));
}

.block + .block-footer {
  margin-top: calc(-1 * (var(--f7-block-margin-vertical) - var(--f7-block-footer-margin)));
  margin-bottom: var(--f7-block-margin-vertical);
}

.block .block-header,
.block .block-footer {
  padding: 0;
}

.block.inset,
.ios .block.inset-ios,
.md .block.inset-md {
  border-radius: var(--f7-block-inset-border-radius);
  margin-left: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-left));
  margin-right: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-right));
  --f7-safe-area-left: 0px;
  --f7-safe-area-right: 0px;
}

.block-strong.inset:before,
.ios .block-strong-ios.inset:before,
.md .block-strong-md.inset:before,
.ios .block-strong.inset-ios:before,
.md .block-strong.inset-md:before,
.ios .block-strong-ios.inset-ios:before,
.md .block-strong-md.inset-md:before,
.block-strong.inset:after,
.ios .block-strong-ios.inset:after,
.md .block-strong-md.inset:after,
.ios .block-strong.inset-ios:after,
.md .block-strong.inset-md:after,
.ios .block-strong-ios.inset-ios:after,
.md .block-strong-md.inset-md:after {
  display: none !important;
}

@media (min-width: 640px) {
  .block.sm-inset,
  .ios .block.sm-inset-ios,
  .md .block.sm-inset-md {
    border-radius: var(--f7-block-inset-border-radius);
    margin-left: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-right));
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .block.sm-inset:before,
  .ios .block.sm-inset-ios:before,
  .md .block.sm-inset-md:before,
  .block.sm-inset:after,
  .ios .block.sm-inset-ios:after,
  .md .block.sm-inset-md:after {
    display: none !important;
  }

  .block.sm-inset.block-outline,
  .ios .block.sm-inset-ios.block-outline,
  .ios .block.sm-inset-ios.block-outline-ios,
  .md .block.sm-inset-md.block-outline,
  .md .block.sm-inset-md.block-outline-md {
    border: 1px solid var(--f7-block-outline-border-color);
  }
}

@media (min-width: 768px) {
  .block.md-inset,
  .ios .block.md-inset-ios,
  .md .block.md-inset-md {
    border-radius: var(--f7-block-inset-border-radius);
    margin-left: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-right));
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .block.md-inset:before,
  .ios .block.md-inset-ios:before,
  .md .block.md-inset-md:before,
  .block.md-inset:after,
  .ios .block.md-inset-ios:after,
  .md .block.md-inset-md:after {
    display: none !important;
  }

  .block.md-inset.block-outline,
  .ios .block.md-inset-ios.block-outline,
  .ios .block.md-inset-ios.block-outline-ios,
  .md .block.md-inset-md.block-outline,
  .md .block.md-inset-md.block-outline-md {
    border: 1px solid var(--f7-block-outline-border-color);
  }
}

@media (min-width: 1024px) {
  .block.lg-inset,
  .ios .block.lg-inset-ios,
  .md .block.lg-inset-md {
    border-radius: var(--f7-block-inset-border-radius);
    margin-left: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-right));
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .block.lg-inset:before,
  .ios .block.lg-inset-ios:before,
  .md .block.lg-inset-md:before,
  .block.lg-inset:after,
  .ios .block.lg-inset-ios:after,
  .md .block.lg-inset-md:after {
    display: none !important;
  }

  .block.lg-inset.block-outline,
  .ios .block.lg-inset-ios.block-outline,
  .ios .block.lg-inset-ios.block-outline-ios,
  .md .block.lg-inset-md.block-outline,
  .md .block.lg-inset-md.block-outline-md {
    border: 1px solid var(--f7-block-outline-border-color);
  }
}

@media (min-width: 1280px) {
  .block.xl-inset,
  .ios .block.xl-inset-ios,
  .md .block.xl-inset-md {
    border-radius: var(--f7-block-inset-border-radius);
    margin-left: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-right));
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .block.xl-inset:before,
  .ios .block.xl-inset-ios:before,
  .md .block.xl-inset-md:before,
  .block.xl-inset:after,
  .ios .block.xl-inset-ios:after,
  .md .block.xl-inset-md:after {
    display: none !important;
  }

  .block.xl-inset.block-outline,
  .ios .block.xl-inset-ios.block-outline,
  .ios .block.xl-inset-ios.block-outline-ios,
  .md .block.xl-inset-md.block-outline,
  .md .block.xl-inset-md.block-outline-md {
    border: 1px solid var(--f7-block-outline-border-color);
  }
}

@media (min-width: 1536px) {
  .block.2xl-inset,
  .ios .block.2xl-inset-ios,
  .md .block.2xl-inset-md {
    border-radius: var(--f7-block-inset-border-radius);
    margin-left: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-block-inset-side-margin) + var(--f7-safe-area-outer-right));
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .block.2xl-inset:before,
  .ios .block.2xl-inset-ios:before,
  .md .block.2xl-inset-md:before,
  .block.2xl-inset:after,
  .ios .block.2xl-inset-ios:after,
  .md .block.2xl-inset-md:after {
    display: none !important;
  }

  .block.2xl-inset.block-outline,
  .ios .block.2xl-inset-ios.block-outline,
  .ios .block.2xl-inset-ios.block-outline-ios,
  .md .block.2xl-inset-md.block-outline,
  .md .block.2xl-inset-md.block-outline-md {
    border: 1px solid var(--f7-block-outline-border-color);
  }
}

/* === List View === */

:root {
  --f7-list-inset-side-margin: 16px;
  --f7-list-item-padding-horizontal: 16px;
  --f7-list-media-item-padding-horizontal: 16px;
  --f7-list-item-text-max-lines: 2;
  --f7-list-chevron-icon-font-size: 20px;
  --f7-list-item-media-margin: 16px;
  --f7-list-item-title-font-size: inherit;
  --f7-list-item-title-font-weight: 400;
  --f7-list-item-title-line-height: inherit;
  --f7-list-item-title-white-space: nowrap;
  --f7-list-item-subtitle-font-weight: 400;
  --f7-list-item-subtitle-line-height: inherit;
  --f7-list-item-text-font-weight: 400;
  --f7-list-item-after-font-weight: 400;
  --f7-list-item-after-line-height: inherit;
  --f7-list-item-header-font-size: 12px;
  --f7-list-item-header-font-weight: 400;
  --f7-list-item-header-line-height: 1.2;
  --f7-list-item-footer-font-size: 12px;
  --f7-list-item-footer-font-weight: 400;
  --f7-list-item-footer-line-height: 1.2;
  /*
  --f7-list-button-text-color: var(--f7-theme-color);
  */
  --f7-list-button-font-size: inherit;
  --f7-list-button-font-weight: 400;
  --f7-list-button-text-align: center;
  --f7-list-group-title-line-height: inherit;
  --f7-menu-list-font-size: 14px;
  --f7-menu-list-item-title-font-size: 14px;
  --f7-menu-list-item-title-font-weight: 500;
  --f7-menu-list-item-subtitle-font-size: 14px;
  --f7-menu-list-item-text-font-size: 14px;
  --f7-menu-list-item-after-font-size: 14px;
  --f7-list-outline-border-color: rgba(0, 0, 0, 0.22);
  --f7-list-chevron-icon-color: rgba(0, 0, 0, 0.2);
}

:root .dark,
:root.dark {
  --f7-list-button-border-color: rgba(255, 255, 255, 0.15);
  --f7-list-outline-border-color: rgba(255, 255, 255, 0.15);
  --f7-list-group-title-border-color: rgba(255, 255, 255, 0.15);
  --f7-list-chevron-icon-color: rgba(255, 255, 255, 0.3);
}

.ios {
  --f7-list-item-padding-vertical: 12px;
  --f7-list-in-list-padding-left: 30px;
  --f7-list-inset-border-radius: 24px;
  --f7-list-margin-vertical: 35px;
  --f7-list-font-size: 17px;
  --f7-list-chevron-icon-area: 20px;
  --f7-list-item-title-text-color: inherit;
  --f7-list-item-subtitle-text-color: inherit;
  --f7-list-link-pressed-bg-color: rgba(0, 0, 0, 0.15);
  --f7-list-item-subtitle-font-size: 15px;
  --f7-list-item-text-font-size: 15px;
  --f7-list-item-text-line-height: 21px;
  --f7-list-item-after-font-size: inherit;
  --f7-list-item-after-padding: 5px;
  --f7-list-item-min-height: 52px;
  --f7-list-item-media-icons-margin: 5px;
  --f7-list-media-item-padding-vertical: 10px;
  --f7-list-media-item-title-font-weight: 600;
  --f7-list-button-border-color: rgba(0, 0, 0, 0.22);
  /*
  --f7-list-button-pressed-bg-color: rgba(var(--f7-theme-color-rgb), .15);
  */
  --f7-list-group-title-border-color: rgba(0, 0, 0, 0.22);
  --f7-list-group-title-height: 31px;
  --f7-list-group-title-font-size: inherit;
  --f7-list-group-title-font-weight: 400;
  --f7-menu-list-offset: 8px;
  --f7-menu-list-border-radius: 16px;
  --f7-menu-list-item-bg-color: transparent;
  --f7-menu-list-item-text-color: inherit;
  --f7-menu-list-item-min-height: 44px;
  --f7-list-item-border-color: rgba(0, 0, 0, 0.22);
  --f7-list-outline-inset-border-color: rgba(0, 0, 0, 0.22);
  --f7-list-strong-bg-color: #fff;
  --f7-list-item-after-text-color: rgba(0, 0, 0, 0.45);
  --f7-list-item-header-text-color: inherit;
  --f7-list-item-footer-text-color: rgba(0, 0, 0, 0.45);
  --f7-list-item-text-text-color: rgba(0, 0, 0, 0.45);
  --f7-list-group-title-text-color: rgba(0, 0, 0, 0.45);
  --f7-list-group-title-bg-color: #f7f7f7;
  --f7-menu-list-item-selected-text-color: var(--f7-theme-color);
  --f7-menu-list-item-selected-bg-color: rgba(var(--f7-theme-color-rgb), 0.15);
}

.ios .dark,
.ios.dark {
  --f7-list-item-border-color: rgba(255, 255, 255, 0.15);
  --f7-list-outline-inset-border-color: rgba(255, 255, 255, 0.15);
  --f7-list-strong-bg-color: #1c1c1d;
  --f7-list-item-after-text-color: rgba(255, 255, 255, 0.55);
  --f7-list-item-header-text-color: rgba(255, 255, 255, 0.55);
  --f7-list-item-footer-text-color: rgba(255, 255, 255, 0.55);
  --f7-list-item-text-text-color: rgba(255, 255, 255, 0.55);
  --f7-list-group-title-text-color: rgba(255, 255, 255, 0.55);
  --f7-list-group-title-bg-color: #232323;
  --f7-list-link-pressed-bg-color: rgba(255, 255, 255, 0.08);
  --f7-menu-list-item-selected-text-color: inherit;
  --f7-menu-list-item-selected-bg-color: var(--f7-theme-color);
}

.md {
  --f7-list-item-padding-vertical: 8px;
  --f7-list-in-list-padding-left: 24px;
  --f7-list-inset-border-radius: 16px;
  --f7-list-margin-vertical: 32px;
  --f7-list-font-size: 16px;
  --f7-list-chevron-icon-area: 26px;
  --f7-list-item-subtitle-font-size: 14px;
  --f7-list-item-text-font-size: 14px;
  --f7-list-item-text-line-height: 20px;
  --f7-list-item-after-font-size: 14px;
  --f7-list-item-after-padding: 8px;
  --f7-list-item-min-height: 48px;
  --f7-list-item-media-icons-margin: 8px;
  --f7-list-media-item-padding-vertical: 12px;
  --f7-list-media-item-title-font-weight: 500;
  --f7-list-button-border-color: transparent;
  /*
  --f7-list-button-pressed-bg-color: transparent;
  */
  --f7-list-group-title-border-color: transparent;
  --f7-list-group-title-height: 48px;
  --f7-list-group-title-font-size: 16px;
  --f7-list-group-title-font-weight: 400;
  --f7-menu-list-offset: 16px;
  --f7-menu-list-border-radius: 999px;
  --f7-menu-list-item-min-height: 56px;
  --f7-list-link-pressed-bg-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-list-outline-inset-border-color: var(--f7-md-outline);
  --f7-list-item-border-color: var(--f7-md-outline);
  --f7-list-item-title-text-color: var(--f7-md-on-surface);
  --f7-list-item-subtitle-text-color: var(--f7-md-on-surface);
  --f7-list-group-title-bg-color: var(--f7-md-surface-2);
  --f7-list-group-title-text-color: var(--f7-md-on-surface-variant);
  --f7-list-strong-bg-color: var(--f7-md-surface-1);
  --f7-list-item-after-text-color: var(--f7-md-on-surface-variant);
  --f7-list-item-text-text-color: var(--f7-md-on-surface-variant);
  --f7-list-item-header-text-color: var(--f7-md-on-surface-variant);
  --f7-list-item-footer-text-color: var(--f7-md-on-surface-variant);
  --f7-menu-list-item-text-color: var(--f7-md-on-surface-variant);
  --f7-menu-list-item-bg-color: var(--f7-md-surface-1);
  --f7-menu-list-item-selected-text-color: var(--f7-md-on-secondary-container);
  --f7-menu-list-item-selected-bg-color: var(--f7-md-secondary-container);
}

:root {
  --f7-list-chevron-icon-left: 'chevron_left';
  --f7-list-chevron-icon-right: 'chevron_right';
}

.list {
  position: relative;
  z-index: 1;
  font-size: var(--f7-list-font-size);
  margin: var(--f7-list-margin-vertical) 0;
}

.list-strong ul,
.ios .list-strong-ios ul,
.md .list-strong-md ul {
  background: var(--f7-list-strong-bg-color);
}

.list-outline ul:before,
.ios .list-outline-ios ul:before,
.md .list-outline-md ul:before {
  content: '';
  position: absolute;
  background-color: var(--f7-list-outline-border-color);
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.list-outline ul:after,
.ios .list-outline-ios ul:after,
.md .list-outline-md ul:after {
  content: '';
  position: absolute;
  background-color: var(--f7-list-outline-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.list-outline.inset,
.ios .list-outline-ios.inset,
.ios .list-outline-ios.inset-ios,
.md .list-outline-md.inset,
.md .list-outline-md.inset-md {
  border: 1px solid var(--f7-list-outline-inset-border-color);
}

.list ul {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

.list ul ul {
  padding-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-list-in-list-padding-left));
}

.list ul ul:before,
.list ul ul:after {
  display: none !important;
}

.list li {
  position: relative;
  box-sizing: border-box;
}

.list .item-media {
  display: flex;
  flex-shrink: 0;
  flex-wrap: nowrap;
  align-items: center;
  box-sizing: border-box;
  padding-bottom: var(--f7-list-item-padding-vertical);
  padding-top: var(--f7-list-item-padding-vertical);
  position: relative;
}

.list .item-media + .item-inner {
  margin-left: var(--f7-list-item-media-margin);
}

.list .item-media i + i,
.list .item-media i + img {
  margin-left: var(--f7-list-item-media-icons-margin);
}

.list .item-after {
  padding-left: var(--f7-list-item-after-padding);
}

.list .item-inner {
  position: relative;
  width: 100%;
  min-width: 0;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  align-items: center;
  align-self: stretch;
  padding-top: var(--f7-list-item-padding-vertical);
  padding-bottom: var(--f7-list-item-padding-vertical);
  min-height: calc(var(--f7-list-item-min-height));
  padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.list .item-title {
  min-width: 0;
  flex-shrink: 1;
  white-space: var(--f7-list-item-title-white-space);
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  font-size: var(--f7-list-item-title-font-size);
  font-weight: var(--f7-list-item-title-font-weight);
  color: var(--f7-list-item-title-text-color);
  line-height: var(--f7-list-item-title-line-height);
}

.list .item-after {
  white-space: nowrap;
  flex-shrink: 0;
  display: flex;
  font-size: var(--f7-list-item-after-font-size);
  font-weight: var(--f7-list-item-after-font-weight);
  color: var(--f7-list-item-after-text-color);
  line-height: var(--f7-list-item-after-line-height);
  margin-left: auto;
}

.list .item-header,
.list .item-footer {
  white-space: normal;
}

.list .item-header {
  color: var(--f7-list-item-header-text-color);
  font-size: var(--f7-list-item-header-font-size);
  font-weight: var(--f7-list-item-header-font-weight);
  line-height: var(--f7-list-item-header-line-height);
}

.list .item-footer {
  color: var(--f7-list-item-footer-text-color);
  font-size: var(--f7-list-item-footer-font-size);
  font-weight: var(--f7-list-item-footer-font-weight);
  line-height: var(--f7-list-item-footer-line-height);
}

.list .item-link,
.list label.item-content,
.list .list-button {
  transition-duration: 300ms;
  transition-property: background-color, color;
  position: relative;
  overflow: hidden;
  z-index: 0;
  cursor: pointer;
}

.list .item-link,
.list .list-button {
  display: block;
}

.list .item-link,
.list label.item-content {
  color: inherit;
}

.list .item-link.active-state:not(:has(.toggle-active-state)),
.list label.item-content.active-state:not(:has(.toggle-active-state)) {
  background-color: var(--f7-list-link-pressed-bg-color);
}

.list .item-link .item-inner {
  padding-right: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.list .item-content {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  align-items: center;
  min-height: calc(var(--f7-list-item-min-height));
  padding-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
}

.list .item-subtitle {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  max-width: 100%;
  text-overflow: ellipsis;
  font-size: var(--f7-list-item-subtitle-font-size);
  font-weight: var(--f7-list-item-subtitle-font-weight);
  color: var(--f7-list-item-subtitle-text-color);
  line-height: var(--f7-list-item-subtitle-line-height);
}

.list .item-text {
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  /* autoprefixer: ignore next */
  -webkit-line-clamp: var(--f7-list-item-text-max-lines);
  /* autoprefixer: ignore next */
  -webkit-box-orient: vertical;
  display: -webkit-box;
  font-size: var(--f7-list-item-text-font-size);
  font-weight: var(--f7-list-item-text-font-weight);
  color: var(--f7-list-item-text-text-color);
  line-height: var(--f7-list-item-text-line-height);
  max-height: calc(var(--f7-list-item-text-line-height) * var(--f7-list-item-text-max-lines));
}

.list .item-title-row {
  position: relative;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
}

.list .item-title-row .item-after {
  align-self: center;
}

.list li:last-child .list-button:after {
  display: none !important;
}

.list li:last-child > .item-inner:after,
.list li:last-child li:last-child > .item-inner:after,
.list li:last-child > .item-content > .item-inner:after,
.list li:last-child li:last-child > .item-content > .item-inner:after,
.list li:last-child > .swipeout-content > .item-content > .item-inner:after,
.list li:last-child li:last-child > .swipeout-content > .item-content > .item-inner:after,
.list li:last-child > .item-link > .item-content > .item-inner:after,
.list li:last-child li:last-child > .item-link > .item-content > .item-inner:after {
  display: none !important;
}

.list li li:last-child .item-inner:after,
.list li:last-child li .item-inner:after {
  content: '';
  position: absolute;
  background-color: var(--f7-list-item-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.list-button {
  --f7-touch-ripple-color: var(--f7-link-touch-ripple-color, rgba(var(--f7-theme-color-rgb), 0.25));
  padding: 0 var(--f7-list-item-padding-horizontal);
  line-height: var(--f7-list-item-min-height);
  color: var(--f7-list-button-text-color, var(--f7-theme-color));
  font-size: var(--f7-list-button-font-size);
  font-weight: var(--f7-list-button-font-weight);
  text-align: var(--f7-list-button-text-align);
}

.ios .list-button.active-state {
  background-color: var(--f7-list-button-pressed-bg-color, rgba(var(--f7-theme-color-rgb), 0.15));
}

.md .list-button.active-state {
  background-color: var(--f7-list-button-pressed-bg-color, transparent);
}

.list-dividers .list-button:after,
.ios .list-dividers-ios .list-button:after,
.md .list-dividers-md .list-button:after {
  content: '';
  position: absolute;
  background-color: var(--f7-list-button-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.list-button[class*='color-'] {
  --f7-list-button-text-color: var(--f7-theme-color);
}

.simple-list li {
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  line-height: var(--f7-list-item-min-height);
  height: var(--f7-list-item-min-height);
  padding-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.simple-list li:after {
  left: var(--f7-list-item-padding-horizontal);
  width: auto;
  left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
  right: 0;
}

.simple-list li:last-child:after {
  display: none !important;
}

.links-list li {
  z-index: 1;
}

.links-list a {
  transition-duration: 300ms;
  transition-property: background-color;
  display: block;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  box-sizing: border-box;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  height: var(--f7-list-item-min-height);
  color: inherit;
}

.links-list a .ripple-wave {
  z-index: 0;
}

.links-list a:after {
  width: auto;
}

.links-list a.active-state {
  background-color: var(--f7-list-link-pressed-bg-color);
}

.links-list a {
  padding-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.links-list a:after {
  left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
  right: 0;
}

.links-list li:last-child a:after {
  display: none !important;
}

.list-dividers.simple-list li:after,
.ios .list-dividers-ios.simple-list li:after,
.md .list-dividers-md.simple-list li:after,
.list-dividers.links-list a:after,
.ios .list-dividers-ios.links-list a:after,
.md .list-dividers-md.links-list a:after,
.list-dividers .item-inner:after,
.ios .list-dividers-ios .item-inner:after,
.md .list-dividers-md .item-inner:after {
  content: '';
  position: absolute;
  background-color: var(--f7-list-item-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.md .media-list:not(.inset):not(.inset-md):not(.menu-list) .item-content,
.md .media-list:not(.inset):not(.inset-md):not(.menu-list) li > .item-link,
.md .list:not(.inset):not(.inset-md):not(.menu-list) .media-item .item-content,
.md .list:not(.inset):not(.inset-md):not(.menu-list) .media-item > .item-link {
  margin-left: calc(var(--f7-list-item-padding-horizontal) / 2);
  margin-right: calc(var(--f7-list-item-padding-horizontal) / 2);
  border-radius: 16px;
}

.md .media-list:not(.inset):not(.inset-md):not(.menu-list) li > .item-link > .item-content,
.md .list:not(.inset):not(.inset-md):not(.menu-list) .media-item > .item-link > .item-content {
  margin-left: 0;
  margin-right: 0;
}

.md .media-list:not(.inset):not(.inset-md):not(.menu-list) .item-content,
.md .list:not(.inset):not(.inset-md):not(.menu-list) .media-item .item-content {
  padding-left: calc(var(--f7-list-item-padding-horizontal) / 2 + var(--f7-safe-area-left));
}

.media-list,
li.media-item {
  --f7-list-item-padding-vertical: var(--f7-list-media-item-padding-vertical);
  --f7-list-item-padding-horizontal: var(--f7-list-media-item-padding-horizontal);
}

.media-list .item-title,
li.media-item .item-title {
  font-weight: var(--f7-list-media-item-title-font-weight, var(--f7-list-item-title-font-weight, inherit));
}

.media-list .item-inner,
li.media-item .item-inner {
  display: block;
  align-self: stretch;
}

.media-list .item-media img,
li.media-item .item-media img {
  display: block;
}

.media-list .item-link .item-inner,
li.media-item .item-link .item-inner {
  padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.media-list .item-link .item-title-row,
li.media-item .item-link .item-title-row {
  padding-right: calc(var(--f7-list-chevron-icon-area));
}

.media-list.chevron-center .item-link .item-inner,
.media-list .chevron-center .item-link .item-inner,
.media-list .item-link.chevron-center .item-inner,
li.media-item.chevron-center .item-link .item-inner,
li.media-item .item-link.chevron-center .item-inner,
li.media-item .chevron-center .item-link .item-inner {
  padding-right: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.media-list.chevron-center .item-title-row,
.media-list .chevron-center .item-title-row,
li.media-item.chevron-center .item-title-row,
li.media-item .chevron-center .item-title-row {
  padding-right: 0;
}

.list .item-link .item-inner:before,
.links-list a:before,
.media-list .item-link .item-title-row:before,
li.media-item .item-link .item-title-row:before,
.media-list.chevron-center .item-link .item-inner:before,
.media-list .chevron-center .item-link .item-inner:before,
.media-list .item-link.chevron-center .item-inner:before,
li.media-item.chevron-center .item-link .item-inner:before,
li.media-item .chevron-center .item-link .item-inner:before,
li.media-item .item-link.chevron-center .item-inner:before {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  position: absolute;
  top: 50%;
  width: 8px;
  height: 14px;
  margin-top: -7px;
  font-size: var(--f7-list-chevron-icon-font-size);
  line-height: 14px;
  color: var(--f7-list-chevron-icon-color);
  pointer-events: none;
  right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
  content: var(--f7-list-chevron-icon-right);
}

.media-list.chevron-center .item-title-row:before,
.media-list .chevron-center .item-title-row:before,
li.media-item.chevron-center .item-title-row:before,
li.media-item .chevron-center .item-title-row:before {
  display: none;
}

.media-list .item-link .item-inner:before,
li.media-item .item-link .item-inner:before {
  display: none;
}

.media-list .item-link .item-title-row:before,
li.media-item .item-link .item-title-row:before {
  right: 0;
}

.list-group ul:after,
.list-group ul:before {
  z-index: 25 !important;
}

.list-group + .list-group ul:before {
  display: none !important;
}

li.list-group-title,
.list-group-title {
  margin-top: -1px;
  white-space: nowrap;
  position: relative;
  max-width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  z-index: 15;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
  box-sizing: border-box;
  display: flex;
  align-items: center;
  align-content: center;
  height: var(--f7-list-group-title-height);
  color: var(--f7-list-group-title-text-color);
  font-size: var(--f7-list-group-title-font-size);
  font-weight: var(--f7-list-group-title-font-weight);
  background-color: var(--f7-list-group-title-bg-color);
  line-height: var(--f7-list-group-title-line-height);
}

li.list-group-title:before,
.list-group-title:before {
  content: '';
  position: absolute;
  background-color: var(--f7-list-group-title-border-color);
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

li.list-group-title:after,
.list-group-title:after {
  display: none !important;
}

.list-group > .list-group-title,
.list-group > ul > .list-group-title {
  top: 0;
  margin-top: 0;
  position: sticky;
  z-index: 20;
}

.page-with-navbar-large .list-group > .list-group-title,
.page-with-navbar-large .list-group > ul > .list-group-title {
  top: calc(-1 * var(--f7-navbar-large-title-height));
}

.list.inset,
.ios .list.inset-ios,
.md .list.inset-md {
  margin-left: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-left));
  margin-right: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-right));
  border-radius: var(--f7-list-inset-border-radius);
  --f7-safe-area-left: 0px;
  --f7-safe-area-right: 0px;
}

.list.inset .block-title,
.ios .list.inset-ios .block-title,
.md .list.inset-md .block-title {
  margin-left: 0;
  margin-right: 0;
}

.list.inset ul,
.ios .list.inset-ios ul,
.md .list.inset-md ul {
  border-radius: var(--f7-list-inset-border-radius);
}

.list.inset ul:before,
.ios .list.inset-ios ul:before,
.md .list.inset-md ul:before,
.list.inset ul:after,
.ios .list.inset-ios ul:after,
.md .list.inset-md ul:after {
  display: none !important;
}

.list.inset li.swipeout:first-child,
.ios .list.inset-ios li.swipeout:first-child,
.md .list.inset-md li.swipeout:first-child,
.list.inset li:first-child > a,
.ios .list.inset-ios li:first-child > a,
.md .list.inset-md li:first-child > a {
  border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0;
}

.list.inset li.swipeout:last-child,
.ios .list.inset-ios li.swipeout:last-child,
.md .list.inset-md li.swipeout:last-child,
.list.inset li:last-child > a,
.ios .list.inset-ios li:last-child > a,
.md .list.inset-md li:last-child > a {
  border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius);
}

.list.inset li.swipeout:first-child:last-child,
.ios .list.inset-ios li.swipeout:first-child:last-child,
.md .list.inset-md li.swipeout:first-child:last-child,
.list.inset li:first-child:last-child > a,
.ios .list.inset-ios li:first-child:last-child > a,
.md .list.inset-md li:first-child:last-child > a {
  border-radius: var(--f7-list-inset-border-radius);
}

@media (min-width: 640px) {
  .list.sm-inset,
  .ios .list.sm-inset-ios,
  .md .list.sm-inset-md {
    margin-left: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-right));
    border-radius: var(--f7-list-inset-border-radius);
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .list.sm-inset .block-title,
  .ios .list.sm-inset-ios .block-title,
  .md .list.sm-inset-md .block-title {
    margin-left: 0;
    margin-right: 0;
  }

  .list.sm-inset ul,
  .ios .list.sm-inset-ios ul,
  .md .list.sm-inset-md ul {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.sm-inset ul:before,
  .ios .list.sm-inset-ios ul:before,
  .md .list.sm-inset-md ul:before,
  .list.sm-inset ul:after,
  .ios .list.sm-inset-ios ul:after,
  .md .list.sm-inset-md ul:after {
    display: none !important;
  }

  .list.sm-inset li:first-child > a,
  .ios .list.sm-inset-ios li:first-child > a,
  .md .list.sm-inset-md li:first-child > a {
    border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0;
  }

  .list.sm-inset li:last-child > a,
  .ios .list.sm-inset-ios li:last-child > a,
  .md .list.sm-inset-md li:last-child > a {
    border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius);
  }

  .list.sm-inset li:first-child:last-child > a,
  .ios .list.sm-inset-ios li:first-child:last-child > a,
  .md .list.sm-inset-md li:first-child:last-child > a {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.sm-inset.list-outline ul,
  .ios .list.sm-inset-ios.list-outline ul,
  .ios .list.sm-inset-ios.list-outline-ios ul,
  .md .list.sm-inset-md.list-outline ul,
  .md .list.sm-inset-md.list-outline-md ul {
    border: 1px solid var(--f7-list-outline-inset-border-color);
  }
}

@media (min-width: 768px) {
  .list.md-inset,
  .ios .list.md-inset-ios,
  .md .list.md-inset-md {
    margin-left: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-right));
    border-radius: var(--f7-list-inset-border-radius);
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .list.md-inset .block-title,
  .ios .list.md-inset-ios .block-title,
  .md .list.md-inset-md .block-title {
    margin-left: 0;
    margin-right: 0;
  }

  .list.md-inset ul,
  .ios .list.md-inset-ios ul,
  .md .list.md-inset-md ul {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.md-inset ul:before,
  .ios .list.md-inset-ios ul:before,
  .md .list.md-inset-md ul:before,
  .list.md-inset ul:after,
  .ios .list.md-inset-ios ul:after,
  .md .list.md-inset-md ul:after {
    display: none !important;
  }

  .list.md-inset li:first-child > a,
  .ios .list.md-inset-ios li:first-child > a,
  .md .list.md-inset-md li:first-child > a {
    border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0;
  }

  .list.md-inset li:last-child > a,
  .ios .list.md-inset-ios li:last-child > a,
  .md .list.md-inset-md li:last-child > a {
    border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius);
  }

  .list.md-inset li:first-child:last-child > a,
  .ios .list.md-inset-ios li:first-child:last-child > a,
  .md .list.md-inset-md li:first-child:last-child > a {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.md-inset.list-outline ul,
  .ios .list.md-inset-ios.list-outline ul,
  .ios .list.md-inset-ios.list-outline-ios ul,
  .md .list.md-inset-md.list-outline ul,
  .md .list.md-inset-md.list-outline-md ul {
    border: 1px solid var(--f7-list-outline-inset-border-color);
  }
}

@media (min-width: 1024px) {
  .list.lg-inset,
  .ios .list.lg-inset-ios,
  .md .list.lg-inset-md {
    margin-left: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-right));
    border-radius: var(--f7-list-inset-border-radius);
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .list.lg-inset .block-title,
  .ios .list.lg-inset-ios .block-title,
  .md .list.lg-inset-md .block-title {
    margin-left: 0;
    margin-right: 0;
  }

  .list.lg-inset ul,
  .ios .list.lg-inset-ios ul,
  .md .list.lg-inset-md ul {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.lg-inset ul:before,
  .ios .list.lg-inset-ios ul:before,
  .md .list.lg-inset-md ul:before,
  .list.lg-inset ul:after,
  .ios .list.lg-inset-ios ul:after,
  .md .list.lg-inset-md ul:after {
    display: none !important;
  }

  .list.lg-inset li:first-child > a,
  .ios .list.lg-inset-ios li:first-child > a,
  .md .list.lg-inset-md li:first-child > a {
    border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0;
  }

  .list.lg-inset li:last-child > a,
  .ios .list.lg-inset-ios li:last-child > a,
  .md .list.lg-inset-md li:last-child > a {
    border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius);
  }

  .list.lg-inset li:first-child:last-child > a,
  .ios .list.lg-inset-ios li:first-child:last-child > a,
  .md .list.lg-inset-md li:first-child:last-child > a {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.lg-inset.list-outline ul,
  .ios .list.lg-inset-ios.list-outline ul,
  .ios .list.lg-inset-ios.list-outline-ios ul,
  .md .list.lg-inset-md.list-outline ul,
  .md .list.lg-inset-md.list-outline-md ul {
    border: 1px solid var(--f7-list-outline-inset-border-color);
  }
}

@media (min-width: 1280px) {
  .list.xl-inset,
  .ios .list.xl-inset-ios,
  .md .list.xl-inset-md {
    margin-left: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-right));
    border-radius: var(--f7-list-inset-border-radius);
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .list.xl-inset .block-title,
  .ios .list.xl-inset-ios .block-title,
  .md .list.xl-inset-md .block-title {
    margin-left: 0;
    margin-right: 0;
  }

  .list.xl-inset ul,
  .ios .list.xl-inset-ios ul,
  .md .list.xl-inset-md ul {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.xl-inset ul:before,
  .ios .list.xl-inset-ios ul:before,
  .md .list.xl-inset-md ul:before,
  .list.xl-inset ul:after,
  .ios .list.xl-inset-ios ul:after,
  .md .list.xl-inset-md ul:after {
    display: none !important;
  }

  .list.xl-inset li:first-child > a,
  .ios .list.xl-inset-ios li:first-child > a,
  .md .list.xl-inset-md li:first-child > a {
    border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0;
  }

  .list.xl-inset li:last-child > a,
  .ios .list.xl-inset-ios li:last-child > a,
  .md .list.xl-inset-md li:last-child > a {
    border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius);
  }

  .list.xl-inset li:first-child:last-child > a,
  .ios .list.xl-inset-ios li:first-child:last-child > a,
  .md .list.xl-inset-md li:first-child:last-child > a {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.xl-inset.list-outline ul,
  .ios .list.xl-inset-ios.list-outline ul,
  .ios .list.xl-inset-ios.list-outline-ios ul,
  .md .list.xl-inset-md.list-outline ul,
  .md .list.xl-inset-md.list-outline-md ul {
    border: 1px solid var(--f7-list-outline-inset-border-color);
  }
}

@media (min-width: 1536px) {
  .list.2xl-inset,
  .ios .list.2xl-inset-ios,
  .md .list.2xl-inset-md {
    margin-left: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-left));
    margin-right: calc(var(--f7-list-inset-side-margin) + var(--f7-safe-area-outer-right));
    border-radius: var(--f7-list-inset-border-radius);
    --f7-safe-area-left: 0px;
    --f7-safe-area-right: 0px;
  }

  .list.2xl-inset .block-title,
  .ios .list.2xl-inset-ios .block-title,
  .md .list.2xl-inset-md .block-title {
    margin-left: 0;
    margin-right: 0;
  }

  .list.2xl-inset ul,
  .ios .list.2xl-inset-ios ul,
  .md .list.2xl-inset-md ul {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.2xl-inset ul:before,
  .ios .list.2xl-inset-ios ul:before,
  .md .list.2xl-inset-md ul:before,
  .list.2xl-inset ul:after,
  .ios .list.2xl-inset-ios ul:after,
  .md .list.2xl-inset-md ul:after {
    display: none !important;
  }

  .list.2xl-inset li:first-child > a,
  .ios .list.2xl-inset-ios li:first-child > a,
  .md .list.2xl-inset-md li:first-child > a {
    border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0;
  }

  .list.2xl-inset li:last-child > a,
  .ios .list.2xl-inset-ios li:last-child > a,
  .md .list.2xl-inset-md li:last-child > a {
    border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius);
  }

  .list.2xl-inset li:first-child:last-child > a,
  .ios .list.2xl-inset-ios li:first-child:last-child > a,
  .md .list.2xl-inset-md li:first-child:last-child > a {
    border-radius: var(--f7-list-inset-border-radius);
  }

  .list.2xl-inset.list-outline ul,
  .ios .list.2xl-inset-ios.list-outline ul,
  .ios .list.2xl-inset-ios.list-outline-ios ul,
  .md .list.2xl-inset-md.list-outline ul,
  .md .list.2xl-inset-md.list-outline-md ul {
    border: 1px solid var(--f7-list-outline-inset-border-color);
  }
}

.list.no-chevron,
.list .no-chevron,
.menu-list {
  --f7-list-chevron-icon-color: transparent;
  --f7-list-chevron-icon-area: 0px;
}

.menu-list {
  --f7-list-font-size: var(--f7-menu-list-font-size);
  --f7-list-item-title-font-size: var(--f7-menu-list-item-title-font-size);
  --f7-list-item-title-font-weight: var(--f7-menu-list-item-title-font-weight);
  --f7-list-item-subtitle-font-size: var(--f7-menu-list-item-subtitle-font-size);
  --f7-list-item-text-font-size: var(--f7-menu-list-item-text-font-size);
  --f7-list-item-after-font-size: var(--f7-menu-list-item-after-font-size);
  --f7-list-item-min-height: var(--f7-menu-list-item-min-height);
}

.menu-list .item-header,
.menu-list .item-footer,
.menu-list .item-title,
.menu-list .item-after,
.menu-list .item-text,
.menu-list .item-subtitle {
  transition-duration: 300ms;
}

.menu-list li:not(.list-group-title) {
  padding-top: 4px;
  padding-bottom: 4px;
}

.menu-list li:not(.list-group-title):first-child {
  padding-top: 4px;
}

.menu-list li:not(.list-group-title):last-child {
  padding-bottom: 4px;
}

.menu-list .item-link {
  margin-left: var(--f7-menu-list-offset);
  margin-right: var(--f7-menu-list-offset);
  border-radius: var(--f7-menu-list-border-radius) !important;
  color: var(--f7-menu-list-item-text-color);
  background-color: var(--f7-menu-list-item-bg-color);
}

.menu-list .item-inner:after {
  display: none;
}

.menu-list .item-selected .item-link,
.menu-list .item-selected.item-link,
.menu-list .tab-link-active .item-link,
.menu-list .tab-link-active.item-link {
  color: var(--f7-menu-list-item-selected-text-color);
  background-color: var(--f7-menu-list-item-selected-bg-color);
}

.menu-list .item-selected .item-header,
.menu-list .item-selected .item-footer,
.menu-list .item-selected .item-title,
.menu-list .item-selected .item-after,
.menu-list .item-selected .item-text,
.menu-list .item-selected .item-subtitle {
  color: var(--f7-menu-list-item-selected-text-color);
}

.ios .item-link.active-state .item-inner:after,
.ios .list-button.active-state:after,
.ios .links-list a.active-state:after {
  background-color: transparent;
}

.ios .links-list a.active-state,
.ios .list .item-link.active-state,
.ios .list .list-button.active-state {
  transition-duration: 0ms;
}

.md .menu-list .item-link.active-state {
  background-color: var(--f7-menu-list-item-bg-color);
}

/* === Badge === */

:root {
  --f7-badge-text-color: #fff;
  --f7-badge-bg-color: #8e8e93;
  --f7-badge-in-icon-size: 16px;
  --f7-badge-in-icon-font-size: 10px;
  --f7-badge-font-weight: normal;
  --f7-badge-font-size: 12px;
}

.ios {
  --f7-badge-padding: 0 4px;
  --f7-badge-size: 20px;
  --f7-badge-font-weight: 600;
}

.md {
  --f7-badge-padding: 2px 6px;
  --f7-badge-size: 20px;
  --f7-badge-font-weight: 500;
}

.badge {
  display: inline-flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  color: var(--f7-badge-text-color);
  background: var(--f7-badge-bg-color);
  position: relative;
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
  font-weight: var(--f7-badge-font-weight);
  font-size: var(--f7-badge-font-size);
  border-radius: var(--f7-badge-size);
  padding: var(--f7-badge-padding);
  height: var(--f7-badge-size);
  min-width: var(--f7-badge-size);
}

.icon .badge,
.f7-icons .badge,
.framework7-icons .badge,
.material-icons .badge {
  position: absolute;
  left: 100%;
  margin-left: -10px;
  top: -2px;
  font-family: var(--f7-font-family);
  --f7-badge-font-size: var(--f7-badge-in-icon-font-size);
  --f7-badge-size: var(--f7-badge-in-icon-size);
  --f7-badge-padding: 0px 2px;
}

.badge[class*='color-'] {
  --f7-badge-bg-color: var(--f7-theme-color);
}

:root {
  --f7-button-min-width: 32px;
  --f7-button-bg-color: transparent;
  --f7-button-border-width: 0px;
  /*
  --f7-button-text-color: var(--f7-theme-color);
  --f7-button-pressed-text-color: var(--f7-button-text-color, var(--f7-theme-color));
  --f7-button-border-color: var(--f7-theme-color);
  --f7-button-fill-bg-color: var(--f7-theme-color);
  --f7-button-padding-vertical: 0px;
  */
  --f7-button-raised-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
  --f7-button-raised-pressed-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
  --f7-segmented-raised-divider-color: rgba(0, 0, 0, 0.1);
  --f7-segmented-strong-padding: 2px;
  --f7-segmented-strong-between-buttons: 4px;
  --f7-segmented-strong-button-font-weight: 500;
  --f7-segmented-strong-button-active-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
  --f7-segmented-strong-button-text-color: #000;
  --f7-segmented-strong-button-hover-bg-color: rgba(0, 0, 0, 0.04);
  --f7-segmented-strong-button-active-text-color: #000;
  --f7-segmented-strong-button-active-bg-color: #fff;
}

:root .dark,
:root.dark {
  --f7-segmented-strong-button-hover-bg-color: rgba(255, 255, 255, 0.02);
  --f7-segmented-strong-button-active-bg-color: rgba(255, 255, 255, 0.14);
  --f7-segmented-strong-button-text-color: #fff;
  --f7-segmented-strong-button-active-text-color: #fff;
}

.ios {
  --f7-button-font-size: 15px;
  --f7-button-fill-text-color: #fff;
  --f7-button-text-transform: none;
  --f7-button-height: 34px;
  --f7-button-padding-horizontal: 10px;
  --f7-button-border-radius: 4px;
  --f7-button-font-weight: 500;
  --f7-button-letter-spacing: 0;
  /*
  --f7-button-outline-border-color: var(--f7-theme-color);
  */
  --f7-button-outline-border-width: 2px;
  /*
  --f7-button-pressed-bg-color: rgba(var(--f7-theme-color-rgb), .15);
  --f7-button-fill-pressed-bg-color: var(--f7-theme-color-tint);
  */
  --f7-button-large-text-transform: none;
  --f7-button-large-height: 48px;
  --f7-button-large-font-size: 17px;
  --f7-button-large-font-weight: 500;
  --f7-button-small-outline-border-width: 2px;
  --f7-button-small-text-transform: none;
  --f7-button-small-height: 28px;
  --f7-button-small-font-size: 14px;
  --f7-button-small-font-weight: 500;
  --f7-segmented-strong-button-text-transform: none;
  --f7-segmented-strong-button-active-font-weight: 600;
  --f7-button-tonal-bg-color: rgba(var(--f7-theme-color-rgb), 0.15);
  --f7-button-tonal-pressed-bg-color: rgba(var(--f7-theme-color-rgb), 0.25);
  --f7-button-tonal-text-color: var(--f7-theme-color);
  --f7-segmented-strong-bg-color: rgba(0, 0, 0, 0.07);
  --f7-segmented-strong-button-pressed-bg-color: rgba(0, 0, 0, 0.07);
}

.ios .dark,
.ios.dark {
  --f7-segmented-strong-bg-color: rgba(255, 255, 255, 0.1);
  --f7-segmented-strong-button-pressed-bg-color: rgba(255, 255, 255, 0.04);
}

.md {
  --f7-button-font-size: 14px;
  /*
  --f7-button-pressed-bg-color: transparent;
  */
  --f7-button-text-transform: none;
  --f7-button-height: 40px;
  --f7-button-padding-horizontal: 16px;
  --f7-button-border-radius: 8px;
  --f7-button-font-weight: 500;
  --f7-button-letter-spacing: normal;
  --f7-button-outline-border-width: 1px;
  --f7-button-large-text-transform: none;
  --f7-button-large-height: 48px;
  --f7-button-large-font-size: 14px;
  --f7-button-large-font-weight: 500;
  --f7-button-small-text-transform: none;
  --f7-button-small-outline-border-width: 1px;
  --f7-button-small-height: 32px;
  --f7-button-small-font-size: 14px;
  --f7-button-small-font-weight: 500;
  --f7-segmented-strong-button-text-transform: none;
  --f7-segmented-strong-button-active-font-weight: 500;
  --f7-segmented-strong-button-pressed-bg-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-button-fill-pressed-bg-color: transparent;
  --f7-button-fill-text-color: var(--f7-md-on-primary);
  --f7-button-outline-border-color: var(--f7-md-outline);
  --f7-segmented-strong-bg-color: var(--f7-md-surface-variant);
  --f7-button-tonal-bg-color: var(--f7-md-secondary-container);
  --f7-button-tonal-pressed-bg-color: transparent;
  --f7-button-tonal-text-color: var(--f7-md-on-secondary-container);
}

button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
}

.button {
  --f7-touch-ripple-color: rgba(var(--f7-theme-color-rgb), 0.25);
  text-decoration: none;
  text-align: center;
  display: flex;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  margin: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  position: relative;
  overflow: hidden;
  font-family: inherit;
  cursor: pointer;
  outline: 0;
  box-sizing: border-box;
  vertical-align: middle;
  justify-content: center;
  align-items: center;
  border: var(--f7-button-border-width, 0px) solid var(--f7-button-border-color, var(--f7-theme-color));
  font-size: var(--f7-button-font-size);
  color: var(--f7-button-text-color, var(--f7-theme-color));
  height: var(--f7-button-height);
  line-height: calc(var(--f7-button-height) - var(--f7-button-border-width, 0) * 2);
  padding: var(--f7-button-padding-vertical, 0px) var(--f7-button-padding-horizontal);
  border-radius: var(--f7-button-border-radius);
  min-width: var(--f7-button-min-width);
  font-weight: var(--f7-button-font-weight);
  letter-spacing: var(--f7-button-letter-spacing);
  text-transform: var(--f7-button-text-transform);
  background-color: var(--f7-button-bg-color);
  box-shadow: var(--f7-button-box-shadow);
}

.button.active-state {
  color: var(--f7-button-pressed-text-color, var(--f7-button-text-color, var(--f7-theme-color)));
}

input[type='submit'].button,
input[type='button'].button,
input[type='reset'].button {
  width: 100%;
}

.button > i + span,
.button > span + span,
.button > span ~ i {
  margin-left: 4px;
}

.subnavbar .button,
.navbar .button,
.toolbar .button,
.searchbar .button {
  color: var(--f7-button-text-color, var(--f7-theme-color));
}

.button-round,
.ios .button-round-ios,
.md .button-round-md {
  --f7-button-border-radius: var(--f7-button-height);
}

.button-fill,
.ios .button-fill-ios,
.md .button-fill-md,
.button-active,
.button.tab-link-active {
  --f7-button-bg-color: var(--f7-button-fill-bg-color, var(--f7-theme-color));
  --f7-button-text-color: var(--f7-button-fill-text-color, #fff);
  --f7-touch-ripple-color: var(--f7-touch-ripple-white);
}

.ios .color-white .button-fill,
.ios .color-white .ios .button-fill-ios,
.ios .color-white .md .button-fill-md,
.ios .color-white .button-active,
.ios .color-white .button.tab-link-active,
.ios .button-fill.color-white,
.ios .ios .button-fill-ios.color-white,
.ios .md .button-fill-md.color-white,
.ios .button-active.color-white,
.ios .button.tab-link-active.color-white {
  --f7-button-text-color: #000;
}

.button-fill,
.ios .button-fill-ios,
.md .button-fill-md {
  --f7-button-pressed-bg-color: var(--f7-button-fill-pressed-bg-color);
}

.button-active,
.button.tab-link-active {
  --f7-button-pressed-bg-color: var(--f7-button-bg-color);
}

.button-outline,
.ios .button-outline-ios,
.md .button-outline-md {
  --f7-button-border-color: var(--f7-button-outline-border-color, var(--f7-theme-color));
  --f7-button-border-width: var(--f7-button-outline-border-width);
}

.button-tonal,
.ios .button-tonal-ios,
.md .button-tonal-md {
  --f7-button-bg-color: var(--f7-button-tonal-bg-color);
  --f7-button-text-color: var(--f7-button-tonal-text-color);
  --f7-button-pressed-bg-color: var(--f7-button-tonal-pressed-bg-color);
}

.button-large,
.ios .button-large-ios,
.md .button-large-md {
  --f7-button-height: var(--f7-button-large-height);
  --f7-button-font-size: var(--f7-button-large-font-size);
  --f7-button-font-weight: var(--f7-button-large-font-weight);
  --f7-button-text-transform: var(--f7-button-large-text-transform);
}

.button-small,
.ios .button-small-ios,
.md .button-small-md {
  --f7-button-outline-border-width: var(--f7-button-small-outline-border-width);
  --f7-button-height: var(--f7-button-small-height);
  --f7-button-font-size: var(--f7-button-small-font-size);
  --f7-button-font-weight: var(--f7-button-small-font-weight);
  --f7-button-text-transform: var(--f7-button-small-text-transform);
}

.ios .button-small.button-fill,
.ios .button-small-ios.button-fill,
.ios .button-small.button-fill-ios {
  --f7-button-border-width: var(--f7-button-small-outline-border-width);
  --f7-button-pressed-text-color: var(--f7-theme-color);
  --f7-button-pressed-bg-color: transparent;
}

.segmented {
  align-self: center;
  display: flex;
  flex-wrap: nowrap;
  border-radius: var(--f7-button-border-radius);
  box-shadow: var(--f7-button-box-shadow);
  box-sizing: border-box;
}

.segmented .button,
.segmented button {
  width: 100%;
  flex-shrink: 1;
  min-width: 0;
  border-radius: 0;
}

.segmented .button:first-child {
  border-radius: var(--f7-button-border-radius) 0 0 var(--f7-button-border-radius);
}

.segmented .button:not(.button-outline):first-child {
  border-left: none;
}

.segmented .button.button-outline:nth-child(n + 2) {
  border-left: none;
}

.segmented .button:last-child {
  border-radius: 0 var(--f7-button-border-radius) var(--f7-button-border-radius) 0;
}

.segmented .button-round:first-child {
  border-radius: var(--f7-button-height) 0 0 var(--f7-button-height);
}

.segmented .button-round:last-child {
  border-radius: 0 var(--f7-button-height) var(--f7-button-height) 0;
}

.segmented .button:first-child:last-child {
  border-radius: var(--f7-button-border-radius);
}

.segmented-raised,
.ios .segmented-raised-ios,
.md .segmented-raised-md {
  box-shadow: var(--f7-button-raised-box-shadow);
}

.segmented-raised .button:not(.button-outline),
.ios .segmented-raised-ios .button:not(.button-outline),
.md .segmented-raised-md .button:not(.button-outline) {
  border-left: 1px solid var(--f7-segmented-raised-divider-color);
}

.button-raised,
.ios .button-raised-ios,
.md .button-raised-md {
  --f7-button-box-shadow: var(--f7-button-raised-box-shadow);
}

.button-raised.active-state,
.ios .button-raised-ios.active-state,
.md .button-raised-md.active-state {
  --f7-button-box-shadow: var(--f7-button-raised-pressed-box-shadow);
}

.segmented-strong,
.ios .segmented-strong-ios,
.md .segmented-strong-md {
  --f7-button-bg-color: transparent;
  --f7-button-hover-bg-color: var(--f7-segmented-strong-button-hover-bg-color);
  --f7-button-text-color: var(--f7-segmented-strong-button-text-color);
  --f7-button-font-weight: var(--f7-segmented-strong-button-font-weight);
  --f7-button-text-transform: var(--f7-segmented-strong-button-text-transform);
  --f7-button-pressed-bg-color: var(--f7-segmented-strong-button-pressed-bg-color);
  position: relative;
  background: var(--f7-segmented-strong-bg-color);
  border-radius: calc(var(--f7-button-border-radius) + 2px);
  box-shadow: none;
  padding: var(--f7-segmented-strong-padding);
  overflow: hidden;
}

.segmented-strong .button,
.ios .segmented-strong-ios .button,
.md .segmented-strong-md .button {
  z-index: 1;
  transform: translate3d(0, 0, 0);
}

.segmented-strong .button,
.ios .segmented-strong-ios .button,
.md .segmented-strong-md .button,
.segmented-strong .button:first-child,
.ios .segmented-strong-ios .button:first-child,
.md .segmented-strong-md .button:first-child,
.segmented-strong .button:last-child,
.ios .segmented-strong-ios .button:last-child,
.md .segmented-strong-md .button:last-child {
  border-radius: var(--f7-button-border-radius);
}

.segmented-strong .button + .button,
.ios .segmented-strong-ios .button + .button,
.md .segmented-strong-md .button + .button {
  margin-left: var(--f7-segmented-strong-between-buttons);
}

.segmented-strong .button.button-active,
.ios .segmented-strong-ios .button.button-active,
.md .segmented-strong-md .button.button-active,
.segmented-strong .button.tab-link-active,
.ios .segmented-strong-ios .button.tab-link-active,
.md .segmented-strong-md .button.tab-link-active {
  --f7-button-hover-bg-color: transparent;
  --f7-button-bg-color: transparent;
  --f7-button-text-color: var(--f7-segmented-strong-button-active-text-color);
  --f7-button-font-weight: var(--f7-segmented-strong-button-active-font-weight);
}

.segmented-strong .segmented-highlight,
.ios .segmented-strong-ios .segmented-highlight,
.md .segmented-strong-md .segmented-highlight {
  --f7-segmented-highlight-num: 1;
  --f7-segmented-highlight-active: 0;
  --f7-segmented-highlight-padding: calc(var(--f7-segmented-strong-padding) * 2);
  --f7-segmented-highlight-between: var(--f7-segmented-strong-between-buttons);
  --f7-segmented-highlight-width: calc((100% - var(--f7-segmented-highlight-padding) - var(--f7-segmented-highlight-between) * (var(--f7-segmented-highlight-num) - 1)) / var(--f7-segmented-highlight-num));
  position: absolute;
  background-color: var(--f7-segmented-strong-button-active-bg-color);
  border-radius: var(--f7-button-border-radius);
  box-shadow: var(--f7-segmented-strong-button-active-box-shadow);
  left: var(--f7-segmented-strong-padding);
  top: var(--f7-segmented-strong-padding);
  height: calc(100% - var(--f7-segmented-strong-padding) * 2);
  width: var(--f7-segmented-highlight-width);
  z-index: 0;
  transform: translateX(calc(var(--f7-segmented-highlight-active) * 100% + var(--f7-segmented-highlight-active) * var(--f7-segmented-highlight-between)));
  transition: 200ms;
}

.button:nth-child(2) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 2;
}

.button:nth-child(3) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 3;
}

.button:nth-child(4) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 4;
}

.button:nth-child(5) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 5;
}

.button:nth-child(6) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 6;
}

.button:nth-child(7) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 7;
}

.button:nth-child(8) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 8;
}

.button:nth-child(9) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 9;
}

.button:nth-child(10) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 10;
}

.button-active:nth-child(2) ~ .segmented-highlight,
.tab-link-active:nth-child(2) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 1;
}

.button-active:nth-child(3) ~ .segmented-highlight,
.tab-link-active:nth-child(3) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 2;
}

.button-active:nth-child(4) ~ .segmented-highlight,
.tab-link-active:nth-child(4) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 3;
}

.button-active:nth-child(5) ~ .segmented-highlight,
.tab-link-active:nth-child(5) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 4;
}

.button-active:nth-child(6) ~ .segmented-highlight,
.tab-link-active:nth-child(6) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 5;
}

.button-active:nth-child(7) ~ .segmented-highlight,
.tab-link-active:nth-child(7) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 6;
}

.button-active:nth-child(8) ~ .segmented-highlight,
.tab-link-active:nth-child(8) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 7;
}

.button-active:nth-child(9) ~ .segmented-highlight,
.tab-link-active:nth-child(9) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 8;
}

.button-active:nth-child(10) ~ .segmented-highlight,
.tab-link-active:nth-child(10) ~ .segmented-highlight {
  --f7-segmented-highlight-active: 9;
}

.segmented-round,
.ios .segmented-round-ios,
.md .segmented-round-md {
  border-radius: var(--f7-button-height);
}

.segmented-round .segmented-highlight,
.ios .segmented-round-ios .segmented-highlight,
.md .segmented-round-md .segmented-highlight {
  border-radius: var(--f7-button-height);
}

.subnavbar .segmented {
  width: 100%;
}

.button-preloader {
  position: relative;
  --f7-preloader-color: var(--f7-button-text-color, var(--f7-theme-color));
}

.button-preloader:not(.button-large) {
  --f7-preloader-size: calc(var(--f7-button-height) - 6px);
}

.button-preloader.button-fill {
  --f7-preloader-color: #fff;
}

.button-preloader > span:not(.preloader) {
  transition: 0.2s;
  display: inline-flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  transform: scale(1);
}

.button-preloader > .preloader {
  position: absolute;
  left: 50%;
  top: 50%;
  transition: 0.2s;
  transition-property: opacity;
  opacity: 0;
  visibility: hidden;
  margin-left: calc(-1 * var(--f7-preloader-size) / 2);
  margin-top: calc(-1 * var(--f7-preloader-size) / 2);
}

.button-preloader.button-loading > span:not(.preloader) {
  opacity: 0;
  transform: scale(0);
}

.button-preloader.button-loading > .preloader {
  opacity: 1;
  visibility: visible;
}

.ios .button {
  transition-duration: 100ms;
}

.ios .button.active-state {
  background-color: var(--f7-button-pressed-bg-color, rgba(var(--f7-theme-color-rgb), 0.15));
}

.ios .button-fill,
.ios .button-fill-ios {
  --f7-button-pressed-bg-color: var(--f7-button-fill-pressed-bg-color, var(--f7-theme-color-tint));
}

.ios .button-small,
.ios .button-small-ios {
  transition-duration: 200ms;
}

.md .button {
  transition-duration: 300ms;
  transform: translate3d(0, 0, 0);
}

.md .button-fill,
.md .button-fill-md {
  --f7-button-pressed-bg-color: var(--f7-button-fill-pressed-bg-color, transparent);
}

/* === Touch Ripple === */

:root {
  --f7-touch-ripple-black: rgba(0, 0, 0, 0.1);
  --f7-touch-ripple-white: rgba(255, 255, 255, 0.15);
  --f7-touch-ripple-color: var(--f7-touch-ripple-black);
}

.dark {
  --f7-touch-ripple-color: var(--f7-touch-ripple-white);
}

.ripple,
.fab a,
.link,
.item-link,
.list-button,
.button,
.dialog-button,
.tab-link,
.radio,
.checkbox,
.actions-button,
.speed-dial-buttons a {
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.ripple-wave {
  left: 0;
  top: 0;
  position: absolute !important;
  border-radius: 50%;
  pointer-events: none;
  z-index: -1;
  padding: 0;
  margin: 0;
  font-size: 0;
  transform: translate3d(0px, 0px, 0) scale(0);
  background-color: var(--f7-touch-ripple-color);
  animation: touch-ripple-in 200ms forwards;
}

.ripple-wave.ripple-wave-inset {
  background-image: none;
  background-color: var(--f7-touch-ripple-color);
}

.ripple-wave.ripple-wave-out {
  transform: var(--f7-ripple-transform);
  animation: touch-ripple-out 250ms forwards !important;
}

.item-link .ripple-wave,
.list label.item-content .ripple-wave,
.list-button .ripple-wave,
.links-list a .ripple-wave,
.button .ripple-wave,
button .ripple-wave,
.dialog-button .ripple-wave,
.tab-link .ripple-wave,
.item-radio .ripple-wave,
.item-checkbox .ripple-wave,
.actions-button .ripple-wave,
.fab a .ripple-wave,
.stepper-button .ripple-wave,
.stepper-button-minus .ripple-wave,
.stepper-button-plus .ripple-wave,
.list.accordion-list .accordion-item-toggle .ripple-wave,
.photo-browser .toolbar .link .ripple-wave,
.ripple-blur .ripple-wave {
  animation: touch-ripple-in-blurred 250ms forwards;
  background-image: radial-gradient(closest-side circle at 50% 50%, var(--f7-touch-ripple-color) 50%, rgba(255, 255, 255, 0));
  background-color: transparent;
}

.checkbox .ripple-wave,
.radio .ripple-wave,
.data-table .sortable-cell .ripple-wave {
  z-index: 0;
}

[class*='ripple-color-'] {
  --f7-touch-ripple-color: var(--f7-theme-color-ripple-color);
}

@keyframes touch-ripple-in-blurred {
  from {
    transform: translate3d(0px, 0px, 0) scale(0.5);
  }

  to {
    transform: var(--f7-ripple-transform);
  }
}

@keyframes touch-ripple-in {
  from {
    transform: translate3d(0px, 0px, 0) scale(0);
  }

  to {
    transform: var(--f7-ripple-transform);
  }
}

@keyframes touch-ripple-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

/* === Touch Highlight === */

.ios {
  --f7-touch-highlight-bg-color: rgba(255, 255, 255, 0.5);
}

.ios .dark,
.ios.dark {
  --f7-touch-highlight-bg-color: rgba(255, 255, 255, 0.3);
}

.ios .toolbar-pane,
.ios .navbar .left,
.ios .navbar .right,
.ios .popover-inner,
.ios .actions-group:not(.actions-grid .actions-group),
.ios .searchbar-input-wrap,
.ios .searchbar-disable-button,
.ios .subnavbar,
.ios .searchbar-input-wrap .autocomplete-dropdown,
.ios .messagebar-area,
.ios .notification,
.ios .toast,
.ios .fab > a {
  touch-action: none;
}

/* === Icon === */

.f7-icons,
.material-icons {
  width: 1em;
  height: 1em;
}

i.icon {
  display: inline-block;
  vertical-align: middle;
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  font-style: normal;
  position: relative;
}

.icon-back:after,
.icon-prev:after,
.icon-forward:after,
.icon-next:after,
.icon-close:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
}

.icon[class*='color-'] {
  color: var(--f7-theme-color);
}

.ios .icon-back,
.ios .icon-prev,
.ios .icon-forward,
.ios .icon-next {
  width: 12px;
  height: 20px;
  line-height: 20px;
}

.ios .icon-back:after,
.ios .icon-prev:after,
.ios .icon-forward:after,
.ios .icon-next:after {
  line-height: inherit;
}

.ios .icon-prev:after,
.ios .icon-next:after {
  font-size: 16px;
}

.ios .icon-close {
  width: 20px;
  height: 20px;
  line-height: 20px;
  font-size: 20px;
}

.ios .icon-close:after {
  content: 'close_ios';
}

.ios .icon-back:after,
.ios .icon-prev:after {
  content: 'chevron_left_ios';
}

.ios .icon-forward:after,
.ios .icon-next:after {
  content: 'chevron_right_ios';
}

.md .icon-back,
.md .icon-forward,
.md .icon-next,
.md .icon-prev {
  width: 24px;
  height: 24px;
}

.md .icon-back:after,
.md .icon-forward:after,
.md .icon-next:after,
.md .icon-prev:after {
  line-height: 1.2;
}

.md .icon-close {
  width: 24px;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
}

.md .icon-close:after {
  content: 'close_md';
}

.md .icon-back:after {
  content: 'arrow_left_md';
}

.md .icon-forward:after {
  content: 'arrow_right_md';
}

.md .icon-next:after {
  content: 'chevron_right_md';
}

.md .icon-prev:after {
  content: 'chevron_left_md';
}

.custom-modal-backdrop {
  z-index: 10500;
}

.custom-modal-backdrop,
.actions-backdrop,
.dialog-backdrop,
.popover-backdrop,
.popup-backdrop,
.preloader-backdrop,
.sheet-backdrop,
.fab-backdrop {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 13000;
  visibility: hidden;
  opacity: 0;
  transition-duration: 400ms;
}

.custom-modal-backdrop.not-animated,
.actions-backdrop.not-animated,
.dialog-backdrop.not-animated,
.popover-backdrop.not-animated,
.popup-backdrop.not-animated,
.preloader-backdrop.not-animated,
.sheet-backdrop.not-animated,
.fab-backdrop.not-animated {
  transition-duration: 0ms;
}

.custom-modal-backdrop.backdrop-in,
.actions-backdrop.backdrop-in,
.dialog-backdrop.backdrop-in,
.popover-backdrop.backdrop-in,
.popup-backdrop.backdrop-in,
.preloader-backdrop.backdrop-in,
.sheet-backdrop.backdrop-in,
.fab-backdrop.backdrop-in {
  visibility: visible;
  opacity: 1;
}

/* === Dialog === */

:root {
  --f7-dialog-button-text-color: var(--f7-theme-color);
  --f7-dialog-button-text-align: center;
  --f7-dialog-text-line-height: 1.5;
}

.ios {
  --f7-dialog-width: 270px;
  --f7-dialog-inner-padding: 24px;
  --f7-dialog-border-radius: 32px;
  --f7-dialog-text-align: left;
  --f7-dialog-font-size: 14px;
  --f7-dialog-title-text-color: inherit;
  --f7-dialog-title-font-size: 17px;
  --f7-dialog-title-font-weight: 600;
  --f7-dialog-title-line-height: inherit;
  --f7-dialog-button-font-size: 17px;
  --f7-dialog-button-height: 44px;
  --f7-dialog-button-letter-spacing: 0;
  --f7-dialog-button-font-weight: 400;
  --f7-dialog-button-text-transform: none;
  --f7-dialog-button-strong-bg-color: transparent;
  --f7-dialog-button-strong-text-color: var(--f7-theme-color);
  --f7-dialog-button-strong-font-weight: 500;
  --f7-dialog-input-border-radius: 16px;
  --f7-dialog-input-font-size: 14px;
  --f7-dialog-input-height: 40px;
  --f7-dialog-input-border-width: 1px;
  --f7-dialog-input-placeholder-color: #a9a9a9;
  --f7-dialog-preloader-size: 34px;
  --f7-dialog-bg-color: var(--f7-glass-bg-color);
  --f7-dialog-input-bg-color: #fff;
  --f7-dialog-bg-color-rgb: 255, 255, 255;
  --f7-dialog-text-color: #000;
  --f7-dialog-button-pressed-bg-color: rgba(0, 0, 0, 0.1);
  --f7-dialog-button-strong-pressed-bg-color: rgba(0, 0, 0, 0.1);
  --f7-dialog-input-border-color: rgba(0, 0, 0, 0.3);
}

.ios .dark,
.ios.dark {
  --f7-dialog-text-color: #fff;
  --f7-dialog-bg-color-rgb: 45, 45, 45;
  --f7-dialog-button-pressed-bg-color: rgba(0, 0, 0, 0.2);
  --f7-dialog-button-strong-pressed-bg-color: rgba(0, 0, 0, 0.2);
  --f7-dialog-input-border-color: rgba(255, 255, 255, 0.15);
  --f7-dialog-input-bg-color: rgba(0, 0, 0, 0.5);
}

.md {
  --f7-dialog-width: 280px;
  --f7-dialog-inner-padding: 24px;
  --f7-dialog-border-radius: 28px;
  --f7-dialog-text-align: left;
  --f7-dialog-font-size: 14px;
  --f7-dialog-title-font-size: 24px;
  --f7-dialog-title-font-weight: 400;
  --f7-dialog-title-line-height: 1.3;
  --f7-dialog-button-font-size: 14px;
  --f7-dialog-button-height: 40px;
  --f7-dialog-button-letter-spacing: normal;
  --f7-dialog-button-font-weight: 500;
  --f7-dialog-button-text-transform: none;
  --f7-dialog-button-strong-font-weight: 500;
  --f7-dialog-input-border-radius: 0px;
  --f7-dialog-input-font-size: 16px;
  --f7-dialog-input-height: 36px;
  --f7-dialog-input-border-color: transparent;
  --f7-dialog-input-border-width: 0px;
  --f7-dialog-preloader-size: 32px;
  --f7-dialog-input-bg-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-dialog-button-pressed-bg-color: transparent;
  --f7-dialog-button-strong-bg-color: var(--f7-theme-color);
  --f7-dialog-button-strong-text-color: var(--f7-md-on-primary);
  --f7-dialog-button-strong-pressed-bg-color: transparent;
  --f7-dialog-bg-color: var(--f7-md-surface-3);
  --f7-dialog-input-placeholder-color: var(--f7-md-on-surface-variant);
  --f7-dialog-text-color: var(--f7-md-on-surface-variant);
  --f7-dialog-title-text-color: var(--f7-md-on-surface);
}

.dialog {
  position: absolute;
  z-index: 13500;
  left: 50%;
  margin-top: 0;
  top: 50%;
  overflow: hidden;
  opacity: 0;
  transform: translate3d(0, -50%, 0) scale(1.185);
  transition-property: transform, opacity;
  display: none;
  transition-duration: 400ms;
  width: var(--f7-dialog-width);
  margin-left: calc(-1 * var(--f7-dialog-width) / 2);
  border-radius: var(--f7-dialog-border-radius);
  text-align: var(--f7-dialog-text-align);
  color: var(--f7-dialog-text-color);
  font-size: var(--f7-dialog-font-size);
  background: var(--f7-dialog-bg-color);
  will-change: transform, opacity;
}

.dialog.modal-in {
  opacity: 1;
  transform: translate3d(0, -50%, 0) scale(1);
}

.dialog.modal-out {
  opacity: 0;
  z-index: 13499;
}

.dialog.not-animated {
  transition-duration: 0ms;
}

.dialog-inner {
  position: relative;
  padding: var(--f7-dialog-inner-padding);
}

.dialog-title {
  color: var(--f7-dialog-title-text-color);
  font-size: var(--f7-dialog-title-font-size);
  font-weight: var(--f7-dialog-title-font-weight);
  line-height: var(--f7-dialog-title-line-height);
}

.dialog-text {
  line-height: var(--f7-dialog-text-line-height);
}

.dialog-buttons {
  position: relative;
  display: flex;
}

.dialog-buttons-vertical .dialog-buttons {
  flex-direction: column;
  height: auto !important;
}

.dialog-button {
  overflow: hidden;
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.dialog-no-buttons .dialog-buttons {
  display: none;
}

.dialog-input-field {
  position: relative;
}

input.dialog-input[type] {
  box-sizing: border-box;
  margin: 0;
  margin-top: 15px;
  border-radius: var(--f7-dialog-input-border-radius);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: block;
  font-family: inherit;
  box-shadow: none;
  font-size: var(--f7-dialog-input-font-size);
  height: var(--f7-dialog-input-height);
  background-color: var(--f7-dialog-input-bg-color);
  border: var(--f7-dialog-input-border-width) solid var(--f7-dialog-input-border-color);
}

input.dialog-input[type]::-moz-placeholder {
  color: var(--f7-dialog-input-placeholder-color);
}

input.dialog-input[type]::placeholder {
  color: var(--f7-dialog-input-placeholder-color);
}

.dialog-input-double input.dialog-input {
  border-radius: var(--f7-dialog-input-border-radius) var(--f7-dialog-input-border-radius) 0 0;
}

.dialog-input-double + .dialog-input-double input.dialog-input {
  border-radius: 0 0 var(--f7-dialog-input-border-radius) var(--f7-dialog-input-border-radius);
}

.dialog-preloader .preloader {
  --f7-preloader-size: var(--f7-dialog-preloader-size);
}

html:has(.dialog.modal-in) .page-content {
  overflow: hidden;
  -webkit-overflow-scrolling: auto;
}

.ios .dialog {
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  border-radius: var(--f7-dialog-border-radius);
}

.ios .dialog.modal-out {
  transform: translate3d(0, -50%, 0) scale(1);
}

.ios .dialog-inner {
  border-radius: var(--f7-dialog-border-radius) var(--f7-dialog-border-radius) 0 0;
}

.ios .dialog-title + .dialog-text {
  margin-top: 12px;
}

.ios .dialog-buttons {
  padding: 0 14px 14px 14px;
  justify-content: center;
  gap: 8px;
}

.ios .dialog-button {
  width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1;
}

.ios .dialog-no-buttons .dialog-inner {
  border-radius: var(--f7-dialog-border-radius);
}

.ios .dialog-input-field {
  margin-top: 15px;
}

.ios .dialog-input {
  padding: 0 12px;
}

.ios .dialog-input + .dialog-input {
  margin-top: 12px;
}

.ios .dialog-input-double + .dialog-input-double {
  margin-top: 0;
}

.ios .dialog-input-double + .dialog-input-double .dialog-input {
  border-top: 0;
  margin-top: 0;
}

.ios .dialog-preloader {
  text-align: center;
}

.ios .dialog-preloader .dialog-title ~ .preloader,
.ios .dialog-preloader .dialog-text ~ .preloader {
  margin-top: 15px;
}

.ios .dialog-progress .dialog-title ~ .progressbar,
.ios .dialog-progress .dialog-text ~ .progressbar,
.ios .dialog-progress .dialog-title ~ .progressbar-infinite,
.ios .dialog-progress .dialog-text ~ .progressbar-infinite {
  margin-top: 15px;
}

.md .dialog.modal-out {
  transform: translate3d(0, -50%, 0) scale(0.815);
}

.md .dialog-title + .dialog-text {
  margin-top: 20px;
}

.md .dialog-text {
  line-height: 1.5;
}

.md .dialog-buttons {
  padding: 0px 24px 24px;
  overflow: hidden;
  box-sizing: border-box;
  justify-content: flex-end;
  gap: 8px;
}

.md .dialog-button {
  width: auto;
}

.md .dialog-buttons-vertical .dialog-buttons {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.md .dialog-input {
  padding: 0;
  transition-duration: 200ms;
  position: relative;
}

.md .dialog-input + .dialog-input {
  margin-top: 16px;
}

.md .dialog-preloader .dialog-title,
.md .dialog-progress .dialog-title,
.md .dialog-preloader .dialog-inner,
.md .dialog-progress .dialog-inner {
  text-align: center;
}

.md .dialog-preloader .dialog-title ~ .preloader,
.md .dialog-preloader .dialog-text ~ .preloader {
  margin-top: 20px;
}

.md .dialog-progress .dialog-title ~ .progressbar,
.md .dialog-progress .dialog-text ~ .progressbar,
.md .dialog-progress .dialog-title ~ .progressbar-infinite,
.md .dialog-progress .dialog-text ~ .progressbar-infinite {
  margin-top: 16px;
}

/* === Popup === */

:root {
  --f7-popup-border-radius: 0px;
  --f7-popup-tablet-width: 630px;
  --f7-popup-tablet-height: 630px;
  --f7-popup-push-offset: var(--f7-safe-area-top);
  /*
  --f7-popup-tablet-border-radius: var(--f7-popup-border-radius);
  */
}

.ios {
  --f7-popup-tablet-border-radius: 32px;
  --f7-popup-transition-duration: 400ms;
  --f7-popup-transition-timing-function: initial;
  --f7-popup-push-border-radius: 32px;
}

.md {
  --f7-popup-tablet-border-radius: 28px;
  --f7-popup-transition-duration: 600ms;
  --f7-popup-transition-timing-function: cubic-bezier(0, 1, 0.2, 1);
  --f7-popup-push-border-radius: 28px;
}

.popup-backdrop {
  z-index: 10500;
}

.popup-backdrop-unique {
  z-index: 11000;
}

.popup {
  position: absolute;
  left: 0;
  top: 0px;
  width: 100%;
  height: 100%;
  display: none;
  box-sizing: border-box;
  transition-property: transform;
  transition-timing-function: var(--f7-popup-transition-timing-function);
  transform: translate3d(0, 100vh, 0);
  background: #fff;
  z-index: 11000;
  overflow: hidden;
  border-radius: var(--f7-popup-border-radius);
}

.dark .popup,
.popup.dark {
  background: #000;
}

.popup.modal-in,
.popup.modal-out {
  transition-duration: var(--f7-popup-transition-duration);
}

.popup.not-animated {
  transition-duration: 0ms;
}

.popup.modal-in {
  display: block;
  transform: translate3d(0, 0, 0);
}

.popup.modal-out {
  transform: translate3d(0, 100vh, 0);
}

.popup.swipe-close-to-top.modal-out {
  transform: translate3d(0, -100vh, 0);
}

@media (min-width: 630px) and (min-height: 630px) {
  .popup:not(.popup-tablet-fullscreen) {
    --f7-safe-area-top: 0px;
    --f7-safe-area-bottom: 0px;
    width: var(--f7-popup-tablet-width);
    height: var(--f7-popup-tablet-height);
    left: 50%;
    top: 50%;
    margin-left: calc(-1 * var(--f7-popup-tablet-width) / 2);
    margin-top: calc(-1 * var(--f7-popup-tablet-height) / 2);
    transform: translate3d(0, 100vh, 0);
    border-radius: var(--f7-popup-tablet-border-radius, var(--f7-popup-border-radius));
  }

  .popup:not(.popup-tablet-fullscreen).modal-in {
    transform: translate3d(0, 0, 0);
  }

  .popup:not(.popup-tablet-fullscreen).modal-out {
    transform: translate3d(0, 100vh, 0);
  }

  .popup:not(.popup-tablet-fullscreen).swipe-close-to-top.modal-out {
    transform: translate3d(0, -100vh, 0);
  }

  .popup:not(.popup-tablet-fullscreen).popup-behind {
    transform: translate3d(0, 0, 0) scale(0.9);
    pointer-events: none;
  }

  .popup:not(.popup-tablet-fullscreen).popup-behind.modal-out {
    transform: translate3d(0, 100vh, 0) scale(0.9);
  }

  html:has(.popup-push-in) .popup-push:not(.popup-tablet-fullscreen) {
    margin-top: 0;
  }
}

html:has(.popup.modal-in) .framework7-root > .views .page-content,
html:has(.popup.modal-in) .framework7-root > .view .page-content,
html:has(.popup.modal-in) .framework7-root > .panel .page-content {
  overflow: hidden;
  -webkit-overflow-scrolling: auto;
}

html:has(.popup-push-in) .popup-push,
html:has(.popup-push-closing) .popup-push {
  top: calc(var(--f7-popup-push-offset) + 10px);
  height: calc(100% - var(--f7-popup-push-offset) - 10px);
  border-radius: var(--f7-popup-push-border-radius) var(--f7-popup-push-border-radius) 0 0;
  --f7-safe-area-top: 0px;
}

html:has(.popup-push-in) .popup-push .view,
html:has(.popup-push-closing) .popup-push .view,
html:has(.popup-push-in) .popup-push .page,
html:has(.popup-push-closing) .popup-push .page {
  --f7-safe-area-top: 0px;
}

html:has(.popup-push-in) .framework7-root,
html:has(.popup-push-closing) .framework7-root {
  background: #000;
}

html:has(.popup-push-in) .framework7-root > .views,
html:has(.popup-push-closing) .framework7-root > .views,
html:has(.popup-push-in) .framework7-root > .view,
html:has(.popup-push-closing) .framework7-root > .view {
  transition-duration: var(--f7-popup-transition-duration);
  transition-timing-function: var(--f7-popup-transition-timing-function);
}

html:has(.popup-push-in).dark .framework7-root > .views:after,
html:has(.popup-push-closing).dark .framework7-root > .views:after,
html:has(.popup-push-in).dark .framework7-root > .view:after,
html:has(.popup-push-closing).dark .framework7-root > .view:after,
html:has(.popup-push-in) .dark .framework7-root > .views:after,
html:has(.popup-push-closing) .dark .framework7-root > .views:after,
html:has(.popup-push-in) .dark .framework7-root > .view:after,
html:has(.popup-push-closing) .dark .framework7-root > .view:after,
html:has(.popup-push-in) .dark.framework7-root > .views:after,
html:has(.popup-push-closing) .dark.framework7-root > .views:after,
html:has(.popup-push-in) .dark.framework7-root > .view:after,
html:has(.popup-push-closing) .dark.framework7-root > .view:after,
html:has(.popup-push-in) .framework7-root > .views.dark:after,
html:has(.popup-push-closing) .framework7-root > .views.dark:after,
html:has(.popup-push-in) .framework7-root > .view.dark:after,
html:has(.popup-push-closing) .framework7-root > .view.dark:after {
  content: '';
  position: absolute;
  pointer-events: none;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.1);
  z-index: 13000;
  border-radius: var(--f7-popup-push-border-radius) var(--f7-popup-push-border-radius) 0 0;
  opacity: 1;
  animation: popup-dark-push-overlay-fade-in var(--f7-popup-transition-duration) forwards;
}

html:has(.popup-push-in) .framework7-root > .views,
html:has(.popup-push-in) .framework7-root > .view {
  border-radius: var(--f7-popup-push-border-radius) var(--f7-popup-push-border-radius) 0 0;
  transform: translate3d(0, 0, 0px) scale(var(--f7-popup-push-scale, 1)) !important;
}

html:has(.popup-push-in) .popup:after {
  content: '';
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 13000;
  transition-duration: var(--f7-popup-transition-duration);
  transition-timing-function: var(--f7-popup-transition-timing-function);
  border-radius: var(--f7-popup-push-border-radius) var(--f7-popup-push-border-radius) 0 0;
  opacity: 0;
}

html:has(.popup-push-in).dark .popup:after,
html:has(.popup-push-in) .dark .popup:after,
html:has(.popup-push-in) .dark.popup:after {
  background: rgba(255, 255, 255, 0.05);
}

html:has(.popup-push-in) .popup-behind {
  transform: translate3d(0, 0px, 0px) scale(var(--f7-popup-push-scale, 1));
}

html:has(.popup-push-in) .popup-behind.modal-out {
  transform: translate3d(0, 100vh, 0) scale(var(--f7-popup-push-scale, 1));
}

html:has(.popup-push-in) .popup-behind:not(.popup-push) {
  border-radius: var(--f7-popup-push-border-radius) var(--f7-popup-push-border-radius) 0 0;
}

html:has(.popup-push-in) .popup-behind.popup-push {
  transform: translate3d(0, calc(0px - var(--f7-popup-push-offset) - 10px), 0px) scale(var(--f7-popup-push-scale, 1));
}

html:has(.popup-push-in) .popup-behind.popup-push.modal-out {
  transform: translate3d(0, calc(0px - var(--f7-popup-push-offset) - 10px + 100vh), 0px) scale(var(--f7-popup-push-scale, 1));
}

html:has(.popup-push-in) .popup-behind:after {
  opacity: 1;
  pointer-events: auto;
}

html:has(.popup-push-closing).dark .framework7-root > .views:after,
html:has(.popup-push-closing).dark .framework7-root > .view:after,
html:has(.popup-push-closing) .dark .framework7-root > .views:after,
html:has(.popup-push-closing) .dark .framework7-root > .view:after,
html:has(.popup-push-closing) .dark.framework7-root > .views:after,
html:has(.popup-push-closing) .dark.framework7-root > .view:after,
html:has(.popup-push-closing) .framework7-root > .views.dark:after,
html:has(.popup-push-closing) .framework7-root > .view.dark:after {
  animation: popup-dark-push-overlay-fade-out var(--f7-popup-transition-duration) forwards;
  animation-timing-function: var(--f7-popup-transition-timing-function);
}

@keyframes popup-dark-push-overlay-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes popup-dark-push-overlay-fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

/* === Login Screen === */

:root {
  --f7-login-screen-blocks-max-width: 480px;
  --f7-login-screen-title-text-align: center;
  --f7-login-screen-title-text-color: inherit;
  --f7-login-screen-title-letter-spacing: 0;
}

.ios {
  --f7-login-screen-blocks-margin-vertical: 25px;
  --f7-login-screen-transition-timing-function: initial;
  --f7-login-screen-transition-duration: 400ms;
  --f7-login-screen-title-font-weight: 600;
  --f7-login-screen-title-font-size: 28px;
  --f7-login-screen-content-bg-color: #fff;
  --f7-login-screen-bg-color: #fff;
}

.ios .dark,
.ios.dark {
  --f7-login-screen-bg-color: #000;
  --f7-login-screen-content-bg-color: #000;
}

.md {
  --f7-login-screen-transition-duration: 600ms;
  --f7-login-screen-transition-timing-function: cubic-bezier(0, 1, 0.2, 1);
  --f7-login-screen-blocks-margin-vertical: 24px;
  --f7-login-screen-title-font-weight: 400;
  --f7-login-screen-title-font-size: 28px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-login-screen-content-bg-color: var(--f7-md-surface);
  --f7-login-screen-bg-color: var(--f7-md-surface);
}

.login-screen {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: none;
  box-sizing: border-box;
  transition-property: transform;
  transform: translate3d(0, 100vh, 0);
  background: var(--f7-login-screen-bg-color);
  transition-timing-function: var(--f7-login-screen-transition-timing-function);
  z-index: 11000;
}

.login-screen.modal-in,
.login-screen.modal-out {
  transition-duration: var(--f7-login-screen-transition-duration);
}

.login-screen.not-animated {
  transition-duration: 0ms;
}

.login-screen.modal-in {
  display: block;
  transform: translate3d(0, 0, 0);
}

.login-screen.modal-out {
  transform: translate3d(0, 100%, 0);
}

.login-screen-content,
.login-screen-page,
.login-screen .page {
  background: var(--f7-login-screen-content-bg-color);
}

.login-screen-content .login-screen-title,
.login-screen-page .login-screen-title,
.login-screen-content .list,
.login-screen-page .list,
.login-screen-content .block,
.login-screen-page .block {
  margin: var(--f7-login-screen-blocks-margin-vertical) auto;
}

.login-screen-content .login-screen-title,
.login-screen-page .login-screen-title,
.login-screen-content .list,
.login-screen-page .list,
.login-screen-content .block,
.login-screen-page .block,
.login-screen-content .block-footer,
.login-screen-page .block-footer,
.login-screen-content .block-header,
.login-screen-page .block-header {
  max-width: var(--f7-login-screen-blocks-max-width);
}

.login-screen-content .list ul,
.login-screen-page .list ul {
  background: none;
}

.login-screen-content .list ul:before,
.login-screen-page .list ul:before,
.login-screen-content .list ul:after,
.login-screen-page .list ul:after {
  display: none !important;
}

.login-screen-content .block-footer,
.login-screen-page .block-footer,
.login-screen-content .block-header,
.login-screen-page .block-header {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.login-screen-title {
  text-align: var(--f7-login-screen-title-text-align);
  font-size: var(--f7-login-screen-title-font-size);
  font-weight: var(--f7-login-screen-title-font-weight);
  color: var(--f7-login-screen-title-text-color);
  letter-spacing: var(--f7-login-screen-title-letter-spacing);
}

.login-screen-page,
.login-screen > .view > .page,
.login-screen > .page {
  display: flex;
  flex-direction: column;
}

.login-screen-page .page-content,
.login-screen > .view > .page .page-content,
.login-screen > .page .page-content,
.login-screen-page .login-screen-content,
.login-screen > .view > .page .login-screen-content,
.login-screen > .page .login-screen-content {
  margin-top: auto;
  margin-bottom: auto;
  height: auto;
  max-height: 100%;
  width: 100%;
}

.dark .login-screen-content .list ul,
.dark .login-screen-content .block-strong,
.dark .login-screen-page .list ul,
.dark .login-screen-page .block-strong,
.dark.login-screen-page .list ul,
.dark.login-screen-page .block-strong {
  background-color: transparent;
}

/* === Popover === */

:root {
  --f7-popover-width: 260px;
}

.ios {
  --f7-popover-border-radius: 32px;
  --f7-popover-actions-icon-size: 28px;
  --f7-popover-transition-timing-function: initial;
  --f7-popover-bg-color: transparent;
  --f7-popover-actions-label-text-color: rgba(0, 0, 0, 0.45);
}

.ios .dark,
.ios.dark {
  --f7-popover-actions-label-text-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-popover-transition-timing-function: cubic-bezier(0, 0.8, 0.34, 1);
  --f7-popover-border-radius: 28px;
  --f7-popover-actions-icon-size: 24px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-popover-bg-color: var(--f7-md-surface-3);
  --f7-popover-actions-label-text-color: var(--f7-md-on-surface-variant);
}

.popover-backdrop-unique {
  z-index: 13500;
}

.popover {
  width: var(--f7-popover-width);
  z-index: 13500;
  margin: 0;
  top: 0;
  opacity: 0;
  left: 0;
  position: absolute;
  display: none;
  background-color: var(--f7-popover-bg-color);
  border-radius: var(--f7-popover-border-radius);
  will-change: transform, opacity;
  --f7-safe-area-top: 0px;
  --f7-safe-area-left: 0px;
  --f7-safe-area-right: 0px;
  --f7-safe-area-bottom: 0px;
}

.popover .list {
  margin: 0;
}

.popover .list ul {
  background: none;
}

.popover .list:first-child ul:before {
  display: none !important;
}

.popover .list:last-child ul:after {
  display: none !important;
}

.popover .list:first-child ul {
  border-radius: var(--f7-popover-border-radius) var(--f7-popover-border-radius) 0 0;
}

.popover .list:first-child li:first-child,
.popover .list:first-child li:first-child a,
.popover .list:first-child li:first-child > label {
  border-radius: var(--f7-popover-border-radius) var(--f7-popover-border-radius) 0 0;
}

.popover .list:last-child ul {
  border-radius: 0 0 var(--f7-popover-border-radius) var(--f7-popover-border-radius);
}

.popover .list:last-child li:last-child,
.popover .list:last-child li:last-child a,
.popover .list:last-child li:last-child > label {
  border-radius: 0 0 var(--f7-popover-border-radius) var(--f7-popover-border-radius);
}

.popover .list:first-child:last-child li:first-child:last-child,
.popover .list:first-child:last-child li:first-child:last-child a,
.popover .list:first-child:last-child li:first-child:last-child > label,
.popover .list:first-child:last-child ul {
  border-radius: var(--f7-popover-border-radius);
}

.popover .list + .list {
  margin-top: var(--f7-list-margin-vertical);
}

.popover.modal-in {
  opacity: 1;
}

.popover.not-animated {
  transition-duration: 0ms;
}

.popover,
.popover-backdrop {
  transition-timing-function: var(--f7-popover-transition-timing-function);
}

.popover-inner {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.popover-from-actions .item-link i.icon {
  width: var(--f7-popover-actions-icon-size);
  height: var(--f7-popover-actions-icon-size);
  font-size: var(--f7-popover-actions-icon-size);
}

.ios .popover-from-actions-strong {
  font-weight: 600;
}

.md .popover-from-actions-strong {
  font-weight: 500;
}

.popover-from-actions-label {
  line-height: 1.3;
  position: relative;
  display: flex;
  align-items: center;
  padding: var(--f7-actions-label-padding);
  color: var(--f7-popover-actions-label-text-color);
  font-size: var(--f7-actions-label-font-size);
  justify-content: var(--f7-actions-label-justify-content);
}

.popover-from-actions-label:after {
  content: '';
  position: absolute;
  background-color: var(--f7-list-item-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.popover-from-actions-label:last-child:after {
  display: none !important;
}

.md .popover-from-actions-label {
  justify-content: center;
}

.popover-on-top {
  transform-origin: center bottom;
}

.popover-on-top.popover-on-right {
  transform-origin: left bottom;
}

.popover-on-top.popover-on-left {
  transform-origin: right bottom;
}

.popover-on-middle {
  transform-origin: center center;
}

.popover-on-middle.popover-on-right {
  transform-origin: left center;
}

.popover-on-middle.popover-on-left {
  transform-origin: right center;
}

.popover-on-bottom {
  transform-origin: center top;
}

.popover-on-bottom.popover-on-right {
  transform-origin: left top;
}

.popover-on-bottom.popover-on-left {
  transform-origin: right top;
}

.ios .popover-on-top {
  transform-origin: center bottom;
  --f7-popover-inner-offset: translate3d(0%, 80px, 0);
}

.ios .popover-on-top.popover-on-right {
  transform-origin: left bottom;
  --f7-popover-inner-offset: translate3d(50%, 80px, 0);
}

.ios .popover-on-top.popover-on-left {
  transform-origin: right bottom;
  --f7-popover-inner-offset: translate3d(-50%, 80px, 0);
}

.ios .popover-on-middle {
  transform-origin: center center;
}

.ios .popover-on-middle.popover-on-right {
  transform-origin: left center;
  --f7-popover-inner-offset: translate3d(50%, 0px, 0);
}

.ios .popover-on-middle.popover-on-left {
  transform-origin: right center;
  --f7-popover-inner-offset: translate3d(-50%, 0px, 0);
}

.ios .popover-on-bottom {
  transform-origin: center top;
  --f7-popover-inner-offset: translate3d(0%, -80px, 0);
}

.ios .popover-on-bottom.popover-on-right {
  transform-origin: left top;
  --f7-popover-inner-offset: translate3d(50%, -80px, 0);
}

.ios .popover-on-bottom.popover-on-left {
  transform-origin: right top;
  --f7-popover-inner-offset: translate3d(-50%, -80px, 0);
}

.ios .popover {
  transform: translate3d(0, 0, 0) scale(0);
  transition-property: opacity, transform;
  opacity: 1;
  will-change: auto;
}

.ios .popover.modal-in {
  transform: translate3d(0, 0, 0) scale(1);
  transition-timing-function: cubic-bezier(0, 1, 0.2, 1.05);
  transition-duration: 400ms;
}

.ios .popover.modal-in .popover-inner {
  transition-duration: 600ms;
  transition-timing-function: cubic-bezier(0, 1, 0.2, 1.05);
  transform: translate3d(0, 0, 0) scale(1);
}

.ios .popover.modal-out {
  opacity: 0;
  transform: translate3d(0, 0, 0) scale(0);
  transition-duration: 300ms;
}

.ios .popover.modal-out .popover-inner {
  transition-duration: 500ms;
}

.ios .popover-inner {
  background: var(--f7-glass-bg-color);
  box-shadow: var(--f7-glass-shadow);
  border-radius: var(--f7-popover-border-radius);
  transform: var(--f7-popover-inner-offset);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

.md .popover {
  transform: scale(0.85, 0.6);
  transition-property: opacity, transform;
  transition-duration: 300ms;
}

.md .popover.modal-in {
  opacity: 1;
  transform: scale(1);
}

.md .popover.modal-out {
  opacity: 0;
  transform: scale(1);
}

/* === Actions === */

:root {
  --f7-actions-grid-button-font-size: 12px;
  --f7-actions-grid-button-icon-size: 48px;
}

.ios {
  --f7-actions-transition-timing-function: initial;
  --f7-actions-border-radius: 32px;
  /*
  --f7-actions-button-text-color: var(--f7-theme-color);
  */
  --f7-actions-grid-button-text-color: #757575;
  --f7-actions-button-padding: 0px;
  --f7-actions-button-text-align: center;
  --f7-actions-button-height: 56px;
  --f7-actions-button-height-landscape: 56px;
  --f7-actions-button-font-size: 20px;
  --f7-actions-button-icon-size: 28px;
  --f7-actions-button-justify-content: center;
  --f7-actions-label-padding: 8px 10px;
  --f7-actions-label-font-weight: 400;
  --f7-actions-label-font-size: 13px;
  --f7-actions-label-justify-content: center;
  --f7-actions-group-border-color: transparent;
  --f7-actions-group-margin: 8px;
  --f7-actions-bg-color: var(--f7-glass-bg-color);
  --f7-actions-button-border-color: rgba(0, 0, 0, 0.2);
  --f7-actions-button-pressed-bg-color: rgba(230, 230, 230, 0.9);
  --f7-actions-button-pressed-bg-color-rgb: 230, 230, 230;
  --f7-actions-label-text-color: #8a8a8a;
}

.ios .dark,
.ios.dark {
  --f7-actions-button-border-color: rgba(255, 255, 255, 0.15);
  --f7-actions-button-pressed-bg-color: rgba(50, 50, 50, 0.9);
  --f7-actions-button-pressed-bg-color-rgb: 50, 50, 50;
  --f7-actions-label-text-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-actions-transition-timing-function: cubic-bezier(0, 0.8, 0.34, 1);
  --f7-actions-border-radius: 16px;
  --f7-actions-button-border-color: transparent;
  --f7-actions-button-padding: 0 16px;
  --f7-actions-button-text-align: left;
  --f7-actions-button-height: 48px;
  --f7-actions-button-height-landscape: 48px;
  --f7-actions-button-font-size: 16px;
  --f7-actions-button-icon-size: 24px;
  --f7-actions-button-justify-content: space-between;
  --f7-actions-label-padding: 12px 16px;
  --f7-actions-label-font-size: 14px;
  --f7-actions-label-font-weight: 500;
  --f7-actions-label-justify-content: flex-start;
  --f7-actions-group-margin: 0px;
  --f7-actions-button-pressed-bg-color: #e5e5e5;
}

.md .dark,
.md.dark {
  --f7-actions-button-pressed-bg-color: #2e2e2e;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-actions-button-text-color: var(--f7-md-on-surface);
  --f7-actions-bg-color: var(--f7-md-surface-3);
  --f7-actions-group-border-color: var(--f7-md-outline);
  --f7-actions-label-text-color: var(--f7-theme-color);
  --f7-actions-grid-button-text-color: var(--f7-md-on-surface);
}

.actions-backdrop-unique {
  z-index: 13500;
}

.actions-modal {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 13500;
  width: 100%;
  transform: translate3d(0, 100%, 0);
  display: none;
  max-height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  transition-property: transform;
  will-change: transform;
}

.actions-modal.modal-in,
.actions-modal.modal-out {
  transition-duration: 300ms;
}

.actions-modal.not-animated {
  transition-duration: 0ms;
}

.ios .actions-modal.modal-in {
  transform: translate3d(0, calc(-1 * var(--f7-safe-area-bottom)), 0);
}

.md .actions-modal.modal-in {
  transform: translate3d(0, 0, 0);
}

.actions-modal.modal-out {
  z-index: 13499;
  transform: translate3d(0, 100%, 0);
}

@media (min-width: 496px) {
  .actions-modal {
    width: 480px;
    left: 50%;
    margin-left: -240px;
  }
}

@media (orientation: landscape) {
  .actions-modal {
    --f7-actions-button-height: var(--f7-actions-button-height-landscape);
  }
}

.actions-backdrop,
.actions-modal {
  transition-timing-function: var(--f7-actions-transition-timing-function);
}

.actions-group {
  overflow: hidden;
  position: relative;
  margin: var(--f7-actions-group-margin);
  transform: translate3d(0, 0, 0);
}

.actions-group:after {
  content: '';
  position: absolute;
  background-color: var(--f7-actions-group-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.actions-group:last-child:after {
  display: none !important;
}

.actions-button,
.actions-label {
  width: 100%;
  font-weight: normal;
  margin: 0;
  box-sizing: border-box;
  display: block;
  position: relative;
  overflow: hidden;
  text-align: var(--f7-actions-button-text-align);
}

.actions-button:after,
.actions-label:after {
  content: '';
  position: absolute;
  background-color: var(--f7-actions-button-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.actions-button a,
.actions-label a {
  text-decoration: none;
  color: inherit;
  display: block;
}

.actions-button {
  cursor: pointer;
  display: flex;
  color: var(--f7-actions-button-text-color, var(--f7-theme-color));
  font-size: var(--f7-actions-button-font-size);
  height: var(--f7-actions-button-height);
  line-height: var(--f7-actions-button-height);
  padding: var(--f7-actions-button-padding);
  justify-content: var(--f7-actions-button-justify-content);
  z-index: 10;
}

.actions-button.active-state {
  background-color: var(--f7-actions-button-pressed-bg-color) !important;
}

.actions-button[class*='color-'] {
  color: var(--f7-theme-color);
}

.actions-button-media {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.actions-button-media i.icon {
  width: var(--f7-actions-button-icon-size);
  height: var(--f7-actions-button-icon-size);
  font-size: var(--f7-actions-button-icon-size);
}

.actions-button a,
.actions-button-text {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.actions-button-text {
  width: 100%;
  flex-shrink: 1;
  text-align: var(--f7-actions-button-text-align);
}

.actions-label {
  line-height: 1.3;
  display: flex;
  align-items: center;
  font-size: var(--f7-actions-label-font-size);
  font-weight: var(--f7-actions-label-font-weight);
  color: var(--f7-actions-label-text-color);
  padding: var(--f7-actions-label-padding);
  justify-content: var(--f7-actions-label-justify-content);
  min-height: var(--f7-actions-label-min-height, var(--f7-actions-button-height));
}

.actions-label[class*=' color-'] {
  --f7-actions-label-text-color: var(--f7-theme-color);
}

.actions-grid .actions-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: 0;
}

.actions-grid .actions-group:not(:last-child) {
  margin-bottom: 0;
}

.actions-grid .actions-button,
.actions-grid .actions-label {
  background: none;
}

.actions-grid .actions-button {
  width: 33.33333333%;
  display: block;
  color: var(--f7-actions-grid-button-text-color);
  height: auto;
  line-height: 1;
  padding: 16px;
}

.actions-grid .actions-button:after {
  display: none !important;
}

.actions-grid .actions-button-media {
  margin-left: auto !important;
  margin-right: auto !important;
  width: var(--f7-actions-grid-button-icon-size);
  height: var(--f7-actions-grid-button-icon-size);
}

.actions-grid .actions-button-media i.icon {
  width: var(--f7-actions-grid-button-icon-size);
  height: var(--f7-actions-grid-button-icon-size);
  font-size: var(--f7-actions-grid-button-icon-size);
}

.actions-grid .actions-button-text {
  margin-left: 0 !important;
  text-align: center !important;
  margin-top: 8px;
  line-height: 1.33em;
  height: 1.33em;
  font-size: var(--f7-actions-grid-button-font-size);
}

.ios .actions-modal {
  overflow: visible;
}

.ios .actions-group {
  border-radius: var(--f7-actions-border-radius);
  background: var(--f7-actions-bg-color);
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

.ios .actions-button:first-child,
.ios .actions-label:first-child {
  border-radius: var(--f7-actions-border-radius) var(--f7-actions-border-radius) 0 0;
}

.ios .actions-button:last-child,
.ios .actions-label:last-child {
  border-radius: 0 0 var(--f7-actions-border-radius) var(--f7-actions-border-radius);
}

.ios .actions-button:last-child:after,
.ios .actions-label:last-child:after {
  display: none !important;
}

.ios .actions-button:first-child:last-child,
.ios .actions-label:first-child:last-child {
  border-radius: var(--f7-actions-border-radius);
}

.ios .actions-button b,
.ios .actions-label b,
.ios .actions-button.actions-button-strong,
.ios .actions-label.actions-button-strong {
  font-weight: 600;
}

.ios .actions-grid::before {
  content: '';
  position: absolute;
  left: var(--f7-actions-group-margin);
  right: var(--f7-actions-group-margin);
  bottom: var(--f7-actions-group-margin);
  background: var(--f7-actions-bg-color);
  top: 0;
  border-radius: var(--f7-actions-border-radius);
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

.ios .actions-grid .actions-group {
  background: transparent;
  box-shadow: none;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.ios .actions-grid .actions-button,
.ios .actions-grid .actions-label {
  border-radius: var(--f7-actions-border-radius);
}

.ios .actions-button-media {
  margin-left: 16px;
}

.ios .actions-button-media + .actions-button-text {
  text-align: left;
  margin-left: 16px;
}

.md .actions-modal {
  background-color: var(--f7-actions-bg-color);
  border-radius: var(--f7-actions-border-radius) var(--f7-actions-border-radius) 0 0;
  padding-bottom: var(--f7-safe-area-bottom);
}

.md .actions-button {
  transition-duration: 300ms;
}

.md .actions-button b,
.md .actions-label b,
.md .actions-button.actions-button-strong,
.md .actions-label.actions-button-strong {
  font-weight: 500;
}

.md .actions-button-media {
  min-width: 40px;
}

.md .actions-button-media + .actions-button-text {
  margin-left: 16px;
}

/* === Sheet Modal === */

:root {
  --f7-sheet-height: 260px;
  --f7-sheet-push-offset: var(--f7-safe-area-top);
}

.ios {
  --f7-sheet-border-radius: 32px;
  --f7-sheet-border-color: transparent;
  --f7-sheet-transition-timing-function: initial;
  --f7-sheet-push-border-radius: 32px;
  --f7-sheet-transition-duration: 300ms;
  --f7-sheet-bg-color: var(--f7-glass-bg-color);
}

.md {
  --f7-sheet-border-radius: 16px;
  --f7-sheet-push-border-radius: 16px;
  --f7-sheet-border-color: transparent;
  --f7-sheet-transition-timing-function: cubic-bezier(0, 0.8, 0.34, 1);
  --f7-sheet-transition-duration: 400ms;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-sheet-bg-color: var(--f7-md-surface);
}

.sheet-backdrop {
  z-index: 11000;
}

.sheet-backdrop-unique {
  z-index: 12500;
}

.sheet-modal {
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: var(--f7-sheet-height);
  display: none;
  box-sizing: border-box;
  transition-property: transform;
  transform: translate3d(0, 100%, 0);
  background: var(--f7-sheet-bg-color);
  z-index: 12500;
  will-change: transform, opacity;
}

.sheet-modal.modal-in,
.sheet-modal.modal-out {
  transition-duration: var(--f7-sheet-transition-duration);
}

.sheet-modal.not-animated {
  transition-duration: 0ms;
}

.sheet-modal.modal-in {
  display: block;
  transform: translate3d(0, 0, 0);
}

.sheet-modal.modal-in-swipe-step,
.sheet-modal.modal-in-breakpoint {
  display: block;
  transform: translate3d(0, var(--f7-sheet-breakpoint, var(--f7-sheet-swipe-step, 0)), 0);
}

.sheet-modal.modal-out {
  transform: translate3d(0, 100%, 0);
}

.sheet-modal .sheet-modal-inner {
  height: 100%;
  position: relative;
  overflow: hidden;
}

.sheet-modal .toolbar {
  --f7-safe-area-top: 0px;
  --f7-safe-area-bottom: 0px;
}

.sheet-backdrop,
.sheet-modal {
  transition-timing-function: var(--f7-sheet-transition-timing-function);
}

.sheet-modal-top {
  border-radius: 0 0 var(--f7-sheet-border-radius) var(--f7-sheet-border-radius);
}

.sheet-modal-top:after {
  content: '';
  position: absolute;
  background-color: var(--f7-sheet-border-color);
  display: block;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
  z-index: 700;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
}

.sheet-modal-bottom,
.sheet-modal:not(.sheet-modal-top) {
  --f7-safe-area-top: 0px;
  border-radius: var(--f7-sheet-border-radius) var(--f7-sheet-border-radius) 0 0;
}

.sheet-modal-bottom:before,
.sheet-modal:not(.sheet-modal-top):before {
  content: '';
  position: absolute;
  background-color: var(--f7-sheet-border-color);
  display: block;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
  z-index: 700;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
}

.sheet-modal-top {
  --f7-safe-area-bottom: 0px;
  bottom: auto;
  top: 0;
  transform: translate3d(0, -100%, 0);
}

.sheet-modal-top.modal-out {
  transform: translate3d(0, -100%, 0);
}

.sheet-modal-top .toolbar-bottom {
  position: absolute;
}

.sheet-modal-top .page-content {
  padding-top: var(--f7-safe-area-top);
}

html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .sheet-modal-push {
  --f7-sheet-border-color: transparent;
  border-radius: var(--f7-sheet-push-border-radius) var(--f7-sheet-push-border-radius) 0 0;
  overflow: hidden;
}

html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .sheet-modal-push .view,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .sheet-modal-push .page {
  --f7-safe-area-top: 0px;
}

html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .sheet-modal-push.sheet-modal-top {
  border-radius: 0 0 var(--f7-sheet-push-border-radius) var(--f7-sheet-push-border-radius);
}

html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .framework7-root {
  background: #000;
}

html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .framework7-root > .views,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .framework7-root > .view {
  transition-duration: var(--f7-sheet-transition-duration);
  transition-timing-function: var(--f7-sheet-transition-timing-function);
}

html:has(.sheet-modal-push-in, .sheet-modal-push-closing).dark .framework7-root > .views:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing).dark .framework7-root > .view:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .dark .framework7-root > .views:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .dark .framework7-root > .view:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .dark.framework7-root > .views:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .dark.framework7-root > .view:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .framework7-root > .views.dark:after,
html:has(.sheet-modal-push-in, .sheet-modal-push-closing) .framework7-root > .view.dark:after {
  content: '';
  position: absolute;
  pointer-events: none;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.1);
  z-index: 13000;
  opacity: 1;
  transition-duration: var(--f7-sheet-transition-duration);
  transition-timing-function: var(--f7-sheet-transition-timing-function);
  animation: sheet-dark-push-overlay-fade-in var(--f7-sheet-transition-duration);
  animation-timing-function: var(--f7-sheet-transition-timing-function);
}

html:has(.sheet-modal-push-in) .framework7-root > .views,
html:has(.sheet-modal-push-in) .framework7-root > .view {
  border-radius: var(--f7-sheet-push-border-radius);
  transform: translate3d(0, 0, 0px) scale(var(--f7-sheet-push-scale, 1)) !important;
}

html:has(.sheet-modal-push-closing).dark .framework7-root > .views:after,
html:has(.sheet-modal-push-closing).dark .framework7-root > .view:after,
html:has(.sheet-modal-push-closing) .dark .framework7-root > .views:after,
html:has(.sheet-modal-push-closing) .dark .framework7-root > .view:after,
html:has(.sheet-modal-push-closing) .dark.framework7-root > .views:after,
html:has(.sheet-modal-push-closing) .dark.framework7-root > .view:after,
html:has(.sheet-modal-push-closing) .framework7-root > .views.dark:after,
html:has(.sheet-modal-push-closing) .framework7-root > .view.dark:after {
  opacity: 0;
  animation: none;
}

@keyframes sheet-dark-push-overlay-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.ios .sheet-modal {
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

.ios .sheet-modal .toolbar {
  position: absolute;
}

.ios:not(.device-ios) .sheet-modal .toolbar::before {
  display: none;
}

.md .sheet-modal .toolbar {
  --f7-safe-area-bottom: 0px;
  position: relative;
  width: 100%;
}

.md .sheet-modal .toolbar:after,
.md .sheet-modal .toolbar:before {
  display: none;
}

.md .sheet-modal .toolbar + .sheet-modal-inner {
  height: calc(100% - var(--f7-toolbar-height));
}

.md .sheet-modal .toolbar + .sheet-modal-inner .page-content {
  --f7-page-toolbar-top-offset: 0px;
  --f7-page-toolbar-bottom-offset: 0px;
}

.md .sheet-modal .toolbar a.link:not(.tab-link) {
  flex-shrink: 0;
}

/* === Toast === */

:root {
  --f7-toast-font-size: 14px;
  --f7-toast-icon-size: 48px;
  --f7-toast-max-width: 568px;
}

.ios {
  --f7-toast-bg-color: var(--f7-glass-bg-color);
  --f7-toast-padding-horizontal: 16px;
  --f7-toast-padding-vertical: 12px;
  --f7-toast-border-radius: 32px;
  --f7-toast-button-min-width: 64px;
}

.md {
  --f7-toast-padding-horizontal: 24px;
  --f7-toast-padding-vertical: 14px;
  --f7-toast-border-radius: 16px;
  --f7-toast-button-min-width: 64px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-toast-text-color: var(--f7-md-on-surface);
  --f7-toast-bg-color: var(--f7-md-surface-5);
}

.toast {
  transition-property: transform, opacity;
  position: absolute;
  max-width: var(--f7-toast-max-width);
  z-index: 20000;
  color: var(--f7-toast-text-color);
  font-size: var(--f7-toast-font-size);
  box-sizing: border-box;
  background-color: var(--f7-toast-bg-color);
  opacity: 0;
}

.toast.modal-in {
  opacity: 1;
}

.toast .toast-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
  padding: var(--f7-toast-padding-vertical) var(--f7-toast-padding-horizontal);
}

.toast .toast-text {
  line-height: 20px;
  flex-shrink: 1;
  min-width: 0;
}

.toast .toast-button {
  flex-shrink: 0;
  min-width: var(--f7-toast-button-min-width);
  margin-top: -8px;
  margin-bottom: -8px;
  width: auto;
}

.toast.toast-with-icon .toast-content {
  display: block;
  text-align: center;
}

.toast.toast-with-icon .toast-text {
  text-align: center;
}

.toast.toast-with-icon .toast-icon .f7-icons,
.toast.toast-with-icon .toast-icon .material-icons {
  font-size: var(--f7-toast-icon-size);
}

.toast.toast-center {
  top: 50%;
}

.toast.toast-top {
  margin-top: var(--f7-safe-area-top);
}

.ios .toast {
  transition-duration: 300ms;
  width: 100%;
  left: 0;
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow);
}

.ios .toast.toast-top {
  top: 0;
  transform: translate3d(0, -100%, 0);
}

.ios .toast.toast-top.modal-in {
  transform: translate3d(0, 0%, 0);
}

.ios .toast.toast-center {
  width: auto;
  left: 50%;
  border-radius: var(--f7-toast-border-radius);
  transform: translate3d(-50%, -50%, 0);
}

.ios .toast.toast-center.modal-in {
  transform: translate3d(-50%, -50%, 0);
}

.ios .toast.toast-bottom {
  bottom: 0;
  transform: translate3d(0, 100%, 0);
}

.ios .toast.toast-bottom.modal-in {
  transform: translate3d(0, 0%, 0);
}

@media (max-width: 568px) {
  .ios .toast.toast-top {
    margin-top: 0;
  }

  .ios .toast.toast-top .toast-content {
    padding-top: calc(var(--f7-toast-padding-vertical) + var(--f7-safe-area-top));
  }

  .ios .toast.toast-bottom .toast-content {
    padding-bottom: calc(var(--f7-toast-padding-vertical) + var(--f7-safe-area-bottom));
  }
}

@media (min-width: 569px) {
  .ios .toast {
    left: 50%;
    margin-left: calc(-1 * var(--f7-toast-max-width) / 2);
    border-radius: var(--f7-toast-border-radius);
  }

  .ios .toast.toast-top {
    top: 16px;
  }

  .ios .toast.toast-center {
    margin-left: 0;
  }

  .ios .toast.toast-bottom {
    margin-bottom: calc(16px + var(--f7-safe-area-bottom));
  }
}

@media (min-width: 1024px) {
  .ios .toast {
    margin-left: 0;
    width: auto;
  }

  .ios .toast.toast-horizontal-left {
    left: 16px;
  }

  .ios .toast.toast-horizontal-right {
    left: auto;
    right: 16px;
  }

  .ios .toast.toast-horizontal-center {
    left: 50%;
    width: var(--f7-toast-max-width);
    margin-left: calc(-1 * var(--f7-toast-max-width) / 2);
  }
}

.ios .toast-button {
  margin-left: 16px;
  margin-right: calc(-1 * var(--f7-button-padding-horizontal));
}

.md .toast {
  transition-duration: 200ms;
  border-radius: var(--f7-toast-border-radius);
  width: calc(100% - 16px);
  transform: scale(0.9);
  left: 8px;
}

.md .toast.modal-in {
  transform: scale(1);
}

.md .toast.modal-out {
  transform: scale(1);
}

.md .toast.toast-top {
  top: 8px;
}

.md .toast.toast-center {
  left: 50%;
  width: auto;
  transform: scale(0.9) translate3d(-55%, -55%, 0);
}

.md .toast.toast-center.modal-in {
  transform: scale(1) translate3d(-50%, -50%, 0);
}

.md .toast.toast-center.modal-out {
  transform: scale(1) translate3d(-50%, -50%, 0);
}

.md .toast.toast-bottom {
  bottom: calc(8px + var(--f7-safe-area-bottom));
}

@media (min-width: 584px) {
  .md .toast {
    left: 50%;
    margin-left: calc(-1 * var(--f7-toast-max-width) / 2);
  }

  .md .toast.toast-center {
    margin-left: 0;
  }
}

@media (min-width: 1024px) {
  .md .toast {
    margin-left: 0;
    width: auto;
  }

  .md .toast.toast-horizontal-left {
    left: 24px;
  }

  .md .toast.toast-horizontal-right {
    left: auto;
    right: 24px;
  }

  .md .toast.toast-horizontal-center {
    left: 50%;
    width: var(--f7-toast-max-width);
    margin-left: calc(-1 * var(--f7-toast-max-width) / 2);
  }

  .md .toast.toast-bottom {
    bottom: calc(24px + var(--f7-safe-area-bottom));
  }

  .md .toast.toast-top {
    top: 24px;
  }
}

.md .toast-button {
  margin-left: 16px;
  margin-right: -8px;
}

/* === Preloader === */

:root {
  --f7-preloader-modal-padding: 8px;
  --f7-preloader-modal-bg-color: rgba(0, 0, 0, 0.8);
}

.ios {
  --f7-preloader-color: #6c6c6c;
  --f7-preloader-size: 20px;
  --f7-preloader-modal-preloader-size: 34px;
  --f7-preloader-modal-border-radius: 5px;
}

.md {
  --f7-preloader-color: #757575;
  --f7-preloader-size: 32px;
  --f7-preloader-modal-preloader-size: 32px;
  --f7-preloader-modal-border-radius: 4px;
}

.preloader {
  display: inline-block;
  vertical-align: middle;
  width: var(--f7-preloader-size);
  height: var(--f7-preloader-size);
  font-size: 0;
  position: relative;
}

.preloader .preloader-inner {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

/* === Preloader Modal === */

.preloader-backdrop {
  visibility: visible;
  opacity: 0;
  background: none;
  z-index: 14000;
}

.preloader-modal {
  position: absolute;
  left: 50%;
  top: 50%;
  padding: var(--f7-preloader-modal-padding);
  background: var(--f7-preloader-modal-bg-color);
  z-index: 14500;
  transform: translateX(-50%) translateY(-50%);
  border-radius: var(--f7-preloader-modal-border-radius);
}

.preloader-modal .preloader {
  --f7-preloader-size: var(--f7-preloader-modal-preloader-size);
  display: block !important;
}

html.with-modal-preloader .page-content,
.with-modal-preloader .page-content,
.with-modal-preloader.page-content {
  overflow: hidden;
  -webkit-overflow-scrolling: auto;
}

.preloader[class*='color-'] {
  --f7-preloader-color: var(--f7-theme-color);
}

.preloader.color-white {
  --f7-preloader-color: #fff;
}

.preloader.color-black {
  --f7-preloader-color: #000;
}

.ios .preloader {
  color: var(--f7-preloader-color);
}

.ios .preloader-inner {
  animation: ios-preloader-spin 1s steps(8, end) infinite;
}

.ios .preloader-inner-line {
  display: block;
  width: 11.6%;
  height: 33.33%;
  border-radius: 100px;
  background: currentColor;
  position: absolute;
  left: 50%;
  top: 50%;
  transform-origin: center 150%;
}

.ios .preloader-multi-color .preloader-inner-line,
.ios .preloader.color-multi .preloader-inner-line {
  animation: ios-preloader-multicolor 3s linear infinite;
}

.ios .preloader-inner-line:nth-child(1) {
  transform: translate(-50%, -150%) rotate(0deg);
  opacity: 0.27;
}

.ios .preloader-inner-line:nth-child(2) {
  transform: translate(-50%, -150%) rotate(45deg);
  opacity: 0.35285714;
}

.ios .preloader-inner-line:nth-child(3) {
  transform: translate(-50%, -150%) rotate(90deg);
  opacity: 0.43571429;
}

.ios .preloader-inner-line:nth-child(4) {
  transform: translate(-50%, -150%) rotate(135deg);
  opacity: 0.51857143;
}

.ios .preloader-inner-line:nth-child(5) {
  transform: translate(-50%, -150%) rotate(180deg);
  opacity: 0.60142857;
}

.ios .preloader-inner-line:nth-child(6) {
  transform: translate(-50%, -150%) rotate(225deg);
  opacity: 0.68428571;
}

.ios .preloader-inner-line:nth-child(7) {
  transform: translate(-50%, -150%) rotate(270deg);
  opacity: 0.76714286;
}

.ios .preloader-inner-line:nth-child(8) {
  transform: translate(-50%, -150%) rotate(315deg);
  opacity: 0.85;
}

@keyframes ios-preloader-spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes ios-preloader-multicolor {
  0%,
  100% {
    background-color: #2196f3;
  }

  25% {
    background-color: #ff3b30;
  }

  50% {
    background-color: #4cd964;
  }

  75% {
    background-color: #ff9500;
  }
}

.md .preloader {
  color: var(--f7-preloader-color);
}

.md .preloader-inner {
  animation: md-preloader-rotate 1.4s linear infinite;
}

.md .preloader-inner circle {
  fill: none;
  stroke: currentColor;
  animation: md-preloader-circle-rotate 5.6s ease-in-out infinite;
  stroke-dasharray: 100px;
  stroke-dashoffset: 80px;
  stroke-width: 4;
  transform: rotate(-90deg);
  transform-origin: 18px 18px;
}

.md .preloader-multi-color circle,
.md .preloader.color-multi circle {
  animation: md-preloader-circle-rotate 5.6s ease-in-out infinite, md-preloader-multicolor 5.6s ease-in-out infinite;
}

@keyframes md-preloader-multicolor {
  0%,
  100% {
    stroke: #4285f4;
  }

  75% {
    stroke: #1b9a59;
  }

  50% {
    stroke: #f7c223;
  }

  25% {
    stroke: #de3e35;
  }
}

@keyframes md-preloader-rotate {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes md-preloader-circle-rotate {
  0% {
    transform: rotate(-90deg);
    stroke-dashoffset: 100px;
  }

  12.5% {
    transform: rotate(-90deg);
    stroke-dashoffset: 25px;
  }

  25% {
    stroke-dashoffset: 100px;
    transform: rotate(180deg);
  }

  25.1% {
    transform: rotate(-180deg);
    stroke-dashoffset: 100px;
  }

  37.5% {
    transform: rotate(-180deg);
    stroke-dashoffset: 25px;
  }

  50% {
    stroke-dashoffset: 100px;
    transform: rotate(90deg);
  }

  50.1% {
    transform: rotate(90deg);
    stroke-dashoffset: 100px;
  }

  62.5% {
    transform: rotate(90deg);
    stroke-dashoffset: 25px;
  }

  75% {
    stroke-dashoffset: 100px;
    transform: rotate(360deg);
  }

  75.1% {
    transform: rotate(0deg);
    stroke-dashoffset: 100px;
  }

  87.5% {
    transform: rotate(0deg);
    stroke-dashoffset: 25px;
  }

  100% {
    stroke-dashoffset: 100px;
    transform: rotate(270deg);
  }
}

/* === Progressbar === */

:root {
  /*
  --f7-progressbar-progress-color: var(--f7-theme-color);
  */
}

.ios {
  --f7-progressbar-height: 6px;
  --f7-progressbar-border-radius: 16px;
  --f7-progressbar-bg-color: rgba(0, 0, 0, 0.1);
}

.ios .dark,
.ios.dark {
  --f7-progressbar-bg-color: rgba(255, 255, 255, 0.3);
}

.md {
  --f7-progressbar-height: 4px;
  --f7-progressbar-border-radius: 4px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-progressbar-bg-color: var(--f7-md-secondary-container);
}

.progressbar,
.progressbar-infinite {
  width: 100%;
  overflow: hidden;
  position: relative;
  display: block;
  transform-style: preserve-3d;
  background: var(--f7-progressbar-bg-color, rgba(var(--f7-theme-color-rgb), 0.5));
  transform-origin: center top;
  height: var(--f7-progressbar-height);
  border-radius: var(--f7-progressbar-border-radius);
}

.progressbar {
  vertical-align: middle;
}

.progressbar span {
  border-radius: inherit;
  background-color: var(--f7-progressbar-progress-color, var(--f7-theme-color));
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  transition-duration: 150ms;
  left: 0;
  transform: translate3d(-100%, 0, 0);
}

.progressbar-infinite {
  z-index: 15000;
}

.progressbar-infinite:before,
.progressbar-infinite:after {
  content: '';
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  transform: translate3d(0, 0, 0);
  display: block;
  background-color: var(--f7-progressbar-progress-color, var(--f7-theme-color));
  left: 0;
  transform-origin: left center;
}

.progressbar-infinite.color-multi {
  background: none !important;
}

.progressbar-in {
  animation: progressbar-in 150ms forwards;
}

.progressbar-out {
  animation: progressbar-out 150ms forwards;
}

body > .progressbar,
.view > .progressbar,
.views > .progressbar,
.page > .progressbar,
.panel > .progressbar,
.popup > .progressbar,
.framework7-root > .progressbar,
body > .progressbar-infinite,
.view > .progressbar-infinite,
.views > .progressbar-infinite,
.page > .progressbar-infinite,
.panel > .progressbar-infinite,
.popup > .progressbar-infinite,
.framework7-root > .progressbar-infinite {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 15000;
  border-radius: 0 !important;
  transform-origin: center top !important;
}

body > .progressbar::after,
.view > .progressbar::after,
.views > .progressbar::after,
.page > .progressbar::after,
.panel > .progressbar::after,
.popup > .progressbar::after,
.framework7-root > .progressbar::after {
  display: none;
}

@keyframes progressbar-in {
  from {
    opacity: 0;
    transform: scaleY(0);
  }

  to {
    opacity: 1;
    transform: scaleY(1);
  }
}

@keyframes progressbar-out {
  from {
    opacity: 1;
    transform: scaleY(1);
  }

  to {
    opacity: 0;
    transform: scaleY(0);
  }
}

.ios .progressbar-infinite:before {
  animation: ios-progressbar-infinite 1s linear infinite;
}

.ios .progressbar-infinite:after {
  display: none;
}

.ios .progressbar-infinite.color-multi:before {
  width: 400%;
  background-image: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55, #5856d6, #34aadc, #007aff, #5ac8fa, #4cd964);
  background-size: 25% 100%;
  background-repeat: repeat-x;
  animation: ios-progressbar-infinite-multicolor 3s linear infinite;
}

@keyframes ios-progressbar-infinite {
  0% {
    transform: translate3d(-100%, 0, 0);
  }

  100% {
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes ios-progressbar-infinite-multicolor {
  0% {
    transform: translate3d(0%, 0, 0);
  }

  100% {
    transform: translate3d(-50%, 0, 0);
  }
}

.md .progressbar:not(.progressbar-infinite)::after {
  content: '';
  position: absolute;
  width: var(--f7-progressbar-height);
  height: var(--f7-progressbar-height);
  border-radius: var(--f7-progressbar-border-radius);
  right: 0;
  top: 0;
  background: var(--f7-progressbar-progress-color, var(--f7-theme-color));
}

.md .progressbar-infinite:before {
  animation: md-progressbar-infinite-1 2s linear infinite;
}

.md .progressbar-infinite:after {
  animation: md-progressbar-infinite-2 2s linear infinite;
}

.md .progressbar-infinite.color-multi:before {
  background: none;
  animation: md-progressbar-infinite-multicolor-bg 3s step-end infinite;
}

.md .progressbar-infinite.color-multi:after {
  background: none;
  animation: md-progressbar-infinite-multicolor-fill 3s linear infinite;
  transform-origin: center center;
}

@keyframes md-progressbar-infinite-1 {
  0% {
    transform: translateX(-10%) scaleX(0.1);
  }

  25% {
    transform: translateX(30%) scaleX(0.6);
  }

  50% {
    transform: translateX(100%) scaleX(1);
  }

  100% {
    transform: translateX(100%) scaleX(1);
  }
}

@keyframes md-progressbar-infinite-2 {
  0% {
    transform: translateX(-100%) scaleX(1);
  }

  40% {
    transform: translateX(-100%) scaleX(1);
  }

  75% {
    transform: translateX(60%) scaleX(0.35);
  }

  90% {
    transform: translateX(100%) scaleX(0.1);
  }

  100% {
    transform: translateX(100%) scaleX(0.1);
  }
}

@keyframes md-progressbar-infinite-multicolor-bg {
  0% {
    background-color: #4caf50;
  }

  25% {
    background-color: #f44336;
  }

  50% {
    background-color: #2196f3;
  }

  75% {
    background-color: #ffeb3b;
  }
}

@keyframes md-progressbar-infinite-multicolor-fill {
  0% {
    transform: scaleX(0);
    background-color: #f44336;
  }

  24.9% {
    transform: scaleX(1);
    background-color: #f44336;
  }

  25% {
    transform: scaleX(0);
    background-color: #2196f3;
  }

  49.9% {
    transform: scaleX(1);
    background-color: #2196f3;
  }

  50% {
    transform: scaleX(0);
    background-color: #ffeb3b;
  }

  74.9% {
    transform: scaleX(1);
    background-color: #ffeb3b;
  }

  75% {
    transform: scaleX(0);
    background-color: #4caf50;
  }

  100% {
    transform: scaleX(1);
    background-color: #4caf50;
  }
}

/* === Sortable === */

.ios {
  --f7-sortable-handler-width: 36px;
  --f7-sortable-sorting-item-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.6);
  --f7-sortable-handler-color: rgba(0, 0, 0, 0.22);
  --f7-sortable-sorting-item-bg-color: rgba(255, 255, 255, 0.8);
}

.ios .dark,
.ios.dark {
  --f7-sortable-sorting-item-bg-color: rgba(50, 50, 50, 0.8);
  --f7-sortable-handler-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-sortable-handler-width: 42px;
  --f7-sortable-sorting-item-box-shadow: none;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-sortable-handler-color: var(--f7-md-on-surface-variant);
  --f7-sortable-sorting-item-bg-color: var(--f7-md-surface-3);
}

.sortable .sortable-handler {
  width: var(--f7-sortable-handler-width);
  height: 100%;
  position: absolute;
  top: 0;
  z-index: 10;
  opacity: 0;
  pointer-events: none;
  cursor: move;
  transition-duration: 300ms;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  right: var(--f7-safe-area-right);
}

.sortable .sortable-handler:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  transition-duration: 300ms;
  transform: translateX(10px);
  color: var(--f7-sortable-handler-color);
  overflow: hidden;
  height: 20px;
  width: 18px;
}

.sortable li.sorting {
  z-index: 50;
  background: var(--f7-sortable-sorting-item-bg-color);
  transition-duration: 0ms;
  box-shadow: var(--f7-sortable-sorting-item-box-shadow);
}

.sortable li.sorting .item-inner:after {
  display: none !important;
}

.sortable-opposite .sortable-handler {
  left: var(--f7-safe-area-right);
  right: auto;
}

.sortable-opposite .sortable-handler:after {
  transform: translateX(-10px);
}

.sortable:not(.sortable-opposite) .item-inner,
.sortable-opposite .item-content,
.sortable.simple-list li,
.sortable-opposite.links-list li a {
  transition-duration: 300ms;
  transition-property: all;
}

.sortable-sorting li {
  transition-duration: 300ms;
}

.sortable-enabled li:not(.no-sorting):not(.disallow-sorting) .sortable-handler {
  pointer-events: auto;
  touch-action: none;
  opacity: 1;
}

.sortable-enabled li:not(.no-sorting):not(.disallow-sorting) .sortable-handler:after {
  transform: translateX(0px);
}

.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-link .item-inner:before,
.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-link .item-title-row:before,
.sortable-enabled:not(.sortable-opposite).links-list li:not(.no-sorting):not(.disallow-sorting) > a:before {
  display: none;
}

.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-inner,
.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-link .item-inner,
.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-link.no-chevron .item-inner,
.sortable-enabled.no-chevron:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-link .item-inner,
.sortable-enabled :not(.sortable-opposite).no-chevron .item-link .item-inner,
.no-chevron .sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) .item-link .item-inner,
.simple-list.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting),
.links-list.sortable-enabled:not(.sortable-opposite) li:not(.no-sorting):not(.disallow-sorting) a {
  padding-right: calc(var(--f7-sortable-handler-width) + var(--f7-safe-area-right));
}

.sortable-opposite.sortable-enabled li:not(.no-sorting):not(.disallow-sorting) .item-content,
.simple-list.sortable-opposite.sortable-enabled li:not(.no-sorting):not(.disallow-sorting),
.links-list.sortable-opposite.sortable-enabled li:not(.no-sorting):not(.disallow-sorting) a {
  padding-left: calc(var(--f7-sortable-handler-width) + var(--f7-safe-area-right));
}

.ios .sortable-handler:after {
  content: 'sort_ios';
}

.md .sortable-handler:after {
  content: 'sort_md';
}

/* === Swipeout === */

:root {
  --f7-swipeout-delete-button-bg-color: #ff3b30;
  --f7-swipeout-button-text-color: #fff;
  --f7-swipeout-button-bg-color: rgba(0, 0, 0, 0.22);
}

:root .dark,
:root.dark {
  --f7-swipeout-button-bg-color: rgba(255, 255, 255, 0.55);
}

.ios {
  --f7-swipeout-button-border-radius: 48px;
  --f7-swipeout-button-padding-vertical: 10px;
  --f7-swipeout-button-padding-horizontal: 16px;
  --f7-swipeout-button-font-size: inherit;
  --f7-swipeout-button-font-weight: inherit;
  --f7-swipeout-active-border-radius: 16px;
  --f7-swipeout-active-bg-color: #eee;
}

.ios .dark,
.ios.dark {
  --f7-swipeout-active-bg-color: #2c2c2e;
}

.md {
  --f7-swipeout-button-border-radius: 0px;
  --f7-swipeout-button-padding-vertical: 0px;
  --f7-swipeout-button-padding-horizontal: 24px;
  --f7-swipeout-button-font-size: 14px;
  --f7-swipeout-button-font-weight: 500;
}

.md .dark,
.md.dark {
  --f7-swipeout-button-text-color: #000;
}

.swipeout {
  overflow: hidden;
  transform-style: preserve-3d;
}

.swipeout-deleting {
  transition-duration: 300ms;
}

.swipeout-deleting .swipeout-content {
  transform: translateX(-100%);
}

.swipeout-transitioning .swipeout-content,
.swipeout-transitioning .swipeout-content .item-inner::after {
  transition-duration: 300ms;
  transition-property: transform, left, background-color, border-radius, opacity;
}

.swipeout-transitioning .swipeout-actions-right a,
.swipeout-transitioning .swipeout-actions-left a,
.swipeout-transitioning .swipeout-overswipe {
  transition-duration: 300ms;
  transition-property: transform, left, width, margin-left, margin-right;
}

.swipeout-transitioning:not(.swipeout-opened) .swipeout-content {
  transition-delay: 0ms, 0ms, 300ms, 300ms, 0ms;
}

.list li:has( + li:is(.swipeout-opened, .swipeout-active)) .item-inner::after {
  opacity: 0;
  transition-duration: 300ms;
}

.swipeout-content {
  position: relative;
  z-index: 10;
}

.swipeout-overswipe {
  transition-duration: 200ms;
}

.swipeout-actions-left,
.swipeout-actions-right {
  position: absolute;
  top: 0;
  height: 100%;
  display: flex;
  direction: ltr;
}

.swipeout-actions-left > a,
.swipeout-actions-right > a,
.swipeout-actions-left > button,
.swipeout-actions-right > button,
.swipeout-actions-left > span,
.swipeout-actions-right > span,
.swipeout-actions-left > div,
.swipeout-actions-right > div {
  box-sizing: border-box;
  border-radius: var(--f7-swipeout-button-border-radius);
  color: var(--f7-swipeout-button-text-color);
  background: var(--f7-swipeout-button-bg-color);
  padding: var(--f7-swipeout-button-padding-vertical) var(--f7-swipeout-button-padding-horizontal);
  display: flex;
  align-items: center;
  position: relative;
  left: 0;
  font-size: var(--f7-swipeout-button-font-size);
  font-weight: var(--f7-swipeout-button-font-weight);
}

.swipeout-actions-left .swipeout-delete,
.swipeout-actions-right .swipeout-delete {
  background: var(--f7-swipeout-delete-button-bg-color);
}

.swipeout-actions-left [class*='color-'],
.swipeout-actions-right [class*='color-'] {
  --f7-swipeout-button-bg-color: var(--f7-theme-color);
}

.ios .swipeout-actions-right {
  right: 0%;
}

.ios .swipeout-actions-left {
  left: 0%;
}

.ios .swipeout-actions-left,
.ios .swipeout-actions-right {
  padding: 0 10px;
  gap: 10px;
  align-items: center;
}

.ios .swipeout-actions-left > a,
.ios .swipeout-actions-right > a,
.ios .swipeout-actions-left > button,
.ios .swipeout-actions-right > button,
.ios .swipeout-actions-left > span,
.ios .swipeout-actions-right > span,
.ios .swipeout-actions-left > div,
.ios .swipeout-actions-right > div {
  transform: scale(0);
  padding: var(--f7-swipeout-button-padding-vertical) var(--f7-swipeout-button-padding-horizontal);
}

.ios .swipeout-opened .swipeout-content,
.ios .swipeout-active .swipeout-content {
  background-color: var(--f7-swipeout-active-bg-color);
  border-radius: var(--f7-swipeout-active-border-radius);
}

.ios .swipeout-opened .item-content,
.ios .swipeout-active .item-content {
  border-radius: var(--f7-swipeout-active-border-radius);
}

.ios .swipeout-opened .swipeout-content .item-inner::after,
.ios .swipeout-active .swipeout-content .item-inner::after {
  opacity: 0;
}

.ios .swipeout-overswipe {
  transition-duration: 200ms;
  transition-property: transform, left, width, margin-left, margin-right;
}

.md .swipeout-actions-left > a:after,
.md .swipeout-actions-right > a:after,
.md .swipeout-actions-left > button:after,
.md .swipeout-actions-right > button:after,
.md .swipeout-actions-left > span:after,
.md .swipeout-actions-right > span:after,
.md .swipeout-actions-left > div:after,
.md .swipeout-actions-right > div:after {
  content: '';
  position: absolute;
  top: 0;
  width: 600%;
  height: 100%;
  background: inherit;
  z-index: -1;
  transform: translate3d(0, 0, 0);
  pointer-events: none;
}

.md .swipeout-actions-right {
  right: 0%;
  transform: translateX(calc(100% + 1px));
}

.md .swipeout-actions-right > a:after,
.md .swipeout-actions-right > button:after,
.md .swipeout-actions-right > span:after,
.md .swipeout-actions-right > div:after {
  left: 100%;
}

.md .swipeout-actions-right > a:last-child,
.md .swipeout-actions-right > button:last-child,
.md .swipeout-actions-right > span:last-child,
.md .swipeout-actions-right > div:last-child {
  padding-right: calc(var(--f7-swipeout-button-padding-horizontal) + var(--f7-safe-area-right));
}

.md .swipeout-actions-left {
  left: 0%;
  transform: translateX(calc(-100% - 1px));
}

.md .swipeout-actions-left > a:after,
.md .swipeout-actions-left > button:after,
.md .swipeout-actions-left > span:after,
.md .swipeout-actions-left > div:after {
  right: 100%;
}

.md .swipeout-actions-left > a:first-child,
.md .swipeout-actions-left > button:first-child,
.md .swipeout-actions-left > span:first-child,
.md .swipeout-actions-left > div:first-child {
  padding-left: calc(var(--f7-swipeout-button-padding-horizontal) + var(--f7-safe-area-left));
}

.md .swipeout-overswipe {
  transition-property: left;
}

/* === Accordion === */

:root {
  --f7-accordion-chevron-icon-down: 'chevron_down';
  --f7-accordion-chevron-icon-up: 'chevron_up';
}

.accordion-item-toggle {
  cursor: pointer;
}

.list.accordion-list .accordion-item-toggle {
  transition-duration: 300ms;
  position: relative;
  overflow: hidden;
}

.list.accordion-list .accordion-item-toggle.active-state {
  transition-duration: 300ms;
  background-color: var(--f7-list-link-pressed-bg-color);
}

.list.accordion-list .accordion-item-toggle.active-state > .item-inner:after {
  background-color: transparent;
}

.list.accordion-list .accordion-item-toggle .item-inner {
  transition-duration: 300ms;
  transition-property: background-color;
}

.list.accordion-list .accordion-item-toggle .item-inner:after {
  transition-duration: 300ms;
}

.list.accordion-list .accordion-item-toggle .ripple-wave {
  z-index: 0;
}

.accordion-item .item-link .item-inner:after {
  transition-duration: 300ms;
}

.accordion-item .list,
.accordion-item .block {
  margin-top: 0;
  margin-bottom: 0;
}

.accordion-item .block > h1:first-child,
.accordion-item .block > h2:first-child,
.accordion-item .block > h3:first-child,
.accordion-item .block > h4:first-child,
.accordion-item .block > p:first-child {
  margin-top: 10px;
}

.accordion-item .block > h1:last-child,
.accordion-item .block > h2:last-child,
.accordion-item .block > h3:last-child,
.accordion-item .block > h4:last-child,
.accordion-item .block > p:last-child {
  margin-bottom: 10px;
}

.accordion-item-opened .accordion-item-toggle .item-inner:after,
.accordion-item-opened > .item-link .item-inner:after {
  background-color: transparent;
}

.list li.accordion-item ul {
  padding-left: 0;
}

.accordion-item-content {
  position: relative;
  overflow: hidden;
  height: 0;
  font-size: 14px;
  transition-duration: 300ms;
}

.accordion-item-opened > .accordion-item-content {
  height: auto;
}

html.device-android-4 .accordion-item-content {
  transform: none;
}

.list .accordion-item-toggle .item-inner:before {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  position: absolute;
  top: 50%;
  font-size: var(--f7-list-chevron-icon-font-size);
  color: var(--f7-list-chevron-icon-color);
  pointer-events: none;
  right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.list:not(.accordion-opposite) .accordion-item-toggle .item-inner {
  padding-right: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.accordion-opposite .accordion-item-toggle.item-link .item-inner,
.accordion-opposite .accordion-item-toggle .item-inner,
.accordion-opposite .accordion-item > .item-link > .item-inner,
.accordion-opposite .accordion-item > .item-link > .item-content > .item-inner {
  padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right));
}

.accordion-opposite .accordion-item > .item-link > .item-title-row {
  padding-right: 0;
}

.accordion-opposite .accordion-item-toggle.item-link .item-inner:before,
.accordion-opposite .accordion-item-toggle .item-inner:before,
.accordion-opposite .accordion-item > .item-link > .item-inner:before,
.accordion-opposite .accordion-item > .item-link > .item-content > .item-inner:before,
.accordion-opposite .accordion-item > .item-link .item-title-row:before {
  display: none;
}

.accordion-opposite .accordion-item-toggle > .item-content,
.accordion-opposite .accordion-item-toggle.item-content,
.accordion-opposite .accordion-item > .item-content,
.accordion-opposite .accordion-item > .item-link > .item-content,
.accordion-opposite.links-list .accordion-item > a {
  position: relative;
  padding-left: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left));
}

.accordion-opposite .accordion-item-toggle > .item-content:before,
.accordion-opposite .accordion-item-toggle.item-content:before,
.accordion-opposite .accordion-item > .item-content:before,
.accordion-opposite .accordion-item > .item-link > .item-content:before,
.accordion-opposite.links-list .accordion-item > a:before {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  position: absolute;
  top: 50%;
  font-size: var(--f7-list-chevron-icon-font-size);
  color: var(--f7-list-chevron-icon-color);
  pointer-events: none;
  content: var(--f7-accordion-chevron-icon-down);
  width: 14px;
  height: 8px;
  margin-top: -4px;
  line-height: 8px;
  transform: translateX(-50%);
  left: calc((var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal)) / 2 + var(--f7-safe-area-left));
}

.list .accordion-item-toggle.active-state {
  background-color: var(--f7-list-link-pressed-bg-color);
}

.list .accordion-item-toggle .item-inner:before,
.list:not(.media-list) .accordion-item:not(.media-item) .accordion-item-toggle .item-inner:before,
.list:not(.media-list) .accordion-item:not(.media-item) > .item-link .item-inner:before,
.media-list .accordion-item .accordion-item-toggle .item-title-row:before,
.media-list .accordion-item > .item-link .item-title-row:before,
.accordion-item.media-item .accordion-item-toggle .item-title-row:before,
.accordion-item.media-item > .item-link .item-title-row:before,
.links-list .accordion-item > a:before {
  content: var(--f7-accordion-chevron-icon-down);
  width: 14px;
  height: 8px;
  margin-top: -4px;
  line-height: 8px;
}

.list .accordion-item-toggle.accordion-item-opened .item-inner:before,
.list:not(.media-list) .accordion-item-opened:not(.media-item) .accordion-item-toggle .item-inner:before,
.list:not(.media-list) .accordion-item-opened:not(.media-item) > .item-link .item-inner:before,
.media-list .accordion-item-opened .accordion-item-toggle .item-title-row:before,
.media-list .accordion-item-opened > .item-link .item-title-row:before,
.accordion-item-opened.media-item .accordion-item-toggle .item-title-row:before,
.accordion-item-opened.media-item > .item-link .item-title-row:before,
.links-list .accordion-item-opened > a:before,
.accordion-opposite .accordion-item-opened .accordion-item-toggle > .item-content:before,
.accordion-opposite .accordion-item-opened .accordion-item-toggle.item-content:before,
.accordion-opposite .accordion-item-opened > .item-content:before,
.accordion-opposite .accordion-item-opened > .item-link > .item-content:before,
.accordion-opposite .links-list .accordion-item-opened > a:before {
  content: var(--f7-accordion-chevron-icon-up);
  width: 14px;
  height: 8px;
  margin-top: -4px;
  line-height: 8px;
}

/* === Contacts === */

.ios {
  --f7-contacts-list-title-font-size: inherit;
  --f7-contacts-list-title-font-weight: 600;
  --f7-contacts-list-title-height: 22px;
  --f7-contacts-list-title-text-color: #000;
  --f7-contacts-list-title-bg-color: #f7f7f7;
}

.ios .dark,
.ios.dark {
  --f7-contacts-list-title-text-color: #fff;
  --f7-contacts-list-title-bg-color: #323234;
}

.md {
  --f7-contacts-list-title-font-size: 20px;
  --f7-contacts-list-title-font-weight: 500;
  --f7-contacts-list-title-height: 48px;
  --f7-contacts-list-title-bg-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-contacts-list-title-text-color: var(--f7-theme-color);
}

.contacts-list {
  --f7-list-margin-vertical: 0px;
}

.contacts-list .list-group-title,
.contacts-list li.list-group-title {
  background-color: var(--f7-contacts-list-title-bg-color, var(--f7-list-group-title-bg-color));
  font-weight: var(--f7-contacts-list-title-font-weight, var(--f7-list-group-title-font-weight));
  font-size: var(--f7-contacts-list-title-font-size, var(--f7-list-group-title-font-size));
  color: var(--f7-contacts-list-title-text-color, var(--f7-theme-color));
  line-height: var(--f7-contacts-list-title-height, var(--f7-list-group-title-height));
  height: var(--f7-contacts-list-title-height, var(--f7-list-group-title-height));
}

.contacts-list .list-group:first-child ul:before {
  display: none !important;
}

.contacts-list .list-group:last-child ul:after {
  display: none !important;
}

.md .contacts-list .list-group-title {
  pointer-events: none;
  overflow: visible;
  width: 40px;
}

.md .contacts-list .list-group-title + li {
  margin-top: calc(var(--f7-contacts-list-title-height) * -1);
}

.md .contacts-list .list-group-title:before {
  display: none !important;
}

.md .contacts-list li:not(.list-group-title) {
  padding-left: 40px;
}

/* === Virtual List === */

/* === Indexed List === */

:root {
  --f7-list-index-width: 16px;
  --f7-list-index-font-size: 11px;
  --f7-list-index-font-weight: 600;
  /* --f7-list-index-text-color: var(--f7-theme-color); */
  --f7-list-index-item-height: 14px;
  --f7-list-index-label-font-weight: 500;
}

.ios {
  --f7-list-index-label-text-color: #fff;
  /* --f7-list-index-label-bg-color: var(--f7-theme-color); */
  --f7-list-index-label-size: 44px;
  --f7-list-index-label-font-size: 17px;
  --f7-list-index-skip-dot-size: 6px;
}

.md {
  --f7-list-index-label-size: 56px;
  --f7-list-index-label-font-size: 20px;
  --f7-list-index-skip-dot-size: 4px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-list-index-label-bg-color: var(--f7-md-primary);
  --f7-list-index-label-text-color: var(--f7-md-on-primary);
}

.list-index {
  position: absolute;
  top: 0;
  bottom: 0;
  text-align: center;
  z-index: 10;
  width: var(--f7-list-index-width);
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  right: var(--f7-safe-area-right);
}

.list-index:before {
  content: '';
  position: absolute;
  width: 20px;
  top: 0;
  right: 100%;
  height: 100%;
}

.list-index ul {
  color: var(--f7-list-index-text-color, var(--f7-theme-color));
  font-size: var(--f7-list-index-font-size);
  font-weight: var(--f7-list-index-font-weight);
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  height: 100%;
  width: 100%;
  position: relative;
}

.list-index li {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
  height: var(--f7-list-index-item-height);
  line-height: var(--f7-list-index-item-height);
  flex-shrink: 0;
  display: block;
  width: 100%;
}

.list-index .list-index-skip-placeholder:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 50%;
  width: var(--f7-list-index-skip-dot-size);
  height: var(--f7-list-index-skip-dot-size);
  margin-left: calc(-1 * var(--f7-list-index-skip-dot-size) / 2);
  margin-top: calc(-1 * var(--f7-list-index-skip-dot-size) / 2);
  background: var(--f7-list-index-text-color, var(--f7-theme-color));
}

.list-index .list-index-label {
  position: absolute;
  bottom: 0;
  right: 100%;
  text-align: center;
  background-color: var(--f7-list-index-label-bg-color, var(--f7-theme-color));
  color: var(--f7-list-index-label-text-color);
  width: var(--f7-list-index-label-size);
  height: var(--f7-list-index-label-size);
  line-height: var(--f7-list-index-label-size);
  font-size: var(--f7-list-index-label-font-size);
  font-weight: var(--f7-list-index-label-font-weight);
}

.navbar ~ .page > .list-index,
.navbars ~ .page > .list-index,
.navbar ~ .list-index {
  top: var(--f7-navbar-height);
}

.navbar ~ .toolbar-top ~ .list-index,
.navbars ~ .toolbar-top ~ .list-index,
.ios .navbar ~ .toolbar-top-ios ~ .list-index,
.ios .navbars ~ .toolbar-top-ios .md .navbar ~ .toolbar-top-md ~ .list-index {
  top: calc(var(--f7-navbar-height) + var(--f7-toolbar-height));
}

.navbar ~ .toolbar-top.tabbar-icons ~ .list-index,
.navbars ~ .toolbar-top.tabbar-icons ~ .list-index,
.ios .navbar ~ .toolbar-top-ios.tabbar-icons ~ .list-index,
.ios .navbars ~ .toolbar-top-ios .md .navbar ~ .toolbar-top-md.tabbar-icons ~ .list-index {
  top: calc(var(--f7-navbar-height) + var(--f7-tabbar-icons-height));
}

.navbar ~ .subnavbar ~ .list-index,
.navbars ~ .subnavbar ~ .list-index,
.page-with-subnavbar .navbar ~ .list-index {
  top: calc(var(--f7-navbar-height) + var(--f7-subnavbar-height));
}

.toolbar-bottom ~ .page > .list-index,
.ios .toolbar-bottom-ios ~ .page > .list-index,
.md .toolbar-bottom-md ~ .page > .list-index,
.toolbar-bottom ~ * .page > .list-index,
.ios .toolbar-bottom-ios ~ * .page > .list-index,
.md .toolbar-bottom-md ~ * .page > .list-index,
.toolbar-bottom ~ .list-index,
.ios .toolbar-bottom-ios ~ .list-index,
.md .toolbar-bottom-md ~ .list-index {
  bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom));
}

.toolbar-bottom.tabbar-icons ~ .page > .list-index,
.ios .toolbar-bottom-ios.tabbar-icons ~ .page > .list-index,
.md .toolbar-bottom-md.tabbar-icons ~ .page > .list-index,
.toolbar-bottom.tabbar-icons ~ * .page > .list-index,
.ios .toolbar-bottom-ios.tabbar-icons ~ * .page > .list-index,
.md .toolbar-bottom-md.tabbar-icons ~ * .page > .list-index,
.toolbar-bottom.tabbar-icons ~ .list-index,
.ios .toolbar-bottom-ios.tabbar-icons ~ .list-index,
.md .toolbar-bottom-md.tabbar-icons ~ .list-index {
  bottom: calc(var(--f7-tabbar-icons-height) + var(--f7-safe-area-bottom));
}

.ios .list-index .list-index-label {
  margin-bottom: calc(-1 * var(--f7-list-index-label-size) / 2);
  margin-right: calc(var(--f7-list-index-width) - 1px);
  border-radius: 50%;
}

.ios .list-index .list-index-label:before {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50% 0% 50% 50%;
  content: '';
  background-color: inherit;
  left: 0;
  top: 0;
  transform: rotate(45deg);
  z-index: -1;
}

.md .list-index .list-index-label {
  border-radius: 50% 50% 0 50%;
}

/* === Timeline === */

:root {
  --f7-timeline-inner-block-margin-vertical: 16px;
  --f7-timeline-divider-margin-horizontal: 16px;
  --f7-timeline-item-text-font-weight: inherit;
  --f7-timeline-item-subtitle-font-weight: inherit;
}

.ios {
  --f7-timeline-divider-color: #bbb;
  --f7-timeline-padding-horizontal: 16px;
  --f7-timeline-margin-vertical: 35px;
  --f7-timeline-item-inner-border-radius: 24px;
  --f7-timeline-item-time-font-size: 13px;
  --f7-timeline-item-title-font-size: 17px;
  --f7-timeline-item-title-line-height: inherit;
  --f7-timeline-item-title-font-weight: 600;
  --f7-timeline-item-subtitle-font-size: 15px;
  --f7-timeline-item-subtitle-line-height: inherit;
  --f7-timeline-item-text-font-size: inherit;
  --f7-timeline-item-text-color: inherit;
  --f7-timeline-item-text-line-height: inherit;
  --f7-timeline-item-inner-bg-color: #fff;
  --f7-timeline-item-time-text-color: rgba(0, 0, 0, 0.45);
}

.ios .dark,
.ios.dark {
  --f7-timeline-item-inner-bg-color: #1c1c1d;
  --f7-timeline-item-time-text-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-timeline-padding-horizontal: 16px;
  --f7-timeline-margin-vertical: 32px;
  --f7-timeline-item-inner-border-radius: 16px;
  --f7-timeline-item-time-font-size: 13px;
  --f7-timeline-item-title-font-size: 16px;
  --f7-timeline-item-title-line-height: inherit;
  --f7-timeline-item-title-font-weight: 400;
  --f7-timeline-item-subtitle-font-size: inherit;
  --f7-timeline-item-subtitle-line-height: inherit;
  --f7-timeline-item-text-font-size: inherit;
  --f7-timeline-item-text-line-height: inherit;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-timeline-divider-color: var(--f7-md-outline);
  --f7-timeline-item-text-color: var(--f7-md-on-surface);
  --f7-timeline-item-inner-bg-color: var(--f7-md-surface-1);
  --f7-timeline-item-time-text-color: var(--f7-md-on-surface-variant);
}

.timeline {
  box-sizing: border-box;
  margin: var(--f7-timeline-margin-vertical) 0;
  padding: 0 var(--f7-timeline-padding-horizontal);
  padding-top: 0;
  padding-bottom: 0;
  padding-left: calc(var(--f7-timeline-padding-horizontal) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-timeline-padding-horizontal) + var(--f7-safe-area-right));
}

.block-strong .timeline {
  padding: 0;
  margin: 0;
}

.timeline-item {
  display: flex;
  justify-content: flex-start;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  padding: 2px 0px var(--f7-timeline-padding-horizontal);
}

.timeline-item:last-child {
  padding-bottom: 2px;
}

.timeline-item-date {
  flex-shrink: 0;
  width: 50px;
  text-align: right;
  box-sizing: border-box;
}

.timeline-item-date small {
  font-size: 10px;
}

.timeline-item-content {
  margin: 2px;
  min-width: 0;
  position: relative;
  flex-shrink: 10;
}

.timeline-item-content .card,
.timeline-item-content.card,
.timeline-item-content .list,
.timeline-item-content.list,
.timeline-item-content .block,
.timeline-item-content.block {
  margin: 0;
  width: 100%;
}

.timeline-item-content .card + .card,
.timeline-item-content .list + .card,
.timeline-item-content .block + .card,
.timeline-item-content .card + .list,
.timeline-item-content .list + .list,
.timeline-item-content .block + .list,
.timeline-item-content .card + .block,
.timeline-item-content .list + .block,
.timeline-item-content .block + .block {
  margin: var(--f7-timeline-inner-block-margin-vertical) 0 0;
}

.timeline-item-content p:first-child,
.timeline-item-content ul:first-child,
.timeline-item-content ol:first-child,
.timeline-item-content h1:first-child,
.timeline-item-content h2:first-child,
.timeline-item-content h3:first-child,
.timeline-item-content h4:first-child {
  margin-top: 0;
}

.timeline-item-content p:last-child,
.timeline-item-content ul:last-child,
.timeline-item-content ol:last-child,
.timeline-item-content h1:last-child,
.timeline-item-content h2:last-child,
.timeline-item-content h3:last-child,
.timeline-item-content h4:last-child {
  margin-bottom: 0;
}

.timeline-item-inner {
  background: var(--f7-timeline-item-inner-bg-color);
  box-sizing: border-box;
  border-radius: var(--f7-timeline-item-inner-border-radius);
  padding: 8px var(--f7-timeline-padding-horizontal);
}

.timeline-item-inner + .timeline-item-inner {
  margin-top: var(--f7-timeline-inner-block-margin-vertical);
}

.timeline-item-inner .block {
  padding: 0;
  color: inherit;
}

.timeline-item-inner .block-strong {
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

.timeline-item-inner .block-strong:before,
.timeline-item-inner .block-strong:after {
  display: none !important;
}

.timeline-item-inner .list ul:before,
.timeline-item-inner .list ul:after {
  display: none !important;
}

.timeline-item-divider {
  position: relative;
  width: 10px;
  height: 10px;
  background: var(--f7-timeline-divider-color);
  border-radius: 50%;
  flex-shrink: 0;
  margin: 3px var(--f7-timeline-divider-margin-horizontal) 0;
}

.timeline-item-divider:after,
.timeline-item-divider:before {
  content: ' ';
  width: 1px;
  height: 100vh;
  position: absolute;
  left: 50%;
  background: inherit;
  transform: translate3d(-50%, 0, 0);
}

.timeline-item-divider:after {
  top: 100%;
}

.timeline-item-divider:before {
  bottom: 100%;
}

.timeline-item:last-child .timeline-item-divider:after {
  display: none;
}

.timeline-item:first-child .timeline-item-divider:before {
  display: none;
}

.timeline-item-time {
  font-size: var(--f7-timeline-item-time-font-size);
  margin-top: var(--f7-timeline-inner-block-margin-vertical);
  color: var(--f7-timeline-item-time-text-color);
}

.timeline-item-time:first-child,
.timeline-item-time:last-child {
  margin-top: 0;
}

.timeline-item-title + .timeline-item-time {
  margin-top: 0;
}

.timeline-item-title {
  font-size: var(--f7-timeline-item-title-font-size);
  font-weight: var(--f7-timeline-item-title-font-weight);
  line-height: var(--f7-timeline-item-title-line-height);
}

.timeline-item-subtitle {
  font-size: var(--f7-timeline-item-subtitle-font-size);
  font-weight: var(--f7-timeline-item-subtitle-font-weight);
  line-height: var(--f7-timeline-item-subtitle-line-height);
}

.timeline-item-text {
  color: var(--f7-timeline-item-text-color);
  font-size: var(--f7-timeline-item-text-font-size);
  font-weight: var(--f7-timeline-item-text-font-weight);
  line-height: var(--f7-timeline-item-text-line-height);
}

.timeline-sides .timeline-item-right,
.timeline-sides .timeline-item {
  margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
  margin-right: 0;
}

.timeline-sides .timeline-item-right .timeline-item-date,
.timeline-sides .timeline-item .timeline-item-date {
  text-align: right;
}

.timeline-sides .timeline-item-left,
.timeline-sides .timeline-item:not(.timeline-item-right):nth-child(2n) {
  flex-direction: row-reverse;
  margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
  margin-left: 0;
}

.timeline-sides .timeline-item-left .timeline-item-date,
.timeline-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date {
  text-align: left;
}

@media (min-width: 640px) {
  .sm-sides .timeline-item-right,
  .sm-sides .timeline-item {
    margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-right: 0;
  }

  .sm-sides .timeline-item-right .timeline-item-date,
  .sm-sides .timeline-item .timeline-item-date {
    text-align: right;
  }

  .sm-sides .timeline-item-left,
  .sm-sides .timeline-item:not(.timeline-item-right):nth-child(2n) {
    flex-direction: row-reverse;
    margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-left: 0;
  }

  .sm-sides .timeline-item-left .timeline-item-date,
  .sm-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date {
    text-align: left;
  }
}

@media (min-width: 768px) {
  .md-sides .timeline-item-right,
  .md-sides .timeline-item {
    margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-right: 0;
  }

  .md-sides .timeline-item-right .timeline-item-date,
  .md-sides .timeline-item .timeline-item-date {
    text-align: right;
  }

  .md-sides .timeline-item-left,
  .md-sides .timeline-item:not(.timeline-item-right):nth-child(2n) {
    flex-direction: row-reverse;
    margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-left: 0;
  }

  .md-sides .timeline-item-left .timeline-item-date,
  .md-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date {
    text-align: left;
  }
}

@media (min-width: 1024px) {
  .lg-sides .timeline-item-right,
  .lg-sides .timeline-item {
    margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-right: 0;
  }

  .lg-sides .timeline-item-right .timeline-item-date,
  .lg-sides .timeline-item .timeline-item-date {
    text-align: right;
  }

  .lg-sides .timeline-item-left,
  .lg-sides .timeline-item:not(.timeline-item-right):nth-child(2n) {
    flex-direction: row-reverse;
    margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-left: 0;
  }

  .lg-sides .timeline-item-left .timeline-item-date,
  .lg-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date {
    text-align: left;
  }
}

@media (min-width: 1280px) {
  .xl-sides .timeline-item-right,
  .xl-sides .timeline-item {
    margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-right: 0;
  }

  .xl-sides .timeline-item-right .timeline-item-date,
  .xl-sides .timeline-item .timeline-item-date {
    text-align: right;
  }

  .xl-sides .timeline-item-left,
  .xl-sides .timeline-item:not(.timeline-item-right):nth-child(2n) {
    flex-direction: row-reverse;
    margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-left: 0;
  }

  .xl-sides .timeline-item-left .timeline-item-date,
  .xl-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date {
    text-align: left;
  }
}

@media (min-width: 1536px) {
  .2xl-sides .timeline-item-right,
  .2xl-sides .timeline-item {
    margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-right: 0;
  }

  .2xl-sides .timeline-item-right .timeline-item-date,
  .2xl-sides .timeline-item .timeline-item-date {
    text-align: right;
  }

  .2xl-sides .timeline-item-left,
  .2xl-sides .timeline-item:not(.timeline-item-right):nth-child(2n) {
    flex-direction: row-reverse;
    margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px);
    margin-left: 0;
  }

  .2xl-sides .timeline-item-left .timeline-item-date,
  .2xl-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date {
    text-align: left;
  }
}

.ios .block-strong .timeline-item-inner {
  border-radius: 3px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

/* === Tabs === */

.tabs .tab {
  display: none;
}

.tabs .tab-active {
  display: block;
}

.tabs-animated-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 100%;
}

.tabs-animated-wrap > .tabs {
  display: flex;
  height: 100%;
  transition-duration: 300ms;
}

.tabs-animated-wrap > .tabs > .tab {
  width: 100%;
  display: block;
  flex-shrink: 0;
}

.tabs-animated-wrap.not-animated > .tabs {
  transition-duration: 0ms;
}

swiper-container.tabs {
  height: 100%;
}

swiper-container.tabs > .tab {
  display: block;
  touch-action: pan-y;
}

.page > .tabs {
  height: 100%;
}

/* === Panels === */

:root {
  --f7-panel-width: 288px;
  --f7-panel-backdrop-bg-color: rgba(0, 0, 0, 0.3);
  /*
  --f7-panel-left-width: var(--f7-panel-width);
  --f7-panel-right-width: var(--f7-panel-width);
  --f7-panel-left-collapsed-width: var(--f7-panel-collapsed-width);
  --f7-panel-right-collapsed-width: var(--f7-panel-collapsed-width);
  */
}

.ios {
  --f7-panel-floating-border-radius: 32px;
  --f7-panel-collapsed-width: 58px;
  --f7-panel-transition-duration: 400ms;
  --f7-panel-transition-timing-function: initial;
  --f7-panel-bg-color: var(--f7-glass-bg-color);
}

.md {
  --f7-panel-floating-border-radius: 16px;
  --f7-panel-collapsed-width: 60px;
  --f7-panel-transition-duration: 400ms;
  --f7-panel-transition-timing-function: cubic-bezier(0, 0.8, 0.34, 1);
  --f7-panel-bg-color: #fff;
}

.md .dark,
.md.dark {
  --f7-panel-bg-color: #000;
}

.panel-backdrop {
  position: absolute;
  left: 0;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 5999;
  visibility: hidden;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  background-color: var(--f7-panel-backdrop-bg-color);
  transition-property: transform, opacity;
  transition-duration: var(--f7-panel-transition-duration);
}

.panel-backdrop .with-panel,
.panel-backdrop .with-panel-closing {
  visibility: visible;
}

.panel-backdrop.not-animated {
  transition-duration: 0ms !important;
}

.panel {
  z-index: 1000;
  box-sizing: border-box;
  position: absolute;
  top: 0px;
  height: 100%;
  transform: translate3d(0, 0, 0);
  width: var(--f7-panel-width);
  background-color: var(--f7-panel-bg-color);
  overflow: visible;
  transition-property: transform;
  transition-duration: var(--f7-panel-transition-duration);
}

.panel:not(.panel-in):not(.panel-out):not(.panel-in-breakpoint):not(.panel-in-collapsed):not(
      .panel-in-swipe
    ) {
  display: none;
}

.panel:after {
  pointer-events: none;
  opacity: 0;
  z-index: 5999;
  position: absolute;
  content: '';
  top: 0;
  width: 20px;
  height: 100%;
  transition-property: transform, opacity;
  transition-duration: var(--f7-panel-transition-duration);
}

.panel.not-animated,
.panel.not-animated:after {
  transition-duration: 0ms !important;
}

.panel.panel-reveal.not-animated ~ .views,
.panel.panel-reveal.not-animated ~ .view {
  transition-duration: 0ms !important;
}

.panel.panel-resizing {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.panel.panel-resizing,
.panel.panel-resizing:after,
.panel.panel-resizing ~ .views,
.panel.panel-resizing ~ .view {
  transition-duration: 0ms !important;
}

.panel-cover,
.panel-floating {
  z-index: 6000;
}

.panel-floating {
  overflow: hidden;
  border-radius: var(--f7-panel-floating-border-radius);
  height: auto;
  top: calc(8px + var(--f7-safe-area-top, 0px));
  bottom: calc(8px + var(--f7-safe-area-bottom, 0px));
}

.panel-floating .views,
.panel-floating .view {
  --f7-safe-area-top: 0px;
  --f7-safe-area-bottom: 0px;
}

.page .panel-floating {
  top: calc(8px + var(--f7-page-navbar-offset, 0px));
  bottom: calc(8px + var(--f7-safe-area-bottom, 0px));
}

.page .panel-floating .page {
  --f7-page-navbar-offset: 0px;
}

.page .panel-floating .navbar ~ *,
.page .panel-floating .navbars ~ * {
  --f7-page-navbar-offset: calc(var(--f7-navbar-height));
}

.panel-left {
  left: 0;
  width: var(--f7-panel-left-width, var(--f7-panel-width));
}

.panel-left.panel-cover,
.panel-left.panel-floating,
.panel-left.panel-push {
  transform: translate3d(calc(-1 * var(--f7-panel-left-width, var(--f7-panel-width))), 0, 0);
}

.panel-right {
  right: 0;
  width: var(--f7-panel-right-width, var(--f7-panel-width));
}

.panel-right.panel-cover,
.panel-right.panel-floating,
.panel-right.panel-push {
  transform: translate3d(var(--f7-panel-right-width, var(--f7-panel-width)), 0, 0);
}

.panel-in-breakpoint {
  transform: translate3d(0, 0, 0) !important;
  transition-duration: 0ms;
}

.panel-in-breakpoint:after {
  display: none;
}

.panel-in-breakpoint.panel-cover,
.panel-in-breakpoint.panel-floating {
  z-index: 5900;
}

.panel,
.panel-backdrop {
  transition-timing-function: var(--f7-panel-transition-timing-function);
}

html.with-panel-left-reveal .views,
html.with-panel-right-reveal .views,
html.with-panel-left-push .views,
html.with-panel-right-push .views,
html.with-panel-closing .views,
html.with-panel-left-reveal .framework7-root > .view,
html.with-panel-right-reveal .framework7-root > .view,
html.with-panel-left-push .framework7-root > .view,
html.with-panel-right-push .framework7-root > .view,
html.with-panel-closing .framework7-root > .view {
  transition-duration: var(--f7-panel-transition-duration);
  transition-property: transform;
  transition-timing-function: var(--f7-panel-transition-timing-function);
}

html.with-panel .framework7-root > .views .page-content,
html.with-panel .framework7-root > .view .page-content {
  overflow: hidden;
  -webkit-overflow-scrolling: auto;
}

html.with-panel-left-reveal .views,
html.with-panel-left-push .views,
html.with-panel-left-reveal .framework7-root > .view,
html.with-panel-left-push .framework7-root > .view {
  transform: translate3d(var(--f7-panel-left-width, var(--f7-panel-width)), 0, 0);
}

html.with-panel-right-reveal .views,
html.with-panel-right-push .views,
html.with-panel-right-reveal .framework7-root > .view,
html.with-panel-right-push .framework7-root > .view {
  transform: translate3d(calc(-1 * var(--f7-panel-right-width, var(--f7-panel-width))), 0, 0);
}

.page > .panel-backdrop {
  z-index: 290;
}

.page > .panel-reveal,
.page .panel-push {
  z-index: 1;
}

.page > .panel-cover,
.page > .panel-floating {
  z-index: 300;
}

.page.with-panel-left-reveal > .page-content,
.page.with-panel-right-reveal > .page-content,
.page.with-panel-left-push > .page-content,
.page.with-panel-right-push > .page-content,
.page.with-panel-closing > .page-content,
.page.with-panel-left-reveal > .tabs,
.page.with-panel-right-reveal > .tabs,
.page.with-panel-left-push > .tabs,
.page.with-panel-right-push > .tabs,
.page.with-panel-closing > .tabs {
  transition-duration: var(--f7-panel-transition-duration);
  transition-property: transform;
  transition-timing-function: var(--f7-panel-transition-timing-function);
}

.page.with-panel-left-reveal > .page-content,
.page.with-panel-left-push > .page-content,
.page.with-panel-left-reveal > .tabs,
.page.with-panel-left-push > .tabs {
  transform: translate3d(var(--f7-panel-left-width, var(--f7-panel-width)), 0, 0);
}

.page.with-panel-right-reveal > .page-content,
.page.with-panel-right-push > .page-content,
.page.with-panel-right-reveal > .tabs,
.page.with-panel-right-push > .tabs {
  transform: translate3d(calc(-1 * var(--f7-panel-right-width, var(--f7-panel-width))), 0, 0);
}

.with-panel-closing .panel-backdrop-in {
  visibility: visible;
  pointer-events: auto;
  opacity: 0;
}

.with-panel-left-reveal .panel-backdrop-in,
.with-panel-right-reveal .panel-backdrop-in,
.with-panel-left-cover .panel-backdrop-in,
.with-panel-right-cover .panel-backdrop-in,
.with-panel-left-floating .panel-backdrop-in,
.with-panel-right-floating .panel-backdrop-in,
.with-panel-left-push .panel-backdrop-in,
.with-panel-right-push .panel-backdrop-in {
  visibility: visible;
  pointer-events: auto;
  opacity: 1;
}

.with-panel-left-reveal .panel-backdrop-in,
.with-panel-left-push .panel-backdrop-in {
  transform: translate3d(var(--f7-panel-left-width, var(--f7-panel-width)), 0, 0);
}

.with-panel-right-reveal .panel-backdrop-in,
.with-panel-right-push .panel-backdrop-in {
  transform: translate3d(calc(-1 * var(--f7-panel-right-width, var(--f7-panel-width))), 0, 0);
}

.with-panel-left-cover .panel-left,
.with-panel-left-push .panel-left {
  transform: translate3d(0px, 0, 0);
}

.with-panel-left-floating .panel-left {
  transform: translate3d(8px, 0, 0);
}

.with-panel-right-cover .panel-right,
.with-panel-right-push .panel-right {
  transform: translate3d(0px, 0, 0);
}

.with-panel-right-floating .panel-right {
  transform: translate3d(-8px, 0, 0);
}

.panel-resizable {
  max-width: 100%;
}

.panel-resize-handler {
  position: absolute;
  top: 0;
  height: 100%;
  width: 6px;
  cursor: col-resize;
  z-index: 6000;
  display: none;
}

.panel-resizable .panel-resize-handler {
  display: block;
}

.panel-left.panel-cover .panel-resize-handler,
.panel-left.panel-floating .panel-resize-handler {
  right: -3px;
}

.panel-left.panel-reveal .panel-resize-handler,
.panel-left.panel-push .panel-resize-handler {
  right: 0;
}

.panel-right.panel-cover .panel-resize-handler,
.panel-right.panel-floating .panel-resize-handler {
  left: -3px;
}

.panel-right.panel-reveal .panel-resize-handler,
.panel-right.panel-push .panel-resize-handler {
  left: 0;
}

.panel-left.panel-in-collapsed ~ .views,
.panel-left.panel-in-collapsed ~ .view,
.panel-left.panel-in-collapsed ~ .page-content,
.panel-left.panel-in-collapsed ~ .tabs {
  margin-left: var(--f7-panel-left-collapsed-width, var(--f7-panel-collapsed-width));
}

.page.with-panel-left-reveal .panel-left.panel-in-collapsed ~ .page-content,
.page.with-panel-left-reveal .panel-left.panel-in-collapsed ~ .tabs,
html.with-panel-left-reveal .panel-left.panel-in-collapsed ~ .views,
html.with-panel-left-reveal .panel-left.panel-in-collapsed ~ .view {
  transform: translate3d(calc(var(--f7-panel-left-width, var(--f7-panel-width)) - var(--f7-panel-left-collapsed-width, var(--f7-panel-collapsed-width))), 0, 0);
}

.panel-right.panel-in-collapsed ~ .views,
.panel-right.panel-in-collapsed ~ .view,
.panel-right.panel-in-collapsed ~ .page-content,
.panel-right.panel-in-collapsed ~ .tabs {
  margin-right: var(--f7-panel-right-collapsed-width, var(--f7-panel-collapsed-width));
}

.page.with-panel-right-reveal .panel-right.panel-in-collapsed ~ .page-content,
.page.with-panel-right-reveal .panel-right.panel-in-collapsed ~ .tabs,
html.with-panel-right-reveal .panel-right.panel-in-collapsed ~ .views,
html.with-panel-right-reveal .panel-right.panel-in-collapsed ~ .view {
  transform: translate3d(calc(var(--f7-panel-right-collapsed-width, var(--f7-panel-collapsed-width)) - var(--f7-panel-right-width, var(--f7-panel-width))), 0, 0);
}

html:has(.popup-push-in) .framework7-root,
html:has(.popup-push-closing) .framework7-root {
  --f7-panelPushScale: var(--f7-popup-push-scale);
  --f7-panelPushTransitionDuration: var(--f7-popup-transition-duration);
  --f7-panelPushTransitionTimingFunction: var(--f7-popup-transition-timing-function);
  --f7-panelPushBorderRadius: var(--f7-popup-push-border-radius);
}

html:has(.sheet-modal-push-in) .framework7-root,
html:has(.sheet-modal-push-closing) .framework7-root {
  --f7-panelPushScale: var(--f7-sheet-push-scale);
  --f7-panelPushTransitionDuration: var(--f7-sheet-transition-duration);
  --f7-panelPushTransitionTimingFunction: var(--f7-sheet-transition-timing-function);
  --f7-panelPushBorderRadius: var(--f7-sheet-push-border-radius);
}

html:has(.popup-push-in) .framework7-root > .panel-in,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in,
html:has(.popup-push-in) .framework7-root > .panel-out,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out {
  transition-duration: var(--f7-panelPushTransitionDuration);
  transition-timing-function: var(--f7-panelPushTransitionTimingFunction);
}

html:has(.popup-push-in) .framework7-root > .panel-in.panel-reveal.panel-left,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-reveal.panel-left,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-reveal.panel-left,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-reveal.panel-left,
html:has(.popup-push-in) .framework7-root > .panel-in.panel-push.panel-left,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-push.panel-left,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-push.panel-left,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-push.panel-left {
  transform: scale(var(--f7-panelPushScale, 1));
  transform-origin: 50vw center;
  border-top-left-radius: var(--f7-panelPushBorderRadius);
}

html:has(.popup-push-in) .framework7-root > .panel-in.panel-reveal.panel-left .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-reveal.panel-left .view,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-reveal.panel-left .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-reveal.panel-left .view,
html:has(.popup-push-in) .framework7-root > .panel-in.panel-push.panel-left .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-push.panel-left .view,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-push.panel-left .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-push.panel-left .view {
  border-top-left-radius: var(--f7-panelPushBorderRadius);
}

html:has(.popup-push-in) .framework7-root > .panel-in.panel-reveal.panel-right,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-reveal.panel-right,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-reveal.panel-right,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-reveal.panel-right,
html:has(.popup-push-in) .framework7-root > .panel-in.panel-push.panel-right,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-push.panel-right,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-push.panel-right,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-push.panel-right {
  transform: scale(var(--f7-panelPushScale, 1));
  transform-origin: calc(var(--f7-panel-left-width, var(--f7-panel-width)) - 50vw) center;
  border-top-right-radius: var(--f7-panelPushBorderRadius);
}

html:has(.popup-push-in) .framework7-root > .panel-in.panel-reveal.panel-right .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-reveal.panel-right .view,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-reveal.panel-right .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-reveal.panel-right .view,
html:has(.popup-push-in) .framework7-root > .panel-in.panel-push.panel-right .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-push.panel-right .view,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-push.panel-right .view,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-push.panel-right .view {
  border-top-right-radius: var(--f7-panelPushBorderRadius);
}

html:has(.popup-push-in) .framework7-root > .panel-in.panel-cover.panel-left,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-cover.panel-left,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-cover.panel-left,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-cover.panel-left {
  transform: translate3d(calc(-1 * var(--f7-panel-left-width, var(--f7-panel-width))), 0, 0px);
}

html:has(.popup-push-in) .framework7-root > .panel-in.panel-cover.panel-right,
html:has(.sheet-modal-push-in) .framework7-root > .panel-in.panel-cover.panel-right,
html:has(.popup-push-in) .framework7-root > .panel-out.panel-cover.panel-right,
html:has(.sheet-modal-push-in) .framework7-root > .panel-out.panel-cover.panel-right {
  transform: translate3d(var(--f7-panel-right-width, var(--f7-panel-width)), 0, 0px);
}

html:has(.popup-push-closing) .framework7-root > .panel-in,
html:has(.sheet-modal-push-closing) .framework7-root > .panel-in {
  transition-duration: var(--f7-panelPushTransitionDuration);
  transition-timing-function: var(--f7-panelPushTransitionTimingFunction);
}

html:has(.popup-push-closing) .framework7-root > .panel-in.panel-reveal.panel-left,
html:has(.sheet-modal-push-closing) .framework7-root > .panel-in.panel-reveal.panel-left,
html:has(.popup-push-closing) .framework7-root > .panel-in.panel-push.panel-left,
html:has(.sheet-modal-push-closing) .framework7-root > .panel-in.panel-push.panel-left {
  transform-origin: 50vw center;
}

html:has(.popup-push-closing) .framework7-root > .panel-in.panel-reveal.panel-right,
html:has(.sheet-modal-push-closing) .framework7-root > .panel-in.panel-reveal.panel-right,
html:has(.popup-push-closing) .framework7-root > .panel-in.panel-push.panel-right,
html:has(.sheet-modal-push-closing) .framework7-root > .panel-in.panel-push.panel-right {
  transform-origin: calc(var(--f7-panel-right-width, var(--f7-panel-width)) - 50vw) center;
}

.ios .panel-floating {
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow);
}

.md .panel-cover {
  overflow: hidden;
}

.md .panel-cover.panel-left {
  border-radius: 0 16px 16px 0;
}

.md .panel-cover.panel-right {
  border-radius: 16px 0 0 16px;
}

/* === Card === */

:root {
  --f7-card-margin-horizontal: 16px;
  --f7-card-margin-vertical: 16px;
  --f7-card-content-padding-horizontal: 16px;
  --f7-card-content-padding-vertical: 16px;
  --f7-card-font-size: inherit;
  --f7-card-header-text-color: inherit;
  --f7-card-header-font-weight: 400;
  --f7-card-header-padding-horizontal: 16px;
  --f7-card-footer-font-weight: 400;
  --f7-card-footer-font-size: inherit;
  --f7-card-footer-padding-horizontal: 16px;
  --f7-card-expandable-font-size: 16px;
  --f7-card-expandable-tablet-width: 670px;
  --f7-card-expandable-tablet-height: 670px;
}

.ios {
  --f7-card-border-radius: 24px;
  --f7-card-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
  --f7-card-header-font-size: 17px;
  --f7-card-header-padding-vertical: 10px;
  --f7-card-header-min-height: 52px;
  --f7-card-footer-text-color: rgba(0, 0, 0, 0.45);
  --f7-card-footer-padding-vertical: 10px;
  --f7-card-footer-min-height: 52px;
  --f7-card-expandable-margin-horizontal: 20px;
  --f7-card-expandable-margin-vertical: 30px;
  --f7-card-expandable-box-shadow: 0px 20px 40px rgba(0, 0, 0, 0.3);
  --f7-card-expandable-border-radius: 24px;
  --f7-card-expandable-tablet-border-radius: 24px;
  --f7-card-expandable-header-font-size: 27px;
  --f7-card-expandable-header-font-weight: bold;
  --f7-card-text-color: inherit;
  --f7-card-bg-color: #fff;
  --f7-card-expandable-bg-color: #fff;
  --f7-card-outline-border-color: rgba(0, 0, 0, 0.12);
  --f7-card-header-border-color: rgba(0, 0, 0, 0.1);
  --f7-card-footer-border-color: rgba(0, 0, 0, 0.1);
}

.ios .dark,
.ios.dark {
  --f7-card-bg-color: #1c1c1d;
  --f7-card-expandable-bg-color: #1c1c1d;
  --f7-card-outline-border-color: rgba(255, 255, 255, 0.15);
  --f7-card-header-border-color: rgba(255, 255, 255, 0.15);
  --f7-card-footer-border-color: rgba(255, 255, 255, 0.15);
  --f7-card-footer-text-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-card-border-radius: 16px;
  --f7-card-box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  --f7-card-header-font-size: 22px;
  --f7-card-header-padding-vertical: 16px;
  --f7-card-header-min-height: 48px;
  --f7-card-footer-padding-vertical: 16px;
  --f7-card-footer-min-height: 48px;
  --f7-card-expandable-margin-horizontal: 12px;
  --f7-card-expandable-margin-vertical: 24px;
  --f7-card-expandable-box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
  --f7-card-expandable-border-radius: 16px;
  --f7-card-expandable-tablet-border-radius: 16px;
  --f7-card-expandable-header-font-size: 22px;
  --f7-card-expandable-header-font-weight: 500;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-card-bg-color: var(--f7-md-surface-1);
  --f7-card-expandable-bg-color: var(--f7-md-surface-1);
  --f7-card-outline-border-color: var(--f7-md-outline);
  --f7-card-header-border-color: var(--f7-md-outline);
  --f7-card-footer-border-color: var(--f7-md-outline);
  --f7-card-text-color: var(--f7-md-on-surface);
  --f7-card-footer-text-color: var(--f7-md-on-surface-variant);
}

.cards-list > ul:before,
.card .list > ul:before,
.cards-list > ul:after,
.card .list > ul:after {
  display: none !important;
}

.cards-list ul,
.card .list ul {
  background: none;
}

.card {
  background: var(--f7-card-bg-color);
  position: relative;
  border-radius: var(--f7-card-border-radius);
  font-size: var(--f7-card-font-size);
  margin-top: var(--f7-card-margin-vertical);
  margin-bottom: var(--f7-card-margin-vertical);
  margin-left: calc(var(--f7-card-margin-horizontal) + var(--f7-safe-area-left));
  margin-right: calc(var(--f7-card-margin-horizontal) + var(--f7-safe-area-right));
  color: var(--f7-card-text-color);
}

.card .list,
.card .block {
  margin: 0;
}

.row:not(.no-gap) .col > .card {
  margin-left: 0;
  margin-right: 0;
}

.card-raised {
  box-shadow: var(--f7-card-box-shadow);
}

.card-outline,
.ios .card-outline-ios,
.md .card-outline-md {
  border: 1px solid var(--f7-card-outline-border-color);
}

.card-content {
  position: relative;
}

.card-content-padding {
  position: relative;
  padding: var(--f7-card-content-padding-vertical) var(--f7-card-content-padding-horizontal);
}

.card-content-padding > .list,
.card-content-padding > .block {
  margin: calc(-1 * var(--f7-card-content-padding-vertical)) calc(-1 * var(--f7-card-content-padding-horizontal));
}

.card-content-padding > p:first-child {
  margin-top: 0;
}

.card-content-padding > p:last-child {
  margin-bottom: 0;
}

.card-header {
  min-height: var(--f7-card-header-min-height);
  color: var(--f7-card-header-text-color);
  font-size: var(--f7-card-header-font-size);
  font-weight: var(--f7-card-header-font-weight);
  padding: var(--f7-card-header-padding-vertical) var(--f7-card-header-padding-horizontal);
}

.card-header.card-header-divider,
.card-header-divider .card-header,
.card-dividers .card-header {
  border-bottom: 1px solid var(--f7-card-header-border-color);
}

.card-footer {
  min-height: var(--f7-card-footer-min-height);
  color: var(--f7-card-footer-text-color);
  font-size: var(--f7-card-footer-font-size);
  font-weight: var(--f7-card-footer-font-weight);
  padding: var(--f7-card-footer-padding-vertical) var(--f7-card-footer-padding-horizontal);
}

.card-footer.card-footer-divider,
.card-footer-divider .card-footer,
.card-dividers .card-footer {
  border-top: 1px solid var(--f7-card-header-border-color);
}

.card-footer a.link {
  overflow: hidden;
}

.card-header,
.card-footer {
  position: relative;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.card-header[valign='top'],
.card-footer[valign='top'] {
  align-items: flex-start;
}

.card-header[valign='bottom'],
.card-footer[valign='bottom'] {
  align-items: flex-end;
}

.card-header a.link,
.card-footer a.link {
  position: relative;
}

.card-header a.link i.icon,
.card-footer a.link i.icon {
  display: block;
}

.card-header a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.card-footer a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}

.card-header {
  border-radius: var(--f7-card-border-radius) var(--f7-card-border-radius) 0 0;
}

.card-footer {
  border-radius: 0 0 var(--f7-card-border-radius) var(--f7-card-border-radius);
}

.card-expandable {
  overflow: hidden;
  height: 300px;
  background: var(--f7-card-expandable-bg-color);
  position: relative;
  transform-origin: center center;
  transition-property: transform, border-radius;
  border-radius: var(--f7-card-expandable-border-radius);
  z-index: 2;
  transition-duration: 200ms;
  margin-left: calc(var(--f7-card-expandable-margin-horizontal) + var(--f7-safe-area-left));
  margin-right: calc(var(--f7-card-expandable-margin-horizontal) + var(--f7-safe-area-right));
  margin-top: var(--f7-card-expandable-margin-vertical);
  margin-bottom: var(--f7-card-expandable-margin-vertical);
  font-size: var(--f7-card-expandable-font-size);
}

.card-expandable.card-raised {
  box-shadow: var(--f7-card-expandable-box-shadow);
}

.card-expandable:not(.card-opened) {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.card-expandable.card-no-transition {
  transition-duration: 0ms;
}

.card-expandable.card-expandable-animate-width .card-content {
  transition-property: width, transform;
  width: 100%;
}

.card-expandable.active-state {
  transform: scale(0.97) translate3d(0, 0, 0);
}

.card-expandable .card-opened-fade-in,
.card-expandable .card-opened-fade-out {
  transition-duration: 400ms;
}

.card-expandable .card-opened-fade-in {
  opacity: 0;
  pointer-events: none;
}

.card-expandable .card-content {
  position: absolute;
  top: 0;
  width: 100vw;
  height: 100vh;
  transform-origin: center top;
  overflow: hidden;
  transition-property: transform;
  box-sizing: border-box;
  pointer-events: none;
  left: 0;
}

.card-expandable .card-content .card-content-padding {
  padding-left: calc(var(--f7-safe-area-left) + var(--f7-card-content-padding-horizontal));
  padding-right: calc(var(--f7-safe-area-right) + var(--f7-card-content-padding-horizontal));
}

.card-expandable.card-opened {
  transition-duration: 0ms;
}

.card-expandable.card-opening,
.card-expandable.card-closing,
.card-expandable.card-transitioning {
  transition-duration: 400ms;
}

.card-expandable.card-opening .card-content {
  transition-duration: 300ms;
}

.card-expandable.card-closing .card-content {
  transition-duration: 500ms;
}

.card-expandable.card-opening,
.card-expandable.card-opened,
.card-expandable.card-closing {
  z-index: 300;
}

.card-expandable.card-opening,
.card-expandable.card-opened {
  border-radius: 0;
}

.card-expandable.card-opening .card-opened-fade-in,
.card-expandable.card-opened .card-opened-fade-in {
  opacity: 1;
  pointer-events: auto;
}

.card-expandable.card-opening .card-opened-fade-out,
.card-expandable.card-opened .card-opened-fade-out {
  opacity: 0;
  pointer-events: none;
}

.card-expandable.card-opened .card-content {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  pointer-events: auto;
}

.card-expandable .card-header {
  font-size: var(--f7-card-expandable-header-font-size);
  font-weight: var(--f7-card-expandable-header-font-weight);
}

.card-prevent-open {
  pointer-events: auto;
}

.card-expandable-size {
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

@media (min-width: 768px) and (min-height: 670px) {
  .card-expandable:not(.card-tablet-fullscreen) {
    max-width: var(--f7-card-expandable-tablet-width);
  }

  .card-expandable:not(.card-tablet-fullscreen).card-opened,
  .card-expandable:not(.card-tablet-fullscreen).card-opening {
    border-radius: var(--f7-card-expandable-tablet-border-radius);
  }

  .card-expandable:not(.card-tablet-fullscreen):not(.card-expandable-animate-width) .card-content {
    width: var(--f7-card-expandable-tablet-width);
  }

  .card-expandable:not(.card-tablet-fullscreen) .card-expandable-size {
    width: var(--f7-card-expandable-tablet-width);
    height: var(--f7-card-expandable-tablet-height);
  }
}

.page.page-with-card-opened .page-content {
  overflow: hidden;
}

.card-backdrop {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 299;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.2);
  opacity: 0;
}

.card-backdrop-in {
  animation: card-backdrop-fade-in 400ms forwards;
  pointer-events: auto;
}

.card-backdrop-out {
  animation: card-backdrop-fade-out 400ms forwards;
}

@supports ((-webkit-backdrop-filter: blur(15px)) or (backdrop-filter: blur(15px))) {
  .card-backdrop {
    background: transparent;
    -webkit-backdrop-filter: blur(15px);
            backdrop-filter: blur(15px);
  }
}

@keyframes card-backdrop-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes card-backdrop-fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

/* === Chips === */

:root {
  --f7-chip-font-size: 14px;
  --f7-chip-media-font-size: 16px;
  --f7-chip-delete-button-color: #000;
}

:root .dark,
:root.dark {
  --f7-chip-delete-button-color: #fff;
}

.ios {
  --f7-chip-height: 28px;
  --f7-chip-media-size: 28px;
  --f7-chip-padding-horizontal: 10px;
  --f7-chip-border-radius: 28px;
  --f7-chip-font-weight: normal;
  --f7-chip-outline-border-color: rgba(0, 0, 0, 0.12);
  --f7-chip-bg-color: rgba(0, 0, 0, 0.12);
  --f7-chip-text-color: #000;
  --f7-chip-outline-text-color: #000;
}

.ios .dark,
.ios.dark {
  --f7-chip-bg-color: #333;
  --f7-chip-text-color: #fff;
  --f7-chip-outline-text-color: #fff;
  --f7-chip-outline-border-color: rgba(255, 255, 255, 0.12);
}

.md {
  --f7-chip-font-weight: 500;
  --f7-chip-media-size: 24px;
  --f7-chip-height: 32px;
  --f7-chip-padding-horizontal: 12px;
  --f7-chip-border-radius: 8px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-chip-bg-color: var(--f7-md-secondary-container);
  --f7-chip-text-color: var(--f7-md-on-secondary-container);
  --f7-chip-outline-text-color: var(--f7-md-on-surface);
  --f7-chip-outline-border-color: var(--f7-md-outline);
}

.chip {
  padding-left: var(--f7-chip-padding-horizontal);
  padding-right: var(--f7-chip-padding-horizontal);
  font-weight: var(--f7-chip-font-weight);
  display: inline-flex;
  box-sizing: border-box;
  vertical-align: middle;
  align-items: center;
  margin: 2px 0;
  background-color: var(--f7-chip-bg-color);
  font-size: var(--f7-chip-font-size);
  color: var(--f7-chip-text-color);
  height: var(--f7-chip-height);
  line-height: var(--f7-chip-height);
  border-radius: var(--f7-chip-border-radius);
  position: relative;
}

.chip-media {
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--f7-chip-media-size);
  width: var(--f7-chip-media-size);
  border-radius: var(--f7-chip-media-size);
  text-align: center;
  line-height: var(--f7-chip-media-size);
  box-sizing: border-box;
  color: #fff;
  font-size: var(--f7-chip-media-font-size);
  vertical-align: middle;
}

.chip-media i.icon {
  font-size: calc(var(--f7-chip-media-size) - 8px);
  height: calc(var(--f7-chip-media-size) - 8px);
}

.chip-media img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  border-radius: 50%;
  display: block;
}

.chip-media + .chip-label {
  margin-left: 4px;
}

.chip-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  flex-shrink: 1;
  min-width: 0;
}

.chip-delete {
  text-align: center;
  cursor: pointer;
  flex-shrink: 0;
  background-repeat: no-repeat;
  width: 24px;
  height: 24px;
  color: var(--f7-chip-delete-button-color);
  opacity: 0.54;
  position: relative;
}

.chip-delete:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  line-height: 24px;
}

.chip .chip-delete.active-state {
  opacity: 1;
}

.chip-outline,
.ios .chip-outline-ios,
.md .chip-outline-md {
  border: 1px solid var(--f7-chip-outline-border-color);
  color: var(--f7-chip-outline-text-color);
  background: none;
}

.ios .chip[class*='color-'] {
  --f7-chip-bg-color: var(--f7-theme-color);
  --f7-chip-text-color: #fff;
}

.ios .chip-outline[class*='color-'],
.ios .chip-outline-ios[class*='color-'] {
  --f7-chip-outline-border-color: var(--f7-theme-color);
  --f7-chip-outline-text-color: var(--f7-theme-color);
}

.ios .chip-media {
  margin-left: calc(-1 * var(--f7-chip-padding-horizontal));
}

.ios .chip-delete {
  margin-right: calc(-1 * var(--f7-chip-padding-horizontal));
}

.ios .chip-delete::after {
  content: 'delete_round_ios';
}

.ios .chip-delete:after {
  font-size: 10px;
}

.md .chip-media {
  margin-left: calc(-1 * var(--f7-chip-padding-horizontal) + 4px);
}

.md .chip-label + .chip-delete {
  margin-left: 4px;
}

.md .chip-delete {
  margin-right: calc(-1 * var(--f7-chip-padding-horizontal) + 4px);
}

.md .chip-delete::after {
  content: 'delete_round_md';
  font-size: 16px;
}

/* === Form === */

/* === Input === */

:root {
  --f7-input-bg-color: transparent;
  --f7-label-font-weight: 400;
  --f7-label-height: 16px;
  --f7-label-font-size: 12px;
  --f7-floating-label-scale: calc(16 / 12);
  --f7-input-padding-left: 0px;
  --f7-input-padding-right: 0px;
  --f7-input-error-text-color: #ff3b30;
  --f7-input-error-font-size: 12px;
  --f7-input-error-line-height: 1.4;
  --f7-input-error-font-weight: 400;
  --f7-input-info-font-size: 12px;
  --f7-input-info-line-height: 1.4;
  --f7-textarea-height: 100px;
  /*
  --f7-input-outline-focused-border-color: var(--f7-theme-color);
  --f7-input-outline-invalid-border-color: var(--f7-input-error-text-color);
  */
}

.ios {
  --f7-input-item-bg-color: transparent;
  --f7-input-item-border-radius: 0px;
  --f7-input-height: 40px;
  --f7-input-font-size: 16px;
  --f7-input-placeholder-color: #a9a9a9;
  --f7-textarea-padding-vertical: 8px;
  /*
  --f7-input-focused-border-color: var(--f7-list-item-border-color);
  --f7-input-invalid-border-color: var(--f7-list-item-border-color);
  --f7-input-invalid-text-color: var(--f7-input-error-text-color);
  */
  --f7-label-text-color: inherit;
  /*
  --f7-label-focused-text-color: var(--f7-label-text-color);
  --f7-label-invalid-text-color: var(--f7-label-text-color);
  */
  --f7-input-clear-button-size: 14px;
  --f7-input-outline-border-radius: 8px;
  --f7-input-text-color: #000000;
  --f7-input-info-text-color: rgba(0, 0, 0, 0.45);
  --f7-input-clear-button-color: rgba(0, 0, 0, 0.45);
  --f7-input-outline-border-color: #bbb;
}

.ios .dark,
.ios.dark {
  --f7-input-text-color: #fff;
  --f7-input-info-text-color: rgba(255, 255, 255, 0.55);
  --f7-input-clear-button-color: rgba(255, 255, 255, 0.5);
  --f7-input-outline-border-color: #444;
}

.md {
  --f7-input-item-border-radius: 4px 4px 0 0;
  --f7-input-height: 24px;
  --f7-input-font-size: 16px;
  --f7-textarea-padding-vertical: 0px;
  --f7-input-outline-border-radius: 4px;
  /*
  --f7-input-focused-border-color: var(--f7-theme-color);
  --f7-input-invalid-border-color: var(--f7-input-error-text-color);
  --f7-input-invalid-text-color: var(--f7-input-text-color);
  */
  /*
  --f7-label-focused-text-color: var(--f7-theme-color);
  --f7-label-invalid-text-color: var(--f7-input-error-text-color );
  */
  --f7-floating-label-scale: calc(16 / 12);
  --f7-input-clear-button-size: 24px;
  --f7-input-info-text-color: rgba(0, 0, 0, 0.45);
}

.md .dark,
.md.dark {
  --f7-input-info-text-color: rgba(255, 255, 255, 0.45);
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-input-placeholder-color: var(--f7-md-on-surface-variant);
  --f7-input-item-bg-color: var(--f7-md-surface-variant);
  --f7-input-border-color: var(--f7-md-outline);
  --f7-input-clear-button-color: var(--f7-md-on-surface-variant);
  --f7-input-outline-border-color: var(--f7-md-outline);
  --f7-input-text-color: var(--f7-md-on-surface);
  --f7-label-text-color: var(--f7-md-on-surface-variant);
}

input[type='text'],
input[type='password'],
input[type='search'],
input[type='email'],
input[type='tel'],
input[type='url'],
input[type='date'],
input[type='month'],
input[type='datetime-local'],
input[type='time'],
input[type='number'],
select,
textarea {
  box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  box-shadow: none;
  border-radius: 0;
  outline: 0;
  display: block;
  padding: 0;
  margin: 0;
  font-family: inherit;
  background: none;
  resize: none;
  font-size: inherit;
  color: inherit;
}

input[type='text']:-internal-autofill-selected,
input[type='password']:-internal-autofill-selected,
input[type='search']:-internal-autofill-selected,
input[type='email']:-internal-autofill-selected,
input[type='tel']:-internal-autofill-selected,
input[type='url']:-internal-autofill-selected,
input[type='date']:-internal-autofill-selected,
input[type='month']:-internal-autofill-selected,
input[type='datetime-local']:-internal-autofill-selected,
input[type='time']:-internal-autofill-selected,
input[type='number']:-internal-autofill-selected,
select:-internal-autofill-selected,
textarea:-internal-autofill-selected {
  background-color: transparent !important;
  transition: background-color 5000s ease-in-out 0s !important;
}

input[type='text']:-webkit-autofill, input[type='password']:-webkit-autofill, input[type='search']:-webkit-autofill, input[type='email']:-webkit-autofill, input[type='tel']:-webkit-autofill, input[type='url']:-webkit-autofill, input[type='date']:-webkit-autofill, input[type='month']:-webkit-autofill, input[type='datetime-local']:-webkit-autofill, input[type='time']:-webkit-autofill, input[type='number']:-webkit-autofill, select:-webkit-autofill, textarea:-webkit-autofill {
  background-color: transparent !important;
  -webkit-transition: background-color 5000s ease-in-out 0s !important;
  transition: background-color 5000s ease-in-out 0s !important;
}

input[type='text']:autofill,
input[type='password']:autofill,
input[type='search']:autofill,
input[type='email']:autofill,
input[type='tel']:autofill,
input[type='url']:autofill,
input[type='date']:autofill,
input[type='month']:autofill,
input[type='datetime-local']:autofill,
input[type='time']:autofill,
input[type='number']:autofill,
select:autofill,
textarea:autofill,
input[type='text']:-webkit-autofill-and-obscured,
input[type='password']:-webkit-autofill-and-obscured,
input[type='search']:-webkit-autofill-and-obscured,
input[type='email']:-webkit-autofill-and-obscured,
input[type='tel']:-webkit-autofill-and-obscured,
input[type='url']:-webkit-autofill-and-obscured,
input[type='date']:-webkit-autofill-and-obscured,
input[type='month']:-webkit-autofill-and-obscured,
input[type='datetime-local']:-webkit-autofill-and-obscured,
input[type='time']:-webkit-autofill-and-obscured,
input[type='number']:-webkit-autofill-and-obscured,
select:-webkit-autofill-and-obscured,
textarea:-webkit-autofill-and-obscured {
  background-color: transparent !important;
  -webkit-transition: background-color 5000s ease-in-out 0s !important;
  transition: background-color 5000s ease-in-out 0s !important;
}

.textarea-resizable-shadow {
  opacity: 0;
  position: absolute;
  z-index: -1000;
  pointer-events: none;
  left: -1000px;
  top: -1000px;
  visibility: hidden;
}

.list input[type='text'],
.list input[type='password'],
.list input[type='search'],
.list input[type='email'],
.list input[type='tel'],
.list input[type='url'],
.list input[type='date'],
.list input[type='month'],
.list input[type='datetime-local'],
.list input[type='time'],
.list input[type='number'],
.list select {
  width: 100%;
  height: var(--f7-input-height);
  color: var(--f7-input-text-color);
  font-size: var(--f7-input-font-size);
  background-color: var(--f7-input-bg-color, transparent);
  padding-left: var(--f7-input-padding-left);
  padding-right: var(--f7-input-padding-right);
}

.list input[type='text']::-moz-placeholder, .list input[type='password']::-moz-placeholder, .list input[type='search']::-moz-placeholder, .list input[type='email']::-moz-placeholder, .list input[type='tel']::-moz-placeholder, .list input[type='url']::-moz-placeholder, .list input[type='date']::-moz-placeholder, .list input[type='month']::-moz-placeholder, .list input[type='datetime-local']::-moz-placeholder, .list input[type='time']::-moz-placeholder, .list input[type='number']::-moz-placeholder, .list select::-moz-placeholder {
  color: var(--f7-input-placeholder-color);
}

.list input[type='text']::placeholder,
.list input[type='password']::placeholder,
.list input[type='search']::placeholder,
.list input[type='email']::placeholder,
.list input[type='tel']::placeholder,
.list input[type='url']::placeholder,
.list input[type='date']::placeholder,
.list input[type='month']::placeholder,
.list input[type='datetime-local']::placeholder,
.list input[type='time']::placeholder,
.list input[type='number']::placeholder,
.list select::placeholder {
  color: var(--f7-input-placeholder-color);
}

.list textarea {
  width: 100%;
  color: var(--f7-input-text-color);
  font-size: var(--f7-input-font-size);
  resize: none;
  line-height: 1.4;
  height: var(--f7-textarea-height);
  background-color: var(--f7-input-bg-color, transparent);
  padding-top: var(--f7-textarea-padding-vertical);
  padding-bottom: var(--f7-textarea-padding-vertical);
  padding-left: var(--f7-input-padding-left);
  padding-right: var(--f7-input-padding-right);
}

.list textarea::-moz-placeholder {
  color: var(--f7-input-placeholder-color);
}

.list textarea::placeholder {
  color: var(--f7-input-placeholder-color);
}

.list textarea.resizable {
  height: calc(var(--f7-input-height) + var(--f7-textarea-padding-vertical) * 2);
}

.list input[type='time'],
.list input[type='date'],
.list input[type='month'],
.list input[type='datetime-local'] {
  line-height: var(--f7-input-height);
}

.list .item-label,
.list .item-floating-label {
  width: auto;
  vertical-align: top;
  flex-shrink: 0;
  font-size: var(--f7-label-font-size);
  font-weight: var(--f7-label-font-weight);
  line-height: var(--f7-label-height);
  color: var(--f7-label-text-color);
  transition-duration: 200ms;
  transition-property: transform, color;
}

.list .item-floating-label {
  color: var(--f7-input-placeholder-color);
  max-width: calc(100% / var(--f7-floating-label-scale));
  pointer-events: none;
  left: var(--f7-input-padding-left);
  transform-origin: left center;
}

.list .item-floating-label ~ .item-input-wrap input::-moz-placeholder, .list .item-floating-label ~ .item-input-wrap textarea::-moz-placeholder {
  opacity: 0;
  transition-duration: 100ms;
}

.list .item-floating-label ~ .item-input-wrap input::placeholder,
.list .item-floating-label ~ .item-input-wrap textarea::placeholder {
  opacity: 0;
  transition-duration: 100ms;
}

.list .item-floating-label ~ .item-input-wrap input.input-focused::-moz-placeholder, .list .item-floating-label ~ .item-input-wrap textarea.input-focused::-moz-placeholder {
  opacity: 1;
  transition-duration: 300ms;
}

.list .item-floating-label ~ .item-input-wrap input.input-focused::placeholder,
.list .item-floating-label ~ .item-input-wrap textarea.input-focused::placeholder {
  opacity: 1;
  transition-duration: 300ms;
}

.list .item-input-with-value .item-floating-label {
  color: var(--f7-label-text-color);
}

.list .item-input-with-value .item-floating-label,
.list .item-input-focused .item-floating-label {
  transform: scale(1) translateY(0) !important;
}

.list .item-input-wrap {
  width: 100%;
  flex-shrink: 1;
  position: relative;
}

.item-input,
.input {
  position: relative;
}

.item-input .item-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.item-input-error-message,
.input-error-message {
  font-size: var(--f7-input-error-font-size);
  line-height: var(--f7-input-error-line-height);
  color: var(--f7-input-error-text-color);
  font-weight: var(--f7-input-error-font-weight);
  display: none;
  box-sizing: border-box;
}

.item-input-info,
.input-info {
  font-size: var(--f7-input-info-font-size);
  line-height: var(--f7-input-info-line-height);
  color: var(--f7-input-info-text-color);
}

.item-input-invalid .item-input-error-message,
.input-invalid .item-input-error-message,
.item-input-invalid .input-error-message,
.input-invalid .input-error-message {
  display: block;
}

.item-input-invalid .item-input-info,
.input-invalid .item-input-info,
.item-input-invalid .input-info,
.input-invalid .input-info {
  display: none;
}

.input {
  position: relative;
}

.input input,
.input select,
.input textarea {
  width: 100%;
}

.input-clear-button {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition-duration: 100ms;
  position: absolute;
  top: 50%;
  border: none;
  padding: 0;
  margin: 0;
  outline: 0;
  z-index: 1;
  cursor: pointer;
  background: none;
  width: var(--f7-input-clear-button-size);
  height: var(--f7-input-clear-button-size);
  margin-top: calc(-1 * var(--f7-input-clear-button-size) / 2);
  color: var(--f7-input-clear-button-color);
  right: 0;
}

.input-clear-button:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
}

.input-clear-button:before {
  position: absolute;
  content: '';
  left: 50%;
  top: 50%;
}

.item-input-wrap .input-clear-button {
  top: calc(var(--f7-input-height) / 2);
}

.input-clear-button.active-state {
  opacity: 0.75 !important;
}

.input-with-value ~ .input-clear-button,
.item-input-with-value .input-clear-button,
.input-with-value .input-clear-button {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.input-dropdown-wrap,
.input-dropdown {
  position: relative;
}

.input-dropdown-wrap:before,
.input-dropdown:before {
  content: '';
  pointer-events: none;
  position: absolute;
  top: 50%;
  margin-top: -2px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid #727272;
  right: 6px;
}

.input-dropdown-wrap select,
.input-dropdown select,
.input-dropdown-wrap input,
.input-dropdown input,
.input-dropdown-wrap textarea,
.input-dropdown textarea {
  padding-right: calc(20px + var(--f7-input-padding-right));
}

.item-input-outline .item-content::after,
.item-input-outline.item-content::after,
.input-outline::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 8px;
  bottom: 8px;
  border: 1px solid var(--f7-input-outline-border-color);
  border-radius: var(--f7-input-outline-border-radius);
  pointer-events: none;
  box-sizing: border-box;
  transition-duration: 200ms;
}

.item-input-outline .item-content .item-label,
.item-input-outline.item-content .item-label,
.input-outline .item-label,
.item-input-outline .item-content .item-floating-label,
.item-input-outline.item-content .item-floating-label,
.input-outline .item-floating-label {
  pointer-events: none;
  background: var(--f7-page-bg-color);
  z-index: 1;
  padding: 4px;
}

.item-input-outline .item-content.item-input-focused::after,
.item-input-outline.item-content.item-input-focused::after,
.input-outline.item-input-focused::after,
.item-input-outline .item-content.input-focused::after,
.item-input-outline.item-content.input-focused::after,
.input-outline.input-focused::after {
  border-width: 2px;
  border-color: var(--f7-input-outline-invalid-border-color, var(--f7-theme-color));
}

.item-input-outline .item-content.item-input-invalid::after,
.item-input-outline.item-content.item-input-invalid::after,
.input-outline.item-input-invalid::after,
.item-input-outline .item-content.input-invalid::after,
.item-input-outline.item-content.input-invalid::after,
.input-outline.input-invalid::after {
  border-width: 2px;
  border-color: var(--f7-input-outline-invalid-border-color, var(--f7-input-error-text-color));
}

.block-strong .item-input-outline .item-label,
.block-strong .item-input-outline .item-floating-label,
.ios .block-strong-ios .item-input-outline .item-label,
.ios .block-strong-ios .item-input-outline .item-floating-label,
.md .block-strong-md .item-input-outline .item-label,
.md .block-strong-md .item-input-outline .item-floating-label {
  background: var(--f7-block-strong-bg-color) !important;
}

.list-strong .item-input-outline .item-floating-label,
.list-strong .item-input-outline .item-label,
.ios .list-strong-ios .item-input-outline .item-floating-label,
.ios .list-strong-ios .item-input-outline .item-label,
.md .list-strong-md .item-input-outline .item-floating-label,
.md .list-strong-md .item-input-outline .item-label {
  background: var(--f7-list-strong-bg-color) !important;
}

.dark option {
  background-color: var(--f7-page-bg-color);
}

.ios .item-label + .item-input-wrap,
.ios .item-floating-label + .item-input-wrap {
  margin-top: 0;
}

.ios .item-floating-label {
  transform: scale(var(--f7-floating-label-scale)) translateY(calc(var(--f7-label-height) + 25%));
}

.ios .item-input-focused .item-floating-label {
  color: var(--f7-label-text-color);
}

.ios .item-input .item-media {
  align-self: flex-start;
}

.ios .item-input-wrap {
  margin-top: calc(-1 * var(--f7-list-item-padding-vertical));
  margin-bottom: calc(-1 * var(--f7-list-item-padding-vertical));
}

.ios .item-input:not(.item-input-outline) .item-content,
.ios .item-input:not(.item-input-outline).item-content {
  background: var(--f7-input-item-bg-color);
}

.ios .item-input-error-message,
.ios .item-input-info,
.ios .input-error-message,
.ios .input-info {
  position: relative;
  margin-bottom: 6px;
  margin-top: -8px;
}

.ios .item-input-focused .item-label,
.ios .item-input-focused .item-floating-label {
  color: var(--f7-label-focused-text-color, var(--f7-label-text-color));
}

.ios .item-input-focused .item-inner:after {
  background: var(--f7-input-focused-border-color, var(--f7-list-item-border-color));
}

.ios .item-input-invalid .item-label,
.ios .item-input-invalid .item-floating-label {
  color: var(--f7-label-invalid-text-color, var(--f7-label-text-color));
}

.ios .item-input-invalid .item-inner:after {
  background: var(--f7-input-invalid-border-color, var(--f7-list-item-border-color));
}

.ios .item-input-invalid input,
.ios .input-invalid input,
.ios .item-input-invalid select,
.ios .input-invalid select,
.ios .item-input-invalid textarea,
.ios .input-invalid textarea {
  color: var(--f7-input-invalid-text-color, var(--f7-input-error-text-color));
}

.ios .input-clear-button:after {
  content: 'delete_round_ios';
  font-size: calc(var(--f7-input-clear-button-size) / (14 / 10));
  line-height: 1.4;
}

.ios .input-clear-button:before {
  width: 44px;
  height: 44px;
  margin-left: -22px;
  margin-top: -22px;
}

.ios .item-input-outline .item-content,
.ios .item-input-outline.item-content {
  padding-top: 8px;
  padding-bottom: 8px;
  margin-left: 16px;
  margin-right: 16px;
}

.ios li.item-input-outline:first-child,
.ios li:first-child > .item-input-outline {
  padding-top: 16px;
}

.ios li.item-input-outline:first-child::after,
.ios li:first-child > .item-input-outline::after {
  top: 16px;
}

.ios li.item-input-outline:last-child,
.ios li:last-child > .item-input-outline {
  padding-bottom: 16px;
}

.ios li.item-input-outline:last-child::after,
.ios li:last-child > .item-input-outline::after {
  bottom: 16px;
}

.ios .item-input-outline .item-content .item-inner,
.ios .item-input-outline.item-content .item-inner,
.ios .input-outline .item-inner {
  display: block;
  padding-top: 0px;
  padding-bottom: 0px;
}

.ios .item-input-outline .item-content .item-input-wrap,
.ios .item-input-outline.item-content .item-input-wrap,
.ios .input-outline .item-input-wrap {
  margin-top: 2px;
}

.ios .item-input-outline .item-content .item-title + .item-input-wrap,
.ios .item-input-outline.item-content .item-title + .item-input-wrap,
.ios .input-outline .item-title + .item-input-wrap {
  margin-top: -18px;
}

.ios .item-input-outline .item-content .item-label,
.ios .item-input-outline.item-content .item-label,
.ios .input-outline .item-label,
.ios .item-input-outline .item-content .item-floating-label,
.ios .item-input-outline.item-content .item-floating-label,
.ios .input-outline .item-floating-label {
  display: inline-flex;
  margin: -8px -4px -4px;
  top: -4px;
}

.ios .item-input-outline .item-content .item-floating-label,
.ios .item-input-outline.item-content .item-floating-label,
.ios .input-outline .item-floating-label {
  transform: scale(var(--f7-floating-label-scale)) translateY(calc(var(--f7-label-height) + 4px));
}

.md .item-input-wrap {
  min-height: var(--f7-input-height);
}

.md .item-floating-label {
  transform: scale(var(--f7-floating-label-scale)) translateY(calc((var(--f7-input-height) / 2) / var(--f7-floating-label-scale)));
}

.md .item-input .item-inner:after {
  display: none !important;
}

.md .item-input .item-content,
.md .item-input.item-content {
  margin-left: 16px;
  margin-right: 16px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.md .input:after {
  content: '';
  position: absolute;
  background-color: var(--f7-input-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.md .input::after {
  transform: scaleY(1) !important;
  transition-duration: 200ms;
  bottom: 0px;
}

.md .input.input-focused::after {
  transform: scaleY(2) !important;
  background: var(--f7-input-focused-border-color, var(--f7-theme-color));
}

.md .input.input-invalid::after {
  transform: scaleY(2) !important;
  background: var(--f7-input-invalid-border-color, var(--f7-input-error-text-color));
}

.md .item-input:not(.item-input-outline) .item-content:after,
.md .item-input:not(.item-input-outline).item-content:after {
  content: '';
  position: absolute;
  background-color: var(--f7-input-border-color);
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.md .item-input:not(.item-input-outline) .item-content::before,
.md .item-input:not(.item-input-outline).item-content::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  right: 0;
  border-radius: var(--f7-input-item-border-radius);
  background: var(--f7-input-item-bg-color);
  pointer-events: none;
}

.md .item-input:not(.item-input-outline) .item-content::after,
.md .item-input:not(.item-input-outline).item-content::after {
  transform: scaleY(1) !important;
  transition-duration: 200ms;
  bottom: 8px;
}

.md .item-input:not(.item-input-outline) .item-content.item-input-focused::after,
.md .item-input:not(.item-input-outline).item-content.item-input-focused::after {
  transform: scaleY(2) !important;
  background: var(--f7-input-focused-border-color, var(--f7-theme-color));
}

.md .item-input:not(.item-input-outline) .item-content.item-input-invalid::after,
.md .item-input:not(.item-input-outline).item-content.item-input-invalid::after,
.md .item-input:not(.item-input-outline) .item-content.input-invalid::after,
.md .item-input:not(.item-input-outline).item-content.input-invalid::after {
  transform: scaleY(2) !important;
  background: var(--f7-input-invalid-border-color, var(--f7-input-error-text-color));
}

.md .item-input-outline .item-content .item-inner,
.md .item-input-outline.item-content .item-inner,
.md .input-outline .item-inner {
  padding-top: 16px;
  padding-bottom: 16px;
}

.md .item-input-outline .item-content .item-label,
.md .item-input-outline.item-content .item-label,
.md .input-outline .item-label,
.md .item-input-outline .item-content .item-floating-label,
.md .item-input-outline.item-content .item-floating-label,
.md .input-outline .item-floating-label {
  --label-height: calc(var(--f7-label-height) + 8px);
  margin: calc(0px - 16px - var(--label-height) / 2) -4px 4px;
}

.md .item-input-outline .item-content .item-floating-label,
.md .item-input-outline.item-content .item-floating-label,
.md .input-outline .item-floating-label {
  transform: scale(var(--f7-floating-label-scale)) translateY(calc((var(--f7-input-height) / 2) + 8px));
}

.md .item-input-with-error-message,
.md .item-input-with-info,
.md .input-with-error-message,
.md .input-with-info {
  padding-bottom: 24px !important;
}

.md .item-input-error-message,
.md .item-input-info,
.md .input-error-message,
.md .input-info {
  position: absolute;
  top: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  left: 0;
}

.md .item-input-focused .item-label,
.md .item-input-focused .item-floating-label {
  color: var(--f7-label-focused-text-color, var(--f7-theme-color));
}

.md .item-input-focused:not(.item-input-outline) .item-input-wrap:after,
.md .input-focused:not(.input-outline):after {
  background: var(--f7-input-focused-border-color, var(--f7-theme-color));
}

.md .item-input-invalid:not(.item-input-outline) .item-input-wrap:after,
.md .item-input-focused:not(.item-input-outline) .item-input-wrap:after,
.md .input-invalid:not(.input-outline):after,
.md .input-focused:not(.input-outline):after {
  transform: scaleY(2) !important;
}

.md .item-input-invalid:not(.item-input-outline) .item-input-wrap:after,
.md .input-invalid:not(.input-outline):after {
  background: var(--f7-input-invalid-border-color, var(--f7-input-error-text-color));
}

.md .item-input-invalid .item-label,
.md .item-input-invalid .item-floating-label {
  color: var(--f7-label-invalid-text-color, var(--f7-input-error-text-color));
}

.md .item-input-invalid input,
.md .input-invalid input,
.md .item-input-invalid select,
.md .input-invalid select,
.md .item-input-invalid textarea,
.md .input-invalid textarea {
  color: var(--f7-input-invalid-text-color, var(--f7-input-text-color));
}

.md .input-clear-button:after {
  font-size: var(--f7-input-clear-button-size);
  content: 'delete_round_md';
  line-height: 1;
}

.md .input-clear-button:before {
  width: 48px;
  height: 48px;
  margin-left: -24px;
  margin-top: -24px;
}

/* === Checkbox === */

:root {
  /* --f7-checkbox-active-color: var(--f7-theme-color); */
  --f7-checkbox-icon-color: #fff;
  --f7-checkbox-extra-margin: 0px;
}

:root .dark,
:root.dark {
  --f7-checkbox-inactive-color: rgba(255, 255, 255, 0.3);
  --f7-checkbox-icon-color: #000;
}

.ios {
  --f7-checkbox-size: 22px;
  --f7-checkbox-border-radius: 50%;
  --f7-checkbox-border-width: 1px;
  --f7-checkbox-inactive-color: #c7c7cc;
}

.md {
  --f7-checkbox-size: 18px;
  --f7-checkbox-border-radius: 2px;
  --f7-checkbox-border-width: 2px;
  --f7-checkbox-inactive-color: #6d6d6d;
}

.checkbox {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  z-index: 1;
  background-color: transparent;
  --f7-touch-ripple-color: rgba(var(--f7-theme-color-rgb), 0.5);
}

.icon-checkbox,
.checkbox i {
  flex-shrink: 0;
  border: var(--f7-checkbox-border-width) solid var(--f7-checkbox-inactive-color);
  width: var(--f7-checkbox-size);
  height: var(--f7-checkbox-size);
  border-radius: var(--f7-checkbox-border-radius);
  box-sizing: border-box;
  position: relative;
  display: block;
}

.icon-checkbox:after,
.checkbox i:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  width: var(--f7-checkbox-size);
  height: var(--f7-checkbox-size);
  line-height: var(--f7-checkbox-size);
  top: calc(0px - var(--f7-checkbox-border-width));
  opacity: 0;
  color: var(--f7-checkbox-icon-color);
  position: relative;
  transition-property: opacity;
  left: calc(0px - var(--f7-checkbox-border-width));
}

.icon-checkbox.color-white,
.checkbox i.color-white,
.color-white .icon-checkbox,
.color-white .checkbox i {
  --f7-theme-color: #fff;
  --f7-checkbox-icon-color: #000;
}

.icon-checkbox.color-black,
.checkbox i.color-black,
.color-black .icon-checkbox,
.color-black .checkbox i {
  --f7-theme-color: #000;
  --f7-checkbox-icon-color: #fff;
}

label.item-checkbox input[type='checkbox']:not(:checked) ~ .icon-checkbox:after,
label.item-checkbox input[type='checkbox']:not(:checked) ~ * .icon-checkbox:after,
.checkbox input[type='checkbox']:not(:checked) ~ i:after {
  font-size: 0;
}

label.item-checkbox input[type='checkbox']:checked ~ .icon-checkbox,
label.item-checkbox input[type='checkbox']:checked ~ * .icon-checkbox,
.checkbox input[type='checkbox']:checked ~ i,
label.item-checkbox input[type='checkbox']:indeterminate ~ .icon-checkbox,
label.item-checkbox input[type='checkbox']:indeterminate ~ * .icon-checkbox,
.checkbox input[type='checkbox']:indeterminate ~ i {
  border-color: var(--f7-checkbox-active-color, var(--f7-theme-color));
  background-color: var(--f7-checkbox-active-color, var(--f7-theme-color));
}

label.item-checkbox input[type='checkbox']:checked ~ .icon-checkbox:after,
label.item-checkbox input[type='checkbox']:checked ~ * .icon-checkbox:after,
.checkbox input[type='checkbox']:checked ~ i:after,
label.item-checkbox input[type='checkbox']:indeterminate ~ .icon-checkbox:after,
label.item-checkbox input[type='checkbox']:indeterminate ~ * .icon-checkbox:after,
.checkbox input[type='checkbox']:indeterminate ~ i:after {
  opacity: 1;
}

label.item-checkbox input[type='checkbox']:indeterminate ~ .icon-checkbox:after,
label.item-checkbox input[type='checkbox']:indeterminate ~ * .icon-checkbox:after,
.checkbox input[type='checkbox']:indeterminate ~ i:after {
  font-size: 0;
  content: '';
  position: absolute;
  top: 50%;
  width: 70%;
  background: var(--f7-checkbox-icon-color);
  height: 2px;
  border-radius: 2px;
  margin-top: -1px;
  transition: 0ms;
  left: 15%;
}

label.item-checkbox,
.checkbox {
  cursor: pointer;
}

label.item-checkbox input[type='checkbox'],
.checkbox input[type='checkbox'],
label.item-checkbox input[type='radio'],
.checkbox input[type='radio'] {
  display: none;
}

label.item-checkbox {
  transition-duration: 300ms;
}

label.item-checkbox .item-content .item-media,
label.item-checkbox.item-content .item-media {
  align-self: center;
}

label.item-checkbox > .icon-checkbox {
  margin-right: calc(var(--f7-list-item-media-margin) + var(--f7-checkbox-extra-margin));
}

label.item-checkbox.active-state {
  background-color: var(--f7-list-link-pressed-bg-color);
}

label.item-checkbox.active-state:after {
  background-color: transparent;
}

label.item-checkbox.disabled,
.disabled label.item-checkbox {
  opacity: 0.55 !important;
  pointer-events: none !important;
}

label.item-checkbox.item-checkbox-icon-end .item-inner {
  padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right) + var(--f7-checkbox-size) + 16px);
}

label.item-checkbox.item-checkbox-icon-end input[type='checkbox'] ~ .icon-checkbox {
  position: absolute;
  right: calc(var(--f7-safe-area-right) + 16px);
  margin-right: 0;
}

.ios .icon-checkbox:after,
.ios .checkbox i:after {
  content: 'checkbox_ios';
  font-size: 21px;
}

.ios label.item-checkbox.active-state {
  transition-duration: 0ms;
}

.ios label.item-checkbox input[type='checkbox']:indeterminate ~ .icon-checkbox:after,
.ios label.item-checkbox input[type='checkbox']:indeterminate ~ * .icon-checkbox:after,
.ios .checkbox input[type='checkbox']:indeterminate ~ i:after {
  height: 2px;
  margin-top: -1px;
}

.md .icon-checkbox,
.md .checkbox i {
  transition-duration: 200ms;
}

.md .icon-checkbox:after,
.md .checkbox i:after {
  content: 'checkbox_md';
  transition-duration: 200ms;
  font-size: 15px;
}

.md label.item-checkbox {
  position: relative;
  overflow: hidden;
  z-index: 0;
}

/* === Radio === */

:root {
  /*
  --f7-radio-active-color: var(--f7-theme-color);
  */
  --f7-radio-border-radius: 50%;
  --f7-radio-extra-margin: 0px;
}

:root .dark,
:root.dark {
  --f7-radio-inactive-color: rgba(255, 255, 255, 0.3);
}

.ios {
  --f7-radio-size: 22px;
  --f7-radio-border-width: 1px;
  --f7-radio-inactive-color: #c7c7cc;
}

.md {
  --f7-radio-size: 20px;
  --f7-radio-border-width: 2px;
  --f7-radio-inactive-color: #6d6d6d;
}

.radio {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  z-index: 1;
  --f7-touch-ripple-color: rgba(var(--f7-theme-color-rgb), 0.5);
}

.icon-radio {
  width: var(--f7-radio-size);
  height: var(--f7-radio-size);
  border-radius: var(--f7-radio-border-radius);
  position: relative;
  box-sizing: border-box;
  display: block;
  flex-shrink: 0;
}

.radio.color-white,
.icon-radio.color-white,
.color-white .radio,
.color-white .icon-radio {
  --f7-theme-color: #fff;
}

.radio.color-black,
.icon-radio.color-black,
.color-black .radio,
.color-black .icon-radio {
  --f7-theme-color: #000;
}

.radio .icon-radio,
.md .icon-radio {
  border: var(--f7-radio-border-width) solid var(--f7-radio-inactive-color);
}

label.item-radio,
.radio {
  cursor: pointer;
}

label.item-radio input[type='checkbox'],
.radio input[type='checkbox'],
label.item-radio input[type='radio'],
.radio input[type='radio'] {
  display: none;
}

label.item-radio {
  transition-duration: 300ms;
}

label.item-radio .item-content .item-media,
label.item-radio.item-content .item-media {
  align-self: center;
}

label.item-radio.active-state {
  background-color: var(--f7-list-link-pressed-bg-color);
}

label.item-radio.active-state:after {
  background-color: transparent;
}

label.item-radio.disabled,
.disabled label.item-radio {
  opacity: 0.55 !important;
  pointer-events: none !important;
}

.ios .icon-radio:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  width: calc(var(--f7-radio-size) - var(--f7-radio-border-width) * 2);
  height: calc(var(--f7-radio-size) - var(--f7-radio-border-width) * 2);
  line-height: calc(var(--f7-radio-size) - var(--f7-radio-border-width) * 2 + 1px);
  font-size: 20px;
  content: 'radio_ios';
  color: var(--f7-radio-active-color, var(--f7-theme-color));
  opacity: 0;
}

.ios label.item-radio input[type='radio']:checked ~ .icon-radio:after,
.ios label.item-radio input[type='radio']:checked ~ * .icon-radio:after,
.ios .radio input[type='radio']:checked ~ .icon-radio:after {
  opacity: 1;
}

.ios .radio input[type='radio']:checked ~ .icon-radio {
  border-color: var(--f7-radio-active-color, var(--f7-theme-color));
}

.ios label.item-radio:not(.item-radio-icon-start) input[type='radio'] ~ .icon-radio {
  position: absolute;
  top: 50%;
  margin-top: -11px;
  right: calc(var(--f7-safe-area-right) + 10px);
}

.ios label.item-radio:not(.item-radio-icon-start) .item-inner {
  padding-right: calc(var(--f7-safe-area-right) + 36px);
}

.ios label.item-radio-icon-start > .icon-radio {
  margin-right: calc(var(--f7-list-item-media-margin) + var(--f7-checkbox-extra-margin));
}

.ios label.item-radio.active-state {
  transition-duration: 0ms;
}

.md .icon-radio {
  transition-duration: 200ms;
}

.md .icon-radio:after {
  content: '';
  position: absolute;
  width: 10px;
  height: 10px;
  left: 50%;
  top: 50%;
  margin-left: -5px;
  margin-top: -5px;
  background-color: var(--f7-radio-active-color, var(--f7-theme-color));
  border-radius: 50%;
  transform: scale(0);
  transition-duration: 200ms;
}

.md label.item-radio input[type='radio']:checked ~ .icon-radio,
.md label.item-radio input[type='radio']:checked ~ * .icon-radio,
.md .radio input[type='radio']:checked ~ .icon-radio {
  border-color: var(--f7-radio-active-color, var(--f7-theme-color));
}

.md label.item-radio input[type='radio']:checked ~ .icon-radio:after,
.md label.item-radio input[type='radio']:checked ~ * .icon-radio:after,
.md .radio input[type='radio']:checked ~ .icon-radio:after {
  background-color: var(--f7-radio-active-color, var(--f7-theme-color));
  transform: scale(1);
}

.md label.item-radio {
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.md label.item-radio:not(.item-radio-icon-end) > .icon-radio {
  margin-right: calc(var(--f7-list-item-media-margin) + var(--f7-radio-extra-margin));
}

.md label.item-radio-icon-end input[type='radio'] ~ .icon-radio {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: calc(var(--f7-safe-area-right) + 16px);
}

.md label.item-radio-icon-end .item-inner {
  padding-right: calc(var(--f7-safe-area-right) + 52px);
}

/* === Toggle === */

.ios {
  --f7-toggle-width: 64px;
  --f7-toggle-height: 28px;
  /*
  --f7-toggle-active-bg-color: var(--f7-theme-color);
  */
  --f7-toggle-inactive-knob-bg-color: #fff;
  --f7-toggle-active-knob-bg-color: #fff;
  --f7-toggle-inactive-border-color: #e5e5e5;
  --f7-toggle-inactive-bg-color: #fff;
}

.ios .dark,
.ios.dark {
  --f7-toggle-inactive-border-color: #555;
  --f7-toggle-inactive-bg-color: #555;
}

.md {
  --f7-toggle-width: 52px;
  --f7-toggle-height: 32px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-toggle-inactive-bg-color: var(--f7-md-surface-variant);
  --f7-toggle-active-bg-color: var(--f7-theme-color);
  --f7-toggle-inactive-knob-bg-color: var(--f7-md-outline);
  --f7-toggle-active-knob-bg-color: var(--f7-md-on-primary);
  --f7-toggle-inactive-border-color: var(--f7-md-outline);
  --f7-toggle-active-border-color: var(--f7-theme-color);
}

.toggle,
.toggle-icon {
  width: var(--f7-toggle-width);
  height: var(--f7-toggle-height);
  border-radius: var(--f7-toggle-height);
}

.toggle {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  box-sizing: border-box;
  align-self: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.toggle input[type='checkbox'] {
  display: none;
}

.toggle input[disabled] ~ .toggle-icon {
  pointer-events: none;
}

.toggle-icon {
  z-index: 0;
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  position: relative;
  transition: 300ms;
  box-sizing: border-box;
  display: block;
  cursor: pointer;
}

.toggle-icon:before,
.toggle-icon:after {
  content: '';
}

.toggle-icon:after {
  position: absolute;
  z-index: 2;
  transform: translateX(0px);
  transition-duration: 300ms;
}

.ios .toggle {
  --f7-toggle-knob-tx: 0px;
}

.ios .toggle::before {
  content: '';
  border-radius: inherit;
  inset: 0;
  position: absolute;
  background: var(--f7-toggle-inactive-border-color);
  transition-duration: 300ms;
  z-index: 0;
}

.ios .toggle::after {
  content: '';
  position: absolute;
  left: 0;
  transform: translateX(calc(var(--f7-toggle-width) - var(--f7-toggle-height)));
  top: 0;
  width: var(--f7-toggle-height);
  height: var(--f7-toggle-height);
  border-radius: var(--f7-toggle-height);
  background: var(--f7-toggle-inactive-border-color);
  transition-duration: 300ms;
  z-index: 0;
}

.ios .toggle:has(input[type='checkbox']:checked) {
  --f7-toggle-knob-tx: calc(var(--f7-toggle-width) - 38px - 4px);
}

.ios .toggle:has(input[type='checkbox']:checked)::before {
  background: var(--f7-toggle-active-bg-color, var(--f7-theme-color));
}

.ios .toggle:has(input[type='checkbox']:checked)::after {
  background: var(--f7-toggle-active-bg-color, var(--f7-theme-color));
  transform: translateX(0);
}

.ios .toggle-icon {
  background: var(--f7-toggle-inactive-knob-bg-color);
  height: calc(var(--f7-toggle-height) - 4px);
  width: 38px;
  top: 2px;
  left: 2px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  border-radius: calc(var(--f7-toggle-height) - 4px);
  transition-duration: 300ms;
  transform: translateX(var(--f7-toggle-knob-tx)) scale(1);
  position: relative;
  z-index: 1;
  transform-origin: center;
}

.ios .toggle-icon::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1px;
  height: 1px;
  opacity: 0;
  transition-duration: 300ms;
  box-shadow: 0px 0px 40px 15px rgba(var(--f7-theme-color-rgb), 0.75);
}

.ios .toggle-icon::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: var(--f7-glass-shadow-thumb);
  transition-duration: 300ms;
  opacity: 0;
}

.ios .toggle-active-state::before {
  transform: scale(0.75);
}

.ios .toggle-active-state .toggle-icon {
  background: transparent;
  transform: translateX(var(--f7-toggle-knob-tx)) scale(1.4);
}

.ios .toggle-active-state .toggle-icon::before {
  opacity: 1;
}

.ios .toggle-active-state .toggle-icon::after {
  opacity: 1;
}

.md .toggle input[type='checkbox']:checked + .toggle-icon {
  background: var(--f7-toggle-active-bg-color);
  border-color: var(--f7-toggle-active-border-color);
}

.md .toggle input[type='checkbox']:checked + .toggle-icon:after {
  transform: translateX(calc(var(--f7-toggle-width) - var(--f7-toggle-height))) scale(1);
  background: var(--f7-toggle-active-knob-bg-color);
}

.md .toggle.active-state input[type='checkbox']:checked + .toggle-icon:after {
  transform: translateX(calc(var(--f7-toggle-width) - var(--f7-toggle-height))) scale(1.1);
}

.md .toggle-icon {
  background: var(--f7-toggle-inactive-bg-color);
  border: 2px solid var(--f7-toggle-inactive-border-color);
}

.md .toggle-icon:after {
  background: var(--f7-toggle-inactive-knob-bg-color);
  height: calc(var(--f7-toggle-height) - 8px);
  width: calc(var(--f7-toggle-height) - 8px);
  top: 2px;
  border-radius: var(--f7-toggle-height);
  transform: scale(0.666);
  left: 2px;
}

.md .toggle-icon.active-state:after {
  transform: scale(1.1);
}

/* === Range Slider === */

:root {
  /*
  --f7-range-bar-active-bg-color: var(--f7-theme-color);
  --f7-range-scale-bg-color: var(--f7-range-bar-bg-color);
  --f7-range-scale-substep-bg-color: var(--f7-range-bar-bg-color);
  */
  --f7-range-scale-step-height: 5px;
  --f7-range-scale-substep-width: 1px;
  --f7-range-scale-substep-height: 4px;
}

.ios {
  --f7-range-size: 28px;
  --f7-range-bar-size: 6px;
  --f7-range-bar-border-radius: 6px;
  --f7-range-knob-width: 38px;
  --f7-range-knob-height: 24px;
  --f7-range-knob-color: #fff;
  --f7-range-knob-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  --f7-range-label-size: 24px;
  --f7-range-label-text-color: #000;
  --f7-range-label-bg-color: #fff;
  --f7-range-label-font-size: 12px;
  --f7-range-label-font-weight: 500;
  --f7-range-label-border-radius: 5px;
  --f7-range-label-padding: 0px 4px;
  --f7-range-scale-text-color: #666;
  --f7-range-scale-step-width: 1px;
  --f7-range-scale-font-size: 12px;
  --f7-range-scale-font-weight: 400;
  --f7-range-scale-label-offset: 4px;
  --f7-range-bar-bg-color: rgba(0, 0, 0, 0.2);
}

.ios .dark,
.ios.dark {
  --f7-range-bar-bg-color: rgba(255, 255, 255, 0.2);
}

.md {
  --f7-range-size: 20px;
  --f7-range-bar-size: 16px;
  --f7-range-bar-border-radius: 16px;
  --f7-range-knob-width: 16px;
  --f7-range-knob-height: 44px;
  --f7-range-knob-box-shadow: none;
  --f7-range-label-size: 26px;
  --f7-range-label-font-weight: normal;
  --f7-range-label-font-size: 10px;
  --f7-range-label-border-radius: 50%;
  --f7-range-label-padding: 0px;
  --f7-range-scale-step-width: 2px;
  --f7-range-scale-font-size: 12px;
  --f7-range-scale-font-weight: 400;
  --f7-range-scale-label-offset: 4px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-range-bar-bg-color: var(--f7-md-secondary-container);
  --f7-range-knob-color: var(--f7-theme-color);
  --f7-range-label-text-color: var(--f7-md-on-primary);
  --f7-range-label-bg-color: var(--f7-theme-color);
  --f7-range-scale-text-color: var(--f7-md-on-surface-variant);
}

.range-slider {
  display: block;
  position: relative;
  align-self: center;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.range-slider input[type='range'] {
  display: none;
}

.range-slider.range-slider-horizontal {
  width: 100%;
  height: var(--f7-range-size);
  touch-action: pan-y;
}

.range-slider.range-slider-vertical {
  height: 100%;
  width: var(--f7-range-size);
  touch-action: pan-x;
}

.range-bar {
  position: absolute;
  overflow: hidden;
  background: var(--f7-range-bar-bg-color);
  border-radius: var(--f7-range-bar-border-radius);
}

.range-slider-vertical .range-bar {
  left: 50%;
  top: 0;
  height: 100%;
  width: var(--f7-range-bar-size);
  margin-left: calc(-1 * var(--f7-range-bar-size) / 2);
}

.range-slider-horizontal .range-bar {
  left: 0;
  top: 50%;
  width: 100%;
  height: var(--f7-range-bar-size);
  margin-top: calc(-1 * var(--f7-range-bar-size) / 2);
}

.range-bar-active {
  position: absolute;
  background: var(--f7-range-bar-active-bg-color, var(--f7-theme-color));
}

.range-slider-horizontal .range-bar-active {
  left: 0;
  top: 0;
  height: 100%;
}

.range-slider-vertical .range-bar-active {
  left: 0;
  bottom: 0;
  width: 100%;
}

.range-slider-vertical-reversed .range-bar-active {
  top: 0;
  bottom: auto;
}

.range-knob-wrap {
  z-index: 20;
  position: absolute;
  height: var(--f7-range-knob-height);
  width: var(--f7-range-knob-width);
}

.range-slider-horizontal .range-knob-wrap {
  top: 50%;
  margin-top: calc(-1 * var(--f7-range-knob-height) / 2);
  margin-left: calc(-1 * var(--f7-range-knob-width) / 2);
  left: 0;
}

.range-slider-vertical .range-knob-wrap {
  left: 50%;
  height: var(--f7-range-knob-width);
  width: var(--f7-range-knob-height);
  margin-left: calc(-1 * var(--f7-range-knob-height) / 2);
  bottom: 0;
  margin-bottom: calc(-1 * var(--f7-range-knob-width) / 2);
}

.range-slider-vertical-reversed .range-knob-wrap {
  bottom: auto;
  top: 0;
  margin-bottom: 0;
  margin-top: calc(-1 * var(--f7-range-knob-width) / 2);
}

.range-knob {
  box-sizing: border-box;
  z-index: 1;
  background: var(--f7-range-knob-color, var(--f7-range-knob-bg-color, var(--f7-theme-color)));
  box-shadow: var(--f7-range-knob-box-shadow);
}

.range-knob-label {
  position: absolute;
  left: 50%;
  bottom: 100%;
  text-align: center;
  transition-duration: 120ms;
  transition-property: transform;
  box-sizing: border-box;
  transform: translateY(100%) scale(0);
  height: var(--f7-range-label-size);
  line-height: var(--f7-range-label-size);
  min-width: var(--f7-range-label-size);
  color: var(--f7-range-label-text-color);
  background-color: var(--f7-range-label-bg-color, var(--f7-theme-color));
  font-size: var(--f7-range-label-font-size);
  font-weight: var(--f7-range-label-font-weight);
  border-radius: var(--f7-range-label-border-radius);
  padding: var(--f7-range-label-padding);
}

.range-knob-active-state .range-knob-label {
  transform: translateY(0%) scale(1);
}

.range-scale {
  position: absolute;
}

.range-slider-horizontal .range-scale {
  top: 50%;
  left: 0;
  width: 100%;
  margin-top: calc(var(--f7-range-bar-size) / 2);
}

.range-slider-vertical .range-scale {
  right: 50%;
  top: 0;
  height: 100%;
  margin-right: calc(var(--f7-range-bar-size) / 2);
}

.range-scale-step {
  position: absolute;
  box-sizing: border-box;
  display: flex;
  font-size: var(--f7-range-scale-font-size);
  font-weight: var(--f7-range-scale-font-weight);
  color: var(--f7-range-scale-text-color, var(--f7-range-bar-bg-color));
  line-height: 1;
}

.range-scale-step:before {
  content: '';
  position: absolute;
  background: var(--f7-range-scale-step-bg-color, var(--f7-range-bar-bg-color));
}

.range-slider-horizontal .range-scale-step {
  justify-content: center;
  align-items: flex-start;
  width: var(--f7-range-scale-step-width);
  height: var(--f7-range-scale-step-height);
  padding-top: calc(var(--f7-range-scale-step-height) + var(--f7-range-scale-label-offset));
  top: 0;
  margin-left: calc(-1 * var(--f7-range-scale-step-width) / 2);
}

.range-slider-horizontal .range-scale-step:before {
  left: 0;
  top: 0;
  width: 100%;
  height: var(--f7-range-scale-step-height);
}

.range-slider-horizontal .range-scale-step:first-child {
  margin-left: 0;
}

.range-slider-horizontal .range-scale-step:last-child {
  margin-left: calc(-1 * var(--f7-range-scale-step-width));
}

.range-slider-vertical .range-scale-step {
  line-height: 1;
  justify-content: flex-end;
  align-items: center;
  height: var(--f7-range-scale-step-width);
  width: var(--f7-range-scale-step-height);
  padding-right: calc(var(--f7-range-scale-step-height) + var(--f7-range-scale-label-offset));
  right: 0;
  margin-bottom: calc(-1 * var(--f7-range-scale-step-width) / 2);
}

.range-slider-vertical .range-scale-step:first-child {
  margin-bottom: 0;
}

.range-slider-vertical .range-scale-step:last-child {
  margin-bottom: calc(-1 * var(--f7-range-scale-step-width));
}

.range-slider-vertical .range-scale-step:before {
  right: 0;
  top: 0;
  height: 100%;
  width: var(--f7-range-scale-step-height);
}

.range-scale-substep {
  --f7-range-scale-step-bg-color: var(--f7-range-scale-substep-bg-color, var(--f7-range-bar-bg-color));
  --f7-range-scale-step-width: var(--f7-range-scale-substep-width);
  --f7-range-scale-step-height: var(--f7-range-scale-substep-height);
}

.ios .range-bar-active {
  border-radius: inherit;
}

.ios .range-knob {
  border-radius: var(--f7-range-knob-height);
  transition-duration: 300ms;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.ios .range-knob:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 44px;
  height: 44px;
}

.ios .range-knob::before,
.ios .range-knob::after {
  content: '';
  position: absolute;
}

.ios .range-knob::before {
  width: 1px;
  height: 1px;
  opacity: 0;
  transition-duration: 300ms;
  box-shadow: 0px 0px 40px 15px rgba(var(--f7-theme-color-rgb), 0.75);
  left: 50%;
  top: 50%;
  margin-left: -0.5px;
  margin-top: -0.5px;
}

.ios .range-knob::after {
  inset: 0;
  border-radius: inherit;
  box-shadow: var(--f7-glass-shadow-thumb);
  transition-duration: 300ms;
  opacity: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}

.ios .range-knob-label {
  margin-bottom: 6px;
  transform: translateX(-50%) translateY(100%) scale(0);
  z-index: 2;
}

.ios .range-knob-active-state .range-knob-label {
  transform: translateX(-50%) translateY(0%) scale(1);
}

.ios .range-knob-active-state .range-knob {
  background: transparent;
  transform: scale(1.4);
}

.ios .range-knob-active-state .range-knob::before {
  opacity: 1;
}

.ios .range-knob-active-state .range-knob::after {
  opacity: 1;
}

.md .range-knob-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.md .range-knob {
  transition-duration: 200ms;
  transition-property: transform, background-color;
  width: 4px;
  height: var(--f7-range-knob-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
}

.md .range-knob-active-state .range-knob {
  transform: scaleX(0.5);
}

.md .range-slider-vertical .range-knob {
  width: var(--f7-range-knob-height);
  height: 4px;
}

.md .range-slider-vertical .range-knob-active-state .range-knob {
  transform: scaleY(0.5);
}

.md .range-slider-min:not(.range-slider-dual) .range-knob {
  background: #fff !important;
  border: 2px solid var(--f7-range-bar-bg-color);
}

.md .range-knob-label {
  width: var(--f7-range-label-size);
  margin-left: calc(-1 * var(--f7-range-label-size) / 2);
  margin-bottom: 8px;
}

.md .range-knob-label:before {
  content: '';
  left: 50%;
  top: 0px;
  margin-left: calc(-1 * var(--f7-range-label-size) / 2);
  position: absolute;
  z-index: -1;
  width: var(--f7-range-label-size);
  height: var(--f7-range-label-size);
  background: var(--f7-range-label-bg-color, var(--f7-theme-color));
  transform: rotate(-45deg);
  border-radius: 50% 50% 50% 0;
}

.md .range-knob-active-state .range-knob-label {
  transform: translateY(0%) scale(1);
}

.md .range-bar-active,
.md .range-bar-inactive {
  border-radius: 4px;
}

.md .range-slider::before,
.md .range-slider::after {
  content: '';
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--f7-range-knob-color);
  top: calc(50% - 2px);
  z-index: 1;
  pointer-events: none;
  transition-duration: 200ms;
}

.md .range-slider::before {
  left: calc(var(--f7-range-knob-width) / 2 - 2px);
}

.md .range-slider::after {
  right: calc(var(--f7-range-knob-width) / 2 - 2px);
}

.md .range-slider:not(.range-slider-dual)::before {
  content: none;
  display: none;
}

.md .range-slider:has(.range-knob-active-state)::before,
.md .range-slider:has(.range-knob-active-state)::after {
  transform: scale(0.5);
}

.md .range-slider.range-slider-vertical::before,
.md .range-slider.range-slider-vertical::after {
  top: auto;
  left: calc(50% - 2px);
  right: auto;
}

.md .range-slider.range-slider-vertical::before {
  bottom: calc(var(--f7-range-knob-width) / 2 - 2px);
}

.md .range-slider.range-slider-vertical::after {
  top: calc(var(--f7-range-knob-width) / 2 - 2px);
}

/* === Stepper === */

:root {
  /*
  --f7-stepper-button-text-color: var(--f7-theme-color);
  --f7-stepper-button-pressed-text-color: var(--f7-button-text-color, var(--f7-theme-color));
  --f7-stepper-value-text-color: var(--f7-theme-color);
  --f7-stepper-fill-button-bg-color: var(--f7-theme-color);
  */
  --f7-stepper-raised-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
  --f7-stepper-value-font-weight: 500;
}

.ios {
  --f7-stepper-height: 34px;
  --f7-stepper-border-radius: 5px;
  --f7-stepper-fill-button-text-color: #fff;
  /*
  --f7-stepper-button-pressed-bg-color: rgba(var(--f7-theme-color-rgb), .15);
  --f7-stepper-fill-button-pressed-bg-color: var(--f7-theme-color-tint);
  */
  --f7-stepper-large-height: 48px;
  --f7-stepper-small-height: 28px;
  --f7-stepper-value-font-size: 17px;
  --f7-stepper-border-width: 2px;
  --f7-stepper-border-color: var(--f7-theme-color);
  --f7-stepper-small-border-width: 2px;
}

.md {
  --f7-stepper-height: 40px;
  --f7-stepper-border-radius: 8px;
  --f7-stepper-large-height: 48px;
  --f7-stepper-small-height: 32px;
  --f7-stepper-value-font-size: 14px;
  --f7-stepper-border-width: 1px;
  --f7-stepper-small-border-width: 1px;
  --f7-stepper-button-pressed-bg-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-stepper-fill-button-text-color: var(--f7-md-on-primary);
  --f7-stepper-fill-button-pressed-bg-color: var(--f7-theme-color);
  --f7-stepper-border-color: var(--f7-md-outline);
}

.stepper {
  --f7-touch-ripple-color: rgba(var(--f7-theme-color-rgb), 0.25);
  display: inline-flex;
  align-items: stretch;
  height: var(--f7-stepper-height);
  border-radius: var(--f7-stepper-border-radius);
}

.stepper-button,
.stepper-button-minus,
.stepper-button-plus {
  background-color: var(--f7-stepper-button-bg-color);
  width: 40px;
  border-radius: var(--f7-stepper-border-radius);
  border: var(--f7-stepper-border-width) solid var(--f7-stepper-border-color);
  color: var(--f7-stepper-button-text-color, var(--f7-theme-color));
  line-height: calc(var(--f7-stepper-height) - var(--f7-stepper-border-width, 0px));
  text-align: center;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  flex-shrink: 0;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
}

.stepper-button.active-state,
.stepper-button-minus.active-state,
.stepper-button-plus.active-state {
  background-color: var(--f7-stepper-button-pressed-bg-color, rgba(var(--f7-theme-color-rgb), 0.15));
  color: var(--f7-stepper-button-pressed-text-color, var(--f7-stepper-button-text-color, var(--f7-theme-color)));
}

.stepper-button:first-child,
.stepper-button-minus:first-child,
.stepper-button-plus:first-child {
  border-radius: var(--f7-stepper-border-radius) 0 0 var(--f7-stepper-border-radius);
}

.stepper-button:last-child,
.stepper-button-minus:last-child,
.stepper-button-plus:last-child {
  border-radius: 0 var(--f7-stepper-border-radius) var(--f7-stepper-border-radius) 0;
}

.stepper-button .icon,
.stepper-button-minus .icon,
.stepper-button-plus .icon {
  pointer-events: none;
}

.stepper-button + .stepper-button,
.stepper-button-minus + .stepper-button,
.stepper-button-plus + .stepper-button,
.stepper-button + .stepper-button-minus,
.stepper-button-minus + .stepper-button-minus,
.stepper-button-plus + .stepper-button-minus,
.stepper-button + .stepper-button-plus,
.stepper-button-minus + .stepper-button-plus,
.stepper-button-plus + .stepper-button-plus {
  border-left: none;
}

.stepper-button-plus,
.stepper-button-minus {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.stepper-button-plus:after,
.stepper-button-minus:after,
.stepper-button-plus:before,
.stepper-button-minus:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--f7-stepper-button-text-color, var(--f7-theme-color));
  border-radius: 2px;
}

.stepper-button-plus:after,
.stepper-button-minus:after {
  width: 15px;
  height: 2px;
}

.stepper-button-plus:before {
  height: 15px;
  width: 2px;
}

.stepper-value {
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}

.stepper-input-wrap,
.stepper-value {
  flex-shrink: 1;
  text-align: center;
  border-top: var(--f7-stepper-border-width) solid var(--f7-stepper-border-color);
  border-bottom: var(--f7-stepper-border-width) solid var(--f7-stepper-border-color);
}

.stepper .stepper-input-wrap input,
.stepper-value {
  width: 45px;
  color: var(--f7-stepper-value-text-color, var(--f7-theme-color));
  font-size: var(--f7-stepper-value-font-size);
  font-weight: var(--f7-stepper-value-font-weight);
  text-align: center;
}

.stepper .stepper-input-wrap input {
  height: 100%;
}

.stepper-round,
.ios .stepper-round-ios,
.md .stepper-round-md {
  --f7-stepper-border-radius: var(--f7-stepper-height);
}

.stepper-fill,
.ios .stepper-fill-ios,
.md .stepper-fill-md {
  --f7-stepper-border-color: var(--f7-stepper-fill-button-bg-color, var(--f7-theme-color));
  --f7-stepper-button-bg-color: var(--f7-stepper-fill-button-bg-color, var(--f7-theme-color));
  --f7-stepper-button-text-color: var(--f7-stepper-fill-button-text-color);
  --f7-touch-ripple-color: var(--f7-touch-ripple-white);
}

.stepper-fill .stepper-button + .stepper-button,
.ios .stepper-fill-ios .stepper-button + .stepper-button,
.md .stepper-fill-md .stepper-button + .stepper-button,
.stepper-raised .stepper-button + .stepper-button,
.ios .stepper-raised-ios .stepper-button + .stepper-button,
.md .stepper-raised-md .stepper-button + .stepper-button,
.stepper-fill .stepper-button-minus + .stepper-button-plus,
.ios .stepper-fill-ios .stepper-button-minus + .stepper-button-plus,
.md .stepper-fill-md .stepper-button-minus + .stepper-button-plus,
.stepper-raised .stepper-button-minus + .stepper-button-plus,
.ios .stepper-raised-ios .stepper-button-minus + .stepper-button-plus,
.md .stepper-raised-md .stepper-button-minus + .stepper-button-plus {
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.stepper-fill .stepper-button + .stepper-button.active-state,
.ios .stepper-fill-ios .stepper-button + .stepper-button.active-state,
.md .stepper-fill-md .stepper-button + .stepper-button.active-state,
.stepper-fill .stepper-button-minus + .stepper-button-plus.active-state,
.ios .stepper-fill-ios .stepper-button-minus + .stepper-button-plus.active-state,
.md .stepper-fill-md .stepper-button-minus + .stepper-button-plus.active-state {
  border-left-color: var(--f7-stepper-button-pressed-bg-color);
}

.stepper-raised:not(.stepper-fill) .stepper-input-wrap,
.ios .stepper-raised-ios:not(.stepper-fill-ios):not(.stepper-fill) .stepper-input-wrap,
.md .stepper-raised-md:not(.stepper-fill-md):not(.stepper-fill) .stepper-input-wrap,
.stepper-raised:not(.stepper-fill) .stepper-value,
.ios .stepper-raised-ios:not(.stepper-fill-ios):not(.stepper-fill) .stepper-value,
.md .stepper-raised-md:not(.stepper-fill-md):not(.stepper-fill) .stepper-value {
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.stepper-large,
.ios .stepper-large-ios,
.md .stepper-large-md {
  --f7-stepper-height: var(--f7-stepper-large-height);
}

.stepper-small,
.ios .stepper-small-ios,
.md .stepper-small-md {
  --f7-stepper-border-width: var(--f7-stepper-small-border-width);
  --f7-stepper-height: var(--f7-stepper-small-height);
}

.ios .stepper-fill.stepper-small-ios,
.ios .stepper-fill.stepper-small {
  --f7-stepper-button-pressed-bg-color: transparent;
  --f7-stepper-button-pressed-text-color: var(--f7-theme-color);
}

.stepper-raised,
.ios .stepper-raised-ios,
.md .stepper-raised-md {
  --f7-stepper-border-width: 0;
  box-shadow: var(--f7-stepper-raised-box-shadow);
}

.ios .stepper-button .f7-icons,
.ios .stepper-button-minus .f7-icons,
.ios .stepper-button-plus .f7-icons {
  font-size: 22px;
}

.ios .stepper-fill,
.ios .stepper-fill-ios {
  --f7-stepper-button-pressed-bg-color: var(--f7-stepper-fill-button-pressed-bg-color, var(--f7-theme-color-tint));
}

.ios .stepper-small.stepper-raised,
.ios .stepper-small-ios.stepper-raised,
.ios .stepper-small.stepper-raised-ios,
.ios .stepper-small-ios.stepper-raised-ios {
  --f7-stepper-border-width: 0px;
}

.ios .stepper-small .stepper-button,
.ios .stepper-small-ios .stepper-button,
.ios .stepper-small .stepper-button-minus,
.ios .stepper-small-ios .stepper-button-minus,
.ios .stepper-small .stepper-button-plus,
.ios .stepper-small-ios .stepper-button-plus {
  transition-duration: 200ms;
}

.ios .stepper-small .stepper-button.active-state:after,
.ios .stepper-small-ios .stepper-button.active-state:after,
.ios .stepper-small .stepper-button-minus.active-state:after,
.ios .stepper-small-ios .stepper-button-minus.active-state:after,
.ios .stepper-small .stepper-button-plus.active-state:after,
.ios .stepper-small-ios .stepper-button-plus.active-state:after,
.ios .stepper-small .stepper-button.active-state:before,
.ios .stepper-small-ios .stepper-button.active-state:before,
.ios .stepper-small .stepper-button-minus.active-state:before,
.ios .stepper-small-ios .stepper-button-minus.active-state:before,
.ios .stepper-small .stepper-button-plus.active-state:before,
.ios .stepper-small-ios .stepper-button-plus.active-state:before {
  transition-duration: 200ms;
  background-color: var(--f7-theme-color);
}

.md .stepper-button,
.md .stepper-button-minus,
.md .stepper-button-plus {
  transition-duration: 300ms;
  transform: translate3d(0, 0, 0);
  overflow: hidden;
}

.md .stepper-fill,
.md .stepper-fill-md {
  --f7-stepper-button-pressed-bg-color: var(--f7-stepper-fill-button-bg-color, var(--f7-theme-color));
}

/* === Smart Select === */

.smart-select :root {
  /*
  --f7-smart-select-sheet-bg: var(--f7-list-bg-color);
  --f7-smart-select-sheet-toolbar-border-color: var(--f7-bars-border-color);
  */
}

.smart-select select {
  display: none;
}

.smart-select .item-after {
  max-width: 70%;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  display: block;
}

.smart-select-sheet .page,
.smart-select-sheet .sheet-modal-inner,
.smart-select-sheet .list ul {
  background: var(--f7-smart-select-sheet-bg, var(--f7-list-bg-color));
}

.smart-select-sheet .toolbar:after {
  content: '';
  position: absolute;
  background-color: var(--f7-smart-select-sheet-toolbar-border-color, var(--f7-bars-border-color));
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
  display: block;
}

.smart-select-sheet .list {
  margin: 0;
}

.smart-select-sheet .list ul:before,
.smart-select-sheet .list ul:after {
  display: none !important;
}

.smart-select-popover .popover-inner {
  max-height: 40vh;
}

/* === Calendar/Datepicker === */

:root {
  --f7-calendar-height: 340px;
  --f7-calendar-sheet-landscape-height: 220px;
  --f7-calendar-popover-width: 320px;
  --f7-calendar-popover-height: 320px;
  --f7-calendar-modal-height: 420px;
  --f7-calendar-modal-max-width: 380px;
  /*

  --f7-calendar-header-text-color: var(--f7-bars-text-color);
  --f7-calendar-footer-text-color: var(--f7-bars-text-color);
  */
  --f7-calendar-week-header-bg-color: transparent;
  --f7-calendar-week-header-font-size: 11px;
  /*
  --f7-calendar-selected-bg-color:  var(--f7-theme-color);
  */
  --f7-calendar-disabled-text-color: #d4d4d4;
  --f7-calendar-event-dot-size: 4px;
  /*
  --f7-calendar-event-bg-color: var(--f7-theme-color);
  */
  /*
  --f7-calendar-picker-selected-text-color: var(--f7-theme-color);
  */
  --f7-calendar-time-selector-height: 28px;
  --f7-calendar-picker-pressed-bg-color: rgba(0, 0, 0, 0.1);
  --f7-calendar-picker-hover-bg-color: rgba(0, 0, 0, 0.03);
  --f7-calendar-time-selector-bg-color: rgba(0, 0, 0, 0.05);
}

:root .dark,
:root.dark {
  --f7-calendar-picker-pressed-bg-color: rgba(255, 255, 255, 0.08);
  --f7-calendar-picker-hover-bg-color: rgba(255, 255, 255, 0.03);
  --f7-calendar-time-selector-bg-color: rgba(255, 255, 255, 0.1);
}

.ios {
  --f7-calendar-sheet-border-color: transparent;
  --f7-calendar-sheet-bg-color: var(--f7-sheet-bg-color);
  --f7-calendar-selected-text-color: #fff;
  --f7-calendar-header-bg-color: transparent;
  --f7-calendar-header-height: 64px;
  --f7-calendar-header-font-size: 17px;
  --f7-calendar-header-font-weight: 600;
  --f7-calendar-header-padding: 0 16px;
  --f7-calendar-header-link-color: var(--f7-bars-text-color);
  --f7-calendar-footer-bg-color: transparent;
  --f7-calendar-footer-border-color: transparent;
  --f7-calendar-footer-height: 48px;
  --f7-calendar-footer-padding: 0 16px;
  --f7-calendar-footer-font-size: 17px;
  --f7-calendar-footer-link-color: var(--f7-bars-text-color);
  --f7-calendar-week-header-height: 18px;
  --f7-calendar-day-font-size: 15px;
  --f7-calendar-day-size: 30px;
  --f7-calendar-picker-font-size: 17px;
  --f7-calendar-time-selector-font-size: 17px;
  --f7-calendar-modal-border-radius: 32px;
  --f7-calendar-modal-box-shadow: var(--f7-glass-shadow);
  --f7-calendar-modal-bg-color: var(--f7-glass-bg-color);
  --f7-calendar-prev-next-text-color: #c8c8c8;
  --f7-calendar-week-header-text-color: #5e5e5e;
  --f7-calendar-day-text-color: #000;
  --f7-calendar-today-text-color: #000;
  --f7-calendar-today-bg-color: #e3e3e3;
}

.ios .dark,
.ios.dark {
  --f7-calendar-prev-next-text-color: #5e5e5e;
  --f7-calendar-week-header-text-color: #aaa;
  --f7-calendar-day-text-color: #fff;
  --f7-calendar-today-text-color: #fff;
  --f7-calendar-today-bg-color: #333;
}

.md {
  /*
  --f7-calendar-header-bg-color: var(--f7-bars-bg-color);
  --f7-calendar-footer-bg-color: var(--f7-bars-bg-color);
  --f7-calendar-footer-border-color: var(--f7-bars-border-color);
  --f7-calendar-footer-link-color: var(--f7-bars-link-color);
  --f7-calendar-header-link-color: var(--f7-bars-link-color);
  */
  --f7-calendar-sheet-border-color: transparent;
  --f7-calendar-header-height: 64px;
  --f7-calendar-header-font-size: 24px;
  --f7-calendar-header-font-weight: 400;
  --f7-calendar-header-padding: 0 24px;
  --f7-calendar-footer-height: 56px;
  --f7-calendar-footer-padding: 0 8px;
  --f7-calendar-footer-font-size: 14px;
  --f7-calendar-week-header-height: 24px;
  --f7-calendar-day-font-size: 14px;
  --f7-calendar-today-bg-color: none;
  --f7-calendar-day-size: 32px;
  --f7-calendar-picker-font-size: 14px;
  --f7-calendar-time-selector-font-size: 14px;
  --f7-calendar-modal-border-radius: 28px;
  --f7-calendar-modal-box-shadow: none;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-calendar-sheet-bg-color: var(--f7-md-surface-1);
  --f7-calendar-selected-text-color: var(--f7-md-on-primary);
  --f7-calendar-week-header-text-color: var(--f7-md-on-surface-variant);
  --f7-calendar-day-text-color: var(--f7-md-on-surface);
  --f7-calendar-prev-next-text-color: rgba(var(--f7-md-on-surface-variant-rgb), 0.55);
  --f7-calendar-today-text-color: var(--f7-theme-color);
  --f7-calendar-modal-bg-color: var(--f7-md-surface-1);
}

.calendar {
  overflow: hidden;
  height: var(--f7-calendar-height);
  width: 100%;
  display: flex;
  flex-direction: column;
}

.calendar.modal-in {
  display: flex;
}

@media (orientation: landscape) and (max-height: 415px) {
  .calendar.calendar-sheet {
    height: var(--f7-calendar-sheet-landscape-height);
  }

  .calendar.calendar-modal {
    height: calc(100vh - var(--f7-navbar-height));
  }
}

.calendar.calendar-inline,
.calendar.calendar-popover .calendar {
  position: relative;
}

.calendar-sheet {
  --f7-sheet-border-color: var(--f7-calendar-sheet-border-color);
  background: var(--f7-calendar-sheet-bg-color);
  padding-bottom: var(--f7-safe-area-bottom);
  height: calc(var(--f7-calendar-height) + var(--f7-safe-area-bottom));
}

.calendar-sheet:before {
  z-index: 600;
}

.calendar-sheet .toolbar:before,
.calendar-modal .toolbar:before,
.calendar-popover .toolbar:before {
  display: none;
}

.calendar-popover {
  width: var(--f7-calendar-popover-width);
}

.calendar-popover .toolbar-top,
.calendar-popover .calendar-header {
  border-radius: var(--f7-popover-border-radius) var(--f7-popover-border-radius) 0 0;
  overflow: hidden;
}

.calendar-popover .calendar-header + .toolbar-top {
  border-radius: 0;
}

.calendar-popover .toolbar-bottom,
.calendar-popover .calendar-footer {
  border-radius: 0 0 var(--f7-popover-border-radius) var(--f7-popover-border-radius);
}

.calendar-popover .calendar {
  height: var(--f7-calendar-popover-height);
  position: relative;
  z-index: 1;
}

.calendar-popover .calendar-month-picker,
.calendar-popover .calendar-year-picker,
.calendar-popover .calendar-time-picker {
  border-radius: var(--f7-popover-border-radius);
}

.calendar-popover .calendar-month-picker .picker,
.calendar-popover .calendar-year-picker .picker,
.calendar-popover .calendar-time-picker .picker {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.calendar-header {
  width: 100%;
  position: relative;
  flex-shrink: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  box-sizing: border-box;
  padding: var(--f7-calendar-header-padding);
  background-color: var(--f7-calendar-header-bg-color, var(--f7-bars-bg-color));
  color: var(--f7-calendar-header-text-color, var(--f7-bars-text-color));
  height: var(--f7-calendar-header-height);
  line-height: var(--f7-calendar-header-height);
  font-size: var(--f7-calendar-header-font-size);
  font-weight: var(--f7-calendar-header-font-weight);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.calendar-header a {
  color: var(--f7-calendar-header-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
}

.calendar-footer {
  width: 100%;
  flex-shrink: 0;
  padding: var(--f7-calendar-footer-padding);
  background-color: var(--f7-calendar-footer-bg-color, var(--f7-bars-bg-color));
  color: var(--f7-calendar-footer-text-color, var(--f7-bars-text-color));
  height: var(--f7-calendar-footer-height);
  font-size: var(--f7-calendar-header-font-size);
  display: flex;
  justify-content: flex-end;
  box-sizing: border-box;
  align-items: center;
  position: relative;
}

.calendar-footer a {
  color: var(--f7-calendar-footer-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
}

.calendar-footer:before {
  content: '';
  position: absolute;
  background-color: var(--f7-calendar-footer-border-color, var(--f7-bars-border-color));
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.calendar-modal {
  position: absolute;
  height: var(--f7-calendar-modal-height);
  overflow: hidden;
  top: 50%;
  left: 50%;
  min-width: 300px;
  max-width: var(--f7-calendar-modal-max-width);
  transform: translate3d(-50%, 100vh, 0);
  transition-property: transform;
  display: flex;
  z-index: 13500;
  background: var(--f7-calendar-modal-bg-color);
  width: 90%;
  border-radius: var(--f7-calendar-modal-border-radius);
  box-shadow: var(--f7-calendar-modal-box-shadow);
  transition-timing-function: cubic-bezier(0, 1, 0.2, 1);
}

.calendar-modal.modal-in,
.calendar-modal.modal-out {
  transition-duration: 400ms;
}

.calendar-modal.modal-in {
  transform: translate3d(-50%, -50%, 0);
}

.calendar-modal.modal-out {
  transform: translate3d(-50%, 100vh, 0);
}

.calendar-week-header {
  display: flex;
  box-sizing: border-box;
  position: relative;
  font-size: var(--f7-calendar-week-header-font-size);
  background-color: var(--f7-calendar-week-header-bg-color, var(--f7-bars-bg-color));
  color: var(--f7-calendar-week-header-text-color, var(--f7-bars-text-color));
  height: var(--f7-calendar-week-header-height);
  padding-left: var(--f7-safe-area-left);
  padding-right: var(--f7-safe-area-right);
}

.calendar-week-header .calendar-week-day {
  flex-shrink: 1;
  width: calc(100% / 7);
  text-align: center;
  line-height: var(--f7-calendar-week-header-height);
}

.calendar-months {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  flex-shrink: 10;
}

.calendar-months-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  transition: 300ms;
}

.calendar-month {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.calendar-row {
  height: 16.66666667%;
  display: flex;
  flex-shrink: 1;
  width: 100%;
  position: relative;
  box-sizing: border-box;
  padding-left: var(--f7-safe-area-left);
  padding-right: var(--f7-safe-area-right);
}

.calendar-modal .calendar-months:first-child .calendar-row:first-child:before,
.calendar-popover .calendar-months:first-child .calendar-row:first-child:before {
  display: none !important;
}

.calendar-day {
  flex-shrink: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  width: 14.28571429%;
  text-align: center;
  cursor: pointer;
  z-index: 20;
  color: var(--f7-calendar-day-text-color);
  height: 100%;
  font-size: var(--f7-calendar-day-font-size);
}

.calendar-day-today .calendar-day-number {
  color: var(--f7-calendar-today-text-color, var(--f7-theme-color));
  background-color: var(--f7-calendar-today-bg-color);
}

.calendar-day-prev,
.calendar-day-next {
  color: var(--f7-calendar-prev-next-text-color);
}

.calendar-day-disabled {
  color: var(--f7-calendar-disabled-text-color);
  cursor: auto;
}

.calendar-day-selected .calendar-day-number {
  color: var(--f7-calendar-selected-text-color);
  background-color: var(--f7-calendar-selected-bg-color, var(--f7-theme-color));
}

.calendar-day-number {
  display: inline-block;
  border-radius: 50%;
  position: relative;
  width: var(--f7-calendar-day-size);
  height: var(--f7-calendar-day-size);
  line-height: var(--f7-calendar-day-size);
}

.calendar-day-events {
  position: absolute;
  display: flex;
  left: 0;
  width: 100%;
  top: 100%;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}

.calendar-day-event {
  width: var(--f7-calendar-event-dot-size);
  height: var(--f7-calendar-event-dot-size);
  border-radius: calc(var(--f7-calendar-event-dot-size) / 2);
  background-color: var(--f7-calendar-event-bg-color);
}

.calendar-day-event + .calendar-day-event {
  margin-left: 2px;
}

.calendar-day-selected-range,
.calendar-day-selected-left,
.calendar-day-selected-right {
  position: relative;
}

.calendar-day-selected-range:before,
.calendar-day-selected-left:before,
.calendar-day-selected-right:before {
  width: 100%;
  height: var(--f7-calendar-day-size);
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
  background-color: var(--f7-calendar-selected-bg-color, var(--f7-theme-color));
  opacity: 0.2;
}

.calendar-day-selected-range:first-child:before,
.calendar-day-selected-left:before {
  left: auto;
  right: 0;
  width: calc(50% + var(--f7-calendar-day-size) / 2);
  border-radius: var(--f7-calendar-day-size) 0 0 var(--f7-calendar-day-size);
}

.calendar-day-selected-range:last-child:before,
.calendar-day-selected-right:before {
  width: calc(50% + var(--f7-calendar-day-size) / 2);
  border-radius: 0 var(--f7-calendar-day-size) var(--f7-calendar-day-size) 0;
}

.calendar-day-selected-left:last-child:before,
.calendar-day-selected-right:first-child:before {
  display: none;
}

.calendar-day-selected-left.calendar-day-selected-right:before {
  content: none;
  display: none;
}

.calendar-day-selected-range .calendar-day-number {
  background-color: transparent;
  color: inherit;
}

.calendar-month-selector,
.calendar-year-selector {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 50%;
  max-width: 200px;
  flex-shrink: 10;
  margin-left: auto;
  margin-right: auto;
}

.calendar-month-selector .calendar-day-number,
.calendar-year-selector .calendar-day-number {
  flex-shrink: 1;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
}

.calendar-month-selector a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.calendar-year-selector a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  min-width: 36px;
}

.calendar-month-picker,
.calendar-year-picker,
.calendar-time-picker {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background: transparent;
}

.calendar-month-picker .picker-columns,
.calendar-year-picker .picker-columns {
  text-align: center;
}

.calendar-month-picker-item,
.calendar-year-picker-item {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition-duration: 100ms;
  box-sizing: border-box;
}

.calendar-month-picker-item span,
.calendar-year-picker-item span {
  white-space: nowrap;
  text-overflow: ellipsis;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  pointer-events: none;
}

.calendar-month-picker-item.active-state,
.calendar-year-picker-item.active-state {
  background: var(--f7-calendar-picker-pressed-bg-color);
}

.calendar-month-picker-item {
  padding: 5px;
}

.sheet-modal .calendar-month-picker-item {
  width: 25%;
  height: 33.33333333%;
}

.sheet-modal .calendar-month-picker-item:nth-child(4n + 1):before {
  display: none !important;
}

.sheet-modal .calendar-month-picker-item:nth-child(n + 9):after {
  display: none !important;
}

.popover .calendar-month-picker-item,
.calendar-modal .calendar-month-picker-item {
  width: 33.33333333%;
  height: 25%;
}

.popover .calendar-month-picker-item:nth-child(3n + 1):before,
.calendar-modal .calendar-month-picker-item:nth-child(3n + 1):before {
  display: none !important;
}

.popover .calendar-month-picker-item:nth-child(n + 10):after,
.calendar-modal .calendar-month-picker-item:nth-child(n + 10):after {
  display: none !important;
}

.calendar-month-picker-item-current,
.calendar-year-picker-item-current {
  color: var(--f7-calendar-picker-selected-text-color, var(--f7-theme-color));
}

.calendar-year-picker {
  overflow: auto;
  --webkit-overflow-scrolling: touch;
}

.calendar-year-picker-item {
  height: 34px;
  line-height: 34px;
  width: 100%;
}

.calendar-time-selector {
  flex-shrink: 0;
  font-size: var(--f7-calendar-time-selector-font-size);
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
}

.calendar-time-selector a {
  overflow: hidden;
  position: relative;
  justify-content: center;
  align-items: center;
  display: flex;
  box-sizing: border-box;
  height: var(--f7-calendar-time-selector-height);
  background-color: var(--f7-calendar-time-selector-bg-color);
  padding: 0 16px;
  border-radius: 8px;
}

.calendar-time-selector > span {
  font-weight: 500;
}

.calendar-time-selector .segmented {
  margin-left: 8px;
}

.calendar-time-picker-popover,
.calendar-year-picker-popover,
.calendar-month-picker-popover {
  height: 240px;
  width: 240px;
}

.calendar-time-picker-popover .popover-inner,
.calendar-year-picker-popover .popover-inner,
.calendar-month-picker-popover .popover-inner {
  height: 100%;
  overflow: hidden;
}

.calendar-time-picker {
  --f7-picker-popover-height: 100%;
  --f7-picker-inline-height: 100%;
}

.calendar-time-picker .toolbar {
  flex-shrink: 0;
  top: 0 !important;
}

.calendar-time-picker .picker {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.ios .toolbar .calendar-month-selector,
.ios .toolbar .calendar-year-selector {
  justify-content: space-between;
}

.ios .toolbar .calendar-month-selector .link,
.ios .toolbar .calendar-year-selector .link {
  padding: 0;
}

.ios .toolbar .calendar-month-selector .current-month-value,
.ios .toolbar .calendar-year-selector .current-month-value,
.ios .toolbar .calendar-month-selector .current-year-value,
.ios .toolbar .calendar-year-selector .current-year-value {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

.ios .calendar .toolbar {
  position: relative;
  margin-bottom: 16px;
  overflow: visible;
}

.ios .calendar .toolbar::before,
.ios .calendar .toolbar::after {
  display: none;
}

.ios .calendar-popover .toolbar {
  overflow: visible;
}

.ios .calendar-modal {
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

.ios .calendar-header .toolbar-pane {
  height: auto;
}

.ios .calendar-header a.link {
  width: 48px;
  height: 48px;
}

.md .calendar-header {
  overflow: hidden;
}

/* === Picker === */

:root {
  --f7-picker-height: 260px;
  --f7-picker-inline-height: 200px;
  --f7-picker-popover-height: 260px;
  --f7-picker-popover-width: 280px;
  --f7-picker-landscape-height: 200px;
  --f7-picker-item-height: 36px;
  /*
  --f7-picker-sheet-bg-color: var(--f7-sheet-bg-color);
  */
}

.ios {
  --f7-picker-column-font-size: 20px;
  --f7-picker-item-selected-text-color: #000;
  --f7-picker-item-selected-bg-color: rgba(0, 0, 0, 0.07);
  --f7-picker-divider-text-color: #000;
  --f7-picker-item-text-color: rgba(0, 0, 0, 0.45);
}

.ios .dark,
.ios.dark {
  --f7-picker-item-selected-text-color: #fff;
  --f7-picker-item-selected-bg-color: rgba(255, 255, 255, 0.1);
  --f7-picker-divider-text-color: #fff;
  --f7-picker-item-text-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-picker-column-font-size: 20px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-picker-item-selected-text-color: var(--f7-md-on-surface);
  --f7-picker-item-text-color: var(--f7-md-on-surface-variant);
  --f7-picker-divider-text-color: var(--f7-md-on-surface);
  --f7-picker-item-selected-border-color: var(--f7-md-outline);
}

.picker {
  width: 100%;
  height: var(--f7-picker-height);
}

.picker.picker-inline {
  height: var(--f7-picker-inline-height);
}

.popover .picker {
  height: var(--f7-picker-popover-height);
}

@media (orientation: landscape) and (max-height: 415px) {
  .picker:not(.picker-inline) {
    height: var(--f7-picker-landscape-height);
  }
}

.picker.sheet-modal {
  background: var(--f7-picker-sheet-bg-color, var(--f7-sheet-bg-color));
}

.picker-popover {
  width: var(--f7-picker-popover-width);
}

.picker-popover .toolbar {
  background: none;
  border-radius: var(--f7-popover-border-radius) var(--f7-popover-border-radius) 0 0;
}

.picker-columns {
  display: flex;
  overflow: hidden;
  justify-content: center;
  padding: 0;
  text-align: right;
  height: 100%;
  position: relative;
  font-size: var(--f7-picker-column-font-size);
  --f7-picker-mask-bg-color: transparent;
}

.popover .picker-columns {
  border-radius: 0 0 var(--f7-popover-border-radius) var(--f7-popover-border-radius);
}

.picker-columns::before,
.picker-columns::after {
  content: '';
  position: absolute;
  left: 0;
  width: 100%;
  height: 20%;
  z-index: 100;
  pointer-events: none;
}

.page .picker-columns {
  --f7-picker-mask-bg-color: var(--f7-page-bg-color);
}

.block-strong .picker-columns {
  --f7-picker-mask-bg-color: var(--f7-block-strong-bg-color);
}

.picker-sheet .picker-columns {
  --f7-picker-mask-bg-color: var(--f7-picker-sheet-bg-color, var(--f7-sheet-bg-color));
}

.picker-popover .picker-columns {
  --f7-picker-mask-bg-color: var(--f7-popover-bg-color);
}

.picker-columns::before {
  top: 0;
  background-image: linear-gradient(to bottom, var(--f7-picker-mask-bg-color), transparent);
}

.picker-columns::after {
  bottom: 0;
  background-image: linear-gradient(to top, var(--f7-picker-mask-bg-color), transparent);
}

.picker-column {
  position: relative;
  max-height: 100%;
  z-index: 10;
}

.picker-column.picker-column-first.picker-column-last {
  width: 100%;
}

.picker-column.picker-column-left {
  text-align: left;
}

.picker-column.picker-column-center {
  text-align: center;
}

.picker-column.picker-column-right {
  text-align: right;
}

.picker-column.picker-column-divider {
  display: flex;
  align-items: center;
  color: var(--f7-picker-divider-text-color);
}

.picker-items {
  overflow: auto;
  scroll-snap-type: y mandatory;
  height: 100%;
  box-sizing: border-box;
  padding: var(--f7-picker-scroll-padding, 0px) 0px;
  scrollbar-width: none;
  scrollbar-color: transparent;
}

.picker-items::-webkit-scrollbar {
  -webkit-appearance: none;
          appearance: none;
  width: 0px;
  display: none;
  opacity: 0;
  background: transparent;
}

.picker-items::-webkit-scrollbar-track {
  box-shadow: none;
  background: transparent;
}

.picker-items::-webkit-scrollbar-thumb {
  background-color: transparent;
  outline: none;
  border-radius: 9999px;
  position: relative;
}

.picker-item {
  height: var(--f7-picker-item-height);
  line-height: var(--f7-picker-item-height);
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  left: 0;
  top: 0;
  width: 100%;
  box-sizing: border-box;
  color: var(--f7-picker-item-text-color);
  cursor: pointer;
  scroll-snap-align: center;
}

.picker-item span {
  padding: 0 10px;
}

.picker-item.picker-item-far {
  pointer-events: none;
}

.picker-item.picker-item-selected {
  color: var(--f7-picker-item-selected-text-color);
  transform: translate3d(0, 0, 0) rotateX(0deg);
}

.picker-column-free-mode .picker-item {
  scroll-snap-align: none;
}

.picker-center-highlight {
  height: var(--f7-picker-item-height);
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  margin-top: calc(-1 * var(--f7-picker-item-height) / 2);
  pointer-events: none;
}

.picker-3d .picker-columns {
  overflow: hidden;
}

.picker-3d .picker-column,
.picker-3d .picker-items,
.picker-3d .picker-item {
  transform-style: preserve-3d;
}

.picker-3d .picker-column {
  overflow: visible;
}

.picker-3d .picker-item {
  perspective: 1200px;
  overflow: visible;
}

.picker-3d .picker-item > span {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: block;
  transform-style: preserve-3d;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  box-sizing: border-box;
  max-width: 100%;
  transform-origin: center center -100px;
}

.ios .picker-center-highlight {
  left: 16px;
  right: 16px;
  background-color: var(--f7-picker-item-selected-bg-color);
  border-radius: 16px;
}

.popover .ios .picker-center-highlight {
  left: 8px;
  right: 8px;
}

.ios .picker-popover .toolbar {
  position: absolute;
}

.md .picker-popover .toolbar:before {
  display: none !important;
}

.md .picker-popover .toolbar + .picker-columns {
  height: calc(100% - var(--f7-toolbar-height));
}

.md .picker-center-highlight {
  left: 0;
  right: 0;
  border-top: 1px solid var(--f7-md-outline);
  border-bottom: 1px solid var(--f7-md-outline);
}

/* === Infinite === */

.infinite-scroll-preloader {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.infinite-scroll-preloader.preloader {
  display: block;
}

.ios .infinite-scroll-preloader {
  margin-top: 35px;
  margin-bottom: 35px;
}

.ios .infinite-scroll-preloader .preloader,
.ios .infinite-scroll-preloader.preloader {
  width: 27px;
  height: 27px;
}

.md .infinite-scroll-preloader {
  margin-top: 32px;
  margin-bottom: 32px;
}

/* === PTR === */

.ios {
  --f7-ptr-preloader-size: 28px;
  --f7-ptr-size: 44px;
}

.md {
  --f7-ptr-preloader-size: 22px;
  --f7-ptr-size: 40px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-ptr-preloader-bg-color: var(--f7-md-surface-1);
  --f7-ptr-preloader-color: var(--f7-md-primary);
}

.ptr-preloader {
  position: relative;
  top: var(--f7-ptr-top, 0);
  height: var(--f7-ptr-size);
  pointer-events: none;
}

.ptr-preloader .preloader {
  position: absolute;
  left: 50%;
  width: var(--f7-ptr-preloader-size);
  height: var(--f7-ptr-preloader-size);
  margin-left: calc(-1 * var(--f7-ptr-preloader-size) / 2);
  margin-top: calc(-1 * var(--f7-ptr-preloader-size) / 2);
  top: 50%;
  visibility: hidden;
}

.ptr-bottom .ptr-preloader {
  top: auto;
  bottom: 0;
  position: fixed;
}

.ptr-with-navbar-large-transparent .ptr-preloader,
.ptr-with-navbar-transparent .ptr-preloader {
  top: calc(-1 * var(--f7-page-navbar-offset, 0px) + var(--f7-safe-area-top));
}

.ios .ptr-preloader {
  margin-bottom: calc(-1 * var(--f7-ptr-size));
  width: 100%;
  left: 0;
  top: 0;
  position: relative;
}

.ios .ptr-preloader .preloader {
  visibility: visible;
}

.ios .ptr-content:not(.ptr-refreshing):not(.ptr-pull-up) .ptr-preloader .preloader,
.ios .ptr-content:not(.ptr-refreshing):not(.ptr-pull-up) .ptr-preloader .preloader-inner {
  animation: none;
}

.ios .ptr-content:not(.ptr-refreshing):not(.ptr-pull-up):not(.ptr-pull-down) .ptr-preloader .preloader-inner-line,
.ios .ptr-content.ptr-closing .ptr-preloader .preloader-inner-line {
  opacity: 0 !important;
}

.ios .ptr-transitioning > *,
.ios .ptr-refreshing > * {
  transition-duration: 200ms;
  transition-property: transform;
}

.ios .ptr-transitioning .ptr-preloader .preloader-inner-line {
  transition-duration: 200ms;
}

.ios .ptr-pull-up .ptr-preloader .preloader {
  animation: ios-ptr-preloader-spin 1s ease-out forwards;
}

.ios .ptr-refreshing:not(.ptr-bottom) {
  transform: none;
}

.ios .ptr-refreshing:not(.ptr-bottom) > * {
  transform: translate3d(0, var(--f7-ptr-size), 0);
}

.ios .ptr-refreshing:not(.ptr-bottom) > .ptr-preloader {
  transform: translate3d(0, 0, 0);
}

.ios .ptr-bottom .ptr-preloader {
  margin-bottom: 0;
  margin-top: calc(-1 * var(--f7-ptr-size));
  position: relative;
}

.ios .ptr-bottom.ptr-transitioning > *,
.ios .ptr-bottom.ptr-refreshing > * {
  transition-duration: 300ms;
  transition-property: transform;
}

.ios .ptr-bottom.ptr-refreshing {
  transform: none;
}

.ios .ptr-bottom.ptr-refreshing > * {
  transform: translate3d(0, calc(-1 * var(--f7-ptr-size)), 0);
}

.ios .ptr-bottom.ptr-refreshing > .ptr-preloader {
  transform: translate3d(0, 0, 0);
}

@keyframes ios-ptr-preloader-spin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(135deg);
  }
}

.md {
  --f7-ptr-top: -4px;
}

.md .ptr-preloader {
  width: var(--f7-ptr-size);
  border-radius: 50%;
  background: var(--f7-ptr-preloader-bg-color);
  --f7-preloader-color: var(--f7-ptr-preloader-color);
  margin-top: calc(-1 * var(--f7-ptr-size));
  z-index: 100;
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  left: 50%;
  margin-left: calc(-1 * var(--f7-ptr-size) / 2);
}

.md .ptr-preloader .preloader circle {
  stroke-width: 4;
}

.md .ptr-arrow {
  width: 22px;
  height: 22px;
  box-sizing: border-box;
  border: 3px solid var(--f7-preloader-color);
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -11px;
  margin-top: -11px;
  border-left-color: transparent;
  border-radius: 50%;
  opacity: 1;
  transform: rotate(150deg);
}

.md .ptr-arrow:after {
  content: '';
  width: 0px;
  height: 0px;
  position: absolute;
  left: -5px;
  bottom: 0px;
  border-bottom-width: 6px;
  border-bottom-style: solid;
  border-bottom-color: inherit;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  transform: rotate(-40deg);
}

.md .ptr-content:not(.ptr-refreshing):not(.ptr-pull-up) .ptr-preloader .preloader,
.md .ptr-content:not(.ptr-refreshing):not(.ptr-pull-up) .ptr-preloader .preloader-inner,
.md .ptr-content:not(.ptr-refreshing):not(.ptr-pull-up) .ptr-preloader circle {
  animation: none;
}

.md .ptr-refreshing .ptr-preloader .preloader,
.md .ptr-pull-up .ptr-preloader .preloader {
  visibility: visible;
}

.md .ptr-refreshing .ptr-arrow,
.md .ptr-pull-up .ptr-arrow {
  visibility: hidden;
}

.md .ptr-refreshing .ptr-preloader {
  transform: translate3d(0, 66px, 0);
}

.md .ptr-transitioning .ptr-arrow {
  transition: 300ms;
}

.md .ptr-pull-up .ptr-arrow {
  transition: 400ms;
  transform: rotate(620deg) !important;
  opacity: 0;
}

.md .ptr-transitioning .ptr-preloader,
.md .ptr-refreshing .ptr-preloader {
  transition-duration: 300ms;
  transition-property: transform, opacity;
}

.md .ptr-bottom .ptr-preloader {
  margin-top: 0;
  margin-bottom: calc(-1 * var(--f7-ptr-size) - 4px);
}

.md .ptr-bottom.ptr-refreshing .ptr-preloader {
  transform: translate3d(0, -66px, 0);
}

.md .ptr-with-navbar-large-transparent .ptr-preloader,
.md .ptr-with-navbar-transparent .ptr-preloader {
  opacity: 0;
}

.md .ptr-with-navbar-large-transparent.ptr-pull-down .ptr-preloader,
.md .ptr-with-navbar-transparent.ptr-pull-down .ptr-preloader,
.md .ptr-with-navbar-large-transparent.ptr-pull-up .ptr-preloader,
.md .ptr-with-navbar-transparent.ptr-pull-up .ptr-preloader,
.md .ptr-with-navbar-large-transparent.ptr-refreshing .ptr-preloader,
.md .ptr-with-navbar-transparent.ptr-refreshing .ptr-preloader {
  opacity: 1;
}

.md .ptr-with-navbar-large-transparent.ptr-closing .ptr-preloader,
.md .ptr-with-navbar-transparent.ptr-closing .ptr-preloader {
  opacity: 0;
  transition-duration: 300ms;
}

/* === Data Table === */

:root {
  --f7-table-head-font-size: 12px;
  --f7-table-body-font-size: 14px;
  --f7-table-footer-font-size: 12px;
  --f7-table-input-height: 24px;
  --f7-table-input-font-size: 14px;
  --f7-table-collapsible-cell-padding: 16px;
  --f7-table-link-icon-only-icon-size: 20px;
  --f7-table-head-bg-color: transparent;
  --f7-table-card-header-bg-color: transparent;
  --f7-table-card-header-height: 64px;
  --f7-table-cell-padding-vertical: 0px;
  --f7-table-sortable-icon-color: #000;
}

:root .dark,
:root.dark {
  --f7-table-sortable-icon-color: #fff;
  --f7-table-input-text-color: #fff;
}

.ios {
  --f7-table-head-font-weight: 600;
  --f7-table-head-cell-height: 44px;
  --f7-table-head-icon-size: 18px;
  --f7-table-body-cell-height: 44px;
  --f7-table-cell-padding-horizontal: 16px;
  --f7-table-edge-cell-padding-horizontal: 16px;
  --f7-table-label-cell-padding-horizontal: 16px;
  --f7-table-checkbox-cell-width: 22px;
  /* --f7-table-actions-cell-link-color: var(--f7-theme-color); */
  /* --f7-table-actions-link-color: var(--f7-theme-color); */
  --f7-table-title-font-size: 17px;
  --f7-table-title-font-weight: 600;
  --f7-table-footer-height: 44px;
  --f7-table-head-text-color: rgba(0, 0, 0, 0.45);
  --f7-table-cell-border-color: rgba(0, 0, 0, 0.22);
  --f7-table-selected-row-bg-color: rgba(0, 0, 0, 0.03);
  --f7-table-footer-text-color: rgba(0, 0, 0, 0.45);
  --f7-table-input-text-color: #000;
}

.ios .dark,
.ios.dark {
  --f7-table-head-text-color: rgba(255, 255, 255, 0.55);
  --f7-table-cell-border-color: rgba(255, 255, 255, 0.15);
  --f7-table-footer-text-color: rgba(255, 255, 255, 0.55);
  --f7-table-selected-row-bg-color: rgba(255, 255, 255, 0.08);
}

.md {
  --f7-table-head-font-weight: 500;
  --f7-table-head-cell-height: 56px;
  --f7-table-head-icon-size: 16px;
  --f7-table-body-cell-height: 48px;
  --f7-table-cell-padding-horizontal: 28px;
  --f7-table-edge-cell-padding-horizontal: 24px;
  --f7-table-label-cell-padding-horizontal: 24px;
  --f7-table-checkbox-cell-width: 18px;
  --f7-table-title-font-size: 20px;
  --f7-table-title-font-weight: 400;
  --f7-table-footer-height: 56px;
  --f7-table-actions-cell-link-color: rgba(0, 0, 0, 0.54);
  --f7-table-actions-link-color: rgba(0, 0, 0, 0.54);
  --f7-table-input-text-color: #212121;
}

.md .dark,
.md.dark {
  --f7-table-actions-cell-link-color: rgba(255, 255, 255, 0.54);
  --f7-table-actions-link-color: rgba(255, 255, 255, 0.54);
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-table-head-text-color: var(--f7-md-on-surface-variant);
  --f7-table-footer-text-color: var(--f7-md-on-surface-variant);
  --f7-table-selected-row-bg-color: var(--f7-md-secondary-container);
  --f7-table-cell-border-color: var(--f7-md-outline);
}

.data-table {
  overflow-x: auto;
}

.data-table table,
table.data-table {
  width: 100%;
  border: none;
  padding: 0;
  margin: 0;
  border-collapse: collapse;
  text-align: left;
}

.data-table thead th,
.data-table thead td {
  font-size: var(--f7-table-head-font-size);
  font-weight: var(--f7-table-head-font-weight);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 16px;
  height: var(--f7-table-head-cell-height);
  background-color: var(--f7-table-head-bg-color);
}

.data-table thead th:not(.sortable-cell-active),
.data-table thead td:not(.sortable-cell-active) {
  color: var(--f7-table-head-text-color);
}

.data-table thead i.icon,
.data-table thead i.f7-icons,
.data-table thead i.material-icons {
  vertical-align: top;
  font-size: var(--f7-table-head-icon-size);
}

.data-table tbody {
  font-size: var(--f7-table-body-font-size);
}

.data-table tbody th,
.data-table tbody td {
  height: var(--f7-table-body-cell-height);
}

.data-table tbody tr.data-table-row-selected,
.device-desktop .data-table tbody tr:hover {
  background: var(--f7-table-selected-row-bg-color);
}

.data-table tbody td:before,
.data-table tbody th:before {
  content: '';
  position: absolute;
  background-color: var(--f7-table-cell-border-color);
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.data-table th,
.data-table td {
  --f7-table-cell-padding-left: var(--f7-table-cell-padding-horizontal);
  --f7-table-cell-padding-right: var(--f7-table-cell-padding-horizontal);
  padding-top: var(--f7-table-cell-padding-vertical);
  padding-bottom: var(--f7-table-cell-padding-vertical);
  padding-left: var(--f7-table-cell-padding-left);
  padding-right: var(--f7-table-cell-padding-right);
  position: relative;
  box-sizing: border-box;
}

.data-table th:first-child,
.data-table td:first-child {
  --f7-table-cell-padding-left: var(--f7-table-edge-cell-padding-horizontal);
}

.data-table th:last-child,
.data-table td:last-child {
  --f7-table-cell-padding-right: var(--f7-table-edge-cell-padding-horizontal);
}

.data-table th.label-cell,
.data-table td.label-cell {
  --f7-table-cell-padding-left: var(--f7-table-label-cell-padding-horizontal);
  --f7-table-cell-padding-right: var(--f7-table-label-cell-padding-horizontal);
}

.data-table th.numeric-cell,
.data-table td.numeric-cell {
  text-align: right;
}

.data-table th.checkbox-cell,
.data-table td.checkbox-cell {
  overflow: visible;
  width: var(--f7-table-checkbox-cell-width);
}

.data-table th.checkbox-cell label + span,
.data-table td.checkbox-cell label + span {
  margin-left: 8px;
}

.data-table th.checkbox-cell:first-child,
.data-table td.checkbox-cell:first-child {
  padding-right: calc(var(--f7-table-cell-padding-right) / 2);
}

.data-table th.checkbox-cell:first-child + td,
.data-table td.checkbox-cell:first-child + td,
.data-table th.checkbox-cell:first-child + th,
.data-table td.checkbox-cell:first-child + th {
  padding-left: calc(var(--f7-table-cell-padding-left) / 2);
}

.data-table th.checkbox-cell:last-child,
.data-table td.checkbox-cell:last-child {
  padding-left: calc(var(--f7-table-cell-padding-left) / 2);
}

.data-table th.actions-cell,
.data-table td.actions-cell {
  text-align: right;
  white-space: nowrap;
}

.data-table th.actions-cell a.link,
.data-table td.actions-cell a.link {
  color: var(--f7-table-actions-cell-link-color, var(--f7-theme-color));
}

.data-table th a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.data-table td a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.card .data-table th a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.card .data-table td a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.card.data-table th a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.card.data-table td a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  font-size: 0;
  min-width: 0;
}

.data-table th a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) i,
.data-table td a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) i,
.card .data-table th a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) i,
.card .data-table td a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) i,
.card.data-table th a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) i,
.card.data-table td a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) i {
  font-size: var(--f7-table-link-icon-only-icon-size);
  vertical-align: middle;
}

.data-table .sortable-cell:not(.input-cell) {
  cursor: pointer;
  position: relative;
}

.data-table .sortable-cell.input-cell .table-head-label {
  cursor: pointer;
  position: relative;
}

.data-table .sortable-cell:not(.numeric-cell):not(.input-cell):after,
.data-table .sortable-cell.numeric-cell:not(.input-cell):before,
.data-table .sortable-cell:not(.numeric-cell).input-cell > .table-head-label:after,
.data-table .sortable-cell.numeric-cell.input-cell > .table-head-label:before {
  content: 'arrow_bottom_md';
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  width: 16px;
  height: 16px;
  color: var(--f7-table-sortable-icon-color);
  font-size: 13px;
  line-height: 16px;
  transition-duration: 300ms;
  transform: rotate(0);
  opacity: 0;
}

.device-desktop .data-table .sortable-cell:not(.sortable-cell-active):hover:after,
.device-desktop .data-table .sortable-cell:not(.sortable-cell-active) .table-head-label:hover:after,
.device-desktop .data-table .sortable-cell:not(.sortable-cell-active):hover:before,
.device-desktop .data-table .sortable-cell:not(.sortable-cell-active) .table-head-label:hover:before {
  opacity: 0.54;
}

.data-table .sortable-cell.sortable-cell-active:after,
.data-table .sortable-cell.sortable-cell-active .table-head-label:after,
.data-table .sortable-cell.sortable-cell-active:before,
.data-table .sortable-cell.sortable-cell-active .table-head-label:before {
  opacity: 0.87 !important;
}

.data-table .sortable-cell.sortable-desc:after,
.data-table .sortable-cell.sortable-desc:after,
.data-table .table-head-label:after,
.data-table .sortable-cell.sortable-desc:before,
.data-table .sortable-cell.sortable-desc:before,
.data-table .table-head-label:before {
  transform: rotate(180deg) !important;
}

.data-table.card .card-header,
.card .data-table .card-header,
.data-table.card .card-footer,
.card .data-table .card-footer {
  padding-left: var(--f7-table-edge-cell-padding-horizontal);
  padding-right: var(--f7-table-edge-cell-padding-horizontal);
}

.data-table.card .card-header,
.card .data-table .card-header {
  min-height: var(--f7-table-card-header-height);
  background-color: var(--f7-table-card-header-bg-color);
}

.data-table.card .card-content,
.card .data-table .card-content {
  overflow-x: auto;
}

.data-table.card .card-footer,
.card .data-table .card-footer {
  min-height: var(--f7-table-footer-height);
}

.data-table .data-table-title {
  font-size: var(--f7-table-title-font-size);
  font-weight: var(--f7-table-title-font-weight);
}

.data-table .data-table-links,
.data-table .data-table-actions {
  display: flex;
}

.data-table .data-table-links .button {
  min-width: 64px;
}

.data-table .data-table-actions {
  margin-left: auto;
  align-items: center;
}

.data-table .data-table-actions a.link {
  color: var(--f7-table-actions-link-color, var(--f7-theme-color));
  min-width: 0;
}

.data-table .data-table-actions a.link:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  line-height: 1;
  justify-content: center;
  padding: 0;
}

.data-table .data-table-header,
.data-table .data-table-header-selected {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.data-table .card-header > .data-table-header,
.data-table .card-header > .data-table-header-selected {
  padding-top: var(--f7-card-header-padding-vertical);
  padding-bottom: var(--f7-card-header-padding-vertical);
  height: 100%;
  margin-top: calc(-1 * var(--f7-card-header-padding-vertical));
  margin-bottom: calc(-1 * var(--f7-card-header-padding-vertical));
  min-height: var(--f7-table-card-header-height);
  padding-left: var(--f7-table-edge-cell-padding-horizontal);
  padding-right: var(--f7-table-edge-cell-padding-horizontal);
  margin-left: calc(-1 * var(--f7-table-edge-cell-padding-horizontal));
  margin-right: calc(-1 * var(--f7-table-edge-cell-padding-horizontal));
}

.data-table .data-table-header-selected {
  background: rgba(var(--f7-theme-color-rgb), 0.1);
  display: none;
}

.data-table.data-table-has-checked .data-table-header {
  display: none;
}

.data-table.data-table-has-checked .data-table-header-selected {
  display: flex;
}

.data-table .data-table-title-selected {
  font-size: 14px;
  color: var(--f7-theme-color);
}

.data-table .data-table-footer {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  position: relative;
  font-size: var(--f7-table-footer-font-size);
  overflow: hidden;
  min-height: var(--f7-table-footer-height);
  color: var(--f7-table-footer-text-color);
  justify-content: flex-end;
}

.data-table .data-table-footer:before {
  content: '';
  position: absolute;
  background-color: var(--f7-table-cell-border-color);
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.data-table .data-table-rows-select,
.data-table .data-table-pagination {
  display: flex;
  align-items: center;
}

.data-table .input-cell {
  padding-top: 8px;
  padding-bottom: 8px;
  height: auto;
  vertical-align: top;
}

.data-table .input-cell .table-head-label + .input {
  margin-top: 4px;
}

.data-table .input-cell .input {
  height: var(--f7-table-input-height);
}

.data-table .input-cell .input input,
.data-table .input-cell .input textarea,
.data-table .input-cell .input select {
  height: var(--f7-table-input-height);
  color: var(--f7-table-input-text-color);
  font-size: var(--f7-table-input-font-size);
}

@media (max-width: 480px) and (orientation: portrait) {
  .data-table.data-table-collapsible thead {
    display: none;
  }

  .data-table.data-table-collapsible tbody,
  .data-table.data-table-collapsible tr,
  .data-table.data-table-collapsible td {
    display: block;
  }

  .data-table.data-table-collapsible tr {
    position: relative;
  }

  .data-table.data-table-collapsible tr:before {
    content: '';
    position: absolute;
    background-color: var(--f7-table-cell-border-color);
    display: block;
    z-index: 15;
    top: 0;
    right: auto;
    bottom: auto;
    left: 0;
    height: 1px;
    width: 100%;
    transform-origin: 50% 0%;
    transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
  }

  .data-table.data-table-collapsible tr:hover {
    background-color: inherit;
  }

  .data-table.data-table-collapsible td {
    --f7-table-cell-padding-left: var(--f7-table-collapsible-cell-padding);
    --f7-table-cell-padding-right: var(--f7-table-collapsible-cell-padding);
    height: auto;
    min-height: var(--f7-table-body-cell-height);
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
  }

  .data-table.data-table-collapsible td:before {
    display: none !important;
  }

  .data-table.data-table-collapsible td:not(.checkbox-cell):before {
    width: 40%;
    display: block !important;
    content: attr(data-collapsible-title);
    position: relative;
    height: auto;
    background: none !important;
    transform: none !important;
    font-size: var(--f7-table-head-font-size);
    font-weight: var(--f7-table-head-font-weight);
    color: var(--f7-table-head-text-color);
    margin-right: 16px;
    flex-shrink: 0;
  }

  .data-table.data-table-collapsible td.checkbox-cell {
    position: absolute;
    top: 0;
    left: 0;
  }

  .data-table.data-table-collapsible td.checkbox-cell + td {
    padding-left: 16px;
  }

  .data-table.data-table-collapsible td.checkbox-cell ~ td {
    margin-left: 32px;
  }
}

.data-table .sm-only,
.data-table .sm-landscape-only {
  display: none;
}

@media (min-width: 640px) {
  .data-table .sm-only {
    display: table-cell;
  }
}

@media (min-width: 640px) and (orientation: landscape) {
  .data-table .sm-landscape-only {
    display: table-cell;
  }
}

.data-table .md-only,
.data-table .md-landscape-only {
  display: none;
}

@media (min-width: 768px) {
  .data-table .md-only {
    display: table-cell;
  }
}

@media (min-width: 768px) and (orientation: landscape) {
  .data-table .md-landscape-only {
    display: table-cell;
  }
}

.data-table .lg-only,
.data-table .lg-landscape-only {
  display: none;
}

@media (min-width: 1024px) {
  .data-table .lg-only {
    display: table-cell;
  }
}

@media (min-width: 1024px) and (orientation: landscape) {
  .data-table .lg-landscape-only {
    display: table-cell;
  }
}

.data-table .xl-only,
.data-table .xl-landscape-only {
  display: none;
}

@media (min-width: 1280px) {
  .data-table .xl-only {
    display: table-cell;
  }
}

@media (min-width: 1280px) and (orientation: landscape) {
  .data-table .xl-landscape-only {
    display: table-cell;
  }
}

.data-table .2xl-only,
.data-table .2xl-landscape-only {
  display: none;
}

@media (min-width: 1536px) {
  .data-table .2xl-only {
    display: table-cell;
  }
}

@media (min-width: 1536px) and (orientation: landscape) {
  .data-table .2xl-landscape-only {
    display: table-cell;
  }
}

.ios .data-table th.actions-cell a.link + a.link,
.ios .data-table td.actions-cell a.link + a.link {
  margin-left: 16px;
}

.ios .sortable-cell:not(.numeric-cell):after {
  margin-left: 5px;
}

.ios .sortable-cell.numeric-cell:before {
  margin-right: 5px;
}

.ios .data-table-links a.link + a.link,
.ios .data-table-actions a.link + a.link,
.ios .data-table-links .button + .button,
.ios .data-table-actions .button + .button {
  margin-left: 16px;
}

.ios .data-table-actions a.link:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  width: 44px;
  height: 44px;
}

.ios .data-table-rows-select a.link,
.ios .data-table-pagination a.link {
  width: 44px;
  height: 44px;
}

.ios .data-table-rows-select + .data-table-pagination {
  margin-left: 30px;
}

.ios .data-table-rows-select .input {
  margin-left: 20px;
}

.ios .data-table-pagination-label {
  margin-right: 16px;
}

.md .data-table th.actions-cell a.link + a.link,
.md .data-table td.actions-cell a.link + a.link {
  margin-left: 24px;
}

.md .data-table th.actions-cell a:is(.icon-only, :has(i:only-child), :has(svg:only-child)),
.md .data-table td.actions-cell a:is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  width: 24px;
  height: 24px;
  line-height: 24px;
}

.md .sortable-cell:not(.numeric-cell):after {
  margin-left: 8px;
}

.md .sortable-cell.numeric-cell:before {
  margin-right: 8px;
}

.md .data-table-links a.link + a.link,
.md .data-table-actions a.link + a.link,
.md .data-table-links .button + .button,
.md .data-table-actions .button + .button {
  margin-left: 24px;
}

.md .data-table-actions a.link.icon-only,
.md .data-table-actions a.link:has(i:only-child),
.md .data-table-actions a.link:has(svg:only-child) {
  width: 24px;
  height: 24px;
  overflow: visible;
}

.md .data-table-actions a.link.icon-only.active-state,
.md .data-table-actions a.link:has(i:only-child).active-state,
.md .data-table-actions a.link:has(svg:only-child).active-state {
  background: none;
}

.md .data-table-rows-select a.link,
.md .data-table-pagination a.link {
  width: 48px;
  height: 48px;
}

.md .data-table-rows-select + .data-table-pagination {
  margin-left: 32px;
}

.md .data-table-rows-select .input {
  margin-left: 24px;
}

.md .data-table-pagination-label {
  margin-right: 20px;
}

.md .input-cell .input-clear-button {
  transform: scale(0.8);
}

/* === FAB === */

:root {
  --f7-fab-margin: 16px;
  --f7-fab-extended-text-font-size: 14px;
  --f7-fab-label-font-size: inherit;
  --f7-fab-button-size: 40px;
}

.ios {
  /* --f7-fab-pressed-bg-color: var(--f7-theme-color-shade); */
  --f7-fab-bg-color: var(--f7-theme-color);
  --f7-glass-shadow-fab: inset -3px -3px 0px -3.5px #fff, inset 3px 3px 0px -3.5px #fff, inset 0px 0px 0px 0.5px rgba(255, 255, 255, 0.5), inset 3px 3px 10px -2px color-mix(in oklab, var(--f7-theme-color) 100%, black), inset -3px -3px 10px -2px color-mix(in oklab, var(--f7-theme-color) 100%, black), inset 0 0 5px 1px #fff, 0 0 15px 4px rgba(0, 0, 0, 0.2);
  --f7-fab-label-text-color: #000;
  --f7-fab-label-bg-color: #fff;
  --f7-fab-text-color: #fff;
  --f7-fab-border-radius: 50px;
  --f7-fab-size: 50px;
  --f7-fab-box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4);
  --f7-fab-extended-text-transform: uppercase;
  --f7-fab-extended-size: 50px;
  --f7-fab-extended-text-padding: 0 20px;
  --f7-fab-extended-text-font-weight: 600;
  --f7-fab-extended-text-letter-spacing: 0;
  --f7-fab-label-border-radius: 8px;
  --f7-fab-label-box-shadow: var(--f7-glass-shadow);
  --f7-fab-label-padding: 8px 16px;
}

.ios .dark,
.ios.dark {
  --f7-fab-bg-color: color-mix(in oklab, var(--f7-theme-color-shade) 50%, transparent 0%);
  --f7-glass-shadow-fab: inset 3px 3px 0px -3.5px var(--f7-theme-color), inset -3px -3px 0px -3.5px var(--f7-theme-color), inset -0.5px -0.5px 0px rgba(255, 255, 255, 0.5), inset 0.5px 0.5px 0px rgba(255, 255, 255, 0.1), inset -3px 3px 0px -3.5px rgba(255, 255, 255, 0.25), inset 0px -5px 0px -3.5px color-mix(in oklab, var(--f7-theme-color) 50%, transparent 10%), inset 0px -5px 5px color-mix(in oklab, var(--f7-theme-color) 50%, transparent 10%), 0 0 15px 4px rgba(0, 0, 0, 0.2);
  --f7-fab-label-text-color: #fff;
  --f7-fab-label-bg-color: #151515;
}

.md {
  /*
  --f7-fab-pressed-bg-color: var(--f7-fab-bg-color, var(--f7-theme-color));
  */
  --f7-fab-border-radius: 16px;
  --f7-fab-size: 56px;
  --f7-fab-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.25);
  --f7-fab-extended-size: 56px;
  --f7-fab-extended-text-padding: 0 16px;
  --f7-fab-extended-text-font-weight: 500;
  --f7-fab-extended-text-letter-spacing: 0;
  --f7-fab-extended-text-transform: none;
  --f7-fab-label-border-radius: 8px;
  --f7-fab-label-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.25);
  --f7-fab-label-padding: 4px 12px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-fab-bg-color: var(--f7-md-primary-container);
  --f7-fab-text-color: var(--f7-md-on-primary-container);
  --f7-fab-label-text-color: var(--f7-md-on-surface);
  --f7-fab-label-bg-color: var(--f7-md-surface-5);
}

.fab-backdrop {
  z-index: 1400;
}

.fab {
  position: absolute;
  z-index: 1500;
}

.fab a {
  --f7-touch-ripple-color: var(--f7-touch-ripple-white);
}

.fab-left-top,
.fab-left-center,
.fab-left-bottom {
  left: calc(var(--f7-fab-margin) + var(--f7-safe-area-left));
}

.fab-right-top,
.fab-right-center,
.fab-right-bottom {
  right: calc(var(--f7-fab-margin) + var(--f7-safe-area-right));
}

.fab-left-top,
.fab-center-top,
.fab-right-top {
  top: var(--f7-fab-margin);
}

.fab-left-bottom,
.fab-center-bottom,
.fab-right-bottom {
  bottom: calc(var(--f7-fab-margin) + var(--f7-safe-area-bottom));
}

.fab-center-top,
.fab-center-center,
.fab-center-bottom {
  left: 50%;
  transform: translateX(-50%);
}

.fab-left-center,
.fab-center-center,
.fab-right-center {
  top: 50%;
  transform: translateY(-50%);
}

.fab-center-center {
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.fab > a,
.fab-buttons a {
  background-color: var(--f7-fab-bg-color, var(--f7-theme-color));
  width: var(--f7-fab-size);
  height: var(--f7-fab-size);
  box-shadow: var(--f7-fab-box-shadow);
  border-radius: var(--f7-fab-border-radius);
  position: relative;
  transition-duration: 300ms;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 1;
  color: var(--f7-fab-text-color);
}

.fab > a i {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0) rotate(0deg) scale(1);
  transition: 300ms;
}

.fab > a i + i {
  transform: translate3d(-50%, -50%, 0) rotate(-90deg) scale(0.5);
  opacity: 0;
}

.fab-buttons a {
  border-radius: var(--f7-fab-border-radius);
  width: var(--f7-fab-button-size);
  height: var(--f7-fab-button-size);
}

.fab-buttons {
  display: flex;
  visibility: hidden;
  pointer-events: none;
  position: absolute;
}

.fab-buttons a {
  opacity: 0;
}

.fab-opened:not(.fab-morph) > a i {
  transform: translate3d(-50%, -50%, 0) rotate(90deg) scale(0.5);
  opacity: 0;
}

.fab-opened:not(.fab-morph) > a i + i {
  transform: translate3d(-50%, -50%, 0) rotate(0deg) scale(1);
  opacity: 1;
}

.fab-opened .fab-buttons {
  visibility: visible;
  pointer-events: auto;
}

.fab-opened .fab-buttons a {
  opacity: 1;
  transform: translate3d(0, 0px, 0) scale(1) !important;
}

.fab-opened .fab-buttons a:nth-child(2) {
  transition-delay: 50ms;
}

.fab-opened .fab-buttons a:nth-child(3) {
  transition-delay: 100ms;
}

.fab-opened .fab-buttons a:nth-child(4) {
  transition-delay: 150ms;
}

.fab-opened .fab-buttons a:nth-child(5) {
  transition-delay: 200ms;
}

.fab-opened .fab-buttons a:nth-child(6) {
  transition-delay: 250ms;
}

.fab-buttons-top,
.fab-buttons-bottom {
  left: 50%;
  width: var(--f7-fab-button-size);
  margin-left: calc(-1 * var(--f7-fab-button-size) / 2);
}

.fab-buttons-top {
  bottom: 100%;
  margin-bottom: 16px;
  flex-direction: column-reverse;
}

.fab-buttons-top a {
  transform: translate3d(0, 8px, 0) scale(0.3);
  transform-origin: center bottom;
}

.fab-buttons-top a + a {
  margin-bottom: 16px;
}

.fab-buttons-bottom {
  top: 100%;
  margin-top: 16px;
  flex-direction: column;
}

.fab-buttons-bottom a {
  transform: translate3d(0, -8px, 0) scale(0.3);
  transform-origin: center top;
}

.fab-buttons-bottom a + a {
  margin-top: 16px;
}

.fab-buttons-left,
.fab-buttons-right {
  top: 50%;
  height: var(--f7-fab-button-size);
  margin-top: calc(-1 * var(--f7-fab-button-size) / 2);
}

.fab-buttons-left {
  right: 100%;
  margin-right: 16px;
  flex-direction: row-reverse;
}

.fab-buttons-left a {
  transform: translate3d(8px, 0px, 0) scale(0.3);
  transform-origin: right center;
}

.fab-buttons-left a + a {
  margin-right: 16px;
}

.fab-buttons-right {
  left: 100%;
  margin-left: 16px;
}

.fab-buttons-right a {
  transform: translate3d(-8px, 0, 0) scale(0.3);
  transform-origin: left center;
}

.fab-buttons-right a + a {
  margin-left: 16px;
}

.fab-buttons-center {
  left: 0%;
  top: 0%;
  width: 100%;
  height: 100%;
}

.fab-buttons-center a {
  position: absolute;
}

.fab-buttons-center a:nth-child(1) {
  left: 50%;
  margin-left: calc(-1 * var(--f7-fab-button-size) / 2);
  bottom: 100%;
  margin-bottom: 16px;
  transform: translateY(-8px) scale(0.3);
  transform-origin: center bottom;
}

.fab-buttons-center a:nth-child(2) {
  left: 100%;
  margin-top: calc(-1 * var(--f7-fab-button-size) / 2);
  top: 50%;
  margin-left: 16px;
  transform: translateX(-8px) scale(0.3);
  transform-origin: left center;
}

.fab-buttons-center a:nth-child(3) {
  left: 50%;
  margin-left: calc(-1 * var(--f7-fab-button-size) / 2);
  top: 100%;
  margin-top: 16px;
  transform: translateY(8px) scale(0.3);
  transform-origin: center top;
}

.fab-buttons-center a:nth-child(4) {
  right: 100%;
  margin-top: calc(-1 * var(--f7-fab-button-size) / 2);
  top: 50%;
  margin-right: 16px;
  transform: translateX(8px) scale(0.3);
  transform-origin: right center;
}

.fab-morph {
  border-radius: var(--f7-fab-border-radius);
  background: var(--f7-fab-bg-color, var(--f7-theme-color));
  box-shadow: var(--f7-fab-box-shadow);
}

.fab-morph > a {
  box-shadow: none;
  background: none !important;
}

.fab-opened.fab-morph > a i {
  opacity: 0;
}

.fab-morph,
.fab-morph > a,
.fab-morph-target {
  transition-duration: 250ms;
}

.fab-morph-target:not(.fab-morph-target-visible) {
  display: none;
}

.fab-extended {
  width: auto;
  min-width: var(--f7-fab-extended-size);
}

.fab-extended > a {
  width: 100%;
  height: var(--f7-fab-extended-size);
}

.fab-extended > a i {
  left: calc(var(--f7-fab-extended-size) / 2);
}

.fab-extended i ~ .fab-text {
  padding-left: var(--f7-fab-extended-size);
}

.fab-extended > a {
  width: 100% !important;
}

.fab-text {
  box-sizing: border-box;
  font-size: var(--f7-fab-extended-text-font-size);
  padding: var(--f7-fab-extended-text-padding);
  font-weight: var(--f7-fab-extended-text-font-weight);
  letter-spacing: var(--f7-fab-extended-text-letter-spacing);
  text-transform: var(--f7-fab-extended-text-transform);
}

.fab-label-button {
  overflow: visible !important;
}

.fab-label {
  position: absolute;
  top: 50%;
  padding: var(--f7-fab-label-padding);
  border-radius: var(--f7-fab-label-border-radius);
  background: var(--f7-fab-label-bg-color);
  color: var(--f7-fab-label-text-color);
  box-shadow: var(--f7-fab-label-box-shadow);
  white-space: nowrap;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: var(--f7-fab-label-font-size);
}

.fab-right-top .fab-label,
.fab-right-center .fab-label,
.fab-right-bottom .fab-label {
  right: 100%;
  margin-right: 8px;
}

.fab-left-top .fab-label,
.fab-left-center .fab-label,
.fab-left-bottom .fab-label {
  left: 100%;
  margin-left: 8px;
}

.navbar ~ * .fab-left-top,
.navbar ~ * .fab-center-top,
.navbar ~ * .fab-right-top,
.navbar ~ .fab-left-top,
.navbar ~ .fab-center-top,
.navbar ~ .fab-right-top,
.navbars ~ * .fab-left-top,
.navbars ~ * .fab-center-top,
.navbars ~ * .fab-right-top,
.navbars ~ .fab-left-top,
.navbars ~ .fab-center-top,
.navbars ~ .fab-right-top {
  margin-top: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.toolbar-top ~ * .fab-left-top,
.toolbar-top ~ * .fab-center-top,
.toolbar-top ~ * .fab-right-top,
.toolbar-top ~ .fab-left-top,
.toolbar-top ~ .fab-center-top,
.toolbar-top ~ .fab-right-top,
.ios .toolbar-top-ios ~ * .fab-left-top,
.ios .toolbar-top-ios ~ * .fab-center-top,
.ios .toolbar-top-ios ~ * .fab-right-top,
.ios .toolbar-top-ios ~ .fab-left-top,
.ios .toolbar-top-ios ~ .fab-center-top,
.ios .toolbar-top-ios ~ .fab-right-top,
.md .toolbar-top-md ~ * .fab-left-top,
.md .toolbar-top-md ~ * .fab-center-top,
.md .toolbar-top-md ~ * .fab-right-top,
.md .toolbar-top-md ~ .fab-left-top,
.md .toolbar-top-md ~ .fab-center-top,
.md .toolbar-top-md ~ .fab-right-top {
  margin-top: var(--f7-toolbar-height);
}

.toolbar-bottom ~ * .fab-left-bottom,
.toolbar-bottom ~ * .fab-center-bottom,
.toolbar-bottom ~ * .fab-right-bottom,
.toolbar-bottom ~ .fab-left-bottom,
.toolbar-bottom ~ .fab-center-bottom,
.toolbar-bottom ~ .fab-right-bottom,
.ios .toolbar-bottom-ios ~ * .fab-left-bottom,
.ios .toolbar-bottom-ios ~ * .fab-center-bottom,
.ios .toolbar-bottom-ios ~ * .fab-right-bottom,
.ios .toolbar-bottom-ios ~ .fab-left-bottom,
.ios .toolbar-bottom-ios ~ .fab-center-bottom,
.ios .toolbar-bottom-ios ~ .fab-right-bottom,
.md .toolbar-bottom-md ~ * .fab-left-bottom,
.md .toolbar-bottom-md ~ * .fab-center-bottom,
.md .toolbar-bottom-md ~ * .fab-right-bottom,
.md .toolbar-bottom-md ~ .fab-left-bottom,
.md .toolbar-bottom-md ~ .fab-center-bottom,
.md .toolbar-bottom-md ~ .fab-right-bottom {
  margin-bottom: var(--f7-toolbar-height);
}

.tabbar-icons.toolbar-bottom ~ * .fab-left-bottom,
.tabbar-icons.toolbar-bottom ~ * .fab-center-bottom,
.tabbar-icons.toolbar-bottom ~ * .fab-right-bottom,
.tabbar-icons.toolbar-bottom ~ .fab-left-bottom,
.tabbar-icons.toolbar-bottom ~ .fab-center-bottom,
.tabbar-icons.toolbar-bottom ~ .fab-right-bottom,
.ios .tabbar-icons.toolbar-bottom-ios ~ * .fab-left-bottom,
.ios .tabbar-icons.toolbar-bottom-ios ~ * .fab-center-bottom,
.ios .tabbar-icons.toolbar-bottom-ios ~ * .fab-right-bottom,
.ios .tabbar-icons.toolbar-bottom-ios ~ .fab-left-bottom,
.ios .tabbar-icons.toolbar-bottom-ios ~ .fab-center-bottom,
.ios .tabbar-icons.toolbar-bottom-ios ~ .fab-right-bottom,
.md .tabbar-icons.toolbar-bottom-md ~ * .fab-left-bottom,
.md .tabbar-icons.toolbar-bottom-md ~ * .fab-center-bottom,
.md .tabbar-icons.toolbar-bottom-md ~ * .fab-right-bottom,
.md .tabbar-icons.toolbar-bottom-md ~ .fab-left-bottom,
.md .tabbar-icons.toolbar-bottom-md ~ .fab-center-bottom,
.md .tabbar-icons.toolbar-bottom-md ~ .fab-right-bottom {
  margin-bottom: var(--f7-tabbar-icons-height);
}

.tabbar-icons.toolbar-top ~ * .fab-left-bottom,
.tabbar-icons.toolbar-top ~ * .fab-center-bottom,
.tabbar-icons.toolbar-top ~ * .fab-right-bottom,
.tabbar-icons.toolbar-top ~ .fab-left-bottom,
.tabbar-icons.toolbar-top ~ .fab-center-bottom,
.tabbar-icons.toolbar-top ~ .fab-right-bottom,
.ios .tabbar-icons.toolbar-top-ios ~ * .fab-left-bottom,
.ios .tabbar-icons.toolbar-top-ios ~ * .fab-center-bottom,
.ios .tabbar-icons.toolbar-top-ios ~ * .fab-right-bottom,
.ios .tabbar-icons.toolbar-top-ios ~ .fab-left-bottom,
.ios .tabbar-icons.toolbar-top-ios ~ .fab-center-bottom,
.ios .tabbar-icons.toolbar-top-ios ~ .fab-right-bottom,
.md .tabbar-icons.toolbar-top-md ~ * .fab-left-bottom,
.md .tabbar-icons.toolbar-top-md ~ * .fab-center-bottom,
.md .tabbar-icons.toolbar-top-md ~ * .fab-right-bottom,
.md .tabbar-icons.toolbar-top-md ~ .fab-left-bottom,
.md .tabbar-icons.toolbar-top-md ~ .fab-center-bottom,
.md .tabbar-icons.toolbar-top-md ~ .fab-right-bottom {
  margin-top: var(--f7-tabbar-icons-height);
}

.messagebar ~ * .fab-left-bottom,
.messagebar ~ * .fab-center-bottom,
.messagebar ~ * .fab-right-bottom,
.messagebar ~ .fab-left-bottom,
.messagebar ~ .fab-center-bottom,
.messagebar ~ .fab-right-bottom {
  margin-bottom: var(--f7-messagebar-height);
}

.navbar + .toolbar-top ~ * .fab-left-top,
.ios .navbar + .toolbar-top-ios ~ * .fab-left-top,
.md .navbar + .toolbar-top-ios ~ * .fab-left-top,
.navbar + .toolbar-top ~ * .fab-center-top,
.ios .navbar + .toolbar-top-ios ~ * .fab-center-top,
.md .navbar + .toolbar-top-ios ~ * .fab-center-top,
.navbar + .toolbar-top ~ * .fab-right-top,
.ios .navbar + .toolbar-top-ios ~ * .fab-right-top,
.md .navbar + .toolbar-top-ios ~ * .fab-right-top,
.navbar + .toolbar-top ~ .fab-left-top,
.ios .navbar + .toolbar-top-ios ~ .fab-left-top,
.md .navbar + .toolbar-top-ios ~ .fab-left-top,
.navbar + .toolbar-top ~ .fab-center-top,
.ios .navbar + .toolbar-top-ios ~ .fab-center-top,
.md .navbar + .toolbar-top-ios ~ .fab-center-top,
.navbar + .toolbar-top ~ .fab-right-top,
.ios .navbar + .toolbar-top-ios ~ .fab-right-top,
.md .navbar + .toolbar-top-ios ~ .fab-right-top {
  margin-top: calc(var(--f7-toolbar-height) + var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbar + .toolbar-top.tabbar-icons ~ * .fab-left-top,
.ios .navbar + .toolbar-top-ios.tabbar-icons ~ * .fab-left-top,
.md .navbar + .toolbar-top-ios.tabbar-icons ~ * .fab-left-top,
.navbar + .toolbar-top.tabbar-icons ~ * .fab-center-top,
.ios .navbar + .toolbar-top-ios.tabbar-icons ~ * .fab-center-top,
.md .navbar + .toolbar-top-ios.tabbar-icons ~ * .fab-center-top,
.navbar + .toolbar-top.tabbar-icons ~ * .fab-right-top,
.ios .navbar + .toolbar-top-ios.tabbar-icons ~ * .fab-right-top,
.md .navbar + .toolbar-top-ios.tabbar-icons ~ * .fab-right-top,
.navbar + .toolbar-top.tabbar-icons ~ .fab-left-top,
.ios .navbar + .toolbar-top-ios.tabbar-icons ~ .fab-left-top,
.md .navbar + .toolbar-top-ios.tabbar-icons ~ .fab-left-top,
.navbar + .toolbar-top.tabbar-icons ~ .fab-center-top,
.ios .navbar + .toolbar-top-ios.tabbar-icons ~ .fab-center-top,
.md .navbar + .toolbar-top-ios.tabbar-icons ~ .fab-center-top,
.navbar + .toolbar-top.tabbar-icons ~ .fab-right-top,
.ios .navbar + .toolbar-top-ios.tabbar-icons ~ .fab-right-top,
.md .navbar + .toolbar-top-ios.tabbar-icons ~ .fab-right-top {
  margin-top: calc(var(--f7-tabbar-icons-height) + var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbars + .toolbar-top ~ * .fab-left-top,
.ios .navbars + .toolbar-top-ios ~ * .fab-left-top,
.navbars + .toolbar-top ~ * .fab-center-top,
.ios .navbars + .toolbar-top-ios ~ * .fab-center-top,
.navbars + .toolbar-top ~ * .fab-right-top,
.ios .navbars + .toolbar-top-ios ~ * .fab-right-top,
.navbars + .toolbar-top ~ .fab-left-top,
.ios .navbars + .toolbar-top-ios ~ .fab-left-top,
.navbars + .toolbar-top ~ .fab-center-top,
.ios .navbars + .toolbar-top-ios ~ .fab-center-top,
.navbars + .toolbar-top ~ .fab-right-top,
.ios .navbars + .toolbar-top-ios ~ .fab-right-top {
  margin-top: calc(var(--f7-toolbar-height) + var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbars + .toolbar-top.tabbar-icons ~ * .fab-left-top,
.ios .navbars + .toolbar-top-ios.tabbar-icons ~ * .fab-left-top,
.navbars + .toolbar-top.tabbar-icons ~ * .fab-center-top,
.ios .navbars + .toolbar-top-ios.tabbar-icons ~ * .fab-center-top,
.navbars + .toolbar-top.tabbar-icons ~ * .fab-right-top,
.ios .navbars + .toolbar-top-ios.tabbar-icons ~ * .fab-right-top,
.navbars + .toolbar-top.tabbar-icons ~ .fab-left-top,
.ios .navbars + .toolbar-top-ios.tabbar-icons ~ .fab-left-top,
.navbars + .toolbar-top.tabbar-icons ~ .fab-center-top,
.ios .navbars + .toolbar-top-ios.tabbar-icons ~ .fab-center-top,
.navbars + .toolbar-top.tabbar-icons ~ .fab-right-top,
.ios .navbars + .toolbar-top-ios.tabbar-icons ~ .fab-right-top {
  margin-top: calc(var(--f7-tabbar-icons-height) + var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.ios .fab > a,
.ios .fab-buttons a {
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow-fab);
}

.ios .fab > a.active-state,
.ios .fab-buttons a.active-state {
  transition-duration: 0ms;
  background-color: var(--f7-fab-pressed-bg-color, var(--f7-theme-color-shade));
}

.ios,
.ios [class*='color-'] {
  --f7-fab-pressed-bg-color: var(--f7-theme-color-shade);
  --f7-fab-bg-color: var(--f7-theme-color);
  --f7-glass-shadow-fab: inset -3px -3px 0px -3.5px #fff, inset 3px 3px 0px -3.5px #fff, inset 0px 0px 0px 0.5px rgba(255, 255, 255, 0.5), inset 3px 3px 10px -2px color-mix(in oklab, var(--f7-theme-color) 100%, black), inset -3px -3px 10px -2px color-mix(in oklab, var(--f7-theme-color) 100%, black), inset 0 0 5px 1px #fff, 0 0 15px 4px rgba(0, 0, 0, 0.2);
}

.ios.dark,
.ios .dark,
.ios.dark [class*='color-'],
.ios .dark [class*='color-'] {
  --f7-fab-bg-color: color-mix(in oklab, var(--f7-theme-color-shade) 50%, transparent 0%);
  --f7-glass-shadow-fab: inset 3px 3px 0px -3.5px var(--f7-theme-color), inset -3px -3px 0px -3.5px var(--f7-theme-color), inset -0.5px -0.5px 0px rgba(255, 255, 255, 0.5), inset 0.5px 0.5px 0px rgba(255, 255, 255, 0.1), inset -3px 3px 0px -3.5px rgba(255, 255, 255, 0.25), inset 0px -5px 0px -3.5px color-mix(in oklab, var(--f7-theme-color) 50%, transparent 10%), inset 0px -5px 5px color-mix(in oklab, var(--f7-theme-color) 50%, transparent 10%), 0 0 15px 4px rgba(0, 0, 0, 0.2);
}

.md .fab > a.active-state,
.md .fab-buttons a.active-state {
  background-color: var(--f7-fab-pressed-bg-color, var(--f7-fab-bg-color, var(--f7-theme-color)));
}

/* === Searchbar === */

:root {
  /*
  --f7-searchbar-link-color: var(--f7-bars-link-color);
  --f7-searchbar-inline-input-font-size: var(--f7-searchbar-input-font-size);
  */
  --f7-searchbar-input-border-width: 0px;
  --f7-searchbar-input-border-color: transparent;
}

.ios {
  /*

  --f7-searchbar-border-color: var(--f7-bars-border-color);
  */
  --f7-searchbar-bg-color: transparent;
  --f7-searchbar-height: 44px;
  --f7-searchbar-inner-padding-left: 0px;
  --f7-searchbar-inner-padding-right: 0px;
  --f7-searchbar-link-color: var(--f7-bars-text-color);
  --f7-searchbar-input-font-size: 17px;
  --f7-searchbar-input-border-radius: 44px;
  --f7-searchbar-input-height: 44px;
  --f7-searchbar-inline-input-height: 44px;
  /*
  --f7-searchbar-inline-input-border-radius: var(--f7-searchbar-input-border-radius);
  */
  --f7-searchbar-input-padding-horizontal: 44px;
  /*
  --f7-searchbar-inline-input-padding-horizontal: var(--f7-searchbar-input-padding-horizontal);
  --f7-searchbar-input-clear-button-color: var(--f7-input-clear-button-color);
  */
  --f7-searchbar-backdrop-bg-color: rgba(0, 0, 0, 0.4);
  --f7-searchbar-in-page-content-margin: 16px;
  --f7-searchbar-in-page-content-box-shadow: none;
  --f7-searchbar-in-page-content-border-radius: 44px;
  --f7-searchbar-in-page-content-input-border-radius: 44px;
  --f7-searchbar-input-bg-color: var(--f7-glass-bg-color);
  --f7-searchbar-placeholder-color: rgba(0, 0, 0, 0.4);
  --f7-searchbar-input-text-color: #000;
  --f7-searchbar-search-icon-color: rgba(0, 0, 0, 0.4);
}

.ios .dark,
.ios.dark {
  --f7-searchbar-placeholder-color: rgba(255, 255, 255, 0.4);
  --f7-searchbar-input-text-color: #fff;
  --f7-searchbar-search-icon-color: rgba(255, 255, 255, 0.4);
}

.md {
  --f7-searchbar-border-color: transparent;
  --f7-searchbar-height: 48px;
  --f7-searchbar-inner-padding-left: 8px;
  --f7-searchbar-inner-padding-right: 8px;
  --f7-searchbar-input-font-size: 16px;
  --f7-searchbar-input-border-radius: 24px;
  --f7-searchbar-input-height: 48px;
  --f7-searchbar-inline-input-height: 48px;
  --f7-searchbar-inline-input-border-radius: 24px;
  --f7-searchbar-input-padding-horizontal: 16px;
  --f7-searchbar-inline-input-padding-horizontal: 16px;
  --f7-searchbar-backdrop-bg-color: rgba(0, 0, 0, 0.25);
  --f7-searchbar-in-page-content-margin: 16px 0;
  --f7-searchbar-in-page-content-box-shadow: none;
  --f7-searchbar-in-page-content-border-radius: 24px;
  --f7-searchbar-in-page-content-input-border-radius: 24px;
  --f7-searchbar-bg-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-searchbar-link-color: var(--f7-md-on-surface);
  --f7-searchbar-search-icon-color: var(--f7-md-on-surface);
  --f7-searchbar-input-clear-button-color: var(--f7-md-on-surface);
  --f7-searchbar-placeholder-color: var(--f7-md-on-surface-variant);
  --f7-searchbar-input-bg-color: var(--f7-md-secondary-container);
  --f7-searchbar-input-text-color: var(--f7-md-on-surface);
}

.searchbar {
  --f7-link-highlight-color: var(--f7-link-highlight-black);
  width: 100%;
  position: relative;
  z-index: 200;
  height: var(--f7-searchbar-height);
  background-color: var(--f7-searchbar-bg-color, var(--f7-bars-bg-color));
}

.dark .searchbar {
  --f7-link-highlight-color: var(--f7-link-highlight-white);
}

.searchbar input[type='search']::-webkit-search-decoration {
  display: none;
}

.ios .subnavbar .searchbar {
  background-color: transparent;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.ios .subnavbar .searchbar:after {
  display: none !important;
}

.searchbar.no-outline:after {
  display: none !important;
}

.searchbar:after {
  content: '';
  position: absolute;
  background-color: var(--f7-searchbar-border-color, var(--f7-bars-border-color));
  display: block;
  z-index: 15;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 100%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.page > .searchbar:not(.searchbar-inline) {
  z-index: 600;
}

.searchbar input[type='text'],
.searchbar input[type='search'] {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  display: block;
  border: var(--f7-searchbar-input-border-width) solid var(--f7-searchbar-input-border-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: inherit;
  font-weight: normal;
  color: var(--f7-searchbar-input-text-color);
  font-size: var(--f7-searchbar-input-font-size);
  background-color: var(--f7-searchbar-input-bg-color);
  border-radius: var(--f7-searchbar-input-border-radius);
  position: relative;
  padding: 0;
  padding-left: calc(var(--f7-searchbar-input-padding-horizontal) + var(--f7-searchbar-input-extra-padding-left, 0px));
  padding-right: calc(var(--f7-searchbar-input-padding-horizontal) + var(--f7-searchbar-input-extra-padding-right, 0px));
}

.searchbar input[type='text']::-moz-placeholder, .searchbar input[type='search']::-moz-placeholder {
  color: var(--f7-searchbar-placeholder-color);
  opacity: 1;
}

.searchbar input[type='text']::placeholder,
.searchbar input[type='search']::placeholder {
  color: var(--f7-searchbar-placeholder-color);
  opacity: 1;
}

.searchbar input::-webkit-search-cancel-button {
  -webkit-appearance: none;
          appearance: none;
}

.searchbar .searchbar-input-wrap {
  flex-shrink: 1;
  width: 100%;
  height: var(--f7-searchbar-input-height);
  position: relative;
}

.searchbar a {
  color: var(--f7-searchbar-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
}

.page > .searchbar:not(.searchbar-inline) {
  position: absolute;
  left: 16px;
  right: 16px;
  width: auto;
  top: 0;
}

.page-content .searchbar:not(.searchbar-inline) {
  border-radius: var(--f7-searchbar-in-page-content-border-radius);
  margin: var(--f7-searchbar-in-page-content-margin);
  width: auto;
  box-shadow: var(--f7-searchbar-in-page-content-box-shadow);
}

.page-content .searchbar:not(.searchbar-inline) .searchbar-inner,
.page-content .searchbar:not(.searchbar-inline) input[type='text'],
.page-content .searchbar:not(.searchbar-inline) input[type='search'] {
  border-radius: var(--f7-searchbar-in-page-content-input-border-radius, var(--f7-searchbar-input-border-radius));
}

.searchbar .input-clear-button {
  color: var(--f7-searchbar-input-clear-button-color, var(--f7-input-clear-button-color));
}

.searchbar-expandable {
  --f7-searchbar-expandable-size: var(--f7-searchbar-height);
  position: absolute;
  transition-duration: 300ms;
  pointer-events: none;
}

.navbar .searchbar-expandable {
  background: transparent;
}

.navbar .searchbar-expandable:after {
  display: none !important;
}

.navbar .searchbar.searchbar-expandable {
  --f7-searchbar-expandable-size: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbar .searchbar.searchbar-expandable .searchbar-inner {
  top: var(--f7-safe-area-top);
  height: calc(100% - var(--f7-safe-area-top));
}

.toolbar .searchbar.searchbar-expandable {
  --f7-searchbar-expandable-size: var(--f7-toolbar-height);
}

.subnavbar .searchbar.searchbar-expandable {
  --f7-searchbar-expandable-size: var(--f7-subnavbar-height);
}

.tabbar-icons .searchbar.searchbar-expandable {
  --f7-searchbar-expandable-size: var(--f7-tabbar-icons-height);
}

.searchbar-inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: 0 calc(var(--f7-searchbar-inner-padding-right) + var(--f7-safe-area-right)) 0 calc(var(--f7-searchbar-inner-padding-left) + var(--f7-safe-area-left));
}

.searchbar-disable-button {
  cursor: pointer;
  pointer-events: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  outline: 0;
  padding: 0;
  margin: 0;
  width: auto;
  opacity: 0;
}

.searchbar-icon {
  pointer-events: none;
  background-position: center;
  background-repeat: no-repeat;
}

.searchbar-icon:after {
  color: var(--f7-searchbar-search-icon-color);
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
}

.searchbar-backdrop {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition-duration: 300ms;
  transform: translate3d(0, 0, 0);
  background: var(--f7-searchbar-backdrop-bg-color);
}

.searchbar-backdrop.searchbar-backdrop-in {
  opacity: 1;
  pointer-events: auto;
}

.page-content > .searchbar-backdrop {
  position: fixed;
}

.searchbar-not-found {
  display: none;
}

.hidden-by-searchbar,
.list .hidden-by-searchbar,
.list.li.hidden-by-searchbar,
.list li.hidden-by-searchbar {
  display: none !important;
}

.navbar.with-searchbar-expandable-enabled-no-transition,
.navbar.with-searchbar-expandable-enabled-no-transition {
  --f7-navbar-large-collapse-progress: 1;
}

.navbar.with-searchbar-expandable-enabled,
.navbar.with-searchbar-expandable-enabled {
  --f7-navbar-large-collapse-progress: 1;
}

.navbar.with-searchbar-expandable-enabled .navbar-bg,
.navbar.with-searchbar-expandable-enabled .navbar-bg,
.navbar.with-searchbar-expandable-enabled .title-large,
.navbar.with-searchbar-expandable-enabled .title-large,
.navbar.with-searchbar-expandable-enabled .title-large-text,
.navbar.with-searchbar-expandable-enabled .title-large-text {
  transition-duration: 300ms;
}

.navbar.with-searchbar-expandable-closing .navbar-bg,
.navbar.with-searchbar-expandable-closing .navbar-bg,
.navbar.with-searchbar-expandable-closing .title-large,
.navbar.with-searchbar-expandable-closing .title-large,
.navbar.with-searchbar-expandable-closing .title-large-text,
.navbar.with-searchbar-expandable-closing .title-large-text {
  transition-duration: 300ms;
}

.page-content.with-searchbar-expandable-enabled {
  height: calc(100% + var(--f7-navbar-large-title-height));
  transform: translateY(calc(-1 * var(--f7-navbar-large-title-height)));
  transition-duration: 300ms;
  transition-property: transform;
}

.page-content.with-searchbar-expandable-closing {
  transition-duration: 300ms;
}

.navbar ~ .page:not(.no-navbar) > .searchbar,
.page > .navbar ~ .searchbar {
  top: calc(var(--f7-navbar-height) + var(--f7-safe-area-top));
}

.navbar ~ .page-with-navbar-large:not(.no-navbar) .searchbar,
.page-with-navbar-large .navbar ~ .searchbar,
.page-with-navbar-large .navbar ~ * .searchbar {
  top: calc(var(--f7-navbar-height) + var(--f7-navbar-large-title-height) + var(--f7-safe-area-top));
  transform: translate3d(0, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0);
}

.page-with-navbar-large .page-content .searchbar {
  top: 0;
  transform: none;
}

.searchbar ~ * {
  --f7-page-searchbar-offset: var(--f7-searchbar-height);
}

.page > .toolbar-top ~ .searchbar,
.ios .page > .toolbar-top-ios ~ .searchbar,
.md .page > .toolbar-top-md ~ .searchbar {
  top: var(--f7-toolbar-height);
}

.page > .tabbar-icons.toolbar-top ~ .searchbar,
.ios .page > .tabbar-icons.toolbar-top-ios ~ .searchbar,
.md .page > .tabbar-icons.toolbar-top-md ~ .searchbar {
  top: var(--f7-tabbar-icons-height);
}

.page > .navbar ~ .toolbar-top ~ .searchbar,
.ios .page > .navbar ~ .toolbar-top-ios ~ .searchbar,
.md .page > .navbar ~ .toolbar-top-md ~ .searchbar {
  top: calc(var(--f7-navbar-height) + var(--f7-toolbar-height) + var(--f7-safe-area-top));
}

.page > .navbar ~ .tabbar-icons.toolbar-top ~ .searchbar,
.ios .page > .navbar ~ .tabbar-icons.toolbar-top-ios ~ .searchbar,
.md .page > .navbar ~ .tabbar-icons.toolbar-top-md ~ .searchbar {
  top: calc(var(--f7-navbar-height) + var(--f7-tabbar-icons-height) + var(--f7-safe-area-top));
}

.searchbar.searchbar-inline {
  width: auto;
  height: auto;
  background-color: transparent;
  background-image: none;
}

.searchbar.searchbar-inline:after,
.searchbar.searchbar-inline:before {
  display: none !important;
}

.searchbar.searchbar-inline .searchbar-input-wrap {
  height: var(--f7-searchbar-inline-input-height, var(--f7-searchbar-input-height));
}

.searchbar.searchbar-inline .searchbar-inner {
  padding: 0;
  position: static;
  width: auto;
  height: auto;
}

.searchbar.searchbar-inline input[type='text'],
.searchbar.searchbar-inline input[type='search'] {
  font-size: var(--f7-searchbar-inline-input-font-size, var(--f7-searchbar-input-font-size));
  border-radius: var(--f7-searchbar-inline-input-border-radius, var(--f7-searchbar-input-border-radius));
  padding-left: calc(var(--f7-searchbar-inline-input-padding-horizontal, var(--f7-searchbar-input-padding-horizontal)) + var(--f7-searchbar-input-extra-padding-left, 0px));
  padding-right: calc(var(--f7-searchbar-inline-input-padding-horizontal, var(--f7-searchbar-input-padding-horizontal)) + var(--f7-searchbar-input-extra-padding-right, 0px));
}

.ios .searchbar input[type='search'],
.ios .searchbar input[type='text'] {
  z-index: 30;
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow);
}

.ios .searchbar .input-clear-button {
  z-index: 40;
  right: 16px;
}

.ios .searchbar-icon {
  width: 13px;
  height: 13px;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  z-index: 40;
  left: 16px;
}

.ios .searchbar-icon:after {
  content: 'search_ios';
  line-height: 13px;
}

.ios .searchbar-disable-button {
  font-size: 17px;
  flex-shrink: 0;
  transform: translate3d(0, 0, 0);
  transition-duration: 300ms;
  color: var(--f7-searchbar-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
  display: none;
  height: var(--f7-searchbar-height);
  padding: 0 12px;
  align-items: center;
  justify-content: center;
  border-radius: 44px;
  background-color: var(--f7-searchbar-input-bg-color);
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  transform: scale(0);
}

.ios .searchbar-disable-button.active-state {
  transition-duration: 0ms;
  opacity: 0.3 !important;
}

.ios .searchbar-enabled .searchbar-disable-button {
  pointer-events: auto;
  opacity: 1;
  transform: scale(1);
  margin-left: 16px;
}

.ios .searchbar:not(.searchbar-enabled) .searchbar-disable-button {
  transition-duration: 300ms !important;
}

.ios .searchbar-input-wrap {
  border-radius: var(--f7-searchbar-input-border-radius);
}

.ios .searchbar-expandable {
  left: 0;
  bottom: 0;
  width: 100%;
  height: var(--f7-searchbar-expandable-size);
  transform: translate3d(0, 0, 0);
  pointer-events: none;
}

.ios .searchbar-expandable .searchbar-disable-button {
  margin-left: 16px;
  opacity: 1;
  display: flex;
}

.ios .searchbar-expandable .searchbar-inner {
  left: 16px;
  right: 16px;
  width: auto;
  height: var(--f7-searchbar-expandable-size);
}

.ios .searchbar-expandable .searchbar-input-wrap {
  transform: scale(0);
  transition-duration: 300ms;
}

.ios .navbar.with-searchbar-expandable-enabled .navbar-bg,
.ios .navbar.with-searchbar-expandable-closing .navbar-bg {
  transition-property: transform, opacity;
}

.ios .navbar.with-searchbar-expandable-enabled .navbar-bg,
.ios .navbar.with-searchbar-expandable-closing .navbar-bg,
.ios .navbar.with-searchbar-expandable-enabled .left,
.ios .navbar.with-searchbar-expandable-closing .left,
.ios .navbar.with-searchbar-expandable-enabled .title,
.ios .navbar.with-searchbar-expandable-closing .title,
.ios .navbar.with-searchbar-expandable-enabled .right,
.ios .navbar.with-searchbar-expandable-closing .right {
  transition-duration: 300ms;
}

.ios .navbar.with-searchbar-expandable-enabled .left,
.ios .navbar.with-searchbar-expandable-enabled-no-transition .left,
.ios .navbar.with-searchbar-expandable-enabled .title,
.ios .navbar.with-searchbar-expandable-enabled-no-transition .title,
.ios .navbar.with-searchbar-expandable-enabled .right,
.ios .navbar.with-searchbar-expandable-enabled-no-transition .right {
  transform: translateY(calc(-1 * var(--f7-navbar-height)));
  opacity: 0 !important;
}

.ios .searchbar-expandable.searchbar-enabled {
  height: var(--f7-searchbar-expandable-size);
  pointer-events: auto;
}

.ios .searchbar-expandable.searchbar-enabled .searchbar-input-wrap {
  transform: scale(1);
}

.md .searchbar-icon,
.md .searchbar-disable-button {
  position: absolute;
  top: 50%;
  transition-duration: 300ms;
}

.md .searchbar-disable-button .icon-close {
  display: none;
}

.md .searchbar-icon {
  width: 48px;
  height: 48px;
  left: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  left: var(--f7-safe-area-left);
}

.md .searchbar-icon:after {
  width: auto;
  height: auto;
  content: 'search_md';
  line-height: 1.2;
}

.md .searchbar-disable-button {
  width: 48px;
  height: 48px;
  transform: rotate(-90deg) scale(0.5);
  font-size: 0 !important;
  display: block;
  margin-top: -24px;
  color: var(--f7-searchbar-link-color, var(--f7-bars-link-color, var(--f7-theme-color)));
  left: calc(var(--f7-searchbar-inner-padding-left) + var(--f7-safe-area-left));
}

.md .searchbar-disable-button:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  line-height: 48px;
  content: 'arrow_left_md';
}

.md .searchbar-enabled:not(.searchbar-enabled-no-disable-button) .searchbar-disable-button {
  transform: rotate(0deg) scale(1);
  pointer-events: auto;
  opacity: 1;
}

.md .searchbar-enabled:not(.searchbar-enabled-no-disable-button) .searchbar-icon {
  opacity: 0;
  transform: rotate(90deg) scale(0.5);
}

.md .searchbar {
  --f7-searchbar-input-extra-padding-left: 34px;
}

.md .searchbar .input-clear-button {
  width: 48px;
  height: 48px;
  margin-top: -24px;
  right: 0;
}

.md .searchbar .input-clear-button:after {
  line-height: 48px;
  content: 'delete_round_md';
  opacity: 1;
}

.md .searchbar .input-clear-button:before {
  display: none;
}

.md .searchbar-inline {
  --f7-searchbar-input-extra-padding-left: 32px;
}

.md .page > .searchbar,
.md .subnavbar .searchbar,
.md .searchbar-expandable {
  --f7-searchbar-input-extra-padding-left: 34px;
}

.md .page > .searchbar .searchbar-disable-button,
.md .subnavbar .searchbar .searchbar-disable-button,
.md .searchbar-expandable .searchbar-disable-button {
  left: calc(var(--f7-searchbar-inner-padding-left) + var(--f7-safe-area-left));
}

.md .page > .searchbar .searchbar-icon,
.md .subnavbar .searchbar .searchbar-icon,
.md .searchbar-expandable .searchbar-icon {
  left: var(--f7-safe-area-left);
}

.md .searchbar-expandable {
  --f7-searchbar-inner-padding-left: 4px;
  --f7-searchbar-inner-padding-right: 4px;
  height: var(--f7-searchbar-expandable-size);
  opacity: 0;
  bottom: 0;
  border-radius: calc(var(--f7-searchbar-expandable-size));
  width: calc(var(--f7-searchbar-expandable-size));
  margin-top: calc(var(--f7-searchbar-expandable-size) * -1 / 2);
  transform: translate3d(0px, 0px, 0px);
  background-color: var(--f7-searchbar-input-bg-color);
  left: 100%;
  margin-left: calc(var(--f7-searchbar-expandable-size) * -1);
}

.md .searchbar-expandable.searchbar-enabled {
  width: 100%;
  border-radius: 0;
  opacity: 1;
  pointer-events: auto;
  margin-top: 0;
  left: 0;
  margin-left: 0;
}

/* === Messages === */

:root {
  --f7-message-text-header-opacity: 0.65;
  --f7-message-text-header-font-size: 12px;
  --f7-message-text-footer-opacity: 0.65;
  --f7-message-text-footer-font-size: 12px;
  --f7-message-bubble-line-height: 1.2;
  --f7-message-header-font-size: 12px;
  --f7-message-footer-font-size: 11px;
  --f7-message-name-font-size: 12px;
  --f7-message-name-font-weight: inherit;
  --f7-message-avatar-border-radius: 50%;
  --f7-messages-title-font-weight: inherit;
  --f7-message-typing-indicator-bg-color: #000;
}

:root .dark,
:root.dark {
  --f7-message-typing-indicator-bg-color: #fff;
}

.ios {
  --f7-message-text-header-text-color: inherit;
  --f7-message-text-footer-text-color: inherit;
  --f7-messages-title-font-size: 11px;
  --f7-message-avatar-size: 29px;
  --f7-message-margin: 16px;
  --f7-message-bubble-min-height: 32px;
  --f7-message-bubble-font-size: 17px;
  --f7-message-bubble-border-radius: 16px;
  --f7-message-bubble-padding-vertical: 6px;
  --f7-message-bubble-padding-horizontal: 16px;
  --f7-message-typing-indicator-opacity: 0.35;
  /*
  --f7-message-sent-bg-color: var(--f7-theme-color);
  */
  --f7-message-sent-text-color: #fff;
  --f7-messages-content-bg-color: #fff;
  --f7-message-received-text-color: #000;
  --f7-message-received-bg-color: #e5e5ea;
  --f7-messages-title-text-color: rgba(0, 0, 0, 0.45);
  --f7-message-header-text-color: rgba(0, 0, 0, 0.45);
  --f7-message-footer-text-color: rgba(0, 0, 0, 0.45);
  --f7-message-name-text-color: rgba(0, 0, 0, 0.45);
}

.ios .dark,
.ios.dark {
  --f7-message-received-bg-color: #252525;
  --f7-message-received-text-color: #fff;
  --f7-messages-content-bg-color: transparent;
  --f7-messages-title-text-color: rgba(255, 255, 255, 0.54);
  --f7-message-header-text-color: rgba(255, 255, 255, 0.54);
  --f7-message-name-text-color: rgba(255, 255, 255, 0.54);
  --f7-message-footer-text-color: rgba(255, 255, 255, 0.54);
}

.md {
  --f7-messages-content-bg-color: transparent;
  --f7-messages-title-font-size: 12px;
  --f7-message-avatar-size: 32px;
  --f7-message-margin: 16px;
  --f7-message-bubble-min-height: 40px;
  --f7-message-bubble-font-size: 16px;
  --f7-message-bubble-border-radius: 20px;
  --f7-message-bubble-padding-vertical: 10px;
  --f7-message-bubble-padding-horizontal: 16px;
  --f7-message-typing-indicator-opacity: 0.6;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-message-sent-bg-color: var(--f7-md-primary);
  --f7-message-sent-text-color: var(--f7-md-on-primary);
  --f7-message-received-bg-color: var(--f7-md-surface-variant);
  --f7-message-received-text-color: var(--f7-md-on-surface);
  --f7-message-text-header-text-color: var(--f7-md-on-surface-variant);
  --f7-message-text-footer-text-color: var(--f7-md-on-surface-variant);
  --f7-messages-title-text-color: var(--f7-md-on-surface-variant);
  --f7-message-header-text-color: var(--f7-md-on-surface-variant);
  --f7-message-footer-text-color: var(--f7-md-on-surface-variant);
  --f7-message-name-text-color: var(--f7-md-on-surface-variant);
}

.messages-content,
.messages {
  background: var(--f7-messages-content-bg-color);
}

.messages {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  position: relative;
  z-index: 1;
}

.messages-title,
.message {
  margin-top: var(--f7-message-margin);
}

.messages-title:last-child,
.message:last-child {
  margin-bottom: var(--f7-message-margin);
}

.messages-title {
  text-align: center;
  width: 100%;
  line-height: 1;
  color: var(--f7-messages-title-text-color);
  font-size: var(--f7-messages-title-font-size);
  font-weight: var(--f7-messages-title-font-weight);
}

.message {
  max-width: 70%;
  box-sizing: border-box;
  display: flex;
  align-items: flex-end;
  position: relative;
  z-index: 1;
  transform: translate3d(0, 0, 0);
}

.message-avatar {
  border-radius: var(--f7-message-avatar-border-radius);
  position: relative;
  background-size: cover;
  align-self: flex-end;
  flex-shrink: 0;
  width: var(--f7-message-avatar-size);
  height: var(--f7-message-avatar-size);
}

.message-content {
  position: relative;
  display: flex;
  flex-direction: column;
}

.message-header,
.message-footer,
.message-name {
  line-height: 1;
}

.message-header {
  color: var(--f7-message-header-text-color);
  font-size: var(--f7-message-header-font-size);
}

.message-footer {
  color: var(--f7-message-footer-text-color);
  font-size: var(--f7-message-footer-font-size);
  margin-bottom: -1em;
}

.message-name {
  color: var(--f7-message-name-text-color);
  font-size: var(--f7-message-name-font-size);
  font-weight: var(--f7-message-name-font-weight);
}

.message-bubble {
  box-sizing: border-box;
  word-break: break-word;
  display: flex;
  flex-direction: column;
  position: relative;
  line-height: var(--f7-message-bubble-line-height);
  font-size: var(--f7-message-bubble-font-size);
  border-radius: var(--f7-message-bubble-border-radius);
  padding: var(--f7-message-bubble-padding-vertical) var(--f7-message-bubble-padding-horizontal);
  min-height: var(--f7-message-bubble-min-height);
}

.message-image img {
  display: block;
  max-width: 100%;
  height: auto;
  width: auto;
}

.message-text-header,
.message-text-footer {
  line-height: 1;
}

.message-text-header {
  color: var(--f7-message-text-header-text-color);
  opacity: var(--f7-message-text-header-opacity);
  font-size: var(--f7-message-text-header-font-size);
}

.message-text-footer {
  color: var(--f7-message-text-footer-text-color);
  opacity: var(--f7-message-text-footer-opacity);
  font-size: var(--f7-message-text-footer-font-size);
}

.message-text {
  text-align: left;
}

.message-sent {
  text-align: right;
  flex-direction: row-reverse;
  align-self: flex-end;
}

.message-sent .message-bubble {
  color: var(--f7-message-sent-text-color);
  background: var(--f7-message-sent-bg-color, var(--f7-theme-color));
}

.message-sent .message-content {
  align-items: flex-end;
}

.message-received {
  flex-direction: row;
}

.message-received .message-bubble {
  color: var(--f7-message-received-text-color);
  background: var(--f7-message-received-bg-color);
}

.message-received .message-content {
  align-items: flex-start;
}

.message:not(.message-last) .message-avatar {
  opacity: 0;
}

.message:not(.message-first) .message-name {
  display: none;
}

.message.message-same-name .message-name {
  display: none;
}

.message.message-same-header .message-header {
  display: none;
}

.message.message-same-footer .message-footer {
  display: none;
}

.message-appear-from-bottom {
  animation: message-appear-from-bottom 300ms;
}

.message-appear-from-top {
  animation: message-appear-from-top 300ms;
}

.message-typing-indicator {
  display: inline-block;
  font-size: 0;
  vertical-align: middle;
}

.message-typing-indicator > div {
  display: inline-block;
  position: relative;
  background: var(--f7-message-typing-indicator-bg-color);
  opacity: var(--f7-message-typing-indicator-opacity);
  vertical-align: middle;
  border-radius: 50%;
}

@keyframes message-appear-from-bottom {
  from {
    transform: translate3d(0, 100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes message-appear-from-top {
  from {
    transform: translate3d(0, -100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.ios .messages {
  padding-bottom: 16px;
  box-sizing: border-box;
}

.ios .messages-title b,
.ios .message-header b,
.ios .message-footer b,
.ios .message-name b {
  font-weight: 600;
}

.ios .message-header,
.ios .message-name {
  margin-bottom: 3px;
}

.ios .message-footer {
  margin-top: 3px;
}

.ios .message-bubble {
  min-width: 48px;
}

.ios .message-image {
  margin: var(--f7-message-bubble-padding-vertical) calc(-1 * var(--f7-message-bubble-padding-horizontal));
}

.ios .message-image:first-child {
  margin-top: calc(-1 * var(--f7-message-bubble-padding-vertical));
}

.ios .message-image:first-child img {
  border-top-left-radius: var(--f7-message-bubble-border-radius);
  border-top-right-radius: var(--f7-message-bubble-border-radius);
}

.ios .message-image:last-child {
  margin-bottom: calc(-1 * var(--f7-message-bubble-padding-vertical));
}

.ios .message-image:last-child img {
  border-bottom-left-radius: var(--f7-message-bubble-border-radius);
  border-bottom-right-radius: var(--f7-message-bubble-border-radius);
}

.ios .message-text-header {
  margin-bottom: 3px;
}

.ios .message-text-footer {
  margin-top: 3px;
}

.ios .message-received {
  margin-left: calc(16px + var(--f7-safe-area-left));
}

.ios .message-received .message-header,
.ios .message-received .message-footer,
.ios .message-received .message-name {
  margin-left: var(--f7-message-bubble-padding-horizontal);
}

.ios .message-received .message-bubble {
  padding-left: calc(var(--f7-message-bubble-padding-horizontal) + 6px);
  -webkit-mask-box-image: url("data:image/svg+xml;charset=utf-8,<svg height='35' viewBox='0 0 96 70' width='48' xmlns='http://www.w3.org/2000/svg'><path d='m96 35c1 7-5 37-42 35-37 2-43-28-42-35-1-7 5-37 42-35 37-2 43 28 42 35z'/></svg>") 50% 42% 46% 56%;
}

.ios .message-received .message-image {
  margin-left: calc(-1 * (var(--f7-message-bubble-padding-horizontal) + 6px));
}

.ios .message-received.message-tail .message-bubble {
  border-radius: var(--f7-message-bubble-border-radius) var(--f7-message-bubble-border-radius) var(--f7-message-bubble-border-radius) 0;
}

.ios .message-received.message-tail:not(.message-typing) .message-bubble {
  -webkit-mask-box-image: url("data:image/svg+xml;charset=utf-8,<svg height='35' viewBox='0 0 96 70' width='48' xmlns='http://www.w3.org/2000/svg'><path d='m96 35c1 7-5 37-42 35-37 2-43-28-42-35-1-7 5-37 42-35 37-2 43 28 42 35z'/><path d='m0 70c6-2 12-10 12-19v-16l14 27s-8 8-26 8z'/></svg>") 50% 42% 46% 56%;
}

.ios .message-received.message-tail:not(.message-typing) .message-bubble .message-image:last-child img {
  border-bottom-left-radius: 0px;
}

.ios .message-sent {
  margin-right: calc(16px + var(--f7-safe-area-right));
}

.ios .message-sent .message-header,
.ios .message-sent .message-footer,
.ios .message-sent .message-name {
  margin-right: var(--f7-message-bubble-padding-horizontal);
}

.ios .message-sent .message-bubble {
  padding-right: calc(var(--f7-message-bubble-padding-horizontal) + 6px);
  -webkit-mask-box-image: url("data:image/svg+xml;charset=utf-8,<svg height='35' viewBox='0 0 96 70' width='48' xmlns='http://www.w3.org/2000/svg'><path d='m84 35c1 7-5 37-42 35-37 2-43-28-42-35-1-7 5-37 42-35 37-2 43 28 42 35z'/></svg>") 50% 56% 46% 42%;
}

.ios .message-sent .message-image {
  margin-right: calc(-1 * (var(--f7-message-bubble-padding-horizontal) + 6px));
}

.ios .message-sent.message-tail .message-bubble {
  border-radius: var(--f7-message-bubble-border-radius) var(--f7-message-bubble-border-radius) 0 var(--f7-message-bubble-border-radius);
  -webkit-mask-box-image: url("data:image/svg+xml;charset=utf-8,<svg height='35' viewBox='0 0 96 70' width='48' xmlns='http://www.w3.org/2000/svg'><path d='m84 35c1 7-5 37-42 35-37 2-43-28-42-35-1-7 5-37 42-35 37-2 43 28 42 35z'/><path d='m96 70c-6-2-12-10-12-19v-16l-14 27s8 8 26 8z'/></svg>") 50% 56% 46% 42%;
}

.ios .message-sent.message-tail .message-bubble .message-image:last-child img {
  border-bottom-right-radius: 0px;
}

.ios .message + .message:not(.message-first) {
  margin-top: 1px;
}

.ios .message-received.message-typing .message-content:after,
.ios .message-received.message-typing .message-content:before {
  content: '';
  position: absolute;
  background: var(--f7-message-received-bg-color);
  border-radius: 50%;
}

.ios .message-received.message-typing .message-content:after {
  width: 11px;
  height: 11px;
  left: 4px;
  bottom: 0px;
}

.ios .message-received.message-typing .message-content:before {
  width: 6px;
  height: 6px;
  left: -1px;
  bottom: -4px;
}

.ios .message-typing-indicator > div {
  width: 9px;
  height: 9px;
}

.ios .message-typing-indicator > div + div {
  margin-left: 4px;
}

.ios .message-typing-indicator > div:nth-child(1) {
  animation: ios-message-typing-indicator 900ms infinite;
}

.ios .message-typing-indicator > div:nth-child(2) {
  animation: ios-message-typing-indicator 900ms 150ms infinite;
}

.ios .message-typing-indicator > div:nth-child(3) {
  animation: ios-message-typing-indicator 900ms 300ms infinite;
}

@keyframes ios-message-typing-indicator {
  0% {
    opacity: 0.35;
  }

  25% {
    opacity: 0.2;
  }

  50% {
    opacity: 0.2;
  }
}

.md .messages-title b,
.md .message-header b,
.md .message-footer b,
.md .message-name b {
  font-weight: 500;
}

.md .message-header,
.md .message-name {
  margin-bottom: 2px;
}

.md .message-footer {
  margin-top: 2px;
}

.md .message-text-header {
  margin-bottom: 4px;
}

.md .message-text-footer {
  margin-top: 4px;
}

.md .message-image {
  margin: calc(-1 * var(--f7-message-bubble-padding-vertical)) calc(-1 * var(--f7-message-bubble-padding-horizontal));
}

.md .message-image,
.md .message-image img {
  border-radius: var(--f7-message-bubble-border-radius);
}

.md .message-received {
  margin-left: calc(8px + var(--f7-safe-area-left));
}

.md .message-received .message-name,
.md .message-received .message-header,
.md .message-received .message-footer {
  margin-left: 16px;
}

.md .message-received.message-first:not(.message-last) .message-bubble,
.md .message-received.message-first:not(.message-last) .message-image,
.md .message-received.message-first:not(.message-last) .message-image img {
  border-bottom-left-radius: 4px;
}

.md .message-received.message-last:not(.message-first) .message-bubble,
.md .message-received.message-last:not(.message-first) .message-image,
.md .message-received.message-last:not(.message-first) .message-image img {
  border-top-left-radius: 4px;
}

.md .message-received:not(.message-last):not(.message-first) .message-bubble,
.md .message-received:not(.message-last):not(.message-first) .message-image,
.md .message-received:not(.message-last):not(.message-first) .message-image img {
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
}

.md .message-received .message-avatar + .message-content {
  margin-left: 8px;
}

.md .message-sent {
  margin-right: calc(8px + var(--f7-safe-area-right));
}

.md .message-sent .message-name,
.md .message-sent .message-header,
.md .message-sent .message-footer {
  margin-right: 16px;
}

.md .message-sent.message-first:not(.message-last) .message-bubble,
.md .message-sent.message-first:not(.message-last) .message-image,
.md .message-sent.message-first:not(.message-last) .message-image img {
  border-bottom-right-radius: 4px;
}

.md .message-sent.message-last:not(.message-first) .message-bubble,
.md .message-sent.message-last:not(.message-first) .message-image,
.md .message-sent.message-last:not(.message-first) .message-image img {
  border-top-right-radius: 4px;
}

.md .message-sent:not(.message-last):not(.message-first) .message-bubble,
.md .message-sent:not(.message-last):not(.message-first) .message-image,
.md .message-sent:not(.message-last):not(.message-first) .message-image img {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
}

.md .message-sent .message-avatar + .message-content {
  margin-right: var(--f7-message-bubble-padding-horizontal);
}

.md .message + .message:not(.message-first) {
  margin-top: 2px;
}

.md .message-typing-indicator > div {
  width: 6px;
  height: 6px;
}

.md .message-typing-indicator > div + div {
  margin-left: 6px;
}

.md .message-typing-indicator > div:nth-child(1) {
  animation: md-message-typing-indicator 900ms infinite;
}

.md .message-typing-indicator > div:nth-child(2) {
  animation: md-message-typing-indicator 900ms 150ms infinite;
}

.md .message-typing-indicator > div:nth-child(3) {
  animation: md-message-typing-indicator 900ms 300ms infinite;
}

@keyframes md-message-typing-indicator {
  0% {
    transform: translateY(0%);
  }

  25% {
    transform: translateY(-5px);
  }

  50% {
    transform: translateY(0%);
  }
}

/* === Messagebar === */

:root {
  --f7-messagebar-attachments-height: 155px;
  --f7-messagebar-sheet-height: 252px;
  --f7-messagebar-sheet-landscape-height: 192px;
  /*
  --f7-messagebar-inner-padding-left: var(--f7-toolbar-inner-padding-left);
  --f7-messagebar-inner-padding-right: var(--f7-toolbar-inner-padding-right);
  */
}

.ios {
  --f7-messagebar-height: 60px;
  --f7-messagebar-font-size: 17px;
  --f7-messagebar-textarea-bg-color: var(--f7-glass-bg-color);
  --f7-messagebar-link-color: var(--f7-bars-text-color);
  --f7-messagebar-border-color: transparent;
  --f7-messagebar-textarea-border-radius: 24px;
  --f7-messagebar-textarea-padding: 10px 16px 6px;
  --f7-messagebar-textarea-height: 40px;
  --f7-messagebar-textarea-font-size: 17px;
  --f7-messagebar-textarea-line-height: 20px;
  --f7-messagebar-sheet-border-color: transparent;
  --f7-messagebar-attachment-border-radius: 20px;
  --f7-messagebar-attachment-height: 155px;
  --f7-messagebar-attachment-landscape-height: 120px;
  --f7-messagebar-attachments-border-color: transparent;
  --f7-messagebar-textarea-border: none;
  --f7-messagebar-sheet-bg-color: #fff;
  --f7-messagebar-textarea-placeholder-color: rgba(0, 0, 0, 0.4);
  --f7-messagebar-textarea-text-color: #000;
  --f7-messagebar-bg-color: #fff;
  --f7-messagebar-bg-color-rgb: 255, 255, 255;
}

.ios .dark,
.ios.dark {
  --f7-messagebar-sheet-bg-color: #000;
  --f7-messagebar-textarea-placeholder-color: rgba(255, 255, 255, 0.4);
  --f7-messagebar-textarea-text-color: #fff;
  --f7-messagebar-bg-color: var(--f7-bars-bg-color);
  --f7-messagebar-bg-color-rgb: var(--f7-bars-bg-color-rgb);
}

.md {
  --f7-messagebar-height: 64px;
  --f7-messagebar-font-size: 16px;
  --f7-messagebar-textarea-border-radius: 24px;
  --f7-messagebar-textarea-padding: 12px 16px;
  --f7-messagebar-textarea-height: 48px;
  --f7-messagebar-textarea-font-size: 16px;
  --f7-messagebar-textarea-line-height: 22px;
  --f7-messagebar-textarea-border: 1px solid transparent;
  --f7-messagebar-attachment-border-radius: 12px;
  --f7-messagebar-attachment-height: 72px;
  --f7-messagebar-attachment-landscape-height: 72px;
  --f7-messagebar-border-color: transparent;
  --f7-messagebar-attachments-border-color: transparent;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-messagebar-textarea-placeholder-color: var(--f7-md-on-surface-variant);
  --f7-messagebar-textarea-bg-color: var(--f7-md-surface-variant);
  --f7-messagebar-bg-color: var(--f7-md-surface);
  --f7-messagebar-textarea-text-color: var(--f7-md-on-surface);
  --f7-messagebar-sheet-bg-color: var(--f7-md-surface);
  --f7-messagebar-sheet-border-color: var(--f7-md-outline-variant);
  --f7-messagebar-link-color: var(--f7-md-on-surface);
}

.messagebar {
  transform: translate3d(0, 0, 0);
  height: auto;
  min-height: var(--f7-messagebar-height);
  font-size: var(--f7-messagebar-font-size);
  padding-bottom: var(--f7-safe-area-bottom);
  bottom: 0;
}

.messagebar.no-outline:before {
  display: none !important;
}

.messagebar.toolbar-hidden:after {
  display: none !important;
}

.messagebar .toolbar-inner {
  top: auto;
  position: relative;
  height: auto;
  bottom: auto;
  padding-left: calc(var(--f7-messagebar-inner-padding-left, var(--f7-toolbar-inner-padding-left)) + var(--f7-safe-area-left));
  padding-right: calc(var(--f7-messagebar-inner-padding-right, var(--f7-toolbar-inner-padding-right)) + var(--f7-safe-area-right));
}

.messagebar.messagebar-sheet-visible > .toolbar-inner {
  bottom: 0;
}

.messagebar .messagebar-area {
  width: 100%;
  flex-shrink: 1;
  min-width: 0;
  position: relative;
}

.messagebar textarea {
  width: 100%;
  flex-shrink: 1;
  background-color: var(--f7-messagebar-textarea-bg-color);
  border-radius: var(--f7-messagebar-textarea-border-radius);
  padding: var(--f7-messagebar-textarea-padding);
  height: var(--f7-messagebar-textarea-height);
  color: var(--f7-messagebar-textarea-text-color);
  font-size: var(--f7-messagebar-textarea-font-size);
  line-height: var(--f7-messagebar-textarea-line-height);
  border: var(--f7-messagebar-textarea-border);
}

.messagebar textarea::-moz-placeholder {
  color: var(--f7-messagebar-textarea-placeholder-color);
}

.messagebar textarea::placeholder {
  color: var(--f7-messagebar-textarea-placeholder-color);
}

.messagebar a.link,
.messagebar .toolbar-pane {
  align-self: flex-end;
  flex-shrink: 0;
  color: var(--f7-messagebar-link-color, var(--f7-theme-color));
}

.messagebar-attachments {
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-size: 0;
  white-space: nowrap;
  box-sizing: border-box;
  position: relative;
}

.messagebar:not(.messagebar-attachments-visible) .messagebar-attachments {
  display: none;
}

.messagebar-attachment {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  height: var(--f7-messagebar-attachment-height);
  position: relative;
  border-radius: var(--f7-messagebar-attachment-border-radius);
}

@media (orientation: landscape) {
  .messagebar-attachment {
    height: var(--f7-messagebar-attachment-landscape-height);
  }
}

.messagebar-attachment img {
  display: block;
  width: auto;
  height: 100%;
  border-radius: var(--f7-messagebar-attachment-border-radius);
}

.messagebar-sheet {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-content: flex-start;
  height: var(--f7-messagebar-sheet-height);
  background-color: var(--f7-messagebar-sheet-bg-color);
  border-top: 1px solid var(--f7-messagebar-sheet-border-color);
  padding-left: var(--f7-safe-area-left);
  padding-right: var(--f7-safe-area-right);
}

@media (orientation: landscape) {
  .messagebar-sheet {
    height: var(--f7-messagebar-sheet-landscape-height);
  }
}

.messagebar-sheet-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.messagebar-sheet-image > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: inherit;
  transition-duration: 200ms;
}

.messagebar-attachment-delete {
  display: block;
  position: absolute;
  border-radius: 50%;
  box-sizing: border-box;
  cursor: pointer;
}

.messagebar-attachment-delete:after,
.messagebar-attachment-delete:before {
  position: absolute;
  content: '';
  left: 50%;
  top: 50%;
}

.messagebar-attachment-delete:after {
  transform: rotate(45deg);
}

.messagebar-attachment-delete:before {
  transform: rotate(-45deg);
}

.messagebar:not(.messagebar-sheet-visible) .messagebar-sheet {
  display: none;
}

.messagebar ~ * {
  --f7-page-toolbar-bottom-offset: var(--f7-messagebar-height);
}

.ios .messagebar *:is(a, button):is(.icon-only, :has(i:only-child), :has(svg:only-child)) {
  min-height: var(--f7-messagebar-textarea-height);
  min-width: var(--f7-messagebar-textarea-height);
}

.ios .messagebar textarea {
  box-shadow: var(--f7-glass-shadow);
  -webkit-backdrop-filter: var(--f7-glass-backdrop);
          backdrop-filter: var(--f7-glass-backdrop);
  min-height: var(--f7-messagebar-textarea-height);
}

.ios .messagebar-attachments {
  padding: 5px;
  border-radius: var(--f7-messagebar-textarea-border-radius) var(--f7-messagebar-textarea-border-radius) 0 0;
  border: 1px solid var(--f7-messagebar-attachments-border-color);
  border-bottom: none;
}

.ios .messagebar-area {
  border-radius: var(--f7-messagebar-textarea-border-radius);
}

.ios .messagebar-attachments-visible .messagebar-area {
  background: var(--f7-messagebar-textarea-bg-color);
  box-shadow: var(--f7-glass-shadow);
  border-radius: var(--f7-messagebar-textarea-border-radius);
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

.ios .messagebar-attachments-visible .messagebar-attachments + textarea {
  background: transparent;
  box-shadow: none;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
  border-radius: 0 0 var(--f7-messagebar-textarea-border-radius) var(--f7-messagebar-textarea-border-radius);
}

.ios .messagebar-attachment {
  font-size: 14px;
}

.ios .messagebar-attachment + .messagebar-attachment {
  margin-left: 8px;
}

.ios .messagebar-attachment-delete {
  right: 5px;
  top: 5px;
  width: 20px;
  height: 20px;
  background: #7d7e80;
  border: 2px solid #fff;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2);
}

.ios .messagebar-attachment-delete:after,
.ios .messagebar-attachment-delete:before {
  width: 10px;
  height: 2px;
  background: #fff;
  margin-left: -5px;
  margin-top: -1px;
}

.ios .messagebar-sheet-image,
.ios .messagebar-sheet-item {
  box-sizing: border-box;
  flex-shrink: 0;
  margin-top: 1px;
  position: relative;
  overflow: hidden;
  height: calc((var(--f7-messagebar-sheet-height) - 2px) / 2);
  width: calc((var(--f7-messagebar-sheet-height) - 2px) / 2);
  margin-left: 1px;
}

@media (orientation: landscape) {
  .ios .messagebar-sheet-image,
  .ios .messagebar-sheet-item {
    width: calc((var(--f7-messagebar-sheet-landscape-height) - 2px) / 2);
    height: calc((var(--f7-messagebar-sheet-landscape-height) - 2px) / 2);
  }
}

.ios .messagebar-sheet-image .icon-checkbox,
.ios .messagebar-sheet-item .icon-checkbox,
.ios .messagebar-sheet-image .icon-radio,
.ios .messagebar-sheet-item .icon-radio {
  position: absolute;
  right: 8px;
  bottom: 8px;
  z-index: 1;
}

.md .messagebar {
  --f7-toolbar-link-height: var(--f7-messagebar-height);
  background: var(--f7-messagebar-bg-color);
}

.md .messagebar:before {
  content: '';
  position: absolute;
  background-color: var(--f7-messagebar-border-color);
  display: block;
  z-index: 15;
  top: 0;
  right: auto;
  bottom: auto;
  left: 0;
  height: 1px;
  width: 100%;
  transform-origin: 50% 0%;
  transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
}

.md .messagebar-attachments {
  padding: 16px 16px 0;
  border-bottom: 1px solid var(--f7-messagebar-attachments-border-color);
}

.md .messagebar-attachment img {
  width: var(--f7-messagebar-attachment-height);
  height: var(--f7-messagebar-attachment-height);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.md .messagebar-attachment + .messagebar-attachment {
  margin-left: 16px;
}

.md .messagebar-attachments-visible .messagebar-attachments {
  background: var(--f7-messagebar-textarea-bg-color);
  border-radius: var(--f7-messagebar-textarea-border-radius) var(--f7-messagebar-textarea-border-radius) 0 0;
}

.md .messagebar-attachments-visible textarea {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.md .messagebar-area {
  margin-top: 8px;
  margin-bottom: 8px;
  overflow: hidden;
}

.md .messagebar-attachment-delete {
  right: -6px;
  top: -6px;
  width: 24px;
  height: 24px;
  background-color: var(--f7-md-inverse-surface);
  border-radius: 24px;
  border: 2px solid var(--f7-messagebar-textarea-bg-color);
}

.md .messagebar-attachment-delete:after,
.md .messagebar-attachment-delete:before {
  width: 12px;
  height: 2px;
  background: var(--f7-messagebar-textarea-bg-color);
  margin-left: -6px;
  margin-top: -1px;
}

.md .messagebar-sheet-image,
.md .messagebar-sheet-item {
  --f7-touch-ripple-color: transparent;
  box-sizing: border-box;
  flex-shrink: 0;
  margin-top: 8px;
  position: relative;
  overflow: hidden;
  height: calc((var(--f7-messagebar-sheet-height) - 24px) / 2);
  width: calc((var(--f7-messagebar-sheet-height) - 24px) / 2);
  border-radius: 4px;
  margin-left: 8px;
}

@media (orientation: landscape) {
  .md .messagebar-sheet-image,
  .md .messagebar-sheet-item {
    width: calc((var(--f7-messagebar-sheet-landscape-height) - 8px) / 2);
    height: calc((var(--f7-messagebar-sheet-landscape-height) - 24px) / 2);
  }
}

.md .messagebar-sheet-image input:checked ~ img,
.md .messagebar-sheet-item input:checked ~ img {
  transform: scale(0.85);
}

.md .messagebar-sheet-image input:checked ~ .icon-checkbox,
.md .messagebar-sheet-item input:checked ~ .icon-checkbox,
.md .messagebar-sheet-image input:checked ~ .icon-radio,
.md .messagebar-sheet-item input:checked ~ .icon-radio {
  transform: translate(-50%, -50%) scale(1);
}

.md .messagebar-sheet-image .icon-checkbox,
.md .messagebar-sheet-item .icon-checkbox,
.md .messagebar-sheet-image .icon-radio,
.md .messagebar-sheet-item .icon-radio {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0.85);
  border: none;
  z-index: 1;
  --f7-checkbox-inactive-color: var(--f7-md-surface);
  --f7-checkbox-active-color: var(--f7-md-surface);
}

.md .messagebar-sheet-image .icon-checkbox::after,
.md .messagebar-sheet-item .icon-checkbox::after,
.md .messagebar-sheet-image .icon-radio::after,
.md .messagebar-sheet-item .icon-radio::after {
  color: var(--f7-md-on-surface);
  font-size: 18px;
  width: auto;
  height: 100%;
  line-height: 32px;
  left: 0;
  position: static;
}

/* === Swiper === */

/**
 * Swiper 12.0.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 21, 2025
 */

:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* 3D Effects */

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-slide,
  .swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
}

/* For Internet Explorer and Edge */

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */

/* 3D Shadows */

.swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom,
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader, .swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Slide styles end */

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden, .swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev, .swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}

.swiper-button-prev svg, .swiper-button-next svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: center;
  fill: currentColor;
  pointer-events: none;
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}

.swiper-button-prev .swiper-navigation-icon {
  transform: rotate(180deg);
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal .swiper-button-prev,
  .swiper-horizontal .swiper-button-next,
  .swiper-horizontal ~ .swiper-button-prev,
  .swiper-horizontal ~ .swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  margin-left: 0;
}

.swiper-horizontal .swiper-button-prev,
  .swiper-horizontal ~ .swiper-button-prev,
  .swiper-horizontal.swiper-rtl .swiper-button-next,
  .swiper-horizontal.swiper-rtl ~ .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}

.swiper-horizontal .swiper-button-next,
  .swiper-horizontal ~ .swiper-button-next,
  .swiper-horizontal.swiper-rtl .swiper-button-prev,
  .swiper-horizontal.swiper-rtl ~ .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal .swiper-button-prev .swiper-navigation-icon, .swiper-horizontal ~ .swiper-button-prev .swiper-navigation-icon, .swiper-horizontal.swiper-rtl .swiper-button-next .swiper-navigation-icon, .swiper-horizontal.swiper-rtl ~ .swiper-button-next .swiper-navigation-icon {
  transform: rotate(180deg);
}

.swiper-horizontal.swiper-rtl .swiper-button-prev .swiper-navigation-icon, .swiper-horizontal.swiper-rtl ~ .swiper-button-prev .swiper-navigation-icon {
  transform: rotate(0deg);
}

.swiper-vertical .swiper-button-prev,
  .swiper-vertical .swiper-button-next,
  .swiper-vertical ~ .swiper-button-prev,
  .swiper-vertical ~ .swiper-button-next {
  left: var(--swiper-navigation-top-offset, 50%);
  right: auto;
  margin-left: calc(0px - (var(--swiper-navigation-size) / 2));
  margin-top: 0;
}

.swiper-vertical .swiper-button-prev,
  .swiper-vertical ~ .swiper-button-prev {
  top: var(--swiper-navigation-sides-offset, 4px);
  bottom: auto;
}

.swiper-vertical .swiper-button-prev .swiper-navigation-icon, .swiper-vertical ~ .swiper-button-prev .swiper-navigation-icon {
  transform: rotate(-90deg);
}

.swiper-vertical .swiper-button-next,
  .swiper-vertical ~ .swiper-button-next {
  bottom: var(--swiper-navigation-sides-offset, 4px);
  top: auto;
}

.swiper-vertical .swiper-button-next .swiper-navigation-icon, .swiper-vertical ~ .swiper-button-next .swiper-navigation-icon {
  transform: rotate(90deg);
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination,
  .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition:
        200ms transform,
        200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:
        200ms transform,
        200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:
    200ms transform,
    200ms right;
}

/* Fraction */

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
  .swiper-pagination-progressbar.swiper-pagination-horizontal,
  .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
  .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar,
  .swiper-pagination-progressbar.swiper-pagination-vertical,
  .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
  .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-vertical > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

/* Zoom container styles start */

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
  .swiper-zoom-container > svg,
  .swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

/* Zoom container styles end */

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

/* a11y */

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-thumbs .swiper-slide-thumb-active {
  /* Styles for active thumb slide */
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
    .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
  .swiper-cube .swiper-slide-next,
  .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

/* Cube slide shadows start */

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* Cube slide shadows end */

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active,
    .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

/* Flip slide shadows start */

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* Flip slide shadows end */

.swiper-coverflow {
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  overflow: hidden;
}

/* === Photo Browser === */

:root {
  --f7-photobrowser-caption-font-size: 13px;
  --f7-photobrowser-caption-font-weight: 500;
  --f7-photobrowser-exposed-bg-color: #000;
  --f7-photobrowser-bg-color: #fff;
  --f7-photobrowser-caption-text-color: #000;
}

:root .dark,
:root.dark {
  --f7-photobrowser-bg-color: #000;
  --f7-photobrowser-caption-text-color: #fff;
}

.photo-browser {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 400;
}

.photo-browser-standalone.modal-in {
  transition-duration: 0ms;
  animation: photo-browser-in 400ms;
}

.photo-browser-standalone.modal-out {
  transition-duration: 0ms;
  animation: photo-browser-out 400ms !important;
}

.photo-browser-standalone.modal-out.swipe-close-to-bottom,
.photo-browser-standalone.modal-out.swipe-close-to-top {
  animation: none !important;
}

.photo-browser-standalone.photo-browser-transitioning {
  transition: 400ms;
  animation: none !important;
}

.photo-browser-popup.modal-out.swipe-close-to-bottom,
.photo-browser-popup.modal-out.swipe-close-to-top {
  transition-duration: 300ms;
}

.photo-browser-popup.modal-out.swipe-close-to-bottom {
  transform: translate3d(0, 100vh, 0);
}

.photo-browser-popup.modal-out.swipe-close-to-top {
  transform: translate3d(0, -100vh, 0);
}

.photo-browser-page {
  background: none;
}

.photo-browser-page .toolbar {
  transform: none;
}

.photo-browser-popup {
  background: none;
}

.photo-browser-of {
  margin: 0 5px;
}

.photo-browser-captions {
  pointer-events: none;
  position: absolute;
  left: 0;
  width: 100%;
  bottom: var(--f7-safe-area-bottom);
  z-index: 10;
  opacity: 1;
  transition-duration: 400ms;
}

.photo-browser-captions.photo-browser-captions-exposed {
  opacity: 0;
}

.toolbar ~ .toolbar.photo-browser-thumbs {
  bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom));
}

.page ~ .photo-browser-page:not(.photo-browser-exposed) .toolbar ~ .toolbar.photo-browser-thumbs,
.photo-browser-popup:not(.photo-browser-exposed) .toolbar ~ .toolbar.photo-browser-thumbs,
.photo-browser-standalone:not(.photo-browser-exposed) .toolbar ~ .toolbar.photo-browser-thumbs {
  height: var(--f7-toolbar-height);
}

.photo-browser-exposed .toolbar ~ .toolbar.photo-browser-thumbs {
  transform: translate3d(0, calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom, 0)), 0);
}

.photo-browser-exposed .toolbar ~ .toolbar.photo-browser-thumbs .swiper {
  height: calc(100% - var(--f7-safe-area-bottom, 0));
}

.navbar + .toolbar.photo-browser-thumbs .swiper {
  height: calc(100% - var(--f7-safe-area-bottom, 0));
}

.toolbar ~ .photo-browser-captions {
  bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom));
  transform: translate3d(0, 0px, 0);
}

.toolbar ~ .photo-browser-captions.photo-browser-captions-exposed {
  transform: translate3d(0, 0px, 0);
}

.toolbar ~ .toolbar ~ .photo-browser-captions {
  bottom: calc(var(--f7-toolbar-height) * 2 + var(--f7-safe-area-bottom));
}

.toolbar ~ .toolbar ~ .photo-browser-captions.photo-browser-captions-exposed {
  transform: translate3d(0, var(--f7-toolbar-height), 0);
}

.toolbar:has(+ .photo-browser-thumbs)::before,
.toolbar:has(+ .photo-browser-thumbs)::after {
  top: calc(-16px - var(--f7-toolbar-height)) !important;
}

.photo-browser-thumbs {
  transition-property: transform, background-color, color;
}

.photo-browser-thumbs::before,
.photo-browser-thumbs::after {
  display: none;
}

.photo-browser-thumbs .swiper {
  width: 100%;
  height: 100%;
}

.photo-browser-thumbs .swiper-slide {
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.photo-browser-thumbs img {
  width: auto;
  height: 75%;
  display: block;
  border-radius: 8px;
  min-width: 4px;
}

.photo-browser-thumbs .swiper-slide img {
  transform: translateX(-4px);
  transition-duration: 150ms;
}

.photo-browser-thumbs .swiper-slide-active img {
  transform: scale(1.2);
}

.photo-browser-thumbs .swiper-slide-active ~ .swiper-slide img {
  transform: translateX(4px);
}

.photo-browser-caption {
  box-sizing: border-box;
  color: var(--f7-photobrowser-caption-text-color);
  transition-duration: 400ms;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0;
  padding: 4px 5px;
  width: 100%;
  text-align: center;
  font-size: var(--f7-photobrowser-caption-font-size);
  font-weight: var(--f7-photobrowser-caption-font-weight);
}

.photo-browser-caption:empty {
  display: none;
}

.photo-browser-caption.photo-browser-caption-active {
  opacity: 1;
}

.photo-browser-swiper-container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: var(--f7-photobrowser-bg-color);
  transition: 400ms;
  transition-property: background-color;
  touch-action: none;
}

.photo-browser-prev.swiper-button-disabled,
.photo-browser-next.swiper-button-disabled {
  opacity: 0.3;
  pointer-events: none;
}

.photo-browser-slide {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  box-sizing: border-box;
}

.photo-browser-slide span.swiper-zoom-container {
  display: none;
}

.photo-browser-slide img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  display: none;
}

.photo-browser-slide.swiper-slide-active span.swiper-zoom-container,
.photo-browser-slide.swiper-slide-next span.swiper-zoom-container,
.photo-browser-slide.swiper-slide-prev span.swiper-zoom-container {
  display: flex;
}

.photo-browser-slide.swiper-slide-active img,
.photo-browser-slide.swiper-slide-next img,
.photo-browser-slide.swiper-slide-prev img {
  display: inline;
}

.photo-browser-slide.swiper-slide-active.photo-browser-slide-lazy .preloader,
.photo-browser-slide.swiper-slide-next.photo-browser-slide-lazy .preloader,
.photo-browser-slide.swiper-slide-prev.photo-browser-slide-lazy .preloader {
  display: block;
}

.photo-browser-slide iframe {
  width: 100%;
  height: 100%;
}

.photo-browser-slide .preloader {
  display: none;
  position: absolute;
  width: 42px;
  height: 42px;
  margin-left: -21px;
  margin-top: -21px;
  left: 50%;
  top: 50%;
}

.photo-browser-page {
  touch-action: none;
}

.photo-browser-page .navbar,
.photo-browser-page .toolbar {
  transform: translate3d(0, 0, 0);
  transition-duration: 400ms;
}

.photo-browser-exposed .navbar,
.photo-browser-exposed .toolbar:not(.photo-browser-thumbs) {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.photo-browser-exposed .toolbar:not(.photo-browser-thumbs) ~ .photo-browser-captions,
.photo-browser-exposed .toolbar ~ .toolbar.photo-browser-thumbs ~ .photo-browser-captions {
  transform: translate3d(0, var(--f7-toolbar-height), 0);
}

.photo-browser-exposed .photo-browser-swiper-container {
  background: var(--f7-photobrowser-exposed-bg-color);
}

.view.with-photo-browser-page-exposed .navbar {
  opacity: 0;
  pointer-events: none;
}

@keyframes photo-browser-in {
  0% {
    transform: translate3d(0, 0, 0) scale(0.5);
    opacity: 0;
  }

  50% {
    transform: translate3d(0, 0, 0) scale(1.05);
    opacity: 1;
  }

  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 1;
  }
}

@keyframes photo-browser-out {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 1;
  }

  50% {
    transform: translate3d(0, 0, 0) scale(1.05);
    opacity: 1;
  }

  100% {
    transform: translate3d(0, 0, 0) scale(0.5);
    opacity: 0;
  }
}

/* === Notifications === */

:root {
  --f7-notification-max-width: 568px;
  --f7-notification-subtitle-text-transform: none;
  --f7-notification-subtitle-line-height: 1.35;
  --f7-notification-text-text-transform: none;
  --f7-notification-text-font-weight: 400;
}

.ios {
  --f7-notification-margin: 8px;
  --f7-notification-padding-horizontal: 16px;
  --f7-notification-padding-vertical: 16px;
  --f7-notification-border-radius: 24px;
  --f7-notification-box-shadow: var(--f7-glass-shadow);
  --f7-notification-icon-size: 28px;
  --f7-notification-title-font-size: 14px;
  --f7-notification-title-text-transform: none;
  --f7-notification-title-line-height: 1.4;
  --f7-notification-title-font-weight: bold;
  --f7-notification-title-letter-spacing: 0.02em;
  --f7-notification-title-right-font-size: 14px;
  --f7-notification-subtitle-font-size: 14px;
  --f7-notification-subtitle-font-weight: 600;
  --f7-notification-text-font-size: 14px;
  --f7-notification-text-line-height: 1.4;
  --f7-notification-bg-color: var(--f7-glass-bg-color);
  --f7-notification-title-color: #000;
  --f7-notification-title-right-color: rgba(0, 0, 0, 0.45);
  --f7-notification-subtitle-color: #000;
  --f7-notification-text-color: #000;
}

.ios .dark,
.ios.dark {
  --f7-notification-title-color: #fff;
  --f7-notification-text-color: #fff;
  --f7-notification-subtitle-color: #fff;
  --f7-notification-title-right-color: rgba(255, 255, 255, 0.55);
}

.md {
  --f7-notification-margin: 16px;
  --f7-notification-padding-vertical: 20px;
  --f7-notification-padding-horizontal: 16px;
  --f7-notification-border-radius: 16px;
  --f7-notification-box-shadow: none;
  --f7-notification-icon-size: 24px;
  --f7-notification-title-font-size: 16px;
  --f7-notification-title-text-transform: none;
  --f7-notification-title-line-height: 1.35;
  --f7-notification-title-font-weight: 500;
  --f7-notification-title-right-font-size: 12px;
  --f7-notification-subtitle-font-size: 14px;
  --f7-notification-subtitle-font-weight: 400;
  --f7-notification-text-font-size: 14px;
  --f7-notification-text-line-height: 1.35;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-notification-title-color: var(--f7-md-on-surface);
  --f7-notification-bg-color: var(--f7-md-surface-5);
  --f7-notification-text-color: var(--f7-md-on-surface-variant);
  --f7-notification-title-right-color: var(--f7-md-on-surface-variant);
  --f7-notification-subtitle-color: var(--f7-md-on-surface);
}

.notification {
  position: absolute;
  left: var(--f7-notification-margin);
  top: var(--f7-notification-margin);
  width: calc(100% - var(--f7-notification-margin) * 2);
  z-index: 20000;
  font-size: 14px;
  margin: 0;
  border: none;
  display: none;
  box-sizing: border-box;
  transition-property: transform;
  direction: ltr;
  max-width: var(--f7-notification-max-width);
  padding: var(--f7-notification-padding-vertical) var(--f7-notification-padding-horizontal);
  border-radius: var(--f7-notification-border-radius);
  box-shadow: var(--f7-notification-box-shadow);
  background: var(--f7-notification-bg-color);
  margin-top: var(--f7-safe-area-top);
  display: flex;
  gap: 16px;
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
}

@media (min-width: 568px) {
  .notification {
    left: 50%;
    width: var(--f7-notification-max-width);
    margin-left: calc(-1 * var(--f7-notification-max-width) / 2);
  }
}

.notification-content {
  width: 100%;
  flex-shrink: 10;
}

.notification-title {
  color: var(--f7-notification-title-color, var(--f7-theme-color));
  font-size: var(--f7-notification-title-font-size);
  text-transform: var(--f7-notification-title-text-transform);
  line-height: var(--f7-notification-title-line-height);
  font-weight: var(--f7-notification-title-font-weight);
  letter-spacing: var(--f7-notification-title-letter-spacing);
}

.notification-subtitle {
  color: var(--f7-notification-subtitle-color);
  font-size: var(--f7-notification-subtitle-font-size);
  text-transform: var(--f7-notification-subtitle-text-transform);
  line-height: var(--f7-notification-subtitle-line-height);
  font-weight: var(--f7-notification-subtitle-font-weight);
}

.notification-text {
  color: var(--f7-notification-text-color);
  font-size: var(--f7-notification-text-font-size);
  text-transform: var(--f7-notification-text-text-transform);
  line-height: var(--f7-notification-text-line-height);
  font-weight: var(--f7-notification-text-font-weight);
}

.notification-title-right-text {
  color: var(--f7-notification-title-right-color);
  font-size: var(--f7-notification-title-right-font-size);
}

.notification-icon {
  font-size: 0;
  line-height: var(--f7-notification-icon-size);
  flex-shrink: 0;
}

.notification-icon i,
.notification-icon {
  width: var(--f7-notification-icon-size) !important;
  height: var(--f7-notification-icon-size) !important;
}

.notification-icon i {
  font-size: var(--f7-notification-icon-size);
}

.notification-icon img {
  height: var(--f7-notification-icon-size);
}

.notification-header {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.notification-close-button {
  margin-left: auto;
  cursor: pointer;
  position: relative;
}

.notification-close-button:after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  position: absolute;
  left: 50%;
  top: 50%;
  text-align: center;
}

.ios .notification {
  transition-duration: 450ms;
  transform: translate3d(0%, -200%, 0);
  align-items: center;
}

.ios .notification.modal-in {
  transform: translate3d(0%, 0%, 0);
  opacity: 1;
}

.ios .notification.modal-out {
  transform: translate3d(0%, -200%, 0);
}

.ios .notification-title-right-text {
  margin-left: auto;
}

.ios .notification-title-right-text + .notification-close-button {
  margin-left: 12px;
}

.ios .notification-close-button {
  font-size: 14px;
  width: 20px;
  height: 20px;
  opacity: 0.3;
  transition-duration: 300ms;
}

.ios .notification-close-button.active-state {
  transition-duration: 0ms;
  opacity: 0.1;
}

.ios .notification-close-button:after {
  color: #000;
  content: 'notification_close_ios';
  font-size: 0.65em;
  line-height: 44px;
  width: 44px;
  height: 44px;
  margin-left: -22px;
  margin-top: -22px;
}

.ios .dark .notification-close-button:after,
.ios.dark .notification-close-button:after {
  color: #fff;
}

.md .notification {
  transform: translate3d(0, -150%, 0);
}

.md .notification.modal-in {
  transition-duration: 500ms;
  transform: translate3d(0, 0%, 0);
  transition-timing-function: cubic-bezier(0, 0.8, 0.34, 1);
}

.md .notification.modal-in.notification-transitioning {
  transition-duration: 200ms;
}

.md .notification.modal-out {
  animation: none;
  transition-duration: 200ms;
  transition-timing-function: ease-in;
  transform: translate3d(0, -150%, 0);
}

.md .notification-header + :is(.notification-subtitle, .notification-text) {
  margin-top: 8px;
}

.md .notification-title-right-text {
  margin-left: 4px;
}

.md .notification-title-right-text:before {
  content: '';
  width: 3px;
  height: 3px;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
  background: var(--f7-notification-title-right-color);
}

.md .notification-close-button {
  width: 16px;
  height: 16px;
  transition-duration: 300ms;
}

.md .notification-close-button:before,
.md .notification-close-button:after {
  width: 48px;
  height: 48px;
  left: 50%;
  top: 50%;
  margin-left: -24px;
  margin-top: -24px;
}

.md .notification-close-button:after {
  color: var(--f7-md-on-surface-variant);
  content: 'delete_round_md';
  line-height: 48px;
  font-size: 24px;
}

@keyframes notification-md-in {
  0% {
    transform: translate3d(0, -150%, 0);
  }

  50% {
    transform: translate3d(0, 10%, 0);
  }

  100% {
    transform: translate3d(0, 0%, 0);
  }
}

/* === Autocomplete === */

:root {
  --f7-autocomplete-dropdown-placeholder-color: #a9a9a9;
  --f7-autocomplete-dropdown-preloader-size: 20px;
  --f7-autocomplete-dropdown-font-size: var(--f7-list-font-size);
  /*
  --f7-autocomplete-dropdown-selected-bg-color: rgba(var(--f7-theme-color-rgb), 0.2);
  */
}

.ios {
  --f7-autocomplete-dropdown-box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.2);
  --f7-autocomplete-dropdown-text-matching-font-weight: 600;
  --f7-autocomplete-dropdown-bg-color: #fff;
  --f7-autocomplete-dropdown-text-color: #000;
  --f7-autocomplete-dropdown-text-matching-color: #000;
}

.ios .dark,
.ios.dark {
  --f7-autocomplete-dropdown-bg-color: #1c1c1d;
  --f7-autocomplete-dropdown-text-color: #fff;
  --f7-autocomplete-dropdown-text-matching-color: #fff;
}

.md {
  --f7-autocomplete-dropdown-box-shadow: none;
  --f7-autocomplete-dropdown-text-matching-font-weight: 500;
  --f7-autocomplete-dropdown-text-matching-color: #000;
}

.md .dark,
.md.dark {
  --f7-autocomplete-dropdown-text-matching-color: #fff;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-autocomplete-dropdown-bg-color: var(--f7-md-surface-2);
  --f7-autocomplete-dropdown-text-color: var(--f7-md-on-surface);
}

.autocomplete-page .autocomplete-found {
  display: block;
}

.autocomplete-page .autocomplete-not-found {
  display: none;
}

.autocomplete-page .autocomplete-values {
  display: block;
}

.autocomplete-page .list ul:empty {
  display: none;
}

.autocomplete-preloader-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.autocomplete-preloader:not(.autocomplete-preloader-visible),
.autocomplete-preloader-wrap:not(:has(.autocomplete-preloader-visible)) {
  visibility: hidden;
}

.autocomplete-preloader:not(.autocomplete-preloader-visible),
.autocomplete-preloader-wrap:not(:has(.autocomplete-preloader-visible)),
.autocomplete-preloader:not(.autocomplete-preloader-visible) *,
.autocomplete-preloader-wrap:not(:has(.autocomplete-preloader-visible)) * {
  animation: none;
}

.autocomplete-dropdown {
  background: var(--f7-autocomplete-dropdown-bg-color);
  box-shadow: var(--f7-autocomplete-dropdown-box-shadow);
  box-sizing: border-box;
  position: absolute;
  z-index: 500;
  width: 100%;
  left: 0;
}

.autocomplete-dropdown .autocomplete-dropdown-inner {
  position: relative;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  z-index: 1;
}

.autocomplete-dropdown .autocomplete-preloader {
  display: none;
  position: absolute;
  bottom: 100%;
  width: var(--f7-autocomplete-dropdown-preloader-size);
  height: var(--f7-autocomplete-dropdown-preloader-size);
}

.autocomplete-dropdown .autocomplete-preloader-visible {
  display: block;
}

.autocomplete-dropdown .autocomplete-dropdown-placeholder {
  color: var(--f7-autocomplete-dropdown-placeholder-color);
}

.autocomplete-dropdown .list {
  margin: 0;
  color: var(--f7-autocomplete-dropdown-text-color);
  font-size: var(--f7-autocomplete-dropdown-font-size);
}

.autocomplete-dropdown .list b {
  color: var(--f7-autocomplete-dropdown-text-matching-color);
  font-weight: var(--f7-autocomplete-dropdown-text-matching-font-weight);
}

.autocomplete-dropdown .list ul {
  background: none !important;
}

.autocomplete-dropdown .list ul:before,
.autocomplete-dropdown .list ul:after {
  display: none !important;
}

.autocomplete-dropdown .autocomplete-dropdown-selected {
  background: var(--f7-autocomplete-dropdown-selected-bg-color, rgba(var(--f7-theme-color-rgb), 0.2));
}

.searchbar-input-wrap .autocomplete-dropdown {
  background-color: var(--f7-searchbar-input-bg-color, var(--f7-searchbar-bg-color));
  border-radius: var(--f7-searchbar-input-border-radius);
  margin-top: calc(-1 * var(--f7-searchbar-input-height));
  top: 100%;
  z-index: -1;
}

.searchbar-input-wrap .autocomplete-dropdown .autocomplete-dropdown-inner {
  padding-top: var(--f7-searchbar-input-height);
}

.searchbar-input-wrap .autocomplete-dropdown .autocomplete-dropdown-placeholder {
  color: var(--f7-searchbar-placeholder-color);
}

.searchbar-input-wrap .autocomplete-dropdown li:last-child {
  border-radius: 0 0 var(--f7-searchbar-input-border-radius) var(--f7-searchbar-input-border-radius);
  position: relative;
  overflow: hidden;
}

.searchbar-input-wrap .autocomplete-dropdown .item-content {
  padding-left: calc(var(--f7-searchbar-input-padding-horizontal) + var(--f7-searchbar-input-extra-padding-left, 0px));
}

.ios .autocomplete-dropdown .autocomplete-preloader {
  right: 16px;
  margin-bottom: 12px;
}

.ios .searchbar-input-wrap .autocomplete-dropdown {
  -webkit-backdrop-filter: saturate(180%) blur(16px);
          backdrop-filter: saturate(180%) blur(16px);
  box-shadow: var(--f7-glass-shadow);
  background-color: var(--f7-glass-bg-color);
  margin-top: 16px;
  border-radius: 22px;
}

.ios .searchbar-input-wrap .autocomplete-dropdown .autocomplete-dropdown-inner {
  padding-top: 0;
}

.ios .searchbar-input-wrap .autocomplete-dropdown li:first-child {
  position: relative;
  overflow: hidden;
  border-radius: 22px 22px 0 0;
}

.ios .searchbar-input-wrap .autocomplete-dropdown li:last-child {
  border-radius: 0 0 22px 22px;
}

.md .autocomplete-page .navbar .autocomplete-preloader {
  margin-right: 8px;
}

.md .autocomplete-popup .navbar .autocomplete-preloader {
  margin-left: 8px;
  margin-right: 16px;
}

.md .autocomplete-dropdown .autocomplete-preloader {
  right: 16px;
  margin-bottom: 8px;
}

.md .autocomplete-dropdown .autocomplete-preloader circle {
  stroke-width: 3;
}

/* === Tooltip === */

:root {
  --f7-tooltip-padding: 8px 16px;
  --f7-tooltip-font-size: 14px;
  --f7-tooltip-font-weight: 500;
  --f7-tooltip-desktop-padding: 6px 8px;
  --f7-tooltip-desktop-font-size: 12px;
}

.ios {
  --f7-tooltip-border-radius: 4px;
  --f7-tooltip-bg-color: rgba(0, 0, 0, 0.87);
  --f7-tooltip-text-color: #fff;
}

.md {
  --f7-tooltip-border-radius: 8px;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-tooltip-bg-color: var(--f7-md-secondary);
  --f7-tooltip-text-color: var(--f7-md-on-secondary);
}

.tooltip {
  position: absolute;
  background: var(--f7-tooltip-bg-color);
  border-radius: var(--f7-tooltip-border-radius);
  padding: var(--f7-tooltip-padding);
  color: var(--f7-tooltip-text-color);
  font-size: var(--f7-tooltip-font-size);
  font-weight: var(--f7-tooltip-font-weight);
  box-sizing: border-box;
  line-height: 1.2;
  opacity: 0;
  transform: scale(0.9);
  transition-duration: 150ms;
  transition-property: opacity, transform;
  z-index: 99000;
}

.tooltip.tooltip-in {
  transform: scale(1);
  opacity: 1;
}

.tooltip.tooltip-out {
  opacity: 0;
  transform: scale(1);
}

.device-desktop .tooltip {
  font-size: var(--f7-tooltip-desktop-font-size);
  padding: var(--f7-tooltip-desktop-padding);
}

/* === Treeview === */

:root {
  --f7-treeview-item-height: 34px;
  --f7-treeview-item-padding-left: 16px;
  --f7-treeview-item-padding-right: 16px;
  --f7-treeview-toggle-size: 24px;
  --f7-treeview-children-offset: 29px;
  --f7-treeview-label-font-weight: 400;
  --f7-treeview-label-text-color: inherit;
  --f7-treeview-icon-size: 24px;
  /*
  --f7-treeview-selectable-selected-bg-color: rgba(var(--f7-theme-color-rgb), 0.2);
  */
  --f7-treeview-toggle-color: rgba(0, 0, 0, 0.5);
  --f7-treeview-toggle-hover-bg-color: rgba(0, 0, 0, 0.1);
  --f7-treeview-toggle-pressed-bg-color: rgba(0, 0, 0, 0.15);
  --f7-treeview-icon-color: rgba(0, 0, 0, 0.5);
  --f7-treeview-selectable-hover-bg-color: rgba(0, 0, 0, 0.1);
  --f7-treeview-link-hover-bg-color: rgba(0, 0, 0, 0.1);
  --f7-treeview-link-pressed-bg-color: rgba(0, 0, 0, 0.15);
}

:root .dark,
:root.dark {
  --f7-treeview-toggle-color: rgba(255, 255, 255, 0.5);
  --f7-treeview-toggle-hover-bg-color: rgba(255, 255, 255, 0.03);
  --f7-treeview-toggle-pressed-bg-color: rgba(255, 255, 255, 0.1);
  --f7-treeview-icon-color: rgba(255, 255, 255, 0.75);
  --f7-treeview-selectable-hover-bg-color: rgba(255, 255, 255, 0.03);
  --f7-treeview-link-hover-bg-color: rgba(255, 255, 255, 0.03);
  --f7-treeview-link-pressed-bg-color: rgba(255, 255, 255, 0.11);
}

.ios {
  --f7-treeview-label-font-size: 17px;
}

.md {
  --f7-treeview-label-font-size: 16px;
}

.treeview-item-root {
  padding-left: var(--f7-treeview-item-padding-left);
  padding-right: var(--f7-treeview-item-padding-right);
  min-height: var(--f7-treeview-item-height);
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.treeview-item-content {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.treeview-item-content > i,
.treeview-item-content > .f7-icons,
.treeview-item-content > .material-icons {
  font-size: var(--f7-treeview-icon-size);
  color: var(--f7-treeview-icon-color);
}

.treeview-item-content:first-child {
  margin-left: calc(var(--f7-treeview-toggle-size) + 5px);
}

.treeview-item-content > * + * {
  margin-left: 5px;
}

.treeview-item-label {
  font-size: var(--f7-treeview-label-font-size);
  font-weight: var(--f7-treeview-label-font-weight);
  color: var(--f7-treeview-label-text-color);
}

.treeview-toggle {
  width: var(--f7-treeview-toggle-size);
  height: var(--f7-treeview-toggle-size);
  cursor: pointer;
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0);
  transition-duration: 200ms;
  position: relative;
  margin-right: 5px;
}

.treeview-toggle.active-state {
  background-color: var(--f7-treeview-toggle-pressed-bg-color);
}

.treeview-toggle:after {
  transition-duration: 200ms;
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  transform: translate(-50%, -50%);
  border-left: 6px solid var(--f7-treeview-toggle-color);
}

.treeview-toggle-hidden {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

.treeview-preloader {
  --f7-preloader-size: var(--f7-treeview-toggle-size);
  margin-right: calc(-1 * var(--f7-treeview-toggle-size));
}

.treeview-item-children {
  display: none;
}

.treeview-item-opened > .treeview-item-children {
  display: block;
}

.treeview-item-opened > .treeview-item-root .treeview-toggle:after {
  transform: translate(-50%, -50%) rotate(90deg);
}

a.treeview-item-root {
  color: var(--f7-treeview-label-text-color);
}

.treeview-item-selectable > .treeview-item-root,
.treeview-item-selectable.treeview-item-root {
  cursor: pointer;
  transition-duration: 150ms;
}

a.treeview-item-root {
  transition-duration: 150ms;
}

a.treeview-item-root.active-state {
  background: var(--f7-treeview-link-pressed-bg-color);
}

.treeview-item-toggle > .treeview-item-root,
.treeview-item-toggle.treeview-item-root {
  cursor: pointer;
}

.treeview-item-selected > .treeview-item-root,
.treeview-item-selected.treeview-item-root {
  background: var(--f7-treeview-selectable-selected-bg-color, rgba(var(--f7-theme-color-rgb), 0.2));
}

.treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 1);
}

.treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 2);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 3);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 4);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 5);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 6);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 7);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 8);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 9);
}

.treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item .treeview-item-root {
  padding-left: calc(var(--f7-treeview-item-padding-left) + var(--f7-treeview-children-offset) * 10);
}

/* === Breadcrumbs === */

:root {
  --f7-breadcrumbs-spacing: 12px;
  --f7-breadcrumbs-padding: 2px 0;
  --f7-breadcrumbs-icon-size: 24px;
  --f7-breadcrumbs-separator-color: rgba(0, 0, 0, 0.35);
}

:root .dark,
:root.dark {
  --f7-breadcrumbs-separator-color: rgba(255, 255, 255, 0.35);
}

.ios {
  --f7-breadcrumbs-item-bg-color: transparent;
  --f7-breadcrumbs-collapsed-border-radius: 4px;
  --f7-breadcrumbs-collapsed-padding: 0px 6px;
  --f7-breadcrumbs-separator-icon: 'chevron_right_ios';
  --f7-breadcrumbs-font-size: 17px;
  --f7-breadcrumbs-item-border-radius: 0px;
  --f7-breadcrumbs-item-padding: 0px;
  --f7-breadcrumbs-item-font-weight: normal;
  --f7-breadcrumbs-item-active-font-weight: 600;
  --f7-breadcrumbs-item-color: rgba(0, 0, 0, 0.55);
  --f7-breadcrumbs-item-active-color: #000;
  --f7-breadcrumbs-collapsed-bg-color: rgba(0, 0, 0, 0.15);
  --f7-breadcrumbs-collapsed-color: rgba(0, 0, 0, 0.75);
}

.ios .dark,
.ios.dark {
  --f7-breadcrumbs-item-color: rgba(255, 255, 255, 0.75);
  --f7-breadcrumbs-item-active-color: #fff;
  --f7-breadcrumbs-collapsed-bg-color: rgba(255, 255, 255, 0.15);
  --f7-breadcrumbs-collapsed-color: rgba(255, 255, 255, 0.75);
}

.md {
  --f7-breadcrumbs-collapsed-border-radius: 8px;
  --f7-breadcrumbs-collapsed-padding: 12px 8px;
  --f7-breadcrumbs-separator-icon: 'chevron_right_md';
  --f7-breadcrumbs-font-size: 14px;
  --f7-breadcrumbs-item-border-radius: 8px;
  --f7-breadcrumbs-item-padding: 4px 8px;
  --f7-breadcrumbs-item-font-weight: 500;
  --f7-breadcrumbs-item-active-font-weight: 500;
}

.md,
.md .dark,
.md [class*='color-'] {
  --f7-breadcrumbs-item-color: var(--f7-theme-color);
  --f7-breadcrumbs-item-bg-color: var(--f7-md-secondary-container);
  --f7-breadcrumbs-item-active-color: var(--f7-md-on-secondary-container);
  --f7-breadcrumbs-collapsed-color: var(--f7-theme-color);
  --f7-breadcrumbs-collapsed-bg-color: var(--f7-md-secondary-container);
}

.breadcrumbs {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: var(--f7-breadcrumbs-font-size);
  overflow: auto;
  white-space: nowrap;
  padding: var(--f7-breadcrumbs-padding);
  scrollbar-width: none;
  scrollbar-color: transparent;
}

.breadcrumbs::-webkit-scrollbar {
  -webkit-appearance: none;
          appearance: none;
  width: 0px;
  display: none;
  opacity: 0;
  background: transparent;
}

.breadcrumbs::-webkit-scrollbar-track {
  box-shadow: none;
  background: transparent;
}

.breadcrumbs::-webkit-scrollbar-thumb {
  background-color: transparent;
  outline: none;
  border-radius: 9999px;
  position: relative;
}

.breadcrumbs-separator,
.breadcrumbs-item,
.breadcrumbs-collapsed {
  flex-shrink: 0;
  --f7-touch-ripple-color: transparent !important;
}

.breadcrumbs-separator + .breadcrumbs-separator,
.breadcrumbs-separator + .breadcrumbs-item,
.breadcrumbs-separator + .breadcrumbs-collapsed,
.breadcrumbs-item + .breadcrumbs-separator,
.breadcrumbs-item + .breadcrumbs-item,
.breadcrumbs-item + .breadcrumbs-collapsed,
.breadcrumbs-collapsed + .breadcrumbs-separator,
.breadcrumbs-collapsed + .breadcrumbs-item,
.breadcrumbs-collapsed + .breadcrumbs-collapsed {
  margin-left: var(--f7-breadcrumbs-spacing);
}

.breadcrumbs-item {
  color: var(--f7-breadcrumbs-item-color);
  font-weight: var(--f7-breadcrumbs-item-font-weight);
  padding: var(--f7-breadcrumbs-item-padding);
  background-color: var(--f7-breadcrumbs-item-bg-color);
  display: flex;
  align-items: center;
  border-radius: var(--f7-breadcrumbs-item-border-radius);
}

.breadcrumbs-item .icon {
  font-size: var(--f7-breadcrumbs-icon-size);
  width: var(--f7-breadcrumbs-icon-size);
  height: var(--f7-breadcrumbs-icon-size);
}

.breadcrumbs-item a {
  color: inherit;
  --f7-touch-ripple-color: transparent !important;
}

.breadcrumbs-item-active {
  color: var(--f7-breadcrumbs-item-active-color, var(--f7-breadcrumbs-item-color));
  font-weight: var(--f7-breadcrumbs-item-active-font-weight);
}

.breadcrumbs-separator {
  color: var(--f7-breadcrumbs-separator-color);
  height: 24px;
  overflow: hidden;
  display: flex;
  align-items: center;
}

.breadcrumbs-separator::after {
  font-family: 'framework7-core-icons';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
  display: block;
  width: 100%;
  height: 100%;
  font-size: 20px;
  content: var(--f7-breadcrumbs-separator-icon);
  width: 12px;
}

.ios .breadcrumbs-separator::after {
  font-size: 12px;
  height: 11px;
}

.md .breadcrumbs-separator::after {
  font-size: 18px;
  height: 18px;
}

.breadcrumbs-collapsed {
  display: flex;
  align-items: center;
  padding: var(--f7-breadcrumbs-collapsed-padding);
  background: var(--f7-breadcrumbs-collapsed-bg-color);
  min-height: 1em;
  border-radius: var(--f7-breadcrumbs-collapsed-border-radius);
  cursor: pointer;
}

.breadcrumbs-collapsed::before,
.breadcrumbs-collapsed::after,
.breadcrumbs-collapsed span {
  content: '';
  width: 4px;
  height: 4px;
  background: var(--f7-breadcrumbs-collapsed-color);
  border-radius: 50%;
}

.breadcrumbs-collapsed span {
  margin: 0 3px;
}

/* === Typography === */

:root {
  --f7-typography-padding: 16px;
  --f7-typography-margin: 16px;
}

.display-flex {
  display: flex !important;
}

.display-block {
  display: block !important;
}

.display-inline-flex {
  display: inline-flex !important;
}

.display-inline-block {
  display: inline-block !important;
}

.display-inline {
  display: inline !important;
}

.display-none {
  display: none !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-shrink-2 {
  flex-shrink: 2 !important;
}

.flex-shrink-3 {
  flex-shrink: 3 !important;
}

.flex-shrink-4 {
  flex-shrink: 4 !important;
}

.flex-shrink-5 {
  flex-shrink: 5 !important;
}

.flex-shrink-6 {
  flex-shrink: 6 !important;
}

.flex-shrink-7 {
  flex-shrink: 7 !important;
}

.flex-shrink-8 {
  flex-shrink: 8 !important;
}

.flex-shrink-9 {
  flex-shrink: 9 !important;
}

.flex-shrink-10 {
  flex-shrink: 10 !important;
}

.flex-direction-row {
  flex-direction: row !important;
}

.flex-direction-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-direction-column {
  flex-direction: column !important;
}

.flex-direction-column-reverse {
  flex-direction: column-reverse !important;
}

.justify-content-flex-start {
  justify-content: flex-start !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-flex-end {
  justify-content: flex-end !important;
}

.justify-content-space-between {
  justify-content: space-between !important;
}

.justify-content-space-around {
  justify-content: space-around !important;
}

.justify-content-space-evenly {
  justify-content: space-evenly !important;
}

.justify-content-stretch {
  justify-content: stretch !important;
}

.justify-content-start {
  justify-content: start !important;
}

.justify-content-end {
  justify-content: end !important;
}

.justify-content-left {
  justify-content: left !important;
}

.justify-content-right {
  justify-content: right !important;
}

.align-content-flex-start {
  align-content: flex-start !important;
}

.align-content-flex-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-space-between {
  align-content: space-between !important;
}

.align-content-space-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-flex-start {
  align-items: flex-start !important;
}

.align-items-flex-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-self-flex-start {
  align-self: flex-start !important;
}

.align-self-flex-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

.text-align-left {
  text-align: left !important;
}

.text-align-center {
  text-align: center !important;
}

.text-align-right {
  text-align: right !important;
}

.text-align-justify {
  text-align: justify !important;
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-none {
  float: none !important;
}

.vertical-align-bottom {
  vertical-align: bottom !important;
}

.vertical-align-middle {
  vertical-align: middle !important;
}

.vertical-align-top {
  vertical-align: top !important;
}

.no-padding {
  padding: 0 !important;
}

.no-padding-left {
  padding-left: 0 !important;
}

.no-padding-right {
  padding-right: 0 !important;
}

.no-padding-horizontal {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.no-padding-top {
  padding-top: 0 !important;
}

.no-padding-bottom {
  padding-bottom: 0 !important;
}

.no-padding-vertical {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.no-margin {
  margin: 0 !important;
}

.no-margin-left {
  margin-left: 0 !important;
}

.no-margin-right {
  margin-right: 0 !important;
}

.no-margin-horizontal {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.no-margin-top {
  margin-top: 0 !important;
}

.no-margin-bottom {
  margin-bottom: 0 !important;
}

.no-margin-vertical {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.width-auto {
  width: auto !important;
}

.width-100 {
  width: 100% !important;
}

.padding {
  padding: var(--f7-typography-padding) !important;
}

.padding-half {
  padding: calc(var(--f7-typography-padding) / 2) !important;
}

.padding-top {
  padding-top: var(--f7-typography-padding) !important;
}

.padding-top-half {
  padding-top: calc(var(--f7-typography-padding) / 2) !important;
}

.padding-bottom {
  padding-bottom: var(--f7-typography-padding) !important;
}

.padding-bottom-half {
  padding-bottom: calc(var(--f7-typography-padding) / 2) !important;
}

.padding-left {
  padding-left: var(--f7-typography-padding) !important;
}

.padding-left-half {
  padding-left: calc(var(--f7-typography-padding) / 2) !important;
}

.padding-right {
  padding-right: var(--f7-typography-padding) !important;
}

.padding-right-half {
  padding-right: calc(var(--f7-typography-padding) / 2) !important;
}

.padding-vertical {
  padding-top: var(--f7-typography-padding) !important;
  padding-bottom: var(--f7-typography-padding) !important;
}

.padding-vertical-half {
  padding-top: calc(var(--f7-typography-padding) / 2) !important;
  padding-bottom: calc(var(--f7-typography-padding) / 2) !important;
}

.padding-horizontal {
  padding-left: var(--f7-typography-padding) !important;
  padding-right: var(--f7-typography-padding) !important;
}

.padding-horizontal-half {
  padding-left: calc(var(--f7-typography-padding) / 2) !important;
  padding-right: calc(var(--f7-typography-padding) / 2) !important;
}

.margin {
  margin: var(--f7-typography-margin) !important;
}

.margin-half {
  margin: calc(var(--f7-typography-margin) / 2) !important;
}

.margin-top {
  margin-top: var(--f7-typography-margin) !important;
}

.margin-top-half {
  margin-top: calc(var(--f7-typography-margin) / 2) !important;
}

.margin-bottom {
  margin-bottom: var(--f7-typography-margin) !important;
}

.margin-bottom-half {
  margin-bottom: calc(var(--f7-typography-margin) / 2) !important;
}

.margin-left {
  margin-left: var(--f7-typography-margin) !important;
}

.margin-left-half {
  margin-left: calc(var(--f7-typography-margin) / 2) !important;
}

.margin-right {
  margin-right: var(--f7-typography-margin) !important;
}

.margin-right-half {
  margin-right: calc(var(--f7-typography-margin) / 2) !important;
}

.margin-vertical {
  margin-top: var(--f7-typography-margin) !important;
  margin-bottom: var(--f7-typography-margin) !important;
}

.margin-vertical-half {
  margin-top: calc(var(--f7-typography-margin) / 2) !important;
  margin-bottom: calc(var(--f7-typography-margin) / 2) !important;
}

.margin-horizontal {
  margin-left: var(--f7-typography-margin) !important;
  margin-right: var(--f7-typography-margin) !important;
}

.margin-horizontal-half {
  margin-left: calc(var(--f7-typography-margin) / 2) !important;
  margin-right: calc(var(--f7-typography-margin) / 2) !important;
}

[class*='text-color-'] {
  color: var(--f7-theme-color-text-color) !important;
}

[class*='bg-color-'] {
  background-color: var(--f7-theme-color-bg-color) !important;
}

[class*='border-color-'] {
  border-color: var(--f7-theme-color-border-color) !important;
}

:root {
  /* Framework7 Reset Rounded */
  --f7-block-inset-border-radius: initial;
  --f7-list-inset-border-radius: initial;
  --f7-menu-list-border-radius: initial;
  --f7-button-border-radius: initial;
  --f7-dialog-border-radius: initial;
  --f7-dialog-input-border-radius: initial;
  --f7-popup-border-radius: initial;
  --f7-popup-tablet-border-radius: initial;
  --f7-popup-push-border-radius: initial;
  --f7-popover-border-radius: initial;
  --f7-actions-border-radius: initial;
  --f7-sheet-border-radius: initial;
  --f7-sheet-push-border-radius: initial;
  --f7-toast-border-radius: initial;
  --f7-preloader-modal-border-radius: initial;
  --f7-progressbar-border-radius: initial;
  --f7-swipeout-button-border-radius: initial;
  --f7-swipeout-active-border-radius: initial;
  --f7-timeline-item-inner-border-radius: initial;
  --f7-panel-floating-border-radius: initial;
  --f7-card-border-radius: initial;
  --f7-card-expandable-border-radius: initial;
  --f7-card-expandable-tablet-border-radius: initial;
  --f7-chip-border-radius: initial;
  --f7-input-item-border-radius: initial;
  --f7-input-outline-border-radius: initial;
  --f7-range-label-border-radius: initial;
  --f7-stepper-border-radius: initial;
  --f7-calendar-modal-border-radius: initial;
  --f7-fab-border-radius: initial;
  --f7-fab-label-border-radius: initial;
  --f7-searchbar-input-border-radius: initial;
  --f7-searchbar-inline-input-border-radius: initial;
  --f7-searchbar-in-page-content-border-radius: initial;
  --f7-searchbar-in-page-content-input-border-radius: initial;
  --f7-message-avatar-border-radius: initial;
  --f7-message-bubble-border-radius: initial;
  --f7-messagebar-textarea-border-radius: initial;
  --f7-messagebar-attachment-border-radius: initial;
  --f7-notification-border-radius: initial;
  --f7-tooltip-border-radius: 3px;
  --f7-color-picker-value-border-radius: initial;
  --f7-color-picker-initial-current-color-border-radius: initial;
  --f7-text-editor-button-border-radius: initial;
  --f7-area-chart-legend-border-radius: initial;
  --f7-breadcrumbs-collapsed-border-radius: initial;
  --f7-breadcrumbs-item-border-radius: initial;
}

/* Framework Reset */

a {
  color: inherit;
}

.ios,
.md {
  /* パンクズ */
  --f7-breadcrumbs-font-size: inherit;
  --f7-breadcrumbs-item-active-font-weight: normal;
}

/* デスクトップで非表示 */

html.device-desktop .not-desktop,
html.device-desktop .is-mobile {
  display: none !important;
}

/* モバイルで非表示 */

html.device-ios .not-mobile,
html.device-android .not-mobile,
html.device-ios .is-desktop,
html.device-android .is-desktop {
  display: none !important;
}

@font-face {
  font-family: 'Framework7 Icons';

  font-style: normal;

  font-weight: 400;

  font-display: swap;

  src: url('../fonts/Framework7Icons-Regular.woff2') format('woff2'),
        url('../fonts/Framework7Icons-Regular.woff') format('woff'),
        url('../fonts/Framework7Icons-Regular.ttf') format('truetype');
}

.f7-icons,
.framework7-icons {
  font-family: 'Framework7 Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 28px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  text-align: center;
}

/* Framework Reset */

a {
  color: inherit;
}

.ios,
.md {
  /* パンクズ */
  --f7-breadcrumbs-font-size: inherit;
  --f7-breadcrumbs-item-active-font-weight: normal;
}

/* デスクトップで非表示 */

html.device-desktop .not-desktop,
    html.device-desktop .is-mobile {
  display: none !important;
}

/* モバイルで非表示 */

html.device-ios .not-mobile,
    html.device-ios .is-desktop,
    html.device-android .not-mobile,
    html.device-android .is-desktop {
  display: none !important;
}

/* リンク */

.link {
  overflow: hidden;
}

/* パンクズ */

.breadcrumbs-item {
  background: transparent;
  color: inherit;
}

/* albert-sans-200 - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Number-sans';

  font-style: normal;

  font-weight: 200;

  src: url('../fonts/albert-sans-v4-latin-200.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */

  unicode-range: U+0030-0039;
}

/* albert-sans-regular - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Number-sans';

  font-style: normal;

  font-weight: 400;

  src: url('../fonts/albert-sans-v4-latin-regular.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */

  unicode-range: U+0030-0039;
}

/* albert-sans-700 - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Number-sans';

  font-style: normal;

  font-weight: 700;

  src: url('../fonts/albert-sans-v4-latin-700.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */

  unicode-range: U+0030-0039;
}

/* raleway-200 - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Raleway';

  font-style: normal;

  font-weight: 200;

  src: url('../fonts/raleway-v37-latin-200.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */

  unicode-range: U+0020-002F, U+003A-007E;
}

/* raleway-regular - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Raleway';

  font-style: normal;

  font-weight: 400;

  src: url('../fonts/raleway-v37-latin-regular.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */

  unicode-range: U+0020-002F, U+003A-007E;
}

/* raleway-700 - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Raleway';

  font-style: normal;

  font-weight: 700;

  src: url('../fonts/raleway-v37-latin-700.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */

  unicode-range: U+0020-002F, U+003A-007E;
}

/* oswald-regular - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Oswald';

  font-style: normal;

  font-weight: 400;

  src: url('../fonts/oswald-v57-latin-regular.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* oswald-500 - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'Oswald';

  font-style: normal;

  font-weight: 500;

  src: url('../fonts/oswald-v57-latin-500.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/*! Yaku Han JP v4.1.1 (OFL-1.1 AND MIT) by Qrac | Type: YakuHanJPs - Based on Noto Sans JP */

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 100;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-Thin.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 200;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-ExtraLight.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 300;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-Light.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 400;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-Regular.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 500;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-Medium.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 600;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-SemiBold.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 700;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-Bold.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 800;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-ExtraBold.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanJPs;

  font-style: normal;

  font-weight: 900;

  font-display: swap;

  src: url(../fonts/YakuHanJPs/YakuHanJPs-Black.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

/*! Yaku Han JP v4.1.1 (OFL-1.1 AND MIT) by Qrac | Type: YakuHanMPs - Based on Noto Serif JP */

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 200;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-ExtraLight.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 300;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-Light.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 400;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-Regular.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 500;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-Medium.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 600;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-SemiBold.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 700;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-Bold.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: YakuHanMPs;

  font-style: normal;

  font-weight: 900;

  font-display: swap;

  src: url(../fonts/YakuHanMPs/YakuHanMPs-Black.woff2) format('woff2');

  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011,
        U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

/* biz-udgothic-regular - latin */

@font-face {
  font-display: swap;

  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */

  font-family: 'BIZ UDGothic';

  font-style: normal;

  font-weight: 400;

  src: url('../fonts/biz-udgothic-v12-latin-regular.woff2') format('woff2');

  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
 */

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: YakuHanJPs, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

body {
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
}

img, video {
  display: inline-block;
}

*,
    ::before,
    ::after {
  border-color: var(--f7-page-master-border-color);
}

/* Framework7で上書きされるのをサイド上書き */

input[type='text'],
    input[type='password'],
    input[type='search'],
    input[type='email'],
    input[type='tel'],
    input[type='url'],
    input[type='date'],
    input[type='month'],
    input[type='datetime-local'],
    input[type='time'],
    input[type='number'],
    select,
    textarea {
  border-width: 0;
  border-style: solid;
  border-color: var(--f7-page-master-border-color);
}

/* Paragraph */

p {
  margin-top: 1em;
}

/* Figure */

figure figcaption:not(first-child) {
  margin-top: 0.25rem;
}

figure figcaption {
  /* color: white; */
  /* mix-blend-mode: overlay; */
  font-family: YakuHanJPs, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

/* Anchor */

img {
  pointer-events: none;
}

a img {
  pointer-events: auto;
}

.\!container {
  position: relative !important;
  overflow: clip !important;
}

.container {
  position: relative;
  overflow: clip;
}

.\!container > *:not(.container-bg) {
  position: relative !important;
  z-index: 10 !important;
}

.container > *:not(.container-bg) {
  position: relative;
  z-index: 10;
}

.container-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
}

@media (min-width: 40rem) {
  .inner-sm {
    max-width: 40rem;
  }

  .inner-md {
    max-width: 40rem;
  }

  .inner-lg {
    max-width: 40rem;
  }

  .inner-xl {
    max-width: 40rem;
  }

  .inner-2xl {
    max-width: 40rem;
  }

  .inner {
    max-width: 40rem;
  }
}

@media (min-width: 48rem) {
  .inner-md {
    max-width: 48rem;
  }

  .inner-lg {
    max-width: 48rem;
  }

  .inner-xl {
    max-width: 48rem;
  }

  .inner-2xl {
    max-width: 48rem;
  }

  .inner {
    max-width: 48rem;
  }
}

.inner-lg {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 64rem) {
  .inner-lg {
    max-width: 64rem;
  }

  .inner-xl {
    max-width: 64rem;
  }

  .inner-2xl {
    max-width: 64rem;
  }

  .inner {
    max-width: 64rem;
  }
}

@media (min-width: 80rem) {
  .inner-xl {
    max-width: 80rem;
  }

  .inner-2xl {
    max-width: 80rem;
  }

  .inner {
    max-width: 80rem;
  }
}

@media (min-width: 96rem) {
  .inner-2xl {
    max-width: 96rem;
  }

  .inner {
    max-width: 96rem;
  }
}

.inner {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.header:not(:first-child), .section:not(:first-child), .footer:not(:first-child) {
  margin-top: clamp(2rem,0.57rem + 3.57vw,4rem)/* fluid from 2rem at 40rem to 4rem at 96rem */;
}

.header + * {
  margin-top: clamp(1.25rem,0rem + 3.13vw,3rem)/* fluid from 1.25rem at 40rem to 3rem at 96rem */ !important;
}

.note:not(:first-child) {
  margin-top: clamp(0.75rem,0.57rem + 0.45vw,1rem)/* fluid from 0.75rem at 40rem to 1rem at 96rem */;
}

.box {
  padding-left: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  padding-right: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  padding-top: clamp(1.5rem,1.14rem + 0.89vw,2rem)/* fluid from 1.5rem at 40rem to 2rem at 96rem */;
  padding-bottom: clamp(1.5rem,1.14rem + 0.89vw,2rem)/* fluid from 1.5rem at 40rem to 2rem at 96rem */;
}

/* 文章 */

.entry {
  line-height: 1.88 !important;
  font-size: clamp(1rem,0.911rem + 0.223vw,1.125rem)/* fluid type from 1rem at 40rem to 1.125rem at 96rem */;
  line-height: clamp(1.5rem,1.32rem + 0.45vw,1.75rem)/* fluid from 1.5rem at 40rem to 1.75rem at 96rem */;
}

.container-wrapper-x {
  padding-left: clamp(1rem,-2.57rem + 8.93vw,6rem)/* fluid from 1rem at 40rem to 6rem at 96rem */;
  padding-right: clamp(1rem,-2.57rem + 8.93vw,6rem)/* fluid from 1rem at 40rem to 6rem at 96rem */;
}

.container-wrapper {
  padding-left: clamp(1rem,-2.57rem + 8.93vw,6rem)/* fluid from 1rem at 40rem to 6rem at 96rem */;
  padding-right: clamp(1rem,-2.57rem + 8.93vw,6rem)/* fluid from 1rem at 40rem to 6rem at 96rem */;
  padding-top: clamp(3rem,-0.57rem + 8.93vw,8rem)/* fluid from 3rem at 40rem to 8rem at 96rem */;
  padding-bottom: clamp(3rem,-0.57rem + 8.93vw,8rem)/* fluid from 3rem at 40rem to 8rem at 96rem */;
}

.container-block-x {
  padding-left: 1rem;
  padding-right: 1rem;
}

.container-block-y {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.container-block {
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.container-box {
  padding: clamp(1rem,-1.14rem + 5.36vw,4rem)/* fluid from 1rem at 40rem to 4rem at 96rem */;
}

.container-header:not(:first-child), .container-section:not(:first-child), .container-footer:not(:first-child) {
  margin-top: clamp(3rem,-0.57rem + 8.93vw,8rem)/* fluid from 3rem at 40rem to 8rem at 96rem */;
}

/* .conatiner-seemles + .container-{xxx} で次のコンテナと境目なしに繋げる */

/* 次の要素と境目なしに繋げる */

.seemless + .seemless {
  padding-top: 0 !important;
}

.grid-gap {
  gap: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
}

.grid-gap-x {
  -moz-column-gap: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
       column-gap: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
}

.grid-gap-y {
  row-gap: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
}

/* グリッド内のブロック */

.title {
  line-height: 1.55 !important;
  font-size: clamp(1.25rem,0.804rem + 1.116vw,1.875rem)/* fluid type from 1.25rem at 40rem to 1.875rem at 96rem */;
  line-height: clamp(1.75rem,1.39rem + 0.89vw,2.25rem)/* fluid from 1.75rem at 40rem to 2.25rem at 96rem */;
}

.title + * {
  margin-top: clamp(0.5rem,0.32rem + 0.45vw,0.75rem)/* fluid from 0.5rem at 40rem to 0.75rem at 96rem */;
}

.title-sub {
  line-height: 1.55 !important;
  font-size: clamp(1.125rem,1.036rem + 0.223vw,1.25rem)/* fluid type from 1.125rem at 40rem to 1.25rem at 96rem */;
  line-height: 1.75rem;
}

.title-sub + * {
  margin-top: clamp(0.5rem,0.32rem + 0.45vw,0.75rem)/* fluid from 0.5rem at 40rem to 0.75rem at 96rem */;
}

.title-strong {
  line-height: 1.22 !important;
  font-size: clamp(2.25rem,0.64rem + 4.02vw,4.5rem)/* fluid type from 2.25rem at 40rem to 4.5rem at 96rem */;
  line-height: /* error - End value `1` is not a length */;
}

.title-strong + * {
  margin-top: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
}

.title .title-bar {
  position: absolute;
  bottom: 0.425em;
  left: 0px;
  width: 100%;
}

.title-bar {
  display: block;
  height: 1px;
  background-image: linear-gradient(to right,rgb(0 0 0/0) 0%,rgb(0 0 0/0.5) 30%,rgb(0 0 0/0.5) 70%,rgb(0 0 0/0) 100%);
}

.form-status-banner {
  padding-left: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
  padding-right: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
  padding-top: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
  padding-bottom: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
  border-radius: 0.5rem;
  border-width: 1px;
  border-color: currentColor;
  margin-top: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
}

[data-bubble] {
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 0.25rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

/* グローバルナビ */

.g-navi-link {
  text-wrap: nowrap;
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
  --tw-gradient-from-position: 4px;
  --tw-gradient-to-position: 4px;
  color: inherit;
  padding-left: clamp(1rem,0.46rem + 1.34vw,1.75rem)/* fluid from 1rem at 40rem to 1.75rem at 96rem */;
  padding-right: clamp(1rem,0.46rem + 1.34vw,1.75rem)/* fluid from 1rem at 40rem to 1.75rem at 96rem */;
  padding-top: clamp(0.75rem,0.57rem + 0.45vw,1rem)/* fluid from 0.75rem at 40rem to 1rem at 96rem */;
  padding-bottom: clamp(0.75rem,0.57rem + 0.45vw,1rem)/* fluid from 0.75rem at 40rem to 1rem at 96rem */;
}

.g-navi-link:hover {
  --tw-gradient-from: #cbd5e1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(203 213 225 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

@media (min-width: 96rem) {
  .g-navi-link {
    padding-left: clamp(0.75rem,0.39rem + 0.89vw,1.25rem)/* fluid from 0.75rem at 40rem to 1.25rem at 96rem */;
    padding-right: clamp(0.75rem,0.39rem + 0.89vw,1.25rem)/* fluid from 0.75rem at 40rem to 1.25rem at 96rem */;
  }
}

.g-navi-link:active,
        .g-navi-link.is-current {
  --tw-gradient-from: #cbd5e1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(203 213 225 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.g-navi-strong-link {
  background-color: rgb(15 23 42 / 0.1);
}

.g-navi-strong-link:hover {
  --tw-gradient-from: rgb(15 23 42 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.g-navi-strong-link:active,
        .g-navi-strong-link.is-current {
  --tw-gradient-from: rgb(15 23 42 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

/* figure */

.figcaptions-overlay figure,
    figure.figcaption-overlay {
  position: relative;
  container-type: inline-size;
}

.figcaptions-overlay figure > figcaption, figure.figcaption-overlay > figcaption {
  position: absolute;
  bottom: 0;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
  font-family: YakuHanJPs, BIZ UDGothic, sans-serif;
  padding-left: clamp(0.5rem,0.32rem + 0.45vw,0.75rem)/* fluid from 0.5rem at 40rem to 0.75rem at 96rem */;
  padding-right: clamp(0.5rem,0.32rem + 0.45vw,0.75rem)/* fluid from 0.5rem at 40rem to 0.75rem at 96rem */;
  padding-top: clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */;
  padding-bottom: clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */;
  /*  ~text-xs/sm */
  /* <figure class="@container"> */
  /* <figcaption class="~text-xs/lg ~@sm/~@lg"> */
}

#app {
  /* input {
            @apply shadow-inner appearance-none !border border-primary rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:ring-2 focus:ring-blue-500;
        } */
}

.static {
  position: static;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.bottom-\[0\.425em\] {
  bottom: 0.425em;
}

.left-0 {
  left: 0px;
}

.col-span-2 {
  grid-column: span 2 / span 2;
}

.col-span-3 {
  grid-column: span 3 / span 3;
}

.m-0 {
  margin: 0px;
}

.m-1 {
  margin: 0.25rem;
}

.\!mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-3 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.mb-5 {
  margin-bottom: 1.25rem;
}

.ml-4 {
  margin-left: 1rem;
}

.mt-0 {
  margin-top: 0px;
}

.mt-2 {
  margin-top: 0.5rem;
}

.mt-4 {
  margin-top: 1rem;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.flex {
  display: flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.contents {
  display: contents;
}

.hidden {
  display: none;
}

.aspect-\[1\/3\] {
  aspect-ratio: 1/3;
}

.aspect-\[16\/9\] {
  aspect-ratio: 16/9;
}

.aspect-\[3\/1\] {
  aspect-ratio: 3/1;
}

.aspect-\[4\/3\] {
  aspect-ratio: 4/3;
}

.aspect-square {
  aspect-ratio: 1 / 1;
}

.aspect-\[1\/2\] {
  aspect-ratio: 1/2;
}

.aspect-\[603\/1072\] {
  aspect-ratio: 603/1072;
}

.h-6 {
  height: 1.5rem;
}

.h-8 {
  height: 2rem;
}

.h-\[1px\] {
  height: 1px;
}

.h-\[2px\] {
  height: 2px;
}

.h-auto {
  height: auto;
}

.h-full {
  height: 100%;
}

.w-1\/3 {
  width: 33.333333%;
}

.w-6 {
  width: 1.5rem;
}

.w-8 {
  width: 2rem;
}

.w-\[80px\] {
  width: 80px;
}

.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}

.w-full {
  width: 100%;
}

.min-w-\[160px\] {
  min-width: 160px;
}

.min-w-\[240px\] {
  min-width: 240px;
}

.max-w-\[340px\] {
  max-width: 340px;
}

.max-w-\[480px\] {
  max-width: 480px;
}

.max-w-\[50\%\] {
  max-width: 50%;
}

.max-w-\[960px\] {
  max-width: 960px;
}

.flex-auto {
  flex: 1 1 auto;
}

.shrink-0 {
  flex-shrink: 0;
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.cursor-pointer {
  cursor: pointer;
}

.resize {
  resize: both;
}

.appearance-none {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.break-inside-avoid {
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-cols-\[auto_1fr\] {
  grid-template-columns: auto 1fr;
}

.grid-rows-2 {
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.flex-col {
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}

.items-end {
  align-items: flex-end;
}

.items-center {
  align-items: center;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.gap-1 {
  gap: 0.25rem;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-3 {
  gap: 0.75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-x-4 {
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}

.gap-y-3 {
  row-gap: 0.75rem;
}

.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.self-end {
  align-self: flex-end;
}

.overflow-visible {
  overflow: visible;
}

.text-nowrap {
  text-wrap: nowrap;
}

.rounded {
  border-radius: 0.25rem;
}

.rounded-\[var\(--f7-input-outline-border-radius\)\] {
  border-radius: var(--f7-input-outline-border-radius);
}

.rounded-lg {
  border-radius: 0.5rem;
}

.rounded-xl {
  border-radius: 0.75rem;
}

.\!border {
  border-width: 1px !important;
}

.border {
  border-width: 1px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-b-4 {
  border-bottom-width: 4px;
}

.border-t {
  border-top-width: 1px;
}

.border-\[var\(--f7-input-outline-border-color\)\] {
  border-color: var(--f7-input-outline-border-color);
}

.border-current {
  border-color: currentColor;
}

.border-gray-400 {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.border-primary {
  --tw-border-opacity: 1;
  border-color: rgb(35 61 76 / var(--tw-border-opacity, 1));
}

.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.border-b-current {
  border-bottom-color: currentColor;
}

.border-b-gray-300 {
  --tw-border-opacity: 1;
  border-bottom-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.border-b-transparent {
  border-bottom-color: transparent;
}

.border-b-white {
  --tw-border-opacity: 1;
  border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.bg-\[\#00a29a\] {
  --tw-bg-opacity: 1;
  background-color: rgb(0 162 154 / var(--tw-bg-opacity, 1));
}

.bg-\[\#956941\] {
  --tw-bg-opacity: 1;
  background-color: rgb(149 105 65 / var(--tw-bg-opacity, 1));
}

.bg-\[\#BDD7D7\] {
  --tw-bg-opacity: 1;
  background-color: rgb(189 215 215 / var(--tw-bg-opacity, 1));
}

.bg-\[\#C1C1C1\] {
  --tw-bg-opacity: 1;
  background-color: rgb(193 193 193 / var(--tw-bg-opacity, 1));
}

.bg-\[\#bdc5c9\] {
  --tw-bg-opacity: 1;
  background-color: rgb(189 197 201 / var(--tw-bg-opacity, 1));
}

.bg-baige {
  --tw-bg-opacity: 1;
  background-color: rgb(164 138 96 / var(--tw-bg-opacity, 1));
}

.bg-baige-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 235 228 / var(--tw-bg-opacity, 1));
}

.bg-baige-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(221 211 195 / var(--tw-bg-opacity, 1));
}

.bg-baige-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(202 187 162 / var(--tw-bg-opacity, 1));
}

.bg-baige-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(183 162 129 / var(--tw-bg-opacity, 1));
}

.bg-baige-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 248 245 / var(--tw-bg-opacity, 1));
}

.bg-baige-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(164 138 96 / var(--tw-bg-opacity, 1));
}

.bg-baige-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(132 111 76 / var(--tw-bg-opacity, 1));
}

.bg-baige-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(99 83 57 / var(--tw-bg-opacity, 1));
}

.bg-baige-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(66 55 38 / var(--tw-bg-opacity, 1));
}

.bg-baige-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(33 28 19 / var(--tw-bg-opacity, 1));
}

.bg-baige-950 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 14 9 / var(--tw-bg-opacity, 1));
}

.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.bg-current {
  background-color: currentColor;
}

.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.bg-gray-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

.bg-gray-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}

.bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(35 61 76 / var(--tw-bg-opacity, 1));
}

.bg-primary-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(63 110 137 / var(--tw-bg-opacity, 1));
}

.bg-primary-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(56 98 122 / var(--tw-bg-opacity, 1));
}

.bg-primary-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(49 85 106 / var(--tw-bg-opacity, 1));
}

.bg-primary-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(42 73 91 / var(--tw-bg-opacity, 1));
}

.bg-primary-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(67 116 144 / var(--tw-bg-opacity, 1));
}

.bg-primary-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(35 61 76 / var(--tw-bg-opacity, 1));
}

.bg-primary-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(28 49 61 / var(--tw-bg-opacity, 1));
}

.bg-primary-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(21 37 46 / var(--tw-bg-opacity, 1));
}

.bg-primary-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 24 30 / var(--tw-bg-opacity, 1));
}

.bg-primary-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(7 12 15 / var(--tw-bg-opacity, 1));
}

.bg-primary-950 {
  --tw-bg-opacity: 1;
  background-color: rgb(3 6 8 / var(--tw-bg-opacity, 1));
}

.bg-request {
  --tw-bg-opacity: 1;
  background-color: rgb(41 82 182 / var(--tw-bg-opacity, 1));
}

.bg-request-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(166 186 235 / var(--tw-bg-opacity, 1));
}

.bg-request-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(130 158 227 / var(--tw-bg-opacity, 1));
}

.bg-request-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(94 130 219 / var(--tw-bg-opacity, 1));
}

.bg-request-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(57 102 210 / var(--tw-bg-opacity, 1));
}

.bg-request-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(185 200 239 / var(--tw-bg-opacity, 1));
}

.bg-request-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(41 82 182 / var(--tw-bg-opacity, 1));
}

.bg-request-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(33 66 146 / var(--tw-bg-opacity, 1));
}

.bg-request-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(25 49 109 / var(--tw-bg-opacity, 1));
}

.bg-request-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(16 33 73 / var(--tw-bg-opacity, 1));
}

.bg-request-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(8 16 36 / var(--tw-bg-opacity, 1));
}

.bg-request-950 {
  --tw-bg-opacity: 1;
  background-color: rgb(4 8 18 / var(--tw-bg-opacity, 1));
}

.bg-reserve {
  --tw-bg-opacity: 1;
  background-color: rgb(199 47 77 / var(--tw-bg-opacity, 1));
}

.bg-reserve-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(242 201 209 / var(--tw-bg-opacity, 1));
}

.bg-reserve-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(233 161 175 / var(--tw-bg-opacity, 1));
}

.bg-reserve-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(223 121 141 / var(--tw-bg-opacity, 1));
}

.bg-reserve-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(214 81 107 / var(--tw-bg-opacity, 1));
}

.bg-reserve-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(247 221 226 / var(--tw-bg-opacity, 1));
}

.bg-reserve-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(199 47 77 / var(--tw-bg-opacity, 1));
}

.bg-reserve-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(159 38 62 / var(--tw-bg-opacity, 1));
}

.bg-reserve-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(119 28 46 / var(--tw-bg-opacity, 1));
}

.bg-reserve-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(80 19 31 / var(--tw-bg-opacity, 1));
}

.bg-reserve-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(40 9 15 / var(--tw-bg-opacity, 1));
}

.bg-reserve-950 {
  --tw-bg-opacity: 1;
  background-color: rgb(20 5 8 / var(--tw-bg-opacity, 1));
}

.bg-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(201 194 178 / var(--tw-bg-opacity, 1));
}

.bg-secondary-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-secondary-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-secondary-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-secondary-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(232 229 223 / var(--tw-bg-opacity, 1));
}

.bg-secondary-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-secondary-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(201 194 178 / var(--tw-bg-opacity, 1));
}

.bg-secondary-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(170 159 133 / var(--tw-bg-opacity, 1));
}

.bg-secondary-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(134 122 94 / var(--tw-bg-opacity, 1));
}

.bg-secondary-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(89 81 62 / var(--tw-bg-opacity, 1));
}

.bg-secondary-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(45 41 31 / var(--tw-bg-opacity, 1));
}

.bg-secondary-950 {
  --tw-bg-opacity: 1;
  background-color: rgb(22 20 16 / var(--tw-bg-opacity, 1));
}

.bg-slate-900\/10 {
  background-color: rgb(15 23 42 / 0.1);
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-opacity-5 {
  --tw-bg-opacity: 0.05;
}

.bg-opacity-50 {
  --tw-bg-opacity: 0.5;
}

.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}

.from-\[\#FFC8DB\] {
  --tw-gradient-from: #FFC8DB var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 200 219 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-\[4px\] {
  --tw-gradient-from-position: 4px;
}

.to-\[\#9D673F\] {
  --tw-gradient-to: #9D673F var(--tw-gradient-to-position);
}

.to-\[4px\] {
  --tw-gradient-to-position: 4px;
}

.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.p-2 {
  padding: 0.5rem;
}

.p-3 {
  padding: 0.75rem;
}

.\!px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.\!px-8 {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.\!py-4 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.pb-0 {
  padding-bottom: 0px;
}

.pb-3 {
  padding-bottom: 0.75rem;
}

.pl-4 {
  padding-left: 1rem;
}

.text-center {
  text-align: center;
}

.font-caption {
  font-family: YakuHanJPs, BIZ UDGothic, sans-serif;
}

.font-display {
  font-family: Oswald, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.font-display-sans {
  font-family: YakuHanJPs, Number-sans, Raleway, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.font-display-serif {
  font-family: YakuHanMPs, Cinzel, Shippori Mincho, ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
}

.font-sans {
  font-family: YakuHanJPs, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.font-serif {
  font-family: YakuHanMPs, Shippori Mincho, ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-bold {
  font-weight: 700;
}

.\!leading-\[1\.22\] {
  line-height: 1.22 !important;
}

.\!leading-\[1\.55\] {
  line-height: 1.55 !important;
}

.\!leading-\[1\.88\] {
  line-height: 1.88 !important;
}

.leading-loose {
  line-height: 2;
}

.leading-none {
  line-height: 1;
}

.leading-tight {
  line-height: 1.25;
}

.text-\[\#00a29a\] {
  --tw-text-opacity: 1;
  color: rgb(0 162 154 / var(--tw-text-opacity, 1));
}

.text-\[\#a67c52\] {
  --tw-text-opacity: 1;
  color: rgb(166 124 82 / var(--tw-text-opacity, 1));
}

.text-\[\#e6ccdc\] {
  --tw-text-opacity: 1;
  color: rgb(230 204 220 / var(--tw-text-opacity, 1));
}

.text-baige {
  --tw-text-opacity: 1;
  color: rgb(164 138 96 / var(--tw-text-opacity, 1));
}

.text-baige-100 {
  --tw-text-opacity: 1;
  color: rgb(240 235 228 / var(--tw-text-opacity, 1));
}

.text-baige-200 {
  --tw-text-opacity: 1;
  color: rgb(221 211 195 / var(--tw-text-opacity, 1));
}

.text-baige-300 {
  --tw-text-opacity: 1;
  color: rgb(202 187 162 / var(--tw-text-opacity, 1));
}

.text-baige-400 {
  --tw-text-opacity: 1;
  color: rgb(183 162 129 / var(--tw-text-opacity, 1));
}

.text-baige-50 {
  --tw-text-opacity: 1;
  color: rgb(249 248 245 / var(--tw-text-opacity, 1));
}

.text-baige-500 {
  --tw-text-opacity: 1;
  color: rgb(164 138 96 / var(--tw-text-opacity, 1));
}

.text-baige-600 {
  --tw-text-opacity: 1;
  color: rgb(132 111 76 / var(--tw-text-opacity, 1));
}

.text-baige-700 {
  --tw-text-opacity: 1;
  color: rgb(99 83 57 / var(--tw-text-opacity, 1));
}

.text-baige-800 {
  --tw-text-opacity: 1;
  color: rgb(66 55 38 / var(--tw-text-opacity, 1));
}

.text-baige-900 {
  --tw-text-opacity: 1;
  color: rgb(33 28 19 / var(--tw-text-opacity, 1));
}

.text-baige-950 {
  --tw-text-opacity: 1;
  color: rgb(17 14 9 / var(--tw-text-opacity, 1));
}

.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.text-inherit {
  color: inherit;
}

.text-primary {
  --tw-text-opacity: 1;
  color: rgb(35 61 76 / var(--tw-text-opacity, 1));
}

.text-primary-100 {
  --tw-text-opacity: 1;
  color: rgb(63 110 137 / var(--tw-text-opacity, 1));
}

.text-primary-200 {
  --tw-text-opacity: 1;
  color: rgb(56 98 122 / var(--tw-text-opacity, 1));
}

.text-primary-300 {
  --tw-text-opacity: 1;
  color: rgb(49 85 106 / var(--tw-text-opacity, 1));
}

.text-primary-400 {
  --tw-text-opacity: 1;
  color: rgb(42 73 91 / var(--tw-text-opacity, 1));
}

.text-primary-50 {
  --tw-text-opacity: 1;
  color: rgb(67 116 144 / var(--tw-text-opacity, 1));
}

.text-primary-500 {
  --tw-text-opacity: 1;
  color: rgb(35 61 76 / var(--tw-text-opacity, 1));
}

.text-primary-600 {
  --tw-text-opacity: 1;
  color: rgb(28 49 61 / var(--tw-text-opacity, 1));
}

.text-primary-700 {
  --tw-text-opacity: 1;
  color: rgb(21 37 46 / var(--tw-text-opacity, 1));
}

.text-primary-800 {
  --tw-text-opacity: 1;
  color: rgb(14 24 30 / var(--tw-text-opacity, 1));
}

.text-primary-900 {
  --tw-text-opacity: 1;
  color: rgb(7 12 15 / var(--tw-text-opacity, 1));
}

.text-primary-950 {
  --tw-text-opacity: 1;
  color: rgb(3 6 8 / var(--tw-text-opacity, 1));
}

.text-request {
  --tw-text-opacity: 1;
  color: rgb(41 82 182 / var(--tw-text-opacity, 1));
}

.text-request-100 {
  --tw-text-opacity: 1;
  color: rgb(166 186 235 / var(--tw-text-opacity, 1));
}

.text-request-200 {
  --tw-text-opacity: 1;
  color: rgb(130 158 227 / var(--tw-text-opacity, 1));
}

.text-request-300 {
  --tw-text-opacity: 1;
  color: rgb(94 130 219 / var(--tw-text-opacity, 1));
}

.text-request-400 {
  --tw-text-opacity: 1;
  color: rgb(57 102 210 / var(--tw-text-opacity, 1));
}

.text-request-50 {
  --tw-text-opacity: 1;
  color: rgb(185 200 239 / var(--tw-text-opacity, 1));
}

.text-request-500 {
  --tw-text-opacity: 1;
  color: rgb(41 82 182 / var(--tw-text-opacity, 1));
}

.text-request-600 {
  --tw-text-opacity: 1;
  color: rgb(33 66 146 / var(--tw-text-opacity, 1));
}

.text-request-700 {
  --tw-text-opacity: 1;
  color: rgb(25 49 109 / var(--tw-text-opacity, 1));
}

.text-request-800 {
  --tw-text-opacity: 1;
  color: rgb(16 33 73 / var(--tw-text-opacity, 1));
}

.text-request-900 {
  --tw-text-opacity: 1;
  color: rgb(8 16 36 / var(--tw-text-opacity, 1));
}

.text-request-950 {
  --tw-text-opacity: 1;
  color: rgb(4 8 18 / var(--tw-text-opacity, 1));
}

.text-reserve {
  --tw-text-opacity: 1;
  color: rgb(199 47 77 / var(--tw-text-opacity, 1));
}

.text-reserve-100 {
  --tw-text-opacity: 1;
  color: rgb(242 201 209 / var(--tw-text-opacity, 1));
}

.text-reserve-200 {
  --tw-text-opacity: 1;
  color: rgb(233 161 175 / var(--tw-text-opacity, 1));
}

.text-reserve-300 {
  --tw-text-opacity: 1;
  color: rgb(223 121 141 / var(--tw-text-opacity, 1));
}

.text-reserve-400 {
  --tw-text-opacity: 1;
  color: rgb(214 81 107 / var(--tw-text-opacity, 1));
}

.text-reserve-50 {
  --tw-text-opacity: 1;
  color: rgb(247 221 226 / var(--tw-text-opacity, 1));
}

.text-reserve-500 {
  --tw-text-opacity: 1;
  color: rgb(199 47 77 / var(--tw-text-opacity, 1));
}

.text-reserve-600 {
  --tw-text-opacity: 1;
  color: rgb(159 38 62 / var(--tw-text-opacity, 1));
}

.text-reserve-700 {
  --tw-text-opacity: 1;
  color: rgb(119 28 46 / var(--tw-text-opacity, 1));
}

.text-reserve-800 {
  --tw-text-opacity: 1;
  color: rgb(80 19 31 / var(--tw-text-opacity, 1));
}

.text-reserve-900 {
  --tw-text-opacity: 1;
  color: rgb(40 9 15 / var(--tw-text-opacity, 1));
}

.text-reserve-950 {
  --tw-text-opacity: 1;
  color: rgb(20 5 8 / var(--tw-text-opacity, 1));
}

.text-secondary {
  --tw-text-opacity: 1;
  color: rgb(201 194 178 / var(--tw-text-opacity, 1));
}

.text-secondary-100 {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-secondary-200 {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-secondary-300 {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-secondary-400 {
  --tw-text-opacity: 1;
  color: rgb(232 229 223 / var(--tw-text-opacity, 1));
}

.text-secondary-50 {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-secondary-500 {
  --tw-text-opacity: 1;
  color: rgb(201 194 178 / var(--tw-text-opacity, 1));
}

.text-secondary-600 {
  --tw-text-opacity: 1;
  color: rgb(170 159 133 / var(--tw-text-opacity, 1));
}

.text-secondary-700 {
  --tw-text-opacity: 1;
  color: rgb(134 122 94 / var(--tw-text-opacity, 1));
}

.text-secondary-800 {
  --tw-text-opacity: 1;
  color: rgb(89 81 62 / var(--tw-text-opacity, 1));
}

.text-secondary-900 {
  --tw-text-opacity: 1;
  color: rgb(45 41 31 / var(--tw-text-opacity, 1));
}

.text-secondary-950 {
  --tw-text-opacity: 1;
  color: rgb(22 20 16 / var(--tw-text-opacity, 1));
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.opacity-30 {
  opacity: 0.3;
}

.opacity-70 {
  opacity: 0.7;
}

.shadow-inner {
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline {
  outline-style: solid;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.grayscale {
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.duration-200 {
  transition-duration: 200ms;
}

.\@container {
  container-type: inline-size;
}

.\@container\/caption {
  container-type: inline-size;
  container-name: caption;
}

.\~text-4xl\/5xl {
  font-size: clamp(2.25rem,1.71rem + 1.34vw,3rem)/* fluid type from 2.25rem at 40rem to 3rem at 96rem */;
  line-height: /* error - End value `1` is not a length */;
}

.\~text-4xl\/7xl {
  font-size: clamp(2.25rem,0.64rem + 4.02vw,4.5rem)/* fluid type from 2.25rem at 40rem to 4.5rem at 96rem */;
  line-height: /* error - End value `1` is not a length */;
}

.\~text-5xl\/6xl {
  font-size: clamp(3rem,2.46rem + 1.34vw,3.75rem)/* fluid type from 3rem at 40rem to 3.75rem at 96rem */;
  line-height: 1;
}

.\~text-base\/2xl {
  font-size: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid type from 1rem at 40rem to 1.5rem at 96rem */;
  line-height: clamp(1.5rem,1.14rem + 0.89vw,2rem)/* fluid from 1.5rem at 40rem to 2rem at 96rem */;
}

.\~text-base\/lg {
  font-size: clamp(1rem,0.911rem + 0.223vw,1.125rem)/* fluid type from 1rem at 40rem to 1.125rem at 96rem */;
  line-height: clamp(1.5rem,1.32rem + 0.45vw,1.75rem)/* fluid from 1.5rem at 40rem to 1.75rem at 96rem */;
}

.\~text-lg\/xl {
  font-size: clamp(1.125rem,1.036rem + 0.223vw,1.25rem)/* fluid type from 1.125rem at 40rem to 1.25rem at 96rem */;
  line-height: 1.75rem;
}

.\~text-sm\/base {
  font-size: clamp(0.875rem,0.786rem + 0.223vw,1rem)/* fluid type from 0.875rem at 40rem to 1rem at 96rem */;
  line-height: clamp(1.25rem,1.07rem + 0.45vw,1.5rem)/* fluid from 1.25rem at 40rem to 1.5rem at 96rem */;
}

.\~text-xl\/3xl {
  font-size: clamp(1.25rem,0.804rem + 1.116vw,1.875rem)/* fluid type from 1.25rem at 40rem to 1.875rem at 96rem */;
  line-height: clamp(1.75rem,1.39rem + 0.89vw,2.25rem)/* fluid from 1.75rem at 40rem to 2.25rem at 96rem */;
}

.\~text-xs\/lg {
  font-size: clamp(0.75rem,0.482rem + 0.67vw,1.125rem)/* fluid type from 0.75rem at 40rem to 1.125rem at 96rem */;
  line-height: clamp(1rem,0.46rem + 1.34vw,1.75rem)/* fluid from 1rem at 40rem to 1.75rem at 96rem */;
}

.\~text-xs\/sm {
  font-size: clamp(0.75rem,0.661rem + 0.223vw,0.875rem)/* fluid type from 0.75rem at 40rem to 0.875rem at 96rem */;
  line-height: clamp(1rem,0.82rem + 0.45vw,1.25rem)/* fluid from 1rem at 40rem to 1.25rem at 96rem */;
}

.\~mt-5\/10 {
  margin-top: clamp(1.25rem,0.36rem + 2.23vw,2.5rem)/* fluid from 1.25rem at 40rem to 2.5rem at 96rem */;
}

.\~gap-1\/2 {
  gap: clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */;
}

.\~gap-4\/8 {
  gap: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
}

.\~space-y-1\/2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */ * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */ * var(--tw-space-y-reverse));
}

.\~px-2\/3 {
  padding-left: clamp(0.5rem,0.32rem + 0.45vw,0.75rem)/* fluid from 0.5rem at 40rem to 0.75rem at 96rem */;
  padding-right: clamp(0.5rem,0.32rem + 0.45vw,0.75rem)/* fluid from 0.5rem at 40rem to 0.75rem at 96rem */;
}

.\~px-4\/6 {
  padding-left: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
  padding-right: clamp(1rem,0.64rem + 0.89vw,1.5rem)/* fluid from 1rem at 40rem to 1.5rem at 96rem */;
}

.\~px-4\/7 {
  padding-left: clamp(1rem,0.46rem + 1.34vw,1.75rem)/* fluid from 1rem at 40rem to 1.75rem at 96rem */;
  padding-right: clamp(1rem,0.46rem + 1.34vw,1.75rem)/* fluid from 1rem at 40rem to 1.75rem at 96rem */;
}

.\~px-4\/8 {
  padding-left: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  padding-right: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
}

.\~px-8\/16 {
  padding-left: clamp(2rem,0.57rem + 3.57vw,4rem)/* fluid from 2rem at 40rem to 4rem at 96rem */;
  padding-right: clamp(2rem,0.57rem + 3.57vw,4rem)/* fluid from 2rem at 40rem to 4rem at 96rem */;
}

.\~py-1\/2 {
  padding-top: clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */;
  padding-bottom: clamp(0.25rem,0.07rem + 0.45vw,0.5rem)/* fluid from 0.25rem at 40rem to 0.5rem at 96rem */;
}

.\~py-3\/4 {
  padding-top: clamp(0.75rem,0.57rem + 0.45vw,1rem)/* fluid from 0.75rem at 40rem to 1rem at 96rem */;
  padding-bottom: clamp(0.75rem,0.57rem + 0.45vw,1rem)/* fluid from 0.75rem at 40rem to 1rem at 96rem */;
}

.\~py-6\/7 {
  padding-top: clamp(1.5rem,1.32rem + 0.45vw,1.75rem)/* fluid from 1.5rem at 40rem to 1.75rem at 96rem */;
  padding-bottom: clamp(1.5rem,1.32rem + 0.45vw,1.75rem)/* fluid from 1.5rem at 40rem to 1.75rem at 96rem */;
}

.\~pr-6\/12 {
  padding-right: clamp(1.5rem,0.43rem + 2.68vw,3rem)/* fluid from 1.5rem at 40rem to 3rem at 96rem */;
}

.\~pl-6\/12 {
  padding-left: clamp(1.5rem,0.43rem + 2.68vw,3rem)/* fluid from 1.5rem at 40rem to 3rem at 96rem */;
}

.\[background-image\:linear-gradient\(to_right\2c rgb\(0_0_0\/0\)_0\%\2c rgb\(0_0_0\/0\.5\)_30\%\2c rgb\(0_0_0\/0\.5\)_70\%\2c rgb\(0_0_0\/0\)_100\%\)\] {
  background-image: linear-gradient(to right,rgb(0 0 0/0) 0%,rgb(0 0 0/0.5) 30%,rgb(0 0 0/0.5) 70%,rgb(0 0 0/0) 100%);
}

/* レイアウト */

/* グリッド */

/* タイトル */

/* フォーム */

/* 吹き出し */

/* フォーム */

/* テーマ */

.theme-button-icon {
  position: relative;
  display: inline-block;
  border-bottom: 1px solid currentColor;
  width: 3rem;
}

.theme-button-icon:after {
  position: absolute;
  right: 0;
  bottom: 0;
  content: '';
  height: 1rem;
  border-right: 1px solid currentColor;
  transform-origin: bottom right;
  transform: rotate(-45deg);
  transition: transform 200ms ease;
}

a:hover .theme-button-icon:after {
  transform: rotate(-60deg);
}

.blur-circle {
  background: radial-gradient(circle, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 70%);
  filter: blur(40px);
  position: absolute;
  inset: 0;
}

/* カセット */

.cassette-content + .cassette-footer {
  margin-top: 0;
}

/* アイコン */

[class*=' icon-theme-'],
[class^='icon-theme-'] {
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  text-indent: -999em;
  aspect-ratio: 1 / 1;
  min-width: 1em;
}

[class*=' icon-theme-']:before,
    [class*=' icon-theme-']:after,
    [class^='icon-theme-']:before,
    [class^='icon-theme-']:after {
  position: absolute;
  content: '';
}

/* 左右矢印 */

.icon-theme-left:before, .icon-theme-right:before {
  height: 1px;
  width: 0.75em;
  background-color: currentColor;
  transform: rotate(-45deg);
  transition: transform 200ms ease;
}

.icon-theme-left:after, .icon-theme-right:after {
  height: 1px;
  width: 0.75em;
  background-color: currentColor;
  transform: rotate(45deg);
  transition: transform 200ms ease;
}

a:hover .icon-theme-left:before, a:hover .icon-theme-right:before {
  transform: rotate(-30deg);
}

a:hover .icon-theme-left:after, a:hover .icon-theme-right:after {
  transform: rotate(30deg);
}

.icon-theme-left:before {
  transform-origin: left bottom;
}

.icon-theme-left:after {
  transform-origin: left top;
}

.icon-theme-right:before {
  transform-origin: right bottom;
}

.icon-theme-right:after {
  transform-origin: right top;
}

/* フォーム */

#app .form-back-button {
  cursor: pointer;
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

#app .form-back-button:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}

#app .form-back-button:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1));
  --tw-ring-offset-width: 2px;
}

#app .form-submit-button {
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
  --f7-touch-ripple-color: rgba(var(--f7-theme-color-rgb), 0.25);
  text-decoration: none;
  text-align: center;
  display: flex;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  margin: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  position: relative;
  overflow: hidden;
  font-family: inherit;
  cursor: pointer;
  outline: 0;
  box-sizing: border-box;
  vertical-align: middle;
  justify-content: center;
  align-items: center;
  border: var(--f7-button-border-width, 0px) solid var(--f7-button-border-color, var(--f7-theme-color));
  font-size: var(--f7-button-font-size);
  color: var(--f7-button-text-color, var(--f7-theme-color));
  height: var(--f7-button-height);
  line-height: calc(var(--f7-button-height) - var(--f7-button-border-width, 0) * 2);
  padding: var(--f7-button-padding-vertical, 0px) var(--f7-button-padding-horizontal);
  border-radius: var(--f7-button-border-radius);
  min-width: var(--f7-button-min-width);
  font-weight: var(--f7-button-font-weight);
  letter-spacing: var(--f7-button-letter-spacing);
  text-transform: var(--f7-button-text-transform);
  background-color: var(--f7-button-bg-color);
  box-shadow: var(--f7-button-box-shadow);
}

#app .form-submit-button.active-state {
  color: var(--f7-button-pressed-text-color, var(--f7-button-text-color, var(--f7-theme-color)));
}

input[type='submit']#app .form-submit-button,
input[type='button']#app .form-submit-button,
input[type='reset']#app .form-submit-button {
  width: 100%;
}

#app .form-submit-button > i + span,#app .form-submit-button > span + span,#app .form-submit-button > span ~ i {
  margin-left: 4px;
}

.subnavbar #app .form-submit-button,
.navbar #app .form-submit-button,
.toolbar #app .form-submit-button,
.searchbar #app .form-submit-button {
  color: var(--f7-button-text-color, var(--f7-theme-color));
}

#app .form-submit-button.tab-link-active {
  --f7-button-bg-color: var(--f7-button-fill-bg-color, var(--f7-theme-color));
  --f7-button-text-color: var(--f7-button-fill-text-color, #fff);
  --f7-touch-ripple-color: var(--f7-touch-ripple-white);
}

#app .form-submit-button {
  --f7-button-bg-color: var(--f7-button-fill-bg-color, var(--f7-theme-color));
  --f7-button-text-color: var(--f7-button-fill-text-color, #fff);
  --f7-touch-ripple-color: var(--f7-touch-ripple-white);
}


.ios .color-white #app .form-submit-button.tab-link-active,
.ios #app .form-submit-button.tab-link-active.color-white {
  --f7-button-text-color: #000;
}

.ios .color-white #app .form-submit-button,
.ios #app .form-submit-button.color-white {
  --f7-button-text-color: #000;
}

#app .form-submit-button {
  --f7-button-pressed-bg-color: var(--f7-button-fill-pressed-bg-color);
}

#app .form-submit-button.tab-link-active {
  --f7-button-pressed-bg-color: var(--f7-button-bg-color);
}

#app .form-submit-button {
  --f7-button-height: var(--f7-button-large-height);
  --f7-button-font-size: var(--f7-button-large-font-size);
  --f7-button-font-weight: var(--f7-button-large-font-weight);
  --f7-button-text-transform: var(--f7-button-large-text-transform);
}

.ios .button-small#app .form-submit-button,
.ios .button-small-ios#app .form-submit-button {
  --f7-button-border-width: var(--f7-button-small-outline-border-width);
  --f7-button-pressed-text-color: var(--f7-theme-color);
  --f7-button-pressed-bg-color: transparent;
}

.segmented #app .form-submit-button {
  width: 100%;
  flex-shrink: 1;
  min-width: 0;
  border-radius: 0;
}

.segmented #app .form-submit-button:first-child {
  border-radius: var(--f7-button-border-radius) 0 0 var(--f7-button-border-radius);
}

.segmented #app .form-submit-button:not(.button-outline):first-child {
  border-left: none;
}

.segmented #app .form-submit-button.button-outline:nth-child(n + 2) {
  border-left: none;
}

.segmented #app .form-submit-button:last-child {
  border-radius: 0 var(--f7-button-border-radius) var(--f7-button-border-radius) 0;
}

.segmented #app .form-submit-button:first-child:last-child {
  border-radius: var(--f7-button-border-radius);
}

.segmented-raised #app .form-submit-button:not(.button-outline),
.ios .segmented-raised-ios #app .form-submit-button:not(.button-outline),
.md .segmented-raised-md #app .form-submit-button:not(.button-outline) {
  border-left: 1px solid var(--f7-segmented-raised-divider-color);
}

#app .form-submit-button {
  --f7-button-box-shadow: var(--f7-button-raised-box-shadow);
}

#app .form-submit-button.active-state {
  --f7-button-box-shadow: var(--f7-button-raised-pressed-box-shadow);
}

.segmented-strong #app .form-submit-button,
.ios .segmented-strong-ios #app .form-submit-button,
.md .segmented-strong-md #app .form-submit-button {
  z-index: 1;
  transform: translate3d(0, 0, 0);
}

.segmented-strong #app .form-submit-button,
.ios .segmented-strong-ios #app .form-submit-button,
.md .segmented-strong-md #app .form-submit-button,
.segmented-strong #app .form-submit-button:first-child,
.ios .segmented-strong-ios #app .form-submit-button:first-child,
.md .segmented-strong-md #app .form-submit-button:first-child,
.segmented-strong #app .form-submit-button:last-child,
.ios .segmented-strong-ios #app .form-submit-button:last-child,
.md .segmented-strong-md #app .form-submit-button:last-child {
  border-radius: var(--f7-button-border-radius);
}

.segmented-strong #app .form-submit-button + .button,
.ios .segmented-strong-ios #app .form-submit-button + .button,
.md .segmented-strong-md #app .form-submit-button + .button {
  margin-left: var(--f7-segmented-strong-between-buttons);
}

.segmented-strong #app .form-submit-button.button-active,
.ios .segmented-strong-ios #app .form-submit-button.button-active,
.md .segmented-strong-md #app .form-submit-button.button-active,
.segmented-strong #app .form-submit-button.tab-link-active,
.ios .segmented-strong-ios #app .form-submit-button.tab-link-active,
.md .segmented-strong-md #app .form-submit-button.tab-link-active {
  --f7-button-hover-bg-color: transparent;
  --f7-button-bg-color: transparent;
  --f7-button-text-color: var(--f7-segmented-strong-button-active-text-color);
  --f7-button-font-weight: var(--f7-segmented-strong-button-active-font-weight);
}

#app .form-submit-button:nth-child(2) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 2;
}

#app .form-submit-button:nth-child(3) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 3;
}

#app .form-submit-button:nth-child(4) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 4;
}

#app .form-submit-button:nth-child(5) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 5;
}

#app .form-submit-button:nth-child(6) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 6;
}

#app .form-submit-button:nth-child(7) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 7;
}

#app .form-submit-button:nth-child(8) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 8;
}

#app .form-submit-button:nth-child(9) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 9;
}

#app .form-submit-button:nth-child(10) ~ .segmented-highlight {
  --f7-segmented-highlight-num: 10;
}

.button-preloader:not(#app .form-submit-button) {
  --f7-preloader-size: calc(var(--f7-button-height) - 6px);
}

.button-preloader#app .form-submit-button {
  --f7-preloader-color: #fff;
}

.ios #app .form-submit-button {
  transition-duration: 100ms;
}

.ios #app .form-submit-button.active-state {
  background-color: var(--f7-button-pressed-bg-color, rgba(var(--f7-theme-color-rgb), 0.15));
}

.ios #app .form-submit-button {
  --f7-button-pressed-bg-color: var(--f7-button-fill-pressed-bg-color, var(--f7-theme-color-tint));
}

.md #app .form-submit-button {
  transition-duration: 300ms;
  transform: translate3d(0, 0, 0);
  --f7-button-pressed-bg-color: var(--f7-button-fill-pressed-bg-color, transparent);
}

#app .form-submit-button {
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

#app .form-submit-button .ripple-wave {
  animation: touch-ripple-in-blurred 250ms forwards;
  background-image: radial-gradient(closest-side circle at 50% 50%, var(--f7-touch-ripple-color) 50%, rgba(255, 255, 255, 0));
  background-color: transparent;
}

.data-table .data-table-links #app .form-submit-button {
  min-width: 64px;
}


.ios .data-table-links #app .form-submit-button + .button,
.ios .data-table-actions #app .form-submit-button + .button {
  margin-left: 16px;
}


.md .data-table-links #app .form-submit-button + .button,
.md .data-table-actions #app .form-submit-button + .button {
  margin-left: 24px;
}

#app .form-agreement {
  height: 2rem;
  width: 2rem;
  border-radius: var(--f7-input-outline-border-radius);
  border-width: 1px;
  border-color: var(--f7-input-outline-border-color);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

#app .form-agreement:focus-within {
  border-color: transparent;
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
}

#app .form-checkbox {
  height: 1.5rem;
  width: 1.5rem;
  border-radius: var(--f7-input-outline-border-radius);
  border-width: 1px;
  border-color: var(--f7-input-outline-border-color);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

#app .form-checkbox:focus-within {
  border-color: transparent;
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
}

#app .form-input {
  height: auto;
  width: 100%;
  border-radius: var(--f7-input-outline-border-radius);
  border-width: 1px;
  border-color: var(--f7-input-outline-border-color);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

#app .form-input:focus-within {
  border-color: transparent;
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
}

#app .smart-select-init {
  height: auto;
  width: 100%;
  border-radius: var(--f7-input-outline-border-radius);
  border-width: 1px;
  border-color: var(--f7-input-outline-border-color);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

#app .smart-select-init .item-inner {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

@media (min-width: 48rem) {
  .md\:grid-gap-x {
    -moz-column-gap: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
         column-gap: clamp(1.25rem,0.71rem + 1.34vw,2rem)/* fluid from 1.25rem at 40rem to 2rem at 96rem */;
  }
}

.before\:absolute::before {
  content: var(--tw-content);
  position: absolute;
}

.before\:inset-0::before {
  content: var(--tw-content);
  inset: 0px;
}

.before\:m-auto::before {
  content: var(--tw-content);
  margin: auto;
}

.before\:h-\[2px\]::before {
  content: var(--tw-content);
  height: 2px;
}

.before\:w-full::before {
  content: var(--tw-content);
  width: 100%;
}

.before\:rotate-45::before {
  content: var(--tw-content);
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.before\:bg-current::before {
  content: var(--tw-content);
  background-color: currentColor;
}

.before\:bg-white::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}

.after\:inset-0::after {
  content: var(--tw-content);
  inset: 0px;
}

.after\:m-auto::after {
  content: var(--tw-content);
  margin: auto;
}

.after\:h-\[2px\]::after {
  content: var(--tw-content);
  height: 2px;
}

.after\:w-full::after {
  content: var(--tw-content);
  width: 100%;
}

.after\:-rotate-45::after {
  content: var(--tw-content);
  --tw-rotate: -45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.after\:bg-current::after {
  content: var(--tw-content);
  background-color: currentColor;
}

.after\:bg-white::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.focus-within\:outline-none:focus-within {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus-within\:ring-2:focus-within {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-within\:ring-blue-500:focus-within {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
}

.hover\:border-b-gray-300:hover {
  --tw-border-opacity: 1;
  border-bottom-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.hover\:border-b-white:hover {
  --tw-border-opacity: 1;
  border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}

.hover\:bg-opacity-100:hover {
  --tw-bg-opacity: 1;
}

.hover\:from-slate-300:hover {
  --tw-gradient-from: #cbd5e1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(203 213 225 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-gray-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1));
}

.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}

.group:hover .group-hover\:bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.group:hover .group-hover\:bg-gray-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

@media (min-height: 768px) {
  .h-md\:sticky-top {
    position: sticky;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 99;
    margin-top: -1px;
  }

  .h-md\:sticky-bottom {
    position: sticky;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 99;
    margin-bottom: -1px;
  }
}

@media not all and (min-width: 48rem) {
  .max-md\:col-span-2 {
    grid-column: span 2 / span 2;
  }

  .max-md\:mx-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .max-md\:flex {
    display: flex;
  }

  .max-md\:contents {
    display: contents;
  }

  .max-md\:hidden {
    display: none;
  }

  .max-md\:aspect-\[1\/1\] {
    aspect-ratio: 1/1;
  }

  .max-md\:aspect-\[16\/9\] {
    aspect-ratio: 16/9;
  }

  .max-md\:aspect-\[4\/3\] {
    aspect-ratio: 4/3;
  }

  .max-md\:h-\[1px\] {
    height: 1px;
  }

  .max-md\:w-full {
    width: 100%;
  }

  .max-md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .max-md\:grid-rows-2 {
    grid-template-rows: repeat(2, minmax(0, 1fr));
  }

  .max-md\:grid-rows-\[1fr_auto_1fr\] {
    grid-template-rows: 1fr auto 1fr;
  }

  .max-md\:flex-col {
    flex-direction: column;
  }

  .max-md\:flex-wrap {
    flex-wrap: wrap;
  }

  .max-md\:bg-gray-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
  }

  .max-md\:px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .max-md\:\~my-4\/8 {
    margin-top: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
    margin-bottom: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  }
}

@media (min-width: 48rem) {
  .md\:order-1 {
    order: 1;
  }

  .md\:order-2 {
    order: 2;
  }

  .md\:order-3 {
    order: 3;
  }

  .md\:order-4 {
    order: 4;
  }

  .md\:order-5 {
    order: 5;
  }

  .md\:col-span-3 {
    grid-column: span 3 / span 3;
  }

  .md\:mx-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .md\:my-3 {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
  }

  .md\:my-auto {
    margin-top: auto;
    margin-bottom: auto;
  }

  .md\:ml-auto {
    margin-left: auto;
  }

  .md\:mr-auto {
    margin-right: auto;
  }

  .md\:flex {
    display: flex;
  }

  .md\:grid {
    display: grid;
  }

  .md\:contents {
    display: contents;
  }

  .md\:aspect-\[1\/2\] {
    aspect-ratio: 1/2;
  }

  .md\:w-\[1px\] {
    width: 1px;
  }

  .md\:w-fit {
    width: -moz-fit-content;
    width: fit-content;
  }

  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .md\:grid-cols-\[1fr_auto_1fr\] {
    grid-template-columns: 1fr auto 1fr;
  }

  .md\:grid-cols-\[30\%_1fr\] {
    grid-template-columns: 30% 1fr;
  }

  .md\:grid-cols-subgrid {
    grid-template-columns: subgrid;
  }

  .md\:flex-row-reverse {
    flex-direction: row-reverse;
  }

  .md\:border {
    border-width: 1px;
  }

  .md\:border-r {
    border-right-width: 1px;
  }

  .md\:border-r-2 {
    border-right-width: 2px;
  }

  .md\:border-white {
    --tw-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  }

  .md\:border-r-current {
    border-right-color: currentColor;
  }

  .md\:px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .md\:py-3 {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }

  .md\:pb-4 {
    padding-bottom: 1rem;
  }

  .md\:pt-4 {
    padding-top: 1rem;
  }

  .md\:text-center {
    text-align: center;
  }

  .md\:\~mx-4\/8 {
    margin-left: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
    margin-right: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  }

  .md\:\~mr-4\/8 {
    margin-right: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  }

  .md\:\~pr-4\/8 {
    padding-right: clamp(1rem,0.29rem + 1.79vw,2rem)/* fluid from 1rem at 40rem to 2rem at 96rem */;
  }
}

@media (min-width: 64rem) {
  .lg\:columns-2 {
    -moz-columns: 2;
         columns: 2;
  }

  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lg\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (min-width: 96rem) {
  .\32xl\:\~px-3\/5 {
    padding-left: clamp(0.75rem,0.39rem + 0.89vw,1.25rem)/* fluid from 0.75rem at 40rem to 1.25rem at 96rem */;
    padding-right: clamp(0.75rem,0.39rem + 0.89vw,1.25rem)/* fluid from 0.75rem at 40rem to 1.25rem at 96rem */;
  }
}
