/*hack to fix subnavbar on asus z phone with 4.0.4 android*/
html:not(.ios) .navbar {height: 58px!important;}
/*end of hacks*/

.android .navbar-fixed .page .subnavbar, .android .navbar-fixed.page .subnavbar, .android .navbar-through .page .subnavbar, .android .navbar-through.page .subnavbar {
    top: 57px;
}

#app { position: absolute; left: 0; top: 0; height: 100%; width: 100%; }
.showa #app { height: calc(100% - 90px) !important; top: 90px !important;}
#aholder { position: absolute; left: 0; top: -1000px; width: 100%; height: 90px; overflow: hidden; }
.showa #aholder { top: 0px !important;}
.panel { font-size: 15px; }
.navbar, .subnavbar, .toolbar {background: var(--theme-color, #000096);}
.navbar-inner .left.fullwidth {width: 100%;}
.navbar-inner .left.fullwidth a {flex-grow: 1;}
.navbar a.link .badge {border-radius: 50%;padding: 3px 7px 1px 6px;font-weight: bold; top: -6px;}
.subnavbar.list_chooser_as_select {height: 44px;}
.top-menu-div .active:after {
    content: '';
    display: block;
    width: 24px;
    height: 2px;
    position: absolute;
    bottom: 10px;
    background-color: #ffffff;
}
.top-menu-appicon {
    height: 26px;
    vertical-align: middle;
    background-color: white;
    border-radius: 50%;
    border: 5px solid white;
}
.ios .open-panel.menu-icon {
    margin-left: -8px;
}
.ios .top-menu-appicon {
    border: none;
    background-color: transparent;
}

.back-link .icon-back { margin-left: 7px; }
.photo-browser .navbar, .photo-browser .toolbar, .views .view[data-page=photo-browser-slides] .navbar, .views .view[data-page=photo-browser-slides] .toolbar {
    background: rgba(0,0,150,.95);
}
.photo-browser-exposed .toolbar {
    opacity: 0.8!important;
    background-color: #000!important;
    pointer-events: auto!important;
    visibility: visible!important;
}

.photo-browser-exposed .toolbar a.visible:not(.swiper-button-disabled):not(.photo-browser-link-inactive) {opacity: 1!important;}
.photo-browser-exposed .photo-browser-caption-active {bottom: 48px;}
#upload_photo, #upload_photo_grid {font-size: 16px;}
.photo-browser-next.big i.icon.icon-next, .photo-browser-prev.big i.icon.icon-prev {
    width: 48px;
    height: 48px;
}
/*.photo-browser .tabbar i.icon {height: 28px;}*/
.font-21px {font-size: 21px;}
.menudots {font-size: 24px;}
.nopadding {padding: 0!important;}
.nopadding-top {padding-top: 0!important;}
.nomargin {margin: 0!important;}
.no-top-margin {margin-top: 0!important;}
.bold {font-weight: bold;}
.txt-center {text-align: center!important;}
.pad16 {padding: 16px;}
.pad-top-40p {padding-top: 40%!important;}
.pad-top-16px {padding-top: 16px!important;}
.pad-top-32px {padding-top: 32px!important;}
.pad-top-bottom-8px {padding-top: 8px!important; padding-bottom: 8px!important;}
.pad-top-bottom-4px {padding-top: 4px!important; padding-bottom: 4px!important;}
.pad-bottom-4px {padding-bottom: 4px!important;}
.margin-top-8p {margin-top: 8px!important;}
.margin-top-16p {margin-top: 16px!important;}
.margin-top-4p {margin-top: 4px!important;}
.margin-top-6p {margin-top: 6px!important;}
.margin-bottom-8p {margin-bottom: 8px!important;}
.margin-bottom-16p {margin-bottom: 16px!important;}
.margin-left-8p {margin-left: 8px!important;}
.margin-left-16p {margin-left: 16px!important;}
.margin-left-20p {margin-left: 20px!important;}
.margin-lr-8px {margin: 0 8px!important;}
.lineheight30px {line-height: 30px;}
.vert-middle {vertical-align: middle;}
.float-left {float: left;}
.float-right {float: right;}
.wraptext {white-space: normal!important;}
.bg-appcolor {background: #000096!important;}
html:not(.ios) .text-appcolor {color: #000096!important;}
.color-gold {color: #daa520!important;}
.bgcolor-gold {background-color: #F8BF24!important;}
.bgcolor-silver {background-color: #C0C0C0!important;}
.color-online {color: #4caf50;}
.color-inactive {color: #ffc107;}
/*span.gold {color: #ff8200!important;}*/
span.datanumber {font-weight: bold!important; color: #000000!important;}
@media screen and (max-width: 400px)
{
    span.datanumber:before {content: "\a ";white-space: pre;}
}
.bg-whitesmoke {background-color: #eeeeee;}
.text-white {color: #fff!important;}
.zindex2 {z-index: 2;}
.zindex3 {z-index: 3;}
html:not(.ios) input[type="date"] {line-height: 34px!important;}
html:not(.ios) input[type="text"],
html:not(.ios) input[type="email"],
html:not(.ios) input[type="tel"],
html:not(.ios) input[type="password"],
html:not(.ios) input[type="date"],
html:not(.ios) select,
html:not(.ios) textarea {padding-left: 8px!important; padding-right: 8px!important; background-color: #eeeeee!important; border-radius: 0.25rem; border: 1px solid #c0c0c0}

html:not(.ios) .item-input:after {height: 0}

html:not(.ios) input[type="text"].focus-state,
html:not(.ios) input[type="email"].focus-state,
html:not(.ios) input[type="tel"].focus-state,
html:not(.ios) input[type="password"].focus-state,
html:not(.ios) input[type="date"].focus-state,
html:not(.ios) select.focus-state,
html:not(.ios) textarea.focus-state {border: solid 2px #2196f3!important; box-shadow: none!important;}
html textarea.noborder, html textarea.focus-state.noborder {border: none!important;}
html textarea.noshadow, html textarea.focus-state.noshadow, html select.noshadow {box-shadow: none!important;}
.item-input.focus-state:after {content: none!important;}
.infinite-scroll-preloader {margin-top:-20px;margin-bottom: 10px;text-align: center;}
.infinite-scroll-preloader .preloader {width:34px;height:34px;}
ul.items-container .item-title img, ul.items-container .item-subtitle img {margin-right: 3px;}
ul.items-container .item-media {position: relative;}
.bottom-right-corner {bottom: 12px; right: 8px; position: absolute; display: flex; flex-direction: column; align-items: flex-end; z-index: 1;}
.squared-member-block-img > .bottom-right-corner {bottom: 8px; right: 8px;}
.bottom-right-corner > * {margin-bottom: 4px; background-color: rgba(255, 255, 255, 0.85); border-radius: 50%; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; box-shadow: 0 1px 3px rgba(0,0,0,0.2);}
.bottom-right-corner img {max-width: 22px; max-height: 22px;}
.squared-outer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: stretch;
    box-sizing: border-box;
    padding: 5px;
}
.squared-outer > .memberlist-squared-inner {
    flex: 1 1 168px;
    min-width: 115px;
    max-width: 300px;
    margin: 2px;
}
.squared-outer > .photolist-squared-inner {
    flex: 1 1 112px;
    min-width: 100px;
    max-width: 150px;
    margin: 2px;
}
.index-page .memberlist-squared-inner,
.index-page .photolist-squared-inner {
    flex-basis: 180px;
}
.index-page .photolist-squared-inner {
    max-width: 240px;
}
@media (min-width: 320px) and (max-width: 425px) {
    .index-page .memberlist-squared-inner,
    .index-page .photolist-squared-inner {
        flex-basis: 115px;
    }
}
@media (min-width: 768px) and (max-width: 799px) {
    .index-page .memberlist-squared-inner,
    .index-page .photolist-squared-inner {
        flex-basis: 160px;
    }
}
@media (min-width: 800px) and (max-width: 809px) {
    .index-page .memberlist-squared-inner,
    .index-page .photolist-squared-inner {
        flex-basis: 128px;
    }
}
@media (min-width: 810px) and (max-width: 830px) {
    .index-page .memberlist-squared-inner,
    .index-page .photolist-squared-inner {
        flex-basis: 174px;
    }
}
@media (min-width: 1024px) {
    .index-page .memberlist-squared-inner,
    .index-page .photolist-squared-inner {
        flex-basis: 118px;
    }
}
/*@media all and (min-width: 1366px)*/
/*{*/
/*    .index-page .memberlist-squared-inner {*/
/*        flex-basis: 182px;*/
/*    }*/
/*    .index-page .photolist-squared-inner {*/
/*        flex-basis: 178px;*/
/*    }*/
/*}*/

/*.preloader-indicator-overlay {*/
/*    opacity: 20%;*/
/*    background: gray;*/
/*}*/
.preloader-indicator-modal {
    background: transparent;
    margin-left: -60px;
    margin-top: -60px;
    /*border-radius: 20px;*/
}
@keyframes heartanim {
    0% { transform: scale(.85) }
    5% { transform: scale(1) }
    39% { transform: scale(.75) }
    45% { transform: scale(.9) }
    60% { transform: scale(.85) }
    100% { transform: scale(.8) }
}

.preloader:before {
    content: "\f004";
}

.preloader {
    display: inline-block;
    font: normal normal normal 14px / 1 FontAwesome;
    font-size: 120px;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;

    width: 120px!important;
    height: 120px!important;
    background-image: none!important;
    color: #e90c59;
    animation: heartanim 1s infinite cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-animation: heartanim 1s infinite cubic-bezier(0.215, 0.61, 0.355, 1);
    transform-origin: 60px 60px;
}

.list-block.notopoffset {margin-top: 0;}
.list-block.notopoffset.with-subnavbar {margin-top: 56px;}
.buttons-row .button:first-child {margin-left: 8px;}
.buttons-row .button:last-child {margin-right: 8px;}
#browse-filter-form .label-checkbox .item-media,
#search-filter-form .label-checkbox .item-media,
#detailed-search-filter-form .label-checkbox .item-media {min-width: 10px;}
#browse-filter-form .label-checkbox .item-title,
#search-filter-form .label-checkbox .item-title,
#detailed-search-filter-form .label-checkbox .item-title {margin-top: 5px;}
#browse-filter-form .item-input.halfrow,
#search-filter-form .item-input.halfrow,
#detailed-search-filter-form .item-input.halfrow {max-width: 45%; margin-right: 5%; float: left;}
#detailed-search-filter-form .item-input.one-row-left {max-width: 75%; margin-right: 5%; float: left;}
#detailed-search-filter-form .item-input.one-row-right {max-width: 20%; float: left;}
.form-errors, .form-errors.item-title {display: none; color: #ff0000!important; white-space: normal; font-size: 12px; }
.form-errors.non-field {padding-left: 16px;}
/*.button.rounded {border-radius: 4px; margin: 0 16px;}*/
.button { border-radius: 0.5rem; }
.button.really-rounded {border-radius: 50px; margin: 0 16px;}
html:not(.ios) .login-tabs .button {color: #a0a0a0;}
html:not(.ios) .login-tabs .button.active {border-bottom: 2px solid #000096;color: #2196f3;}
html:not(.ios) .button.button-fill.color-appblue {background: #000096!important;}
.password-eye { position: absolute; right: 25px; font-size: 20px; z-index: 1; top: 28px; }
.button.button-flat-bordered {background: #fff; color: #000096; border: 1px solid #000096; font-weight: bold; font-size: 16px;}
.button.button-flat-bordered.smaller {font-size: 14px;}
.button.button-raised.button-fill.smaller {font-size: 14px;}
.button.button-flat-bordered.color-green {color: #4caf50!important; border-color: #4caf50!important;}
.floating-button.profile-actions {top: 308px; right: 86px;}
.floating-button.profile-actions span {text-align: center; padding: 13px;}
.floating-button.profile-actions.submenu {right: 16px;}
.toolbar.with-icon-badges a.link {display: block; line-height: 1.4; height: auto; text-align: center;}
.toolbar.with-icon-badges a.link .icon-label {font-size: 10px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -webkit-line-clamp: 1;}
.toolbar.with-icon-badges a.link i.icon {font-size: 24px;}
.toolbar.with-icon-badges a.link .badge {border-radius: 16px;padding-top: 3px;}
.popup-profile .swiper-container {height: 280px; background-color: #000;}
.popup-profile .swiper-container .swiper-slide {height: 280px;display: inline-block;position: relative;}
.popup-profile .swiper-container .swiper-slide img,
.popup-profile .swiper-container .swiper-slide iframe {max-height: 100%;max-width: 100%;width: auto;height: auto;position: absolute;top: 0;bottom: 0;left: 0;right: 0;margin: auto;}
.popup-profile .swiper-pagination-bullet {background: #fff; opacity: 1;}
.popup-profile .swiper-pagination-bullet-active {background: #007aff;}
.swiper-zoom-container > iframe {  max-width: 100%;  max-height: 100%; }
.swiper-zoom-container > iframe.withcomment {  height: calc(100% - 160px);}
.slide-morephotos {border-radius: 4px; margin: 120px 16px 0 16px;}
.popup-profile .swiper-pagination {bottom: 0;}
.info-label {font-weight: bold;}
.info-txt {font-style: italic;}
.popup-profile .accordion-item-content .content-block .row:first-child {margin-top: 16px;}
.popup-profile .accordion-item-content .content-block .row:last-child {margin-bottom: 16px;}
.popup-profile .iconbtns_gallery {margin-top: 8px;}
.popup-profile .iconbtns_gallery > img {height: 48px;}
.popup-profile .navbar img, .pager-lists .navbar img {max-height: 40px; vertical-align: middle;}
.popup-profile .meminfo {padding: 8px 16px;}
.popup-profile .meminfo .big-text {font-size: 18px;}
.popup-profile .nophoto-text {height: 128px; margin: 120px 16px 0 16px;}
.ios .popup-profile i.icon {
    vertical-align: baseline;
}
.pager-lists .list-block .item-text {max-height: 80px;-webkit-line-clamp: 3;}
.pager-lists .messages.items-container .message-text img {border: 1px solid #212121;margin: 4px;}
.pager-lists .messages.items-container .message-text img.text-smile {border: none; margin: 0 2px;}
.pager-lists .messages.items-container .message-pic .message-text img {border: none;margin: 0;}
.pager-lists .messages .message-avatar {background-position: top; width: 32px; height: 32px; margin-top: -32px;}
.pager-lists .messages .message-received.message-with-avatar .message-label,
.pager-lists .messages .message-received.message-with-avatar .message-name,
.pager-lists .messages .message-received.message-with-avatar .message-text { margin-left: 40px; }
.pager-lists .messages .message-text {min-height: 32px;}
.pager-lists .messages .message-received .message-date {float: right; padding-left: 0.7em;}
.pager-lists .messages .message-sent .message-date {float: right; padding-left: 0.7em;}
.pager-lists .subnavbar .center.wide {width: 100%;}
.pager-lists .subnavbar .smaller, .popup-profile .navbar .smaller {font-size: 16px;}
.pager-lists img.border-left-red {border-left: 4px solid red; margin-left: -4px;}
.pager-lists img.border-left-purple {border-left: 4px solid purple; margin-left: -4px;}
.pager-lists img.border-left-green {border-left: 4px solid lightgreen; margin-left: -4px;}

.item-after > img.star { position: absolute; right: 35px; max-height: 28px;}
.contact-list-item .item-after > img.star { right: 85px; }
.contact-list-item .item-title-row { background: none!important; }
.ik-list-action-buttons {
    position: absolute;
    top: 5px;
    right: 10px;
    padding-left: 5px;
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    z-index: 10;
    padding-bottom: 1em;
}
.ik-list-action-buttons > a { margin-bottom: 5px; }
.contact-item.swipeout-opened .ik-list-action-buttons { display: none; }

.leftmenu .member-avatar {width: 48px;height: 48px;border-radius: 100%;position: relative;top: 2px;background-size: cover;}
.leftmenu .member-avatar, .leftmenu .member-name {display: inline-block;line-height: 25px;vertical-align: middle;margin-left: 8px;}
.leftmenu .member-block {height: 58px; position: relative; }
.leftmenu .member-block .member-name { width: 140px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.leftmenu.content-block {margin-top: 0;}
.leftmenu .menu_close {position: absolute;right: 12px;top: 18px;}
.leftmenu .accordion-item-content {margin-left: 16px;}
.leftmenu .bgflag-sm {vertical-align: middle;}
.leftmenu .mydata-icon {font-size: 15px;}
.leftmenu .mypartner-icon {height: 20px;width: 18px;}
.message-item .item-subtitle {-webkit-line-clamp: 1; max-height: 28px;}
.message-item.unread .item-subtitle {font-weight: 800;color: #000096!important;}
.message-item.unread {background-color: #dadaff;}
.message-item .member-avatar {width: 48px;height: 48px;border-radius: 100%;position: relative;top: 1px;background-size: cover;}
.message-item .pre-msg-avatar {width: 48px;height: 48px; font-size: 28px; margin-left: -4px; margin-top: -4px;}
.message-item .pre-msg-avatar .fa-circle-thin { color: #1010B0; }
.message-item .pre-msg-avatar .pre-letter { font-weight: bold; font-size: 1.3em; line-height: 1.6em; display: inline-block; }
li.noresults {list-style: none;}
.picker-modal.picker-makecontact {height: 360px;}
.mypartner-icon {background-image: url('../img/partner.png');}
.myprofile .mypartner-icon {width: 24px;}
.myprofile .tabbar-label {font-size: 10px!important;}
.myprofile .tabbar i.icon {font-size: 24px;}
.myprofile .mydata-icon {margin-top: -8px;}
.myprofile form .item-inner.onerow .item-input {max-width: 60%; float: right;}
.myprofile form .item-inner.onerow .item-title {max-width: 35%; margin-right: 5%; float: left;}
.myprofile .item-input.halfrow {max-width: 44%; margin-right: 3%; float: left;}
.myprofile .label.between {float: left; width: 5%; margin-right: 1%; line-height: 36px; font-size: 16px;}
form .label.required::before {content: "* "; color: red;}
.navbar .navbar-inner .link.small {padding: 0 4px; font-size: 14px;}
.navbar .navbar-inner .link.small > span {margin-left: 4px;}
li.radio-halfrow {max-width: 45%; margin-right: 5%; float: left;}
li.radio-threeinrow {max-width: 30%; margin-right: 3.3%; float: left;}
.myprofile form .icon.icon-form-radio {margin-top: -8px;}
.myprofile .buybtn {text-transform: none; white-space: normal; line-height: 24px; padding-top: 4px; padding-bottom: 4px; height: auto;}
.myprofile .label-checkbox .item-title {margin-top: 5px;}
.myprofile li.qualities { padding-left: 16px; }
.myprofile li.qualities ul > li {width: 50%; float: left;}
.myprofile li.qualities ul > li .label-checkbox {padding-left: 0;}
.myprofile li.qualities ul > li .item-inner {margin-left: 0;}
.myprofile .pull-to-right {float: right; margin-right: 48px; margin-left: 80%;}
.myprofile li.nolabel .label {display: none;}
.myprofile form li.nolabel .item-inner.onerow .item-input {max-width: 100%;}
.list-block li > h4 { font-size: 16px; font-weight: bold; margin: 1em 0 0 0; }
img.fullwidth {width: 80%; margin: 0 10%;}
.buypage.myprofile > form.buypageform .label.info-label { width: auto; }
.buypage.myprofile > form.buypageform .item-inner.onerow .item-input { float: left; }
.swiper-button-next.buy-nav-button {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 512 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM294.6 135.1c-4.2-4.5-10.1-7.1-16.3-7.1C266 128 256 138 256 150.3V208H160c-17.7 0-32 14.3-32 32v32c0 17.7 14.3 32 32 32h96v57.7c0 12.3 10 22.3 22.3 22.3c6.2 0 12.1-2.6 16.3-7.1l99.9-107.1c3.5-3.8 5.5-8.7 5.5-13.8s-2-10.1-5.5-13.8L294.6 135.1z"/></svg>');
}
.swiper-button-prev.buy-nav-button {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 512 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M48 256a208 208 0 1 1 416 0A208 208 0 1 1 48 256zm464 0A256 256 0 1 0 0 256a256 256 0 1 0 512 0zM217.4 376.9c4.2 4.5 10.1 7.1 16.3 7.1c12.3 0 22.3-10 22.3-22.3V304h96c17.7 0 32-14.3 32-32V240c0-17.7-14.3-32-32-32H256V150.3c0-12.3-10-22.3-22.3-22.3c-6.2 0-12.1 2.6-16.3 7.1L117.5 242.2c-3.5 3.8-5.5 8.7-5.5 13.8s2 10.1 5.5 13.8l99.9 107.1z"/></svg>');
}

.squared-member-block, .squared-photos-block {
    display: block; width: 100%; padding-bottom: 100%; background-size: cover; position: relative; color: #fff;
}
.squared-photos-block {
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    background-size: cover;
    background-position: center;
}
/*.squared-photos-block .likes { position: absolute; font-size: 16px; font-weight: bold; color: #fff; right: 4px; bottom: 4px; }*/
.squared-photos-block .likes { position: absolute; top: 8px; right: 8px; background-color: rgba(0,0,0,0.6); border-radius: 12px; padding: 3px 8px; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); transition: background-color 0.2s ease, transform 0.2s ease; }

/*.squared-photos-block .playicon {position: absolute; font-size: 50px; color: #fff; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); }*/
.squared-photos-block .playicon.processing {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,0.7); }
.squared-photos-block .playicon {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,0.7); transition: transform 0.2s ease, text-shadow 0.2s ease; }
.squared-photos-block:active { transform: scale(0.98); box-shadow: 0 1px 3px rgba(0,0,0,0.15); }
/*.squared-photos-block:hover .playicon i { opacity: 1; }*/
/*.squared-photos-block:hover .playicon { transform: translate(-50%, -50%) scale(1.05); text-shadow: 0 2px 5px rgba(0,0,0,0.8); }*/
/*.squared-photos-block:hover .likes { background-color: rgba(0,0,0,0.75); transform: translateY(-2px); }*/
.squared-photos-block .gradient-div { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0) 70%); border-radius: 8px; transition: opacity 0.3s ease; opacity: 0.7; }

.squared-member-block-a {
    display: block;
    color: inherit;
    text-decoration: none;
    position: relative;
    padding: 2px 2px;
}
[data-page=browse_list] .squared-member-block-a { padding: 4px 2px; }
.squared-member-card {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    height: 100%;
}
@media (hover: hover) {
    .squared-member-block-a:active .squared-member-card {
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    }
}
.squared-member-block-img {
    width: 100%;
    padding-bottom: 133%;
    background-size: cover;
    background-position: center;
    position: relative;
    border: none;
}
.squared-member-block-img.border-green {
    position: relative;
}
.squared-member-block-img.border-green:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 4px;
    background-color: #4caf50;
}

.member-card-info {
    padding: 8px 10px;
    background-color: #fff;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.squared-member-block .overlay {position: absolute; left: 4px; bottom: 4px; width: calc(100% - 8px); height: 43px; background-color: #000; opacity: 0.65; border-radius: 4px;}
.squared-member-block .namerow img {height: 8px; margin-left: 4px;}
.squared-member-block .countryrow {position: absolute; font-size: 12px; color: #fff; left: 4px; bottom: 4px; max-width: calc(100% - 8px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -webkit-line-clamp: 1;}
/*.squared-member-block .lastonline {position: absolute; font-size: 8px; color: #dddddd; right: 4px; bottom: 4px; line-height: 1.4; max-width: calc(40% - 8px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -webkit-line-clamp: 2;}*/
.namerow {
    padding-left: 0;
    font-size: 12px; 
    font-weight: 600;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    color: #333;
}
.countryrow, .lastonline {
    padding-left: 0;
    font-size: 11px; 
    overflow: hidden; 
    white-space: nowrap; 
    text-overflow: ellipsis; 
    -webkit-line-clamp: 1;
    margin-top: 2px;
}
.lastonline {
    font-size: 12px;
    margin-top: 4px;
    color: #888;
}

/*#profile_link {bottom: 72px!important;}*/
#picker-langs, #picker-quick-answers {height: 100%;}
#picker-langs .item-content {height: 43px; min-height: 43px;}
#picker-langs .item-content .item-media {padding-top: 12px; padding-bottom: 6px;}
#picker-langs .item-content.selected, #picker-sites .site.selected  {background-color: #2196f3; color: #fff;}
.site.card {
    border-radius: 5px;
    color: black;
    padding: 5px 0 5px 0;
}
.card-content.ik-card-content {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.ik-card-content .ik-card-media {
    margin: 0 16px 0 8px;
}
.ik-card-content .ik-card-inner {
    flex-grow: 1;
}
.ik-card-right {
    margin: 0 1em 0 0.5em;
}

/* Profile completion styles */
.profile-completion-block {
    padding: 8px 15px;
    background-color: #f8f8f8;
    border-radius: 8px;
    margin-bottom: 10px !important;
}

.profile-progress-container {
    margin-top: 5px;
}

.profile-progress-text {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 4px;
    color: #333;
}

.profile-progress-bar {
    height: 6px;
    background-color: #e0e0e0;
    border-radius: 3px;
    overflow: hidden;
    position: relative;
}

.profile-progress-fill {
    height: 100%;
    background-color: #000096;
    border-radius: 3px;
    position: absolute;
    top: 0;
    left: 0;
    transition: width 0.3s ease;
}

.ios .profile-progress-fill {
    background-color: #007aff;
}

.complete-profile-btn {
    padding: 0 10px;
    margin: 5px 0;
    font-size: 13px;
    height: 32px;
    line-height: 32px;
}

#picker-block {
    height: 470px;
}

#picker-block textarea {
    height: 80px;
}

.android .navbar a.link, .android .subnavbar a.link, .android .toolbar a.link {
    padding: 0 12px;
}

.toolbar.messagebar a.link {
    font-size: 24px;
}

.popover-genders, .popover-memlist, .popover-convmenu {width: 300px; top: 56px!important;}
.popover-genders .item-link.selected, .popover-memlist .item-link.selected {background-color: #2196f3; color: #fff;}

.popover-memlist {
    width: 325px; /* Further increased width for better readability */
    max-width: 95%; /* Allow it to take up more of the screen */
}
.popover-memlist .list-block {
    margin: 0;
}
.popover-memlist .list-block ul {
    background: transparent;
}
.popover-memlist .item-content {
    padding-left: 15px;
}
.popover-memlist .item-media {
    width: 32px; /* Slightly larger icon area */
    display: flex;
    align-items: center;
    justify-content: center;
}
.popover-memlist .item-media i {
    font-size: 20px; /* Slightly larger icons */
}
/* Colorful icons */
.popover-memlist .fa-users { color: #4a90e2; } /* Matches - blue */
.popover-memlist .fa-address-book-o { color: #50b883; } /* Contacts - green */
.popover-memlist .fa-star { color: #f5a623; } /* Top contacts - gold */
.popover-memlist .fa-eye { color: #9b59b6; } /* Visitors - purple */
.popover-memlist .fa-heart-o { color: #e74c3c; } /* Favorites - red */
.popover-memlist .fa-heart { color: #e74c3c; } /* Admirers - red */
.popover-memlist .fa-ban { color: #7f8c8d; } /* Blocked - gray */

.popover-memlist .item-inner {
    padding-right: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    padding-top: 10px; /* More vertical padding */
    padding-bottom: 10px;
}
.popover-memlist .item-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    margin-right: 12px; /* More space before the count */
    font-weight: 500; /* Slightly bolder text */
}
.popover-memlist .list-block .item-after {
    color: #8e8e93;
    margin-left: 8px;
    white-space: nowrap;
    background-color: #f1f1f1; /* Light background for counts */
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 12px;
    line-height: 24px;
}
.popover-memlist .menu-section {
    margin-top: 8px;
}
.popover-memlist .menu-section:first-child {
    margin-top: 0;
}
.popover-memlist a.selected {
    background-color: rgba(0,0,0,0.05);
}

.content-block.squared-list.fullwidth {padding: 0 2px;}
.comp-noway0 {
    width:100px;
    height:32px;
    padding:0 !important;
    text-align: center;
    color: transparent;
    text-indent: 0.8em;
}
.comp-noway0:before {
    content: "-";
    color: #000000;
}
.comp-noway1{
    background-image:url(../img/gtib/compatibility-noway.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-noway2{
    background-image:url(../img/gtib/compatibility-heart1.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-noway3{
    background-image:url(../img/gtib/compatibility-heart2.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-noway4{
    background-image:url(../img/gtib/compatibility-heart3.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}

.comp-noway1{
    background-image:url(../img/gtib/compatibility-noway.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-noway2{
    background-image:url(../img/gtib/compatibility-heart1.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-noway3{
    background-image:url(../img/gtib/compatibility-heart2.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-noway4{
    background-image:url(../img/gtib/compatibility-heart3.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.gender1 {
    width: 60px;
    background-image:url(../img/gtib/table-thead-male.png);
    background-size: contain;
    text-indent: -9999px;
    display: inline-block;
    background-repeat: no-repeat;
}
.gender2 {
    width: 60px;
    background-image:url(../img/gtib/table-thead-female.png);
    background-size: contain;
    text-indent: -9999px;
    display: inline-block;
    background-repeat: no-repeat;
}
.gender3 {
    width: 60px;
    background-image:url(../img/gtib/table-thead-ladyboy.png);
    background-size: contain;
    text-indent: -9999px;
    display: inline-block;
    background-repeat: no-repeat;
}
.comp-cur-noway-0 {
    width:100px;
    height:32px;
    padding:0 !important;
    text-align: center;
    color: transparent;
    text-indent: 0.8em;
}
.comp-cur-noway-0:before {
    content: "-";
    color: #000000;
}
.comp-cur-noway-1 {
    background-image:url(../img/gtib/compatibility-noway.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-cur-noway-2 {
    background-image:url(../img/gtib/compatibility-curious.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-cur-noway-3 {
    background-image:url(../img/gtib/compatibility-heart1.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-cur-noway-4 {
    background-image:url(../img/gtib/compatibility-heart2.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.comp-cur-noway-5 {
    background-image:url(../img/gtib/compatibility-heart3.png);
    background-repeat:no-repeat;
    width:100px;
    height:32px;
    padding:0 !important;
    text-indent: -9999px;
}
.wrapped .info-label {white-space: normal!important;}
.squared-outer {box-sizing: border-box; padding: 5px 5px;}
.countrydontsend_name {float: left; padding-top: 8px;}
.countrydontsend_add { margin-left: 8px; min-width: 120px !important;; }
.countrydontsend_delete {float: right; margin: 4px 0; min-width: 120px !important; }
.countrydontsend_select {width: 60%; float: left;}
.speed-dial.custom .speed-dial-buttons {width: 50px; margin-left: -25px;}
.speed-dial.custom .speed-dial-buttons a {width: 50px; height: 50px;}
.speed-dial.custom {bottom: 54px;}
.popover-profile .item-inner {background: none!important;padding-right: 16px!important;}
.item-title-row.bold-icon {
    background: none!important;
    padding-right: 0!important;
}
.item-title-row.bold-icon:after {
    font: normal normal normal 14px/1 FontAwesome;
    content: '\f054';
}
.item-title-row.bold-icon.right-aligned:after {
    margin-left: 26px!important;
    margin-top: 2px!important;
}
.item-title-row > .item-title {
    font-family: Roboto,Noto,Helvetica,Arial,sans-serif;
}
.memlist_chooser {
    padding: 8px;
    min-width: 80%;
    background-color: #fff;
    font-size: 20px;
    width: 100%;
    height: 100%;
}

.search-filter-output th {
    font-style: normal;
    font-weight: normal;
    text-align: left;
}
.search-filter-output td {
    padding-left: 1em;
    font-style: normal;
    font-weight: bold;
    text-align: left;
}

#multilogin, #login-switchsite {margin-top: 16px;}
/*[id^=conversation-] .toolbar.messagebar {background-color: #fff!important; height: 48px!important;}*/
/*[id^=conversation-] .toolbar.messagebar textarea {opacity: 1!important; height: 28px!important;}*/
/* textarea resized anyway by Framework7 and messages content shifted to top, I think better it be resizeable so member see all content */

/*[id^=conversation] .toolbar.messagebar {background-color: #fff!important; }*/
/*[id^=conversation] .toolbar.messagebar textarea {opacity: 1!important; }*/

.checkbox-group.input-error,
input[type="text"].input-error,
input[type="email"].input-error,
input[type="tel"].input-error,
input[type="password"].input-error,
input[type="date"].input-error,
select.input-error,
textarea.input-error  {border: solid 2px #ff0000!important; color: #ff0000!important;}

.messages_list_active {border-bottom: 2px solid #fff;}
.welcome .content-block-title {font-size: 18px; text-align: center;}
.welcome .button .fa.fa-arrow-circle-right {font-size: 20px; margin-top: -3px;}
.tab-link.flat-bordered {background: #fff; color: #808080!important; font-weight: bold;}
.tab-link.flat-bordered .mypartner-icon {opacity: 0.5;}
.tab-link.active.flat-bordered .mypartner-icon {opacity: 1;}
.tab-link.active.flat-bordered {color: #000096!important;}
.modal.action-horizontal-buttons .modal-inner {padding: 0; display: none;}
.modal.action-horizontal-buttons .modal-buttons {min-height: 96px; padding-top: 16px;}
.modal.action-horizontal-buttons .modal-buttons .modal-button {min-height: 72px; text-align: center; flex-grow: 1;}
.modal.action-horizontal-buttons {width: 100%; bottom: 0; top: initial; left: 0; margin-left: 0;}
.modal.action-horizontal-buttons .modal-buttons .modal-button .btn-label {margin-top: -12px;}
.mymembership .accordion-item .item-title .subtitle {font-weight: normal; font-size: 12px;}
div.image-squared {background-position: top; background-size: cover; width: 40px; height: 40px; border-radius: 4px; display: inline-block; vertical-align: middle;}
.picker-modal.picker-report {height: 452px;}
.custom-current-month-value, .custom-current-year-value {padding: 4px 4px 2px!important; min-width: 64px;}
.picker-calendar-month-picker a.link, .picker-calendar-year-picker a.link {padding: 0 8px;}
.logobig {max-width: 200px; border-radius: 1rem; }
.logomenu {max-height: 40px; max-width: 100%;}
.logoblock {margin-top: 5px; padding: 10px 0; }
.ios .logoblock { margin-top: 0; }
.relative {position: relative;}
.menu-app-version {bottom: 0; right: 8px; position: absolute; display: block; font-size: 10px; font-style: italic;}
.popover-contactinfo {width: 340px;}

.pkg-name { background-color: #00AFF0; color: #000000; font-weight: bold; padding: 5px 16px; text-align: center;}
.pkg-price { background-color: #1A237E; color: #FFFFFF; font-weight: bold; font-size: 120%; padding: 7px 16px; text-align: center; }
.pkg-freemonth { background-color: #7eff63; color: #000000; font-weight: bold; padding: 7px 16px; text-align: center; height: 21px;}
.pkg-freespace { background-color: #fff;padding: 7px 16px; height: 21px;}
.pkg-specialoffer { background-color: yellow; padding: 7px 16px; height: 21px; text-align: center; font-weight: bold; font-size: 120%; }
#buypage .swiper-slide { width: 70%; }
#buypage .swiper-container { width: 100%; }
.buy-nav-button { height: 30px; }

.do-translate { z-index: 1500; }
.do-translate .trswitch-pre { font-size: 26px; vertical-align: top; }
.trswitch.bgflag-sm { vertical-align: middle; margin-top: -3px; }
.conversation .do-translate { top: 110px; position: absolute; right: 6px; padding: 0px 0px 0px 3px; }
.ios .conversation .do-translate { top: 92px !important;  }

.zodimg {float: left;}

.myprofile .countrydontsend_name { width: 40%; }

.toolbar.stickers {
    top: initial;
    bottom: -224px;
    height: 224px;
    background-color: #fff!important;
    -webkit-transition: bottom 0.5s ease-in-out;
    transition: bottom 0.5s ease-in-out;
    z-index: 450;
}
.toolbar.stickers.active {
    bottom: 48px;
}
.toolbar.stickers .tabs {
    height: 181px;
    margin-top: 2px;
}
.toolbar.stickers .tabs .tab {
    height: 100%;
}
.toolbar.stickers .content-block {
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 8px 8px 0 8px;
    overflow-y: scroll;
}
.toolbar.stickers .content-block .tab-link, .toolbar.stickers .content-block .tab {
    color: #808080;
}
.toolbar.stickers .content-block .tab-link {
    padding: 6px 8px 0 8px;
    margin: 0;
}
.toolbar.stickers .content-block .tab-link.active {
    color: #fff;
    background-color: #00AFF0;
}
.messages .message-text-body .sticker-img, .messages .message-text .sticker-img {
    height: 120px;
    border: none!important;
}
.message-wrapper.ik-message-selected {
    background-color: #00a094;
}
.message-wrapper > .message {
    max-width: 100%;
}
.message-text .item-media .thumb-div {
    background-size: cover;
}
.toolbar.stickers .sticker-img.icon {
    height: 64px;
    float: left;
    display: block;
    margin: 4px;
}
.toolbar.stickers .sticker-img.icon.small {
    height: 32px;
}
.toolbar.stickers .buttons-row {
    box-shadow: 0 4px 4px -4px #000;
}
.show-sticker-panel.active {
    color: #00AFF0!important;
}
img.sticker-icon {
    height: 28px;
}
.toolbar.messagebar {
    box-shadow: 0 1px 1px 1px #000;
}
.logomodal {
    width: 100%;
}
.modern-toolbar {
    backdrop-filter: blur(10px);
}

.modern-toolbar .toolbar-inner {
    gap: 32px;
}

.modern-toolbar .link i {
    font-size: 24px;
}

#likes_count {
    font-size: 14px;
    margin-left: 4px;
    font-weight: 500;
}
.button.spliticon {text-align: left;margin: 0 16px;}
.button.spliticon > .icon {margin: 0 8px;}
.button.spliticon > span {margin-left: 16px;}
.button.spliticon.centered {text-align: center;}
.button.spliticon.centered > .icon {position: absolute; top: 14px; left: 16px; margin: 0;}
.button.spliticon.centered > .icon2 {position: absolute; top: 12px; left: 16px; margin: 0;}
.button.spliticon.centered > span {margin-left: 0;}
.hidestickertab {display: none;}
.topbotborder {border-bottom: 1px solid rgba(0,0,0,.54); border-top: 1px solid rgba(0,0,0,.54);}
.button { min-width: 48px; }
.map-popup-pic {
    height: 64px;
    float: left;
    padding-right: 10px;
    padding-bottom: 5px;
}
/* avchat */
.ik-av-camerabox {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.ik-av-camerabox-inner {
    position: relative;
    width: 100%;
    height: 100%;
}

#ik-av-received-video {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: contain;
    border: none;
    box-sizing: border-box;
}

#ik-profile-photo {
    display: block;
    height: 100px;
    width: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -50px 0 0 -50px;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0 0 4px #000;
    box-sizing: border-box;
    moz-border-radius: 50%;
}
#ik-av-local-video {
    top: 10px;
    left: 10px;
    width: 120px;
    height: 90px;
    position: absolute;
    border: 2px solid #fff;
    box-shadow: 0 0 4px #000;
}
#ik-av-status {
    color: #fff;
    background-color: #404040;
    padding: 0.5em;
}
#ik-av-error {
    padding: 1em;
}
.ik-av-ctrl-btn {
    font-size: 2em;
    height: 2.2em;
    display: inline-block;
}
.ik-av-ctrl-btn.active {
    background-color: #b0b0b0;
}
.active > .ik-av-active-hide {
    display: none;
}
.ik-av-active-show {
    display: none;
}
.active > .ik-av-active-show {
    display: inline-block;
}

#ik-av-hangup-btn {
    border: none;
}
#ik-av-accept-btn {
    border: none;
    margin-left: 2em;
}

.button-fill.ik-av-call {
  background: #17ad13;
  color: #fff;
}
.button-fill.ik-av-call[disabled] {
  background: #D4D4D4;
  color: #fff;
}

.ik-fade {
    visibility: visible;
    opacity: 1;
}
.ik-fade.out {
  -webkit-animation: ikFadeOut 300ms forwards;
  animation: ikFadeOut 300ms forwards;
}
@-webkit-keyframes ikFadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes ikFadeOut {
  0% {
    visibility: visible;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
.ik-member-notify-title {
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 0.5em;
}
.ik-member-notify-info {
    margin-bottom: 0.5em;
}
.ik-member-notify-pic {
    padding-top: 3px;
}
.ik-member-notify-pic img {
    border-radius: 3px;
    height: 80px;
}
/* android fixes */
.android .toolbar.ik-select-item-toolbar {
    font-size: 20px;
}

.android .segmented {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.android .segmented .button,
.android .segmented button {
    width: 100%;
    -webkit-flex-shrink: 1;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    min-width: 0;

    margin-left: 0;
    border-radius: 0;
    min-width: 0;
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.android .segmented {
    border-radius: 4px;
}

.android .segmented .button:first-child {
    border-radius: 4px 0 0 4px;
    border-left: none;
    margin-left: 8px;
}

.android .segmented .button:last-child {
    border-radius: 0 4px 4px 0;
}

.android .segmented .button:first-child:last-child {
    border-radius: 4px;
}

.android .segmented .button.button-round:first-child {
    border-radius: 36px 0 0 36px;
}

.android .segmented .button.button-round:last-child {
    border-radius: 0 36px 36px 0;
}
.android .myprofile form .label.info-label {font-size: 14px; margin-top: 8px;}

.android .swiper-zoom-container > iframe {  object-fit: contain; height: calc(100% - 120px);}

.android .ik-member-notify-pic img {
    height: 88px;
}

/* IOS theme fixes */
.ios .panel { background: #fff; }
.ios i.icon.icon-close.white {
    width: 20px;
    height: 20px;
    font-size: 0;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D'%23FFFFFF'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20width%3D'24'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M19%206.41L17.59%205%2012%2010.59%206.41%205%205%206.41%2010.59%2012%205%2017.59%206.41%2019%2012%2013.41%2017.59%2019%2019%2017.59%2013.41%2012z'%2F%3E%3Cpath%20d%3D'M0%200h24v24H0z'%20fill%3D'none'%2F%3E%3C%2Fsvg%3E");
}
.ios i.icon.icon-close {
    width: 20px;
    height: 20px;
    font-size: 0;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D'%232F2000'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20width%3D'24'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M19%206.41L17.59%205%2012%2010.59%206.41%205%205%206.41%2010.59%2012%205%2017.59%206.41%2019%2012%2013.41%2017.59%2019%2019%2017.59%2013.41%2012z'%2F%3E%3Cpath%20d%3D'M0%200h24v24H0z'%20fill%3D'none'%2F%3E%3C%2Fsvg%3E");
}

.ios .navbar, .ios .subnavbar, .ios .toolbar {
    background: #f7f7f8;
}
.ios .subnavbar .left {
    margin-left: 16px;
}
.ios .view[data-page=messages_list] .subnavbar .right,
.ios .view[data-page^=profilephotos] .subnavbar .right {
    margin-right: 16px;
}
.ios .button.button-flat-bordered {
    color: #007aff;
    border: 1px solid #007aff;
}
.ios .navbar a.link .badge {
    border-radius: 50%;
    padding: 1px 4px;
    font-weight: bold;
    top: -6px;
}
.ios .button.button-fill.color-green {
    background-color: #45bf52;
}
.ios .list-block.notopoffset.with-subnavbar {
    margin-top: 0;
}
.ios .list-block ul:before, .ios .list-block ul:after {
    content: none;
}
.ios .item-title.label {
    color: black;
}
.ios .modal.action-horizontal-buttons .modal-inner {padding: 0; display: none;}
.ios .modal.action-horizontal-buttons .modal-buttons {min-height: 96px; padding-top: 0;}
.ios .modal.action-horizontal-buttons .modal-buttons .modal-button {min-height: 96px; text-align: center; flex-grow: 1;}
.ios .modal.action-horizontal-buttons {width: 100%; bottom: 0; top: initial; left: 0; margin-left: 0;}
.ios .modal.action-horizontal-buttons .modal-buttons .modal-button .fa {margin-top: 12px;}
.ios #picker-report .picker-modal-inner { background-color: #fff; }
.ios #picker-report textarea { height: 200px; }
.ios .tab-link.active.flat-bordered {color: #007aff!important;}
.ios .button.button-fill.color-indigo {background: #3f51b5;}
.ios #login-switchlang {margin-top: 18px;}
.ios .forgot-password {margin-top: 10px;}
.ios .password-eye { top: 7px; }
.ios .bg-appcolor {background: #007aff!important;}
.ios .color-purple {color: #9c27b0;}
.ios .infinite-scroll-preloader {display: none;}
.ios .floating-button.profile-actions {top: 300px;}
.ios .toolbar.with-icon-badges a.link {padding: 4px 16px;}
.ios .toolbar.with-icon-badges a.link .badge {padding-top: 1px;}
.ios .subnavbar.list_chooser_as_select .center {width: 100%; padding: 0 16px;}
.ios .leftmenu .menu_close {position: absolute;right: 12px;top: 13px;}
.ios .leftmenu .member-avatar, .ios  .leftmenu .member-name { margin-top: 1px; }
.ios .leftmenu .member-block { height: 60px; }
.ios .myprofile .label-checkbox .item-title {margin-top: 5px; margin-left: 10px;}
.ios .myprofile form .label.info-label {font-size: 14px; }
.ios li.radio-threeinrow {min-width: 90px;}
.ios .popup form a.formsubmit {margin: 0;}
.ios .navbar .left a+a, .ios .navbar .right a+a {margin-left: 0;}
.ios .myprofile .tabs.content-block {margin-bottom: 50px; margin-top: 0; }
.ios li.qualities ul > li {padding-left: 16px;}
.ios #myprofile-form li.qualities ul li:last-child {margin-bottom: 50px;}
.ios .fa.icon.color-white {color: #ffffff;}
.ios .button.spliticon.centered > .icon {position: absolute; top: 12px; left: 16px; margin: 0;}
.ios .button.spliticon.centered > .icon2 {position: absolute; top: 10px; left: 16px; margin: 0;}
.ios .messages { margin-bottom: 48px; }
.ios .message-received.fullscreen .message-text { background-color: inherit; }
.ios .contact-list-item .item-after > img.star { right: 60px; }
.ios  .list-block .item-text { height: auto; }
.ios  input[type="text"].input-error,
.ios  input[type="email"].input-error,
.ios  input[type="tel"].input-error,
.ios  input[type="password"].input-error,
.ios  input[type="date"].input-error,
.ios  select.input-error,
.ios  textarea.input-error  { padding: 0 0.5em; }
.ios .media-list .form-errors { margin-bottom: 7px; }
.ios .button-fa-2x { line-height: 32px; height: 36px; }
.ios .button-fa-2x .fa-2x { line-height: 41px; }
.ios .popup {
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
}
.ios .popup.modal-in {
    -webkit-transition-duration: .6s;
    transition-duration: .6s;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}
.ios .popup.modal-out {
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
}
.ios .swiper-zoom-container > iframe { height: calc(100% - 96px);}
.ios .list-block select { appearance: auto; -webkit-appearance: auto; }
.ios .registration-page .page-content { background: #fff; }
.ios .registration-page .list-block .item-inner:after { height: 0; }
.ios .registration-page .attract-genders { min-height: 70px; }
.ios  .top-menu-div .active:after {
    bottom: 5px;
    background-color: #007aff;
}
.ios  input[type="text"], .ios  input[type="password"], .ios input[type="search"], .ios input[type="email"], .ios input[type="tel"], .ios  input[type="url"], .ios input[type="date"], .ios input[type="number"], .ios textarea { padding-left:5px; padding-right: 5px; }

/* end of IOS theme fixes */

.noleftpos {left: 0!important;}
.statuslabel { color: #fff; font-weight: bold; text-transform: uppercase; font-size: 12px; line-height: 14px; padding: 2px 4px; display: inline-block;}
.statuslabel.free {background: #4caf50; }
.statuslabel.deleted {background: #e60000; }
.statuslabel.banned {background: #e61589; }
.statuslabel.blocked {background: #ff4e48; }
.statuslabel.investigation {background: #ec750a; }
.ios .statuslabel {padding: 4px 4px;}
.nobackground {background: none!important;}
.message-text.nobackground:before {border: none!important;}
.myprofile .list-block ul:before {background: none;}
.myprofile .list-block ul:before {background: none;}
.myprofile .content-block-inner:before {background: none;}
.myprofile .content-block-inner:after {background: none;}

.progressbar.with-text {height: 28px;}
.progressbar.with-text > .text {padding: 2px 0;position: absolute;width: 100%;transform:none;line-height: 24px; font-size: 12px;}
.picker-modal.picker-communication-status {height: 380px;}

.hidden { display: none!important;}
.regsteps.content-block { margin-top: 0; }
.regsteps .label-checkbox > .item-media {align-self: flex-start; margin-top: 6px; min-height: 16px; }
.regsteps input, .regsteps select, .regsteps .label-checkbox, .regsteps .label-radio {font-size: 14px!important;}
.regsteps .label-checkbox .item-inner, .regsteps .label-radio .item-inner {min-height: 16px; padding-top: 6px!important;}
.list-block .prio-radios .item-content, .list-block .prio-radios .item-inner {
    min-height: 24px;
}
.list-block.inputs-list .prio-radios .item-media {
    margin-bottom: 6px;
    min-height: 24px;
    min-width: 30px;
}
#regsteps5 .label-radio .item-inner, #regsteps6 .label-radio .item-inner {padding-top: 0!important;}
#regsteps5 .radio-threeinrow {float: none!important; max-width: 100%!important;}
#regsteps6 .label-checkbox .item-title {margin-top: 0!important;}

/*html:not(.ios) input[type="text"].input-error,*/
/*html:not(.ios) input[type="email"].input-error,*/
/*html:not(.ios) input[type="tel"].input-error,*/
/*html:not(.ios) input[type="password"].input-error,*/
/*html:not(.ios) input[type="date"].input-error,*/
/*html:not(.ios) select.input-error,*/
/*html:not(.ios) textarea.input-error  {border: solid 2px #ff0000!important; color: #ff0000!important;}*/

.block-over-bottom {position: absolute; bottom: 0; background-color: #cccccc; opacity: 0.75; color: black; width: 100%; z-index: 1;}
.icon-over-photo {width: 40px;position: absolute;left: calc((100% - 40px) / 2);top: calc((100% - 40px) / 2);}

.login-page .bottom-fixed {position: absolute; bottom: 3px;left: 0; width: 100%; line-height: 30px; background-color: #fff; }
.login-page .forgot-password {display: block;text-align: center;color:#aaa;font-size: 14px;}
.registration-page .list-block ul:before {
    height: 0;
}
.registration-page h2 {
    text-align: center;
}
/*#login-switchsite {float: left; width: calc(100% - 90px);}*/
/*#login-switchlang {margin-top: 21px; float: left;}*/
.blackicon-right { color: #000; display: block; text-align: right; }
.blackicon-right > img { vertical-align: middle; }

/*.list-block .input-item .item-media, .list-block.inputs-list .item-media {*/
/*    margin-bottom: 10px;*/
/*}*/
.list-block .input-item .item-inner, .list-block.inputs-list .item-inner {
    margin-bottom: 0;
}
.label-checkbox.item-content.less-space, .label-radio.item-content.less-space {min-height: 30px;}
.label-checkbox.item-content.less-space .item-inner, .label-radio.item-content.less-space .item-inner {margin-left: 0; padding-top: 0; min-height: 30px }
.label-checkbox.item-content.less-space .item-media, .label-radio.item-content.less-space .item-media { min-height: 30px; }
/*.label-checkbox.item-content.less-space .item-media {margin: 0;}*/

.android .modal-buttons.modal-buttons-vertical .modal-button {text-align: center;}
.android .modal-buttons.modal-buttons-2.modal-buttons-vertical .modal-button.modal-button-bold {
    background: #fff; border: 1px solid #4caf50; font-weight: bold; font-size: 16px;
    color: #4caf50!important;
    margin: 0 24px;
}

.ranking-form .list-block .item-content .item-inner  {
    margin-bottom: 0;
}

@media all and (min-width: 630px) and (min-height: 630px) {
    .popup:not(.tablet-fullscreen) {
        width: 86vw;
        height: 86vh;
        margin-left: -43vw;
        margin-top: -43vh;
    }
}

/* Profile view enhancements */
.popup-profile .row.profile-row {
    margin: 8px 0;
    border-bottom: 1px solid rgba(0,0,0,0.08);
    padding-bottom: 8px;
}
.popup-profile .row:last-child {
    border-bottom: none;
}
.popup-profile .info-label {
    font-weight: 500;
    color: #333;
}
.popup-profile .info-txt.profile-value {
    position: relative;
    font-weight: 400;
    color: #000;
}

.popup-profile .accordion-item-content .content-block {
    position: relative;
    background-color: #fafafa;
    border-radius: 8px;
    margin: 10px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.popup-profile .meminfo {
    background-color: #fff;
    border-radius: 8px;
    padding: 12px 16px;
    margin: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.popup-profile .accordion-item .item-link.bold {
    font-weight: 600;
    background: linear-gradient(to right, #f5f5f5, #ffffff);
    border-left: 4px solid #007aff;
    border-radius: 8px;
    transition: all 0.3s ease;
}
.popup-profile .accordion-item .item-link.bold:active {
    background-color: #e5e5e5;
}
.popup-profile .item-inner {
    border-bottom: none !important;
}
.popup-profile .list-block ul:before,
.popup-profile .list-block ul:after {
    display: none;
}
.popup-profile .big-text {
    font-size: 18px;
    font-weight: 500;
}
.popup-profile .profile-avatar {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    margin-right: 5px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    border: 2px solid #fff;
}
.popup-profile .navbar .center {
    font-weight: 500;
}
.popup-profile .prio-hearts {
    display: flex;
    align-items: center;
}
.popup-profile .prio-hearts img {
    height: 15px;
    margin-right: 2px;
}
.popup-profile .accordion-item-content .content-block .row {
    border-bottom: 1px solid rgba(0,0,0,0.08);
    padding-bottom: 8px;
    padding-top: 8px;
}
.popup-profile .accordion-item-content .content-block .row:last-child {
    border-bottom: none;
}
.popup-profile .swiper-container {
    border-radius: 8px;
    overflow: hidden;
    margin: 8px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}
.popup-profile .navbar {
    background: linear-gradient(to right, rgba(0,122,255,0.8), rgba(0,122,255,0.6));
}
.android .popup-profile .navbar .navbar-inner {
    color: #fff;
}
.android .popup-profile .navbar .icon-close {
    color: #fff;
}
.popup-profile .iconbtns_gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.popup-profile .iconbtns_gallery img {
    margin: 6px;
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
    transition: transform 0.2s ease;
}

/* Improved section headers */
.section-header {
    position: relative;
    margin: 20px 15px 15px;
    padding-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.section-header:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    width: 100%;
    background: #e8e8e8;
    z-index: 0;
}

.section-header:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    width: 80px;
    background: var(--theme-color, #000096);
    z-index: 1;
}

.section-header .title {
    font-size: 17px;
    font-weight: 600;
    color: #222;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
}

.section-header .title i {
    margin-right: 8px;
    color: var(--theme-color, #000096);
}

.section-header .more-link {
    color: var(--theme-color, #000096);
    font-size: 20px;
}

.section-header .config-link {
    font-size: 16px;
    color: #777;
}

/* Form Input Styles - Consolidated */
.form-input-base {
    padding: 0.5em;
    border-radius: 0.25rem;
    border: 1px solid #c0c0c0;
    background-color: #eeeeee;
    width: 100%;
    box-sizing: border-box;
}

html:not(.ios) input[type="text"],
html:not(.ios) input[type="email"],
html:not(.ios) input[type="tel"],
html:not(.ios) input[type="password"],
html:not(.ios) input[type="date"],
html:not(.ios) select,
html:not(.ios) textarea {
    @extend .form-input-base;
}

/* Error States */
.input-error-base {
    border: solid 2px #ff0000 !important;
    color: #ff0000 !important;
}

.form-errors {
    display: none;
    color: #ff0000 !important;
    white-space: normal;
    font-size: 12px;
    margin-top: 4px;
}

input.input-error,
select.input-error,
textarea.input-error,
.checkbox-group.input-error {
    @extend .input-error-base;
}

/* Focused States */
.focus-state-base {
    border: solid 2px #2196f3 !important;
    box-shadow: none !important;
    outline: none;
}

html:not(.ios) input.focus-state,
html:not(.ios) select.focus-state,
html:not(.ios) textarea.focus-state {
    @extend .focus-state-base;
}

/* Platform Specific Input Styles */
.ios input[type="text"],
.ios input[type="password"],
.ios input[type="search"],
.ios input[type="email"],
.ios input[type="tel"],
.ios input[type="url"],
.ios input[type="date"],
.ios input[type="number"],
.ios textarea {
    padding: 5px;
}

.ios .form-errors {
    margin-bottom: 7px;
}

/* Consolidated Button Styles */
.button {
    min-width: 48px;
    min-height: 44px; /* Improve touch target size */
    line-height: 44px;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
    -webkit-tap-highlight-color: transparent;
}

.ios .button {
    line-height: 42px;
}
.ios .button.action-btn {
    line-height: 34px;
}

.button:active {
    transform: translateY(1px);
}

.button[disabled] {
    opacity: 0.7;
    cursor: not-allowed;
    pointer-events: none;
}

.button-flat-bordered {
    background: #fff;
    font-weight: bold;
    font-size: 16px;
}

html:not(.ios) .button-flat-bordered {
    color: #000096;
    border: 1px solid #000096;
}

.ios .button-flat-bordered {
    color: #007aff;
    border: 1px solid #007aff;
}

/* Navigation & UI Element Styles - Platform Specific */
.navbar,
.subnavbar,
.toolbar {
    background: var(--theme-color, #000096);
}

.ios .navbar,
.ios .subnavbar,
.ios .toolbar {
    background: #f7f7f8;
}

/* Messaging Components */
.message-components {
    --msg-border-radius: 16px;
    --msg-padding: 8px 12px;
    --msg-shadow: 0 1px 2px rgba(0,0,0,0.1);
}

.messages {
    margin-bottom: 48px;
}

.message-wrapper {
    max-width: 100%;
}

.message-wrapper.ik-message-selected {
    background-color: rgba(0, 160, 148, 0.15);
}

.message-text {
    min-height: 32px;
}

.message-text-body .sticker-img,
.message-text .sticker-img {
    height: 120px;
    border: none !important;
}

.message-text .item-media .thumb-div {
    background-size: cover;
}

/* Message Items */
.message-item {
    --avatar-size: 48px;
}

.message-item .item-subtitle {
    -webkit-line-clamp: 1;
    max-height: 28px;
}

.message-item.unread {
    background-color: #dadaff;
}

.message-item.unread .item-subtitle {
    font-weight: 800;
    color: var(--theme-color, #000096) !important;
}

.message-item .member-avatar {
    width: var(--avatar-size);
    height: var(--avatar-size);
    border-radius: 50%;
    position: relative;
    top: 1px;
    background-size: cover;
}

.message-item .pre-msg-avatar {
    width: var(--avatar-size);
    height: var(--avatar-size);
    font-size: 28px;
    margin: -4px;
}

.message-item .pre-msg-avatar .fa-circle-thin {
    color: #1010B0;
}

.message-item .pre-msg-avatar .pre-letter {
    font-weight: bold;
    font-size: 1.3em;
    line-height: 1.6em;
    display: inline-block;
}

/* Sticker Panel */
.toolbar.stickers {
    --sticker-panel-height: 224px;
    position: fixed;
    top: auto;
    bottom: calc(-1 * var(--sticker-panel-height));
    height: var(--sticker-panel-height);
    background-color: #fff !important;
    transition: bottom 0.3s ease-in-out;
    z-index: 450;
    box-shadow: 0 -1px 4px rgba(0,0,0,0.1);
}

.toolbar.stickers.active {
    bottom: 48px;
}

.toolbar.stickers .tabs {
    height: calc(var(--sticker-panel-height) - 43px);
    margin-top: 2px;
}

.toolbar.stickers .tab {
    height: 100%;
}

.toolbar.stickers .content-block {
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 8px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.toolbar.stickers .tab-link {
    padding: 6px 8px 0;
    margin: 0;
    color: #808080;
}

.toolbar.stickers .tab-link.active {
    color: #fff;
    background-color: #00AFF0;
}

.toolbar.stickers .sticker-img.icon {
    height: 64px;
    float: left;
    display: block;
    margin: 4px;
    transition: transform 0.2s ease;
}

.toolbar.stickers .sticker-img.icon:active {
    transform: scale(0.95);
}

.toolbar.stickers .sticker-img.icon.small {
    height: 32px;
}

.toolbar.stickers .buttons-row {
    box-shadow: 0 2px 4px -2px rgba(0,0,0,0.2);
}

.show-sticker-panel.active {
    color: #00AFF0 !important;
}

/* Hide unnecessary sticker elements */
.hidestickertab {
    display: none;
}

/* Optimized animations and transitions */
:root {
    --transition-duration: 0.3s;
    --transition-timing: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hardware accelerated transitions */
.button,
.squared-member-card,
.popup-profile .iconbtns_gallery img,
.toolbar.stickers .sticker-img.icon {
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
}

/* Optimized animations */
@keyframes fadeOut {
    from {
        opacity: 1;
        visibility: visible;
    }
    to {
        opacity: 0;
        visibility: hidden;
    }
}

.ik-fade.out {
    animation: fadeOut var(--transition-duration) var(--transition-timing) forwards;
}

/* Optimized transitions */
.toolbar.stickers {
    transition: transform var(--transition-duration) var(--transition-timing);
    transform: translateY(100%);
}

.toolbar.stickers.active {
    transform: translateY(0);
}

/* Touch optimizations */
@media (hover: none) {
    .button:active,
    .squared-member-card:active,
    .popup-profile .iconbtns_gallery img:active {
        transform: scale(0.98);
    }
}

.video-swipe-overlay {
    position: absolute;
    top: 15%;
    bottom: 30%;
    width: 25%;
    z-index: 2;
}

.video-swipe-overlay.video-swipe-left {
    left: 0;
}

.video-swipe-overlay.video-swipe-right {
    right: 0;
}