/** * Framework7 4.0.0 * Full featured mobile HTML framework for building iOS & Android apps * http://framework7.io/ * * Copyright 2014-2019 Vladimir Kharlampidi * * Released under the MIT License * * Released on: February 7, 2019 */ /*==================== Core ==================== */ :root { --f7-theme-color: #007aff; --f7-theme-color-rgb: 0, 122, 255; --f7-theme-color-shade: #0066d6; --f7-theme-color-tint: #298fff; --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 ==================== */ .ios { --f7-font-family: -apple-system, SF Pro Text, SF UI Text, system-ui, Helvetica Neue, Helvetica, Arial, sans-serif; --f7-text-color: #000; --f7-font-size: 14px; --f7-line-height: 1.4; } .ios .theme-dark, .ios.theme-dark { --f7-text-color: #fff; } .md { --f7-font-family: Roboto, system-ui, Noto, Helvetica, Arial, sans-serif; --f7-text-color: #212121; --f7-font-size: 14px; --f7-line-height: 1.5; } .md .theme-dark, .md.theme-dark { --f7-text-color: rgba(255, 255, 255, 0.87); } /*==================== Bars ==================== */ :root { /* --f7-bars-link-color: var(--f7-theme-color); */ --f7-bars-bg-image: none; --f7-bars-bg-color: #f7f7f8; --f7-bars-bg-color-rgb: 247, 247, 248; --f7-bars-text-color: #000; --f7-bars-shadow-bottom-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.08) 40%, rgba(0, 0, 0, 0.04) 50%, rgba(0, 0, 0, 0) 90%, rgba(0, 0, 0, 0) 100%); --f7-bars-shadow-top-image: linear-gradient(to top, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.08) 40%, rgba(0, 0, 0, 0.04) 50%, rgba(0, 0, 0, 0) 90%, rgba(0, 0, 0, 0) 100%); } .theme-dark { --f7-bars-bg-color: #1b1b1b; --f7-bars-text-color: #fff; } .ios { --f7-bars-border-color: #c4c4c4; } .ios .theme-dark, .ios.theme-dark { --f7-bars-border-color: #282829; } .md { --f7-bars-border-color: transparent; } /*==================== 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); } :root { --f7-color-red: #ff3b30; --f7-color-red-rgb: 255, 59, 48; --f7-color-red-shade: #ff1407; --f7-color-red-tint: #ff6259; --f7-color-green: #4cd964; --f7-color-green-rgb: 76, 217, 100; --f7-color-green-shade: #2cd048; --f7-color-green-tint: #6ee081; --f7-color-blue: #2196f3; --f7-color-blue-rgb: 33, 150, 243; --f7-color-blue-shade: #0c82df; --f7-color-blue-tint: #48a8f5; --f7-color-pink: #ff2d55; --f7-color-pink-rgb: 255, 45, 85; --f7-color-pink-shade: #ff0434; --f7-color-pink-tint: #ff5676; --f7-color-yellow: #ffcc00; --f7-color-yellow-rgb: 255, 204, 0; --f7-color-yellow-shade: #d6ab00; --f7-color-yellow-tint: #ffd429; --f7-color-orange: #ff9500; --f7-color-orange-rgb: 255, 149, 0; --f7-color-orange-shade: #d67d00; --f7-color-orange-tint: #ffa629; --f7-color-purple: #9c27b0; --f7-color-purple-rgb: 156, 39, 176; --f7-color-purple-shade: #7e208f; --f7-color-purple-tint: #b92fd1; --f7-color-deeppurple: #673ab7; --f7-color-deeppurple-rgb: 103, 58, 183; --f7-color-deeppurple-shade: #563098; --f7-color-deeppurple-tint: #7c52c8; --f7-color-lightblue: #5ac8fa; --f7-color-lightblue-rgb: 90, 200, 250; --f7-color-lightblue-shade: #32bbf9; --f7-color-lightblue-tint: #82d5fb; --f7-color-teal: #009688; --f7-color-teal-rgb: 0, 150, 136; --f7-color-teal-shade: #006d63; --f7-color-teal-tint: #00bfad; --f7-color-lime: #cddc39; --f7-color-lime-rgb: 205, 220, 57; --f7-color-lime-shade: #bac923; --f7-color-lime-tint: #d6e25c; --f7-color-deeporange: #ff6b22; --f7-color-deeporange-rgb: 255, 107, 34; --f7-color-deeporange-shade: #f85200; --f7-color-deeporange-tint: #ff864b; --f7-color-gray: #8e8e93; --f7-color-gray-rgb: 142, 142, 147; --f7-color-gray-shade: #79797f; --f7-color-gray-tint: #a3a3a7; --f7-color-white: #ffffff; --f7-color-white-rgb: 255, 255, 255; --f7-color-white-shade: #ebebeb; --f7-color-white-tint: #ffffff; --f7-color-black: #000000; --f7-color-black-rgb: 0, 0, 0; --f7-color-black-shade: #000000; --f7-color-black-tint: #141414; } .color-theme-red { --f7-theme-color: #ff3b30; --f7-theme-color-rgb: 255, 59, 48; --f7-theme-color-shade: #ff1407; --f7-theme-color-tint: #ff6259; } .color-theme-green { --f7-theme-color: #4cd964; --f7-theme-color-rgb: 76, 217, 100; --f7-theme-color-shade: #2cd048; --f7-theme-color-tint: #6ee081; } .color-theme-blue { --f7-theme-color: #2196f3; --f7-theme-color-rgb: 33, 150, 243; --f7-theme-color-shade: #0c82df; --f7-theme-color-tint: #48a8f5; } .color-theme-pink { --f7-theme-color: #ff2d55; --f7-theme-color-rgb: 255, 45, 85; --f7-theme-color-shade: #ff0434; --f7-theme-color-tint: #ff5676; } .color-theme-yellow { --f7-theme-color: #ffcc00; --f7-theme-color-rgb: 255, 204, 0; --f7-theme-color-shade: #d6ab00; --f7-theme-color-tint: #ffd429; } .color-theme-orange { --f7-theme-color: #ff9500; --f7-theme-color-rgb: 255, 149, 0; --f7-theme-color-shade: #d67d00; --f7-theme-color-tint: #ffa629; } .color-theme-purple { --f7-theme-color: #9c27b0; --f7-theme-color-rgb: 156, 39, 176; --f7-theme-color-shade: #7e208f; --f7-theme-color-tint: #b92fd1; } .color-theme-deeppurple { --f7-theme-color: #673ab7; --f7-theme-color-rgb: 103, 58, 183; --f7-theme-color-shade: #563098; --f7-theme-color-tint: #7c52c8; } .color-theme-lightblue { --f7-theme-color: #5ac8fa; --f7-theme-color-rgb: 90, 200, 250; --f7-theme-color-shade: #32bbf9; --f7-theme-color-tint: #82d5fb; } .color-theme-teal { --f7-theme-color: #009688; --f7-theme-color-rgb: 0, 150, 136; --f7-theme-color-shade: #006d63; --f7-theme-color-tint: #00bfad; } .color-theme-lime { --f7-theme-color: #cddc39; --f7-theme-color-rgb: 205, 220, 57; --f7-theme-color-shade: #bac923; --f7-theme-color-tint: #d6e25c; } .color-theme-deeporange { --f7-theme-color: #ff6b22; --f7-theme-color-rgb: 255, 107, 34; --f7-theme-color-shade: #f85200; --f7-theme-color-tint: #ff864b; } .color-theme-gray { --f7-theme-color: #8e8e93; --f7-theme-color-rgb: 142, 142, 147; --f7-theme-color-shade: #79797f; --f7-theme-color-tint: #a3a3a7; } .color-theme-white { --f7-theme-color: #ffffff; --f7-theme-color-rgb: 255, 255, 255; --f7-theme-color-shade: #ebebeb; --f7-theme-color-tint: #ffffff; } .color-theme-black { --f7-theme-color: #000000; --f7-theme-color-rgb: 0, 0, 0; --f7-theme-color-shade: #000000; --f7-theme-color-tint: #141414; } .color-red { --f7-theme-color: #ff3b30; --f7-theme-color-rgb: 255, 59, 48; --f7-theme-color-shade: #ff1407; --f7-theme-color-tint: #ff6259; } .text-color-red { --f7-theme-color-text-color: #ff3b30; } .bg-color-red { --f7-theme-color-bg-color: #ff3b30; } .border-color-red { --f7-theme-color-border-color: #ff3b30; } .ripple-color-red, .ripple-red { --f7-theme-color-ripple-color: rgba(255, 59, 48, 0.3); } .color-green { --f7-theme-color: #4cd964; --f7-theme-color-rgb: 76, 217, 100; --f7-theme-color-shade: #2cd048; --f7-theme-color-tint: #6ee081; } .text-color-green { --f7-theme-color-text-color: #4cd964; } .bg-color-green { --f7-theme-color-bg-color: #4cd964; } .border-color-green { --f7-theme-color-border-color: #4cd964; } .ripple-color-green, .ripple-green { --f7-theme-color-ripple-color: rgba(76, 217, 100, 0.3); } .color-blue { --f7-theme-color: #2196f3; --f7-theme-color-rgb: 33, 150, 243; --f7-theme-color-shade: #0c82df; --f7-theme-color-tint: #48a8f5; } .text-color-blue { --f7-theme-color-text-color: #2196f3; } .bg-color-blue { --f7-theme-color-bg-color: #2196f3; } .border-color-blue { --f7-theme-color-border-color: #2196f3; } .ripple-color-blue, .ripple-blue { --f7-theme-color-ripple-color: rgba(33, 150, 243, 0.3); } .color-pink { --f7-theme-color: #ff2d55; --f7-theme-color-rgb: 255, 45, 85; --f7-theme-color-shade: #ff0434; --f7-theme-color-tint: #ff5676; } .text-color-pink { --f7-theme-color-text-color: #ff2d55; } .bg-color-pink { --f7-theme-color-bg-color: #ff2d55; } .border-color-pink { --f7-theme-color-border-color: #ff2d55; } .ripple-color-pink, .ripple-pink { --f7-theme-color-ripple-color: rgba(255, 45, 85, 0.3); } .color-yellow { --f7-theme-color: #ffcc00; --f7-theme-color-rgb: 255, 204, 0; --f7-theme-color-shade: #d6ab00; --f7-theme-color-tint: #ffd429; } .text-color-yellow { --f7-theme-color-text-color: #ffcc00; } .bg-color-yellow { --f7-theme-color-bg-color: #ffcc00; } .border-color-yellow { --f7-theme-color-border-color: #ffcc00; } .ripple-color-yellow, .ripple-yellow { --f7-theme-color-ripple-color: rgba(255, 204, 0, 0.3); } .color-orange { --f7-theme-color: #ff9500; --f7-theme-color-rgb: 255, 149, 0; --f7-theme-color-shade: #d67d00; --f7-theme-color-tint: #ffa629; } .text-color-orange { --f7-theme-color-text-color: #ff9500; } .bg-color-orange { --f7-theme-color-bg-color: #ff9500; } .border-color-orange { --f7-theme-color-border-color: #ff9500; } .ripple-color-orange, .ripple-orange { --f7-theme-color-ripple-color: rgba(255, 149, 0, 0.3); } .color-purple { --f7-theme-color: #9c27b0; --f7-theme-color-rgb: 156, 39, 176; --f7-theme-color-shade: #7e208f; --f7-theme-color-tint: #b92fd1; } .text-color-purple { --f7-theme-color-text-color: #9c27b0; } .bg-color-purple { --f7-theme-color-bg-color: #9c27b0; } .border-color-purple { --f7-theme-color-border-color: #9c27b0; } .ripple-color-purple, .ripple-purple { --f7-theme-color-ripple-color: rgba(156, 39, 176, 0.3); } .color-deeppurple { --f7-theme-color: #673ab7; --f7-theme-color-rgb: 103, 58, 183; --f7-theme-color-shade: #563098; --f7-theme-color-tint: #7c52c8; } .text-color-deeppurple { --f7-theme-color-text-color: #673ab7; } .bg-color-deeppurple { --f7-theme-color-bg-color: #673ab7; } .border-color-deeppurple { --f7-theme-color-border-color: #673ab7; } .ripple-color-deeppurple, .ripple-deeppurple { --f7-theme-color-ripple-color: rgba(103, 58, 183, 0.3); } .color-lightblue { --f7-theme-color: #5ac8fa; --f7-theme-color-rgb: 90, 200, 250; --f7-theme-color-shade: #32bbf9; --f7-theme-color-tint: #82d5fb; } .text-color-lightblue { --f7-theme-color-text-color: #5ac8fa; } .bg-color-lightblue { --f7-theme-color-bg-color: #5ac8fa; } .border-color-lightblue { --f7-theme-color-border-color: #5ac8fa; } .ripple-color-lightblue, .ripple-lightblue { --f7-theme-color-ripple-color: rgba(90, 200, 250, 0.3); } .color-teal { --f7-theme-color: #009688; --f7-theme-color-rgb: 0, 150, 136; --f7-theme-color-shade: #006d63; --f7-theme-color-tint: #00bfad; } .text-color-teal { --f7-theme-color-text-color: #009688; } .bg-color-teal { --f7-theme-color-bg-color: #009688; } .border-color-teal { --f7-theme-color-border-color: #009688; } .ripple-color-teal, .ripple-teal { --f7-theme-color-ripple-color: rgba(0, 150, 136, 0.3); } .color-lime { --f7-theme-color: #cddc39; --f7-theme-color-rgb: 205, 220, 57; --f7-theme-color-shade: #bac923; --f7-theme-color-tint: #d6e25c; } .text-color-lime { --f7-theme-color-text-color: #cddc39; } .bg-color-lime { --f7-theme-color-bg-color: #cddc39; } .border-color-lime { --f7-theme-color-border-color: #cddc39; } .ripple-color-lime, .ripple-lime { --f7-theme-color-ripple-color: rgba(205, 220, 57, 0.3); } .color-deeporange { --f7-theme-color: #ff6b22; --f7-theme-color-rgb: 255, 107, 34; --f7-theme-color-shade: #f85200; --f7-theme-color-tint: #ff864b; } .text-color-deeporange { --f7-theme-color-text-color: #ff6b22; } .bg-color-deeporange { --f7-theme-color-bg-color: #ff6b22; } .border-color-deeporange { --f7-theme-color-border-color: #ff6b22; } .ripple-color-deeporange, .ripple-deeporange { --f7-theme-color-ripple-color: rgba(255, 107, 34, 0.3); } .color-gray { --f7-theme-color: #8e8e93; --f7-theme-color-rgb: 142, 142, 147; --f7-theme-color-shade: #79797f; --f7-theme-color-tint: #a3a3a7; } .text-color-gray { --f7-theme-color-text-color: #8e8e93; } .bg-color-gray { --f7-theme-color-bg-color: #8e8e93; } .border-color-gray { --f7-theme-color-border-color: #8e8e93; } .ripple-color-gray, .ripple-gray { --f7-theme-color-ripple-color: rgba(142, 142, 147, 0.3); } .color-white { --f7-theme-color: #ffffff; --f7-theme-color-rgb: 255, 255, 255; --f7-theme-color-shade: #ebebeb; --f7-theme-color-tint: #ffffff; } .text-color-white { --f7-theme-color-text-color: #ffffff; } .bg-color-white { --f7-theme-color-bg-color: #ffffff; } .border-color-white { --f7-theme-color-border-color: #ffffff; } .ripple-color-white, .ripple-white { --f7-theme-color-ripple-color: rgba(255, 255, 255, 0.3); } .color-black { --f7-theme-color: #000000; --f7-theme-color-rgb: 0, 0, 0; --f7-theme-color-shade: #000000; --f7-theme-color-tint: #141414; } .text-color-black { --f7-theme-color-text-color: #000000; } .bg-color-black { --f7-theme-color-bg-color: #000000; } .border-color-black { --f7-theme-color-border-color: #000000; } .ripple-color-black, .ripple-black { --f7-theme-color-ripple-color: rgba(0, 0, 0, 0.3); } @font-face { font-family: 'framework7-core-icons'; src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAucABAAAAAAFdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAALgAAAABkAAAAciVvo20dERUYAAAmwAAAAIwAAACQAdwBXR1BPUwAAC1AAAAAuAAAANuAY7+xHU1VCAAAJ1AAAAXsAAANI9IT86E9TLzIAAAHcAAAASgAAAGBRKF+WY21hcAAAAnQAAACIAAABYt6F0cBjdnQgAAAC/AAAAAQAAAAEABEBRGdhc3AAAAmoAAAACAAAAAj//wADZ2x5ZgAAA4gAAAOZAAAITCn3I+5oZWFkAAABbAAAADAAAAA2FHn/62hoZWEAAAGcAAAAIAAAACQHggM3aG10eAAAAigAAABMAAABDCk9AApsb2NhAAADAAAAAIgAAACIN4I51G1heHAAAAG8AAAAHwAAACAAiQBLbmFtZQAAByQAAAFTAAAC1pgGDVZwb3N0AAAIeAAAAS4AAAH92CB3HXjaY2BkYGAA4uKM/yHx/DZfGbiZGEDgRu397TD6/89/vSxpTJ+BXA4GsDQAfeMOn3jaY2BkYGD6/K+XQY8l7f9PBgaWNAagCApwBgCRZgXAeNpjYGRgYHBmkGJgYQABJiBmZACJOTDogQQADRYA1QB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPabPjMUwNYwHwEoUGMQAQ7UMZAAAeNpj2M0gyAACqxgGNWAMAGIdID4A5OwD0rOA+BBI7P9PhuNAMSBmSYOK+wLxWSCWAGI3CGZKg/KBNBNIjTHEHKazED1MQD4AiKAPYnjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIB3gIAAioCPAJSAmQChAKUAqQC1gLsAv4DEAMiAzQDRANqA3wDlgOqA7wDzgP2BAwEJnja7VTPaxtHFH7fyNLGCFuWrF/tpZa82nVpcYhW0qZUrgWKezAtDcHuwZdYJeiUQ0yIe5N8LAGhHhyMRW6GHNqTZdOeKqu9KBc1oFMpPqlQh0JOPgXiVd/MaoOT/gclMLNv5pu3b7753pshQWEi2sc6+UijxUPQ1WJbm6AX2cOA/7TY9gke0qFPwn4Jt7UAXhXbkLgVtsKmFZ4Pf/dttYp158cwLI4Gbl3VeRS+JsfvsHfY/x4TlzAfo58IBdME90ncxAbfsBDFKEEUSQei8WwhZ2Tj0UDayPltM4SEbf6wViyuFR/fXV29u4ry1L3p6a3pLZSKa0tLa1+vSvjl9L0pCbocRr/C4k0iRJl0SMhIyzCNXCH7AeIwAfwVnIsHT06C8VRwGGoLMQzG54KdE4kOQy7n0Rm6eMLvwHscJaGZeTMwn5Yx4rGolkhLlswWpR1jR1tcXqlUHn6zoP20eePGZrmxY9Rj2kLlYaWy8tmiVt4slzcVLzKow+f1E81qHNLubG/rrRYKytCY+zlaaNAV3jWWkk4JDS3naVPv9/XmnznXjn1pCr/hjoxnIwHTbiKkO/2mvj62hNFL1uIj1oLfM7uwDKYfZUmlvFdh+MEn5zN3OvL8w9Az+IZSE567Ssg9otRzOdtMxrR7B3q9rv/M31rmzfU8U01o4+VMra4rHZ3GRFWcU1DmN2OyQ8LmjNqmmNPFTESfm4jMCFHqFXpe+9T53bnY24MPWfj29v7p2d6S/er0NexcSLf/aiYF4/fXRkvqZH3flQbXWUBPsxK+RIkCPElo19gbH+qnWzpjbOa/UJxpA30Y6u2nJaRi/nwqhr5joX9uWfuWpfbsIsm68rkzkLogOaLk8+fJrmvcvW7jc44j882Z1MwDJQ4MZTw+r304CGvj+tw+0Gs1XdVhQ1RxzkxmiXIznL+ZQBocy1Py2Dk+dmj0frXqtRLo6GhER9i/BNKbnPOQuQIlz86SXYwZezVVxX3OF0FTpBUtVJtN3Wv46tJE/uN0RUt0paY2a29N4u/+mdN1njSEdaFk82Kv8L00lPZKehvWszuRW78gqszbd0RWv8k3Q3/wABtstrdpfDc3RF8YNMmvhtTEkqLMp2cvVddg99Fg8Gh3t1aocavL78dYGAycPwZ4XLdrNbuuvm/Xj9ozlU+ZfVk3zlNcb6IhhzlVPz7JT1jMT9YGaxTOu9Uhuzys22HkcjuqEf0LOMqq8QAAAHjarZC9TgJBFIXP8GOihTFG+lsCYTfDhoRAZUJCQ2MstnazjDCB3cFhE0J8Fms7G2ufwtha+hzeGaawoLBgk5v59sy5M+cOgEu8QeDwtXEfWKCF18A1XOAzcB1S3AZuoCVeAjdxJb4Cn6FVu2anaJzz353vcizQxXPgGm7wEbiOB3wHbqArngI3QeI98BnrP5jAYIM9LDQWWKICceYcHV4TSPQxQo85xRoZ5uwquCwrM3ZnTE4v+AztdzExm73Vi2VF7bxDieyPepSus7kutKXZMrPrrNjoOTsfudm1Kuw4hMUKQ0R8tWPFpD2X2LLVZoXaGbsaRrmxKtK5KVk+6v1rmHqx8qvl+ZSfKua5CGOu/0c4+AesJb4OL4OpKaupsQtFSSxpTEeDsj6Iksi9xSmmTtlneV97H3EUFyb2qxsMqbJbbUqSsh9LKekEl/4CxNCFmAB42m2QB2/CMBCF30FbSBgJBcJof0333nsoColprEIcOWb8+ao1I4hIPcmS796973xGDvP4/QHhv9jXh5BDHjbqaKAJBy200UEXO9jFHg5wiCMc4wSnOMM5LnCJK1zjBre4wz0e8IgnPOMFr3jDOz7wSTnK0wZt0hYVqEgGmVSiMlWoShbZVKNtqlODmuRQi9rUoa6ZME/6octFUvNDNpYiciX/CtWsYizFYWCl2oD1lc4rnpRikmYlrfrfPTHVdzvTqSGVDLa8LjuRULzPfU9xXfEHImEzh7WA94RSYqiRhvQCLmZKIRFyPjCZ8JhJN2JTZabEUbyCB2ISWQEbMMVcKUZRsOaJJRsbS00vEivpLuZpfnm1iE7s7H/o1TJE3VFdGFO9OH+drv8BbS2SHgAAAAAAAf//AAJ42mNgZGBg4AFiGSBmAkJmBk0GRgYtBicgmwUsxgAADTQAzwB42nVSSVLCQBR9HSmJOIAhSkpJkEGwEOcZcVy4cO2SDSu1inJFuXDhUTyBJ/AcnsMjiO93TAKhUl1Jd7/3+v2hGwpABh5aUP3e4AUmUkQwHEIY1X9+7BGDvyOX0rMJZfwiDRuv6tPIGB2jawwwRXwDdzhEFmUOD3WuFjlXOTwUuSsijxssjPBlOFhGgQqf3cb8CLvKGEshl6GyjS7e8YEvfONHmWoNm4xRoG5dn3Jjng6xCnaRi2kiZ19xNaGIZ7bFOclD+D1mnuRwhrkYl9cVutifYALXy3/GworuYiPMdQezE4xkcMoOjXvVUNL30sQ9rlmhrd2r/LJaU6MqH/q2uUpSiH8HM2O8YPIqDlil3LLDvB1mldNrPwOLevG2wyhy4oK9qtI/S2102xF/xEg5ugsS4NN8N3V25QFPeMM5e1AnU6Kz+JT4l8pPYrjLucFYTfbG1tEs9ijwbOmKIlQqumW/PCLR2zjmWw8Qv+Y0z1hcuTpu5Q/+XTUsAHjaY2BkYGDgYpBjMGFgzEksyWPgYGABijD8/88AkmEszqxKhYp9YIADAMCOBtEAAHjaY2BgYGQAghsJmjlguvb+dhgNAEgzB6UAAAA=") format("woff"); font-weight: 400; font-style: normal; } @font-face { font-family: 'framework7-skeleton'; src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAYQAA0AAAAAEcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAF9AAAABkAAAAciVvoDU9TLzIAAAGcAAAASwAAAGBRtV1jY21hcAAAAfwAAAC8AAABamglddJjdnQgAAACuAAAAAQAAAAEABEBRGdhc3AAAAXsAAAACAAAAAj //wADZ2x5ZgAAA2wAAACUAAAJjHCzhiRoZWFkAAABMAAAAC4AAAA2ERr/HWhoZWEAAAFgAAAAGgAAACQC8ADFaG10eAAAAegAAAATAAAAtAMAABFsb2NhAAACvAAAAK4AAACuaNBmhG1heHAAAAF8AAAAHwAAACAAmgA5bmFtZQAABAAAAAFQAAACuLf6wytwb3N0AAAFUAAAAJkAAADOCKMIc3jaY2BkYGAA4lUx8ibx/DZfGbiZGEDgRu39AAT9/wAjA+MBIJeDASwNACBICpsAAHjaY2BkYGA88P8Agx6QAQSMYIQCWABQZgK3AAB42mNgZGBgCGPgYGBiAAEQycgAEnNg0AMJAAANJwDUAHjaY2BhZGCcwMDKwMDow5jGwMDgDqW/MkgytDAwMDGwcjLAACMDEghIc01haGBQYKhlPPD/AIMe4wEGB5gaxgNAHgNQjhEA6dgLvQB42mNkYBBkAAJGKB4KAAAOfQAVAHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMSgxWDNEMsQz1D7/z9QXIFBjUGHwRHIT/z////j/w/+3/9/6//N/zeg5iABRjYGuCAjE5BgQlcAdAILK5DBxs7BycXAzcPLxy8gKCQsIiomLiEpBVYjLSMrJ6+gqKSsoqqmrqGppa2jq6dvYGhkbGJqZs5gwWBpZW1ja2fv4Ojk7OLq5u7h6eXt4+vnHxAYFBwSyjDgAABJLiG7ABEBRAAAACoAKgAqADgARgBUAGIAcAB+AIwAmgCoALYAxADYAOYA9AECARABHgEsAToBSAFWAWQBcgGAAY4BnAGqAbgBxgHUAeIB8AH+AgwCGgIoAjYCRAJSAmACbgJ8AooCmAKmArQCwgLQAt4C8gMAAw4DHAMqAzgDRgNUA2IDcAN+A4wDmgOoA7YDxAPSA+AD7gP8BAoEGAQmBDQEQgRQBF4EbAR6BIgEnASqBLgExgAAeNpjYGIQZGBgmMkYysDMwM6gt5GRQd9mEzsLw1ujjWysd2w2MTMBmQwbmUHCrCDhTexsjH9sNjGCxI0FjQXVjQWVBTvK09IYQ/+tFmQ0BprGyMDw/wAjA+MBoJkMooKKgowMDkwM/xgYRuVwyjEhybFDZBXBKv4zQFVBVI6G36jcqNyo3GiZMSo3Kjes8hQAx51w5njapZC9agJBFIXP+EfSBMEXmEoU3GVcBNFWsLEJKbYKhEUnOrjryrggkgfIQ6RMnzZVHiBNijxM6pydHUiRFAEXLvebc8+duXcBXOEFAtXXw41ngQ6ePddwgXfPdYRCeW6gIx49N9EWb55b1L/oFI1Lnq5dV8kCXTx4rqGNV8913OLTcwNdcee5CSmePLeof2CGHHucYGGwxgYFJGdeos8cQWGICQbkGCkSrOjKGJbKgu6EVOoZ7zCuilm+P1mz3hSyt+zLSA0nAxmnycpkxsrFJrFpku3Nis57NpetGkcOYbHFGAEOzJqXao6SY0ebTTJ9zO12HBy2OtVFTvGX66c0d0LhsuVO2m0ScheJKeN/z1beESuRi+pPYJ7vinlu11pGoZJT+cdwVEdBFJSbn7djzLql1/iBlBsidLlcBrG2B8MHlRqGSil51nPfEi6AO3jaXc5ZM4IBAEbhp9RF1FhCRbmyVNYskSXG0CaEQvaf2j/LN112bt6Zc/HOETZiOJAJJmSc15ENmxARFTNpSlzCtBmz5iTNW7AoJR08LFmWlbNi1Zp1G/IKijZt2bZj156SfQcOHSk7dqLi1JlzF6ouXbl241ZNXUNTy522ew8edTx59qKrF3S9edf34dOXbz9+/f0DgycTFgAAAAAAAAH//wACeNpjYGBgZACCGwmaOWC69n4AjAYARC0G1wAAAA==") format("woff"); font-weight: 300, 400, 500, 600, 700; font-style: normal, italic; } html { direction: rtl; } html, body, .framework7-root { position: relative; height: 100%; width: 100%; overflow-x: hidden; } body { margin: 0; padding: 0; width: 100%; background: #fff; overflow: hidden; -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); } .theme-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); } 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 { 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 { display: none !important; } /* === Statusbar === */ :root { --f7-statusbar-height: 0px; --f7-statusbar-bg-color: var(--f7-bars-bg-color); } .device-ios { --f7-statusbar-height: var(--f7-safe-area-top, 20px); } .device-android { --f7-statusbar-height: var(--f7-safe-area-top, 24px); } .with-statusbar.ios:not(.device-ios):not(.device-android) { --f7-statusbar-height: 20px; } .with-statusbar.md:not(.device-ios):not(.device-android) { --f7-statusbar-height: 24px; } @supports not (top: env(safe-area-inset-top)) { .with-statusbar.device-ios { --f7-statusbar-height: 20px; } } @supports not (top: env(safe-area-inset-top)) { .with-statusbar.device-android { --f7-statusbar-height: 24px; } } .statusbar { position: absolute; left: 0; top: 0; width: 100%; z-index: 10000; box-sizing: border-box; display: block; height: var(--f7-statusbar-height); } .framework7-root { padding-top: var(--f7-statusbar-height); } .ios .statusbar { background: var(--f7-statusbar-bg-color, var(--f7-bars-bg-color)); } .md .statusbar { background: var(--f7-statusbar-bg-color, var(--f7-theme-color-shade)); } /* === Views === */ .views, .view { position: relative; height: 100%; z-index: 5000; overflow: hidden; box-sizing: border-box; } /* === Pages === */ :root { --f7-page-master-width: 320px; --f7-page-master-border-color: rgba(0, 0, 0, 0.1); --f7-page-master-border-width: 1px; } .ios { --f7-page-bg-color: #efeff4; --f7-page-transition-duration: 400ms; --f7-page-swipeback-transition-duration: 400ms; } .md { --f7-page-bg-color: #fff; --f7-page-transition-duration: 250ms; --f7-page-swipeback-transition-duration: 400ms; } .theme-dark { --f7-page-bg-color: #171717; --f7-page-master-border-color: rgba(255, 255, 255, 0.1); } .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: translate3d(0, 0, 0); background-color: var(--f7-page-bg-color); } .page.stacked { display: none; } .page-previous { pointer-events: none; } .page-content { will-change: scroll-position; overflow: auto; -webkit-overflow-scrolling: touch; box-sizing: border-box; height: 100%; position: relative; z-index: 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, .router-transition-forward .page-previous:not(.stacked), .router-transition-backward .page-previous:not(.stacked) { pointer-events: none; } .page-shadow-effect { position: absolute; top: 0; width: 16px; bottom: 0; z-index: -1; content: ''; opacity: 0; left: 100%; background: linear-gradient(to left, 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-previous .page-opacity-effect { opacity: 1; } .ios .page-previous:after { opacity: 1; } .ios .page-current .page-shadow-effect { opacity: 1; } .ios .router-transition-forward .page-next, .ios .router-transition-forward .page-current { will-change: transform; } .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; left: 100%; background: linear-gradient(to left, 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, .ios .router-transition-backward .page-current { will-change: transform; } .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; left: 100%; background: linear-gradient(to left, 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; } .ios .router-dynamic-navbar-inside .page-shadow-effect, .ios .router-dynamic-navbar-inside .page-opacity-effect { top: var(--f7-navbar-height); } .ios .router-dynamic-navbar-inside .page-next:before, .ios .router-dynamic-navbar-inside .page-current:after, .ios .router-dynamic-navbar-inside .page-current:before, .ios .router-dynamic-navbar-inside .page-previous:after { top: var(--f7-navbar-height); } @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-next { transform: translate3d(0, 56px, 0); opacity: 0; pointer-events: none; } .md .page-next.page-next-on-right { transform: translate3d(-100%, 0, 0); } .md .router-transition-forward .page-next { will-change: transform, opacity; animation: md-page-next-to-current var(--f7-page-transition-duration) forwards; } .md .router-transition-forward .page-current { animation: none; } .md .router-transition-backward .page-current { will-change: transform, opacity; animation: md-page-current-to-next var(--f7-page-transition-duration) forwards; } .md .router-transition-backward .page-previous { animation: none; } @keyframes md-page-next-to-current { from { transform: translate3d(0, 56px, 0); opacity: 0; } to { transform: translate3d(0, 0px, 0); opacity: 1; } } @keyframes md-page-current-to-next { from { transform: translate3d(0, 0, 0); opacity: 1; } to { transform: translate3d(0, 56px, 0); opacity: 0; } } .view:not(.view-master-detail) .page-master-stacked { display: none; } .view:not(.view-master-detail) .navbar-master-stacked { display: none; } .view-master-detail .page-master, .view-master-detail .navbar-master { width: var(--f7-page-master-width); left: auto; right: 0; --f7-safe-area-left: 0px; --f7-safe-area-outer-left: 0px; border-left: var(--f7-page-master-border-width) solid var(--f7-page-master-border-color); } .view-master-detail .page-master-detail, .view-master-detail .navbar-master-detail { width: calc(100% - var(--f7-page-master-width)); --f7-safe-area-right: 0px; --f7-safe-area-outer-right: 0px; right: var(--f7-page-master-width); } .view-master-detail .page-master { z-index: 1; 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; } /* === 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: var(--f7-link-highlight-black); } .theme-dark { --f7-link-highlight-color: var(--f7-link-highlight-white); } .link, .tab-link { display: inline-flex; align-items: center; align-content: center; justify-content: center; position: relative; box-sizing: border-box; transform: translate3d(0, 0, 0); z-index: 1; } .link i + span, .link i + i, .link span + i, .link span + span { margin-right: 4px; } .ios .link { transition: opacity 300ms; } .ios .link.active-state { opacity: 0.3; transition-duration: 0ms; } /* === Navbar === */ :root { /* --f7-navbar-bg-color: var(--f7-bars-bg-color); --f7-navbar-bg-image: var(--f7-bars-bg-image); --f7-navbar-border-color: var(--f7-bars-border-color); --f7-navbar-link-color: var(--f7-bars-link-color); --f7-navbar-text-color: var(--f7-bars-text-color); */ --f7-navbar-hide-show-transition-duration: 400ms; --f7-navbar-title-line-height: 1.2; } .ios { --f7-navbar-height: 44px; --f7-navbar-tablet-height: 44px; --f7-navbar-font-size: 17px; --f7-navbar-inner-padding-left: 8px; --f7-navbar-inner-padding-right: 8px; --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-text-color: #6d6d72; --f7-navbar-subtitle-font-size: 10px; --f7-navbar-subtitle-line-height: 1; --f7-navbar-subtitle-text-align: inherit; --f7-navbar-shadow-image: none; --f7-navbar-large-title-height: 52px; --f7-navbar-large-title-font-size: 34px; --f7-navbar-large-title-font-weight: 700; --f7-navbar-large-title-line-height: 1.2; --f7-navbar-large-title-letter-spacing: -0.03em; --f7-navbar-large-title-padding-left: 15px; --f7-navbar-large-title-padding-right: 15px; --f7-navbar-large-title-text-color: inherit; } .ios .theme-dark, .ios.theme-dark { --f7-navbar-subtitle-text-color: #8e8e93; } .md { --f7-navbar-height: 56px; --f7-navbar-tablet-height: 64px; --f7-navbar-font-size: 20px; --f7-navbar-inner-padding-left: 0px; --f7-navbar-inner-padding-right: 0px; --f7-navbar-title-font-weight: 500; --f7-navbar-title-margin-left: 16px; --f7-navbar-title-margin-right: 16px; --f7-navbar-title-text-align: left; --f7-navbar-subtitle-text-color: rgba(0, 0, 0, 0.85); --f7-navbar-subtitle-font-size: 14px; --f7-navbar-subtitle-line-height: 1.2; --f7-navbar-subtitle-text-align: inherit; --f7-navbar-shadow-image: var(--f7-bars-shadow-bottom-image); --f7-navbar-large-title-font-size: 34px; --f7-navbar-large-title-height: 56px; --f7-navbar-large-title-font-weight: 500; --f7-navbar-large-title-line-height: 1.2; --f7-navbar-large-title-letter-spacing: 0; --f7-navbar-large-title-padding-left: 16px; --f7-navbar-large-title-padding-right: 16px; --f7-navbar-large-title-text-color: inherit; } .md .theme-dark, .md.theme-dark { --f7-navbar-subtitle-text-color: rgba(255, 255, 255, 0.85); } .navbar { --f7-navbar-large-collapse-progress: 0; position: relative; left: 0; top: 0; width: 100%; z-index: 500; -webkit-backface-visibility: hidden; backface-visibility: hidden; box-sizing: border-box; margin: 0; transform: translate3d(0, 0, 0); height: var(--f7-navbar-height); background-image: var(--f7-navbar-bg-image, var(--f7-bars-bg-image)); background-color: var(--f7-navbar-bg-color, var(--f7-bars-bg-color, var(--f7-theme-color))); color: var(--f7-navbar-text-color, var(--f7-bars-text-color)); font-size: var(--f7-navbar-font-size); } .navbar .material-icons { width: 24px; } .navbar .f7-icons { width: 28px; } .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; line-height: var(--f7-navbar-height); height: var(--f7-navbar-height); } .navbar .title, .navbar .left, .navbar .right { position: relative; z-index: 10; } .navbar .title { text-align: center; 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); margin-right: var(--f7-navbar-title-margin-left); margin-left: 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: flex-start; align-items: center; transform: translate3d(0, 0, 0); } .navbar .right:first-child { position: absolute; height: 100%; } .navbar.no-hairline:after, .navbar.no-border:after { display: none !important; } .navbar.no-hairline .title-large:after, .navbar.no-border .title-large:after { display: none !important; } .navbar.no-shadow:before { display: none !important; } .navbar.navbar-hidden:before { opacity: 0 !important; } .navbar:after, .navbar:before { -webkit-backface-visibility: hidden; backface-visibility: hidden; } .navbar:after { content: ''; position: absolute; background-color: var(--f7-navbar-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))); } .navbar:before { content: ''; position: absolute; right: 0; width: 100%; top: 100%; bottom: auto; height: 8px; pointer-events: none; background: var(--f7-navbar-shadow-image, var(--f7-bars-shadow-bottom-image)); } .navbar:after { z-index: 1; } @media (min-width: 768px) { :root { --f7-navbar-height: var(--f7-navbar-tablet-height); } } .navbar-transitioning, .navbar-transitioning:before, .navbar-transitioning .title, .navbar-transitioning .title-large, .navbar-transitioning .title-large-inner, .navbar-transitioning .title-large-text, .navbar-transitioning .subnavbar { transition-duration: var(--f7-navbar-hide-show-transition-duration); } .navbar-page-transitioning { transition-duration: var(--f7-page-swipeback-transition-duration) !important; } .navbar-page-transitioning .title-large-text, .navbar-page-transitioning .title-large-inner { transition-duration: var(--f7-page-swipeback-transition-duration) !important; } .navbar-hidden { transform: translate3d(0, -100%, 0); } .navbar-large-hidden { --f7-navbar-large-collapse-progress: 1; } .navbar-inner { position: absolute; left: 0; top: 0; width: 100%; height: var(--f7-navbar-height); display: flex; align-items: center; box-sizing: border-box; padding: 0 calc(var(--f7-navbar-inner-padding-right) + var(--f7-safe-area-right)) 0 calc(var(--f7-navbar-inner-padding-right) + var(--f7-safe-area-left)); } .navbar-inner.stacked { display: none; } .views > .navbar, .view > .navbar, .page > .navbar { position: absolute; } .navbar-large:before { transform: translateY(calc((1 - var(--f7-navbar-large-collapse-progress)) * var(--f7-navbar-large-title-height))); } .navbar-inner-large > .title { opacity: calc(-1 + 2 * var(--f7-navbar-large-collapse-progress)); } .navbar-large-collapsed, .navbar-inner-large-collapsed { --f7-navbar-large-collapse-progress: 1; } .navbar .title-large { box-sizing: border-box; position: absolute; left: 0; right: 0; top: 100%; display: flex; align-items: center; white-space: nowrap; transform: translate3d(0px, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0); will-change: transform, opacity; transition-property: transform; overflow: hidden; background-image: var(--f7-navbar-bg-image, var(--f7-bars-bg-image)); background-color: var(--f7-navbar-bg-color, var(--f7-bars-bg-color, var(--f7-theme-color))); height: calc(var(--f7-navbar-large-title-height) + 1px); z-index: 5; margin-top: -1px; transform-origin: calc(100% - var(--f7-navbar-large-title-padding-left) - var(--f7-safe-area-left)) center; } .navbar .title-large:after { content: ''; position: absolute; background-color: var(--f7-navbar-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))); } .title-large-text, .title-large-inner .title { 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)); transform-origin: calc(100% - var(--f7-navbar-large-title-padding-left) - var(--f7-safe-area-left)) center; } .title-large-text, .title-large-inner { box-sizing: border-box; overflow: hidden; transform: translate3d(0, calc(var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0); transition-property: transform, opacity; width: 100%; } .navbar-no-title-large-transition .title-large, .navbar-no-title-large-transition .title-large-text, .navbar-no-title-large-transition .title-large-inner { transition-duration: 0ms; } .navbar ~ * .page:not(.no-navbar) .page-content, .navbar ~ .page:not(.no-navbar) .page-content, .navbar ~ .page-content, .navbar ~ :not(.page) .page-content { padding-top: var(--f7-navbar-height); } .navbar ~ * .page:not(.no-navbar).page-with-navbar-large .page-content, .navbar ~ .page:not(.no-navbar).page-with-navbar-large .page-content, .page-with-navbar-large .navbar ~ .page-content, .page-with-navbar-large .navbar ~ * .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-navbar-large-title-height)); } .ios { --f7-navbarLeftTextOffset: calc(4px + 12px + var(--f7-navbar-inner-padding-left)); --f7-navbarTitleLargeOffset: var(--f7-navbar-large-title-padding-left); } .ios .navbar a.icon-only { width: 44px; margin: 0; justify-content: center; } .ios .navbar .left a + a, .ios .navbar .right a + a { margin-right: 15px; } .ios .navbar b { font-weight: 600; } .ios .navbar .left { margin-left: 10px; } .ios .navbar .right { margin-right: 10px; } .ios .navbar .right:first-child { left: calc(8px + var(--f7-safe-area-left)); } .ios .navbar-inner { justify-content: space-between; } .ios .navbar-inner-left-title { justify-content: flex-start; } .ios .navbar-inner-left-title .right { margin-right: auto; } .ios .navbar-inner-left-title .title { text-align: left; margin-left: 10px; } .ios .view-master-detail .navbar-previous:not(.navbar-master), .ios .view:not(.view-master-detail) .navbar-previous { pointer-events: none; } .ios .view-master-detail .navbar-previous:not(.navbar-master) .title-large, .ios .view:not(.view-master-detail) .navbar-previous .title-large { transform: translateY(-100%); opacity: 0; transition: 0ms; } .ios .view-master-detail .navbar-previous:not(.navbar-master) .title-large .title-large-text, .ios .view:not(.view-master-detail) .navbar-previous .title-large .title-large-text { transform: scale(0.5); transition: 0ms; } .ios .view-master-detail .navbar-previous:not(.navbar-master) .title-large .title-large-inner, .ios .view:not(.view-master-detail) .navbar-previous .title-large .title-large-inner { transform: translateX(-100%); opacity: 0; transition: 0ms; } .ios .view-master-detail .navbar-previous:not(.navbar-master) .left, .ios .view:not(.view-master-detail) .navbar-previous .left, .ios .view-master-detail .navbar-previous:not(.navbar-master) .right, .ios .view:not(.view-master-detail) .navbar-previous .right, .ios .view-master-detail .navbar-previous:not(.navbar-master) > .title, .ios .view:not(.view-master-detail) .navbar-previous > .title, .ios .view-master-detail .navbar-previous:not(.navbar-master) .subnavbar, .ios .view:not(.view-master-detail) .navbar-previous .subnavbar, .ios .view-master-detail .navbar-previous:not(.navbar-master) .fading, .ios .view:not(.view-master-detail) .navbar-previous .fading { opacity: 0; } .ios .view-master-detail .navbar-previous:not(.navbar-master) .sliding, .ios .view:not(.view-master-detail) .navbar-previous .sliding { opacity: 0; } .ios .view-master-detail .navbar-previous:not(.navbar-master) .subnavbar.sliding, .ios .view:not(.view-master-detail) .navbar-previous .subnavbar.sliding, .ios .view-master-detail .navbar-previous:not(.navbar-master).sliding .subnavbar, .ios .view:not(.view-master-detail) .navbar-previous.sliding .subnavbar { opacity: 1; transform: translate3d(-100%, 0, 0); } .ios .navbar-next { pointer-events: none; } .ios .navbar-next .title-large { transform: translateX(100%); transition: 0ms; } .ios .navbar-next .title-large .title-large-text, .ios .navbar-next .title-large .title-large-inner { transition: 0ms; } .ios .navbar-next .left, .ios .navbar-next .right, .ios .navbar-next > .title, .ios .navbar-next .subnavbar, .ios .navbar-next .fading { opacity: 0; } .ios .navbar-next .sliding { opacity: 0; } .ios .navbar-next.sliding .left, .ios .navbar-next.sliding .right, .ios .navbar-next.sliding > .title, .ios .navbar-next.sliding .subnavbar { opacity: 0; } .ios .navbar-next .subnavbar.sliding, .ios .navbar-next.sliding .subnavbar { opacity: 1; transform: translate3d(100%, 0, 0); } .ios .router-dynamic-navbar-inside .navbar-next .title-large, .ios .router-dynamic-navbar-inside .navbar-next .title-large-text, .ios .router-dynamic-navbar-inside .navbar-next .title-large-inner { transform: none; } .ios .router-dynamic-navbar-inside .navbar-previous .title-large { opacity: 1; transform: translate3d(0px, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0); } .ios .router-dynamic-navbar-inside .navbar-previous .title-large-text, .ios .router-dynamic-navbar-inside .navbar-previous .title-large-inner { transform: translate3d(0, calc(var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0); } .ios .router-transition .navbar { transition-duration: var(--f7-page-transition-duration); } .ios .router-transition .title-large { transition: 0ms; } .ios .router-transition .navbar-current .left, .ios .router-transition .navbar-current > .title, .ios .router-transition .navbar-current .right, .ios .router-transition .navbar-current .subnavbar { animation: ios-navbar-element-fade-out var(--f7-page-transition-duration) forwards; } .ios .router-transition .navbar-current .sliding, .ios .router-transition .navbar-current .left.sliding .icon + span, .ios .router-transition .navbar-current.sliding .left, .ios .router-transition .navbar-current.sliding .left .icon + span, .ios .router-transition .navbar-current.sliding > .title, .ios .router-transition .navbar-current.sliding .right { transition-duration: var(--f7-page-transition-duration); opacity: 0 !important; animation: none; } .ios .router-transition .navbar-current.sliding .subnavbar, .ios .router-transition .navbar-current .sliding.subnavbar { transition-duration: var(--f7-page-transition-duration); animation: none; opacity: 1; } .ios .router-transition-forward .navbar-next .left, .ios .router-transition-backward .navbar-previous .left, .ios .router-transition-forward .navbar-next > .title, .ios .router-transition-backward .navbar-previous > .title, .ios .router-transition-forward .navbar-next .right, .ios .router-transition-backward .navbar-previous .right, .ios .router-transition-forward .navbar-next .subnavbar, .ios .router-transition-backward .navbar-previous .subnavbar { animation: ios-navbar-element-fade-in var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-next .sliding, .ios .router-transition-backward .navbar-previous .sliding, .ios .router-transition-forward .navbar-next .left.sliding .icon + span, .ios .router-transition-backward .navbar-previous .left.sliding .icon + span, .ios .router-transition-forward .navbar-next.sliding .left, .ios .router-transition-backward .navbar-previous.sliding .left, .ios .router-transition-forward .navbar-next.sliding .left .icon + span, .ios .router-transition-backward .navbar-previous.sliding .left .icon + span, .ios .router-transition-forward .navbar-next.sliding > .title, .ios .router-transition-backward .navbar-previous.sliding > .title, .ios .router-transition-forward .navbar-next.sliding .right, .ios .router-transition-backward .navbar-previous.sliding .right, .ios .router-transition-forward .navbar-next.sliding .subnavbar, .ios .router-transition-backward .navbar-previous.sliding .subnavbar { transition-duration: var(--f7-page-transition-duration); animation: none; transform: translate3d(0, 0, 0) !important; opacity: 1 !important; } .ios .router-transition-forward .navbar-current.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large { overflow: visible; } .ios .router-transition-forward .navbar-current.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large .title-large-text { animation: ios-navbar-title-large-text-slide-up var(--f7-page-transition-duration) forwards, ios-navbar-title-large-text-fade-out var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-current.router-navbar-transition-from-large:not(.router-navbar-transition-to-large) .title-large { animation: ios-navbar-title-large-slide-up var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-current.router-navbar-transition-from-large:not(.router-navbar-transition-to-large) .title-large .title-large-text { animation: ios-navbar-title-large-text-fade-out var(--f7-page-transition-duration) forwards, ios-navbar-title-large-text-scale-out var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-current.router-navbar-transition-from-large .title-large-inner { animation: ios-navbar-title-large-inner-current-to-previous var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward:not(.router-dynamic-navbar-inside) .navbar-next.router-navbar-transition-from-large .left .back span { animation: ios-navbar-back-text-next-to-current var(--f7-page-transition-duration) forwards; transition: none; transform-origin: right center; } .ios .router-transition-forward .navbar-next.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large { overflow: visible; } .ios .router-transition-forward .navbar-next.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large .title-large-text, .ios .router-transition-forward .navbar-next.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large .title-large-inner { animation: ios-navbar-title-large-text-slide-left var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-next.router-navbar-transition-to-large:not(.router-navbar-transition-from-large) .title-large { animation: ios-navbar-title-large-slide-down var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-next.router-navbar-transition-to-large:not(.router-navbar-transition-from-large) .title-large .title-large-text, .ios .router-transition-forward .navbar-next.router-navbar-transition-to-large:not(.router-navbar-transition-from-large) .title-large .title-large-inner { animation: ios-navbar-title-large-text-slide-left-top var(--f7-page-transition-duration) forwards; } .ios .router-transition-forward .navbar-next.navbar-inner-large:not(.navbar-inner-large-collapsed) > .title, .ios .router-transition-forward .navbar-current.navbar-inner-large:not(.navbar-inner-large-collapsed) > .title { animation: none; opacity: 0 !important; transition-duration: 0; } .ios .router-transition-forward.router-dynamic-navbar-inside .navbar-next .title-large, .ios .router-transition-forward.router-dynamic-navbar-inside .navbar-current .title-large, .ios .router-transition-forward.router-dynamic-navbar-inside .navbar-next .title-large-text, .ios .router-transition-forward.router-dynamic-navbar-inside .navbar-current .title-large-text, .ios .router-transition-forward.router-dynamic-navbar-inside .navbar-next .title-large-inner, .ios .router-transition-forward.router-dynamic-navbar-inside .navbar-current .title-large-inner { animation: none !important; } .ios .router-transition-backward:not(.router-dynamic-navbar-inside) .navbar-current.router-navbar-transition-to-large .left .back span { animation: ios-navbar-back-text-current-to-previous var(--f7-page-transition-duration) forwards; transition: none; transform-origin: right center; } .ios .router-transition-backward .navbar-current.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large { overflow: visible; transform: translateX(100%); } .ios .router-transition-backward .navbar-current.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large .title-large-text, .ios .router-transition-backward .navbar-current.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large .title-large-inner { animation: ios-navbar-title-large-text-slide-right var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-current.router-navbar-transition-from-large:not(.router-navbar-transition-to-large) .title-large { animation: ios-navbar-title-large-slide-up var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-current.router-navbar-transition-from-large:not(.router-navbar-transition-to-large) .title-large .title-large-text, .ios .router-transition-backward .navbar-current.router-navbar-transition-from-large:not(.router-navbar-transition-to-large) .title-large .title-large-inner { animation: ios-navbar-title-large-text-slide-right-bottom var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-current.router-navbar-transition-to-large:not(.router-navbar-transition-from-large) .title-large { opacity: 0; } .ios .router-transition-backward .navbar-previous.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large { overflow: visible; opacity: 1; transform: translateY(0); } .ios .router-transition-backward .navbar-previous.router-navbar-transition-from-large.router-navbar-transition-to-large .title-large .title-large-text { animation: ios-navbar-title-large-text-slide-down var(--f7-page-transition-duration) forwards, ios-navbar-title-large-text-fade-in var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-previous.router-navbar-transition-to-large:not(.router-navbar-transition-from-large) .title-large { opacity: 1; animation: ios-navbar-title-large-slide-down var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-previous.router-navbar-transition-to-large:not(.router-navbar-transition-from-large) .title-large .title-large-text { animation: ios-navbar-title-large-text-scale-in var(--f7-page-transition-duration) forwards, ios-navbar-title-large-text-fade-in var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-previous.router-navbar-transition-to-large .title-large-inner { animation: ios-navbar-title-large-inner-previous-to-current var(--f7-page-transition-duration) forwards; } .ios .router-transition-backward .navbar-current.navbar-inner-large:not(.navbar-inner-large-collapsed) > .title, .ios .router-transition-backward .navbar-previous.navbar-inner-large:not(.navbar-inner-large-collapsed) > .title { animation: none; opacity: 0 !important; transition-duration: 0; } .ios .router-transition-backward.router-dynamic-navbar-inside .navbar-previous .title-large, .ios .router-transition-backward.router-dynamic-navbar-inside .navbar-current .title-large, .ios .router-transition-backward.router-dynamic-navbar-inside .navbar-previous .title-large-text, .ios .router-transition-backward.router-dynamic-navbar-inside .navbar-current .title-large-text, .ios .router-transition-backward.router-dynamic-navbar-inside .navbar-previous .title-large-inner, .ios .router-transition-backward.router-dynamic-navbar-inside .navbar-current .title-large-inner { animation: none !important; } .view-master-detail .navbar-master.navbar-previous { pointer-events: auto; } .view-master-detail .navbar-master.navbar-previous .left, .view-master-detail .navbar-master.navbar-previous:not(.navbar-inner-large) .title, .view-master-detail .navbar-master.navbar-previous .right, .view-master-detail .navbar-master.navbar-previous .subnavbar { opacity: 1; } .ios .view-master-detail.router-transition .navbar-master .left, .ios .view-master-detail.router-transition .navbar-master .left .icon + span, .ios .view-master-detail.router-transition .navbar-master:not(.navbar-inner-large) .title, .ios .view-master-detail.router-transition .navbar-master .right, .ios .view-master-detail.router-transition .navbar-master .subnavbar, .ios .view-master-detail.router-transition .navbar-master .sliding, .ios .view-master-detail.router-transition .navbar-master .fading { opacity: 1 !important; transition-duration: 0ms; transform: none !important; animation: none !important; } .ios .view-master-detail.router-transition .navbar-master.navbar-inner-large .title { opacity: calc(-1 + 2 * var(--f7-navbar-large-collapse-progress)) !important; transition-duration: 0ms; transform: none !important; animation: none !important; } .ios .view-master-detail.router-transition .navbar-master.navbar-inner-large .title-large, .ios .view-master-detail.router-transition .navbar-master.navbar-inner-large .title-large-text, .ios .view-master-detail.router-transition .navbar-master.navbar-inner-large .title-large-inner { transition-duration: 0ms; animation: none !important; } @keyframes ios-navbar-element-fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes ios-navbar-element-fade-out { from { opacity: 1; } to { opacity: 0; } } @keyframes ios-navbar-title-large-slide-up { 0% { transform: translateY(0%); } 100% { transform: translateY(calc(-1 * var(--f7-navbar-large-title-height))); } } @keyframes ios-navbar-title-large-slide-down { 0% { transform: translateY(calc(-1 * var(--f7-navbar-large-title-height))); } 100% { transform: translateY(0%); } } @keyframes ios-navbar-title-large-text-slide-up { 0% { transform: translateX(0px) translateY(0%) scale(1); } 100% { transform: translateX(calc(var(--f7-navbarLeftTextOffset) - var(--f7-navbarTitleLargeOffset))) translateY(calc(-1 * (var(--f7-navbar-height) + var(--f7-navbar-large-title-height)) / 2)) scale(0.5); } } @keyframes ios-navbar-title-large-text-slide-down { 0% { transform: translateX(calc(var(--f7-navbarLeftTextOffset) - var(--f7-navbarTitleLargeOffset))) translateY(calc(-1 * (var(--f7-navbar-height) + var(--f7-navbar-large-title-height)) / 2)) scale(0.5); } 100% { transform: translateX(0px) translateY(0%) scale(1); } } @keyframes ios-navbar-title-large-text-slide-left { 0% { transform: translateX(-200%) scale(1); } 100% { transform: translateX(-100%) scale(1); } } @keyframes ios-navbar-title-large-text-slide-right { 0% { transform: translateX(-100%) scale(1); } 100% { transform: translateX(-200%) scale(1); } } @keyframes ios-navbar-title-large-text-slide-left-top { 0% { transform: translateX(-100%) translateY(var(--f7-navbar-large-title-height)) scale(1); } 100% { transform: translateX(0%) translateY(0%) scale(1); } } @keyframes ios-navbar-title-large-text-slide-right-bottom { 0% { transform: translateX(0%) translateY(0%) scale(1); } 100% { transform: translateX(-100%) translateY(var(--f7-navbar-large-title-height)) scale(1); } } @keyframes ios-navbar-title-large-text-fade-out { 0% { opacity: 1; } 80% { opacity: 0; } 100% { opacity: 0; } } @keyframes ios-navbar-title-large-text-fade-in { 0% { opacity: 0; } 20% { opacity: 0; } 100% { opacity: 1; } } @keyframes ios-navbar-title-large-text-scale-out { 0% { transform: translateY(0%) scale(1); } 100% { transform: translateY(0%) scale(0.5); } } @keyframes ios-navbar-title-large-text-scale-in { 0% { transform: translateY(0%) scale(0.5); } 100% { transform: translateY(0%) scale(1); } } @keyframes ios-navbar-back-text-current-to-previous { 0% { opacity: 1; transform: translateY(0px) translateX(0px) scale(1); } 80% { opacity: 0; } 100% { opacity: 0; transform: translateX(calc(var(--f7-navbarTitleLargeOffset) - var(--f7-navbarLeftTextOffset))) translateY(calc((var(--f7-navbar-height) + var(--f7-navbar-large-title-height)) / 2)) scale(2); } } @keyframes ios-navbar-back-text-next-to-current { 0% { opacity: 0; transform: translateX(calc(var(--f7-navbarTitleLargeOffset) - var(--f7-navbarLeftTextOffset))) translateY(calc((var(--f7-navbar-height) + var(--f7-navbar-large-title-height)) / 2)) scale(2); } 20% { opacity: 0; } 100% { opacity: 1; transform: translateX(0px) translateY(0px) scale(1); } } @keyframes ios-navbar-title-large-inner-current-to-previous { 0% { transform: translateX(0%); opacity: 1; } 100% { transform: translateX(100%); opacity: 0; } } @keyframes ios-navbar-title-large-inner-previous-to-current { 0% { transform: translateX(100%); opacity: 0; } 100% { transform: translateX(0%); opacity: 1; } } .md .navbar a.link { padding: 0 16px; min-width: 48px; } .md .navbar a.link:before { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .navbar a.link.active-state:before { opacity: 1; transition-duration: 150ms; } .md .navbar a.icon-only { min-width: 0; flex-shrink: 0; width: 56px; } .md .navbar .right { margin-right: auto; } .md .navbar .right:first-child { left: var(--f7-safe-area-left); } .md .navbar-inner { justify-content: flex-start; overflow: hidden; } .md .navbar-inner-large:not(.navbar-inner-large-collapsed) { overflow: visible; } .md .page.page-with-subnavbar .navbar-inner { overflow: visible; } .md .navbar-inner-centered-title { justify-content: space-between; } .md .navbar-inner-centered-title .right { margin-right: 0; } .md .navbar-inner-centered-title .title { text-align: center; } /* === Toolbar === */ :root { /* --f7-toolbar-bg-color: var(--f7-bars-bg-color); --f7-toolbar-bg-image: var(--f7-bars-bg-image); --f7-toolbar-border-color: var(--f7-bars-border-color); --f7-toolbar-link-color: var(--f7-bars-link-color); --f7-toolbar-text-color: var(--f7-bars-text-color); */ --f7-toolbar-hide-show-transition-duration: 400ms; } .ios { --f7-toolbar-height: 44px; --f7-toolbar-font-size: 17px; --f7-tabbar-labels-height: 50px; --f7-tabbar-labels-tablet-height: 56px; --f7-tabbar-link-inactive-color: #929292; /* --f7-tabbar-link-active-color: var(--f7-theme-color); */ --f7-toolbar-top-shadow-image: none; --f7-toolbar-bottom-shadow-image: none; --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: 10px; --f7-tabbar-label-tablet-font-size: 14px; --f7-tabbar-label-text-transform: none; --f7-tabbar-label-font-weight: 400; --f7-tabbar-label-letter-spacing: 0.01; } .md { --f7-toolbar-height: 48px; --f7-toolbar-font-size: 14px; --f7-tabbar-labels-height: 56px; --f7-tabbar-labels-tablet-height: 56px; --f7-tabbar-link-inactive-color: rgba(0, 0, 0, 0.54); /* --f7-tabbar-link-active-color: var(--f7-theme-color); --f7-tabbar-link-active-border-color: var(--f7-theme-color); */ --f7-toolbar-top-shadow-image: var(--f7-bars-shadow-bottom-image); --f7-toolbar-bottom-shadow-image: var(--f7-bars-shadow-top-image); --f7-tabbar-icon-size: 24px; --f7-tabbar-link-text-transform: uppercase; --f7-tabbar-link-font-weight: 500; --f7-tabbar-link-letter-spacing: 0.03em; --f7-tabbar-label-font-size: 14px; --f7-tabbar-label-tablet-font-size: 14px; --f7-tabbar-label-text-transform: none; --f7-tabbar-label-font-weight: 400; --f7-tabbar-label-letter-spacing: 0; } .md .theme-dark, .md.theme-dark { --f7-tabbar-link-inactive-color: rgba(255, 255, 255, 0.54); } .toolbar { width: 100%; position: relative; margin: 0; transform: translate3d(0, 0, 0); -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 500; box-sizing: border-box; left: 0; height: var(--f7-toolbar-height); background-image: var(--f7-toolbar-bg-image, var(--f7-bars-bg-image)); background-color: var(--f7-toolbar-bg-color, var(--f7-bars-bg-color, var(--f7-theme-color))); 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 a.link { display: flex; line-height: var(--f7-toolbar-height); height: var(--f7-toolbar-height); } .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-top .tab-link-highlight, .ios .toolbar-top-ios .tab-link-highlight, .md .toolbar-top-md .tab-link-highlight { bottom: 0; } .toolbar-top.no-hairline:after, .ios .toolbar-top-ios.no-hairline:after, .md .toolbar-top-md.no-hairline:after, .toolbar-top.no-border:after, .ios .toolbar-top-ios.no-border:after, .md .toolbar-top-md.no-border:after { display: none !important; } .toolbar-top.no-shadow:before, .ios .toolbar-top-ios.no-shadow:before, .md .toolbar-top-md.no-shadow:before, .toolbar-top.toolbar-hidden:before, .ios .toolbar-top-ios.toolbar-hidden:before, .md .toolbar-top-md.toolbar-hidden:before { display: none !important; } .toolbar-top:after, .ios .toolbar-top-ios:after, .md .toolbar-top-md:after, .toolbar-top:before, .ios .toolbar-top-ios:before, .md .toolbar-top-md:before { -webkit-backface-visibility: hidden; backface-visibility: hidden; } .toolbar-top:after, .ios .toolbar-top-ios:after, .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))); } .toolbar-top:before, .ios .toolbar-top-ios:before, .md .toolbar-top-md:before { content: ''; position: absolute; right: 0; width: 100%; top: 100%; bottom: auto; height: 8px; pointer-events: none; background: var(--f7-toolbar-top-shadow-image, var(--f7-bars-shadow-bottom-image)); } .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 .tab-link-highlight, .ios .toolbar-bottom-ios .tab-link-highlight, .md .toolbar-bottom-md .tab-link-highlight { top: 0; } .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-bottom.no-hairline:before, .ios .toolbar-bottom-ios.no-hairline:before, .md .toolbar-bottom-md.no-hairline:before, .toolbar-bottom.no-border:before, .ios .toolbar-bottom-ios.no-border:before, .md .toolbar-bottom-md.no-border:before { display: none !important; } .toolbar-bottom.no-shadow:after, .ios .toolbar-bottom-ios.no-shadow:after, .md .toolbar-bottom-md.no-shadow:after, .toolbar-bottom.toolbar-hidden:after, .ios .toolbar-bottom-ios.toolbar-hidden:after, .md .toolbar-bottom-md.toolbar-hidden:after { display: none !important; } .toolbar-bottom:before, .ios .toolbar-bottom-ios:before, .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))); } .toolbar-bottom:after, .ios .toolbar-bottom-ios:after, .md .toolbar-bottom-md:after { content: ''; position: absolute; right: 0; width: 100%; bottom: 100%; height: 8px; top: auto; pointer-events: none; background: var(--f7-toolbar-bottom-shadow-image, var(--f7-bars-shadow-top-image)); } .toolbar-inner { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; justify-content: space-between; box-sizing: border-box; align-items: center; align-content: center; overflow: hidden; } .views > .tabbar, .views > .tabbar-labels { z-index: 5001; } .tabbar a, .tabbar-labels a { color: var(--f7-tabbar-link-inactive-color); } .tabbar a.link, .tabbar-labels a.link { line-height: 1.4; } .tabbar a.tab-link, .tabbar-labels a.tab-link, .tabbar a.link, .tabbar-labels a.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-labels .tab-link-active { color: var(--f7-tabbar-link-active-color, var(--f7-theme-color)); } .tabbar i.icon, .tabbar-labels i.icon { font-size: var(--f7-tabbar-icon-size); height: var(--f7-tabbar-icon-size); line-height: var(--f7-tabbar-icon-size); } .tabbar-labels { --f7-toolbar-height: var(--f7-tabbar-labels-height); } .tabbar-labels a.tab-link, .tabbar-labels a.link { height: 100%; justify-content: space-between; align-items: center; } .tabbar-labels .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) { :root { --f7-tabbar-labels-height: var(--f7-tabbar-labels-tablet-height); --f7-tabbar-label-font-size: var(--f7-tabbar-label-tablet-font-size); } } .tabbar-scrollable .toolbar-inner { will-change: scroll-position; overflow: auto; -webkit-overflow-scrolling: touch; } .tabbar-scrollable .toolbar-inner::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; -webkit-appearance: none; opacity: 0 !important; } .tabbar-scrollable a.tab-link, .tabbar-scrollable a.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.toolbar-hidden, .ios .toolbar-bottom-ios.toolbar-hidden, .md .toolbar-bottom-md.toolbar-hidden { transform: translate3d(0, 100%, 0); } .toolbar-bottom ~ .page-content, .ios .toolbar-bottom-ios ~ .page-content, .md .toolbar-bottom-md ~ .page-content, .toolbar-bottom ~ * .page-content, .ios .toolbar-bottom-ios ~ * .page-content, .md .toolbar-bottom-md ~ * .page-content { padding-bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom)); } .toolbar-bottom.tabbar-labels ~ .page-content, .ios .toolbar-bottom-ios.tabbar-labels ~ .page-content, .md .toolbar-bottom-md.tabbar-labels ~ .page-content, .toolbar-bottom.tabbar-labels ~ * .page-content, .ios .toolbar-bottom-ios.tabbar-labels ~ * .page-content, .md .toolbar-bottom-md.tabbar-labels ~ * .page-content { padding-bottom: calc(var(--f7-tabbar-labels-height) + var(--f7-safe-area-bottom)); } .toolbar-top.toolbar-hidden, .ios .toolbar-top-ios.toolbar-hidden, .md .toolbar-top-md.toolbar-hidden { transform: translate3d(0, -100%, 0); } .toolbar-top ~ .page-content, .ios .toolbar-top-ios ~ .page-content, .md .toolbar-top-md ~ .page-content, .toolbar-top ~ * .page-content, .ios .toolbar-top-ios ~ * .page-content, .md .toolbar-top-md ~ * .page-content { padding-top: var(--f7-toolbar-height); } .toolbar-top.tabbar-labels ~ .page-content, .ios .toolbar-top-ios.tabbar-labels ~ .page-content, .md .toolbar-top-md.tabbar-labels ~ .page-content, .toolbar-top.tabbar-labels ~ * .page-content, .ios .toolbar-top-ios.tabbar-labels ~ * .page-content, .md .toolbar-top-md.tabbar-labels ~ * .page-content { padding-top: var(--f7-tabbar-labels-height); } .navbar ~ .toolbar-top, .ios .navbar ~ .toolbar-top-ios, .md .navbar ~ .toolbar-top-md, .navbar ~ * .toolbar-top, .ios .navbar ~ * .toolbar-top-ios, .md .navbar ~ * .toolbar-top-md, .navbar ~ .page:not(.no-navbar) .toolbar-top, .ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios, .md .navbar ~ .page:not(.no-navbar) .toolbar-top-md { top: var(--f7-navbar-height); } .navbar ~ .toolbar-top ~ .page-content, .ios .navbar ~ .toolbar-top-ios ~ .page-content, .md .navbar ~ .toolbar-top-md ~ .page-content, .navbar ~ * .toolbar-top ~ .page-content, .ios .navbar ~ * .toolbar-top-ios ~ .page-content, .md .navbar ~ * .toolbar-top-md ~ .page-content, .navbar ~ .page:not(.no-navbar) .toolbar-top ~ .page-content, .ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios ~ .page-content, .md .navbar ~ .page:not(.no-navbar) .toolbar-top-md ~ .page-content, .navbar ~ .toolbar-top ~ * .page-content, .ios .navbar ~ .toolbar-top-ios ~ * .page-content, .md .navbar ~ .toolbar-top-md ~ * .page-content, .navbar ~ * .toolbar-top ~ * .page-content, .ios .navbar ~ * .toolbar-top-ios ~ * .page-content, .md .navbar ~ * .toolbar-top-md ~ * .page-content, .navbar ~ .page:not(.no-navbar) .toolbar-top ~ * .page-content, .ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios ~ * .page-content, .md .navbar ~ .page:not(.no-navbar) .toolbar-top-md ~ * .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-toolbar-height)); } .navbar ~ .toolbar-top.tabbar-labels ~ .page-content, .ios .navbar ~ .toolbar-top-ios.tabbar-labels ~ .page-content, .md .navbar ~ .toolbar-top-md.tabbar-labels ~ .page-content, .navbar ~ * .toolbar-top.tabbar-labels ~ .page-content, .ios .navbar ~ * .toolbar-top-ios.tabbar-labels ~ .page-content, .md .navbar ~ * .toolbar-top-md.tabbar-labels ~ .page-content, .navbar ~ .page:not(.no-navbar) .toolbar-top.tabbar-labels ~ .page-content, .ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios.tabbar-labels ~ .page-content, .md .navbar ~ .page:not(.no-navbar) .toolbar-top-md.tabbar-labels ~ .page-content, .navbar ~ .toolbar-top.tabbar-labels ~ * .page-content, .ios .navbar ~ .toolbar-top-ios.tabbar-labels ~ * .page-content, .md .navbar ~ .toolbar-top-md.tabbar-labels ~ * .page-content, .navbar ~ * .toolbar-top.tabbar-labels ~ * .page-content, .ios .navbar ~ * .toolbar-top-ios.tabbar-labels ~ * .page-content, .md .navbar ~ * .toolbar-top-md.tabbar-labels ~ * .page-content, .navbar ~ .page:not(.no-navbar) .toolbar-top.tabbar-labels ~ * .page-content, .ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios.tabbar-labels ~ * .page-content, .md .navbar ~ .page:not(.no-navbar) .toolbar-top-md.tabbar-labels ~ * .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-tabbar-labels-height)); } .navbar ~ .toolbar-top.toolbar-hidden, .ios .navbar ~ .toolbar-top-ios.toolbar-hidden, .md .navbar ~ .toolbar-top-md.toolbar-hidden, .navbar ~ * .toolbar-top.toolbar-hidden, .ios .navbar ~ * .toolbar-top-ios.toolbar-hidden, .md .navbar ~ * .toolbar-top-md.toolbar-hidden, .navbar ~ .page:not(.no-navbar) .toolbar-top.toolbar-hidden, .ios .navbar ~ .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))), 0); } .navbar ~ .toolbar-top.toolbar-hidden.tabbar-labels, .ios .navbar ~ .toolbar-top-ios.toolbar-hidden.tabbar-labels, .md .navbar ~ .toolbar-top-md.toolbar-hidden.tabbar-labels, .navbar ~ * .toolbar-top.toolbar-hidden.tabbar-labels, .ios .navbar ~ * .toolbar-top-ios.toolbar-hidden.tabbar-labels, .md .navbar ~ * .toolbar-top-md.toolbar-hidden.tabbar-labels, .navbar ~ .page:not(.no-navbar) .toolbar-top.toolbar-hidden.tabbar-labels, .ios .navbar ~ .page:not(.no-navbar) .toolbar-top-ios.toolbar-hidden.tabbar-labels, .md .navbar ~ .page:not(.no-navbar) .toolbar-top-md.toolbar-hidden.tabbar-labels { transform: translate3d(0, calc(-1 * (var(--f7-navbar-height) + var(--f7-tabbar-labels-height))), 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(-1 * 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(-1 * (var(--f7-navbar-height) + var(--f7-navbar-large-title-height))), 0); } .ios .toolbar a.icon-only { min-height: var(--f7-toolbar-height); display: flex; justify-content: center; align-items: center; margin: 0; min-width: 44px; } .ios .toolbar-inner { padding: 0 calc(8px + var(--f7-safe-area-right)) 0 calc(8px + var(--f7-safe-area-left)); } .ios .tabbar-labels a.tab-link, .ios .tabbar-labels a.link { padding-top: 4px; padding-bottom: 4px; } .ios .tabbar-labels a.tab-link i + span, .ios .tabbar-labels a.link i + span { margin: 0; } @media (min-width: 768px) { .ios .tabbar .toolbar-inner, .ios .tabbar-labels .toolbar-inner { justify-content: center; } .ios .tabbar a.tab-link, .ios .tabbar-labels a.tab-link, .ios .tabbar a.link, .ios .tabbar-labels a.link { width: auto; min-width: 105px; } } .ios .tabbar-scrollable .toolbar-inner { justify-content: flex-start; } .ios .tabbar-scrollable a.tab-link, .ios .tabbar-scrollable a.link { padding: 0 8px; } .md .toolbar a.link { justify-content: center; padding: 0 16px; min-width: 48px; } .md .toolbar a.link:before { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .toolbar a.link.active-state:before { opacity: 1; transition-duration: 150ms; } .md .toolbar a.icon-only { min-width: 0; flex-shrink: 0; } .md .toolbar-inner { padding: 0 var(--f7-safe-area-right) 0 var(--f7-safe-area-left); } .md .tabbar a.tab-link, .md .tabbar-labels a.tab-link, .md .tabbar a.link, .md .tabbar-labels a.link { padding-left: 0; padding-right: 0; } .md .tabbar a.tab-link, .md .tabbar-labels a.tab-link { transition-duration: 300ms; overflow: hidden; position: relative; } .md .tabbar .tab-link-highlight, .md .tabbar-labels .tab-link-highlight { position: absolute; left: 0; height: 2px; background: var(--f7-tabbar-link-active-border-color, var(--f7-theme-color)); transition-duration: 300ms; right: 0; } .md .tabbar-labels a.tab-link, .md .tabbar-labels a.link { padding-top: 7px; padding-bottom: 7px; } .md .tabbar-label { max-width: 100%; overflow: hidden; line-height: 1.2; } .md .tabbar-scrollable .toolbar-inner { overflow: auto; justify-content: flex-start; } .md .tabbar-scrollable a.tab-link, .md .tabbar-scrollable a.link { padding: 0 16px; } /* === Subnavbar === */ :root { /* --f7-subnavbar-bg-image: var(--f7-bars-bg-image); --f7-subnavbar-bg-color: var(--f7-bars-bg-color); --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); */ } .ios { --f7-subnavbar-height: 44px; --f7-subnavbar-inner-padding-left: 8px; --f7-subnavbar-inner-padding-right: 8px; --f7-subnavbar-title-font-size: 34px; --f7-subnavbar-title-font-weight: 700; --f7-subnavbar-title-line-height: 1.2; --f7-subnavbar-title-letter-spacing: -0.03em; --f7-subnavbar-title-margin-left: 7px; --f7-navbar-shadow-image: none; } .md { --f7-subnavbar-height: 48px; --f7-subnavbar-inner-padding-left: 16px; --f7-subnavbar-inner-padding-right: 16px; --f7-subnavbar-title-font-size: 20px; --f7-subnavbar-title-font-weight: 500; --f7-subnavbar-title-line-height: 1.2; --f7-subnavbar-title-letter-spacing: 0; --f7-subnavbar-title-margin-left: 0px; --f7-navbar-shadow-image: var(--f7-bars-shadow-bottom-image); } .subnavbar { width: 100%; position: absolute; left: 0; top: 0; z-index: 500; box-sizing: border-box; display: flex; justify-content: space-between; align-items: center; background-image: var(--f7-subnavbar-bg-image, var(--f7-bars-bg-image)); background-color: var(--f7-subnavbar-bg-color, var(--f7-bars-bg-color, var(--f7-theme-color))); color: var(--f7-subnavbar-text-color, var(--f7-bars-text-color)); } .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-right: 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-height); height: var(--f7-subnavbar-height); } .subnavbar a.icon-only { min-width: var(--f7-subnavbar-height); } .subnavbar.no-hairline:after, .subnavbar.no-border:after { display: none !important; } .subnavbar.no-shadow:before, .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-navbar-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:before { content: ''; position: absolute; right: 0; width: 100%; top: 100%; bottom: auto; height: 8px; pointer-events: none; background: var(--f7-navbar-shadow-image, var(--f7-bars-shadow-bottom-image)); } .subnavbar-inner { width: 100%; height: 100%; display: flex; align-items: center; box-sizing: border-box; justify-content: space-between; overflow: hidden; padding: 0 calc(var(--f7-subnavbar-inner-padding-left) + var(--f7-safe-area-right)) 0 calc(var(--f7-subnavbar-inner-padding-right) + var(--f7-safe-area-left)); } .subnavbar-inner.stacked { display: none; } .navbar .subnavbar { top: 100%; } .views > .subnavbar, .view > .subnavbar, .page > .subnavbar { position: absolute; } .navbar ~ * .subnavbar, .page-with-subnavbar .navbar ~ .subnavbar, .page-with-subnavbar .navbar ~ * .subnavbar, .navbar ~ .page-with-subnavbar:not(.no-navbar) .subnavbar, .navbar ~ .subnavbar { top: var(--f7-navbar-height); } .navbar .title-large ~ .subnavbar { top: calc(var(--f7-navbar-height) + var(--f7-navbar-large-title-height)); transform: translate3d(0, calc(-1 * var(--f7-navbar-large-collapse-progress) * var(--f7-navbar-large-title-height)), 0); } .page-with-subnavbar .page-content, .subnavbar ~ .page-content, .subnavbar ~ * .page-content { padding-top: var(--f7-subnavbar-height); } .navbar ~ .page-with-subnavbar:not(.no-navbar) .page-content, .navbar ~ *:not(.no-navbar) .subnavbar ~ .page-content, .navbar ~ *:not(.no-navbar) .subnavbar ~ * .page-content, .navbar ~ .subnavbar ~ .page-content, .navbar ~ .subnavbar ~ * .page-content, .page-with-subnavbar .navbar ~ * .page-content, .page-with-subnavbar .navbar ~ .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-subnavbar-height)); } .navbar ~ .page-with-subnavbar.page-with-navbar-large:not(.no-navbar) .page-content, .page-with-subnavbar.page-with-navbar-large .navbar ~ * .page-content, .page-with-subnavbar.page-with-navbar-large .navbar ~ .page-content, .page-with-subnavbar.page-with-navbar-large .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-subnavbar-height) + var(--f7-navbar-large-title-height)); } .ios .subnavbar { height: calc(var(--f7-subnavbar-height) + 1px); margin-top: -1px; padding-top: 1px; } .ios .subnavbar .title { align-self: flex-start; flex-shrink: 10; } .ios .subnavbar .left a + a, .ios .subnavbar .right a + a { margin-right: 15px; } .ios .subnavbar .left { margin-left: 10px; } .ios .subnavbar .right { margin-right: 10px; } .ios .subnavbar .right:first-child { left: 8px; } .ios .subnavbar a.link { justify-content: flex-start; } .ios .subnavbar a.icon-only { justify-content: center; margin: 0; } .md .subnavbar { height: var(--f7-subnavbar-height); } .md .subnavbar .right { margin-right: auto; } .md .subnavbar .right:first-child { left: 16px; } .md .subnavbar a.link { justify-content: center; padding: 0 16px; } .md .subnavbar a.link:before { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .subnavbar a.link.active-state:before { opacity: 1; transition-duration: 150ms; } .md .subnavbar a.icon-only { flex-shrink: 0; } .md .subnavbar-inner > a.link:first-child { margin-right: calc(-1 * var(--f7-subnavbar-inner-padding-right)); } .md .subnavbar-inner > a.link:last-child { margin-left: calc(-1 * var(--f7-subnavbar-inner-padding-left)); } /* === Content Block === */ :root { --f7-block-font-size: inherit; --f7-block-strong-bg-color: #fff; --f7-block-title-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-white-space: nowrap; --f7-block-title-medium-text-color: #000; --f7-block-title-medium-text-transform: none; --f7-block-title-large-text-color: #000; --f7-block-title-large-text-transform: none; } :root .theme-dark, :root.theme-dark { --f7-block-title-medium-text-color: #fff; --f7-block-title-large-text-color: #fff; } .ios { --f7-block-text-color: #6d6d72; --f7-block-padding-horizontal: 15px; --f7-block-padding-vertical: 15px; --f7-block-margin-vertical: 35px; --f7-block-strong-text-color: #000; --f7-block-strong-border-color: #c8c7cc; --f7-block-title-text-transform: uppercase; --f7-block-title-text-color: #6d6d72; --f7-block-title-font-weight: 400; --f7-block-title-line-height: 17px; --f7-block-title-margin-bottom: 10px; --f7-block-title-medium-font-size: 22px; --f7-block-title-medium-font-weight: bold; --f7-block-title-medium-line-height: 1.4; --f7-block-title-large-font-size: 29px; --f7-block-title-large-font-weight: bold; --f7-block-title-large-line-height: 1.3; --f7-block-inset-side-margin: 15px; --f7-block-inset-border-radius: 7px; --f7-block-header-text-color: #8f8f94; --f7-block-footer-text-color: #8f8f94; } .ios .theme-dark, .ios.theme-dark { --f7-block-strong-border-color: #282829; --f7-block-title-text-color: #8E8E93; --f7-block-header-text-color: #8E8E93; --f7-block-footer-text-color: #8E8E93; --f7-block-strong-bg-color: #1c1c1d; --f7-block-strong-text-color: #fff; } .md { --f7-block-text-color: inherit; --f7-block-padding-horizontal: 16px; --f7-block-padding-vertical: 16px; --f7-block-margin-vertical: 32px; --f7-block-strong-text-color: inherit; --f7-block-strong-border-color: rgba(0, 0, 0, 0.12); --f7-block-title-text-transform: none; --f7-block-title-text-color: rgba(0, 0, 0, 0.54); --f7-block-title-font-weight: 500; --f7-block-title-line-height: 16px; --f7-block-title-margin-bottom: 16px; --f7-block-title-medium-font-size: 24px; --f7-block-title-medium-font-weight: 500; --f7-block-title-medium-line-height: 1.3; --f7-block-title-large-font-size: 34px; --f7-block-title-large-font-weight: 500; --f7-block-title-large-line-height: 1.2; --f7-block-inset-side-margin: 16px; --f7-block-inset-border-radius: 4px; --f7-block-header-text-color: rgba(0, 0, 0, 0.54); --f7-block-footer-text-color: rgba(0, 0, 0, 0.54); } .md .theme-dark, .md.theme-dark { --f7-block-strong-border-color: #282829; --f7-block-title-text-color: #fff; --f7-block-header-text-color: rgba(255, 255, 255, 0.54); --f7-block-footer-text-color: rgba(255, 255, 255, 0.54); --f7-block-strong-bg-color: #1c1c1d; } .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.no-hairlines:before, .block.no-hairlines ul:before, .md .block.no-hairlines-md:before, .md .block.no-hairlines-md ul:before, .ios .block.no-hairlines-ios:before, .ios .block.no-hairlines-ios ul:before { display: none !important; } .block.no-hairlines:after, .block.no-hairlines ul:after, .md .block.no-hairlines-md:after, .md .block.no-hairlines-md ul:after, .ios .block.no-hairlines-ios:after, .ios .block.no-hairlines-ios ul:after { display: none !important; } .block.no-hairline-top:before, .block.no-hairline-top ul:before, .md .block.no-hairline-top-md:before, .md .block.no-hairline-top-md ul:before, .ios .block.no-hairline-top-ios:before, .ios .block.no-hairline-top-ios ul:before { display: none !important; } .block.no-hairline-bottom:after, .block.no-hairline-bottom ul:after, .md .block.no-hairline-bottom-md:after, .md .block.no-hairline-bottom-md ul:after, .ios .block.no-hairline-bottom-ios:after, .ios .block.no-hairline-bottom-ios ul:after { display: none !important; } .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 { 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-strong:before { content: ''; position: absolute; background-color: var(--f7-block-strong-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-strong:after { content: ''; position: absolute; background-color: var(--f7-block-strong-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-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 { 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 { display: none !important; } .block-strong.inset:after { display: none !important; } @media (min-width: 768px) { .block.tablet-inset { 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.tablet-inset:before { display: none !important; } .block-strong.tablet-inset:after { display: none !important; } } /* === List View === */ :root { --f7-list-bg-color: #fff; --f7-list-item-text-max-lines: 2; --f7-list-chevron-icon-color: #c7c7cc; --f7-list-item-title-font-size: inherit; --f7-list-item-title-font-weight: 400; --f7-list-item-title-text-color: inherit; --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-text-color: inherit; --f7-list-item-subtitle-line-height: inherit; --f7-list-item-header-text-color: 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; } .ios { --f7-list-inset-side-margin: 15px; --f7-list-inset-border-radius: 7px; --f7-list-margin-vertical: 35px; --f7-list-font-size: 17px; --f7-list-chevron-icon-area: 20px; --f7-list-border-color: #c8c7cc; --f7-list-item-border-color: #c8c7cc; --f7-list-link-pressed-bg-color: #d9d9d9; --f7-list-item-subtitle-font-size: 15px; --f7-list-item-text-font-size: 15px; --f7-list-item-text-font-weight: 400; --f7-list-item-text-text-color: #8e8e93; --f7-list-item-text-line-height: 21px; --f7-list-item-after-font-size: inherit; --f7-list-item-after-font-weight: 400; --f7-list-item-after-text-color: #8e8e93; --f7-list-item-after-line-height: inherit; --f7-list-item-after-padding: 5px; --f7-list-item-footer-text-color: #8e8e93; --f7-list-item-min-height: 44px; --f7-list-item-media-margin: 15px; --f7-list-item-media-icons-margin: 5px; --f7-list-item-cell-margin: 15px; --f7-list-item-padding-vertical: 8px; --f7-list-item-padding-horizontal: 15px; --f7-list-media-item-padding-vertical: 10px; --f7-list-media-item-padding-horizontal: 15px; /* --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-button-border-color: #c8c7cc; --f7-list-button-pressed-bg-color: #d9d9d9; --f7-list-item-divider-height: 31px; --f7-list-item-divider-text-color: #8e8e93; --f7-list-item-divider-font-size: inherit; --f7-list-item-divider-font-weight: 400; --f7-list-item-divider-bg-color: #f7f7f7; --f7-list-item-divider-line-height: inherit; --f7-list-item-divider-border-color: #c8c7cc; --f7-list-group-title-height: 31px; --f7-list-group-title-text-color: #8e8e93; --f7-list-group-title-font-size: inherit; --f7-list-group-title-font-weight: 400; --f7-list-group-title-bg-color: #f7f7f7; --f7-list-group-title-line-height: inherit; } .ios .theme-dark, .ios.theme-dark { --f7-list-bg-color: #1c1c1d; --f7-list-border-color: #282829; --f7-list-button-border-color: #282829; --f7-list-item-border-color: #282829; --f7-list-item-divider-border-color: #282829; --f7-list-item-divider-bg-color: #232323; --f7-list-group-title-bg-color: #232323; --f7-list-link-pressed-bg-color: #363636; --f7-list-button-pressed-bg-color: #363636; --f7-list-chevron-icon-color: #434345; } .md { --f7-list-inset-side-margin: 16px; --f7-list-inset-border-radius: 4px; --f7-list-margin-vertical: 32px; --f7-list-font-size: 16px; --f7-list-chevron-icon-area: 26px; --f7-list-border-color: rgba(0, 0, 0, 0.12); --f7-list-item-border-color: rgba(0, 0, 0, 0.12); --f7-list-link-pressed-bg-color: rgba(0, 0, 0, 0.1); --f7-list-item-subtitle-font-size: 14px; --f7-list-item-text-font-size: 14px; --f7-list-item-text-font-weight: 400; --f7-list-item-text-text-color: #757575; --f7-list-item-text-line-height: 20px; --f7-list-item-after-font-size: 14px; --f7-list-item-after-font-weight: 400; --f7-list-item-after-text-color: #757575; --f7-list-item-after-line-height: inherit; --f7-list-item-after-padding: 8px; --f7-list-item-footer-text-color: rgba(0, 0, 0, 0.5); --f7-list-item-min-height: 48px; --f7-list-item-media-margin: 16px; --f7-list-item-media-icons-margin: 8px; --f7-list-item-cell-margin: 16px; --f7-list-item-padding-vertical: 8px; --f7-list-item-padding-horizontal: 16px; --f7-list-media-item-padding-vertical: 14px; --f7-list-media-item-padding-horizontal: 16px; --f7-list-button-text-color: #212121; --f7-list-button-font-size: inherit; --f7-list-button-font-weight: 400; --f7-list-button-text-align: left; --f7-list-button-border-color: transparent; --f7-list-button-pressed-bg-color: rgba(0, 0, 0, 0.1); --f7-list-item-divider-height: 48px; --f7-list-item-divider-text-color: rgba(0, 0, 0, 0.54); --f7-list-item-divider-font-size: 14px; --f7-list-item-divider-font-weight: 400; --f7-list-item-divider-bg-color: #f4f4f4; --f7-list-item-divider-line-height: inherit; --f7-list-item-divider-border-color: transparent; --f7-list-group-title-height: 48px; --f7-list-group-title-text-color: rgba(0, 0, 0, 0.54); --f7-list-group-title-font-size: 14px; --f7-list-group-title-font-weight: 400; --f7-list-group-title-bg-color: #f4f4f4; --f7-list-group-title-line-height: inherit; } .md .theme-dark, .md.theme-dark { --f7-list-bg-color: #1c1c1d; --f7-list-border-color: #282829; --f7-list-button-text-color: #fff; --f7-list-item-border-color: #282829; --f7-list-item-divider-border-color: #282829; --f7-list-item-divider-bg-color: #232323; --f7-list-item-divider-text-color: #fff; --f7-list-group-title-bg-color: #232323; --f7-list-group-title-text-color: #fff; --f7-list-link-pressed-bg-color: rgba(255, 255, 255, 0.05); --f7-list-button-pressed-bg-color: rgba(255, 255, 255, 0.05); --f7-list-chevron-icon-color: #434345; --f7-list-item-text-text-color: rgba(255, 255, 255, 0.54); --f7-list-item-after-text-color: rgba(255, 255, 255, 0.54); --f7-list-item-footer-text-color: rgba(255, 255, 255, 0.54); } .list { position: relative; z-index: 1; font-size: var(--f7-list-font-size); margin: var(--f7-list-margin-vertical) 0; } .list ul { list-style: none; margin: 0; padding: 0; position: relative; background: var(--f7-list-bg-color); } .list ul:before { content: ''; position: absolute; background-color: var(--f7-list-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 ul:after { content: ''; position: absolute; background-color: var(--f7-list-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 ul ul:before { display: none !important; } .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); } .list .item-media + .item-inner { margin-right: var(--f7-list-item-media-margin); } .list .item-media i + i, .list .item-media i + img { margin-right: var(--f7-list-item-media-icons-margin); } .list .item-after { padding-right: 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: var(--f7-list-item-min-height); padding-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); } .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-right: 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 .list-button { transition-duration: 300ms; transition-property: background-color; display: block; position: relative; overflow: hidden; z-index: 0; } .list .item-link { color: inherit; } .list .item-link.active-state { background-color: var(--f7-list-link-pressed-bg-color); } .list .item-link .item-inner { padding-left: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); } .list .item-content { display: flex; justify-content: space-between; box-sizing: border-box; align-items: center; min-height: var(--f7-list-item-min-height); padding-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right)); } .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: hidden; -webkit-line-clamp: var(--f7-list-item-text-max-lines); 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 .item-row { display: flex; justify-content: space-between; box-sizing: border-box; } .list .item-cell { display: block; align-self: center; box-sizing: border-box; width: 100%; min-width: 0; margin-right: var(--f7-list-item-cell-margin); flex-shrink: 1; } .list .item-cell:first-child { margin-right: 0; } .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.no-hairlines:before, .list.no-hairlines ul:before, .md .list.no-hairlines-md:before, .md .list.no-hairlines-md ul:before, .ios .list.no-hairlines-ios:before, .ios .list.no-hairlines-ios ul:before { display: none !important; } .list.no-hairlines:after, .list.no-hairlines ul:after, .md .list.no-hairlines-md:after, .md .list.no-hairlines-md ul:after, .ios .list.no-hairlines-ios:after, .ios .list.no-hairlines-ios ul:after { display: none !important; } .list.no-hairline-top:before, .list.no-hairline-top ul:before, .md .list.no-hairline-top-md:before, .md .list.no-hairline-top-md ul:before, .ios .list.no-hairline-top-ios:before, .ios .list.no-hairline-top-ios ul:before { display: none !important; } .list.no-hairline-bottom:after, .list.no-hairline-bottom ul:after, .md .list.no-hairline-bottom-md:after, .md .list.no-hairline-bottom-md ul:after, .ios .list.no-hairline-bottom-ios:after, .ios .list.no-hairline-bottom-ios ul:after { display: none !important; } .list.no-hairlines-between .item-inner:after, .md .list.no-hairlines-between-md .item-inner:after, .ios .list.no-hairlines-between-ios .item-inner:after, .list.no-hairlines-between .list-button:after, .md .list.no-hairlines-between-md .list-button:after, .ios .list.no-hairlines-between-ios .list-button:after, .list.no-hairlines-between .item-divider:after, .md .list.no-hairlines-between-md .item-divider:after, .ios .list.no-hairlines-between-ios .item-divider:after, .list.no-hairlines-between .list-group-title:after, .md .list.no-hairlines-between-md .list-group-title:after, .ios .list.no-hairlines-between-ios .list-group-title:after, .list.no-hairlines-between .list-group-title:after, .md .list.no-hairlines-between-md .list-group-title:after, .ios .list.no-hairlines-between-ios .list-group-title:after { display: none !important; } .list.no-hairlines-between.simple-list li:after, .md .list.no-hairlines-between-md.simple-list li:after, .ios .list.no-hairlines-between-ios.simple-list li:after { display: none !important; } .list.no-hairlines-between.links-list a:after, .md .list.no-hairlines-between-md.links-list a:after, .ios .list.no-hairlines-between-ios.links-list a:after { display: none !important; } .list-button { 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); } .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.active-state { background-color: var(--f7-list-button-pressed-bg-color); } .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); right: 0; width: auto; right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right)); left: 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-right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right)); padding-left: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); } .links-list a:after { right: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-right)); left: 0; } .links-list li:last-child a:after { display: none !important; } .simple-list li:after, .links-list a:after, .list .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))); } .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-inner, li.media-item .item-inner { display: block; align-self: stretch; } .media-list .item-media, li.media-item .item-media { align-self: flex-start; } .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-left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); } .media-list .item-link .item-title-row, li.media-item .item-link .item-title-row { padding-left: 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-left: calc(var(--f7-list-chevron-icon-area) + var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); } .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-left: 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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; position: absolute; top: 50%; width: 8px; height: 14px; margin-top: -7px; font-size: 20px; line-height: 14px; color: var(--f7-list-chevron-icon-color); pointer-events: none; left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); content: 'chevron_left'; } .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 { left: 0; } .list-group ul:after, .list-group ul:before { z-index: 25 !important; } .list-group + .list-group ul:before { display: none !important; } li.item-divider, .item-divider, li.list-group-title { 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; } li.item-divider:after, .item-divider:after, li.list-group-title:after { display: none !important; } li.item-divider, .item-divider { margin-top: -1px; height: var(--f7-list-item-divider-height); color: var(--f7-list-item-divider-text-color); font-size: var(--f7-list-item-divider-font-size); font-weight: var(--f7-list-item-divider-font-weight); background-color: var(--f7-list-item-divider-bg-color); line-height: var(--f7-list-item-divider-line-height); } li.item-divider:before, .item-divider:before { content: ''; position: absolute; background-color: var(--f7-list-item-divider-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, .list li.list-group-title { position: relative; position: -webkit-sticky; position: sticky; top: 0; margin-top: 0; z-index: 20; 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); } .list.inset { 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 { margin-left: 0; margin-right: 0; } .list.inset ul { border-radius: var(--f7-list-inset-border-radius); } .list.inset ul:before { display: none !important; } .list.inset ul:after { display: none !important; } .list.inset li:first-child > a { border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0; } .list.inset li:last-child > a { border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius); } .list.inset li:first-child:last-child > a { border-radius: var(--f7-list-inset-border-radius); } @media (min-width: 768px) { .list.tablet-inset { 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.tablet-inset .block-title { margin-left: 0; margin-right: 0; } .list.tablet-inset ul { border-radius: var(--f7-list-inset-border-radius); } .list.tablet-inset ul:before { display: none !important; } .list.tablet-inset ul:after { display: none !important; } .list.tablet-inset li:first-child > a { border-radius: var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius) 0 0; } .list.tablet-inset li:last-child > a { border-radius: 0 0 var(--f7-list-inset-border-radius) var(--f7-list-inset-border-radius); } .list.tablet-inset li:first-child:last-child > a { border-radius: var(--f7-list-inset-border-radius); } } .list.no-chevron, .list .no-chevron { --f7-list-chevron-icon-color: transparent; --f7-list-chevron-icon-area: 0px; } .ios .list ul ul { padding-right: calc(var(--f7-list-item-padding-horizontal) + 30px); } .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; } .ios .media-list .item-title, .ios li.media-item .item-title { font-weight: 600; } .md .list ul ul { padding-right: calc(var(--f7-list-item-padding-horizontal) + 40px); } .md .list .item-media { min-width: 40px; } /* === Badge === */ :root { --f7-badge-text-color: #fff; --f7-badge-bg-color: #8e8e93; --f7-badge-padding: 0 4px; --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-size: 20px; } .md { --f7-badge-size: 18px; } .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); } .badge[class*="color-"] { --f7-badge-bg-color: var(--f7-theme-color); } :root { --f7-button-font-size: 14px; --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-text-color: #fff; --f7-button-fill-bg-color: var(--f7-theme-color); --f7-button-outline-border-color: var(--f7-theme-color); */ --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); } .ios { --f7-button-height: 29px; --f7-button-padding-horizontal: 10px; --f7-button-border-radius: 5px; --f7-button-font-weight: 400; --f7-button-letter-spacing: 0; --f7-button-text-transform: none; /* --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-outline-border-width: 1px; --f7-button-large-height: 44px; --f7-button-large-font-size: 17px; --f7-button-small-height: 26px; --f7-button-small-font-size: 13px; --f7-button-small-font-weight: 600; --f7-button-small-text-transform: uppercase; --f7-button-small-outline-border-width: 2px; } .md { --f7-button-height: 36px; --f7-button-padding-horizontal: 8px; --f7-button-border-radius: 4px; --f7-button-font-weight: 500; --f7-button-letter-spacing: 0.03em; --f7-button-text-transform: uppercase; --f7-button-pressed-bg-color: rgba(0, 0, 0, 0.1); /* --f7-button-fill-pressed-bg-color: var(--f7-theme-color-shade); */ --f7-button-outline-border-width: 2px; --f7-button-large-height: 48px; --f7-button-large-font-size: 14px; --f7-button-small-height: 28px; --f7-button-small-font-size: 13px; --f7-button-small-font-weight: 500; --f7-button-small-text-transform: uppercase; --f7-button-small-outline-border-width: 2px; } .md .theme-dark, .md.theme-dark { --f7-button-pressed-bg-color: rgba(255, 255, 255, 0.1); } button { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 100%; } .button { text-decoration: none; text-align: center; display: block; -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; 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, 0) 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 { background-color: var(--f7-button-pressed-bg-color, rgba(var(--f7-theme-color-rgb), 0.15)); color: var(--f7-button-pressed-text-color, var(--f7-button-text-color, var(--f7-theme-color))); } input[type="submit"].button, input[type="button"].button { width: 100%; } .button > i + span, .button > span + span, .button > span + i, .button > i + i { margin-right: 4px; } .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); } .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-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, var(--f7-button-font-size)); } .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); } .segmented .button, .segmented button { width: 100%; flex-shrink: 1; min-width: 0; border-radius: 0; } .segmented .button:first-child { border-radius: 0 var(--f7-button-border-radius) var(--f7-button-border-radius) 0; } .segmented .button:not(.button-outline):first-child { border-right: none; } .segmented .button.button-outline:nth-child(n + 2) { border-right: none; } .segmented .button:last-child { border-radius: var(--f7-button-border-radius) 0 0 var(--f7-button-border-radius); } .segmented .button-round:first-child { border-radius: 0 var(--f7-button-height) var(--f7-button-height) 0; } .segmented .button-round:last-child { border-radius: var(--f7-button-height) 0 0 var(--f7-button-height); } .segmented .button:first-child:last-child { border-radius: var(--f7-button-border-radius); } .segmented-round, .ios .segmented-round-ios, .md .segmented-round-md { border-radius: var(--f7-button-height); } .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-right: 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); } .subnavbar .segmented { width: 100%; } .ios .button { transition-duration: 100ms; } .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, var(--f7-theme-color-shade)); } /* === Touch Ripple === */ :root { --f7-touch-ripple-black: rgba(0, 0, 0, 0.1); --f7-touch-ripple-white: rgba(255, 255, 255, 0.3); --f7-touch-ripple-color: var(--f7-touch-ripple-black); } .theme-dark { --f7-touch-ripple-color: var(--f7-touch-ripple-white); } .ripple, .fab a, a.link, a.item-link, a.list-button, .button, .dialog-button, .tab-link, .radio, .checkbox, .actions-button, .speed-dial-buttons a { -webkit-user-select: none; -moz-user-select: none; -ms-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); transition-duration: 1400ms; background-color: var(--f7-touch-ripple-color); will-change: transform, opacity; } .ripple-wave.ripple-wave-fill { transition-duration: 300ms; opacity: 0.35; } .ripple-wave.ripple-wave-out { transition-duration: 600ms; opacity: 0; } .button-fill .ripple-wave, .picker-calendar-day .ripple-wave, .menu .ripple-wave { z-index: 1; } .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); } /* === Icon === */ 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 { 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; -moz-font-feature-settings: "liga"; 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 .item-media .icon { color: #808080; } .ios .item-media .f7-icons { font-size: 28px; width: 28px; height: 28px; } .ios .icon-back:after, .ios .icon-prev:after { content: 'chevron_right_ios'; } .ios .icon-forward:after, .ios .icon-next:after { content: 'chevron_left_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 .item-media .icon { color: #737373; } .md .item-media .material-icons { font-size: 24px; width: 24px; height: 24px; } .md .icon-back:after { content: 'arrow_right_md'; } .md .icon-forward:after { content: 'arrow_left_md'; } .md .icon-next:after { content: 'chevron_left_md'; } .md .icon-prev:after { content: 'chevron_right_md'; } .custom-modal-backdrop { z-index: 10500; } .custom-modal-backdrop, .actions-backdrop, .dialog-backdrop, .popover-backdrop, .popup-backdrop, .preloader-backdrop, .sheet-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 { 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 { visibility: visible; opacity: 1; } /* === Dialog === */ :root { --f7-dialog-button-text-color: var(--f7-theme-color); } .ios { --f7-dialog-bg-color: rgba(255, 255, 255, 0.95); --f7-dialog-box-shadow: none; --f7-dialog-width: 270px; --f7-dialog-border-radius: 13px; --f7-dialog-text-color: #000; --f7-dialog-text-align: center; --f7-dialog-font-size: 14px; --f7-dialog-title-text-color: inherit; --f7-dialog-title-font-size: 18px; --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-text-align: center; --f7-dialog-button-font-weight: 400; --f7-dialog-button-text-transform: none; --f7-dialog-button-pressed-bg-color: rgba(230, 230, 230, 0.95); --f7-dialog-input-font-size: 14px; --f7-dialog-input-height: 32px; --f7-dialog-input-bg-color: #fff; --f7-dialog-input-border-color: rgba(0, 0, 0, 0.3); --f7-dialog-input-border-width: 1px; --f7-dialog-input-placeholder-color: #a9a9a9; --f7-dialog-preloader-size: 34px; } .md { --f7-dialog-bg-color: #fff; --f7-dialog-box-shadow: var(--f7-elevation-24); --f7-dialog-width: 280px; --f7-dialog-border-radius: 4px; --f7-dialog-text-color: #757575; --f7-dialog-text-align: left; --f7-dialog-font-size: 16px; --f7-dialog-title-text-color: #212121; --f7-dialog-title-font-size: 20px; --f7-dialog-title-font-weight: 500; --f7-dialog-title-line-height: 1.3; --f7-dialog-button-font-size: 14px; --f7-dialog-button-height: 36px; --f7-dialog-button-letter-spacing: 0.03em; --f7-dialog-button-text-align: center; --f7-dialog-button-font-weight: 500; --f7-dialog-button-text-transform: uppercase; --f7-dialog-button-pressed-bg-color: rgba(0, 0, 0, 0.1); --f7-dialog-input-font-size: 16px; --f7-dialog-input-height: 36px; --f7-dialog-input-bg-color: #fff; --f7-dialog-input-border-color: transparent; --f7-dialog-input-border-width: 0px; --f7-dialog-input-placeholder-color: rgba(0, 0, 0, 0.35); --f7-dialog-preloader-size: 32px; } .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; box-shadow: var(--f7-dialog-box-shadow); 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); 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; } .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-buttons { position: relative; display: flex; flex-direction: row-reverse; } .dialog-buttons-vertical .dialog-buttons { display: block; height: auto !important; } .dialog-button { box-sizing: border-box; overflow: hidden; position: relative; white-space: nowrap; text-overflow: ellipsis; color: var(--f7-dialog-button-text-color); font-size: var(--f7-dialog-button-font-size); height: var(--f7-dialog-button-height); line-height: var(--f7-dialog-button-height); letter-spacing: var(--f7-dialog-button-letter-spacing); text-align: var(--f7-dialog-button-text-align); font-weight: var(--f7-dialog-button-font-weight); text-transform: var(--f7-dialog-button-text-transform); display: block; cursor: pointer; } .dialog-button[class*="color-"] { --f7-dialog-button-text-color: var(--f7-theme-color); } .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: 0; -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]::-webkit-input-placeholder { color: var(--f7-dialog-input-placeholder-color); } input.dialog-input[type]::-moz-placeholder { color: var(--f7-dialog-input-placeholder-color); } input.dialog-input[type]::-ms-input-placeholder { color: var(--f7-dialog-input-placeholder-color); } input.dialog-input[type]::placeholder { color: var(--f7-dialog-input-placeholder-color); } .dialog-preloader .preloader { --f7-preloader-size: var(--f7-dialog-preloader-size); } html.with-modal-dialog .page-content { overflow: hidden; -webkit-overflow-scrolling: auto; } .ios .dialog.modal-out { transform: translate3d(0, -50%, 0) scale(1); } .ios .dialog-inner { padding: 15px; border-radius: var(--f7-dialog-border-radius) var(--f7-dialog-border-radius) 0 0; background: var(--f7-dialog-bg-color); } .ios .dialog-inner:after { content: ''; position: absolute; background-color: rgba(0, 0, 0, 0.2); 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))); } .ios .dialog-title + .dialog-text { margin-top: 5px; } .ios .dialog-buttons { height: 44px; justify-content: center; } .ios .dialog-button { width: 100%; padding: 0 5px; -webkit-box-flex: 1; -ms-flex: 1; background: var(--f7-dialog-bg-color); } .ios .dialog-button:after { content: ''; position: absolute; background-color: rgba(0, 0, 0, 0.2); display: block; z-index: 15; top: 0; right: 0; bottom: auto; left: auto; width: 1px; height: 100%; transform-origin: 100% 50%; transform: scaleX(calc(1 / var(--f7-device-pixel-ratio))); } .ios .dialog-button.active-state { background-color: var(--f7-dialog-button-pressed-bg-color); } .ios .dialog-button:first-child { border-radius: 0 0 0 var(--f7-dialog-border-radius); } .ios .dialog-button:last-child { border-radius: 0 0 var(--f7-dialog-border-radius) 0; } .ios .dialog-button:last-child:after { display: none !important; } .ios .dialog-button:first-child:last-child { border-radius: 0 0 var(--f7-dialog-border-radius) var(--f7-dialog-border-radius); } .ios .dialog-button.dialog-button-bold { font-weight: 500; } .ios .dialog-buttons-vertical .dialog-buttons { height: auto; } .ios .dialog-buttons-vertical .dialog-button { border-radius: 0; } .ios .dialog-buttons-vertical .dialog-button:after { content: ''; position: absolute; background-color: rgba(0, 0, 0, 0.2); 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))); } .ios .dialog-buttons-vertical .dialog-button:last-child { border-radius: 0 0 var(--f7-dialog-border-radius) var(--f7-dialog-border-radius); } .ios .dialog-buttons-vertical .dialog-button:last-child:after { display: none !important; } .ios .dialog-no-buttons .dialog-inner { border-radius: var(--f7-dialog-border-radius); } .ios .dialog-no-buttons .dialog-inner:after { display: none !important; } .ios .dialog-input-field { margin-top: 15px; } .ios .dialog-input { padding: 0 5px; } .ios .dialog-input + .dialog-input { margin-top: 5px; } .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 .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 { background: var(--f7-dialog-bg-color); } .md .dialog.modal-out { transform: translate3d(0, -50%, 0) scale(0.815); } .md .dialog-inner { padding: 24px 24px 20px; } .md .dialog-title + .dialog-text { margin-top: 20px; } .md .dialog-text { line-height: 1.5; } .md .dialog-buttons { height: 48px; padding: 6px 8px; overflow: hidden; box-sizing: border-box; justify-content: flex-end; } .md .dialog-button { border-radius: 4px; min-width: 64px; padding: 0 8px; border: none; transition-duration: 300ms; transform: translate3d(0, 0, 0); } .md .dialog-button.active-state { background-color: var(--f7-dialog-button-pressed-bg-color); } .md .dialog-button.dialog-button-bold { font-weight: 700; } .md .dialog-button + .dialog-button { margin-left: 4px; } .md .dialog-buttons-vertical .dialog-buttons { padding: 0 0 8px 0; } .md .dialog-buttons-vertical .dialog-button { margin-left: 0; text-align: right; height: 48px; line-height: 48px; border-radius: 0; padding-left: 16px; padding-right: 16px; } .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-tablet-border-radius: 0px; */ } .ios { --f7-popup-box-shadow: none; } .md { --f7-popup-box-shadow: 0px 20px 44px rgba(0, 0, 0, 0.5); } .popup-backdrop { z-index: 10500; } .popup { position: absolute; left: 0; top: var(--f7-statusbar-height); width: 100%; height: calc(100% - var(--f7-statusbar-height)); display: none; box-sizing: border-box; transition-property: transform; transform: translate3d(0, 100%, 0); background: #fff; z-index: 11000; will-change: transform; overflow: hidden; border-radius: var(--f7-popup-border-radius); } .popup.modal-in, .popup.modal-out { transition-duration: 400ms; } .popup.not-animated { transition-duration: 0ms; } .popup.modal-in { display: block; transform: translate3d(0, 0, 0); } .popup.modal-out { transform: translate3d(0, 100%, 0); } @media (min-width: 630px) and (min-height: 630px) { .popup:not(.popup-tablet-fullscreen) { 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); box-shadow: var(--f7-popup-box-shadow); 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); } } @media (max-width: 629px), (max-height: 629px) { .popup-backdrop { z-index: 9500; } } html.with-modal-popup .framework7-root > .views .page-content, html.with-modal-popup .framework7-root > .view .page-content, html.with-modal-popup .framework7-root > .panel .page-content { overflow: hidden; -webkit-overflow-scrolling: auto; } /* === Login Screen === */ :root { --f7-login-screen-bg-color: #fff; --f7-login-screen-content-bg-color: #fff; --f7-login-screen-blocks-max-width: 480px; /* --f7-login-screen-list-button-text-color: var(--f7-theme-color); */ --f7-login-screen-title-text-align: center; --f7-login-screen-title-text-color: inherit; --f7-login-screen-title-letter-spacing: 0; } :root .theme-dark, :root.theme-dark { --f7-login-screen-bg-color: #171717; --f7-login-screen-content-bg-color: transparent; } .ios { --f7-login-screen-blocks-margin-vertical: 25px; --f7-login-screen-title-font-size: 30px; --f7-login-screen-title-font-weight: normal; } .md { --f7-login-screen-blocks-margin-vertical: 24px; --f7-login-screen-title-font-size: 34px; --f7-login-screen-title-font-weight: normal; } .login-screen { position: absolute; left: 0; top: var(--f7-statusbar-height); width: 100%; height: calc(100% - var(--f7-statusbar-height)); display: none; box-sizing: border-box; transition-property: transform; transform: translate3d(0, 100%, 0); background: var(--f7-login-screen-bg-color); z-index: 11000; will-change: transform; } .login-screen.modal-in, .login-screen.modal-out { transition-duration: 400ms; } .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 { background: var(--f7-login-screen-content-bg-color); } .login-screen-content .list-button { text-align: center; color: var(--f7-login-screen-list-button-text-color, var(--f7-theme-color)); } .login-screen-content .login-screen-title, .login-screen-content .list, .login-screen-content .block { margin: var(--f7-login-screen-blocks-margin-vertical) auto; } .login-screen-content .login-screen-title, .login-screen-content .list, .login-screen-content .block, .login-screen-content .block-footer, .login-screen-content .block-header { max-width: var(--f7-login-screen-blocks-max-width); } .login-screen-content .list ul { background: none; } .login-screen-content .list ul:before { display: none !important; } .login-screen-content .list ul:after { display: none !important; } .login-screen-content .block-footer, .login-screen-content .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); } .theme-dark .login-screen-content .list ul, .theme-dark .login-screen-content .block-strong { background-color: transparent; } /* === Popover === */ :root { --f7-popover-width: 260px; } .ios { --f7-popover-bg-color: rgba(255, 255, 255, 0.95); --f7-popover-border-radius: 13px; --f7-popover-box-shadow: none; --f7-popover-actions-icon-size: 28px; --f7-popover-actions-label-text-color: #8a8a8a; } .ios .theme-dark, .ios.theme-dark { --f7-popover-bg-color: rgba(30, 30, 30, 0.95); } .md { --f7-popover-bg-color: #fff; --f7-popover-border-radius: 4px; --f7-popover-box-shadow: var(--f7-elevation-8); --f7-popover-actions-icon-size: 24px; --f7-popover-actions-label-text-color: rgba(0, 0, 0, 0.54); } .md .theme-dark, .md.theme-dark { --f7-popover-bg-color: #202020; --f7-popover-actions-label-text-color: rgba(255, 255, 255, 0.54); } .popover { width: var(--f7-popover-width); z-index: 13500; margin: 0; top: 0; opacity: 0; left: 0; position: absolute; display: none; transition-duration: 300ms; background-color: var(--f7-popover-bg-color); border-radius: var(--f7-popover-border-radius); box-shadow: var(--f7-popover-box-shadow); will-change: transform, opacity; } .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-inner { will-change: scroll-position; 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); } .popover-from-actions-bold { font-weight: 600; } .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; } .ios .popover { transform: none; transition-property: opacity; } .ios .popover-angle { width: 26px; height: 26px; position: absolute; left: -26px; top: 0; z-index: 100; overflow: hidden; } .ios .popover-angle:after { content: ''; background: var(--f7-popover-bg-color); width: 26px; height: 26px; position: absolute; left: 0; top: 0; border-radius: 3px; transform: rotate(45deg); } .ios .popover-angle.on-left { left: -26px; } .ios .popover-angle.on-left:after { left: 19px; top: 0; } .ios .popover-angle.on-right { left: 100%; } .ios .popover-angle.on-right:after { left: -19px; top: 0; } .ios .popover-angle.on-top { left: 0; top: -26px; } .ios .popover-angle.on-top:after { left: 0; top: 19px; } .ios .popover-angle.on-bottom { left: 0; top: 100%; } .ios .popover-angle.on-bottom:after { left: 0; top: -19px; } .md .popover { transform: scale(0.85, 0.6); transition-property: opacity, transform; } .md .popover.modal-in { opacity: 1; transform: scale(1); } .md .popover.modal-out { opacity: 0; transform: scale(1); } .md .popover-on-top { transform-origin: center bottom; } .md .popover-on-bottom { transform-origin: center top; } /* === Actions === */ .ios { --f7-actions-bg-color: rgba(255, 255, 255, 0.95); --f7-actions-border-radius: 13px; --f7-actions-button-border-color: rgba(0, 0, 0, 0.2); --f7-actions-button-text-color: var(--f7-theme-color); --f7-actions-button-pressed-bg-color: rgba(230, 230, 230, 0.9); --f7-actions-button-padding: 0px; --f7-actions-button-text-align: center; --f7-actions-button-height: 57px; --f7-actions-button-height-landscape: 44px; --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-text-color: #8a8a8a; --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-grid-button-text-color: #757575; --f7-actions-grid-button-icon-size: 48px; --f7-actions-grid-button-font-size: 12px; } .md { --f7-actions-bg-color: #fff; --f7-actions-border-radius: 0px; --f7-actions-button-border-color: transparent; --f7-actions-button-text-color: rgba(0, 0, 0, 0.87); --f7-actions-button-pressed-bg-color: #e5e5e5; --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-text-color: rgba(0, 0, 0, 0.54); --f7-actions-label-font-size: 16px; --f7-actions-label-justify-content: flex-start; --f7-actions-group-border-color: #d2d2d6; --f7-actions-group-margin: 0px; --f7-actions-grid-button-text-color: #757575; --f7-actions-grid-button-icon-size: 48px; --f7-actions-grid-button-font-size: 12px; } .actions-modal { position: absolute; left: 0; bottom: 0; z-index: 13500; width: 100%; transform: translate3d(0, 100%, 0); display: none; max-height: 100%; will-change: scroll-position; 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; } .actions-modal.modal-in { transform: translate3d(0, calc(-1 * var(--f7-safe-area-bottom)), 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-group { overflow: hidden; position: relative; margin: var(--f7-actions-group-margin); border-radius: var(--f7-actions-border-radius); 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); background: var(--f7-actions-bg-color); } .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:first-child, .actions-label:first-child { border-radius: var(--f7-actions-border-radius) var(--f7-actions-border-radius) 0 0; } .actions-button:last-child, .actions-label:last-child { border-radius: 0 0 var(--f7-actions-border-radius) var(--f7-actions-border-radius); } .actions-button:last-child:after, .actions-label:last-child:after { display: none !important; } .actions-button:first-child:last-child, .actions-label:first-child:last-child { border-radius: var(--f7-actions-border-radius); } .actions-button a, .actions-label a { text-decoration: none; color: inherit; display: block; } .actions-button b, .actions-label b, .actions-button.actions-button-bold, .actions-label.actions-button-bold { font-weight: 600; } .actions-button { cursor: pointer; display: flex; color: var(--f7-actions-button-text-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); 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-grid .actions-group { display: flex; flex-wrap: wrap; justify-content: flex-start; border-radius: 0; background: var(--f7-actions-bg-color); margin-top: 0; } .actions-grid .actions-group:first-child { border-radius: var(--f7-actions-border-radius) var(--f7-actions-border-radius) 0 0; } .actions-grid .actions-group:last-child { border-radius: 0 0 var(--f7-actions-border-radius) var(--f7-actions-border-radius); } .actions-grid .actions-group:first-child:last-child { border-radius: var(--f7-actions-border-radius); } .actions-grid .actions-group:not(:last-child) { margin-bottom: 0; } .actions-grid .actions-button, .actions-grid .actions-label { border-radius: 0 !important; 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-button-media { margin-left: 15px; } .ios .actions-button-media + .actions-button-text { text-align: left; margin-left: 15px; } .md .actions-button { transition-duration: 300ms; } .md .actions-button-media { min-width: 40px; } .md .actions-button-media + .actions-button-text { margin-left: 16px; } /* === Sheet Modal === */ :root { --f7-sheet-height: 260px; } .ios { --f7-sheet-bg-color: #cfd5da; --f7-sheet-border-color: #929499; } .ios .theme-dark, .ios.theme-dark { --f7-sheet-bg-color: #171717; --f7-sheet-border-color: var(--f7-bars-border-color); } .md { --f7-sheet-bg-color: #fff; --f7-sheet-border-color: transparent; } .md .theme-dark, .md.theme-dark { --f7-sheet-bg-color: #202020; --f7-sheet-border-color: transparent; } .sheet-backdrop { z-index: 11000; } .sheet-modal { 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; } .sheet-modal:before { content: ''; position: absolute; background-color: var(--f7-sheet-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))); } .sheet-modal:before { z-index: 600; -webkit-backface-visibility: hidden; backface-visibility: hidden; transform-style: preserve-3d; } .sheet-modal.modal-in, .sheet-modal.modal-out { transition-duration: 300ms; } .sheet-modal.not-animated { transition-duration: 0ms; } .sheet-modal.modal-in { display: block; transform: translate3d(0, 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 { position: relative; width: 100%; } .sheet-modal .toolbar:after, .sheet-modal .toolbar:before { display: none; } .sheet-modal .toolbar ~ * .page-content { padding-top: 0; padding-bottom: 0; } .sheet-modal .toolbar + .sheet-modal-inner { height: calc(100% - var(--f7-toolbar-height)); } .sheet-modal .toolbar ~ .sheet-modal-inner .page-content { padding-bottom: 0; padding-top: 0; } .sheet-modal .toolbar ~ .sheet-modal-inner .page-content, .sheet-modal .sheet-modal-inner > .page-content { padding-bottom: var(--f7-safe-area-bottom); } .md .sheet-modal .toolbar a.link:not(.tab-link) { flex-shrink: 0; } /* === Toast === */ .ios { --f7-toast-text-color: #fff; --f7-toast-font-size: 14px; --f7-toast-bg-color: rgba(0, 0, 0, 0.75); --f7-toast-translucent-bg-color-ios: rgba(0, 0, 0, 0.75); --f7-toast-padding-horizontal: 15px; --f7-toast-padding-vertical: 12px; --f7-toast-border-radius: 8px; --f7-toast-button-min-width: 64px; --f7-toast-icon-size: 48px; } .md { --f7-toast-text-color: #fff; --f7-toast-font-size: 14px; --f7-toast-bg-color: #323232; --f7-toast-padding-horizontal: 24px; --f7-toast-padding-vertical: 14px; --f7-toast-border-radius: 4px; --f7-toast-button-min-width: 64px; --f7-toast-icon-size: 48px; } .toast { transition-property: transform, opacity; position: absolute; max-width: 568px; 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; --f7-touch-ripple-color: var(--f7-touch-ripple-white); } .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; } .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); width: var(--f7-toast-icon-size); height: var(--f7-toast-icon-size); } .toast.toast-center { top: 50%; } .toast.toast-top { margin-top: var(--f7-statusbar-height); } .ios .toast { transition-duration: 300ms; width: 100%; left: 0; } @supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) { .ios .toast { background: var(--f7-toast-translucent-bg-color-ios); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); } } .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-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: -284px; border-radius: var(--f7-toast-border-radius); } .ios .toast.toast-top { top: 15px; } .ios .toast.toast-center { margin-left: 0; } .ios .toast.toast-bottom { margin-bottom: calc(15px + var(--f7-safe-area-bottom)); } } @media (min-width: 1024px) { .ios .toast { margin-left: 0; width: auto; } .ios .toast.toast-bottom, .ios .toast.toast-top { left: 15px; } } .ios .toast-button { margin-right: 15px; margin-left: calc(-1 * var(--f7-button-padding-horizontal)); } .md .toast { transition-duration: 200ms; border-radius: var(--f7-toast-border-radius); left: 8px; width: calc(100% - 16px); transform: scale(0.9); } .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: -284px; } .md .toast.toast-center { margin-left: 0; } } @media (min-width: 1024px) { .md .toast { margin-left: 0; width: auto; } .md .toast.toast-bottom, .md .toast.toast-top { left: 24px; } .md .toast.toast-bottom { bottom: calc(24px + var(--f7-safe-area-bottom)); } .md .toast.toast-top { top: 24px; } } .md .toast-button { margin-right: 16px; margin-left: -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 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 { overflow: hidden; -webkit-overflow-scrolling: auto; } .preloader[class*="color-"] { --f7-preloader-color: var(--f7-theme-color); } .ios .preloader { animation: ios-preloader-spin 1s steps(12, end) infinite; } .ios .preloader .preloader-inner-line { display: block; width: 10%; height: 25%; border-radius: 100px; background: var(--f7-preloader-color); position: absolute; left: 50%; top: 50%; transform-origin: center 200%; } .ios .preloader .preloader-inner-line:nth-child(1) { transform: translate(-50%, -200%) rotate(0deg); opacity: 0.27; } .ios .preloader .preloader-inner-line:nth-child(2) { transform: translate(-50%, -200%) rotate(30deg); opacity: 0.32272727; } .ios .preloader .preloader-inner-line:nth-child(3) { transform: translate(-50%, -200%) rotate(60deg); opacity: 0.37545455; } .ios .preloader .preloader-inner-line:nth-child(4) { transform: translate(-50%, -200%) rotate(90deg); opacity: 0.42818182; } .ios .preloader .preloader-inner-line:nth-child(5) { transform: translate(-50%, -200%) rotate(120deg); opacity: 0.48090909; } .ios .preloader .preloader-inner-line:nth-child(6) { transform: translate(-50%, -200%) rotate(150deg); opacity: 0.53363636; } .ios .preloader .preloader-inner-line:nth-child(7) { transform: translate(-50%, -200%) rotate(180deg); opacity: 0.58636364; } .ios .preloader .preloader-inner-line:nth-child(8) { transform: translate(-50%, -200%) rotate(210deg); opacity: 0.63909091; } .ios .preloader .preloader-inner-line:nth-child(9) { transform: translate(-50%, -200%) rotate(240deg); opacity: 0.69181818; } .ios .preloader .preloader-inner-line:nth-child(10) { transform: translate(-50%, -200%) rotate(270deg); opacity: 0.74454545; } .ios .preloader .preloader-inner-line:nth-child(11) { transform: translate(-50%, -200%) rotate(300deg); opacity: 0.79727273; } .ios .preloader .preloader-inner-line:nth-child(12) { transform: translate(-50%, -200%) rotate(330deg); opacity: 0.85; } @keyframes ios-preloader-spin { 100% { transform: rotate(360deg); } } .md .preloader { animation: md-preloader-outer 3300ms linear infinite; } @keyframes md-preloader-outer { 0% { transform: rotate(0); } 100% { transform: rotate(360deg); } } .md .preloader-inner { position: relative; display: block; width: 100%; height: 100%; animation: md-preloader-inner-rotate 5.25s cubic-bezier(0.35, 0, 0.25, 1) infinite; } .md .preloader-inner .preloader-inner-gap { position: absolute; width: 2px; left: 50%; margin-left: -1px; top: 0; bottom: 0; box-sizing: border-box; border-top: 4px solid var(--f7-preloader-color); } .md .preloader-inner .preloader-inner-left, .md .preloader-inner .preloader-inner-right { position: absolute; top: 0; height: 100%; width: 50%; overflow: hidden; } .md .preloader-inner .preloader-inner-half-circle { position: absolute; top: 0; height: 100%; width: 200%; box-sizing: border-box; border: 4px solid var(--f7-preloader-color); border-bottom-color: transparent !important; border-radius: 50%; animation-iteration-count: infinite; animation-duration: 1.3125s; animation-timing-function: cubic-bezier(0.35, 0, 0.25, 1); } .md .preloader-inner .preloader-inner-left { left: 0; } .md .preloader-inner .preloader-inner-left .preloader-inner-half-circle { left: 0; border-right-color: transparent !important; animation-name: md-preloader-left-rotate; } .md .preloader-inner .preloader-inner-right { right: 0; } .md .preloader-inner .preloader-inner-right .preloader-inner-half-circle { right: 0; border-left-color: transparent !important; animation-name: md-preloader-right-rotate; } .md .preloader.color-multi .preloader-inner-left .preloader-inner-half-circle { animation-name: md-preloader-left-rotate-multicolor; } .md .preloader.color-multi .preloader-inner-right .preloader-inner-half-circle { animation-name: md-preloader-right-rotate-multicolor; } @keyframes md-preloader-left-rotate { 0%, 100% { transform: rotate(130deg); } 50% { transform: rotate(-5deg); } } @keyframes md-preloader-right-rotate { 0%, 100% { transform: rotate(-130deg); } 50% { transform: rotate(5deg); } } @keyframes md-preloader-inner-rotate { 12.5% { transform: rotate(135deg); } 25% { transform: rotate(270deg); } 37.5% { transform: rotate(405deg); } 50% { transform: rotate(540deg); } 62.5% { transform: rotate(675deg); } 75% { transform: rotate(810deg); } 87.5% { transform: rotate(945deg); } 100% { transform: rotate(1080deg); } } @keyframes md-preloader-left-rotate-multicolor { 0%, 100% { border-left-color: #4285F4; transform: rotate(130deg); } 75% { border-left-color: #1B9A59; border-top-color: #1B9A59; } 50% { border-left-color: #F7C223; border-top-color: #F7C223; transform: rotate(-5deg); } 25% { border-left-color: #DE3E35; border-top-color: #DE3E35; } } @keyframes md-preloader-right-rotate-multicolor { 0%, 100% { border-right-color: #4285F4; transform: rotate(-130deg); } 75% { border-right-color: #1B9A59; border-top-color: #1B9A59; } 50% { border-right-color: #F7C223; border-top-color: #F7C223; transform: rotate(5deg); } 25% { border-top-color: #DE3E35; border-right-color: #DE3E35; } } /* === Progressbar === */ .ios { /* --f7-progressbar-progress-color: var(--f7-theme-color); */ --f7-progressbar-bg-color: #b6b6b6; --f7-progressbar-height: 2px; --f7-progressbar-border-radius: 2px; } .md { /* --f7-progressbar-progress-color: var(--f7-theme-color); --f7-progressbar-bg-color: rgba(var(--f7-theme-color-rgb), 0.5); */ --f7-progressbar-height: 4px; --f7-progressbar-border-radius: 0px; } .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 { background-color: var(--f7-progressbar-progress-color, var(--f7-theme-color)); width: 100%; height: 100%; position: absolute; left: 0; top: 0; transform: translate3d(-100%, 0, 0); transition-duration: 150ms; } .progressbar-infinite { z-index: 15000; } .progressbar-infinite:before, .progressbar-infinite:after { content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; transform-origin: left center; transform: translate3d(0, 0, 0); display: block; background-color: var(--f7-progressbar-progress-color, var(--f7-theme-color)); } .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, .framework7-root > .progressbar, body > .progressbar-infinite, .framework7-root > .progressbar-infinite { top: var(--f7-statusbar-height); } @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-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 === */ :root { --f7-sortable-handler-color: #c7c7cc; --f7-sortable-sorting-item-bg-color: rgba(255, 255, 255, 0.8); } :root .theme-dark, :root.theme-dark { --f7-sortable-sorting-item-bg-color: rgba(50, 50, 50, 0.8); } .ios { --f7-sortable-handler-width: 35px; --f7-sortable-sorting-item-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.6); } .md { --f7-sortable-handler-width: 42px; --f7-sortable-sorting-item-box-shadow: var(--f7-elevation-2); } .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; left: var(--f7-safe-area-left); } .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; -moz-font-feature-settings: "liga"; 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 .item-inner { transition-duration: 300ms; } .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-sorting li { transition-duration: 300ms; } .sortable-enabled .sortable-handler { pointer-events: auto; opacity: 1; } .sortable-enabled .sortable-handler:after { transform: translateX(0px); } .sortable-enabled .item-link .item-inner, .sortable-enabled .item-link .item-title-row { background-image: none !important; } .list.sortable-enabled .item-inner, .list.sortable-enabled .item-link .item-inner, .list.sortable-enabled .item-link.no-chevron .item-inner, .list.sortable-enabled.no-chevron .item-link .item-inner, .list.sortable-enabled .no-chevron .item-link .item-inner, .no-chevron .list.sortable-enabled .item-link .item-inner { 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-button-text-color: #fff; --f7-swipeout-button-bg-color: #c7c7cc; --f7-swipeout-delete-button-bg-color: #ff3b30; } .ios { --f7-swipeout-button-padding: 0 30px; } .md { --f7-swipeout-button-padding: 0 24px; } .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-actions-right a, .swipeout-transitioning .swipeout-actions-left a, .swipeout-transitioning .swipeout-overswipe { transition-duration: 300ms; transition-property: transform, left; } .swipeout-content { position: relative; z-index: 10; } .swipeout-overswipe { transition-duration: 200ms; transition-property: left; } .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 { color: var(--f7-swipeout-button-text-color); background: var(--f7-swipeout-button-bg-color); padding: var(--f7-swipeout-button-padding); display: flex; align-items: center; position: relative; left: 0; } .swipeout-actions-left > a:after, .swipeout-actions-right > a:after, .swipeout-actions-left > button:after, .swipeout-actions-right > button:after, .swipeout-actions-left > span:after, .swipeout-actions-right > span:after, .swipeout-actions-left > div:after, .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; } .swipeout-actions-left .swipeout-delete, .swipeout-actions-right .swipeout-delete { background: var(--f7-swipeout-delete-button-bg-color); } .swipeout-actions-right { right: 0%; transform: translateX(100%); } .swipeout-actions-right > a:after, .swipeout-actions-right > button:after, .swipeout-actions-right > span:after, .swipeout-actions-right > div:after { left: 100%; margin-left: -1px; } .swipeout-actions-left { left: 0%; transform: translateX(-100%); } .swipeout-actions-left > a:after, .swipeout-actions-left > button:after, .swipeout-actions-left > span:after, .swipeout-actions-left > div:after { right: 100%; margin-right: -1px; } .swipeout-actions-left [class*="color-"], .swipeout-actions-right [class*="color-"] { --f7-swipeout-button-bg-color: var(--f7-theme-color); } /* === Accordion === */ .accordion-item-toggle { cursor: pointer; transition-duration: 300ms; } .accordion-item-toggle.active-state { transition-duration: 300ms; } .accordion-item-toggle.active-state > .item-inner:after { background-color: transparent; } .accordion-item-toggle .item-inner { transition-duration: 300ms; transition-property: background-color; } .accordion-item-toggle .item-inner:after { transition-duration: 300ms; } .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-right: 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 { padding-left: calc(var(--f7-list-chevron-icon-area) + var(--f7-safe-area-left)); } .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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; position: absolute; top: 50%; width: 14px; height: 8px; margin-top: -4px; font-size: 20px; line-height: 14px; color: var(--f7-list-chevron-icon-color); pointer-events: none; left: calc(var(--f7-list-item-padding-horizontal) + var(--f7-safe-area-left)); content: 'chevron_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: 'chevron_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 { content: 'chevron_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-text-color: #000; --f7-contacts-list-title-height: 22px; --f7-contacts-list-title-bg-color: #f7f7f7; } .ios .theme-dark, .ios.theme-dark { --f7-contacts-list-title-text-color: #fff; --f7-contacts-list-title-bg-color: #232323; } .md { --f7-contacts-list-title-font-size: 20px; --f7-contacts-list-title-font-weight: 500; --f7-contacts-list-title-text-color: var(--f7-theme-color); --f7-contacts-list-title-height: 48px; --f7-contacts-list-title-bg-color: transparent; } .md .theme-dark, .md.theme-dark { --f7-contacts-list-title-text-color: #fff; } .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); font-weight: var(--f7-contacts-list-title-font-weight); font-size: var(--f7-contacts-list-title-font-size); color: var(--f7-contacts-list-title-text-color, var(--f7-theme-color)); line-height: var(--f7-contacts-list-title-height); height: var(--f7-contacts-list-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: 56px; } .md .contacts-list .list-group-title + li { margin-top: calc(var(--f7-contacts-list-title-height) * -1); } .md .contacts-list li:not(.list-group-title) { padding-right: 56px; } /* === 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-text-color: #fff; /* --f7-list-index-label-bg-color: var(--f7-theme-color); */ --f7-list-index-label-font-weight: 500; } .ios { --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; } .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; -ms-user-select: none; user-select: none; left: var(--f7-safe-area-left); } .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, .navbar ~ .list-index { top: var(--f7-navbar-height); } .navbar ~ .toolbar-top ~ .list-index, .ios .navbar ~ .toolbar-top-ios ~ .list-index, .md .navbar ~ .toolbar-top-md ~ .list-index { top: calc(var(--f7-navbar-height) + var(--f7-toolbar-height)); } .navbar ~ .toolbar-top.tabbar-labels ~ .list-index, .ios .navbar ~ .toolbar-top-ios.tabbar-labels ~ .list-index, .md .navbar ~ .toolbar-top-md.tabbar-labels ~ .list-index { top: calc(var(--f7-navbar-height) + var(--f7-tabbar-labels-height)); } .navbar ~ .subnavbar ~ .list-index, .page-with-subnavbar .navbar ~ .list-index { top: calc(var(--f7-navbar-height) + var(--f7-subnvabar-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-labels ~ .page > .list-index, .ios .toolbar-bottom-ios.tabbar-labels ~ .page > .list-index, .md .toolbar-bottom-md.tabbar-labels ~ .page > .list-index, .toolbar-bottom.tabbar-labels ~ * .page > .list-index, .ios .toolbar-bottom-ios.tabbar-labels ~ * .page > .list-index, .md .toolbar-bottom-md.tabbar-labels ~ * .page > .list-index, .toolbar-bottom.tabbar-labels ~ .list-index, .ios .toolbar-bottom-ios.tabbar-labels ~ .list-index, .md .toolbar-bottom-md.tabbar-labels ~ .list-index { bottom: calc(var(--f7-tabbar-labels-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-horizontal-date-height: 34px; --f7-timeline-year-height: 24px; --f7-timeline-month-height: 24px; --f7-timeline-item-inner-bg-color: #fff; } :root .theme-dark, :root.theme-dark { --f7-timeline-item-inner-bg-color: #1c1c1d; } .ios { --f7-timeline-padding-horizontal: 15px; --f7-timeline-margin-vertical: 35px; --f7-timeline-divider-margin-horizontal: 15px; --f7-timeline-inner-block-margin-vertical: 15px; --f7-timeline-item-inner-border-radius: 7px; --f7-timeline-item-inner-box-shadow: none; --f7-timeline-item-time-font-size: 13px; --f7-timeline-item-time-text-color: #6d6d72; --f7-timeline-item-title-font-size: 17px; --f7-timeline-item-title-font-weight: 600; --f7-timeline-item-subtitle-font-size: 15px; --f7-timeline-item-subtitle-font-weight: inherit; --f7-timeline-horizontal-item-padding: 10px; --f7-timeline-horizontal-item-border-color: #c4c4c4; --f7-timeline-horizontal-item-date-border-color: #c4c4c4; --f7-timeline-horizontal-item-date-shadow-image: none; } .ios .theme-dark, .ios.theme-dark { --f7-timeline-item-time-text-color: #8E8E93; } .md { --f7-timeline-padding-horizontal: 16px; --f7-timeline-margin-vertical: 32px; --f7-timeline-divider-margin-horizontal: 16px; --f7-timeline-inner-block-margin-vertical: 16px; --f7-timeline-item-inner-border-radius: 4px; --f7-timeline-item-inner-box-shadow: var(--f7-elevation-1); --f7-timeline-item-time-font-size: 13px; --f7-timeline-item-time-text-color: rgba(0, 0, 0, 0.54); --f7-timeline-item-title-font-size: 16px; --f7-timeline-item-title-font-weight: 400; --f7-timeline-item-subtitle-font-size: inherit; --f7-timeline-item-subtitle-font-weight: inherit; --f7-timeline-horizontal-item-padding: 12px; --f7-timeline-horizontal-item-border-color: rgba(0, 0, 0, 0.12); --f7-timeline-horizontal-item-date-border-color: transparent; --f7-timeline-horizontal-item-date-shadow-image: var(--f7-bars-shadow-bottom-image); } .md .theme-dark, .md.theme-dark { --f7-timeline-item-time-text-color: rgba(255, 255, 255, 0.54); } .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); box-shadow: var(--f7-timeline-item-inner-box-shadow); } .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 { display: none !important; } .timeline-item-inner .block-strong:after { display: none !important; } .timeline-item-inner .list ul:before { display: none !important; } .timeline-item-inner .list ul:after { display: none !important; } .timeline-item-divider { width: 1px; position: relative; width: 10px; height: 10px; background: #bbb; 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); } .timeline-item-subtitle { font-size: var(--f7-timeline-item-subtitle-font-size); font-weight: var(--f7-timeline-item-subtitle-font-weight); } .timeline-sides .timeline-item-right, .timeline-sides .timeline-item { margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px); margin-left: 0; } .timeline-sides .timeline-item-right .timeline-item-date, .timeline-sides .timeline-item .timeline-item-date { text-align: left; } .timeline-sides .timeline-item-left, .timeline-sides .timeline-item:not(.timeline-item-right):nth-child(2n) { flex-direction: row-reverse; margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px); margin-right: 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: right; } @media (min-width: 768px) { .tablet-sides .timeline-item-right, .tablet-sides .timeline-item { margin-right: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px); margin-left: 0; } .tablet-sides .timeline-item-right .timeline-item-date, .tablet-sides .timeline-item .timeline-item-date { text-align: left; } .tablet-sides .timeline-item-left, .tablet-sides .timeline-item:not(.timeline-item-right):nth-child(2n) { flex-direction: row-reverse; margin-left: calc(50% - (var(--f7-timeline-divider-margin-horizontal) * 2 + 10px) / 2 - 50px); margin-right: 0; } .tablet-sides .timeline-item-left .timeline-item-date, .tablet-sides .timeline-item:not(.timeline-item-right):nth-child(2n) .timeline-item-date { text-align: right; } } .timeline-horizontal { height: 100%; display: flex; padding: 0; margin: 0; position: relative; padding-left: var(--f7-safe-area-left); padding-right: 0; } .timeline-horizontal .timeline-item { display: block; width: 33.33333333vw; margin: 0; padding: 0; flex-shrink: 0; position: relative; height: 100%; padding-top: var(--f7-timeline-horizontal-date-height) !important; padding-bottom: var(--f7-timeline-horizontal-item-padding); } .timeline-horizontal .timeline-item:after { content: ''; position: absolute; background-color: var(--f7-timeline-horizontal-item-border-color); display: block; z-index: 15; top: 0; right: 0; bottom: auto; left: auto; width: 1px; height: 100%; transform-origin: 100% 50%; transform: scaleX(calc(1 / var(--f7-device-pixel-ratio))); } .timeline-horizontal .timeline-item-date { padding: 0px var(--f7-timeline-horizontal-item-padding); width: auto; text-align: left; line-height: var(--f7-timeline-horizontal-date-height); position: absolute; left: 0; top: 0; width: 100%; height: var(--f7-timeline-horizontal-date-height); background-color: var(--f7-bars-bg-color, var(--f7-theme-color)); color: var(--f7-bars-text-color); text-align: right; } .timeline-horizontal .timeline-item-date:after { content: ''; position: absolute; background-color: var(--f7-timeline-horizontal-item-date-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))); } .timeline-horizontal .timeline-item-date:before { content: ''; position: absolute; right: 0; width: 100%; top: 100%; bottom: auto; height: 8px; pointer-events: none; background: var(--f7-timeline-horizontal-item-date-shadow-image); } .timeline-horizontal.no-shadow .timeline-item-date:before { display: none; } .timeline-horizontal .timeline-item-content { padding: var(--f7-timeline-horizontal-item-padding); height: calc(100% - var(--f7-timeline-horizontal-item-padding)); will-change: scroll-position; overflow: auto; -webkit-overflow-scrolling: touch; margin: 0; } .timeline-horizontal .timeline-item-divider { display: none; } .timeline-horizontal > .timeline-item:last-child:after, .timeline-horizontal .timeline-month:last-child .timeline-item:last-child:after { display: none !important; } .timeline-horizontal.col-5 .timeline-item { width: 5vw; } .timeline-horizontal.col-10 .timeline-item { width: 10vw; } .timeline-horizontal.col-15 .timeline-item { width: 15vw; } .timeline-horizontal.col-20 .timeline-item { width: 20vw; } .timeline-horizontal.col-25 .timeline-item { width: 25vw; } .timeline-horizontal.col-30 .timeline-item { width: 30vw; } .timeline-horizontal.col-33 .timeline-item { width: 33.333333333333336vw; } .timeline-horizontal.col-35 .timeline-item { width: 35vw; } .timeline-horizontal.col-40 .timeline-item { width: 40vw; } .timeline-horizontal.col-45 .timeline-item { width: 45vw; } .timeline-horizontal.col-50 .timeline-item { width: 50vw; } .timeline-horizontal.col-55 .timeline-item { width: 55vw; } .timeline-horizontal.col-60 .timeline-item { width: 60vw; } .timeline-horizontal.col-65 .timeline-item { width: 65vw; } .timeline-horizontal.col-66 .timeline-item { width: 66.66666666666666vw; } .timeline-horizontal.col-70 .timeline-item { width: 70vw; } .timeline-horizontal.col-75 .timeline-item { width: 75vw; } .timeline-horizontal.col-80 .timeline-item { width: 80vw; } .timeline-horizontal.col-85 .timeline-item { width: 85vw; } .timeline-horizontal.col-90 .timeline-item { width: 90vw; } .timeline-horizontal.col-95 .timeline-item { width: 95vw; } .timeline-horizontal.col-100 .timeline-item { width: 100vw; } @media (min-width: 768px) { .timeline-horizontal.tablet-5 .timeline-item { width: 5vw; } .timeline-horizontal.tablet-10 .timeline-item { width: 10vw; } .timeline-horizontal.tablet-15 .timeline-item { width: 15vw; } .timeline-horizontal.tablet-20 .timeline-item { width: 20vw; } .timeline-horizontal.tablet-25 .timeline-item { width: 25vw; } .timeline-horizontal.tablet-30 .timeline-item { width: 30vw; } .timeline-horizontal.tablet-33 .timeline-item { width: 33.333333333333336vw; } .timeline-horizontal.tablet-35 .timeline-item { width: 35vw; } .timeline-horizontal.tablet-40 .timeline-item { width: 40vw; } .timeline-horizontal.tablet-45 .timeline-item { width: 45vw; } .timeline-horizontal.tablet-50 .timeline-item { width: 50vw; } .timeline-horizontal.tablet-55 .timeline-item { width: 55vw; } .timeline-horizontal.tablet-60 .timeline-item { width: 60vw; } .timeline-horizontal.tablet-65 .timeline-item { width: 65vw; } .timeline-horizontal.tablet-66 .timeline-item { width: 66.66666666666666vw; } .timeline-horizontal.tablet-70 .timeline-item { width: 70vw; } .timeline-horizontal.tablet-75 .timeline-item { width: 75vw; } .timeline-horizontal.tablet-80 .timeline-item { width: 80vw; } .timeline-horizontal.tablet-85 .timeline-item { width: 85vw; } .timeline-horizontal.tablet-90 .timeline-item { width: 90vw; } .timeline-horizontal.tablet-95 .timeline-item { width: 95vw; } .timeline-horizontal.tablet-100 .timeline-item { width: 100vw; } } .timeline-year { padding-top: var(--f7-timeline-year-height); } .timeline-year:after { content: ''; position: absolute; background-color: var(--f7-timeline-horizontal-item-border-color); display: block; z-index: 15; top: 0; right: 0; bottom: auto; left: auto; width: 1px; height: 100%; transform-origin: 100% 50%; transform: scaleX(calc(1 / var(--f7-device-pixel-ratio))); } .timeline-year:last-child:after { display: none !important; } .timeline-month { padding-top: var(--f7-timeline-month-height); } .timeline-month .timeline-item:before { content: ''; position: absolute; background-color: var(--f7-timeline-horizontal-item-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))); } .timeline-year, .timeline-month { display: flex; flex-shrink: 0; position: relative; box-sizing: border-box; height: 100%; } .timeline-year-title { line-height: var(--f7-timeline-year-height); height: var(--f7-timeline-year-height); } .timeline-month-title { line-height: var(--f7-timeline-month-height); height: var(--f7-timeline-month-height); } .timeline-year-title, .timeline-month-title { position: absolute; left: 0; top: 0; width: 100%; box-sizing: border-box; padding: 0 var(--f7-timeline-horizontal-item-padding); background-color: var(--f7-bars-bg-color, var(--f7-theme-color)); color: var(--f7-bars-text-color); } .timeline-year-title span, .timeline-month-title span { display: inline-block; position: -webkit-sticky; position: sticky; right: calc(var(--f7-timeline-horizontal-item-padding) + var(--f7-safe-area-right)); } .timeline-year-title { font-size: 16px; } .timeline-month-title span { margin-top: -2px; } .timeline-year:first-child .timeline-year-title, .timeline-year:first-child .timeline-month:first-child .timeline-month-title, .timeline-year:first-child .timeline-year-title + .timeline-month .timeline-month-title { left: calc(var(--f7-safe-area-left) * -1); right: 0; width: auto; } .timeline-horizontal .timeline-item:first-child, .timeline-year:first-child .timeline-month:first-child .timeline-item:first-child, .timeline-year:first-child .timeline-year-title + .timeline-month .timeline-item:first-child, .timeline-year:first-child .timeline-year-title + .timeline-month .timeline-month-title + .timeline-item { overflow: visible; } .timeline-horizontal .timeline-item:first-child .timeline-item-date, .timeline-year:first-child .timeline-month:first-child .timeline-item:first-child .timeline-item-date, .timeline-year:first-child .timeline-year-title + .timeline-month .timeline-item:first-child .timeline-item-date, .timeline-year:first-child .timeline-year-title + .timeline-month .timeline-month-title + .timeline-item .timeline-item-date { width: auto; padding-left: calc(var(--f7-timeline-horizontal-item-padding) + var(--f7-safe-area-left)); left: calc(0px - var(--f7-safe-area-left)); right: 0; } .timeline-year:last-child .timeline-year-title, .timeline-year:last-child .timeline-month:last-child .timeline-month-title { width: auto; right: calc(0px - var(--f7-safe-area-right)); } .timeline-horizontal .timeline-item:last-child, .timeline-year:last-child .timeline-month:last-child .timeline-item:last-child { overflow: visible; } .timeline-horizontal .timeline-item:last-child .timeline-item-date, .timeline-year:last-child .timeline-month:last-child .timeline-item:last-child .timeline-item-date { width: auto; right: calc(0px - var(--f7-safe-area-right)); left: 0; } /* === Timeline iOS === */ .ios .block-strong .timeline-item-inner { border-radius: 3px; border: 1px solid rgba(0, 0, 0, 0.1); } .ios .timeline-year-title span { margin-top: 3px; } /* === Timeline MD === */ .md .timeline-year-title span { margin-top: 2px; } /* === 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: 300ms; } .tabs-swipeable-wrap { height: 100%; } .tabs-swipeable-wrap > .tabs { height: 100%; } .tabs-swipeable-wrap > .tabs > .tab { display: block; } .page > .tabs { height: 100%; } /* === Panels === */ :root { --f7-panel-width: 260px; --f7-panel-bg-color: #fff; } .ios { --f7-panel-backdrop-bg-color: rgba(0, 0, 0, 0); --f7-panel-transition-duration: 400ms; --f7-panel-shadow: transparent; } .md { --f7-panel-backdrop-bg-color: rgba(0, 0, 0, 0.2); --f7-panel-transition-duration: 300ms; --f7-panel-shadow: rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0) 100%; } .panel-backdrop { position: absolute; left: 0; top: var(--f7-statusbar-height); width: 100%; height: calc(100% - var(--f7-statusbar-height)); opacity: 0; z-index: 5999; display: none; transform: translate3d(0, 0, 0); background-color: var(--f7-panel-backdrop-bg-color); transition-duration: var(--f7-panel-transition-duration); will-change: transform, opacity; } .panel-backdrop.not-animated { transition-duration: 0ms !important; } .panel { z-index: 1000; display: none; box-sizing: border-box; position: absolute; top: var(--f7-statusbar-height); height: calc(100% - var(--f7-statusbar-height)); transform: translate3d(0, 0, 0); width: var(--f7-panel-width); background-color: var(--f7-panel-bg-color); overflow: visible; will-change: transform; } .panel:after { pointer-events: none; opacity: 0; z-index: 5999; position: absolute; content: ''; top: 0; width: 20px; height: 100%; } .panel, .panel:after { 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-cover { z-index: 6000; } .panel-left { left: 0; } .panel-left.panel-cover { transform: translate3d(-100%, 0, 0); } .panel-left.panel-cover:after { left: 100%; background: linear-gradient(to right, var(--f7-panel-shadow)); } html.with-panel-left-cover .panel-left.panel-cover:after { opacity: 1; } .panel-left.panel-reveal:after { right: 100%; background: linear-gradient(to left, var(--f7-panel-shadow)); } html.with-panel-left-reveal .panel-left.panel-reveal:after { opacity: 1; transform: translate3d(var(--f7-panel-width), 0, 0); } .panel-right { right: 0; } .panel-right.panel-cover { transform: translate3d(100%, 0, 0); } .panel-right.panel-cover:after { right: 100%; background: linear-gradient(to left, var(--f7-panel-shadow)); } html.with-panel-right-cover .panel-right.panel-cover:after { opacity: 1; } .panel-right.panel-reveal:after { left: 100%; background: linear-gradient(to right, var(--f7-panel-shadow)); } html.with-panel-right-reveal .panel-right.panel-reveal:after { opacity: 1; transform: translate3d(calc(-1 * (var(--f7-panel-width))), 0, 0); } .panel-visible-by-breakpoint { display: block; transform: translate3d(0, 0, 0) !important; } .panel-visible-by-breakpoint:after { display: none; } .panel-visible-by-breakpoint.panel-cover { z-index: 5900; } html.with-panel-left-reveal .views, html.with-panel-right-reveal .views, html.with-panel-transitioning .views, html.with-panel-left-reveal .framework7-root > .view, html.with-panel-right-reveal .framework7-root > .view, html.with-panel-transitioning .framework7-root > .view { transition-duration: var(--f7-panel-transition-duration); transition-property: transform; } html.with-panel-left-reveal .panel-backdrop, html.with-panel-right-reveal .panel-backdrop, html.with-panel-transitioning .panel-backdrop { background: rgba(0, 0, 0, 0); display: block; opacity: 0; } 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-cover .panel-backdrop, html.with-panel-right-cover .panel-backdrop { display: block; opacity: 1; } html.with-panel-left-reveal .views, html.with-panel-left-reveal .framework7-root > .view, html.with-panel-left-reveal .panel-backdrop { transform: translate3d(var(--f7-panel-width), 0, 0); } html.with-panel-right-reveal .views, html.with-panel-right-reveal .framework7-root > .view, html.with-panel-right-reveal .panel-backdrop { transform: translate3d(calc(-1 * var(--f7-panel-width)), 0, 0); } html.with-panel-left-cover .panel-left { transform: translate3d(0px, 0, 0); } html.with-panel-right-cover .panel-right { transform: translate3d(0px, 0, 0); } /* === Card === */ :root { --f7-card-bg-color: #fff; --f7-card-outline-border-color: rgba(0, 0, 0, 0.12); --f7-card-border-radius: 4px; --f7-card-font-size: inherit; --f7-card-header-text-color: inherit; --f7-card-header-font-weight: 400; --f7-card-header-border-color: #e1e1e1; --f7-card-footer-border-color: #e1e1e1; --f7-card-footer-font-weight: 400; --f7-card-footer-font-size: inherit; --f7-card-expandable-bg-color: #fff; --f7-card-expandable-font-size: 16px; --f7-card-expandable-tablet-width: 670px; --f7-card-expandable-tablet-height: 670px; } :root .theme-dark, :root.theme-dark { --f7-card-bg-color: #1c1c1d; --f7-card-outline-border-color: #282829; --f7-card-header-border-color: #282829; --f7-card-footer-border-color: #282829; --f7-card-footer-text-color: #8E8E93; } .ios { --f7-card-margin-horizontal: 10px; --f7-card-margin-vertical: 10px; --f7-card-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2); --f7-card-content-padding-horizontal: 15px; --f7-card-content-padding-vertical: 15px; --f7-card-header-font-size: 17px; --f7-card-header-padding-vertical: 10px; --f7-card-header-padding-horizontal: 15px; --f7-card-header-min-height: 44px; --f7-card-footer-text-color: #6d6d72; --f7-card-footer-padding-vertical: 10px; --f7-card-footer-padding-horizontal: 15px; --f7-card-footer-min-height: 44px; --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: 15px; --f7-card-expandable-tablet-border-radius: 5px; --f7-card-expandable-header-font-size: 27px; --f7-card-expandable-header-font-weight: bold; } .md { --f7-card-margin-horizontal: 8px; --f7-card-margin-vertical: 8px; --f7-card-box-shadow: var(--f7-elevation-1); --f7-card-content-padding-horizontal: 16px; --f7-card-content-padding-vertical: 16px; --f7-card-header-font-size: 16px; --f7-card-header-padding-vertical: 4px; --f7-card-header-padding-horizontal: 16px; --f7-card-header-min-height: 48px; --f7-card-footer-text-color: #757575; --f7-card-footer-padding-vertical: 4px; --f7-card-footer-padding-horizontal: 16px; --f7-card-footer-min-height: 48px; --f7-card-expandable-margin-horizontal: 12px; --f7-card-expandable-margin-vertical: 24px; --f7-card-expandable-box-shadow: var(--f7-elevation-10); --f7-card-expandable-border-radius: 8px; --f7-card-expandable-tablet-border-radius: 4px; --f7-card-expandable-header-font-size: 24px; --f7-card-expandable-header-font-weight: 500; } .cards-list > ul:before, .card .list > ul:before { display: none !important; } .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)); box-shadow: var(--f7-card-box-shadow); } .card .list, .card .block { margin: 0; } .row:not(.no-gap) .col > .card { margin-left: 0; margin-right: 0; } .card.no-shadow { box-shadow: none; } .card-outline, .ios .card-outline-ios, .md .card-outline-md { box-shadow: none; border: 1px solid var(--f7-card-outline-border-color); } .card-outline.no-border, .ios .card-outline-ios.no-border, .md .card-outline-md.no-border, .card-outline.no-hairlines, .ios .card-outline-ios.no-hairlines, .md .card-outline-md.no-hairlines { border: none; } .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-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 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.icon-only, .card-footer a.icon-only { 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-header:after { content: ''; position: absolute; background-color: var(--f7-card-header-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))); } .card-header.no-hairline:after { display: none !important; } .card-footer { border-radius: 0 0 var(--f7-card-border-radius) var(--f7-card-border-radius); } .card-footer:before { content: ''; position: absolute; background-color: var(--f7-card-footer-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))); } .card-footer.no-hairline:before { display: none !important; } .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); box-shadow: var(--f7-card-expandable-box-shadow); font-size: var(--f7-card-expandable-font-size); } .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); } .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; right: 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: 100; } .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-expandable .card-header:after { display: none !important; } .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: 99; 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; opacity: 1; } .card-backdrop-in { animation: card-backdrop-blur-in 400ms forwards; } .card-backdrop-out { animation: card-backdrop-blur-out 400ms forwards; } } @keyframes card-backdrop-fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes card-backdrop-fade-out { from { opacity: 1; } to { opacity: 0; } } @keyframes card-backdrop-blur-in { from { -webkit-backdrop-filter: blur(0px); backdrop-filter: blur(0px); } to { -webkit-backdrop-filter: blur(15px); backdrop-filter: blur(15px); } } @keyframes card-backdrop-blur-out { from { -webkit-backdrop-filter: blur(15px); backdrop-filter: blur(15px); } to { -webkit-backdrop-filter: blur(0px); backdrop-filter: blur(0px); } } /* === Chips === */ :root { --f7-chip-bg-color: rgba(0, 0, 0, 0.12); --f7-chip-font-size: 13px; --f7-chip-font-weight: normal; --f7-chip-outline-border-color: rgba(0, 0, 0, 0.12); --f7-chip-media-font-size: 16px; --f7-chip-delete-button-color: #000; } :root .theme-dark, :root.theme-dark { --f7-chip-delete-button-color: #fff; --f7-chip-bg-color: #333; --f7-chip-outline-border-color: #333; } .ios { --f7-chip-text-color: #000; --f7-chip-height: 24px; --f7-chip-padding-horizontal: 10px; } .ios .theme-dark, .ios.theme-dark { --f7-chip-text-color: #fff; } .md { --f7-chip-text-color: rgba(0, 0, 0, 0.87); --f7-chip-height: 32px; --f7-chip-padding-horizontal: 12px; } .md .theme-dark, .md.theme-dark { --f7-chip-text-color: rgba(255, 255, 255, 0.87); } .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-height); position: relative; } .chip-media { border-radius: 50%; flex-shrink: 0; display: flex; align-items: center; justify-content: center; height: var(--f7-chip-height); width: var(--f7-chip-height); border-radius: var(--f7-chip-height); text-align: center; line-height: var(--f7-chip-height); box-sizing: border-box; color: #fff; font-size: var(--f7-chip-media-font-size); vertical-align: middle; margin-right: calc(-1 * var(--f7-chip-padding-horizontal)); } .chip-media i.icon { font-size: calc(var(--f7-chip-height) - 8px); height: calc(var(--f7-chip-height) - 8px); } .chip-media img { max-width: 100%; max-height: 100%; width: auto; height: auto; border-radius: 50%; display: block; } .chip-media + .chip-label { margin-right: 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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; font-size: 20px; content: 'delete_round_ios'; 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); background: none; } .chip[class*="color-"] { --f7-chip-bg-color: var(--f7-theme-color); --f7-chip-text-color: #fff; } .chip-outline[class*="color-"], .ios .chip-outline-ios[class*="color-"], .md .chip-outline-md[class*="color-"] { --f7-chip-outline-border-color: var(--f7-theme-color); --f7-chip-text-color: var(--f7-theme-color); } .ios .chip-delete { margin-left: calc(-1 * var(--f7-chip-padding-horizontal)); } .ios .chip-delete:after { font-size: 10px; } .md .chip-label + .chip-delete { margin-right: 4px; } .md .chip-delete { margin-left: calc(-1 * var(--f7-chip-padding-horizontal) + 4px); } .md .chip-delete:after { font-size: 12px; } /* === Form === */ /* === Input === */ :root { --f7-label-font-size: 12px; --f7-label-font-weight: 400; --f7-label-line-height: 1.2; --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; } .ios { --f7-input-height: 44px; --f7-input-text-color: #000000; --f7-input-font-size: 17px; --f7-input-placeholder-color: #a9a9a9; /* --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-floating-label-scale: calc(17 / 12); --f7-inline-label-font-size: 17px; --f7-inline-label-line-height: 1.4; --f7-input-info-text-color: #8e8e93; --f7-input-clear-button-size: 14px; --f7-input-clear-button-color: #8e8e93; } .ios .theme-dark, .ios.theme-dark { --f7-input-text-color: #fff; } .md { --f7-input-height: 36px; --f7-input-text-color: #212121; --f7-input-font-size: 16px; --f7-input-placeholder-color: rgba(0, 0, 0, 0.35); /* --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-text-color: rgba(0, 0, 0, 0.65); /* --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-inline-label-font-size: 16px; --f7-inline-label-line-height: 1.5; --f7-input-info-text-color: rgba(0, 0, 0, 0.45); --f7-input-clear-button-size: 24px; --f7-input-clear-button-color: #aaa; } .md .theme-dark, .md.theme-dark { --f7-input-text-color: rgba(255, 255, 255, 0.87); --f7-input-placeholder-color: rgba(255, 255, 255, 0.35); --f7-label-text-color: rgba(255, 255, 255, 0.54); --f7-input-info-text-color: rgba(255, 255, 255, 0.35); } input[type="text"], input[type="password"], input[type="search"], input[type="email"], input[type="tel"], input[type="url"], input[type="date"], 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; } .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="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); } .list input[type="text"]::-webkit-input-placeholder, .list input[type="password"]::-webkit-input-placeholder, .list input[type="search"]::-webkit-input-placeholder, .list input[type="email"]::-webkit-input-placeholder, .list input[type="tel"]::-webkit-input-placeholder, .list input[type="url"]::-webkit-input-placeholder, .list input[type="date"]::-webkit-input-placeholder, .list input[type="datetime-local"]::-webkit-input-placeholder, .list input[type="time"]::-webkit-input-placeholder, .list input[type="number"]::-webkit-input-placeholder, .list select::-webkit-input-placeholder { color: var(--f7-input-placeholder-color); } .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="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"]::-ms-input-placeholder, .list input[type="password"]::-ms-input-placeholder, .list input[type="search"]::-ms-input-placeholder, .list input[type="email"]::-ms-input-placeholder, .list input[type="tel"]::-ms-input-placeholder, .list input[type="url"]::-ms-input-placeholder, .list input[type="date"]::-ms-input-placeholder, .list input[type="datetime-local"]::-ms-input-placeholder, .list input[type="time"]::-ms-input-placeholder, .list input[type="number"]::-ms-input-placeholder, .list select::-ms-input-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="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: 100px; } .list textarea::-webkit-input-placeholder { color: var(--f7-input-placeholder-color); } .list textarea::-moz-placeholder { color: var(--f7-input-placeholder-color); } .list textarea::-ms-input-placeholder { color: var(--f7-input-placeholder-color); } .list textarea::placeholder { color: var(--f7-input-placeholder-color); } .list textarea.resizable { height: var(--f7-input-height); } .list input[type="datetime-local"] { max-width: 50vw; } .list input[type="date"], .list input[type="datetime-local"] { line-height: var(--f7-input-height); } .list input[type="date"], .list input[type="datetime-local"] { text-align: right; flex-direction: row-reverse; width: auto; } .list .item-label, .list .item-floating-label { width: 100%; 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-line-height); color: var(--f7-label-text-color); transition-duration: 200ms; transition-property: transform, color; } .list .item-floating-label { transform: scale(var(--f7-floating-label-scale)) translateY(calc(var(--f7-input-height) / 2)); color: var(--f7-input-placeholder-color); width: auto; max-width: calc(100% / var(--f7-floating-label-scale)); pointer-events: none; transform-origin: right bottom; } .list .item-floating-label ~ .item-input-wrap input::-webkit-input-placeholder, .list .item-floating-label ~ .item-input-wrap textarea::-webkit-input-placeholder { opacity: 0; transition-duration: 100ms; } .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::-ms-input-placeholder, .list .item-floating-label ~ .item-input-wrap textarea::-ms-input-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::-webkit-input-placeholder, .list .item-floating-label ~ .item-input-wrap textarea.input-focused::-webkit-input-placeholder { opacity: 1; transition-duration: 300ms; } .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::-ms-input-placeholder, .list .item-floating-label ~ .item-input-wrap textarea.input-focused::-ms-input-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); } .list .item-input-wrap { width: 100%; flex-shrink: 1; position: relative; } .item-input .item-inner { display: block; } .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; } .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; } .inline-labels .item-inner, .inline-label .item-inner { display: flex; } .inline-labels .item-label, .inline-label .item-label, .inline-labels .item-floating-label, .inline-label .item-floating-label { align-self: flex-start; width: 35%; font-size: var(--f7-inline-label-font-size); line-height: var(--f7-inline-label-line-height); } .inline-labels .item-label + .item-input-wrap, .inline-label .item-label + .item-input-wrap, .inline-labels .item-floating-label + .item-input-wrap, .inline-label .item-floating-label + .item-input-wrap { margin-right: 8px; } .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); left: 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; -moz-font-feature-settings: "liga"; 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-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; left: 6px; } .input-dropdown-wrap select, .input-dropdown select, .input-dropdown-wrap input, .input-dropdown input, .input-dropdown-wrap textarea, .input-dropdown textarea { padding-right: 20px; } .ios .list textarea { padding-top: 11px; padding-bottom: 11px; } .ios .item-label + .item-input-wrap, .ios .item-floating-label + .item-input-wrap { margin-top: 0; } .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 .inline-labels .item-label, .ios .inline-label .item-label, .ios .inline-labels .item-floating-label, .ios .inline-label .item-floating-label { padding-top: 3px; } .ios .inline-labels .item-label + .item-input-wrap, .ios .inline-label .item-label + .item-input-wrap, .ios .inline-labels .item-floating-label + .item-input-wrap, .ios .inline-label .item-floating-label + .item-input-wrap { margin-top: calc(-1 * var(--f7-list-item-padding-vertical)); } .ios .inline-labels .item-input-wrap, .ios .inline-label .item-input-wrap { margin-top: calc(-1 * var(--f7-list-item-padding-vertical)); } .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; } .md .list textarea { padding-top: 7px; padding-bottom: 7px; } .md .item-input-wrap:after, .md .input: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 .item-input-wrap:after, .md .input:after { transition-duration: 200ms; } .md .item-input-wrap { min-height: var(--f7-input-height); } .md .item-input .item-media { align-self: flex-end; } .md .item-input .item-inner:after { display: none !important; } .md .inline-labels .item-media, .md .inline-label .item-media { align-self: flex-start; padding-top: 14px; } .md .inline-labels .item-label, .md .inline-label .item-label, .md .inline-labels .item-floating-label, .md .inline-label .item-floating-label { padding-top: 7px; } .md .item-input-with-error-message, .md .item-input-with-info, .md .input-with-error-message, .md .input-with-info { padding-bottom: 20px; } .md .item-input-error-message, .md .item-input-info, .md .input-error-message, .md .input-info { position: absolute; top: 100%; margin-top: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 100%; right: 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 .item-input-wrap:after, .md .input-focused:after { background: var(--f7-input-focused-border-color, var(--f7-theme-color)); } .md .item-input-invalid .item-input-wrap:after, .md .item-input-focused .item-input-wrap:after, .md .input-invalid:after, .md .input-focused:after { transform: scaleY(2) !important; } .md .item-input-invalid .item-input-wrap:after, .md .input-invalid: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: calc(var(--f7-input-clear-button-size) / (24 / 20)); content: 'delete_round_md'; line-height: 1.2; } .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; } .ios { --f7-checkbox-size: 22px; --f7-checkbox-border-radius: 50%; --f7-checkbox-border-width: 1px; --f7-checkbox-inactive-color: #c7c7cc; --f7-checkbox-extra-margin: 0px; } .md { --f7-checkbox-size: 18px; --f7-checkbox-border-radius: 2px; --f7-checkbox-border-width: 2px; --f7-checkbox-inactive-color: #6d6d6d; --f7-checkbox-extra-margin: 22px; } .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; -moz-font-feature-settings: "liga"; 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); left: calc(0px - var(--f7-checkbox-border-width)); top: calc(0px - var(--f7-checkbox-border-width)); opacity: 0; color: var(--f7-checkbox-icon-color); position: relative; } label.item-checkbox input[type="checkbox"]:checked ~ .icon-checkbox, label.item-checkbox input[type="checkbox"]:checked ~ * .icon-checkbox, .checkbox input[type="checkbox"]:checked ~ 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 { opacity: 1; } 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-left: 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; pointer-events: none; opacity: 0.55 !important; pointer-events: none !important; } .ios .icon-checkbox:after, .ios .checkbox i:after { content: 'checkbox_ios'; font-size: 21px; } .ios label.item-checkbox.active-state { transition-duration: 0ms; } .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%; } .ios { --f7-radio-size: 22px; --f7-radio-border-width: 1px; --f7-radio-inactive-color: #c7c7cc; --f7-radio-extra-margin: 0px; } .md { --f7-radio-size: 20px; --f7-radio-border-width: 2px; --f7-radio-inactive-color: #6d6d6d; --f7-radio-extra-margin: 22px; } .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 .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; pointer-events: none; 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; -moz-font-feature-settings: "liga"; 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 input[type="radio"] ~ .icon-radio { position: absolute; top: 50%; margin-top: -11px; left: calc(var(--f7-safe-area-left) + 10px); } .ios label.item-radio .item-inner { padding-left: calc(var(--f7-safe-area-left) + 35px); } .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 > .icon-radio { margin-left: calc(var(--f7-list-item-media-margin) + var(--f7-checkbox-extra-margin)); } /* === Toggle === */ .ios { --f7-toggle-handle-color: #fff; --f7-toggle-width: 52px; --f7-toggle-height: 32px; --f7-toggle-border-color-ios: #e5e5e5; --f7-toggle-inactive-color: #fff; } .ios .theme-dark, .ios.theme-dark { --f7-toggle-border-color-ios: #555; --f7-toggle-inactive-color: #222; } .md { --f7-toggle-handle-color: #fff; --f7-toggle-width: 36px; --f7-toggle-height: 14px; --f7-toggle-inactive-color: #b0afaf; } .md .theme-dark, .md.theme-dark { --f7-toggle-inactive-color: #555; } .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; -ms-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: ''; will-change: transform; } .toggle-icon:after { background: var(--f7-toggle-handle-color); position: absolute; z-index: 2; transform: translateX(0px); transition-duration: 300ms; } .ios .toggle input[type="checkbox"]:checked + .toggle-icon { background: var(--f7-toggle-active-color, var(--f7-theme-color)); } .ios .toggle input[type="checkbox"]:checked + .toggle-icon:before { transform: scale(0); } .ios .toggle input[type="checkbox"]:checked + .toggle-icon:after { transform: translateX(calc(-1 * (var(--f7-toggle-width) - var(--f7-toggle-height)))); } .ios .toggle-icon { background: var(--f7-toggle-border-color-ios); } .ios .toggle-icon:before { position: absolute; right: 2px; top: 2px; width: calc(var(--f7-toggle-width) - 4px); height: calc(var(--f7-toggle-height) - 4px); border-radius: var(--f7-toggle-height); box-sizing: border-box; background: var(--f7-toggle-inactive-color); z-index: 1; transition-duration: 300ms; transform: scale(1); } .ios .toggle-icon:after { height: calc(var(--f7-toggle-height) - 4px); width: calc(var(--f7-toggle-height) - 4px); top: 2px; right: 2px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); border-radius: calc(var(--f7-toggle-height) - 4px); } .ios .toggle-active-state input[type="checkbox"]:not(:checked) + .toggle-icon:before { transform: scale(0); } .ios .toggle-active-state input[type="checkbox"] + .toggle-icon:after { width: calc(var(--f7-toggle-height) + 4px); } .ios .toggle-active-state input[type="checkbox"]:checked + .toggle-icon:after { transform: translateX(calc(-1 * (var(--f7-toggle-width) - var(--f7-toggle-height) - 8px))); } .md .toggle input[type="checkbox"]:checked + .toggle-icon { background: var(--f7-toggle-active-color, rgba(var(--f7-theme-color-rgb), 0.5)); } .md .toggle input[type="checkbox"]:checked + .toggle-icon:after { transform: translateX(calc(-1 * (var(--f7-toggle-width) - var(--f7-toggle-height) - 6px))); background: var(--f7-toggle-active-color, var(--f7-theme-color)); } .md .toggle-icon { background: var(--f7-toggle-inactive-color); } .md .toggle-icon:after { height: calc(var(--f7-toggle-height) + 6px); width: calc(var(--f7-toggle-height) + 6px); top: -3px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4); border-radius: var(--f7-toggle-height); right: 0; } /* === Range Slider === */ .ios { --f7-range-size: 28px; --f7-range-bar-bg-color: #b7b8b7; /* --f7-range-bar-active-bg-color: var(--f7-theme-color); */ --f7-range-bar-size: 1px; --f7-range-bar-border-radius: 2px; --f7-range-knob-size: 28px; --f7-range-knob-color: #fff; --f7-range-knob-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); --f7-range-label-size: 20px; --f7-range-label-text-color: #000; --f7-range-label-bg-color: #fff; --f7-range-label-font-size: 12px; --f7-range-label-border-radius: 5px; /* --f7-range-scale-bg-color: var(--f7-range-bar-bg-color); */ --f7-range-scale-step-width: 1px; --f7-range-scale-step-height: 5px; --f7-range-scale-font-size: 12px; --f7-range-scale-font-weight: 400; --f7-range-scale-text-color: #666; --f7-range-scale-label-offset: 4px; /* --f7-range-scale-substep-bg-color: var(--f7-range-bar-bg-color); */ --f7-range-scale-substep-width: 1px; --f7-range-scale-substep-height: 4px; } .md { --f7-range-size: 20px; --f7-range-bar-bg-color: #b9b9b9; /* --f7-range-bar-active-bg-color: var(--f7-theme-color); */ --f7-range-bar-size: 2px; --f7-range-bar-border-radius: 0px; --f7-range-knob-size: 12px; /* --f7-range-knob-color: var(--f7-theme-color); */ --f7-range-knob-box-shadow: none; --f7-range-label-size: 26px; --f7-range-label-text-color: #fff; /* --f7-range-label-bg-color: var(--f7-theme-color); */ --f7-range-label-font-size: 10px; --f7-range-label-border-radius: 50%; /* --f7-range-scale-bg-color: var(--f7-range-bar-bg-color); */ --f7-range-scale-step-width: 2px; --f7-range-scale-step-height: 5px; --f7-range-scale-font-size: 12px; --f7-range-scale-font-weight: 400; --f7-range-scale-text-color: #666; --f7-range-scale-label-offset: 4px; /* --f7-range-scale-substep-bg-color: var(--f7-range-bar-bg-color); */ --f7-range-scale-substep-width: 1px; --f7-range-scale-substep-height: 4px; } .range-slider { display: block; position: relative; align-self: center; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-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); } .range-slider.range-slider-vertical { height: 100%; width: var(--f7-range-size); } .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 { right: 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-size); width: var(--f7-range-knob-size); } .range-slider-horizontal .range-knob-wrap { top: 50%; margin-top: calc(-1 * var(--f7-range-knob-size) / 2); margin-right: calc(-1 * var(--f7-range-knob-size) / 2); right: 0; } .range-slider-vertical .range-knob-wrap { left: 50%; margin-left: calc(-1 * var(--f7-range-knob-size) / 2); bottom: 0; margin-bottom: calc(-1 * var(--f7-range-knob-size) / 2); } .range-slider-vertical-reversed .range-knob-wrap { bottom: auto; top: 0; margin-bottom: 0; margin-top: calc(-1 * var(--f7-range-knob-size) / 2); } .range-knob { box-sizing: border-box; border-radius: 50%; position: absolute; left: 0; top: 0; width: 100%; height: 100%; 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:after { content: ''; position: absolute; left: 50%; top: 50%; width: 44px; height: 44px; margin-left: -22px; margin-top: -22px; } .range-knob-label { position: absolute; left: 50%; bottom: 100%; text-align: center; transition-duration: 120ms; transition-property: transform; 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); border-radius: var(--f7-range-label-border-radius); } .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-right: 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-right: 0; } .range-slider-horizontal .range-scale-step:last-child { margin-right: 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-knob-label { margin-bottom: 6px; transform: translateX(-50%) translateY(100%) scale(0); } .ios .range-knob-active-state .range-knob-label { transform: translateX(-50%) translateY(0%) scale(1); } .md .range-knob { transition-duration: 200ms; transition-property: transform, background-color; } .md .range-knob-active-state .range-knob { transform: scale(1.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-slider-label .range-knob-active-state .range-knob { transform: scale(0); } /* === 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-fill-button-text-color: #fff; /* --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); } .ios { --f7-stepper-height: 29px; --f7-stepper-border-radius: 5px; /* --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-border-width: 1px; --f7-stepper-large-height: 44px; --f7-stepper-small-height: 26px; --f7-stepper-small-border-width: 2px; --f7-stepper-value-font-size: 17px; --f7-stepper-value-font-weight: 400; } .md { --f7-stepper-height: 36px; --f7-stepper-border-radius: 4px; --f7-stepper-button-pressed-bg-color: rgba(0, 0, 0, 0.1); /* --f7-stepper-fill-button-pressed-bg-color: var(--f7-theme-color-shade); */ --f7-stepper-border-width: 2px; --f7-stepper-large-height: 48px; --f7-stepper-small-border-width: 2px; --f7-stepper-small-height: 28px; --f7-stepper-value-font-size: 14px; --f7-stepper-value-font-weight: 500; } .md .theme-dark, .md.theme-dark { --f7-stepper-button-pressed-bg-color: rgba(255, 255, 255, 0.1); } .stepper { 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-theme-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: 0 var(--f7-stepper-border-radius) var(--f7-stepper-border-radius) 0; } .stepper-button:last-child, .stepper-button-minus:last-child, .stepper-button-plus:last-child { border-radius: var(--f7-stepper-border-radius) 0 0 var(--f7-stepper-border-radius); } .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-right: none; } .stepper-button-plus, .stepper-button-minus { -webkit-user-select: none; -moz-user-select: none; -ms-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)); } .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-theme-color); border-bottom: var(--f7-stepper-border-width) solid var(--f7-theme-color); } .stepper-input-wrap input, .stepper-value { width: 45px; 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-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-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-right: 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-right-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-pressed-bg-color, var(--f7-theme-color-shade)); } /* === 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)); 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))); } .smart-select-sheet .toolbar:after { display: block; } .smart-select-sheet .list { margin: 0; } .smart-select-sheet .list ul:before { display: none !important; } .smart-select-sheet .list ul:after { display: none !important; } .smart-select-popover .popover-inner { max-height: 40vh; } /* === Grid === */ .ios { --f7-grid-gap: 15px; } .md { --f7-grid-gap: 16px; } .row { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; --f7-cols-per-row: 1; } .row > [class*="col-"], .row > .col { box-sizing: border-box; width: calc((100% - var(--f7-grid-gap) * (var(--f7-cols-per-row) - 1)) / var(--f7-cols-per-row)); } .row.no-gap { --f7-grid-gap: 0px; } .row .col-5 { --f7-cols-per-row: 20; } .row .col-10 { --f7-cols-per-row: 10; } .row .col-15 { --f7-cols-per-row: 6.66666667; } .row .col-20 { --f7-cols-per-row: 5; } .row .col-25 { --f7-cols-per-row: 4; } .row .col-30 { --f7-cols-per-row: 3.33333333; } .row .col-33 { --f7-cols-per-row: 3; } .row .col-35 { --f7-cols-per-row: 2.85714286; } .row .col-40 { --f7-cols-per-row: 2.5; } .row .col-45 { --f7-cols-per-row: 2.22222222; } .row .col-50 { --f7-cols-per-row: 2; } .row .col-55 { --f7-cols-per-row: 1.81818182; } .row .col-60 { --f7-cols-per-row: 1.66666667; } .row .col-65 { --f7-cols-per-row: 1.53846154; } .row .col-66 { --f7-cols-per-row: 1.5; } .row .col-70 { --f7-cols-per-row: 1.42857143; } .row .col-75 { --f7-cols-per-row: 1.33333333; } .row .col-80 { --f7-cols-per-row: 1.25; } .row .col-85 { --f7-cols-per-row: 1.17647059; } .row .col-90 { --f7-cols-per-row: 1.11111111; } .row .col-95 { --f7-cols-per-row: 1.05263158; } .row .col-100 { --f7-cols-per-row: 1; } .row .col:nth-last-child(1), .row .col:nth-last-child(1) ~ .col { --f7-cols-per-row: 1; } .row .col:nth-last-child(2), .row .col:nth-last-child(2) ~ .col { --f7-cols-per-row: 2; } .row .col:nth-last-child(3), .row .col:nth-last-child(3) ~ .col { --f7-cols-per-row: 3; } .row .col:nth-last-child(4), .row .col:nth-last-child(4) ~ .col { --f7-cols-per-row: 4; } .row .col:nth-last-child(5), .row .col:nth-last-child(5) ~ .col { --f7-cols-per-row: 5; } .row .col:nth-last-child(6), .row .col:nth-last-child(6) ~ .col { --f7-cols-per-row: 6; } .row .col:nth-last-child(7), .row .col:nth-last-child(7) ~ .col { --f7-cols-per-row: 7; } .row .col:nth-last-child(8), .row .col:nth-last-child(8) ~ .col { --f7-cols-per-row: 8; } .row .col:nth-last-child(9), .row .col:nth-last-child(9) ~ .col { --f7-cols-per-row: 9; } .row .col:nth-last-child(10), .row .col:nth-last-child(10) ~ .col { --f7-cols-per-row: 10; } .row .col:nth-last-child(11), .row .col:nth-last-child(11) ~ .col { --f7-cols-per-row: 11; } .row .col:nth-last-child(12), .row .col:nth-last-child(12) ~ .col { --f7-cols-per-row: 12; } .row .col:nth-last-child(13), .row .col:nth-last-child(13) ~ .col { --f7-cols-per-row: 13; } .row .col:nth-last-child(14), .row .col:nth-last-child(14) ~ .col { --f7-cols-per-row: 14; } .row .col:nth-last-child(15), .row .col:nth-last-child(15) ~ .col { --f7-cols-per-row: 15; } .row .col:nth-last-child(16), .row .col:nth-last-child(16) ~ .col { --f7-cols-per-row: 16; } .row .col:nth-last-child(17), .row .col:nth-last-child(17) ~ .col { --f7-cols-per-row: 17; } .row .col:nth-last-child(18), .row .col:nth-last-child(18) ~ .col { --f7-cols-per-row: 18; } .row .col:nth-last-child(19), .row .col:nth-last-child(19) ~ .col { --f7-cols-per-row: 19; } .row .col:nth-last-child(20), .row .col:nth-last-child(20) ~ .col { --f7-cols-per-row: 20; } .row .col:nth-last-child(21), .row .col:nth-last-child(21) ~ .col { --f7-cols-per-row: 21; } .row .col:nth-last-child(22), .row .col:nth-last-child(22) ~ .col { --f7-cols-per-row: 22; } @media (min-width: 768px) { .row .tablet-5 { --f7-cols-per-row: 20; } .row .tablet-10 { --f7-cols-per-row: 10; } .row .tablet-15 { --f7-cols-per-row: 6.66666667; } .row .tablet-20 { --f7-cols-per-row: 5; } .row .tablet-25 { --f7-cols-per-row: 4; } .row .tablet-30 { --f7-cols-per-row: 3.33333333; } .row .tablet-33 { --f7-cols-per-row: 3; } .row .tablet-35 { --f7-cols-per-row: 2.85714286; } .row .tablet-40 { --f7-cols-per-row: 2.5; } .row .tablet-45 { --f7-cols-per-row: 2.22222222; } .row .tablet-50 { --f7-cols-per-row: 2; } .row .tablet-55 { --f7-cols-per-row: 1.81818182; } .row .tablet-60 { --f7-cols-per-row: 1.66666667; } .row .tablet-65 { --f7-cols-per-row: 1.53846154; } .row .tablet-66 { --f7-cols-per-row: 1.5; } .row .tablet-70 { --f7-cols-per-row: 1.42857143; } .row .tablet-75 { --f7-cols-per-row: 1.33333333; } .row .tablet-80 { --f7-cols-per-row: 1.25; } .row .tablet-85 { --f7-cols-per-row: 1.17647059; } .row .tablet-90 { --f7-cols-per-row: 1.11111111; } .row .tablet-95 { --f7-cols-per-row: 1.05263158; } .row .tablet-100 { --f7-cols-per-row: 1; } .row .tablet-auto:nth-last-child(1), .row .tablet-auto:nth-last-child(1) ~ .tablet-auto { --f7-cols-per-row: 1; } .row .tablet-auto:nth-last-child(2), .row .tablet-auto:nth-last-child(2) ~ .tablet-auto { --f7-cols-per-row: 2; } .row .tablet-auto:nth-last-child(3), .row .tablet-auto:nth-last-child(3) ~ .tablet-auto { --f7-cols-per-row: 3; } .row .tablet-auto:nth-last-child(4), .row .tablet-auto:nth-last-child(4) ~ .tablet-auto { --f7-cols-per-row: 4; } .row .tablet-auto:nth-last-child(5), .row .tablet-auto:nth-last-child(5) ~ .tablet-auto { --f7-cols-per-row: 5; } .row .tablet-auto:nth-last-child(6), .row .tablet-auto:nth-last-child(6) ~ .tablet-auto { --f7-cols-per-row: 6; } .row .tablet-auto:nth-last-child(7), .row .tablet-auto:nth-last-child(7) ~ .tablet-auto { --f7-cols-per-row: 7; } .row .tablet-auto:nth-last-child(8), .row .tablet-auto:nth-last-child(8) ~ .tablet-auto { --f7-cols-per-row: 8; } .row .tablet-auto:nth-last-child(9), .row .tablet-auto:nth-last-child(9) ~ .tablet-auto { --f7-cols-per-row: 9; } .row .tablet-auto:nth-last-child(10), .row .tablet-auto:nth-last-child(10) ~ .tablet-auto { --f7-cols-per-row: 10; } .row .tablet-auto:nth-last-child(11), .row .tablet-auto:nth-last-child(11) ~ .tablet-auto { --f7-cols-per-row: 11; } .row .tablet-auto:nth-last-child(12), .row .tablet-auto:nth-last-child(12) ~ .tablet-auto { --f7-cols-per-row: 12; } .row .tablet-auto:nth-last-child(13), .row .tablet-auto:nth-last-child(13) ~ .tablet-auto { --f7-cols-per-row: 13; } .row .tablet-auto:nth-last-child(14), .row .tablet-auto:nth-last-child(14) ~ .tablet-auto { --f7-cols-per-row: 14; } .row .tablet-auto:nth-last-child(15), .row .tablet-auto:nth-last-child(15) ~ .tablet-auto { --f7-cols-per-row: 15; } .row .tablet-auto:nth-last-child(16), .row .tablet-auto:nth-last-child(16) ~ .tablet-auto { --f7-cols-per-row: 16; } .row .tablet-auto:nth-last-child(17), .row .tablet-auto:nth-last-child(17) ~ .tablet-auto { --f7-cols-per-row: 17; } .row .tablet-auto:nth-last-child(18), .row .tablet-auto:nth-last-child(18) ~ .tablet-auto { --f7-cols-per-row: 18; } .row .tablet-auto:nth-last-child(19), .row .tablet-auto:nth-last-child(19) ~ .tablet-auto { --f7-cols-per-row: 19; } .row .tablet-auto:nth-last-child(20), .row .tablet-auto:nth-last-child(20) ~ .tablet-auto { --f7-cols-per-row: 20; } .row .tablet-auto:nth-last-child(21), .row .tablet-auto:nth-last-child(21) ~ .tablet-auto { --f7-cols-per-row: 21; } .row .tablet-auto:nth-last-child(22), .row .tablet-auto:nth-last-child(22) ~ .tablet-auto { --f7-cols-per-row: 22; } } @media (min-width: 1025px) { .row .desktop-5 { --f7-cols-per-row: 20; } .row .desktop-10 { --f7-cols-per-row: 10; } .row .desktop-15 { --f7-cols-per-row: 6.66666667; } .row .desktop-20 { --f7-cols-per-row: 5; } .row .desktop-25 { --f7-cols-per-row: 4; } .row .desktop-30 { --f7-cols-per-row: 3.33333333; } .row .desktop-33 { --f7-cols-per-row: 3; } .row .desktop-35 { --f7-cols-per-row: 2.85714286; } .row .desktop-40 { --f7-cols-per-row: 2.5; } .row .desktop-45 { --f7-cols-per-row: 2.22222222; } .row .desktop-50 { --f7-cols-per-row: 2; } .row .desktop-55 { --f7-cols-per-row: 1.81818182; } .row .desktop-60 { --f7-cols-per-row: 1.66666667; } .row .desktop-65 { --f7-cols-per-row: 1.53846154; } .row .desktop-66 { --f7-cols-per-row: 1.5; } .row .desktop-70 { --f7-cols-per-row: 1.42857143; } .row .desktop-75 { --f7-cols-per-row: 1.33333333; } .row .desktop-80 { --f7-cols-per-row: 1.25; } .row .desktop-85 { --f7-cols-per-row: 1.17647059; } .row .desktop-90 { --f7-cols-per-row: 1.11111111; } .row .desktop-95 { --f7-cols-per-row: 1.05263158; } .row .desktop-100 { --f7-cols-per-row: 1; } .row .desktop-auto:nth-last-child(1), .row .desktop-auto:nth-last-child(1) ~ .desktop-auto { --f7-cols-per-row: 1; } .row .desktop-auto:nth-last-child(2), .row .desktop-auto:nth-last-child(2) ~ .desktop-auto { --f7-cols-per-row: 2; } .row .desktop-auto:nth-last-child(3), .row .desktop-auto:nth-last-child(3) ~ .desktop-auto { --f7-cols-per-row: 3; } .row .desktop-auto:nth-last-child(4), .row .desktop-auto:nth-last-child(4) ~ .desktop-auto { --f7-cols-per-row: 4; } .row .desktop-auto:nth-last-child(5), .row .desktop-auto:nth-last-child(5) ~ .desktop-auto { --f7-cols-per-row: 5; } .row .desktop-auto:nth-last-child(6), .row .desktop-auto:nth-last-child(6) ~ .desktop-auto { --f7-cols-per-row: 6; } .row .desktop-auto:nth-last-child(7), .row .desktop-auto:nth-last-child(7) ~ .desktop-auto { --f7-cols-per-row: 7; } .row .desktop-auto:nth-last-child(8), .row .desktop-auto:nth-last-child(8) ~ .desktop-auto { --f7-cols-per-row: 8; } .row .desktop-auto:nth-last-child(9), .row .desktop-auto:nth-last-child(9) ~ .desktop-auto { --f7-cols-per-row: 9; } .row .desktop-auto:nth-last-child(10), .row .desktop-auto:nth-last-child(10) ~ .desktop-auto { --f7-cols-per-row: 10; } .row .desktop-auto:nth-last-child(11), .row .desktop-auto:nth-last-child(11) ~ .desktop-auto { --f7-cols-per-row: 11; } .row .desktop-auto:nth-last-child(12), .row .desktop-auto:nth-last-child(12) ~ .desktop-auto { --f7-cols-per-row: 12; } .row .desktop-auto:nth-last-child(13), .row .desktop-auto:nth-last-child(13) ~ .desktop-auto { --f7-cols-per-row: 13; } .row .desktop-auto:nth-last-child(14), .row .desktop-auto:nth-last-child(14) ~ .desktop-auto { --f7-cols-per-row: 14; } .row .desktop-auto:nth-last-child(15), .row .desktop-auto:nth-last-child(15) ~ .desktop-auto { --f7-cols-per-row: 15; } .row .desktop-auto:nth-last-child(16), .row .desktop-auto:nth-last-child(16) ~ .desktop-auto { --f7-cols-per-row: 16; } .row .desktop-auto:nth-last-child(17), .row .desktop-auto:nth-last-child(17) ~ .desktop-auto { --f7-cols-per-row: 17; } .row .desktop-auto:nth-last-child(18), .row .desktop-auto:nth-last-child(18) ~ .desktop-auto { --f7-cols-per-row: 18; } .row .desktop-auto:nth-last-child(19), .row .desktop-auto:nth-last-child(19) ~ .desktop-auto { --f7-cols-per-row: 19; } .row .desktop-auto:nth-last-child(20), .row .desktop-auto:nth-last-child(20) ~ .desktop-auto { --f7-cols-per-row: 20; } .row .desktop-auto:nth-last-child(21), .row .desktop-auto:nth-last-child(21) ~ .desktop-auto { --f7-cols-per-row: 21; } .row .desktop-auto:nth-last-child(22), .row .desktop-auto:nth-last-child(22) ~ .desktop-auto { --f7-cols-per-row: 22; } } /* === Calendar/Datepicker === */ :root { --f7-calendar-height: 320px; --f7-calendar-sheet-landscape-height: 220px; --f7-calendar-sheet-bg-color: #fff; --f7-calendar-popover-width: 320px; --f7-calendar-popover-height: 320px; --f7-calendar-modal-height: 420px; --f7-calendar-modal-max-width: 380px; --f7-calendar-modal-border-radius: 4px; --f7-calendar-modal-bg-color: #fff; /* --f7-calendar-header-bg-color: var(--f7-bars-bg-color); --f7-calendar-header-link-color: var(--f7-bars-link-color); --f7-calendar-header-text-color: var(--f7-bars-text-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-footer-text-color: var(--f7-bars-text-color); --f7-calendar-week-header-bg-color: var(--f7-bars-bg-color); --f7-calendar-week-header-text-color: var(--f7-bars-text-color); */ --f7-calendar-prev-next-text-color: #b8b8b8; --f7-calendar-disabled-text-color: #d4d4d4; --f7-calendar-event-dot-size: 4px; /* --f7-calendar-event-bg-color: var(--f7-theme-color); */ } .ios { --f7-calendar-sheet-border-color: #929499; --f7-calendar-header-height: 44px; --f7-calendar-header-font-size: 17px; --f7-calendar-header-font-weight: 600; --f7-calendar-header-padding: 0 8px; --f7-calendar-footer-height: 44px; --f7-calendar-footer-font-size: 17px; --f7-calendar-footer-padding: 0 8px; --f7-calendar-week-header-height: 18px; --f7-calendar-week-header-font-size: 11px; --f7-calendar-row-border-color: #c4c4c4; --f7-calendar-day-font-size: 15px; --f7-calendar-day-text-color: #000; --f7-calendar-today-text-color: #000; --f7-calendar-today-bg-color: #e3e3e3; --f7-calendar-selected-text-color: #fff; /* --f7-calendar-selected-bg-color: var(--f7-theme-color); */ --f7-calendar-day-size: 30px; } .ios .theme-dark, .ios.theme-dark { --f7-calendar-sheet-border-color: var(--f7-bars-border-color); --f7-calendar-row-border-color: var(--f7-bars-border-color); --f7-calendar-modal-bg-color: #171717; --f7-calendar-sheet-bg-color: #171717; --f7-calendar-day-text-color: #fff; --f7-calendar-today-text-color: #fff; --f7-calendar-today-bg-color: #333; } .md { --f7-calendar-sheet-border-color: #ccc; --f7-calendar-header-height: 56px; --f7-calendar-header-font-size: 20px; --f7-calendar-header-font-weight: 400; --f7-calendar-header-padding: 0 24px; --f7-calendar-footer-height: 48px; --f7-calendar-footer-font-size: 14px; --f7-calendar-footer-padding: 0 8px; --f7-calendar-week-header-height: 24px; --f7-calendar-week-header-font-size: 11px; --f7-calendar-row-border-color: transparent; --f7-calendar-day-font-size: 14px; --f7-calendar-day-text-color: #000; /* --f7-calendar-today-text-color: var(--f7-theme-color); */ --f7-calendar-today-bg-color: none; --f7-calendar-selected-text-color: #fff; /* --f7-calendar-selected-bg-color: var(--f7-theme-color); */ --f7-calendar-day-size: 32px; } .md .theme-dark, .md.theme-dark { --f7-calendar-sheet-border-color: var(--f7-bars-border-color); --f7-calendar-modal-bg-color: #171717; --f7-calendar-sheet-bg-color: #171717; --f7-calendar-day-text-color: rgba(255, 255, 255, 0.87); } .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); } .calendar-sheet:before { z-index: 600; } .calendar-sheet .sheet-modal-inner { margin-bottom: var(--f7-safe-area-bottom); } .calendar-sheet .toolbar:before, .calendar-modal .toolbar:before, .calendar-popover .toolbar:before { display: none; } .calendar-popover { width: var(--f7-calendar-popover-width); } .calendar-popover .calendar { height: var(--f7-calendar-popover-height); border-radius: var(--f7-popover-border-radius); } .calendar-header { width: 100%; position: relative; overflow: hidden; 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); } .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%, 100%, 0); transition-property: transform; display: flex; z-index: 12000; background: var(--f7-calendar-modal-bg-color); width: 90%; border-radius: var(--f7-calendar-modal-border-radius); box-shadow: var(--f7-elevation-24); } .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%, 100%, 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%; height: calc(100% / 6); 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-row:before { content: ''; position: absolute; background-color: var(--f7-calendar-row-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 .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%; width: calc(100% / 7); 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.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.calendar-day-prev, .calendar-day.calendar-day-next { color: var(--f7-calendar-prev-next-text-color); } .calendar-day.calendar-day-disabled { color: var(--f7-calendar-disabled-text-color); cursor: auto; } .calendar-day.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 .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 .calendar-day-events { position: absolute; display: flex; left: 0; width: 100%; top: 100%; align-items: center; justify-content: center; margin-top: 1px; } .calendar-day .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 .calendar-day-event + .calendar-day-event { margin-left: 2px; } .calendar-range .calendar-day.calendar-day-selected { align-items: stretch; align-content: stretch; } .calendar-range .calendar-day.calendar-day-selected .calendar-day-number { width: 100%; border-radius: 0; height: auto; text-align: center; display: flex; align-items: center; justify-content: center; } .calendar-month-selector, .calendar-year-selector { display: flex; justify-content: space-between; align-items: center; width: 50%; max-width: 200px; flex-shrink: 10; } .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.icon-only, .calendar-year-selector a.icon-only { min-width: 36px; } /* === Picker === */ :root { --f7-picker-height: 260px; --f7-picker-inline-height: 200px; --f7-picker-popover-height: 200px; --f7-picker-popover-width: 280px; --f7-picker-landscape-height: 200px; --f7-picker-item-height: 36px; } .ios { --f7-picker-column-font-size: 24px; --f7-picker-divider-text-color: #000; --f7-picker-item-text-color: #707274; --f7-picker-item-selected-text-color: #000; --f7-picker-item-selected-border-color: #a8abb0; } .ios .theme-dark, .ios.theme-dark { --f7-picker-divider-text-color: #fff; --f7-picker-item-selected-text-color: #fff; --f7-picker-item-selected-border-color: #282829; } .md { --f7-picker-column-font-size: 20px; --f7-picker-divider-text-color: rgba(0, 0, 0, 0.87); --f7-picker-item-text-color: inherit; --f7-picker-item-selected-text-color: inherit; --f7-picker-item-selected-border-color: rgba(0, 0, 0, 0.15); } .md .theme-dark, .md.theme-dark { --f7-picker-divider-text-color: rgba(255, 255, 255, 0.87); --f7-picker-item-selected-border-color: rgba(255, 255, 255, 0.15); } .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-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-popover .toolbar:before { display: none !important; } .picker-popover .toolbar + .picker-columns { height: calc(100% - var(--f7-toolbar-height)); } .picker-columns { display: flex; overflow: hidden; justify-content: center; padding: 0; text-align: right; height: 100%; position: relative; -webkit-mask-box-image: linear-gradient(to top, transparent, transparent 5%, white 20%, white 80%, transparent 95%, transparent); font-size: var(--f7-picker-column-font-size); } .picker-column { position: relative; max-height: 100%; } .picker-column.picker-column-first:before, .picker-column.picker-column-last:after { height: 100%; width: 100vw; position: absolute; content: ''; top: 0; } .picker-column.picker-column-first:before { left: 100%; } .picker-column.picker-column-last:after { right: 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 { transition: 300ms; transition-timing-function: ease-out; } .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; transition: 300ms; color: var(--f7-picker-item-text-color); } .picker-item span { padding: 0 10px; } .picker-column-absolute .picker-item { position: absolute; } .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-center-highlight { height: var(--f7-picker-item-height); box-sizing: border-box; position: absolute; left: 0; width: 100%; top: 50%; margin-top: calc(-1 * var(--f7-picker-item-height) / 2); pointer-events: none; } .picker-center-highlight:before { content: ''; position: absolute; background-color: var(--f7-picker-item-selected-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))); } .picker-center-highlight:after { content: ''; position: absolute; background-color: var(--f7-picker-item-selected-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))); } .picker-3d .picker-columns { overflow: hidden; perspective: 1200px; } .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 { transform-origin: center center -110px; -webkit-backface-visibility: hidden; backface-visibility: hidden; transition-timing-function: ease-out; } /* === 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: 20px; --f7-ptr-size: 44px; } .md { --f7-ptr-preloader-size: 22px; --f7-ptr-size: 40px; } .ptr-preloader { position: relative; top: var(--f7-ptr-top, 0); height: var(--f7-ptr-size); } .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; } .ios .ptr-preloader { margin-top: calc(-1 * var(--f7-ptr-size)); width: 100%; left: 0; } .ios .ptr-arrow { position: absolute; left: 50%; top: 50%; background: no-repeat center; z-index: 10; transform: rotate(0deg) translate3d(0, 0, 0); transition-duration: 300ms; transition-property: transform; width: 12px; height: 20px; margin-left: -6px; margin-top: -10px; visibility: visible; color: var(--f7-preloader-color); } .ios .ptr-arrow: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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; font-size: 20px; width: 12px; height: 20px; line-height: 20px; font-size: 10px; content: 'ptr_arrow_ios'; } .ios .ptr-content:not(.ptr-refreshing) .ptr-preloader .preloader { animation: none; } .ios .ptr-transitioning, .ios .ptr-refreshing { transition-duration: 300ms; transition-property: transform; } .ios .ptr-refreshing { transform: translate3d(0, var(--f7-ptr-size), 0); } .ios .ptr-refreshing .ptr-arrow { visibility: hidden; } .ios .ptr-refreshing .ptr-preloader .preloader { visibility: visible; } .ios .ptr-pull-up .ptr-arrow { transform: rotate(180deg) translate3d(0, 0, 0); } .ios .ptr-no-navbar { margin-top: calc(-1 * var(--f7-ptr-size)); height: calc(100% + var(--f7-ptr-size)); } .ios .ptr-no-navbar .ptr-preloader { margin-top: 0; } .ios .ptr-bottom .ptr-preloader { margin-top: 0; margin-bottom: calc(-1 * var(--f7-ptr-size)); } .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-arrow { transform: rotate(180deg) translate3d(0, 0, 0); } .ios .ptr-bottom.ptr-pull-up .ptr-arrow { transform: rotate(0deg) translate3d(0, 0, 0); } .md { --f7-ptr-top: -4px; } .md .ptr-preloader { left: 50%; width: var(--f7-ptr-size); border-radius: 50%; background: #fff; margin-left: calc(-1 * var(--f7-ptr-size) / 2); margin-top: calc(-1 * var(--f7-ptr-size)); z-index: 100; box-shadow: var(--f7-elevation-1); } .md .ptr-preloader .preloader .preloader-inner-gap, .md .ptr-preloader .preloader .preloader-inner-half-circle { border-width: 3px; } .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 * { 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; } .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); } /* === Images Lazy Loading === */ .lazy-loaded.lazy-fade-in { animation: lazyFadeIn 600ms; } @keyframes lazyFadeIn { from { opacity: 0; } to { opacity: 1; } } /* === 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: 15px; } .ios { --f7-table-head-font-weight: 600; --f7-table-head-text-color: #8e8e93; --f7-table-head-cell-height: 44px; --f7-table-head-icon-size: 18px; --f7-table-body-cell-height: 44px; --f7-table-cell-border-color: #c8c7cc; --f7-table-cell-padding-vertical: 0px; --f7-table-cell-padding-horizontal: 15px; --f7-table-edge-cell-padding-horizontal: 15px; --f7-table-label-cell-padding-horizontal: 15px; --f7-table-checkbox-cell-width: 22px; /* --f7-table-actions-cell-link-color: var(--f7-theme-color); */ --f7-table-selected-row-bg-color: #f7f7f8; /* --f7-table-actions-link-color: var(--f7-theme-color); */ --f7-table-title-font-size: 17px; --f7-table-title-font-weight: 600; --f7-table-card-header-height: 64px; --f7-table-footer-height: 44px; --f7-table-footer-text-color: #8e8e93; --f7-table-sortable-icon-color: #000; --f7-table-input-text-color: #000; } .ios .theme-dark, .ios.theme-dark { --f7-table-cell-border-color: #282829; --f7-table-selected-row-bg-color: #363636; --f7-table-sortable-icon-color: #fff; --f7-table-input-text-color: #fff; } .md { --f7-table-head-font-weight: 500; --f7-table-head-text-color: rgba(0, 0, 0, 0.54); --f7-table-head-cell-height: 56px; --f7-table-head-icon-size: 16px; --f7-table-body-cell-height: 48px; --f7-table-cell-border-color: rgba(0, 0, 0, 0.12); --f7-table-cell-padding-vertical: 0px; --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-actions-cell-link-color: rgba(0, 0, 0, 0.54); --f7-table-selected-row-bg-color: #f5f5f5; --f7-table-actions-link-color: rgba(0, 0, 0, 0.54); --f7-table-title-font-size: 20px; --f7-table-title-font-weight: 400; --f7-table-card-header-height: 64px; --f7-table-footer-height: 56px; --f7-table-footer-text-color: rgba(0, 0, 0, 0.54); --f7-table-sortable-icon-color: #000; --f7-table-input-text-color: #212121; } .md .theme-dark, .md.theme-dark { --f7-table-head-text-color: rgba(255, 255, 255, 0.54); --f7-table-footer-text-color: rgba(255, 255, 255, 0.54); --f7-table-cell-border-color: #282829; --f7-table-selected-row-bg-color: rgba(255, 255, 255, 0.05); --f7-table-sortable-icon-color: #fff; --f7-table-actions-cell-link-color: rgba(255, 255, 255, 0.54); --f7-table-actions-link-color: rgba(255, 255, 255, 0.54); --f7-table-input-text-color: #fff; } .data-table { overflow-x: auto; } .data-table table { width: 100%; border: none; padding: 0; margin: 0; border-collapse: collapse; text-align: right; } .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); } .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); width: var(--f7-table-head-icon-size); height: 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 { 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-right: var(--f7-table-edge-cell-padding-horizontal); } .data-table th:last-child, .data-table td:last-child { --f7-table-cell-padding-left: 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: left; } .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-right: 8px; } .data-table th.checkbox-cell:first-child, .data-table td.checkbox-cell:first-child { padding-left: calc(var(--f7-table-cell-padding-left) / 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-right: calc(var(--f7-table-cell-padding-right) / 2); } .data-table th.checkbox-cell:last-child, .data-table td.checkbox-cell:last-child { padding-right: calc(var(--f7-table-cell-padding-right) / 2); } .data-table th.actions-cell, .data-table td.actions-cell { text-align: left; 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.icon-only, .data-table td a.icon-only, .card .data-table th a.icon-only, .card .data-table td a.icon-only, .card.data-table th a.icon-only, .card.data-table td a.icon-only { display: inline-block; vertical-align: middle; text-align: center; font-size: 0; min-width: 0; } .data-table th a.icon-only i, .data-table td a.icon-only i, .card .data-table th a.icon-only i, .card .data-table td a.icon-only i, .card.data-table th a.icon-only i, .card.data-table td a.icon-only i { font-size: 20px; 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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; font-size: 20px; 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 { height: var(--f7-table-card-header-height); } .data-table.card .card-content, .card .data-table .card-content { overflow-x: auto; } .data-table.card .card-footer, .card .data-table .card-footer { 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-right: 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.icon-only { 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%; padding-right: var(--f7-table-edge-cell-padding-horizontal); padding-left: var(--f7-table-edge-cell-padding-horizontal); margin-right: calc(-1 * var(--f7-table-edge-cell-padding-horizontal)); margin-left: 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; height: var(--f7-table-footer-height); color: var(--f7-table-footer-text-color); justify-content: flex-start; } .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); display: flex; align-content: center; align-items: center; justify-content: flex-start; text-align: right; } .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-left: 16px; flex-shrink: 0; } .data-table.data-table-collapsible td.checkbox-cell { position: absolute; top: 0; right: 0; } .data-table.data-table-collapsible td.checkbox-cell + td { padding-right: 16px; } .data-table.data-table-collapsible td.checkbox-cell ~ td { margin-right: 32px; } } .data-table .tablet-only, .data-table .tablet-landscape-only { display: none; } @media (min-width: 768px) { .data-table .tablet-only { display: table-cell; } } @media (min-width: 768px) and (orientation: landscape) { .data-table .tablet-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-right: 15px; } .ios .sortable-cell:not(.numeric-cell):after { margin-right: 5px; } .ios .sortable-cell.numeric-cell:before { margin-left: 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-right: 15px; } .ios .data-table-actions a.link.icon-only { 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-right: 30px; } .ios .data-table-rows-select .input { margin-right: 20px; } .ios .data-table-pagination-label { margin-left: 15px; } .md .data-table th.actions-cell a.link + a.link, .md .data-table td.actions-cell a.link + a.link { margin-right: 24px; } .md .data-table th.actions-cell a.icon-only, .md .data-table td.actions-cell a.icon-only { width: 24px; height: 24px; line-height: 24px; } .md .sortable-cell:not(.numeric-cell):after { margin-right: 8px; } .md .sortable-cell.numeric-cell:before { margin-left: 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-right: 24px; } .md .data-table-actions a.link.icon-only { width: 24px; height: 24px; overflow: visible; } .md .data-table-actions a.link.icon-only.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 a.link:before, .md .data-table-pagination a.link:before { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .data-table-rows-select a.link.active-state:before, .md .data-table-pagination a.link.active-state:before { opacity: 1; transition-duration: 150ms; } .md .data-table-rows-select + .data-table-pagination { margin-right: 32px; } .md .data-table-rows-select .input { margin-right: 24px; } .md .data-table-pagination-label { margin-left: 20px; } .md .input-cell .input-clear-button { transform: scale(0.8); } /* === FAB === */ :root { --f7-fab-text-color: #fff; --f7-fab-extended-text-font-size: 14px; --f7-fab-extended-text-padding: 0 20px; --f7-fab-label-bg-color: #fff; --f7-fab-label-text-color: #333; --f7-fab-label-border-radius: 4px; --f7-fab-label-padding: 4px 12px; --f7-fab-button-size: 40px; } .ios { --f7-fab-size: 50px; --f7-fab-box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4); --f7-fab-margin: 15px; --f7-fab-extended-size: 50px; --f7-fab-extended-text-font-weight: 400; --f7-fab-extended-text-letter-spacing: 0; --f7-fab-label-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.4); /* --f7-fab-pressed-bg-color: var(--f7-theme-color-shade); */ } .md { --f7-fab-size: 56px; --f7-fab-box-shadow: var(--f7-elevation-6); --f7-fab-margin: 16px; --f7-fab-extended-size: 48px; --f7-fab-extended-text-font-weight: 500; --f7-fab-extended-text-letter-spacing: 0.03em; --f7-fab-label-box-shadow: var(--f7-elevation-3); /* --f7-fab-pressed-bg-color: var(--f7-theme-color-shade); */ } .fab { position: absolute; z-index: 1500; } .fab a { --f7-touch-ripple-color: var(--f7-touch-ripple-white); } .fab[class*="fab-left"] { left: calc(var(--f7-fab-margin) + var(--f7-safe-area-left)); } .fab[class*="fab-right"] { right: calc(var(--f7-fab-margin) + var(--f7-safe-area-right)); } .fab[class*="-top"] { top: var(--f7-fab-margin); } .fab[class*="-bottom"] { bottom: calc(var(--f7-fab-margin) + var(--f7-safe-area-bottom)); } .fab[class*="fab-center"] { left: 50%; transform: translateX(-50%); } .fab[class*="left-center"], .fab[class*="right-center"] { top: 50%; transform: translateY(-50%); } .fab[class*="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: calc(var(--f7-fab-size) / 2); 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.active-state, .fab-buttons a.active-state { background-color: var(--f7-fab-pressed-bg-color, var(--f7-theme-color-shade)); } .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: calc(var(--f7-fab-button-size) / 2); 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; } .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; flex-direction: row-reverse; } .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: calc(var(--f7-fab-size) / 2); 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: uppercase; } .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; } .fab[class*="fab-right-"] .fab-label { right: 100%; margin-right: 8px; } .fab[class*="fab-left-"] .fab-label { left: 100%; margin-left: 8px; } .navbar ~ * .fab[class*="-top"], .navbar ~ .fab[class*="-top"] { margin-top: var(--f7-navbar-height); } .toolbar-top ~ * .fab[class*="-top"], .toolbar-top ~ .fab[class*="-top"], .ios .toolbar-top-ios ~ * .fab[class*="-top"], .ios .toolbar-top-ios ~ .fab[class*="-top"], .md .toolbar-top-md ~ * .fab[class*="-top"], .md .toolbar-top-md ~ .fab[class*="-top"] { margin-top: var(--f7-toolbar-height); } .toolbar-bottom ~ * .fab[class*="-bottom"], .toolbar-bottom ~ .fab[class*="-bottom"], .ios .toolbar-bottom-ios ~ * .fab[class*="-bottom"], .ios .toolbar-bottom-ios ~ .fab[class*="-bottom"], .md .toolbar-bottom-md ~ * .fab[class*="-bottom"], .md .toolbar-bottom-md ~ .fab[class*="-bottom"] { margin-bottom: var(--f7-toolbar-height); } .tabbar-labels.toolbar-bottom ~ * .fab[class*="-bottom"], .tabbar-labels.toolbar-bottom ~ .fab[class*="-bottom"], .ios .tabbar-labels.toolbar-bottom-ios ~ * .fab[class*="-bottom"], .ios .tabbar-labels.toolbar-bottom-ios ~ .fab[class*="-bottom"], .md .tabbar-labels.toolbar-bottom-md ~ * .fab[class*="-bottom"], .md .tabbar-labels.toolbar-bottom-md ~ .fab[class*="-bottom"] { margin-bottom: var(--f7-tabbar-labels-height); } .tabbar-labels.toolbar-top ~ * .fab[class*="-bottom"], .tabbar-labels.toolbar-top ~ .fab[class*="-bottom"], .ios .tabbar-labels.toolbar-top-ios ~ * .fab[class*="-bottom"], .ios .tabbar-labels.toolbar-top-ios ~ .fab[class*="-bottom"], .md .tabbar-labels.toolbar-top-md ~ * .fab[class*="-bottom"], .md .tabbar-labels.toolbar-top-md ~ .fab[class*="-bottom"] { margin-top: var(--f7-tabbar-labels-height); } .messagebar ~ * .fab[class*="-bottom"], .messagebar ~ .fab[class*="-bottom"] { margin-bottom: var(--f7-messagebar-height); } .navbar + .toolbar-top ~ * .fab[class*="-top"], .ios .navbar + .toolbar-top-ios ~ * .fab[class*="-top"], .md .navbar + .toolbar-top-ios ~ * .fab[class*="-top"], .navbar + .toolbar-top ~ .fab[class*="-top"], .ios .navbar + .toolbar-top-ios ~ .fab[class*="-top"], .md .navbar + .toolbar-top-ios ~ .fab[class*="-top"] { margin-top: calc(var(--f7-toolbar-height) + var(--f7-navbar-height)); } .navbar + .toolbar-top.tabbar-labels ~ * .fab[class*="-top"], .ios .navbar + .toolbar-top-ios.tabbar-labels ~ * .fab[class*="-top"], .md .navbar + .toolbar-top-ios.tabbar-labels ~ * .fab[class*="-top"], .navbar + .toolbar-top.tabbar-labels ~ .fab[class*="-top"], .ios .navbar + .toolbar-top-ios.tabbar-labels ~ .fab[class*="-top"], .md .navbar + .toolbar-top-ios.tabbar-labels ~ .fab[class*="-top"] { margin-top: calc(var(--f7-tabbar-labels-height) + var(--f7-navbar-height)); } .ios .fab > a.active-state, .ios .fab-buttons a.active-state { transition-duration: 0ms; } /* === Searchbar === */ :root { /* --f7-searchbar-link-color: var(--f7-bars-link-color); */ } .ios { /* --f7-searchbar-bg-image: var(--f7-bars-bg-image); --f7-searchbar-bg-color: var(--f7-bars-bg-color); --f7-searchbar-border-color: var(--f7-bars-border-color); */ --f7-searchbar-height: 44px; /* --f7-searchbar-link-color: var(--f7-bars-link-color, var(--f7-theme-color)); */ --f7-searchbar-search-icon-color: #939398; --f7-searchbar-placeholder-color: #939398; --f7-searchbar-input-text-color: #000; --f7-searchbar-input-font-size: 17px; --f7-searchbar-input-bg-color: #e8e8ea; --f7-searchbar-input-border-radius: 8px; --f7-searchbar-input-height: 32px; --f7-searchbar-input-padding-horizontal: 28px; /* --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-shadow-image: none; --f7-searchbar-in-page-content-margin: 0px; --f7-searchbar-in-page-content-box-shadow: none; --f7-searchbar-in-page-content-border-radius: 0; } .ios .theme-dark, .ios.theme-dark { --f7-searchbar-bg-color: #303030; --f7-searchbar-input-bg-color: #171717; --f7-searchbar-input-text-color: #fff; } .md { --f7-searchbar-bg-color: #fff; --f7-searchbar-border-color: transparent; --f7-searchbar-height: 48px; --f7-searchbar-link-color: #737373; --f7-searchbar-search-icon-color: #737373; --f7-searchbar-placeholder-color: #939398; --f7-searchbar-input-text-color: #000; --f7-searchbar-input-font-size: 20px; --f7-searchbar-input-bg-color: #fff; --f7-searchbar-input-border-radius: 0px; --f7-searchbar-input-height: 100%; --f7-searchbar-input-padding-horizontal: 48px; --f7-searchbar-input-clear-button-color: #737373; --f7-searchbar-backdrop-bg-color: rgba(0, 0, 0, 0.25); --f7-searchbar-shadow-image: var(--f7-bars-shadow-bottom-image); --f7-searchbar-in-page-content-margin: 8px; --f7-searchbar-in-page-content-box-shadow: var(--f7-elevation-1); --f7-searchbar-in-page-content-border-radius: 4px; } .searchbar { width: 100%; position: relative; z-index: 200; height: var(--f7-searchbar-height); background-image: var(--f7-searchbar-bg-image, var(--f7-bars-bg-image)); background-color: var(--f7-searchbar-bg-color, var(--f7-bars-bg-color, var(--f7-theme-color))); --f7-touch-ripple-color: var(--f7-touch-ripple-black); } .searchbar.no-hairline:after, .searchbar.no-border:after { display: none !important; } .searchbar.no-shadow:before { 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 { z-index: 510; } .page > .searchbar:before { content: ''; position: absolute; right: 0; width: 100%; top: 100%; bottom: auto; height: 8px; pointer-events: none; background: var(--f7-searchbar-shadow-image, var(--f7-bars-shadow-bottom-image)); } .searchbar input[type="text"], .searchbar input[type="search"] { box-sizing: border-box; width: 100%; height: 100%; display: block; border: none; -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: var(--f7-searchbar-input-padding-right); padding-right: var(--f7-searchbar-input-padding-left); } .searchbar input[type="text"]::-webkit-input-placeholder, .searchbar input[type="search"]::-webkit-input-placeholder { color: var(--f7-searchbar-placeholder-color); opacity: 1; } .searchbar input[type="text"]::-moz-placeholder, .searchbar input[type="search"]::-moz-placeholder { color: var(--f7-searchbar-placeholder-color); opacity: 1; } .searchbar input[type="text"]::-ms-input-placeholder, .searchbar input[type="search"]::-ms-input-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 { position: absolute; left: 0; top: 0; } .page-content .searchbar { 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 .searchbar-inner, .page-content .searchbar input[type="text"], .page-content .searchbar input[type="search"] { border-radius: var(--f7-searchbar-in-page-content-border-radius); } .searchbar .input-clear-button { color: var(--f7-searchbar-input-clear-button-color, var(--f7-input-clear-button-color)); } .searchbar-expandable { position: absolute; transition-duration: 300ms; pointer-events: none; } .navbar-inner-large .searchbar-expandable:after { display: none !important; } .navbar .searchbar.searchbar-expandable { --f7-searchbar-expandable-size: var(--f7-navbar-height); } .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-labels .searchbar.searchbar-expandable { --f7-searchbar-expandable-size: var(--f7-tabbar-labels-height); } .searchbar-inner { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; align-items: center; box-sizing: border-box; } .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; -moz-font-feature-settings: "liga"; 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, .navbar-inner.with-searchbar-expandable-enabled { --f7-navbar-large-collapse-progress: 1; } .navbar.with-searchbar-expandable-enabled .title-large, .navbar-inner.with-searchbar-expandable-enabled .title-large, .navbar.with-searchbar-expandable-enabled .title-large-text, .navbar-inner.with-searchbar-expandable-enabled .title-large-text, .navbar.with-searchbar-expandable-enabled .title-large-inner, .navbar-inner.with-searchbar-expandable-enabled .title-large-inner { 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; } .navbar ~ .page:not(.no-navbar) > .searchbar, .page > .navbar ~ .searchbar { top: var(--f7-navbar-height); } .page > .searchbar ~ * .page-content, .page > .searchbar ~ .page-content { padding-top: var(--f7-searchbar-height); } .page > .navbar ~ .searchbar ~ * .page-content, .page > .navbar ~ .searchbar ~ .page-content, .navbar ~ .page:not(.no-navbar) > .searchbar ~ .page-content, .navbar ~ .page:not(.no-navbar) > .searchbar ~ * .page-content { padding-top: calc(var(--f7-navbar-height) + 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 > .toolbar-top ~ .searchbar ~ * .page-content, .ios .page > .toolbar-top-ios ~ .searchbar ~ * .page-content, .md .page > .toolbar-top-md ~ .searchbar ~ * .page-content, .page > .toolbar-top ~ .searchbar ~ .page-content, .ios .page > .toolbar-top-ios ~ .searchbar ~ .page-content, .md .page > .toolbar-top-md ~ .searchbar ~ .page-content { padding-top: calc(var(--f7-toolbar-height) + var(--f7-searchbar-height)); } .page > .tabbar-labels.toolbar-top ~ .searchbar, .ios .page > .tabbar-labels.toolbar-top-ios ~ .searchbar, .md .page > .tabbar-labels.toolbar-top-md ~ .searchbar { top: var(--f7-tabbar-labels-height); } .page > .tabbar-labels.toolbar-top ~ .searchbar ~ * .page-content, .ios .page > .tabbar-labels.toolbar-top-ios ~ .searchbar ~ * .page-content, .md .page > .tabbar-labels.toolbar-top-md ~ .searchbar ~ * .page-content, .page > .tabbar-labels.toolbar-top ~ .searchbar ~ .page-content, .ios .page > .tabbar-labels.toolbar-top-ios ~ .searchbar ~ .page-content, .md .page > .tabbar-labels.toolbar-top-md ~ .searchbar ~ .page-content { padding-top: calc(var(--f7-tabbar-labels-height) + var(--f7-searchbar-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)); } .page > .navbar ~ .toolbar-top ~ .searchbar ~ * .page-content, .ios .page > .navbar ~ .toolbar-top-ios ~ .searchbar ~ * .page-content, .md .page > .navbar ~ .toolbar-top-md ~ .searchbar ~ * .page-content, .page > .navbar ~ .toolbar-top ~ .searchbar ~ .page-content, .ios .page > .navbar ~ .toolbar-top-ios ~ .searchbar ~ .page-content, .md .page > .navbar ~ .toolbar-top-md ~ .searchbar ~ .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-toolbar-height) + var(--f7-searchbar-height)); } .page > .navbar ~ .tabbar-labels.toolbar-top ~ .searchbar, .ios .page > .navbar ~ .tabbar-labels.toolbar-top-ios ~ .searchbar, .md .page > .navbar ~ .tabbar-labels.toolbar-top-md ~ .searchbar { top: calc(var(--f7-navbar-height) + var(--f7-tabbar-labels-height)); } .page > .navbar ~ .tabbar-labels.toolbar-top ~ .searchbar ~ * .page-content, .ios .page > .navbar ~ .tabbar-labels.toolbar-top-ios ~ .searchbar ~ * .page-content, .md .page > .navbar ~ .tabbar-labels.toolbar-top-md ~ .searchbar ~ * .page-content, .page > .navbar ~ .tabbar-labels.toolbar-top ~ .searchbar ~ .page-content, .ios .page > .navbar ~ .tabbar-labels.toolbar-top-ios ~ .searchbar ~ .page-content, .md .page > .navbar ~ .tabbar-labels.toolbar-top-md ~ .searchbar ~ .page-content { padding-top: calc(var(--f7-navbar-height) + var(--f7-tabbar-labels-height) + var(--f7-searchbar-height)); } .ios { --f7-searchbar-input-padding-left: var(--f7-searchbar-input-padding-horizontal); --f7-searchbar-input-padding-right: var(--f7-searchbar-input-padding-horizontal); } .ios .searchbar input[type="search"], .ios .searchbar input[type="text"] { z-index: 30; } .ios .searchbar .input-clear-button { z-index: 40; left: 7px; } .ios .searchbar-inner { padding: 0 calc(8px + var(--f7-safe-area-right)) 0 calc(8px + var(--f7-safe-area-left)); } .ios .searchbar-icon { width: 13px; height: 13px; position: absolute; top: 50%; margin-top: -6px; z-index: 40; right: 8px; } .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; } .ios .searchbar-disable-button.active-state { transition-duration: 0ms; opacity: 0.3 !important; } .ios .searchbar-enabled .searchbar-disable-button { pointer-events: auto; opacity: 1; margin-right: 8px; } .ios .searchbar:not(.searchbar-enabled) .searchbar-disable-button { transition-duration: 300ms !important; } .ios .searchbar-expandable { --f7-searchbar-expandable-size: var(--f7-searchbar-height); right: 0; bottom: 0; opacity: 1; width: 100%; height: 0%; transform: translate3d(0, 0, 0); overflow: hidden; } .ios .searchbar-expandable .searchbar-disable-button { margin-right: 8px; opacity: 1; display: block; } .ios .searchbar-expandable .searchbar-inner { height: var(--f7-searchbar-expandable-size); } .ios .navbar-inner.with-searchbar-expandable-enabled .left, .ios .navbar-inner.with-searchbar-expandable-enabled .title, .ios .navbar-inner.with-searchbar-expandable-enabled .right { transform: translateY(calc(-1 * var(--f7-navbar-height))); transition: 300ms; opacity: 0; } .ios .searchbar-expandable.searchbar-enabled { opacity: 1; height: var(--f7-searchbar-expandable-size); pointer-events: auto; } .md { --f7-searchbar-input-padding-left: calc(var(--f7-searchbar-input-padding-horizontal) + 17px); --f7-searchbar-input-padding-right: var(--f7-searchbar-input-padding-horizontal); } .md .searchbar-inner { padding: 0 var(--f7-safe-area-right) 0 var(--f7-safe-area-left); } .md .searchbar-icon, .md .searchbar-disable-button { position: absolute; right: calc(-4px + var(--f7-safe-area-right)); top: 50%; transition-duration: 300ms; } .md .searchbar-icon { width: 24px; height: 24px; margin-left: 12px; margin-top: -12px; } .md .searchbar-icon:after { 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))); --f7-link-highlight-color: var(--f7-link-highlight-black); } .md .searchbar-disable-button:before { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .searchbar-disable-button.active-state:before { opacity: 1; transition-duration: 150ms; } .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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; font-size: 20px; line-height: 48px; content: "arrow_right_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 .input-clear-button { width: 48px; height: 48px; margin-top: -24px; left: 0; --f7-link-highlight-color: var(--f7-link-highlight-black); } .md .searchbar .input-clear-button:before { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .searchbar .input-clear-button.active-state:before { opacity: 1; transition-duration: 150ms; } .md .searchbar .input-clear-button:after { line-height: 48px; content: 'delete_md'; opacity: 1; } .md .searchbar .input-clear-button:before { margin-left: 0; margin-top: 0; } .md .page > .searchbar, .md .subnavbar .searchbar, .md .searchbar-expandable { --f7-searchbar-input-padding-left: calc(var(--f7-searchbar-input-padding-horizontal) + 17px + 8px); } .md .page > .searchbar .searchbar-icon, .md .subnavbar .searchbar .searchbar-icon, .md .searchbar-expandable .searchbar-icon, .md .page > .searchbar .searchbar-disable-button, .md .subnavbar .searchbar .searchbar-disable-button, .md .searchbar-expandable .searchbar-disable-button { right: calc(-4px + 8px + var(--f7-safe-area-right)); } .md .searchbar-expandable { --f7-searchbar-expandable-size: var(--f7-searchbar-height); height: 100%; opacity: 0; top: 50%; 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); right: 100%; margin-right: calc(var(--f7-searchbar-expandable-size) * -1); } .md .searchbar-expandable.searchbar-enabled { width: 100%; border-radius: 0; opacity: 1; pointer-events: auto; top: 0; margin-top: 0; right: 0; margin-right: 0; } /* === Messages === */ :root { --f7-messages-content-bg-color: #fff; --f7-message-text-header-text-color: inherit; --f7-message-text-header-opacity: 0.65; --f7-message-text-header-font-size: 12px; --f7-message-text-footer-text-color: inherit; --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-typing-indicator-bg-color: #000; --f7-message-sent-bg-color: var(--f7-theme-color); --f7-message-sent-text-color: #fff; --f7-message-received-bg-color: #e5e5ea; --f7-message-received-text-color: #000; } .ios { --f7-messages-title-text-color: #8e8e93; --f7-messages-title-font-size: 11px; --f7-message-header-text-color: #8e8e93; --f7-message-footer-text-color: #8e8e93; --f7-message-name-text-color: #8e8e93; --f7-message-avatar-size: 29px; --f7-message-margin: 10px; --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; } .ios .theme-dark, .ios.theme-dark { --f7-messages-content-bg-color: transparent; --f7-message-received-bg-color: #333; --f7-message-received-text-color: #fff; --f7-message-typing-indicator-bg-color: #fff; } .md { --f7-messages-title-text-color: rgba(0, 0, 0, 0.51); --f7-messages-title-font-size: 12px; --f7-message-header-text-color: rgba(0, 0, 0, 0.51); --f7-message-footer-text-color: rgba(0, 0, 0, 0.51); --f7-message-name-text-color: rgba(0, 0, 0, 0.51); --f7-message-avatar-size: 32px; --f7-message-margin: 16px; --f7-message-bubble-font-size: 16px; --f7-message-bubble-border-radius: 4px; --f7-message-bubble-padding-vertical: 6px; --f7-message-bubble-padding-horizontal: 8px; --f7-message-typing-indicator-opacity: 0.6; } .md .theme-dark, .md.theme-dark { --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); --f7-message-received-bg-color: #333; --f7-message-received-text-color: #fff; --f7-message-typing-indicator-bg-color: #fff; } .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); } .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: 50%; 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); } .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: 32px; } .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; align-self: flex-start; } .message-sent .message-bubble { color: var(--f7-message-sent-text-color); background: var(--f7-message-sent-bg-color); } .message-sent .message-content { align-items: flex-start; } .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); } .message-received { flex-direction: row-reverse; align-self: flex-end; } .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-end; } .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; } .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-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(10px + 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,") 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:not(.message-typing) .message-bubble { -webkit-mask-box-image: url("data:image/svg+xml;charset=utf-8,") 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(10px + 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,") 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 { -webkit-mask-box-image: url("data:image/svg+xml;charset=utf-8,") 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-right: 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-received.message-tail .message-bubble:before, .md .message-sent.message-tail .message-bubble:before { position: absolute; content: ''; bottom: 0; width: 0; height: 0; } .md .message-received { margin-left: calc(8px + var(--f7-safe-area-left)); } .md .message-received .message-avatar + .message-content { margin-left: var(--f7-message-bubble-padding-horizontal); } .md .message-received.message-tail .message-bubble:before { border-left: 8px solid transparent; border-right: 0 solid transparent; border-bottom: 8px solid var(--f7-message-received-bg-color); right: 100%; } .md .message-sent { margin-right: calc(8px + var(--f7-safe-area-right)); } .md .message-sent .message-avatar + .message-content { margin-right: var(--f7-message-bubble-padding-horizontal); } .md .message-sent.message-tail .message-bubble:before { border-left: 0 solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid var(--f7-message-sent-bg-color); left: 100%; } .md .message + .message:not(.message-first) { margin-top: 8px; } .md .message-typing-indicator > div { width: 6px; height: 6px; } .md .message-typing-indicator > div + div { margin-right: 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-bg-color: #fff; --f7-messagebar-textarea-bg-color: transparent; --f7-messagebar-attachments-height: 155px; --f7-messagebar-attachment-height: 155px; --f7-messagebar-attachment-landscape-height: 120px; --f7-messagebar-sheet-height: 252px; --f7-messagebar-sheet-landscape-height: 192px; } .ios { --f7-messagebar-height: 44px; --f7-messagebar-font-size: 17px; /* --f7-messagebar-link-color: var(--f7-theme-color); */ --f7-messagebar-border-color: transparent; --f7-messagebar-shadow-image: none; --f7-messagebar-textarea-border-radius: 17px; --f7-messagebar-textarea-padding: 6px 15px; --f7-messagebar-textarea-height: 34px; --f7-messagebar-textarea-text-color: #000; --f7-messagebar-textarea-font-size: 17px; --f7-messagebar-textarea-line-height: 20px; --f7-messagebar-textarea-border: 1px solid #c8c8cd; --f7-messagebar-sheet-bg-color: #d1d5da; --f7-messagebar-attachments-border-color: #c8c8cd; --f7-messagebar-attachment-border-radius: 12px; } .ios .theme-dark, .ios.theme-dark { --f7-messagebar-bg-color: var(--f7-bars-bg-color); --f7-messagebar-textarea-text-color: #fff; --f7-messagebar-textarea-border: 1px solid var(--f7-bars-border-color); --f7-messagebar-attachments-border-color: var(--f7-bars-border-color); } .md { --f7-messagebar-height: 48px; --f7-messagebar-font-size: 16px; --f7-messagebar-link-color: #333; --f7-messagebar-border-color: #d1d1d1; --f7-messagebar-shadow-image: none; --f7-messagebar-textarea-border-radius: 0px; --f7-messagebar-textarea-padding: 5px 8px; --f7-messagebar-textarea-height: 32px; --f7-messagebar-textarea-text-color: #333; --f7-messagebar-textarea-font-size: 16px; --f7-messagebar-textarea-line-height: 22px; --f7-messagebar-textarea-border: 1px solid transparent; --f7-messagebar-sheet-bg-color: #fff; --f7-messagebar-attachments-border-color: #ddd; --f7-messagebar-attachment-border-radius: 4px; } .md .theme-dark, .md.theme-dark { --f7-messagebar-bg-color: var(--f7-bars-bg-color); --f7-messagebar-border-color: #282829; --f7-messagebar-link-color: rgba(255, 255, 255, 0.87); --f7-messagebar-textarea-text-color: rgba(255, 255, 255, 0.87); --f7-messagebar-attachments-border-color: rgba(255, 255, 255, 0.2); } .messagebar { transform: translate3d(0, 0, 0); background: var(--f7-messagebar-bg-color); 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: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))); } .messagebar:after { content: ''; position: absolute; right: 0; width: 100%; bottom: 100%; height: 8px; top: auto; pointer-events: none; background: var(--f7-messagebar-shadow-image); } .messagebar.no-hairline:before, .messagebar.no-border:before { display: none !important; } .messagebar.no-shadow:after, .messagebar.toolbar-hidden:after { display: none !important; } .messagebar .toolbar-inner { top: auto; position: relative; height: auto; bottom: auto; flex-direction: row-reverse; } .messagebar.messagebar-sheet-visible > .toolbar-inner { bottom: 0; } .messagebar .messagebar-area { width: 100%; flex-shrink: 1; overflow: hidden; 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 a.link { align-self: flex-end; flex-shrink: 0; color: var(--f7-messagebar-link-color, var(--f7-theme-color)); } .messagebar-attachments { width: 100%; will-change: scroll-position; 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-attachment + .messagebar-attachment { margin-right: 8px; } .messagebar-sheet { will-change: scroll-position; 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); 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, .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-right: 1px; } @media (orientation: landscape) { .messagebar-sheet-image, .messagebar-sheet-item { width: calc((var(--f7-messagebar-sheet-landscape-height) - 2px) / 2); height: calc((var(--f7-messagebar-sheet-landscape-height) - 2px) / 2); } } .messagebar-sheet-image .icon-checkbox, .messagebar-sheet-item .icon-checkbox, .messagebar-sheet-image .icon-radio, .messagebar-sheet-item .icon-radio { position: absolute; right: 8px; bottom: 8px; } .messagebar-sheet-image { background-size: cover; background-position: center; background-repeat: no-repeat; } .messagebar-attachment-delete { display: block; position: absolute; border-radius: 50%; box-sizing: border-box; cursor: pointer; box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2); } .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 ~ .page-content, .messagebar ~ * .page-content { padding-bottom: calc(var(--f7-messagebar-height) + var(--f7-safe-area-bottom)); } .ios .messagebar a.link.icon-only:first-child { margin-left: -8px; } .ios .messagebar a.link.icon-only:last-child { margin-right: -8px; } .ios .messagebar a.link:not(.icon-only) + .messagebar-area { margin-left: 8px; } .ios .messagebar .messagebar-area + a.link:not(.icon-only) { margin-left: 8px; } .ios .messagebar-area { margin-top: 5px; margin-bottom: 5px; } .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-attachments-visible .messagebar-attachments + textarea { 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-delete { right: 5px; top: 5px; width: 20px; height: 20px; background: #7d7e80; border: 2px solid #fff; } .ios .messagebar-attachment-delete:after, .ios .messagebar-attachment-delete:before { width: 10px; height: 2px; background: #fff; margin-left: -5px; margin-top: -1px; } .md .messagebar-attachments { padding: 8px; border-bottom: 1px solid var(--f7-messagebar-attachments-border-color); } .md .messagebar-area { margin-top: 8px; margin-bottom: 8px; } .md .messagebar-sheet-image .icon-checkbox, .md .messagebar-sheet-item .icon-checkbox { border-color: #fff; background: rgba(255, 255, 255, 0.25); box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); } .md .messagebar-attachment-delete { right: 8px; top: 8px; width: 24px; height: 24px; background-color: var(--f7-theme-color); border-radius: 4px; } .md .messagebar-attachment-delete:after, .md .messagebar-attachment-delete:before { width: 14px; height: 2px; background: #fff; margin-left: -7px; margin-top: -1px; } /* === Swiper === */ .swiper-container { margin: 0 auto; position: relative; overflow: hidden; list-style: none; padding: 0; /* Fix of Webkit flickering */ z-index: 1; } .swiper-container-no-flexbox .swiper-slide { float: left; } .swiper-container-vertical > .swiper-wrapper { flex-direction: column; } .swiper-wrapper { position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box; } .swiper-container-android .swiper-slide, .swiper-wrapper { transform: translate3d(0px, 0, 0); } .swiper-container-multirow > .swiper-wrapper { flex-wrap: wrap; } .swiper-container-free-mode > .swiper-wrapper { transition-timing-function: ease-out; margin: 0 auto; } .swiper-slide { flex-shrink: 0; width: 100%; height: 100%; position: relative; transition-property: transform; } .swiper-slide-invisible-blank { visibility: hidden; } /* Auto Height */ .swiper-container-autoheight, .swiper-container-autoheight .swiper-slide { height: auto; } .swiper-container-autoheight .swiper-wrapper { align-items: flex-start; transition-property: transform, height; } /* 3D Effects */ .swiper-container-3d { perspective: 1200px; } .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow { transform-style: preserve-3d; } .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom { position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; z-index: 10; } .swiper-container-3d .swiper-slide-shadow-left { background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-right { background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-top { background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-bottom { background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } /* IE10 Windows Phone 8 Fixes */ .swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper { touch-action: pan-y; } .swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper { touch-action: pan-x; } /* a11y */ .swiper-container .swiper-notification { position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; } .swiper-container-coverflow .swiper-wrapper { /* Windows 8 IE 10 fix */ -ms-perspective: 1200px; } .swiper-container-cube { overflow: visible; } .swiper-container-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-container-cube .swiper-slide .swiper-slide { pointer-events: none; } .swiper-container-cube.swiper-container-rtl .swiper-slide { transform-origin: 100% 0; } .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide { pointer-events: auto; visibility: visible; } .swiper-container-cube .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right { z-index: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; } .swiper-container-cube .swiper-cube-shadow { position: absolute; left: 0; bottom: 0px; width: 100%; height: 100%; background: #000; opacity: 0.6; -webkit-filter: blur(50px); filter: blur(50px); z-index: 0; } .swiper-container-fade.swiper-container-free-mode .swiper-slide { transition-timing-function: ease-out; } .swiper-container-fade .swiper-slide { pointer-events: none; transition-property: opacity; } .swiper-container-fade .swiper-slide .swiper-slide { pointer-events: none; } .swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-flip { overflow: visible; } .swiper-container-flip .swiper-slide { pointer-events: none; -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 1; } .swiper-container-flip .swiper-slide .swiper-slide { pointer-events: none; } .swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right { z-index: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; } /* Scrollbar */ .swiper-scrollbar { border-radius: 10px; position: relative; -ms-touch-action: none; background: rgba(0, 0, 0, 0.1); } .swiper-container-horizontal > .swiper-scrollbar { position: absolute; left: 1%; bottom: 3px; z-index: 50; height: 5px; width: 98%; } .swiper-container-vertical > .swiper-scrollbar { position: absolute; right: 3px; top: 1%; z-index: 50; width: 5px; height: 98%; } .swiper-scrollbar-drag { height: 100%; width: 100%; position: relative; background: rgba(0, 0, 0, 0.5); border-radius: 10px; left: 0; top: 0; } .swiper-scrollbar-cursor-drag { cursor: move; } .swiper-scrollbar-lock { display: none; } .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%; object-fit: contain; } .swiper-slide-zoomed { cursor: move; } .swiper-button-prev, .swiper-button-next { position: absolute; top: 50%; width: 27px; height: 44px; line-height: 44px; text-align: center; margin-top: -22px; z-index: 10; cursor: pointer; color: var(--f7-theme-color); } .swiper-button-prev:after, .swiper-button-next: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; -moz-font-feature-settings: "liga"; font-feature-settings: "liga"; text-align: center; display: block; width: 100%; height: 100%; font-size: 20px; font-size: 44px; } .swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled { opacity: 0.35; cursor: auto; pointer-events: none; } .swiper-button-prev, .swiper-container-rtl .swiper-button-next { left: 10px; right: auto; } .swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after { content: 'swiper_prev'; } .swiper-button-next, .swiper-container-rtl .swiper-button-prev { right: 10px; left: auto; } .swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after { content: 'swiper_next'; } .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-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 10px; left: 0; width: 100%; } .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-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: 8px; height: 8px; display: inline-block; border-radius: 100%; background: #000; 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-active { opacity: 1; background: var(--f7-theme-color); } .swiper-container-vertical > .swiper-pagination-bullets { right: 10px; top: 50%; transform: translate3d(0px, -50%, 0); } .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 6px 0; display: block; } .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic { top: 50%; transform: translateY(-50%); width: 8px; } .swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { display: inline-block; transition: 200ms transform, 200ms top; } .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 0 4px; } .swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic { left: 50%; transform: translateX(-50%); white-space: nowrap; } .swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transition: 200ms transform, 200ms left; } .swiper-pagination-progressbar { background: rgba(0, 0, 0, 0.25); position: absolute; } .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: var(--f7-theme-color); position: absolute; left: 0; top: 0; width: 100%; height: 100%; transform: scale(0); transform-origin: left top; } .swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { transform-origin: right top; } .swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite { width: 100%; height: 4px; left: 0; top: 0; } .swiper-container-vertical > .swiper-pagination-progressbar, .swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite { width: 4px; height: 100%; left: 0; top: 0; } .preloader.swiper-lazy-preloader { position: absolute; left: 50%; top: 50%; z-index: 10; width: 32px; height: 32px; margin-left: -16px; margin-top: -16px; } /* === Photo Browser === */ :root { --f7-photobrowser-bg-color: #fff; --f7-photobrowser-bars-bg-image: none; /* --f7-photobrowser-bars-bg-color: rgba(var(--f7-bars-bg-color-rgb), 0.95); --f7-photobrowser-bars-text-color: var(--f7-bars-text-color); --f7-photobrowser-bars-link-color: var(--f7-bars-link-color); */ --f7-photobrowser-caption-font-size: 14px; --f7-photobrowser-caption-light-text-color: #000; --f7-photobrowser-caption-light-bg-color: rgba(255, 255, 255, 0.8); --f7-photobrowser-caption-dark-text-color: #fff; --f7-photobrowser-caption-dark-bg-color: rgba(0, 0, 0, 0.8); --f7-photobrowser-exposed-bg-color: #000; --f7-photobrowser-dark-bg-color: #000; --f7-photobrowser-dark-bars-bg-color: rgba(27, 27, 27, 0.8); --f7-photobrowser-dark-bars-text-color: #fff; --f7-photobrowser-dark-bars-link-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; } .photo-browser-standalone.modal-out.swipe-close-to-bottom, .photo-browser-standalone.modal-out.swipe-close-to-top { animation: none; } .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, 100%, 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: 400ms; } .photo-browser-captions.photo-browser-captions-exposed { opacity: 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); } .photo-browser-caption { box-sizing: border-box; transition: 300ms; position: absolute; bottom: 0; left: 0; opacity: 0; padding: 4px 5px; width: 100%; text-align: center; font-size: var(--f7-photobrowser-caption-font-size); } .photo-browser-caption:empty { display: none; } .photo-browser-caption.photo-browser-caption-active { opacity: 1; } .photo-browser-captions-light .photo-browser-caption { color: var(--f7-photobrowser-caption-light-text-color); background: var(--f7-photobrowser-caption-light-bg-color); } .photo-browser-captions-dark .photo-browser-caption { color: var(--f7-photobrowser-caption-dark-text-color); background: var(--f7-photobrowser-caption-dark-bg-color); } .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; } .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.photo-browser-transitioning { transition: 400ms; transition-property: transform; } .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 .navbar, .view.with-photo-browser-page .navbar, .photo-browser-page .toolbar, .view.with-photo-browser-page .toolbar { background-color: var(--f7-photobrowser-bars-bg-color, rgba(var(--f7-bars-bg-color-rgb), 0.95)); background-image: var(--f7-photobrowser-bars-bg-image); transition: 400ms; color: var(--f7-photobrowser-bars-text-color, var(--f7-bars-text-color)); } .photo-browser-page .navbar a, .view.with-photo-browser-page .navbar a, .photo-browser-page .toolbar a, .view.with-photo-browser-page .toolbar a { color: var(--f7-photobrowser-bars-link-color, var(--f7-bars-link-color, var(--f7-theme-color))); } .photo-browser-exposed .navbar, .photo-browser-exposed .toolbar { opacity: 0; visibility: hidden; pointer-events: none; } .photo-browser-exposed .toolbar ~ .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); } .photo-browser-exposed .photo-browser-caption { color: var(--f7-photobrowser-caption-dark-text-color); background: var(--f7-photobrowser-caption-dark-bg-color); } .view.with-photo-browser-page-exposed .navbar { opacity: 0; } .photo-browser-dark .photo-browser-swiper-container, .photo-browser-page-dark .photo-browser-swiper-container, .view.with-photo-browser-page-dark .photo-browser-swiper-container { background: var(--f7-photobrowser-dark-bg-color); } .photo-browser-dark .navbar, .photo-browser-page-dark .navbar, .view.with-photo-browser-page-dark .navbar, .photo-browser-dark .toolbar, .photo-browser-page-dark .toolbar, .view.with-photo-browser-page-dark .toolbar { --f7-touch-ripple-color: var(--f7-touch-ripple-white); --f7-link-highlight-color: var(--f7-link-highlight-white); background: var(--f7-photobrowser-dark-bars-bg-color); color: var(--f7-photobrowser-dark-bars-text-color); } .photo-browser-dark .navbar:before, .photo-browser-page-dark .navbar:before, .view.with-photo-browser-page-dark .navbar:before, .photo-browser-dark .toolbar:before, .photo-browser-page-dark .toolbar:before, .view.with-photo-browser-page-dark .toolbar:before { display: none !important; } .photo-browser-dark .navbar:after, .photo-browser-page-dark .navbar:after, .view.with-photo-browser-page-dark .navbar:after, .photo-browser-dark .toolbar:after, .photo-browser-page-dark .toolbar:after, .view.with-photo-browser-page-dark .toolbar:after { display: none !important; } .photo-browser-dark .navbar a, .photo-browser-page-dark .navbar a, .view.with-photo-browser-page-dark .navbar a, .photo-browser-dark .toolbar a, .photo-browser-page-dark .toolbar a, .view.with-photo-browser-page-dark .toolbar a { color: var(--f7-photobrowser-dark-bars-link-color); } @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; } .ios { --f7-notification-margin: 8px; --f7-notification-padding: 10px; --f7-notification-border-radius: 12px; --f7-notification-box-shadow: 0px 5px 25px -10px rgba(0, 0, 0, 0.7); --f7-notification-bg-color: rgba(250, 250, 250, 0.95); --f7-notification-translucent-bg-color-ios: rgba(255, 255, 255, 0.65); --f7-notification-icon-size: 20px; --f7-notification-title-color: #000; --f7-notification-title-font-size: 13px; --f7-notification-title-text-transform: uppercase; --f7-notification-title-line-height: 1.4; --f7-notification-title-font-weight: 400; --f7-notification-title-letter-spacing: 0.02em; --f7-notification-title-right-color: #444a51; --f7-notification-title-right-font-size: 13px; --f7-notification-subtitle-color: #000; --f7-notification-subtitle-font-size: 15px; --f7-notification-subtitle-text-transform: none; --f7-notification-subtitle-line-height: 1.35; --f7-notification-subtitle-font-weight: 600; --f7-notification-text-color: #000; --f7-notification-text-font-size: 15px; --f7-notification-text-text-transform: none; --f7-notification-text-line-height: 1.2; --f7-notification-text-font-weight: 400; } .md { --f7-notification-margin: 0px; --f7-notification-padding: 16px; --f7-notification-border-radius: 0px; --f7-notification-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22), 0 1px 2px rgba(0, 0, 0, 0.24); --f7-notification-bg-color: #fff; --f7-notification-icon-size: 16px; --f7-notification-title-color: var(--f7-theme-color); --f7-notification-title-font-size: 12px; --f7-notification-title-text-transform: none; --f7-notification-title-line-height: 1; --f7-notification-title-font-weight: 400; --f7-notification-title-right-color: #757575; --f7-notification-title-right-font-size: 12px; --f7-notification-subtitle-color: #212121; --f7-notification-subtitle-font-size: 14px; --f7-notification-subtitle-text-transform: none; --f7-notification-subtitle-line-height: 1.35; --f7-notification-subtitle-font-weight: 400; --f7-notification-text-color: #757575; --f7-notification-text-font-size: 14px; --f7-notification-text-text-transform: none; --f7-notification-text-line-height: 1.35; --f7-notification-text-font-weight: 400; } .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); border-radius: var(--f7-notification-border-radius); box-shadow: var(--f7-notification-box-shadow); background: var(--f7-notification-bg-color); margin-top: var(--f7-statusbar-height); --f7-link-highlight-color: var(--f7-link-highlight-black); --f7-touch-ripple-color: var(--f7-touch-ripple-black); } @media (min-width: 568px) { .notification { left: 50%; width: var(--f7-notification-max-width); margin-left: calc(-1 * var(--f7-notification-max-width) / 2); } } .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); } .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-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; -moz-font-feature-settings: "liga"; 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); } @supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) { .ios .notification { background: var(--f7-notification-translucent-bg-color-ios); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); } } .ios .notification.modal-in { transform: translate3d(0%, 0%, 0); opacity: 1; } .ios .notification.modal-out { transform: translate3d(0%, -200%, 0); } .ios .notification-icon { margin-right: 8px; } .ios .notification-header + .notification-content { margin-top: 10px; } .ios .notification-title-right-text { margin-right: 6px; margin-left: auto; } .ios .notification-title-right-text + .notification-close-button { margin-left: 10px; } .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; } .md .notification { transform: translate3d(0, -150%, 0); } .md .notification.modal-in { transition-duration: 0ms; animation: notification-md-in 400ms ease-out; transform: translate3d(0, 0%, 0); } .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-icon { margin-right: 8px; } .md .notification-subtitle + .notification-text { margin-top: 2px; } .md .notification-header + .notification-content { margin-top: 6px; } .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 { content: ''; width: 152%; height: 152%; position: absolute; left: -26%; top: -26%; background-image: radial-gradient(circle at center, var(--f7-link-highlight-color) 66%, rgba(255, 255, 255, 0) 66%); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; opacity: 0; pointer-events: none; transition-duration: 600ms; } .md .notification-close-button.active-state:before { opacity: 1; transition-duration: 150ms; } .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: #737373; content: 'delete_md'; line-height: 48px; font-size: 14px; } @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-bg-color: #fff; --f7-autocomplete-dropdown-placeholder-color: #a9a9a9; --f7-autocomplete-dropdown-preloader-size: 20px; } .ios { --f7-autocomplete-dropdown-box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.2); --f7-autocomplete-dropdown-text-color: #000; --f7-autocomplete-dropdown-text-matching-color: #000; --f7-autocomplete-dropdown-text-matching-font-weight: 600; } .ios .theme-dark, .ios.theme-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: 0 2px 2px rgba(0, 0, 0, 0.25); --f7-autocomplete-dropdown-text-color: rgba(0, 0, 0, 0.54); --f7-autocomplete-dropdown-text-matching-color: #212121; --f7-autocomplete-dropdown-text-matching-font-weight: 400; } .md .theme-dark, .md.theme-dark { --f7-autocomplete-dropdown-bg-color: #1c1c1d; --f7-autocomplete-dropdown-text-color: rgba(255, 255, 255, 0.54); --f7-autocomplete-dropdown-text-matching-color: rgba(255, 255, 255, 0.87); } .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:not(.autocomplete-preloader-visible) { visibility: hidden; } .autocomplete-preloader:not(.autocomplete-preloader-visible), .autocomplete-preloader:not(.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%; right: 0; } .autocomplete-dropdown .autocomplete-dropdown-inner { position: relative; will-change: scroll-position; 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); } .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 { display: none !important; } .autocomplete-dropdown .list ul:after { display: none !important; } .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); } .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-right: var(--f7-searchbar-input-padding-left); } .list .item-content-dropdown-expanded .item-title.item-label { width: 0; flex-shrink: 10; overflow: hidden; } .list .item-content-dropdown-expanded .item-title.item-label + .item-input-wrap { margin-right: 0; } .list .item-content-dropdown-expanded .item-input-wrap { width: 100%; } .ios .autocomplete-dropdown .autocomplete-preloader { left: 15px; margin-bottom: 12px; } .ios .searchbar-input-wrap .autocomplete-dropdown { margin-top: calc(-1 * var(--f7-searchbar-input-height)); top: 100%; z-index: 20; } .ios .searchbar-input-wrap .autocomplete-dropdown .autocomplete-dropdown-inner { padding-top: var(--f7-searchbar-input-height); } .md .autocomplete-page .navbar .autocomplete-preloader { margin-left: 8px; } .md .autocomplete-dropdown .autocomplete-preloader { left: 16px; margin-bottom: 8px; } .md .autocomplete-dropdown .autocomplete-preloader .preloader-inner-gap, .md .autocomplete-dropdown .autocomplete-preloader .preloader-inner-half-circle { border-width: 3px; } /* === Tooltip === */ :root { --f7-tooltip-bg-color: rgba(0, 0, 0, 0.87); --f7-tooltip-text-color: #fff; --f7-tooltip-border-radius: 4px; --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; } .tooltip { position: absolute; z-index: 20000; 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); } /* === Gauge === */ .gauge { position: relative; text-align: center; margin-left: auto; margin-right: auto; display: inline-block; } .gauge-svg, .gauge svg { max-width: 100%; height: auto; } .gauge-svg circle, .gauge svg circle, .gauge-svg path, .gauge svg path { transition-duration: 400ms; } /* === Skeleton === */ :root { --f7-skeleton-color: #ccc; } .theme-dark { --f7-skeleton-color: #515151; } .skeleton-text { font-family: 'framework7-skeleton' !important; } .skeleton-text, .skeleton-text * { color: var(--f7-skeleton-color) !important; font-weight: normal !important; font-style: normal !important; letter-spacing: -0.015em !important; } .skeleton-block { height: 1em; background: var(--f7-skeleton-color) !important; width: 100%; } .skeleton-effect-fade { animation: skeleton-effect-fade 1s infinite; } .skeleton-effect-blink { -webkit-mask-image: linear-gradient(to right, transparent 0%, black 25%, black 75%, transparent 100%); mask-image: linear-gradient(to right, transparent 0%, black 25%, black 75%, transparent 100%); -webkit-mask-size: 200% 100%; mask-size: 200% 100%; -webkit-mask-repeat: repeat; mask-repeat: repeat; -webkit-mask-position: 50% top; mask-position: 50% top; animation: skeleton-effect-blink 1s infinite; } .skeleton-effect-pulse { animation: skeleton-effect-pulse 1s infinite; } @keyframes skeleton-effect-fade { 0% { opacity: 1; } 50% { opacity: 0.2; } 100% { opacity: 1; } } @keyframes skeleton-effect-blink { 0% { -webkit-mask-position: 50% top; mask-position: 50% top; } 100% { -webkit-mask-position: -150% top; mask-position: -150% top; } } @keyframes skeleton-effect-pulse { 0% { transform: scale(1); } 40% { transform: scale(1); } 50% { transform: scale(0.975); } 100% { transform: scale(1); } } /* === Menu === */ :root { --f7-menu-text-color: #fff; --f7-menu-font-size: 16px; --f7-menu-font-weight: 500; --f7-menu-line-height: 1.2; --f7-menu-bg-color: rgba(0, 0, 0, 0.9); --f7-menu-item-pressed-bg-color: rgba(20, 20, 20, 0.9); --f7-menu-item-padding-horizontal: 12px; --f7-menu-item-spacing: 6px; --f7-menu-item-height: 40px; --f7-menu-item-dropdown-icon-color: rgba(255, 255, 255, 0.4); --f7-menu-item-border-radius: 8px; /* --f7-menu-dropdown-pressed-bg-color: var(--f7-theme-color); */ --f7-menu-dropdown-item-height: 28px; --f7-menu-dropdown-divider-color: rgba(255, 255, 255, 0.2); --f7-menu-dropdown-padding-vertical: 6px; /* --f7-menu-dropdown-border-radius: var(--f7-menu-item-border-radius); */ } .menu { z-index: 1000; position: relative; --f7-touch-ripple-color: var(--f7-touch-ripple-white); } .menu-inner { display: flex; justify-content: flex-start; align-items: flex-start; padding-left: var(--f7-menu-item-spacing); padding-right: var(--f7-menu-item-spacing); } .menu-inner:after { content: ''; width: var(--f7-menu-item-spacing); height: 100%; flex-shrink: 0; } .menu-item { height: var(--f7-menu-item-height); min-width: var(--f7-menu-item-height); flex-shrink: 0; background: var(--f7-menu-bg-color); color: var(--f7-menu-text-color); border-radius: var(--f7-menu-item-border-radius); position: relative; box-sizing: border-box; font-size: var(--f7-menu-font-size); font-weight: var(--f7-menu-font-weight); cursor: pointer; margin-right: var(--f7-menu-item-spacing); } .menu-item:first-child { margin-right: 0; } .menu-item.active-state:not(.menu-item-dropdown-opened) { background-color: rgba(0, 0, 0, 0.7); } .menu-item.icon-only { padding-left: 0; padding-right: 0; } .menu-item-content { display: flex; justify-content: center; align-items: center; padding: 0 var(--f7-menu-item-padding-horizontal); height: 100%; box-sizing: border-box; width: 100%; overflow: hidden; border-radius: var(--f7-menu-item-border-radius); position: relative; } .menu-item-content.icon-only, .icon-only .menu-item-content { padding-left: 0; padding-right: 0; } .menu-item-dropdown .menu-item-content:after { content: ''; position: absolute; width: 20px; height: 2px; left: 50%; transform: translateX(-50%); bottom: 4px; background: var(--f7-menu-item-dropdown-icon-color); border-radius: 4px; } .menu-dropdown { opacity: 0; visibility: hidden; pointer-events: none; cursor: auto; height: 10px; background: var(--f7-menu-bg-color); position: relative; } .menu-dropdown-content { position: absolute; top: 100%; border-radius: var(--f7-menu-dropdown-border-radius, var(--f7-menu-item-border-radius)); padding-top: var(--f7-menu-dropdown-padding-vertical); padding-bottom: var(--f7-menu-dropdown-padding-vertical); box-sizing: border-box; background: var(--f7-menu-bg-color); will-change: scroll-position; overflow: auto; -webkit-overflow-scrolling: touch; min-width: calc(100% + 24px); } .menu-dropdown-link, .menu-dropdown-item { display: flex; justify-content: space-between; align-items: center; padding-left: var(--f7-menu-item-padding-horizontal); padding-right: var(--f7-menu-item-padding-horizontal); min-height: var(--f7-menu-dropdown-item-height); line-height: var(--f7-menu-line-height); font-size: var(--f7-menu-font-size); color: var(--f7-menu-text-color); font-weight: var(--f7-menu-font-weight); white-space: nowrap; min-width: 100px; } .menu-dropdown-link i, .menu-dropdown-item i, .menu-dropdown-link i.icon, .menu-dropdown-item i.icon, .menu-dropdown-link i.f7-icons, .menu-dropdown-item i.f7-icons, .menu-dropdown-link i.material-icons, .menu-dropdown-item i.material-icons { font-size: 20px; } .menu-dropdown-link.active-state { background: var(--f7-menu-dropdown-pressed-bg-color, var(--f7-theme-color)); color: var(--f7-menu-text-color); } .menu-dropdown-divider { height: 1px; margin-top: 2px; margin-bottom: 2px; background: var(--f7-menu-dropdown-divider-color); } .menu-item-dropdown-opened { border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; } .menu-item-dropdown-opened .menu-item-content:after { opacity: 0; } .menu-item-dropdown-opened .menu-dropdown { opacity: 1; visibility: visible; pointer-events: auto; } .menu-item-dropdown-left .menu-dropdown:after, .menu-item-dropdown-center .menu-dropdown:after, .menu-dropdown-left:after .menu-dropdown-center:after { content: ''; position: absolute; left: 100%; bottom: 0; width: 8px; height: 8px; background-image: radial-gradient(ellipse at 100% 0%, transparent 0%, transparent 70%, var(--f7-menu-bg-color) 72%); } .menu-item-dropdown-right .menu-dropdown:before, .menu-item-dropdown-center .menu-dropdown:before, .menu-dropdown-right:before, .menu-dropdown-center:before { content: ''; position: absolute; right: 100%; bottom: 0; width: 8px; height: 8px; background-image: radial-gradient(ellipse at 0% 0%, transparent 0%, transparent 70%, var(--f7-menu-bg-color) 72%); } .menu-item-dropdown-left .menu-dropdown-content, .menu-dropdown-left .menu-dropdown-content { left: 0; border-top-left-radius: 0px; } .menu-item-dropdown-right .menu-dropdown-content, .menu-dropdown-right .menu-dropdown-content { right: 0; border-top-right-radius: 0px; } .menu-item-dropdown-center .menu-dropdown-content, .menu-dropdown-center .menu-dropdown-content { left: 50%; min-width: calc(100% + 24px + 24px); transform: translateX(-50%); } iframe#viAd { z-index: 12900 !important; background: #000 !important; } .vi-overlay { background: rgba(0, 0, 0, 0.85); z-index: 13100; position: absolute; left: 0%; top: 0%; width: 100%; height: 100%; border-radius: 3px; display: flex; justify-content: center; flex-direction: column; align-items: center; align-content: center; text-align: center; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } @supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) { .vi-overlay { background: rgba(0, 0, 0, 0.65); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); } } .vi-overlay .vi-overlay-text { text-align: center; color: #fff; max-width: 80%; } .vi-overlay .vi-overlay-text + .vi-overlay-play-button { margin-top: 15px; } .vi-overlay .vi-overlay-play-button { width: 44px; height: 44px; border-radius: 50%; border: 2px solid #fff; position: relative; } .vi-overlay .vi-overlay-play-button.active-state { opacity: 0.55; } .vi-overlay .vi-overlay-play-button:before { content: ''; width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 14px solid #fff; position: absolute; left: 50%; top: 50%; margin-left: 2px; transform: translate(-50%, -50%); } /* === Elevation === */ :root { --f7-elevation-0: 0px 0px 0px 0px rgba(0, 0, 0, 0); --f7-elevation-1: 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-elevation-2: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12); --f7-elevation-3: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12); --f7-elevation-4: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12); --f7-elevation-5: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12); --f7-elevation-6: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12); --f7-elevation-7: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12); --f7-elevation-8: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12); --f7-elevation-9: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12); --f7-elevation-10: 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-elevation-11: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12); --f7-elevation-12: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12); --f7-elevation-13: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12); --f7-elevation-14: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12); --f7-elevation-15: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12); --f7-elevation-16: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12); --f7-elevation-17: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12); --f7-elevation-18: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12); --f7-elevation-19: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12); --f7-elevation-20: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12); --f7-elevation-21: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12); --f7-elevation-22: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12); --f7-elevation-23: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12); --f7-elevation-24: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12); } .elevation-0 { box-shadow: var(--f7-elevation-0) !important; } .elevation-1 { box-shadow: var(--f7-elevation-1) !important; } .elevation-2 { box-shadow: var(--f7-elevation-2) !important; } .elevation-3 { box-shadow: var(--f7-elevation-3) !important; } .elevation-4 { box-shadow: var(--f7-elevation-4) !important; } .elevation-5 { box-shadow: var(--f7-elevation-5) !important; } .elevation-6 { box-shadow: var(--f7-elevation-6) !important; } .elevation-7 { box-shadow: var(--f7-elevation-7) !important; } .elevation-8 { box-shadow: var(--f7-elevation-8) !important; } .elevation-9 { box-shadow: var(--f7-elevation-9) !important; } .elevation-10 { box-shadow: var(--f7-elevation-10) !important; } .elevation-11 { box-shadow: var(--f7-elevation-11) !important; } .elevation-12 { box-shadow: var(--f7-elevation-12) !important; } .elevation-13 { box-shadow: var(--f7-elevation-13) !important; } .elevation-14 { box-shadow: var(--f7-elevation-14) !important; } .elevation-15 { box-shadow: var(--f7-elevation-15) !important; } .elevation-16 { box-shadow: var(--f7-elevation-16) !important; } .elevation-17 { box-shadow: var(--f7-elevation-17) !important; } .elevation-18 { box-shadow: var(--f7-elevation-18) !important; } .elevation-19 { box-shadow: var(--f7-elevation-19) !important; } .elevation-20 { box-shadow: var(--f7-elevation-20) !important; } .elevation-21 { box-shadow: var(--f7-elevation-21) !important; } .elevation-22 { box-shadow: var(--f7-elevation-22) !important; } .elevation-23 { box-shadow: var(--f7-elevation-23) !important; } .elevation-24 { box-shadow: var(--f7-elevation-24) !important; } .device-desktop .elevation-hover-0:hover { box-shadow: var(--f7-elevation-0) !important; } .device-desktop .elevation-hover-1:hover { box-shadow: var(--f7-elevation-1) !important; } .device-desktop .elevation-hover-2:hover { box-shadow: var(--f7-elevation-2) !important; } .device-desktop .elevation-hover-3:hover { box-shadow: var(--f7-elevation-3) !important; } .device-desktop .elevation-hover-4:hover { box-shadow: var(--f7-elevation-4) !important; } .device-desktop .elevation-hover-5:hover { box-shadow: var(--f7-elevation-5) !important; } .device-desktop .elevation-hover-6:hover { box-shadow: var(--f7-elevation-6) !important; } .device-desktop .elevation-hover-7:hover { box-shadow: var(--f7-elevation-7) !important; } .device-desktop .elevation-hover-8:hover { box-shadow: var(--f7-elevation-8) !important; } .device-desktop .elevation-hover-9:hover { box-shadow: var(--f7-elevation-9) !important; } .device-desktop .elevation-hover-10:hover { box-shadow: var(--f7-elevation-10) !important; } .device-desktop .elevation-hover-11:hover { box-shadow: var(--f7-elevation-11) !important; } .device-desktop .elevation-hover-12:hover { box-shadow: var(--f7-elevation-12) !important; } .device-desktop .elevation-hover-13:hover { box-shadow: var(--f7-elevation-13) !important; } .device-desktop .elevation-hover-14:hover { box-shadow: var(--f7-elevation-14) !important; } .device-desktop .elevation-hover-15:hover { box-shadow: var(--f7-elevation-15) !important; } .device-desktop .elevation-hover-16:hover { box-shadow: var(--f7-elevation-16) !important; } .device-desktop .elevation-hover-17:hover { box-shadow: var(--f7-elevation-17) !important; } .device-desktop .elevation-hover-18:hover { box-shadow: var(--f7-elevation-18) !important; } .device-desktop .elevation-hover-19:hover { box-shadow: var(--f7-elevation-19) !important; } .device-desktop .elevation-hover-20:hover { box-shadow: var(--f7-elevation-20) !important; } .device-desktop .elevation-hover-21:hover { box-shadow: var(--f7-elevation-21) !important; } .device-desktop .elevation-hover-22:hover { box-shadow: var(--f7-elevation-22) !important; } .device-desktop .elevation-hover-23:hover { box-shadow: var(--f7-elevation-23) !important; } .device-desktop .elevation-hover-24:hover { box-shadow: var(--f7-elevation-24) !important; } .active-state.elevation-pressed-0, .device-desktop .active-state.elevation-pressed-0 { box-shadow: var(--f7-elevation-0) !important; } .active-state.elevation-pressed-1, .device-desktop .active-state.elevation-pressed-1 { box-shadow: var(--f7-elevation-1) !important; } .active-state.elevation-pressed-2, .device-desktop .active-state.elevation-pressed-2 { box-shadow: var(--f7-elevation-2) !important; } .active-state.elevation-pressed-3, .device-desktop .active-state.elevation-pressed-3 { box-shadow: var(--f7-elevation-3) !important; } .active-state.elevation-pressed-4, .device-desktop .active-state.elevation-pressed-4 { box-shadow: var(--f7-elevation-4) !important; } .active-state.elevation-pressed-5, .device-desktop .active-state.elevation-pressed-5 { box-shadow: var(--f7-elevation-5) !important; } .active-state.elevation-pressed-6, .device-desktop .active-state.elevation-pressed-6 { box-shadow: var(--f7-elevation-6) !important; } .active-state.elevation-pressed-7, .device-desktop .active-state.elevation-pressed-7 { box-shadow: var(--f7-elevation-7) !important; } .active-state.elevation-pressed-8, .device-desktop .active-state.elevation-pressed-8 { box-shadow: var(--f7-elevation-8) !important; } .active-state.elevation-pressed-9, .device-desktop .active-state.elevation-pressed-9 { box-shadow: var(--f7-elevation-9) !important; } .active-state.elevation-pressed-10, .device-desktop .active-state.elevation-pressed-10 { box-shadow: var(--f7-elevation-10) !important; } .active-state.elevation-pressed-11, .device-desktop .active-state.elevation-pressed-11 { box-shadow: var(--f7-elevation-11) !important; } .active-state.elevation-pressed-12, .device-desktop .active-state.elevation-pressed-12 { box-shadow: var(--f7-elevation-12) !important; } .active-state.elevation-pressed-13, .device-desktop .active-state.elevation-pressed-13 { box-shadow: var(--f7-elevation-13) !important; } .active-state.elevation-pressed-14, .device-desktop .active-state.elevation-pressed-14 { box-shadow: var(--f7-elevation-14) !important; } .active-state.elevation-pressed-15, .device-desktop .active-state.elevation-pressed-15 { box-shadow: var(--f7-elevation-15) !important; } .active-state.elevation-pressed-16, .device-desktop .active-state.elevation-pressed-16 { box-shadow: var(--f7-elevation-16) !important; } .active-state.elevation-pressed-17, .device-desktop .active-state.elevation-pressed-17 { box-shadow: var(--f7-elevation-17) !important; } .active-state.elevation-pressed-18, .device-desktop .active-state.elevation-pressed-18 { box-shadow: var(--f7-elevation-18) !important; } .active-state.elevation-pressed-19, .device-desktop .active-state.elevation-pressed-19 { box-shadow: var(--f7-elevation-19) !important; } .active-state.elevation-pressed-20, .device-desktop .active-state.elevation-pressed-20 { box-shadow: var(--f7-elevation-20) !important; } .active-state.elevation-pressed-21, .device-desktop .active-state.elevation-pressed-21 { box-shadow: var(--f7-elevation-21) !important; } .active-state.elevation-pressed-22, .device-desktop .active-state.elevation-pressed-22 { box-shadow: var(--f7-elevation-22) !important; } .active-state.elevation-pressed-23, .device-desktop .active-state.elevation-pressed-23 { box-shadow: var(--f7-elevation-23) !important; } .active-state.elevation-pressed-24, .device-desktop .active-state.elevation-pressed-24 { box-shadow: var(--f7-elevation-24) !important; } .elevation-transition-100 { transition-duration: 100ms; transition-property: box-shadow; } .elevation-transition, .elevation-transition-200 { transition-duration: 200ms; transition-property: box-shadow; } .elevation-transition-300 { transition-duration: 300ms; transition-property: box-shadow; } .elevation-transition-400 { transition-duration: 400ms; transition-property: box-shadow; } .elevation-transition-500 { transition-duration: 500ms; transition-property: box-shadow; } /* === Typography === */ .ios { --f7-typography-padding: 15px; --f7-typography-margin: 15px; } .md { --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; } .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-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-top { padding-top: var(--f7-typography-padding) !important; } .padding-bottom { padding-bottom: var(--f7-typography-padding) !important; } .padding-left { padding-left: var(--f7-typography-padding) !important; } .padding-right { padding-right: var(--f7-typography-padding) !important; } .padding-vertical { padding-top: var(--f7-typography-padding) !important; padding-bottom: var(--f7-typography-padding) !important; } .padding-horizontal { padding-left: var(--f7-typography-padding) !important; padding-right: var(--f7-typography-padding) !important; } .margin { margin: var(--f7-typography-margin) !important; } .margin-top { margin-top: var(--f7-typography-margin) !important; } .margin-bottom { margin-bottom: var(--f7-typography-margin) !important; } .margin-left { margin-left: var(--f7-typography-margin) !important; } .margin-right { margin-right: var(--f7-typography-margin) !important; } .margin-vertical { margin-top: var(--f7-typography-margin) !important; margin-bottom: var(--f7-typography-margin) !important; } .margin-horizontal { margin-left: var(--f7-typography-margin) !important; margin-right: var(--f7-typography-margin) !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; }