
@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-ExtraLightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-ExtraBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-display: swap;
    font-family: 'zain';
    src: url('/assets/fonts/Exo2-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}

* {
    user-select: none;
}

h1, h2,h3, h4, h5, h6, p, span {
    margin: 0;
}

body {
    font-family: 'zain', sans-serif;
}

html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    display: flex;
    justify-content: center;
    background: #f0f0f0;
}

.text-bold {
    font-weight: bold;
}

.required {
    position: relative;
}

.required:has(input[required])::before {
    content: "\f069";
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    text-shadow: 0 0 3px #ffffff, 0 0 3px #ffffff;
    color: #dc3545;
    position: absolute;
    left: 8px;
    top: 1px;
    transform: translateY(-50%);
    font-size: 12px;
    pointer-events: none;
    z-index: 1000;
}

.is-invalid {
    border-color: #dc3545 !important;
}

.ltr {
    direction: ltr;
}

.btn-hover {
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.375rem;
    --bs-btn-font-family: ;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 400;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: var(--bs-body-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: var(--bs-border-radius);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    display: inline-block;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.app {
    width: 390px;
    max-width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #f5f6f8;
}

.topbar {
    font-weight: bold;
    height: 56px;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 12px;
    border-bottom: 1px solid #ddd;
    flex-shrink: 0;
}

.top-pill {
    background: #333333;
    color: #fff;
    border-radius: 20px;
    padding: 4px 12px;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.content {
    position: relative;
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

#drawerTrigger {
    height: 100%;
    width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

#drawerTrigger i {
    position: absolute;
    transition: all 0.7s ease;
}

#drawerTrigger i.inactive {
    opacity: 1;
}

#drawerTrigger i.active {
    opacity: 0;
}

#drawerTrigger.active i.inactive {
    opacity: 0;
}

#drawerTrigger.active i.active {
    opacity: 1;
}

.sidebar {
    display: flex;
    width: 75%;
    height: 100%;
    position: absolute;
    right: -80%;
    background-color: #f0f0f0;
    flex-direction: column;
    box-shadow: -4px -2px 20px 0px #0000008c;
    transition: all 0.6s ease;
    z-index: 1001;
}

.sidebar.active {
    right: 0;
}

.unavailable {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 15px;
    padding: 15px;
}

.unavailable h3 {
    text-align: center;
    font-weight: bold;
}

.unavailable svg {
    max-width: 150px;
    filter: drop-shadow(2px 2px 2px rgb(0 0 0 / 0.4));
}

.unavailable button {
    font-size: 1.2rem;
}

.remarker {
    margin: 0;
    padding: 0;
}

.remarker .version {
    font-weight: bold;
    font-style: italic;
}

.relativly-input {
    position: relative;
}

.relativly-input::before {
    content: attr(data-input-title);
    position: absolute;
    top: -10px;
    left: 5px;
    /*background: #fff;*/
    padding: 0 6px;
    font-size: 12px;
    color: #666;
    pointer-events: none;
    z-index: 6;
    text-shadow:
    -1px -1px 0 #fff,
     1px -1px 0 #fff,
    -1px  1px 0 #fff,
     1px  1px 0 #fff,
    -2px  0   0 #fff,
     2px  0   0 #fff,
     0   -2px 0 #fff,
     0    2px 0 #fff;
}

.upper-case {
    text-transform: uppercase;
}

.upper-case::placeholder {
    text-transform: none;
}

.password-strength {
    font-size: 13px;
    font-weight: 600;
}

.strength-weak {
    color: #dc3545;
}

.strength-medium {
    color: #ffc107;
}

.strength-strong {
    color: #198754;
}

.password-strength-bar {
    width: 100%;
    height: 4px;
    background: #e9ecef;
    border-radius: 4px;
    margin-top: 4px;
    overflow: hidden;
}

.password-strength-bar div {
    height: 100%;
    width: 0%;
    transition: width .3s ease, background-color .3s ease;
}

.bar-weak {
    background-color: #dc3545;
}

.bar-medium {
    background-color: #ffc107;
}

.bar-strong {
    background-color: #198754;
}

.gym-switcher .dropdown-toggle {
    border-radius: 999px;
    padding: 6px 12px;
}

.gym-logo {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
}

.gym-switcher .dropdown-menu {
    min-width: 240px;
}

.gym-switcher .dropdown-item.active {
    background-color: #f1f3f5;
    font-weight: 600;
}

.dropdown-menu.dropdown-menu-end.show {
    z-index: 1002;
    inset: 0px 0px auto 0!important;
}

.dropdown-item.active, .dropdown-item:active {
    color: #111;
}

.content::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1000;
    opacity: 0;
    pointer-events: none;
    background-color: #00000040;
    transition: all 0.6s ease;
}

.content:has(.sidebar.active)::before {
    opacity: 1;
    pointer-events: all;
}


.sidebar-element {
    text-decoration: none;
    padding: 10px 15px;
    display: flex;
    gap: 5px;
    align-items: baseline;
    color: #333333;
    font-size: 1.25rem;
    border-bottom: 1px solid #ccc;
    /*box-shadow: -4px 1px 6px -1px rgb(0, 0, 0, .22);*/
}

.sidebar-element:nth-child(even) {
    background-color: #fff;
}

.sidebar-element:nth-child(odd) {
    background-color: #f5f6f8;
}

.sidebar-element.active {
    background-color: #333333;
    color: #fff;
}

.sidebar-element .icon-span {
    width: 12%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
}

.flex-space {
    flex-grow: 1;
    display: flex;
    justify-content: space-between;
}

.bottomer {
    padding: 10px;
    display: flex;
    gap: 5px;
    justify-content: center;
    align-items: center;
}

.home-grid {
    display: grid;
    overflow: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    padding: 12px;
}

.home-grid a {
    background: #ffffff;
    border-radius: 14px;
    height: 110px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    align-items: center;
    text-decoration: none;
    color: #333;
    font-size: 14px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.home-grid i {
    font-size: 30px;
    color: #333333;
}

.home-grid a:active {
    transform: scale(0.96);
}

.noAccessContainer {
    padding: 25px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.textNeg {
    font-weight: bold;
}

.noAccess {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

#app-content {
    opacity: 1;
    transition: opacity 0.2s ease-in-out;
}

#app-content.fade-out {
    opacity: 0;
}

.login-wrap {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-card {
    width: 90%;
    max-width: 320px;
    background: #ffffff;
    border-radius: 18px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 15px;
}

form.login-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.login-img {
    text-align: center;
}

.login-img img {
    max-width: 75px;
}

.login-header {
    text-align: center;
}

.login-header h2 {
    margin: 0;
    font-weight: 700;
    color: #333;
}

.form-group input {
    width: 100%;
    height: 46px;
    border-radius: 12px;
    border: 1px solid #ddd;
    padding: 0 14px;
    font-size: 14px;
    outline: none;
}

.form-group input:focus {
    border-color: #333333;
}

.btn-login {
    width: 100%;
    height: 46px;
    border: none;
    border-radius: 14px;
    background: #333333;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
}

.btn-login:active {
    transform: scale(0.97);
}

.login-links {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
}

.login-links a {
    text-decoration: none;
    color: #333333;
}

#cropperModal {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.7);
    display: none;
    z-index: 9999;
}

#cropImage {
    max-width: 100%;
    max-height: calc(100vh - 30px - 60px);
    border-radius: 12px;
    object-fit: contain;
}

.cropper-inner {
    position: absolute;
    inset: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.crop-actions {
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
}

.crop-actions button {
    flex: 1;
    margin: 0 5px;
    height: 40px;
    border-radius: 10px;
    border: none;
    font-weight: 600;
}

.cropper-line {
    background-color: #0d6efd;
}

.cropper-point {
    width: 12px;
    height: 12px;
    border-radius: 5px!important;
    background-color: #0d6efd;
    border-radius: 50%;
    margin: inherit!important;
    opacity: 1;
}

.cropper-point.point-se,
.cropper-point.point-sw,
.cropper-point.point-ne,
.cropper-point.point-nw {
    width: 16px!important;
    height: 16px!important;
}

.cropper-point.point-n {
    left: 50%;
    transform: translateX(-50%);
    top: -3px;
    width: 100px;
}

.cropper-point.point-w {
    left: -3px;
    top: 50%;
    transform: translateY(-50%);
    height: 100px;
}

.cropper-point.point-e {
    right: -3px;
    top: 50%;
    transform: translateY(-50%);
    height: 100px;
}

.cropper-point.point-s {
    bottom: -3px;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
}

.avatarPickBtn {
    position: absolute;
    display: flex;
    color: #fff;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: none;
    background-color: #333333;
    font-size: 1.4rem;
    border-radius: 50%;
    bottom: -5px;
    right: -5px;
}

.register-wrap {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.register-card {
    width: 90%;
    max-width: 340px;
    background: #fff;
    border-radius: 18px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.avatar-picker {
    position: relative;
    align-self: center;
    text-align: center;
}

.avatar-picker input {
    display: none;
}

.avatar-picker img {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    margin-bottom: 6px;
}

.date-wrap {
    position: relative;
}

.date-input {
    position: relative;
    background: transparent;
}

.date-placeholder {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #999;
    pointer-events: none;
}

.date-input[value] + .date-placeholder,
.date-input:focus + .date-placeholder {
    display: none;
}

.date-input::-webkit-datetime-edit {
    color: transparent;
}
.date-input:focus::-webkit-datetime-edit,
.date-input:valid::-webkit-datetime-edit {
    color: #000;
}

.date-input::-webkit-calendar-picker-indicator {
    opacity: 0;
    display: none;
}

.country-menu {
    max-height: 240px;
    overflow-y: auto;
}

.date-wrap {
    position: relative;
}

.btn.btn-outline-light.dropdown-toggle.phone-dial {
    padding: 5px 10px;
    display: flex;
    align-items: flex-end;
    font-weight: bold;
    justify-content: center;
    color: #666;
    width: 20%;
    border-color: var(--bs-border-color);
}

.viewPwd {
    padding: 5px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    width: 15%;
    border-color: var(--bs-border-color);
}

.btn.btn-outline-light.dropdown-toggle.phone-dial:after {
    display: none;
}

.phone-dial {
    direction: ltr;
    unicode-bidi: bidi-override;
    text-align: left;
}

#countryMenu {
    width: 100%;
    scrollbar-width: none;
    transform: translate(0px, 40px);
    padding: 10px;
}

.fullSettings {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.settings-element.settingsHead {
    height: 15%;
    min-height: 80px;
    border-bottom: solid 3px #ddd;
    display: flex;
    gap: 10px;
    padding: 5px 10px;
    align-items: center;
}

.settings-element.settingsBody {
    flex: 1;
    background-color: #fff;
    overflow: auto;
}

.settings-element.settingsFoot {
    height: 5%;
    border-top: solid 1px #ddd;
    display: flex;
    gap: 10px;
    padding: 5px;
    align-items: center;
}

.avatar-container {
    position: relative;
    height: 75px;
    width: 75px;    
}

.avatar-container .iconSpan {
    position: absolute;
    bottom: 0px;
    right: 0px;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.avatar-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    overflow: hidden;
}

.user-info {
    flex: 1;
}

.logouter *,
.user-info * {
    margin: 0!important;
}

a.logouter {
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 2px;
    padding: 5px;
    min-width: 60px;
}

a.logouter i {
    font-size: 20px;
}

a.logouter p {
    font-size: 12px;
}

ul.settings-options {
    list-style: none;
    padding: 0;
    margin: 0;
}

ul.settings-options li a {
    text-decoration: none;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: solid 2px #33333363;
}

ul.settings-options li a.deleter {
    border-bottom: solid 2px #c3000063;
}

ul.settings-options li a .setting-icon {
    width: 10%;
    font-size: 1.3rem;
    color: #333333;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.settings-options li a.deleter span {
    color: #c30000;
}

.max-cards {
    position: relative;
    overflow: auto;
    width: 100%;
    height: 100%;
    display: flex;
    gap: 10px;
    padding: 10px;
    flex-direction: column;
}

.inbox.max-cards {
    justify-content: center;
    align-items: center;
    opacity: 0.2;
}

.inbox.max-cards i {
    font-size: 4rem;
}

.inbox.max-cards span {
    font-size: 1.25rem;
    font-weight: bold;
    text-align: center;
}

.inbox.max-cards.nonosa {
    opacity: 1!important;
}

.save-btn {
    transition: all 1s ease;
}

.unvisible {
    opacity: 0;
    pointer-events: none;
}

.card-header.times {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.card-pack {
    position: relative;
    width: 100%;
    height: 200px;
    border-radius: 20px;
    padding: 15px;
    display: flex;
    flex-direction: column;
}

.card-pack.style-one {
    background: linear-gradient(45deg, #111, #555, #333);
}

.card-pack.style-two {
    background: linear-gradient(45deg, #18cea3, #008090, #333);
}

.card-pack.style-three {
    background: linear-gradient(45deg, #64105e, #340091, #424957);
}

.card-pack.style-four {
    background: linear-gradient(45deg, #bd0000, #700000, #ec0000);
}

div.max-cards .card-pack.style-four .text-danger {
    color: #fff!important;
}

.card-pack.style-five {
    background: linear-gradient(45deg, #d3d3d3, #e3e3e3, #c4c4c4);
}

div.max-cards .card-pack.style-five .text-white,
div.max-cards .card-pack.style-five .prices {
    color: #000!important;
}

.lefty-flex {
    align-self: flex-end;
}

.righty-flex {
    align-self: flex-start;
}

.centry-flex {
    align-self: center;
}

.dates {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.dates p {
    margin: 0;
}

.prices {
    align-self: flex-end;
    display: flex;
    color: #fff;
    line-height: 1;
}

.prices .euro {
    line-height: 1.6;
    font-size: 1.25rem;
}

.prices .value {
    font-size: 3rem;
}

.prices .psz {
    line-height: 1.6;
    font-size: 1.25rem;
    align-self: flex-end;
}

.filter-head {
    display: flex;
    align-items: stretch;
    height: 40px;
    gap: 5px;
}

.flex-1 {
    flex: 1;
    height: 100%;
}

.filters-drawer {
    position: absolute;
    top: 52px;
    left: 10px;
    background-color: #eee;
    border-radius: 10px;
    width: 0;
    overflow: hidden;
    box-shadow: 0 0 10px 0 #00000061;
    z-index: 999;
    transition: all 0.5s ease;
}

.filters-drawer.active {
    width: calc(100% - 20px);
}

.filters-insider {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-width: 370px;
    box-sizing: border-box;
    height: 100%;
    padding: 10px;
    overflow-x: auto;
    overflow-y: hidden;
}

.filters-insider .checking {
    display: flex;
    align-items: center;
    gap: 5px;
}

.l-h-1 {
    line-height: 1;
}

.form-check-input[type="radio"] {
    background-image: none !important;
}

.filters-insider label {
    cursor: pointer;
    color: #333333;
    font-weight: 600;
}

.collective {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#editOpeneingTimes,
#openeingTimes {
    max-height: 0;
    overflow: hidden;
    transition: max-height 1s ease, opacity 1s ease;
    opacity: 0;
}

#editOpeneingTimes.active,
#openeingTimes.active {
    max-height: 500px;
    opacity: 1;
}

.containerOfPacks,
.containerOfFest {
    width: 100%;
    height: 100%;
    overflow: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.card-locker {
    font-size: 3rem;
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
    opacity: 0.2;
    z-index: 0;
}

.z-1 {
    z-index: 1;
}

.no-fests {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    opacity: 0.2;
    align-items: center;
    justify-content: center;
}

.no-fests i {
    font-size: 3rem;
}

#viewTypeBadge {
    display: flex;
    align-items: center;
    justify-content: center;
}

#viewTypeBadge span {
    display: flex;
    gap: 10px;
    font-size: 0.8rem;
    align-items: baseline;
}

.fest-item {
    transition: opacity 0.35s ease, transform 0.25s ease;
    opacity: 1;
    transform: scale(1);
    will-change: opacity, transform;
}

.hide-after-filter {
    opacity: 0;
    transform: scale(0.98);
    pointer-events: none;
}

.hide-after-filter.is-gone {
    display: none !important;
}

.floxoos {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
}

.gymlyLogo {
    position: relative;
}

.gymlyLogo img {
    height:120px;
    object-fit:contain;
}

.gymlyLogo .logoStatusIcon {
    position: absolute;
    font-size: 1.2rem;
    bottom: 0;
    right: 0;
}

.cardHead {
    display: flex;
    gap: 1rem;
    justify-content: flex-start;
    align-items: center;
}

.info-headCard {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.input-group-spaced {
    display: flex;
    gap: 0.2rem;
}

.input-group-spaced input {
    border-radius: 50px;
}

#addUser {
    width: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    border-radius: 50%;
}

.pack-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-radius:14px;
    padding:10px;
}
.pack-left{
    display:flex;
    flex-direction:column;
}
.pack-mid{
    text-align:center;
}
.pack-actions{
    display:flex;
    gap:6px;
}
.pack-item.disabled{
    opacity:.45;
    pointer-events:none;
}

.header-with-filter {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
}

.footer-with-filter {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

.footer-with-filter a.btn {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.bottombar {
    height: 45px;
    background: #ffffff;
    border-top: 1px solid #ddd;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-shrink: 0;
    padding: 0 0 5px 0;
}

.bottombar a {
    flex: 1 1;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 10px;
    border-radius: 0 0px 20px 20px;
    text-decoration: none;
    color: #999;
    font-size: 11px;
}

.bottombar {
    position: relative;
}

.tab-indicator {
    position: absolute;
    top: 0;
    left: 0;
    height: calc(100% - 5px);
    background: #333333;
    border-radius: 0 0 20px 20px;
    transition: left 0.25s ease, width 0.25s ease;
    z-index: 0;
}

.bottombar a {
    position: relative;
    z-index: 1;
    transition: color 0.2s ease;
}

.bottombar a.active i {
    color: #fff;
}

.bottombar a i {
    color: #999;
    transition: color 0.2s ease;
}

.bottombar i {
    font-size: 20px;
}

.buy-icon {
    font-size: 1.5rem;
    width: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}