.flash-danger {
    background: #cd5c5c;
    margin: 20px;
    padding: 7px 20px;
    color: white;
    border-radius: 7px;
}

.flash-div {
    width: 100%;
    z-index: 50000;
    background: transparent;
}

.flash-div .flash {
    width: 100%;
    background: #2e8b57;
    padding: 20px 10px;
    color: white;
}

.flash-alert-danger {
    background: #a52a2a !important;
}

.netteFormsModal {
    line-height: 140%;
    text-align: left !important;
    border: 0px !important;
    -webkit-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.75);
}

.netteFormsModal button {
    width: 50%;
    border: 0px;
    background: none;
    margin-left: 25%;
    background: var(--384F95);
    color: white;
    padding: 9px 4px !important;
    border-radius: 5px;
}

.cookie-agree-box {
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 5000 !important;
    position: fixed;
    top: 0px;
    left: 0px;
}

.cookie-agree-box .inner-box {
    background-color: white;
    min-width: 200px;
    max-width: 500px;
    margin: 100px auto 0;
    padding: 25px;
    text-align: left;
    font-size: 12px;
    line-height: 1.4;
    border-radius: 10px;
    max-height: 80%;
    overflow: scroll;
}

@media only screen and  (max-width: 600px) {
    .cookie-agree-box .inner-box {
        margin: 50px auto 0;
    }
}

.cookie-agree-box .inner-box h3 {
    font-size: 18px;
    margin-bottom: 20px;
}

.cookie-agree-box .inner-box p {
    font-size: 13px;
}

.cookie-agree-box .inner-box ul {
    margin-top: 10px;
    margin-left: 20px;
    margin-bottom: 20px;
    list-style-type: circle;
    font-size: 12px;
}

ul li {
    margin-bottom: 2px;
}

.cookie-agree-box .inner-box .success-button {
    background: var(--4DB7FE);
    color: white;
    padding: 10px 22px;
    border-radius: 7px;
    width: 100% !important;
    display: block;
    text-align: center;
}

.cookie-agree-box .inner-box .no-button {
    background: #F75C96;
    color: white;
    padding: 10px 22px;
    border-radius: 7px;
    width: 100% !important;
    display: block;
    text-align: center;
}

.cookie-agree-box .inner-box .success-div {
    width: 60%;
    float: left
}

.cookie-agree-box .inner-box .no-div {
    width: 40%;
    float: right
}

@media only screen and  (max-width: 600px) {
    .cookie-agree-box .inner-box .success-div {
        width: 100%;
        float: none;
        margin-bottom: 8px
    }

    .cookie-agree-box .inner-box .no-div {
        width: 100%;
        float: none;
    }
}


/* Customize the label (the container) */
.cookie-agree-box .container {
    display: block;
    position: relative;
    padding-left: 30px;
    line-height: 20px;
    margin-bottom: 5px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Hide the browser's default checkbox */
.cookie-agree-box .container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom checkbox */
.cookie-agree-box .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background-color: #eee;
}

/* On mouse-over, add a grey background color */
.cookie-agree-box .container:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.cookie-agree-box .container input:checked ~ .checkmark {
    background-color: #F75C96;
}

/* Create the checkmark/indicator (hidden when not checked) */
.cookie-agree-box .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.cookie-agree-box .container input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.cookie-agree-box .container .checkmark:after {
    left: 5px;
    top: 5px;
    width: 5px;
    height: 5px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.cookie-agree-box .containerForm{
    margin-top: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dotted silver;
    padding-bottom: 10px;
}

.cookie-agree-box a.openCookieInfo{
    font-size: 90%;
    text-decoration: underline;
}

.cookie-agree-box p.cookie-info{
    font-size: 90%;
    padding-bottom: 10px;
}


.video-containers {
    max-width: 100%;
    min-width: 100%;
    height: 500px;
    margin: 0 auto;
}

.video-containers video {
    background-color: black;
    width: 100%; /* Fill the available width */
    height: 500px; /* Adjust height automatically */
    object-fit: contain;
}

.addPost {
    margin-top: 0px;
}

.no-user-content {
    height: 100%;
    background-color: black;
}

.no-user-content p {
    padding-top: 25%;
    color: white;
}

p.lockImageMessage {
    position: absolute;
    top: 60%;
    left: 15%;
    background: rgba(0, 0, 0, 0.3);
    color: white;
    width: 75%;
    padding: 20px;
    border-radius: 5px;
    font-size: 14px;
    text-align: center;
}

@media only screen and  (max-width: 1200px) {
    .addPost {
        margin-top: 20px;
    }

    .video-containers {
        height: 300px;
        margin: 0 auto;
    }

    .video-containers video {
        height: 300px;
    }

    .no-user-content p {
        padding-top: 15%;
    }

    p.lockImageMessage {
        top: 20%;
    }
}


@media only screen and  (max-width: 1000px) {
    p.lockImageMessage {
        top: 40%;
    }
}

.photoAbout {
    position: absolute;
    bottom: 0px;
    background-color: rgba(255, 255, 255, 0.9);
    line-height: 20px;
    padding: 7px 8px;
    color: black;
    font-weight: bold;
    left: 0px;
    border-top-right-radius: 12px;
}

.photoAbout.type-advert {
    background-color: #F75C96;
    color: white;
}

.photoAbout.type-blog-post {
    background-color: var(--4DB7FE);
    color: white;
}


.messageGoTo {
    text-align: left;
    padding-bottom: 20px;
    background: white;
    color: var(--878C9F);
}

.messageGoTo a {
    width: 100%;
    display: block;
    /* background: var(--384F95); */
    color: var(--384F95);
    text-align: center;
    padding: 8px 4px;
    border-radius: 5px;
    border: 1px solid var(--384F95);
    margin-top: 12px;
    margin-bottom: 10px;
}

#ajaxLoader {
    z-index: 50000;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 0px;
    line-height: 77px;
    background: rgba(0, 0, 0, 0.7);
    border-radius: 0px;
    /* display: none; */
    overflow: hidden;
}

.lockcontent {
    height: 76px;
    width: 200px;
    position: absolute;
    top: 0px;
    right: 0px;
    margin-top: 7px;
}

.buyContent {
    width: 179px;
    border-radius: 10px;
}

.buyContent.isOnDetail {
    width: 90%;
    margin: 19px 5% 19px 19px;
}

.buyContent.isOnDetail i:before {
    color: white
}


.main-register-wrap-price {
    display: none;
}

.main-register-wrap-price.active {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
    display: block;
    z-index: 50000;
}

.close-reg-price {
    position: absolute;
    top: 0;
    right: 0;
    width: 54px;
    height: 54px;
    line-height: 54px;
    cursor: pointer;
    z-index: 3;
    color: #fff;
    border-left: 1px solid rgba(255, 255, 255, 0.11);
    font-size: 18px;
}

#buyContentModal p {
    color: black;
    font-size: 14px;
    padding-bottom: 20px;
}

#buyContentModal p strong {
    color: #F75C96;
    font-size: 151%;
}

#buyContentModal p strong span {
    font-size: 14px;
    font-weight: normal;
}

#buyContentModal a {
    width: 100%;
    display: block;
    background: #F75C96;
    color: white;
    padding: 12px;
    border-radius: 8px;
}

.bought-message {
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: rgba(193, 225, 193, 0.7);
    padding: 7px 16px;
    border-bottom-right-radius: 7px;
    color: white;
    font-weight: normal;
}

.bought-message-detail {
    background-color: rgb(193, 225, 193);
    padding: 7px 16px;
    border-bottom-right-radius: 7px;
    color: gray;
    font-weight: normal;
    text-align: center !important;
}

.video-div {
    width: 150px;
    height: 100px;
    background-color: black;
    background-image: url('/design/videoicon.png');
    border-radius: 10px;
    background-position: center;
    background-size: 50px 50px;
    background-repeat: no-repeat
}

.video-div-post{
    width: 100%;
    height: 500px;
    background-color: black;
    background-image: url('/design/videoicon.png');
    border-radius: 10px;
    background-position: center;
    background-size: 50px 50px;
    background-repeat: no-repeat
}


@media only screen and  (max-width: 1200px) {

    .video-div-post{
        height: 300px;
    }

}

.filter-sidebar-header .tabs-menu li.profile{
    width: 25%;
}

.list-author-widget-contacts.list-item-widget-contacts li.profile-credit{
    padding-bottom: 0px;
}
.list-author-widget-contacts.list-item-widget-contacts li.profile-credit a{
    width: 90%;
    color: white;
}

.list-author-widget-contacts.list-item-widget-contacts li.profile-credit:last-child{
    padding-bottom: 15px;
}

p.infop{
    padding-bottom: 15px;
    color: var(--566985);
    text-align: left;
}

.list-author-widget-contacts.list-item-widget-contacts li.profile-credit p{
    text-align: left;
    display: block;
    margin-bottom: 5px;
    color: var(--566985);
}

.list-author-widget-contacts.list-item-widget-contacts li.profile-credit p strong{
    font-size: 90%;
    font-weight: normal;
}

.profile-credit strong{
    font-size: 80%;
    font-weight: normal;
}

.girl-info{
    text-align: left;
    color: var(--878C9F);
    font-size: 14px;
    margin-bottom: 15px;
}

.girl-info .col-lg-4{
    margin-bottom: 15px;
}

.girl-info .col-lg-4 a{
    border-top-left-radius: 20px;
    border-bottom-right-radius: 20px;
    width: 90%;
    text-align: center;
    line-height: 20px;
}

.girl-info small{
    font-size: 11px;
}

.infopara{
    background: #f2fde7;
    padding: 10px 8px;
    color: var(--878C9F);
}

.infopara.red {
    background: red;
}

.infopara.white {
    background: white;
}

.col-lg-4.imagebox{
    cursor: pointer;
    height: 150px;
    background-position: center;
    background-size: cover;
    border: 1px solid white;
    border-radius: 10px;
}

#selectedFile{
    background-color: black;
    background-position: center;
    background-size: cover;
}

.infopara.paddingall{
    padding: 26px 15px;
    clear: both;
}

.locked-image-msg{
    background: black;
    padding: 36px 10px;
    display: block;
    max-width: 50%;
    margin: 0 auto;
    border-radius: 10px;
    text-align: center;
}

span.msg-error{
    color: red;
    display: block;
    padding: 20px;
}

span.msg-error a{
    color: red;
    font-weight: bold;
    text-decoration: underline;
}

#changeSelectedFile{
    display: block;
    width: 100%;
    line-height: 50px;
    color: var(--878C9F);
    text-decoration: underline;
}

#profileMessageSend{
    color: var(--4DB7FE);
    display: block;
    border: 0;
    padding: 12px;
    margin-top: 10px;
    margin-left: 2%;
    margin-bottom: 20px;
    width: 96%;
    cursor: pointer;
}

.header-post-item .widget-posts-img{
    width: 60px;
}

.header-post-item .widget-posts-img img{
    border-radius: 50%;
}

.header-modal2 .header-modal-top{
    background: #F75C96;
}

.header-modal2  .close-header-modal{
    color: white;
}
#giftResponse p{
    color: var(--566985);
}

#giftResponse .danger{
    text-align: center;
    line-height: 200%;
    color: red;
}

#giftResponse .danger a{
    color: var(--566985);
    text-decoration: underline;
}

.popup{
    position: fixed;
    z-index: 5000;
    max-width: 300px;
    color: white;
    top: 5px;
    left: 2px;
    text-align: left;
    padding: 15px 10px 15px 15px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.popup #popupContent span{
    position: relative;
    display: inline-block;
    margin-top: 5px;
    width: auto;
    clear: both;
    height: auto;
    float: right;
    margin-bottom: 10px;
    background: rgba(40, 162, 40, 0.95);
    padding: 10px 40px 10px 15px;
    border-radius: 5px;
    cursor: pointer;
}

.popup #popupContent span.flash-alert-dangeer{
    background: rgba(247, 92, 150, 0.95);
}

.popup #popupContent span.flash-alert-info{
    background: rgba(40, 162, 40, 0.95);
}

.popup #popupContent span:before{
    content: '\00d7';
    color: white;
    font-size: 20px;
    position: absolute;
    right: 15px;
    line-height: 30px;
    top: 0px;
}

div.add-post-g{
    padding: 10px 30px 30px
}

a.add-post{
    margin-left: 1%;
    display: block;
    width: 24%;
    float: left;
    background: var(--384F95);
    padding: 0px;
    padding: 31px;
    color: white;
    border-radius: 5px;
    font-weight: 600;
}

a.add-post i{
    display: block;
    margin-bottom: 15px;
    color: white;
    font-size: 150% !important;;
}

@media only screen and  (max-width: 650px) {
    a.add-post{
        margin-top: 5px;
        width: 49%;
        float: left;
    }
}

.photoListPreview .col-lg-4 {
    border: 1px solid #f5f5f5;
    padding: 10px;
    margin-bottom: 10px;
}

.photoListPreview .photoItem{
    width: 100%;
    height: 0;
    padding-top: 100%;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-color: silver;
    border-radius: 13px;
    margin-bottom: 10px;
    position: relative
}

.photoListPreview .photoItem a{
    position: absolute;
    top: 5px;
    right: 5px;
    background: red;
    display: block;
    width: 35px;
    line-height: 35px;
    color: white;
    border-radius: 50%;
    font-family: monospace;
    cursor: pointer;
}

.ajaxLoaderAlbum img{
    width: 50px;
}

.ajaxLoaderAlbum{
    color: var(--878C9F);
    text-align: center;
}

.photoListPreview label{
    margin-top: 10px;
}
.photoListPreview input[type=checkbox] {
    position: relative;
    cursor: pointer;
    margin-right: 10px;
}
.photoListPreview input[type=checkbox]:before {
    content: "";
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    top: 0;
    left: 0;
    border: 2px solid #555555;
    border-radius: 3px;
    background-color: white;
}
.photoListPreview input[type=checkbox]:checked:after {
    content: "";
    display: block;
    width: 5px;
    height: 10px;
    border: solid black;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 2px;
    left: 6px;
}

div.form-error{
    background: rgba(139, 0, 0, 0.5);
    padding: 12px 9px;
    color: white;
    text-align: center;
    border-radius: 5px;
    width: 90%;
    margin-left: 5%;
}

.imageItemgalleryfull{
    background: var(--878C9F);
    color: white;
    height: 0;
    padding-top: 100%;
    border: 5px solid white;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    text-align: center;
}

.imageItemgallery{
    background: var(--878C9F);
    color: white;
    height: 0;
    padding-top: 33%;
    border: 5px solid white;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    text-align: center;
}

.imageItemgallery span{
    position: absolute;
    line-height: 150%;
    top: 45%;
    left: 0px;
    width: 100%;
    display: block;

}

.lightgallery{
    margin-top: 20px;
}

.infoLockedalbum{
    text-align: center;
    background: white;
    border-top: 1px solid #eee;
    padding-top: 4px;
    color: #F75C96 !important;
}

.box-media-zoom.unlockAlbum{
    top: 45px;
}

.gradient-color-album{
    background: rgb(247,92,150);
    background: linear-gradient(197deg, rgba(247,92,150,0.8113620448179272) 0%, rgba(255,255,255,1) 26%, rgba(255,255,255,1) 52%);
}

.gradient-color-post{
    background: rgb(247,92,150);
    background: linear-gradient(197deg, rgba(247,92,150,0.8113620448179272) 0%, rgba(255,255,255,1) 26%, rgba(255,255,255,1) 52%);
}

.gradient-color-advert{
    background: rgb(56,79,149);
    background: linear-gradient(197deg, rgba(56,79,149,0.6741071428571428) 0%, rgba(255,255,255,1) 26%);
}

select{
    height: 41px;
    width: 100%;
}


article.propagation-item div.geodir-category-content.fl-wrap.title-sin_item{
    -webkit-box-shadow: 0px 0px 5px 0px red;
    -moz-box-shadow: 0px 0px 5px 0px red;
    box-shadow: 0px 0px 5px 0px red;
}


.tooltipfeelia {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
}

.tooltipfeelia{
    color: gray;
    font-size: 90%;
    font-weight: normal;
    text-decoration: underline;
    border-bottom: 0px;
    font-style: italic;;

}

.tooltipfeelia .tooltiptext {
    font-style: normal;
    visibility: hidden;
    max-width: 200px;
    min-width: 170px;
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 10px;
    position: absolute;
    z-index: 1;
    top: 40px;
    left: -50px;
    font-size: 12px;
    line-height: 16px;
}

.tooltipfeelia:hover .tooltiptext {
    visibility: visible;
}

.tags-stylwrap a.active {
    float: left;
    padding: 8px 20px;
    border-radius: 2px;
    color: white;
    font-weight: 400;
    margin:0 6px 6px 0;
    background: #F75C96;
    border: 1px solid #eee;
    transition: all 0.2s  ease-in-out;
}

.ctable h3{
    color:var(--566985);
    text-align: left;
    font-size: 130%;
    margin-top: 20px;
    margin-bottom: 20px;
}

.ctable table{
    margin-top: 20px;
}

.ctable th {
    border:1px solid #4DB7FE;
    font-weight: 100;
    padding: 15px;
    text-align:left;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
    vertical-align:middle;

}

.ctable tr {
    color:var(--566985);
    font-weight:normal;
}



.ctable tr:nth-child(odd) td {
    background:#EBEBEB;
}


.ctable tr:last-child td:first-child {
    border-bottom-left-radius:3px;
}

.ctable tr:last-child td:last-child {
    border-bottom-right-radius:3px;
}

.ctable td {
    padding:15px;
    text-align:left;
    vertical-align:middle;
    font-weight:300;
    border-right: 1px solid gray;
}
.ctable td:last-child {
    border-right: 0px;
}
.ctable td span{
    font-size: 80%;
    opacity: 0.8;
}
select.nochosen {
    background: #fff none repeat scroll 0 0;
    border: medium none;
    border-radius: 35px;
    color: #535165;
    font-size: 13px;
    line-height: initial;
    margin: 10px 0;
    padding: 14px 15px;
    width: 100%;
}


.starVideoItem{
    width: 50% !important;;
}


@media only screen and  (max-width: 800px) {
    .starVideoItem{
        width: 100% !important;;
    }

}

.nomartintopbutton{
    margin-top: 0px !important;
}

@media only screen and  (max-width: 1200px) {
    .nomartintopbutton{
        margin-top: 20px !important;
    }

}

@media only screen and  (max-width: 660px) {
    .logo-fullsite{
        display: none !important;
    }
    .logo-mobilesite{
        display: inline-block !important;
    }
}
@media only screen and  (max-width: 1280px) {
    .hideomobile{
        display: none !important;
    }

}

.region-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    padding: 24px;
}

.region-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: #1f2937 !important;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.region-card:hover {
    transform: translateY(-2px);
    border-color: #F75C96;
    box-shadow: 0 6px 16px rgba(247, 92, 150, 0.15);
    color: #F75C96 !important;
}

.region-card__label {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.region-card__label span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.region-card__pin {
    color: #F75C96;
    font-size: 15px;
    flex-shrink: 0;
}

.region-card__arrow {
    color: #9ca3af;
    font-size: 12px;
    flex-shrink: 0;
    transition: transform 0.2s ease, color 0.2s ease;
}

.region-card:hover .region-card__arrow {
    transform: translateX(4px);
    color: #F75C96;
}

@media (max-width: 480px) {
    .region-grid {
        grid-template-columns: 1fr;
        padding: 16px;
        gap: 8px;
    }
    .region-card {
        padding: 14px 16px;
    }
}

.pz-card {
    position: relative;
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.pz-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
}

.pz-card--top {
    outline: 2px solid #F75C96;
    outline-offset: -2px;
}

.pz-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: #f3f4f6;
}

.pz-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.pz-card:hover .pz-card__image img {
    transform: scale(1.06);
}

.pz-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.45) 100%);
    pointer-events: none;
}

.pz-card__badges {
    position: absolute;
    display: flex;
    gap: 6px;
    z-index: 2;
}

.pz-card__badges--top-left { top: 12px; left: 12px; }
.pz-card__badges--bottom-left { bottom: 12px; left: 12px; }

.pz-card__badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1;
    backdrop-filter: blur(8px);
}

.pz-card__badge--top {
    background: rgba(247, 92, 150, 0.95);
    color: #ffffff;
}

.pz-card__badge--open {
    background: rgba(16, 185, 129, 0.95);
    color: #ffffff;
}

.pz-card__cta {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) translateY(8px);
    padding: 10px 18px;
    background: #ffffff;
    color: #1f2937;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    opacity: 0;
    transition: opacity 0.25s ease, transform 0.25s ease;
    z-index: 2;
    pointer-events: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    white-space: nowrap;
}

.pz-card:hover .pz-card__cta {
    opacity: 1;
    transform: translate(-50%, -50%) translateY(0);
}

.pz-card__avatar {
    position: absolute;
    top: calc(4 / 3 * 100% * 1 - 24px);
    right: 16px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #ffffff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    z-index: 3;
    background: #f3f4f6;
}

.pz-card__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pz-card__body {
    padding: 18px 18px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}

.pz-card__title {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    color: #111827;
    display: flex;
    align-items: center;
    gap: 6px;
    padding-right: 44px;
}

.pz-card__title a {
    color: inherit !important;
    text-decoration: none;
}

.pz-card__title a:hover {
    color: #F75C96 !important;
}

.pz-card__verified {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: #F75C96;
    color: #ffffff;
    border-radius: 50%;
    font-size: 9px;
    flex-shrink: 0;
}

.pz-card__location {
    font-size: 13px;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 6px;
    padding-right: 44px;
}

.pz-card__location i {
    color: #F75C96;
    font-size: 12px;
    flex-shrink: 0;
}

.pz-card__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 4px;
}

.pz-card__chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    background: #f3f4f6;
    color: #4b5563;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
}

.pz-card__chip i {
    font-size: 10px;
    color: #9ca3af;
}

.pz-card__chip--service {
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96;
}

.pz-card__chip--service i {
    color: #F75C96;
}

.pz-grid,
div.pz-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
    gap: 20px;
    clear: both;
    width: 100%;
    float: none;
    margin: 0 0 24px;
}

.pz-grid > .pz-card,
.pz-grid > article.pz-card {
    float: none !important;
    width: auto !important;
    min-width: 0;
    max-width: 100%;
    display: flex !important;
    flex-direction: column;
}

@media (max-width: 480px) {
    .pz-card__body { padding: 14px 14px 12px; }
    .pz-card__title { font-size: 15px; padding-right: 40px; }
    .pz-card__avatar { width: 40px; height: 40px; right: 12px; }
    .pz-grid { gap: 14px; }
}

.filter-topbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 16px;
}

.filter-topbar__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #F75C96;
    color: #ffffff !important;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(247, 92, 150, 0.25);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.filter-topbar__cta:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(247, 92, 150, 0.35);
    color: #ffffff !important;
}

.filter-topbar__cta i {
    color: #ffffff;
}

.filter-search-full input[type="text"],
.filter-search-full input[type="search"] {
    padding-left: 42px !important;
    padding-right: 16px !important;
}

.filter-search-full label i {
    right: auto !important;
    left: 14px;
    top: 42px !important;
    color: #9ca3af;
}

.filter-accordion {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 0;
    margin: 12px 0 20px;
    overflow: hidden;
}

.filter-accordion__toggle {
    list-style: none;
    padding: 14px 18px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 10px;
    user-select: none;
}

.filter-accordion__toggle::-webkit-details-marker { display: none; }

.filter-accordion__toggle > span {
    flex: 1;
}

.filter-accordion__toggle em {
    color: #9ca3af;
    font-weight: 500;
    font-style: normal;
    margin-left: 4px;
}

.filter-accordion__toggle > i:first-child {
    color: #F75C96;
    font-size: 14px;
}

.filter-accordion__caret {
    color: #9ca3af;
    font-size: 12px;
    transition: transform 0.2s ease;
}

.filter-accordion[open] .filter-accordion__caret {
    transform: rotate(180deg);
}

.filter-accordion__body {
    padding: 8px 18px 18px;
    border-top: 1px solid #e5e7eb;
    background: #ffffff;
}

.filter-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
    margin-top: 12px;
    padding-top: 20px;
    border-top: 1px solid #f3f4f6;
}

.filter-actions__reset {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #6b7280 !important;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none !important;
    padding: 8px 12px;
    border-radius: 6px;
    transition: background 0.15s ease, color 0.15s ease;
}

.filter-actions__reset:hover {
    background: #f3f4f6;
    color: #F75C96 !important;
}

.filter-actions__reset i {
    color: inherit;
    font-size: 11px;
}

.filter-actions__submit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 32px;
    background: #F75C96;
    color: #ffffff;
    border: none;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(247, 92, 150, 0.25);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.filter-actions__submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(247, 92, 150, 0.35);
}

.filter-actions__submit i {
    color: #ffffff;
}

@media (max-width: 480px) {
    .filter-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }
    .filter-actions__submit { width: 100%; justify-content: center; }
    .filter-actions__reset { justify-content: center; }
}

.services-details {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    margin: 12px 0 20px;
    overflow: hidden;
}

.services-details__toggle {
    list-style: none;
    padding: 14px 18px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 10px;
    user-select: none;
}

.services-details__toggle::-webkit-details-marker,
.services-details__toggle::marker { display: none; content: ''; }

.services-details__toggle > span { flex: 1; }

.services-details__toggle > i:first-child { color: #F75C96; font-size: 14px; }

.services-details__caret {
    color: #9ca3af;
    font-size: 12px;
    transition: transform 0.2s ease;
}

.services-details[open] .services-details__caret { transform: rotate(180deg); }

.services-details[open] > div {
    padding: 0 18px 18px;
    background: #ffffff;
    border-top: 1px solid #e5e7eb;
}

.filter-tags .fixed.service-btn {
    float: none !important;
    width: auto !important;
    display: inline-block !important;
    margin: 4px !important;
    padding: 0 !important;
    list-style: none;
    vertical-align: top;
}

.filter-tags .service-btn > input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    overflow: hidden;
    white-space: nowrap;
}

.filter-tags .service-btn > label.servicelabel {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 8px 16px !important;
    background: #ffffff !important;
    color: #4b5563 !important;
    border: 1.5px solid #e5e7eb !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    margin: 0 !important;
    line-height: 1.3 !important;
    white-space: nowrap;
    user-select: none;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    width: auto !important;
    height: auto !important;
    box-shadow: none !important;
    text-align: left !important;
}

.filter-tags .service-btn > label.servicelabel:before,
.filter-tags .service-btn > label.servicelabel:after {
    display: none !important;
    content: none !important;
}

.filter-tags .service-btn > label.servicelabel:hover {
    border-color: #F75C96 !important;
    color: #F75C96 !important;
    background: rgba(247, 92, 150, 0.04) !important;
    transform: translateY(-1px);
}

.filter-tags .service-btn > input[type="checkbox"]:checked ~ label.servicelabel,
.filter-tags .service-btn > input[type="checkbox"]:checked + label.servicelabel,
.filter-tags li.is-checked > label.servicelabel,
.filter-tags .service-btn.is-checked > label.servicelabel {
    background: #F75C96 !important;
    color: #ffffff !important;
    border-color: #F75C96 !important;
    box-shadow: 0 3px 10px rgba(247, 92, 150, 0.35) !important;
}

.filter-tags .service-btn > input[type="checkbox"]:focus-visible ~ label.servicelabel,
.filter-tags .service-btn > input[type="checkbox"]:focus-visible + label.servicelabel {
    outline: 2px solid rgba(247, 92, 150, 0.4);
    outline-offset: 2px;
}

.hp-lead-banner {
    text-align: center;
    padding: 24px 20px 32px;
    margin-bottom: 32px;
    position: relative;
    z-index: 2;
}

.hp-lead-banner__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    font-weight: 800;
    font-size: 15px;
    letter-spacing: 0.05em;
    border-radius: 999px;
    margin-bottom: 18px;
    box-shadow: 0 6px 24px rgba(247, 92, 150, 0.45), 0 0 0 4px rgba(247, 92, 150, 0.12);
    text-transform: uppercase;
    animation: hpLeadPulse 2.6s ease-in-out infinite;
}

.hp-lead-banner__badge i {
    color: #fff5c4;
    font-size: 14px;
}

@keyframes hpLeadPulse {
    0%, 100% { box-shadow: 0 6px 24px rgba(247, 92, 150, 0.45), 0 0 0 4px rgba(247, 92, 150, 0.12); }
    50%      { box-shadow: 0 6px 28px rgba(247, 92, 150, 0.65), 0 0 0 10px rgba(247, 92, 150, 0.08); }
}

.hp-lead-banner__title {
    margin: 0 0 8px;
    font-size: clamp(24px, 4vw, 40px);
    font-weight: 900;
    color: #ffffff;
    line-height: 1.15;
    letter-spacing: -0.01em;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.4);
}

.hp-lead-banner__subtitle {
    margin: 0;
    font-size: clamp(14px, 2vw, 18px);
    font-weight: 500;
    color: rgba(255, 255, 255, 0.85);
    letter-spacing: 0.02em;
}

@media (max-width: 600px) {
    .hp-lead-banner { padding: 18px 14px 24px; margin-bottom: 20px; }
    .hp-lead-banner__badge { font-size: 13px; padding: 6px 16px; }
}

.manage-stats {
    background: linear-gradient(135deg, #1a1e2e 0%, #2e3f6e 100%);
    border-radius: 12px;
    padding: 30px 26px 26px;
    margin-bottom: 22px;
    color: #ffffff;
    text-align: center;
    position: relative;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(46, 63, 110, 0.25);
}

.manage-stats::before {
    content: "";
    position: absolute;
    top: -60px;
    right: -60px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.25) 0%, transparent 70%);
    pointer-events: none;
}

.manage-stats__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff !important;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border-radius: 999px;
    box-shadow: 0 4px 14px rgba(247, 92, 150, 0.4);
    margin-bottom: 14px;
    position: relative;
    z-index: 1;
}

.manage-stats__badge i { color: #fff5c4 !important; font-size: 12px; }

.manage-stats__lead {
    margin: 0 0 22px !important;
    color: rgba(255, 255, 255, 0.9);
    font-size: 15px !important;
    line-height: 1.5 !important;
    max-width: 500px;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative;
    z-index: 1;
}

.manage-stats__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    position: relative;
    z-index: 1;
}

.manage-stats__item {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    padding: 16px 10px;
    transition: transform 0.2s ease, background 0.2s ease;
}

.manage-stats__item:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-2px);
}

.manage-stats__num {
    font-size: clamp(20px, 3vw, 28px);
    font-weight: 900;
    color: #ffffff;
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin-bottom: 4px;
}

.manage-stats__label {
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
    font-weight: 500;
    text-transform: lowercase;
    letter-spacing: 0.02em;
}

@media (max-width: 600px) {
    .manage-stats { padding: 22px 16px 18px; }
    .manage-stats__grid { grid-template-columns: 1fr; gap: 10px; }
    .manage-stats__item { padding: 12px 10px; }
    .manage-stats__num { font-size: 22px; }
}

.manage-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 28px 26px;
    margin-bottom: 22px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    text-align: center;
}

.manage-card__icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 14px;
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
}

.manage-card h3 {
    margin: 0 0 10px !important;
    font-size: 22px !important;
    color: #1f2937 !important;
    font-weight: 800;
}

.manage-card p {
    margin: 0;
    color: #6b7280;
    font-size: 15px;
    line-height: 1.55;
}

.manage-card--warning .manage-card__icon {
    background: rgba(245, 158, 11, 0.12);
    color: #f59e0b;
}

.manage-card--warning h3 { color: #b45309 !important; }

.manage-steps {
    background: #ffffff;
    border-radius: 12px;
    padding: 12px 26px;
    margin-bottom: 22px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    text-align: left !important;
}

.manage-step {
    display: flex;
    gap: 18px;
    padding: 20px 0;
    border-bottom: 1px solid #f3f4f6;
    text-align: left !important;
    align-items: flex-start;
}

.manage-step:last-child { border-bottom: none; }

.manage-step__body {
    text-align: left !important;
    flex: 1;
}

.manage-step__num {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 800;
    flex-shrink: 0;
    box-shadow: 0 3px 10px rgba(247, 92, 150, 0.3);
}

.manage-step__body h4 {
    margin: 0 0 6px !important;
    font-size: 16px !important;
    color: #1f2937 !important;
    font-weight: 700;
}

.manage-step__body p {
    margin: 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.5;
}

.manage-cta {
    text-align: center !important;
    padding: 30px 20px;
    background: #ffffff;
    border-radius: 12px;
    margin-bottom: 22px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.manage-cta .manage-cta__btn,
.manage-cta a.manage-cta__btn.show-reg-form {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 4px 2px !important;
    margin: 0 !important;
    background: none !important;
    color: #F75C96 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    border: none !important;
    box-shadow: none !important;
    transition: color 0.15s ease !important;
    cursor: pointer !important;
    float: none !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.manage-cta .manage-cta__btn::before,
.manage-cta a.manage-cta__btn.show-reg-form::before,
.manage-cta .manage-cta__btn::after {
    display: none !important;
    content: none !important;
}

.manage-cta .manage-cta__btn i {
    color: #F75C96 !important;
    font-size: 14px !important;
    margin: 0 !important;
    float: none !important;
}

.manage-cta .manage-cta__btn:hover,
.manage-cta a.manage-cta__btn.show-reg-form:hover {
    color: #d63f7d !important;
    text-decoration: underline !important;
    background: none !important;
}

.manage-cta .manage-cta__btn:hover i { color: #d63f7d !important; }

.manage-cta__hint {
    margin: 0 !important;
    color: #6b7280;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
    text-align: center;
}

.manage-cta__hint i { color: #9ca3af; }

.manage-help {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 22px 26px;
    text-align: left !important;
}

.manage-help h4 {
    margin: 0 0 12px !important;
    font-size: 16px !important;
    color: #374151 !important;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}

.manage-help h4 i { color: #F75C96; }

.manage-help ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.manage-help ul li {
    padding: 6px 0 6px 22px;
    position: relative;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.5;
    text-align: left !important;
}

.manage-help ul li::before {
    content: "•";
    position: absolute;
    left: 6px;
    top: 6px;
    color: #F75C96;
    font-weight: bold;
}

.manage-help ul li a { color: #F75C96 !important; text-decoration: underline; }

@media (max-width: 600px) {
    .manage-card, .manage-steps, .manage-cta, .manage-help { padding-left: 18px; padding-right: 18px; }
    .manage-cta__btn { padding: 14px 24px; font-size: 15px; width: 100%; }
    .manage-step { gap: 14px; }
}

.advert-status {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    border-radius: 999px;
    font-size: 14px;
    margin: 6px 0 14px;
    backdrop-filter: blur(8px);
}

.advert-status--open {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
    border: 1px solid rgba(16, 185, 129, 0.3);
}

.advert-status--closed {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.advert-status strong {
    color: inherit;
    font-weight: 700;
}

.advert-status__sub {
    opacity: 0.85;
    font-weight: 500;
}

.advert-status__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: currentColor;
    display: inline-block;
    animation: advertStatusDot 2s ease-in-out infinite;
}

@keyframes advertStatusDot {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%      { opacity: 0.4; transform: scale(0.8); }
}

.advert-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 4px 0 14px;
    color: rgba(255, 255, 255, 0.85);
}

.advert-trust__item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
}

.advert-trust__item i {
    color: #F75C96;
    font-size: 13px;
}

.advert-quickstats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 6px 0 16px;
}

.advert-quickstats__chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    color: #ffffff;
    font-size: 13px;
    backdrop-filter: blur(4px);
    line-height: 1.3;
}

.advert-quickstats__chip strong {
    color: #ffffff;
    font-weight: 700;
    margin-right: 2px;
}

.advert-quickstats__chip i {
    color: #F75C96;
    font-size: 12px;
}

.advert-mobilebar {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(12px);
    border-top: 1px solid #e5e7eb;
    padding: 8px 8px calc(8px + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
    gap: 8px;
}

.advert-mobilebar__btn {
    flex: 1;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 10px 4px;
    color: #4b5563 !important;
    text-decoration: none !important;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    border-radius: 10px;
    transition: background 0.15s ease, color 0.15s ease;
}

.advert-mobilebar__btn i { font-size: 18px; color: inherit; }

.advert-mobilebar__btn:active {
    background: rgba(247, 92, 150, 0.08);
    color: #F75C96 !important;
}

.advert-mobilebar__btn--primary {
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(247, 92, 150, 0.35);
}

.advert-mobilebar__btn--primary i { color: #ffffff; }
.advert-mobilebar__btn--primary:active {
    background: linear-gradient(135deg, #e04c85 0%, #ff8fb9 100%);
    color: #ffffff !important;
}

@media (max-width: 768px) {
    .advert-mobilebar { display: flex; }
    body { padding-bottom: 72px; }
    .chat-widget-button.cwb { bottom: 78px !important; }
}

@media (min-width: 992px) {
    .list-single-sidebar,
    .list-single-main-wrapper .col-md-4 {
        position: -webkit-sticky;
        position: sticky;
        top: 20px;
        align-self: flex-start;
    }
}

@media (max-width: 600px) {
    .advert-trust { gap: 10px; }
    .advert-trust__item { font-size: 12px; }
    .advert-quickstats__chip { font-size: 12px; padding: 6px 12px; }
}

.info-group-title {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #9ca3af !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    margin: 0 0 14px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid #f3f4f6 !important;
}

.info-group-title + .info-group-title,
.info-grid + .info-group-title,
.info-langs + .info-group-title {
    margin-top: 26px !important;
}

.info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 10px;
    margin-bottom: 8px;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    background: #f9fafb;
    border: 1px solid #eef0f3;
    border-radius: 10px;
    transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.info-item:hover {
    background: #ffffff;
    border-color: rgba(247, 92, 150, 0.4);
    transform: translateY(-1px);
}

.info-item__icon {
    width: 38px;
    height: 38px;
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
}

.info-item__body {
    min-width: 0;
    flex: 1;
}

.info-item__label {
    font-size: 11px;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
    margin-bottom: 2px;
    line-height: 1.2;
}

.info-item__value {
    font-size: 14px;
    color: #1f2937;
    font-weight: 700;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info-item__value small {
    font-weight: 500;
    color: #6b7280;
    font-size: 12px;
    margin-left: 2px;
}

.info-langs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.info-langs__chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    background: rgba(247, 92, 150, 0.08);
    color: #F75C96;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
}

.info-langs__chip i { font-size: 11px; }

.location-timeline {
    position: relative;
    padding-left: 4px;
}

.location-timeline::before {
    content: '';
    position: absolute;
    left: 14px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background: linear-gradient(180deg, #F75C96 0%, #f3f4f6 100%);
    z-index: 0;
}

.location-timeline__item {
    position: relative;
    padding: 8px 0 8px 40px;
    min-height: 44px;
}

.location-timeline__item + .location-timeline__item {
    padding-top: 14px;
}

.location-timeline__dot {
    position: absolute;
    left: 5px;
    top: 12px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #d1d5db;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: transparent;
    font-size: 9px;
}

.location-timeline__item--current .location-timeline__dot {
    background: #F75C96;
    border-color: #F75C96;
    color: #ffffff !important;
    box-shadow: 0 0 0 4px rgba(247, 92, 150, 0.18);
    animation: locationPulse 2.2s ease-in-out infinite;
}

@keyframes locationPulse {
    0%, 100% { box-shadow: 0 0 0 4px rgba(247, 92, 150, 0.18); }
    50%      { box-shadow: 0 0 0 8px rgba(247, 92, 150, 0.08); }
}

.location-timeline__date {
    font-size: 10px;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 2px;
    line-height: 1.2;
}

.location-timeline__item--current .location-timeline__date {
    color: #F75C96;
}

.location-timeline__city {
    font-size: 14px;
    color: #1f2937;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 2px;
}

.location-timeline__region {
    font-size: 12px;
    color: #6b7280;
    line-height: 1.3;
}

.location-empty {
    text-align: center;
    padding: 20px 10px;
}

.location-empty__icon {
    width: 52px;
    height: 52px;
    margin: 0 auto 10px;
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.location-empty__title {
    font-size: 14px;
    color: #1f2937;
    font-weight: 700;
    margin-bottom: 3px;
}

.location-empty__sub {
    font-size: 12px;
    color: #6b7280;
}

.practice-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 4px 0;
}

.practice-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 16px;
    background: #f9fafb;
    border: 1px solid #eef0f3;
    color: #1f2937;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.practice-chip:hover {
    background: rgba(247, 92, 150, 0.08);
    border-color: rgba(247, 92, 150, 0.4);
    color: #F75C96;
    transform: translateY(-1px);
}

.practice-chip i {
    font-size: 11px;
    color: #10b981;
}

.practice-chip:hover i { color: #F75C96; }

.practice-chip--special {
    background: linear-gradient(135deg, rgba(247, 92, 150, 0.08) 0%, rgba(255, 143, 185, 0.06) 100%);
    border-color: rgba(247, 92, 150, 0.25);
    color: #F75C96;
}

.practice-chip--special i {
    color: #F75C96;
}

.practice-chip--special:hover {
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    border-color: #F75C96;
    color: #ffffff;
}

.practice-chip--special:hover i { color: #fff5c4; }

.detail-map-block {
    padding-bottom: 0 !important;
}

.detail-map {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    margin-top: 8px;
}

.detail-map iframe {
    display: block;
    width: 100%;
    height: 340px;
    border: 0;
    background: #f3f4f6;
}

.detail-map__addr {
    padding: 12px 16px;
    background: #f9fafb;
    border-top: 1px solid #e5e7eb;
    color: #4b5563;
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}

.detail-map__addr i {
    color: #F75C96;
    font-size: 13px;
}

.detail-map__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 12px 4px 16px;
    color: #F75C96 !important;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
    transition: color 0.15s ease;
}

.detail-map__link:hover {
    color: #d63f7d !important;
}

.detail-map__link i {
    font-size: 12px;
}

@media (max-width: 600px) {
    .detail-map iframe { height: 260px; }
}

.gift-widget__lead {
    font-size: 13px !important;
    color: #6b7280 !important;
    margin: 0 0 16px !important;
    line-height: 1.5 !important;
}

.gift-widget__form { display: block; }

.gift-widget__label {
    display: block !important;
    font-size: 11px !important;
    color: #9ca3af !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-weight: 700 !important;
    margin: 0 0 6px !important;
    position: static !important;
    width: auto !important;
    float: none !important;
    padding: 0 !important;
}

.gift-widget__input-wrap {
    position: relative;
    margin-bottom: 12px;
}

.gift-widget__input {
    width: 100% !important;
    padding: 12px 60px 12px 16px !important;
    border: 1.5px solid #e5e7eb !important;
    border-radius: 10px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
    background: #ffffff !important;
    transition: border-color 0.15s ease;
    box-sizing: border-box;
    margin: 0 !important;
    float: none !important;
    height: auto !important;
    box-shadow: none !important;
    -moz-appearance: textfield;
}

.gift-widget__input::-webkit-outer-spin-button,
.gift-widget__input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.gift-widget__input:focus {
    outline: none !important;
    border-color: #F75C96 !important;
    box-shadow: 0 0 0 3px rgba(247, 92, 150, 0.15) !important;
}

.gift-widget__suffix {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 12px;
    font-weight: 600;
    pointer-events: none;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.gift-widget__btn {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 12px 20px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff !important;
    border: none;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(247, 92, 150, 0.3);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    text-align: center;
    line-height: 1.3;
    margin: 0 !important;
    float: none !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    letter-spacing: 0.02em;
    text-transform: none;
    height: auto !important;
}

.gift-widget__btn::before,
.gift-widget__btn::after {
    display: none !important;
    content: none !important;
}

.gift-widget__btn i { color: #ffffff !important; font-size: 13px; margin: 0 !important; }

.gift-widget__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(247, 92, 150, 0.4);
    color: #ffffff !important;
}

.gift-widget__form--disabled .gift-widget__input {
    background: #f3f4f6 !important;
    color: #9ca3af !important;
    cursor: not-allowed;
}

.gift-widget__form--disabled .gift-widget__suffix {
    color: #d1d5db;
}

.gift-widget__btn--login {
    background: #2e3f6e !important;
    box-shadow: 0 4px 14px rgba(46, 63, 110, 0.3);
}

.gift-widget__btn--login:hover {
    box-shadow: 0 8px 20px rgba(46, 63, 110, 0.4);
}

.gift-widget__response {
    margin-top: 12px !important;
    padding: 12px 14px !important;
    background: rgba(16, 185, 129, 0.08) !important;
    border: 1px solid rgba(16, 185, 129, 0.3) !important;
    border-radius: 8px !important;
    color: #10b981 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-align: center;
}

/* ============ FORUM ============ */

.forum-hero {
    position: relative;
    padding: 50px 0 40px;
    background: linear-gradient(135deg, #1a1e2e 0%, #2e3f6e 100%);
    color: #ffffff;
    overflow: hidden;
    margin-bottom: 0;
}

.forum-hero__bg {
    position: absolute;
    top: -80px;
    right: -80px;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.35) 0%, transparent 65%);
    pointer-events: none;
}

.forum-hero__bg::after {
    content: "";
    position: absolute;
    bottom: -120px;
    left: -60px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.15) 0%, transparent 70%);
}

.forum-hero__inner {
    position: relative;
    z-index: 1;
    text-align: left !important;
    max-width: 900px;
}

.forum-hero__crumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
    margin-bottom: 16px;
}

.forum-hero__crumb a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: rgba(255, 255, 255, 0.75) !important;
    text-decoration: none !important;
    transition: color 0.15s ease;
}

.forum-hero__crumb a:hover { color: #F75C96 !important; }

.forum-hero__crumb-sep {
    color: rgba(255, 255, 255, 0.35);
}

.forum-hero__title-wrap {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 14px;
}

.forum-hero__icon {
    width: 62px;
    height: 62px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 28px;
    flex-shrink: 0;
    box-shadow: 0 8px 24px rgba(247, 92, 150, 0.35);
}

.forum-hero__title {
    margin: 0 !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
}

.forum-hero__desc {
    margin: 0 0 18px !important;
    font-size: 15px !important;
    color: rgba(255, 255, 255, 0.8) !important;
    line-height: 1.5 !important;
    max-width: 720px;
}

.forum-hero__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
}

.forum-hero__pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(6px);
}

.forum-hero__pill i {
    color: #F75C96;
    font-size: 12px;
}

.forum-hero__pill strong {
    color: #ffffff;
    font-weight: 800;
}

.forum-searchbar {
    display: flex;
    align-items: center;
    gap: 0;
    max-width: 620px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    padding: 4px 4px 4px 20px;
    margin-top: 18px;
    backdrop-filter: blur(10px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    transition: border-color 0.15s ease, background 0.15s ease;
}

.forum-searchbar:focus-within {
    border-color: rgba(247, 92, 150, 0.6);
    background: rgba(255, 255, 255, 0.18);
}

.forum-searchbar__icon {
    color: rgba(255, 255, 255, 0.6);
    font-size: 15px;
    margin-right: 12px;
    flex-shrink: 0;
}

.forum-searchbar__input {
    flex: 1;
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    font-size: 15px !important;
    padding: 10px 0 !important;
    outline: none;
    box-shadow: none !important;
    margin: 0 !important;
    height: auto !important;
    float: none !important;
    line-height: 1.5 !important;
    width: auto !important;
    min-width: 0;
}

.forum-searchbar__input::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.forum-searchbar__btn {
    padding: 10px 24px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border: none;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    box-shadow: 0 4px 12px rgba(247, 92, 150, 0.35);
    flex-shrink: 0;
}

.forum-searchbar__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(247, 92, 150, 0.45);
}

.forum-hero__quicknav {
    display: flex;
    gap: 12px;
    margin-top: 16px;
    flex-wrap: wrap;
}

.forum-hero__ql {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.85) !important;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 600;
    transition: background 0.15s ease, color 0.15s ease;
}

.forum-hero__ql:hover {
    background: rgba(247, 92, 150, 0.25);
    color: #ffffff !important;
    border-color: rgba(247, 92, 150, 0.5);
}

.forum-hero__ql i { font-size: 11px; }

.forum-search-results {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    clear: both;
}

.forum-search-item {
    display: block;
    padding: 20px 22px;
    background: #ffffff;
    border-radius: 12px;
    text-decoration: none !important;
    color: inherit !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    text-align: left !important;
    position: relative;
}

.forum-search-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

.forum-search-item__link {
    display: block;
    text-decoration: none !important;
    color: inherit !important;
}

.forum-search-item__loc {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 11px;
    color: #F75C96;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 10px;
}

.forum-search-item__loc i { font-size: 11px; }

.forum-search-item__text {
    font-size: 14px;
    color: #1f2937;
    line-height: 1.55;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.forum-search-item__meta {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    font-size: 12px;
    color: #9ca3af;
}

.forum-search-item__meta i {
    color: #F75C96;
    margin-right: 3px;
}

.forum-my-item { padding-right: 60px; }

.forum-my-item__delete {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 36px;
    height: 36px;
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: #6b7280;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.forum-my-item__delete:hover {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.4);
    color: #ef4444;
}

.forum-my-item__reply-badge,
.forum-my-item__anon-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.03em;
    margin-left: 4px;
}

.forum-my-item__reply-badge {
    background: rgba(59, 130, 246, 0.1);
    color: #3b82f6;
}

.forum-my-item__anon-badge {
    background: rgba(107, 114, 128, 0.15);
    color: #6b7280;
}

.forum-post__action--delete {
    color: #ef4444 !important;
    margin-left: auto;
}

.forum-post__action--delete:hover { color: #dc2626 !important; }

.forum-post__action--edit { color: #3b82f6 !important; }
.forum-post__action--edit:hover { color: #2563eb !important; }

.forum-post__action--report {
    color: #9ca3af !important;
    margin-left: auto;
}
.forum-post__action--report:hover { color: #f59e0b !important; }
.forum-post__action--report.is-reported {
    color: #10b981 !important;
    cursor: default;
    pointer-events: none;
}

.forum-post__edit-form {
    margin-top: 12px;
}

.forum-post__edit-textarea {
    width: 100% !important;
    padding: 12px 14px !important;
    border: 2px solid #F75C96 !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    color: #1f2937 !important;
    background: #ffffff !important;
    box-sizing: border-box;
    resize: vertical;
    line-height: 1.5 !important;
    font-family: inherit;
    box-shadow: 0 0 0 3px rgba(247, 92, 150, 0.1) !important;
    margin: 0 !important;
    height: auto !important;
}

.forum-post__edit-textarea:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(247, 92, 150, 0.25) !important;
}

.forum-post__edit-actions {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    margin-top: 10px;
}

.forum-post__edit-cancel,
.forum-post__edit-save {
    padding: 8px 18px;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s ease;
}

.forum-post__edit-cancel {
    background: #f3f4f6;
    color: #6b7280;
}

.forum-post__edit-cancel:hover { background: #e5e7eb; }

.forum-post__edit-save {
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    box-shadow: 0 3px 10px rgba(247, 92, 150, 0.3);
}

.forum-post__edit-save:hover {
    box-shadow: 0 5px 14px rgba(247, 92, 150, 0.45);
}

.forum-side__header--trending {
    background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%) !important;
}

.forum-side__header--trending::before {
    background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 70%) !important;
}

.forum-side__item--trending {
    position: relative;
    padding-left: 44px !important;
}

.forum-side__trending-num {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 12px;
    box-shadow: 0 2px 6px rgba(245, 158, 11, 0.4);
}

.forum-side__trending-likes {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #F75C96;
    font-weight: 700;
    font-size: 12px;
}

.forum-side__trending-likes i { color: #F75C96; }

/* ============ HP FORUM WIDGET ============ */

.hp-forum-widget {
    background: #ffffff;
    border-radius: 16px;
    padding: 28px 28px 24px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    text-align: left !important;
}

.hp-forum-widget__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 22px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f3f4f6;
}

.hp-forum-widget__head-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.hp-forum-widget__badge {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    box-shadow: 0 6px 16px rgba(247, 92, 150, 0.35);
    flex-shrink: 0;
}

.hp-forum-widget__label {
    font-size: 11px;
    color: #F75C96;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 800;
    line-height: 1;
    margin-bottom: 4px;
}

.hp-forum-widget__title {
    margin: 0 !important;
    font-size: 26px !important;
    font-weight: 900 !important;
    color: #1f2937 !important;
    line-height: 1.1 !important;
}

.hp-forum-widget__head-right {
    display: flex;
    align-items: center;
    gap: 14px;
}

.hp-forum-widget__today {
    padding: 6px 14px;
    background: rgba(16, 185, 129, 0.1);
    color: #10b981;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
}

.hp-forum-widget__today strong { color: #10b981 !important; font-size: 14px; }

.hp-forum-widget__more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #F75C96 !important;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none !important;
    transition: transform 0.15s ease;
}

.hp-forum-widget__more:hover { transform: translateX(3px); }
.hp-forum-widget__more i { color: #F75C96; }

.hp-forum-widget__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 14px;
}

.hp-forum-post {
    display: block;
    padding: 16px 18px;
    background: #f9fafb;
    border: 1px solid #eef0f3;
    border-radius: 12px;
    text-decoration: none !important;
    color: inherit !important;
    transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.hp-forum-post:hover {
    background: #ffffff;
    border-color: rgba(247, 92, 150, 0.4);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
}

.hp-forum-post__loc {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 10px;
    color: #F75C96;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 8px;
}

.hp-forum-post__loc i { font-size: 10px; }

.hp-forum-post__excerpt {
    font-size: 13px;
    color: #1f2937;
    line-height: 1.5;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 58px;
}

.hp-forum-post__meta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    font-size: 11px;
    color: #9ca3af;
}

.hp-forum-post__author {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 600;
    color: #6b7280;
}

.hp-forum-post__author i { font-size: 10px; color: #F75C96; }

.hp-forum-post__likes {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: #F75C96;
    font-weight: 700;
    margin-left: auto;
}

.hp-forum-post__likes i { color: #F75C96; }

/* ============ HP FORUM CTA ============ */

.hp-forum-cta {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 28px 32px;
    background: linear-gradient(135deg, #1a1e2e 0%, #2e3f6e 100%);
    color: #ffffff !important;
    border-radius: 16px;
    text-decoration: none !important;
    box-shadow: 0 10px 30px rgba(46, 63, 110, 0.25);
    position: relative;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hp-forum-cta::before {
    content: "";
    position: absolute;
    top: -60px;
    right: -60px;
    width: 240px;
    height: 240px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.35) 0%, transparent 65%);
    pointer-events: none;
}

.hp-forum-cta:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 38px rgba(46, 63, 110, 0.35);
    color: #ffffff !important;
}

.hp-forum-cta__icon {
    width: 68px;
    height: 68px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 30px;
    flex-shrink: 0;
    box-shadow: 0 8px 20px rgba(247, 92, 150, 0.4);
    position: relative;
    z-index: 1;
}

.hp-forum-cta__body {
    flex: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
}

.hp-forum-cta__title {
    font-size: 22px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
    margin-bottom: 6px;
}

.hp-forum-cta__desc {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.5;
    margin-bottom: 12px;
}

.hp-forum-cta__pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hp-forum-cta__pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.85);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

.hp-forum-cta__amount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    padding: 2px 8px;
    background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
    color: #ffffff;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
}

.hp-forum-cta__btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 26px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 999px;
    font-weight: 800;
    font-size: 14px;
    letter-spacing: 0.02em;
    box-shadow: 0 6px 20px rgba(247, 92, 150, 0.4);
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    white-space: nowrap;
    transition: transform 0.15s ease;
}

.hp-forum-cta__btn i { color: #ffffff; }

.hp-forum-cta:hover .hp-forum-cta__btn {
    transform: translateX(4px);
}

@media (max-width: 700px) {
    .hp-forum-cta { flex-direction: column; text-align: center; padding: 24px 20px; }
    .hp-forum-cta__pills { justify-content: center; }
    .hp-forum-cta__btn { width: 100%; justify-content: center; }
    .hp-forum-widget { padding: 20px 18px; }
    .hp-forum-widget__title { font-size: 22px !important; }
}

.forum-nav-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 6px;
    background: #F75C96;
    color: #ffffff !important;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    margin-left: 4px;
    line-height: 1;
    box-shadow: 0 2px 6px rgba(247, 92, 150, 0.4);
    animation: navBadgePulse 2s ease-in-out infinite;
}

.forum-nav-badge--inline { margin-left: 6px; }

@keyframes navBadgePulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
}

.forum-notif-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    clear: both;
}

.forum-notif-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 20px;
    background: #ffffff;
    border-radius: 12px;
    text-decoration: none !important;
    color: inherit !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    position: relative;
    text-align: left !important;
}

.forum-notif-item:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.forum-notif-item--unseen {
    border-left: 3px solid #F75C96;
    background: linear-gradient(to right, rgba(247, 92, 150, 0.03) 0%, #ffffff 30%);
}

.forum-notif-item__icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.forum-notif-item--unseen .forum-notif-item__icon {
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
}

.forum-notif-item__body {
    flex: 1;
    min-width: 0;
}

.forum-notif-item__title {
    font-size: 14px;
    color: #1f2937;
    margin-bottom: 6px;
}

.forum-notif-item__title strong { color: #F75C96 !important; font-weight: 700; }

.forum-notif-item__excerpt {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.forum-notif-item__meta {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    font-size: 11px;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
}

.forum-notif-item__meta i { color: #F75C96; margin-right: 3px; }

.forum-notif-item__dot {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 8px;
    height: 8px;
    background: #F75C96;
    border-radius: 50%;
    box-shadow: 0 0 0 4px rgba(247, 92, 150, 0.15);
}

@media (max-width: 600px) {
    .forum-searchbar { flex-wrap: wrap; padding: 6px 10px; }
    .forum-searchbar__btn { width: 100%; margin-top: 6px; }
}

@media (max-width: 600px) {
    .forum-hero { padding: 32px 0 26px; }
    .forum-hero__title-wrap { gap: 12px; }
    .forum-hero__icon { width: 50px; height: 50px; font-size: 22px; border-radius: 12px; }
    .forum-hero__crumb { font-size: 10px; }
}

.forum-credit-info {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px 24px;
    margin-bottom: 24px;
    background: linear-gradient(135deg, #fff9e6 0%, #ffe4a3 100%);
    border: 1px solid #f4c56b;
    border-radius: 14px;
    color: #78350f;
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.15);
    text-align: left !important;
    position: relative;
    overflow: hidden;
    clear: both;
}

.forum-credit-info::before {
    content: "";
    position: absolute;
    top: -40px;
    right: -40px;
    width: 160px;
    height: 160px;
    background: radial-gradient(circle, rgba(251, 191, 36, 0.4) 0%, transparent 65%);
    pointer-events: none;
}

.forum-credit-info__icon {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 26px;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.35);
    position: relative;
    z-index: 1;
}

.forum-credit-info__body {
    flex: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
}

.forum-credit-info__title {
    font-size: 16px;
    font-weight: 800;
    color: #78350f;
    margin-bottom: 4px;
    line-height: 1.2;
}

.forum-credit-info__desc {
    font-size: 13px;
    color: #92400e;
    margin-bottom: 10px;
    line-height: 1.4;
}

.forum-credit-info__rules {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.forum-credit-info__rule {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #78350f;
    font-weight: 600;
}

.forum-credit-info__amount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    padding: 2px 8px;
    background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
    color: #ffffff;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(245, 158, 11, 0.4);
}

@media (max-width: 600px) {
    .forum-credit-info { flex-direction: column; text-align: center !important; padding: 18px 16px; }
    .forum-credit-info__rules { justify-content: center; }
}

.forum-credit-info--compact {
    margin: 20px 24px 4px;
    padding: 14px 18px;
    gap: 14px;
}

.forum-credit-info--compact .forum-credit-info__icon {
    width: 42px;
    height: 42px;
    font-size: 18px;
    border-radius: 10px;
}

.forum-credit-info--compact .forum-credit-info__title {
    font-size: 13px;
    margin-bottom: 6px;
}

.forum-credit-info--compact .forum-credit-info__desc { display: none; }

.forum-credit-info--compact .forum-credit-info__rules { gap: 10px; }

.forum-credit-info--compact .forum-credit-info__rule { font-size: 11px; }

.forum-credit-info--compact .forum-credit-info__amount {
    min-width: 26px;
    padding: 1px 6px;
    font-size: 10px;
}

.forum-tabs {
    display: flex;
    gap: 4px;
    margin-bottom: 24px;
    border-bottom: 2px solid #e5e7eb;
    padding-bottom: 0;
    overflow-x: auto;
}

.forum-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    color: #6b7280 !important;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none !important;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    transition: color 0.15s ease, border-color 0.15s ease;
    white-space: nowrap;
}

.forum-tab:hover {
    color: #F75C96 !important;
}

.forum-tab--active {
    color: #F75C96 !important;
    border-bottom-color: #F75C96 !important;
}

.forum-cat-grid { display: flex; flex-direction: column; gap: 14px; width: 100%; clear: both; text-align: left !important; margin-bottom: 32px; }

.forum-section-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    margin-bottom: 14px;
    background: linear-gradient(135deg, rgba(247, 92, 150, 0.06) 0%, rgba(247, 92, 150, 0.02) 100%);
    border-left: 3px solid #F75C96;
    border-radius: 4px 12px 12px 4px;
    text-align: left !important;
}

.forum-section-heading--region {
    background: linear-gradient(135deg, rgba(46, 63, 110, 0.06) 0%, rgba(46, 63, 110, 0.02) 100%);
    border-left-color: #2e3f6e;
}

.forum-section-heading__icon {
    width: 42px;
    height: 42px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(247, 92, 150, 0.3);
}

.forum-section-heading--region .forum-section-heading__icon {
    background: linear-gradient(135deg, #2e3f6e 0%, #4b5f96 100%);
    box-shadow: 0 4px 12px rgba(46, 63, 110, 0.3);
}

.forum-section-heading__body { flex: 1; min-width: 0; }

.forum-section-heading__label {
    font-size: 11px;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 4px;
}

.forum-section-heading__title {
    margin: 0 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1f2937 !important;
    line-height: 1.2 !important;
}

.forum-section-heading__count {
    padding: 6px 14px;
    background: #ffffff;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    color: #F75C96;
    flex-shrink: 0;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

.forum-section-heading--region .forum-section-heading__count {
    color: #2e3f6e;
}

.forum-cat--general .forum-cat__icon {
    background: rgba(247, 92, 150, 0.12);
}

.forum-cat--general:hover .forum-cat__icon {
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
}

.forum-cat {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px 22px;
    background: #ffffff;
    border-radius: 12px;
    text-decoration: none !important;
    color: #1f2937 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid transparent;
    text-align: left !important;
}

.forum-cat:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(0,0,0,0.08);
    border-color: rgba(247,92,150,0.3);
}

.forum-cat__icon {
    width: 60px; height: 60px;
    background: rgba(247,92,150,0.1);
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    color: #F75C96;
    font-size: 24px;
    flex-shrink: 0;
}

.forum-cat__body { flex: 1; min-width: 0; }
.forum-cat__title { margin: 0 0 4px !important; font-size: 18px !important; font-weight: 700 !important; color: #1f2937 !important; }
.forum-cat__desc { margin: 0 0 8px !important; font-size: 13px !important; color: #6b7280 !important; line-height: 1.5 !important; }
.forum-cat__stats { display: flex; gap: 16px; font-size: 12px; color: #9ca3af; }
.forum-cat__stats i { color: #F75C96; margin-right: 4px; }
.forum-cat__arrow { color: #d1d5db; font-size: 14px; flex-shrink: 0; }
.forum-cat:hover .forum-cat__arrow { color: #F75C96; }

.forum-reviews-box {
    display: block;
    padding: 24px 22px;
    margin-bottom: 20px;
    background: #ffffff;
    border-radius: 14px;
    text-decoration: none !important;
    color: inherit !important;
    box-shadow: 0 4px 20px rgba(247, 92, 150, 0.12);
    border: 2px solid rgba(247, 92, 150, 0.2);
    position: relative;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    text-align: left !important;
}

.forum-reviews-box::before {
    content: "";
    position: absolute;
    top: -50px;
    right: -50px;
    width: 180px;
    height: 180px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.forum-reviews-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(247, 92, 150, 0.22);
    border-color: rgba(247, 92, 150, 0.5);
    color: inherit !important;
}

.forum-reviews-box__badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 14px;
    box-shadow: 0 3px 8px rgba(247, 92, 150, 0.35);
    position: relative;
    z-index: 1;
}

.forum-reviews-box__badge i {
    color: #fff5c4;
    font-size: 10px;
}

.forum-reviews-box__title {
    font-size: 20px;
    font-weight: 800;
    color: #1f2937;
    line-height: 1.2;
    margin-bottom: 8px;
    position: relative;
    z-index: 1;
}

.forum-reviews-box__desc {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
    margin-bottom: 14px;
    position: relative;
    z-index: 1;
}

.forum-reviews-box__features {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
    position: relative;
    z-index: 1;
}

.forum-reviews-box__feature {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    background: rgba(247, 92, 150, 0.08);
    color: #F75C96;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
}

.forum-reviews-box__feature i {
    font-size: 10px;
    color: #F75C96;
}

.forum-reviews-box__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 4px 14px rgba(247, 92, 150, 0.35);
    transition: transform 0.15s ease;
    position: relative;
    z-index: 1;
}

.forum-reviews-box:hover .forum-reviews-box__cta {
    transform: translateX(4px);
}

.forum-reviews-box__cta i {
    color: #ffffff;
    font-size: 11px;
}

.forum-switch-box {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 20px;
    margin-bottom: 20px;
    background: linear-gradient(135deg, #1a1e2e 0%, #2e3f6e 100%);
    color: #ffffff !important;
    border-radius: 12px;
    text-decoration: none !important;
    box-shadow: 0 6px 20px rgba(46, 63, 110, 0.25);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    position: relative;
    overflow: hidden;
}

.forum-switch-box::before {
    content: "";
    position: absolute;
    top: -30px;
    right: -30px;
    width: 120px;
    height: 120px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.25) 0%, transparent 70%);
    pointer-events: none;
}

.forum-switch-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(46, 63, 110, 0.35);
    color: #ffffff !important;
}

.forum-switch-box__flag {
    font-size: 40px;
    line-height: 1;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

.forum-switch-box__body {
    flex: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
}

.forum-switch-box__label {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.65);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    margin-bottom: 2px;
}

.forum-switch-box__name {
    font-size: 17px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.forum-switch-box__arrow {
    color: #F75C96;
    font-size: 16px;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    transition: transform 0.2s ease;
}

.forum-switch-box:hover .forum-switch-box__arrow {
    transform: translateX(4px);
}

.forum-side {
    background: #ffffff;
    border-radius: 14px;
    padding: 0;
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
    overflow: hidden;
    text-align: left !important;
}

.forum-side__header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 22px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    position: relative;
}

.forum-side__header::before {
    content: "";
    position: absolute;
    top: -40px;
    right: -40px;
    width: 140px;
    height: 140px;
    background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 70%);
    pointer-events: none;
}

.forum-side__header-icon {
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.2);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 20px;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

.forum-side__header-label {
    font-size: 11px;
    color: rgba(255,255,255,0.85);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 4px;
    position: relative;
    z-index: 1;
}

.forum-side__header-title {
    font-size: 17px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
    position: relative;
    z-index: 1;
}

.forum-side__list {
    padding: 4px 12px;
    text-align: left !important;
}

.forum-side__item {
    display: flex !important;
    gap: 12px;
    padding: 14px 10px;
    border-radius: 10px;
    text-decoration: none !important;
    color: inherit !important;
    transition: background 0.15s ease;
    border-bottom: 1px solid #f3f4f6;
    align-items: flex-start;
    text-align: left !important;
}

.forum-side__list a:last-child.forum-side__item,
.forum-side__list .forum-side__item:last-child {
    border-bottom: none;
}

.forum-side__item:hover {
    background: #f9fafb;
}

.forum-side__avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    background: #f3f4f6;
    border: 2px solid #f9fafb;
}

.forum-side__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.forum-side__body {
    flex: 1;
    min-width: 0;
    text-align: left !important;
}

.forum-side__meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 3px;
}

.forum-side__author {
    color: #1f2937 !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.forum-side__date {
    font-size: 11px;
    color: #9ca3af;
    font-weight: 500;
    flex-shrink: 0;
    white-space: nowrap;
}

.forum-side__location {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #F75C96;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 5px;
}

.forum-side__location i {
    font-size: 10px;
}

.forum-side__excerpt {
    font-size: 13px;
    color: #4b5563;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.forum-side__item:hover .forum-side__author {
    color: #F75C96 !important;
}

.forum-sub-list { display: flex; flex-direction: column; gap: 10px; width: 100%; clear: both; text-align: left !important; }

.forum-feed { display: flex; flex-direction: column; gap: 20px; width: 100%; clear: both; text-align: left !important; }

.forum-sub {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 20px;
    background: #ffffff;
    border-radius: 10px;
    text-decoration: none !important;
    color: #1f2937 !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    border: 1px solid transparent;
    text-align: left !important;
}

.forum-sub:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.08);
    border-color: rgba(247,92,150,0.3);
}

.forum-sub__icon {
    width: 44px; height: 44px;
    background: rgba(247,92,150,0.08);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    color: #F75C96;
    font-size: 18px;
    flex-shrink: 0;
}

.forum-sub__body { flex: 1; min-width: 0; }
.forum-sub__title { margin: 0 0 3px !important; font-size: 16px !important; font-weight: 700 !important; color: #1f2937 !important; }
.forum-sub__desc { margin: 0 !important; font-size: 12px !important; color: #6b7280 !important; }

.forum-sub__lastpost {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #eef0f3;
    font-size: 12px;
    color: #6b7280;
    flex-wrap: wrap;
}

.forum-sub__lastpost-avatar {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    object-fit: cover;
    border: 1.5px solid #ffffff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    margin-right: 2px;
}

.forum-sub__lastpost-avatar--anon {
    background: linear-gradient(135deg, #4b5563 0%, #6b7280 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 10px;
}

.forum-side__avatar--anon {
    background: linear-gradient(135deg, #4b5563 0%, #6b7280 100%) !important;
    color: #ffffff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.forum-side__avatar--anon::before {
    display: none !important;
    content: none !important;
}

.forum-sub__lastpost-label {
    font-size: 10px;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.forum-sub__lastpost strong {
    color: #F75C96 !important;
    font-weight: 700;
}

.forum-sub__lastpost-dot {
    color: #d1d5db;
    font-weight: 700;
}

.forum-sub__stats { flex-shrink: 0; align-self: flex-start; padding-top: 4px; }

.forum-sub__pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
    line-height: 1;
    transition: background 0.15s ease;
}

.forum-sub__pill i {
    font-size: 12px;
}

.forum-sub__pill strong {
    color: #F75C96 !important;
    font-weight: 800;
    font-size: 15px;
}

.forum-sub:hover .forum-sub__pill {
    background: rgba(247, 92, 150, 0.18);
}

.forum-sub__arrow { color: #d1d5db; font-size: 14px; flex-shrink: 0; align-self: center; }

.forum-empty {
    text-align: center;
    padding: 60px 20px;
    background: #f9fafb;
    border-radius: 12px;
    color: #9ca3af;
}
.forum-empty i { font-size: 48px; margin-bottom: 16px; display: block; color: #d1d5db; }
.forum-empty p { margin: 0; font-size: 15px; }

.forum-add-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff !important;
    border-radius: 999px;
    font-weight: 700;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(247,92,150,0.3);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.forum-add-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(247,92,150,0.4); }
.forum-add-btn i { color: #ffffff; }

.forum-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    background: #ffffff;
    border-radius: 10px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    text-align: left !important;
}

.forum-topbar__info {
    font-size: 13px;
    color: #6b7280;
}

.forum-topbar__info strong {
    color: #F75C96 !important;
    font-weight: 800;
    font-size: 15px;
}

.forum-add-btn--scroll { padding: 10px 20px; font-size: 13px; }

.forum-inline-form-wrap {
    margin-top: 30px;
    scroll-margin-top: 20px;
    text-align: left !important;
}

.forum-inline-form {
    background: #ffffff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
}

.forum-inline-form__header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 24px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    position: relative;
}

.forum-inline-form__header::before {
    content: "";
    position: absolute;
    top: -40px;
    right: -40px;
    width: 140px;
    height: 140px;
    background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 70%);
}

.forum-inline-form__icon {
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.22);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

.forum-inline-form__label {
    font-size: 11px;
    color: rgba(255,255,255,0.9);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
    margin-bottom: 2px;
    position: relative;
    z-index: 1;
}

.forum-inline-form__title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
    position: relative;
    z-index: 1;
}

.forum-inline-form__body {
    padding: 24px;
}

.forum-form-row-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

.forum-form-half { min-width: 0; }

@media (max-width: 600px) {
    .forum-form-row-split { grid-template-columns: 1fr; gap: 16px; }
    .forum-topbar { flex-direction: column; align-items: stretch; }
    .forum-topbar__info { text-align: center; }
}

.forum-login-banner,
a.forum-login-banner.show-reg-form {
    display: flex !important;
    align-items: center;
    gap: 20px;
    padding: 26px 28px !important;
    background: linear-gradient(135deg, #1a1e2e 0%, #2e3f6e 100%);
    color: #ffffff !important;
    border-radius: 14px;
    text-decoration: none !important;
    box-shadow: 0 6px 24px rgba(46, 63, 110, 0.3);
    position: relative !important;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    float: none !important;
    width: auto !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    margin: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    cursor: pointer;
}

.forum-login-banner::before,
a.forum-login-banner.show-reg-form::before {
    content: "";
    position: absolute;
    top: -50px;
    right: -50px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(247, 92, 150, 0.3) 0%, transparent 70%);
    pointer-events: none;
    display: block !important;
}

.forum-login-banner:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 32px rgba(46, 63, 110, 0.4);
    color: #ffffff !important;
}

.forum-login-banner__icon {
    width: 58px;
    height: 58px;
    background: rgba(255,255,255,0.15);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #F75C96;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

.forum-login-banner__body {
    flex: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
}

.forum-login-banner__title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
    margin-bottom: 4px;
}

.forum-login-banner__desc {
    font-size: 13px;
    color: rgba(255,255,255,0.8);
    line-height: 1.5;
}

.forum-login-banner__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14px;
    box-shadow: 0 4px 14px rgba(247, 92, 150, 0.35);
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    white-space: nowrap;
}

.forum-login-banner__btn i { color: #ffffff; }

@media (max-width: 600px) {
    .forum-login-banner { flex-direction: column; text-align: center; padding: 24px 20px; }
    .forum-login-banner__btn { width: 100%; justify-content: center; }
}

.forum-post__image-locked,
a.forum-post__image-locked.show-reg-form {
    display: block !important;
    margin: 12px 0 0 !important;
    padding: 40px 20px !important;
    background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
    border: 2px dashed #d1d5db;
    border-radius: 12px;
    text-align: center !important;
    text-decoration: none !important;
    color: #6b7280 !important;
    transition: border-color 0.15s ease, background 0.15s ease;
    position: relative !important;
    overflow: hidden;
    float: none !important;
    width: auto !important;
    max-width: 380px;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    cursor: pointer;
}

.forum-post__image-locked::before,
a.forum-post__image-locked.show-reg-form::before {
    display: none !important;
    content: none !important;
}

.forum-post__image-locked::before {
    content: "";
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        45deg,
        transparent,
        transparent 20px,
        rgba(247,92,150,0.03) 20px,
        rgba(247,92,150,0.03) 40px
    );
    pointer-events: none;
}

.forum-post__image-locked:hover {
    border-color: #F75C96;
    background: linear-gradient(135deg, rgba(247,92,150,0.04) 0%, rgba(247,92,150,0.08) 100%);
    color: #F75C96 !important;
}

.forum-post__image-locked-inner {
    position: relative;
    z-index: 1;
}

.forum-post__image-locked i.fa-lock {
    font-size: 30px;
    color: #9ca3af;
    margin-bottom: 12px;
    display: block;
}

.forum-post__image-locked:hover i.fa-lock { color: #F75C96; }

.forum-post__image-locked-title {
    font-size: 14px;
    font-weight: 700;
    color: #4b5563;
    margin-bottom: 10px;
}

.forum-post__image-locked:hover .forum-post__image-locked-title { color: #F75C96; }

.forum-post__image-locked-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    color: #ffffff !important;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 3px 10px rgba(247, 92, 150, 0.3);
}

.forum-post__image-locked-cta i { color: #ffffff !important; }

.forum-post {
    background: #ffffff;
    border-radius: 12px;
    padding: 22px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    border: 2px solid transparent;
    transition: border-color 0.3s ease;
}
.forum-post--focus { border-color: rgba(247,92,150,0.4); box-shadow: 0 0 0 4px rgba(247,92,150,0.1); }

.forum-post__head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; position: relative; padding-right: 40px; }

.forum-post__avatar--anon,
.forum-reply__avatar--anon {
    background: linear-gradient(135deg, #4b5563 0%, #6b7280 100%) !important;
    color: #ffffff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.forum-reply__avatar--anon { font-size: 14px; }

.forum-post__author-name--anon,
.forum-reply__author--anon {
    color: #6b7280 !important;
    font-weight: 700 !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.forum-post__author-name--anon i,
.forum-reply__author--anon i {
    color: #9ca3af;
    font-size: 13px;
}

.forum-post__anchor {
    position: absolute;
    top: 4px;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    color: #d1d5db !important;
    border-radius: 8px;
    text-decoration: none !important;
    transition: background 0.15s ease, color 0.15s ease;
    background: transparent;
}

.forum-post__anchor i { font-size: 13px; color: inherit; }

.forum-post__anchor:hover {
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96 !important;
}

.forum-post__anchor-tip {
    position: absolute;
    bottom: calc(100% + 6px);
    right: 0;
    padding: 6px 10px;
    background: #1f2937;
    color: #ffffff;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity 0.15s ease, transform 0.15s ease;
    pointer-events: none;
    z-index: 10;
}

.forum-post__anchor-tip::after {
    content: "";
    position: absolute;
    top: 100%;
    right: 12px;
    border: 4px solid transparent;
    border-top-color: #1f2937;
}

.forum-post__anchor:hover .forum-post__anchor-tip {
    opacity: 1;
    transform: translateY(0);
}

.forum-post__anchor.is-copied {
    color: #10b981 !important;
    background: rgba(16, 185, 129, 0.1);
}

.forum-post__anchor.is-copied::after {
    content: "✓ Zkopírováno";
    position: absolute;
    bottom: calc(100% + 6px);
    right: 0;
    padding: 6px 10px;
    background: #10b981;
    color: #ffffff;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
    pointer-events: none;
    z-index: 11;
}

.forum-post__anchor.is-copied .forum-post__anchor-tip {
    opacity: 0 !important;
}

.forum-reply__head {
    position: relative;
    padding-right: 34px;
}

.forum-post__anchor--reply {
    width: 26px;
    height: 26px;
    top: 2px;
}

.forum-post__anchor--reply i { font-size: 11px; }

.forum-anon-toggle {
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    margin: 8px 0 20px;
    background: #f9fafb;
    border: 1px solid #eef0f3;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
    position: static !important;
    width: 100% !important;
    float: none !important;
    text-align: left !important;
    font-weight: normal !important;
}

.forum-anon-toggle:hover {
    background: #ffffff;
    border-color: rgba(247, 92, 150, 0.3);
}

.forum-anon-toggle__input {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    pointer-events: none;
}

.forum-anon-toggle__switch {
    width: 40px;
    height: 22px;
    background: #d1d5db;
    border-radius: 999px;
    position: relative;
    flex-shrink: 0;
    transition: background 0.2s ease;
    margin-top: 2px;
}

.forum-anon-toggle__switch::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 16px;
    height: 16px;
    background: #ffffff;
    border-radius: 50%;
    transition: transform 0.2s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.forum-anon-toggle__input:checked ~ .forum-anon-toggle__switch {
    background: #F75C96;
}

.forum-anon-toggle__input:checked ~ .forum-anon-toggle__switch::before {
    transform: translateX(18px);
}

.forum-anon-toggle__body { flex: 1; min-width: 0; }

.forum-anon-toggle__title {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 3px;
}

.forum-anon-toggle__title i {
    color: #F75C96;
    margin-right: 4px;
}

.forum-anon-toggle__desc {
    display: block;
    font-size: 12px;
    color: #6b7280;
    line-height: 1.4;
}

.forum-post__avatar img {
    width: 44px; height: 44px; border-radius: 50%; object-fit: cover;
    border: 2px solid #f3f4f6;
}

.forum-post__author-name a { color: #1f2937 !important; font-weight: 700; text-decoration: none !important; }
.forum-post__author-name a:hover { color: #F75C96 !important; }
.forum-post__date { font-size: 12px; color: #9ca3af; }

.forum-post__body { color: #1f2937; font-size: 15px; line-height: 1.6; margin-bottom: 14px; }
.forum-post__body a { color: #F75C96; }

.forum-phone-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 10px;
    margin: 0 2px;
    background: rgba(247, 92, 150, 0.1);
    color: #F75C96 !important;
    border-radius: 6px;
    font-weight: 700;
    text-decoration: none !important;
    border: 1px solid rgba(247, 92, 150, 0.25);
    transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
    font-size: 0.95em;
    line-height: 1.4;
    vertical-align: baseline;
}

.forum-phone-badge:hover {
    background: rgba(247, 92, 150, 0.2);
    border-color: rgba(247, 92, 150, 0.5);
    transform: translateY(-1px);
}

.forum-phone-badge i {
    font-size: 11px;
    color: #F75C96;
}

.forum-phone-badge__name {
    padding-left: 6px;
    margin-left: 6px;
    border-left: 1px solid rgba(247, 92, 150, 0.3);
    font-weight: 600;
    font-size: 0.9em;
    opacity: 0.85;
}

.forum-phone-badge__ext {
    font-size: 10px !important;
    opacity: 0.6;
    margin-left: 2px;
}

.forum-post__image-wrap {
    margin-top: 14px;
    display: block;
    max-width: 380px;
}

.forum-post__image {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    aspect-ratio: 4 / 3;
    background: #f3f4f6;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    cursor: zoom-in;
}

.forum-post__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.forum-post__image:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.forum-post__image:hover img {
    transform: scale(1.05);
}

.forum-post__image-zoom {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 36px;
    height: 36px;
    background: rgba(0,0,0,0.6);
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    backdrop-filter: blur(6px);
    transition: background 0.15s ease;
}

.forum-post__image:hover .forum-post__image-zoom {
    background: #F75C96;
}

.forum-post__advert {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 14px;
    padding: 12px;
    background: #f9fafb;
    border: 1px solid #eef0f3;
    border-radius: 12px;
    text-decoration: none !important;
    color: inherit !important;
    transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
    max-width: 460px;
}
.forum-post__advert:hover {
    background: #ffffff;
    border-color: rgba(247,92,150,0.4);
    transform: translateY(-1px);
}
.forum-post__advert-img {
    width: 80px; height: 80px; border-radius: 8px; overflow: hidden; flex-shrink: 0; background: #f3f4f6;
}
.forum-post__advert-img img { width: 100%; height: 100%; object-fit: cover; }
.forum-post__advert-body { flex: 1; min-width: 0; }
.forum-post__advert-badge {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 3px 10px; background: rgba(247,92,150,0.1); color: #F75C96;
    border-radius: 999px; font-size: 10px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase;
    margin-bottom: 6px;
}
.forum-post__advert-body h4 { margin: 0 0 4px !important; font-size: 15px !important; font-weight: 700 !important; color: #1f2937 !important; }
.forum-post__advert-meta { font-size: 12px; color: #6b7280; display: flex; align-items: center; gap: 4px; }
.forum-post__advert-meta i { color: #F75C96; }
.forum-post__advert-arrow { color: #d1d5db; font-size: 14px; flex-shrink: 0; }

.forum-post__actions { display: flex; gap: 20px; padding-top: 12px; border-top: 1px solid #f3f4f6; }

.forum-post__action,
a.forum-post__action.show-reg-form {
    display: inline-flex !important; align-items: center; gap: 6px;
    color: #6b7280 !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer;
    transition: color 0.15s ease;
    float: none !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    line-height: 1 !important;
}

.forum-post__action::before,
a.forum-post__action.show-reg-form::before {
    display: none !important;
    content: none !important;
}
.forum-post__action:hover { color: #F75C96 !important; }
.forum-post__action i { font-size: 14px; }
.forum-post__action.is-active { color: #F75C96 !important; }
.forum-post__action.is-active i { color: #F75C96; }

.forum-post__action.like-pop i.fa-heart {
    animation: likePop 0.35s ease;
}

@keyframes likePop {
    0%   { transform: scale(1); }
    30%  { transform: scale(1.35); }
    60%  { transform: scale(0.9); }
    100% { transform: scale(1); }
}

.forum-post__replies { margin-top: 16px; padding-left: 30px; border-left: 3px solid rgba(247,92,150,0.15); display: flex; flex-direction: column; gap: 14px; }

.forum-reply { padding: 14px; background: #f9fafb; border-radius: 10px; }
.forum-reply__head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.forum-reply__avatar { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; }
.forum-reply__author strong { color: #1f2937 !important; font-size: 13px; }
.forum-reply__author a { color: inherit !important; text-decoration: none !important; }
.forum-reply__author a:hover { color: #F75C96 !important; }
.forum-reply__date { display: block; font-size: 11px; color: #9ca3af; }
.forum-reply__body { color: #374151; font-size: 14px; line-height: 1.5; }

.forum-paginator { display: flex; align-items: center; justify-content: center; gap: 20px; margin-top: 30px; }
.forum-paginator a { color: #F75C96 !important; text-decoration: none !important; font-weight: 700; }
.forum-paginator span { color: #6b7280; }

.forum-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    padding: 14px 18px;
    background: #ffffff;
    border-radius: 10px;
    margin-bottom: 20px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
    text-align: left !important;
}

.forum-controls--bottom { margin-top: 20px; margin-bottom: 30px; justify-content: center; }

.forum-sort {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.forum-sort__label {
    font-size: 11px;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-right: 4px;
}

.forum-sort__opt {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    color: #6b7280 !important;
    background: #f9fafb;
    border: 1px solid #eef0f3;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.forum-sort__opt i { font-size: 11px; }

.forum-sort__opt:hover {
    color: #F75C96 !important;
    border-color: rgba(247, 92, 150, 0.35);
}

.forum-sort__opt--active {
    background: #F75C96 !important;
    color: #ffffff !important;
    border-color: #F75C96 !important;
    box-shadow: 0 2px 8px rgba(247, 92, 150, 0.3);
}

.forum-sort__opt--active i { color: #ffffff; }

.forum-pager {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
    justify-content: center;
}

.forum-pager__nav,
.forum-pager__page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 700;
    color: #4b5563 !important;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    text-decoration: none !important;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.forum-pager__nav:hover,
.forum-pager__page:hover {
    background: rgba(247, 92, 150, 0.06);
    color: #F75C96 !important;
    border-color: rgba(247, 92, 150, 0.35);
}

.forum-pager__page--active {
    background: #F75C96 !important;
    color: #ffffff !important;
    border-color: #F75C96 !important;
    box-shadow: 0 3px 10px rgba(247, 92, 150, 0.3);
    cursor: default;
}

.forum-pager__nav--disabled {
    opacity: 0.3;
    cursor: not-allowed;
    pointer-events: none;
}

.forum-pager__dots {
    padding: 0 4px;
    color: #9ca3af;
    font-weight: 700;
    align-self: center;
}

.forum-post__avatar,
.forum-reply__avatar,
.forum-side__avatar,
.forum-sub__lastpost-avatar {
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-weight: 700;
    overflow: hidden;
    position: relative;
}

.forum-post__avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid #f3f4f6;
    flex-shrink: 0;
}

.forum-post__avatar img,
.forum-reply__avatar img,
.forum-side__avatar img,
.forum-sub__lastpost-avatar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
    border-radius: 50%;
    position: relative;
    z-index: 1;
}

.forum-post__avatar::before,
.forum-reply__avatar::before,
.forum-side__avatar::before,
.forum-sub__lastpost-avatar::before {
    content: "\f007";
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free";
    font-weight: 300;
    font-size: 18px;
    color: rgba(255, 255, 255, 0.6);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 0;
}

.forum-reply__avatar::before { font-size: 14px; }
.forum-side__avatar::before { font-size: 16px; }
.forum-sub__lastpost-avatar::before { font-size: 10px; }

@media (max-width: 600px) {
    .forum-controls { flex-direction: column; align-items: stretch; }
    .forum-sort { justify-content: center; }
}

.forum-add-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
}
.forum-add-card__title { margin: 0 0 6px !important; font-size: 22px !important; font-weight: 800 !important; color: #1f2937 !important; }
.forum-add-card__lead { margin: 0 0 24px !important; color: #6b7280 !important; font-size: 14px !important; }
.forum-add-card__reply-quote {
    background: rgba(247,92,150,0.05);
    border-left: 3px solid #F75C96;
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 20px;
    font-size: 14px;
    color: #4b5563;
}
.forum-add-card__reply-label { font-size: 11px; color: #F75C96; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 4px; }

.forum-form-row { margin-bottom: 20px; }

.forum-form-label {
    display: block !important;
    font-size: 12px !important;
    color: #4b5563 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-bottom: 8px !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    padding: 0 !important;
    text-align: left !important;
}
.forum-form-label small { color: #9ca3af; font-weight: 500; text-transform: none; letter-spacing: 0; margin-left: 6px; }
.forum-form-label i { color: #F75C96; margin-right: 4px; }

.forum-form-input,
input.forum-form-input,
textarea.forum-form-input {
    width: 100% !important;
    padding: 12px 16px !important;
    border: 1.5px solid #e5e7eb !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    color: #1f2937 !important;
    background: #ffffff !important;
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    float: none !important;
    margin: 0 !important;
    height: auto !important;
    box-shadow: none !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    line-height: 1.5 !important;
}
.forum-form-input:focus,
input.forum-form-input:focus,
textarea.forum-form-input:focus {
    outline: none !important;
    border-color: #F75C96 !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.15) !important;
}
.forum-form-hint { font-size: 12px; color: #9ca3af; margin-top: 6px; }

.forum-form-actions { display: flex; justify-content: flex-end; gap: 12px; margin-top: 24px; padding-top: 20px; border-top: 1px solid #f3f4f6; }
.forum-form-cancel { color: #6b7280 !important; text-decoration: none !important; padding: 12px 18px; font-weight: 600; }
.forum-form-cancel:hover { color: #F75C96 !important; }

.forum-form-submit,
input.forum-form-submit {
    padding: 12px 32px !important;
    background: linear-gradient(135deg, #F75C96 0%, #ff8fb9 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(247,92,150,0.3);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    height: auto !important;
    line-height: 1.3 !important;
    text-transform: none !important;
}
.forum-form-submit:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(247,92,150,0.4); }

@media (max-width: 768px) {
    .forum-sub__stats { display: none; }
    .forum-cat { padding: 16px; }
    .forum-cat__icon { width: 48px; height: 48px; font-size: 20px; }
    .forum-post { padding: 16px; }
    .forum-post__replies { padding-left: 14px; }
    .forum-add-card { padding: 20px; }
}


/* ==========================================================================
   USER SECTION — dashboard funnel, menu, credit packages, header
   ========================================================================== */

/* ----- HEADER ----- */
.uz-header {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    padding: 28px 0 28px;
    position: relative;
    overflow: hidden;
}
.uz-header::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(247,92,150,0.15) 0%, transparent 70%);
    pointer-events: none;
}
.uz-header__row {
    display: flex;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}
.uz-header__identity {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-shrink: 0;
}
.uz-header__avatar {
    position: relative;
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: white;
    padding: 3px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.3);
}
.uz-header__avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}
.uz-header__avatar-edit {
    position: absolute;
    right: -4px;
    bottom: -4px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    text-align: center;
    border-radius: 50%;
    background: #F75C96;
    color: white !important;
    font-size: 12px;
    box-shadow: 0 4px 12px rgba(247,92,150,0.5);
    transition: transform 0.2s;
}
.uz-header__avatar-edit:hover { transform: scale(1.1); }
.uz-header__hi span {
    display: block;
    font-size: 12px;
    color: rgba(255,255,255,0.55);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 2px;
}
.uz-header__hi h1 {
    color: white;
    font-size: 24px;
    font-weight: 700;
    margin: 0;
    line-height: 1;
}
.uz-header__stats {
    display: flex;
    gap: 12px;
    flex: 1;
    flex-wrap: wrap;
}
.uz-header__stat {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 12px;
    padding: 10px 16px;
    min-width: 130px;
    color: white !important;
    text-decoration: none;
    transition: background 0.2s;
}
.uz-header__stat:hover { background: rgba(255,255,255,0.14); }
.uz-header__stat i {
    font-size: 22px;
    color: rgba(255,255,255,0.6);
}
.uz-header__stat--credit i { color: #FBBF24; }
.uz-header__stat span {
    display: block;
    font-size: 11px;
    color: rgba(255,255,255,0.55);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1;
    margin-bottom: 4px;
}
.uz-header__stat strong {
    display: block;
    color: white;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
}
.uz-header__actions {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
    flex-wrap: wrap;
}
.uz-header__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.2s, box-shadow 0.2s;
}
.uz-header__btn i { font-size: 14px; }
.uz-header__btn--secondary {
    background: rgba(255,255,255,0.1);
    color: white !important;
    border: 1px solid rgba(255,255,255,0.15);
}
.uz-header__btn--secondary:hover { background: rgba(255,255,255,0.18); }
.uz-header__btn--primary {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 6px 20px rgba(247,92,150,0.4);
}
.uz-header__btn--primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(247,92,150,0.55);
}

@media (max-width: 767px) {
    .uz-header__row { gap: 16px; }
    .uz-header__stats { width: 100%; }
    .uz-header__stat { min-width: calc(50% - 6px); flex: 1 1 calc(50% - 6px); }
    .uz-header__actions { width: 100%; }
    .uz-header__btn { flex: 1; justify-content: center; }
}

/* ----- MENU (fixedBar) ----- */
.uz-menu .user-profile-menu h3 {
    padding: 16px 22px 8px;
    color: #94a3b8;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    font-weight: 700;
    margin: 0;
    border: none;
}
.uz-menu-section {
    padding: 14px 22px 6px;
    color: #94a3b8;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
    border-top: 1px solid #f1f5f9;
    margin-top: 4px;
    clear: both;
    display: block;
    width: 100%;
}
.uz-menu-section:first-of-type {
    border-top: none;
    margin-top: 0;
}
.uz-menu .user-profile-menu ul {
    margin: 0;
    padding: 0;
}
.uz-menu .user-profile-menu li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 22px;
    color: #334155;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    transition: all 0.15s;
    border-left: 3px solid transparent;
}
.uz-menu .user-profile-menu li a:hover {
    background: #f8fafc;
    color: #F75C96;
    border-left-color: #F75C96;
}
.uz-menu .user-profile-menu li a i {
    font-size: 16px;
    color: #94a3b8;
    width: 20px;
    text-align: center;
    flex-shrink: 0;
    transition: color 0.15s;
}
.uz-menu .user-profile-menu li a:hover i { color: #F75C96; }
.uz-menu .user-profile-menu li a.user-profile-act {
    background: linear-gradient(90deg, rgba(247,92,150,0.08), transparent);
    color: #F75C96;
    border-left-color: #F75C96;
    font-weight: 600;
}
.uz-menu .user-profile-menu li a.user-profile-act i { color: #F75C96; }
.uz-menu .user-profile-menu li a.user-profile-act:before,
.uz-menu .user-profile-menu li a:before {
    display: none !important;
    background: none !important;
    width: 0 !important;
    content: none !important;
}
.uz-menu .user-profile-menu li a span {
    margin-left: auto;
    background: #F75C96;
    color: white;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 10px;
    min-width: 18px;
    text-align: center;
    line-height: 14px;
}
.uz-menu .user-profile-menu li a .uz-add-badge {
    background: #10b981;
    padding: 0;
    width: 22px;
    height: 22px;
    line-height: 22px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
}
.uz-menu .user-profile-menu li a .uz-add-badge a {
    padding: 0;
    color: white;
    display: block;
    width: 100%;
    height: 100%;
    border: none;
}
.uz-menu .user-profile-menu li a .uz-add-badge i {
    color: white !important;
    font-size: 11px;
    width: auto;
}
.uz-menu-primary a {
    color: #F75C96 !important;
    font-weight: 600;
}
.uz-menu-primary a:hover {
    background: rgba(247,92,150,0.06);
    color: #E11D48 !important;
    border-left-color: #F75C96 !important;
}
.uz-menu-primary a i { color: #F75C96 !important; }
.uz-menu-primary a:hover i { color: #E11D48 !important; }
.uz-menu-primary a.user-profile-act i { color: #F75C96 !important; }
.uz-primary-star {
    background: #fef3c7 !important;
    color: #d97706 !important;
    font-size: 12px !important;
    padding: 2px 6px !important;
    min-width: 0 !important;
    line-height: 1 !important;
}

/* ----- URGENT ACTION BANNERS ----- */
.uz-urgent {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    border-radius: 14px;
    margin-bottom: 20px;
    background: white;
    border-left: 5px solid #F75C96;
    box-shadow: 0 4px 16px rgba(15,23,42,0.06);
}
.uz-urgent--warn { border-left-color: #f59e0b; background: linear-gradient(90deg, #fffbeb 0%, #ffffff 40%); }
.uz-urgent--critical { border-left-color: #e11d48; background: linear-gradient(90deg, #fef2f2 0%, #ffffff 40%); }
.uz-urgent--info { border-left-color: #3b82f6; background: linear-gradient(90deg, #eff6ff 0%, #ffffff 40%); }
.uz-urgent__icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #F75C96;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}
.uz-urgent--warn .uz-urgent__icon { background: #f59e0b; }
.uz-urgent--critical .uz-urgent__icon { background: #e11d48; }
.uz-urgent--info .uz-urgent__icon { background: #3b82f6; }
.uz-urgent__body { flex: 1; min-width: 0; }
.uz-urgent__body h4 {
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 3px;
    line-height: 1.3;
}
.uz-urgent__body p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    line-height: 1.4;
}
.uz-urgent__btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 16px;
    background: #F75C96;
    color: white !important;
    border-radius: 8px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    flex-shrink: 0;
    white-space: nowrap;
    transition: transform 0.15s;
}
.uz-urgent--warn .uz-urgent__btn { background: #f59e0b; }
.uz-urgent--critical .uz-urgent__btn { background: #e11d48; }
.uz-urgent--info .uz-urgent__btn { background: #3b82f6; }
.uz-urgent__btn:hover { transform: translateX(3px); }

@media (max-width: 640px) {
    .uz-urgent { flex-wrap: wrap; }
    .uz-urgent__btn { width: 100%; justify-content: center; }
}

/* ----- HERO CTA (Add first advert) ----- */
.uz-hero {
    position: relative;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: white;
    border-radius: 18px;
    padding: 32px 32px 28px;
    margin-bottom: 22px;
    overflow: hidden;
    text-align: left;
}
.uz-hero__glow {
    position: absolute;
    top: -80px;
    right: -80px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(247,92,150,0.35) 0%, transparent 65%);
    pointer-events: none;
}
.uz-hero__badge {
    display: inline-block;
    background: rgba(247,92,150,0.2);
    color: #F75C96;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 14px;
    position: relative;
}
.uz-hero h2 {
    color: white;
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 10px;
    line-height: 1.2;
    position: relative;
}
.uz-hero p {
    color: rgba(255,255,255,0.75);
    font-size: 14px;
    line-height: 1.55;
    max-width: 640px;
    margin: 0 0 22px;
    position: relative;
}
.uz-hero p strong { color: white; }
.uz-hero__stats {
    display: flex;
    gap: 22px;
    margin-bottom: 22px;
    flex-wrap: wrap;
    position: relative;
}
.uz-hero__stats > div {
    display: flex;
    flex-direction: column;
    padding-right: 22px;
    border-right: 1px solid rgba(255,255,255,0.15);
    font-size: 12px;
    color: rgba(255,255,255,0.6);
}
.uz-hero__stats > div:last-child { border-right: none; }
.uz-hero__stats > div span {
    color: #F75C96;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 4px;
}
.uz-hero__btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    text-decoration: none;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 10px 28px rgba(247,92,150,0.45);
    transition: transform 0.2s, box-shadow 0.2s;
    position: relative;
}
.uz-hero__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(247,92,150,0.6);
}

/* ----- ONBOARDING FUNNEL ----- */
.uz-funnel {
    background: white;
    border-radius: 16px;
    padding: 26px 26px 24px;
    margin-bottom: 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
}
.uz-funnel__header {
    text-align: center;
    margin-bottom: 18px;
    clear: both;
    width: 100%;
    display: block;
}
.uz-funnel__header h3 {
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 6px;
    text-align: center;
}
.uz-funnel__header p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    text-align: center;
}
.uz-funnel__header p strong { color: #F75C96; }
.uz-funnel__bar {
    position: relative;
    height: 22px;
    background: #f1f5f9;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 24px;
    clear: both;
    width: 100%;
}
.uz-funnel__bar-fill {
    position: relative;
    height: 100%;
    background: linear-gradient(90deg, #F75C96 0%, #E11D48 100%);
    border-radius: 14px;
    transition: width 0.6s ease;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 10px;
    min-width: 40px;
}
.uz-funnel__bar-fill span {
    color: white;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}
.uz-funnel__grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    clear: both;
    width: 100%;
}
.uz-funnel__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 20px 14px 18px;
    background: #f8fafc;
    border: 2px solid transparent;
    border-radius: 14px;
    transition: all 0.2s;
    min-height: 220px;
    justify-content: space-between;
}
.uz-funnel__item:hover {
    background: white;
    border-color: #e2e8f0;
    box-shadow: 0 6px 18px rgba(15,23,42,0.06);
}
.uz-funnel__item--done {
    background: linear-gradient(180deg, #d1fae5 0%, #ecfdf5 100%);
}
.uz-funnel__item--done:hover {
    border-color: #10b981;
}
.uz-funnel__check {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: white;
    color: #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
    margin-bottom: 12px;
    box-shadow: 0 4px 12px rgba(15,23,42,0.05);
    transition: all 0.2s;
}
.uz-funnel__item--done .uz-funnel__check {
    background: #10b981;
    color: white;
    box-shadow: 0 6px 16px rgba(16,185,129,0.35);
}
.uz-funnel__item strong {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 6px;
    text-align: center;
    line-height: 1.3;
    text-decoration: none;
}
.uz-funnel__item span {
    display: block;
    font-size: 12px;
    color: #64748b;
    line-height: 1.4;
    text-align: center;
    margin-bottom: 14px;
    flex: 1;
}
.uz-funnel__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 9px 20px;
    background: #e2e8f0;
    color: #0f172a !important;
    border-radius: 8px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    transition: all 0.15s;
    margin-top: auto;
    width: 100%;
    box-sizing: border-box;
}
.uz-funnel__cta:hover { background: #cbd5e1; }
.uz-funnel__cta--primary {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 4px 12px rgba(247,92,150,0.35);
}
.uz-funnel__cta--primary:hover {
    background: linear-gradient(135deg, #E11D48 0%, #BE123C 100%);
    box-shadow: 0 6px 16px rgba(247,92,150,0.5);
}
.uz-funnel__done-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 9px 20px;
    background: rgba(255,255,255,0.7);
    color: #065f46 !important;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    margin-top: auto;
    width: 100%;
    box-sizing: border-box;
}
.uz-funnel__done-label::before {
    content: '✓';
    font-size: 13px;
}

@media (max-width: 1100px) {
    .uz-funnel__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 700px) {
    .uz-funnel__grid { grid-template-columns: repeat(2, 1fr); }
    .uz-funnel__item { min-height: auto; padding: 16px 12px 14px; }
}
@media (max-width: 420px) {
    .uz-funnel__grid { grid-template-columns: 1fr; }
}

/* ----- CREDIT PACKAGES ----- */
.uz-credit-packages {
    background: white;
    border-radius: 16px;
    padding: 24px 26px;
    margin-bottom: 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
}
.uz-credit-packages__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    clear: both;
    width: 100%;
}
.uz-credit-packages__header--center {
    flex-direction: column;
    align-items: center;
    text-align: center;
    justify-content: center;
    margin-bottom: 24px;
}
.uz-credit-packages__header--center h3,
.uz-credit-packages__header--center p {
    text-align: center;
    max-width: 100%;
    width: 100%;
}
.uz-credit-packages__balance-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    color: #92400e;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 13px;
    margin-bottom: 12px;
}
.uz-credit-packages__balance-pill i { color: #d97706; font-size: 14px; }
.uz-credit-packages__balance-pill strong { font-size: 14px; font-weight: 800; }
.uz-credit-packages__header h3 {
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 6px;
}
.uz-credit-packages__header p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    max-width: 620px;
}
.uz-credit-packages__balance {
    text-align: right;
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    padding: 10px 16px;
    border-radius: 10px;
    flex-shrink: 0;
}
.uz-credit-packages__balance span {
    display: block;
    font-size: 10px;
    color: #92400e;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}
.uz-credit-packages__balance strong {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #92400e;
}
.uz-credit-packages__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
.uz-credit-pack {
    position: relative;
    display: flex;
    flex-direction: column;
    text-align: center;
    padding: 22px 14px 16px;
    background: white;
    border: 2px solid #e2e8f0;
    border-radius: 14px;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    transition: all 0.2s;
}
.uz-credit-pack:hover {
    border-color: #F75C96;
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(247,92,150,0.15);
    color: inherit;
}
.uz-credit-pack--popular {
    border-color: #F75C96;
    background: linear-gradient(180deg, rgba(247,92,150,0.05) 0%, #ffffff 60%);
    transform: scale(1.02);
}
.uz-credit-pack--best {
    border-color: #10b981;
    background: linear-gradient(180deg, rgba(16,185,129,0.05) 0%, #ffffff 60%);
}
.uz-credit-pack--selected {
    box-shadow: 0 0 0 3px rgba(247,92,150,0.2);
}
.uz-credit-pack__flag {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    background: #F75C96;
    color: white;
    padding: 3px 12px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
    box-shadow: 0 4px 10px rgba(247,92,150,0.3);
}
.uz-credit-pack--best .uz-credit-pack__flag {
    background: #10b981;
    box-shadow: 0 4px 10px rgba(16,185,129,0.35);
}
.uz-credit-pack__price {
    font-size: 22px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1;
    margin-bottom: 12px;
}
.uz-credit-pack__amount {
    font-size: 30px;
    font-weight: 700;
    color: #F75C96;
    line-height: 1;
    margin-bottom: 4px;
}
.uz-credit-pack__amount span {
    display: block;
    font-size: 11px;
    font-weight: 500;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 4px;
}
.uz-credit-pack__bonus {
    font-size: 12px;
    font-weight: 700;
    color: #10b981;
    margin: 10px 0 14px;
    min-height: 14px;
}
.uz-credit-pack__cta {
    display: block;
    padding: 8px 12px;
    background: #f1f5f9;
    color: #0f172a;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    transition: all 0.15s;
}
.uz-credit-pack:hover .uz-credit-pack__cta,
.uz-credit-pack--selected .uz-credit-pack__cta {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
}
.uz-credit-pack--best:hover .uz-credit-pack__cta {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

@media (max-width: 768px) {
    .uz-credit-packages__grid { grid-template-columns: repeat(2, 1fr); }
    .uz-credit-pack--popular { transform: none; }
}
@media (max-width: 420px) {
    .uz-credit-packages__grid { grid-template-columns: 1fr; }
}

/* Credit purchase form ----- */
.uz-credit-form {
    background: white;
    border-radius: 16px;
    padding: 24px 26px;
    margin-bottom: 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
}
.uz-credit-form__inner .custom-form label {
    font-size: 13px;
    font-weight: 600;
    color: #334155;
    margin-bottom: 6px;
    display: block;
}
.uz-credit-form__row { margin-bottom: 16px; }
.uz-credit-form__row input[type="text"],
.uz-credit-form__row input[type="number"] {
    width: 100%;
    padding: 12px 14px;
    border: 2px solid #e2e8f0;
    border-radius: 10px;
    font-size: 15px;
    color: #0f172a;
    background: #f8fafc;
    transition: all 0.15s;
}
.uz-credit-form__row input:focus {
    outline: none;
    border-color: #F75C96;
    background: white;
}
.uz-credit-form__row p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
}
.uz-credit-form__btn {
    width: 100%;
    margin-top: 8px;
    padding: 14px 20px !important;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 12px !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    box-shadow: 0 8px 24px rgba(247,92,150,0.35);
    transition: transform 0.2s, box-shadow 0.2s;
}
.uz-credit-form__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(247,92,150,0.5);
}
.uz-credit-form__trust {
    display: flex !important;
    gap: 20px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid #f1f5f9;
    flex-wrap: wrap;
    justify-content: center;
    clear: both;
    width: 100%;
    float: none !important;
    text-align: center;
}
.uz-trust-item {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
    float: none !important;
    width: auto !important;
}
.uz-trust-item i { color: #10b981; font-size: 14px; }
.uz-credit-form { clear: both; }
.uz-credit-form__inner { clear: both; width: 100%; float: none; }

/* ----- STATS CARD ----- */
.uz-stats-card {
    background: white;
    border-radius: 16px;
    padding: 22px 24px;
    margin-bottom: 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
}
.uz-stats-card h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 16px;
}
.uz-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}
.uz-stat {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    background: #f8fafc;
    border-radius: 12px;
}
.uz-stat__icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: rgba(247,92,150,0.1);
    color: #F75C96;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.uz-stat__icon--views { background: rgba(59,130,246,0.1); color: #3b82f6; }
.uz-stat__icon--adverts { background: rgba(16,185,129,0.1); color: #10b981; }
.uz-stat__icon--credit { background: rgba(251,191,36,0.1); color: #f59e0b; }
.uz-stat__value {
    font-size: 22px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1;
    margin-bottom: 3px;
}
.uz-stat__label {
    font-size: 11px;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
@media (max-width: 640px) {
    .uz-stats-grid { grid-template-columns: 1fr; }
}

/* ----- QUICK ACCESS ----- */
.uz-quick {
    background: white;
    border-radius: 16px;
    padding: 20px 22px 22px;
    margin-bottom: 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
}
.uz-quick h3 {
    font-size: 14px;
    font-weight: 700;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 14px;
}
.uz-quick__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
}
.uz-quick__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 16px 8px;
    background: #f8fafc;
    border-radius: 12px;
    text-decoration: none;
    color: #334155;
    transition: all 0.15s;
    text-align: center;
}
.uz-quick__item:hover {
    background: white;
    color: #F75C96;
    box-shadow: 0 6px 18px rgba(15,23,42,0.08);
    transform: translateY(-2px);
}
.uz-quick__item i {
    font-size: 22px;
    color: #94a3b8;
    transition: color 0.15s;
}
.uz-quick__item:hover i { color: #F75C96; }
.uz-quick__item span {
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
}
@media (max-width: 900px) { .uz-quick__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 500px) { .uz-quick__grid { grid-template-columns: repeat(2, 1fr); } }

/* ----- TAB BAR (Account/Follow sections) ----- */
.uz-section-header {
    margin-bottom: 18px;
}
.uz-section-header h2 {
    font-size: 22px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 4px;
}
.uz-section-header p {
    font-size: 14px;
    color: #64748b;
    margin: 0;
}
.uz-tabbar {
    display: flex;
    gap: 4px;
    background: white;
    border-radius: 12px;
    padding: 6px;
    margin-bottom: 20px;
    box-shadow: 0 4px 16px rgba(15,23,42,0.06);
    overflow-x: auto;
}
.uz-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 8px;
    text-decoration: none;
    color: #64748b;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    position: relative;
    transition: all 0.15s;
    flex-shrink: 0;
}
.uz-tab:hover {
    background: #f8fafc;
    color: #0f172a;
}
.uz-tab i { font-size: 15px; }
.uz-tab--active {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 4px 14px rgba(247,92,150,0.35);
}
.uz-tab--active:hover { color: white !important; background: linear-gradient(135deg, #E11D48 0%, #BE123C 100%); }
.uz-tab-warn {
    display: inline-block;
    width: 16px;
    height: 16px;
    line-height: 16px;
    background: #e11d48;
    color: white;
    border-radius: 50%;
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    margin-left: 4px;
}
.uz-tab--active .uz-tab-warn { background: white; color: #e11d48; }

/* ----- TOP-RIGHT DROPDOWN ----- */
.uz-dropdown-primary a {
    color: #F75C96 !important;
    font-weight: 700 !important;
}
.uz-dropdown-primary a span {
    color: #f59e0b;
    margin-left: 4px;
}

/* Common cleanup */
.main-dashboard-sec { padding-top: 30px; }

/* ==========================================================================
   MOJE INZERÁTY — advert list cards
   ========================================================================== */
.uz-adv-add-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    background: white;
    border: 2px dashed #e2e8f0;
    border-radius: 14px;
    padding: 16px 22px;
    margin-bottom: 18px;
    clear: both;
    width: 100%;
    float: none;
}
.uz-adv-add-cta > div { flex: 1; min-width: 0; }
.uz-adv-add-cta strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 3px;
}
.uz-adv-add-cta span {
    display: block;
    font-size: 13px;
    color: #64748b;
}
.uz-adv-add-cta__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 18px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    text-decoration: none;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    flex-shrink: 0;
    box-shadow: 0 6px 16px rgba(247,92,150,0.3);
    transition: transform 0.15s, box-shadow 0.15s;
}
.uz-adv-add-cta__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(247,92,150,0.45);
}

/* Partners strip */
.uz-adv-partners {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 18px;
    background: linear-gradient(90deg, #f0fdf4 0%, #ffffff 60%);
    border-left: 4px solid #10b981;
    border-radius: 10px;
    margin-bottom: 22px;
    flex-wrap: wrap;
    clear: both;
    width: 100%;
    float: none;
}
.uz-adv-partners__label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #065f46;
    font-weight: 600;
}
.uz-adv-partners__label i { color: #10b981; }
.uz-adv-partners__list {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    flex: 1;
}
.uz-adv-partner {
    display: inline-block;
    padding: 4px 10px;
    background: white;
    border: 1px solid #d1fae5;
    color: #059669 !important;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
}
.uz-adv-partner:hover {
    background: #10b981;
    color: white !important;
    border-color: #10b981;
}

/* Advert card */
.uz-adv-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
    clear: both;
    width: 100%;
}
.uz-adv-card {
    display: flex;
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    transition: box-shadow 0.2s, transform 0.2s;
    clear: both;
    width: 100%;
    position: relative;
}
.uz-adv-card__image {
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
    overflow: hidden;
}
.uz-adv-card:hover {
    box-shadow: 0 10px 32px rgba(15,23,42,0.1);
    transform: translateY(-2px);
}

.uz-adv-card__image {
    position: relative;
    width: 220px;
    flex-shrink: 0;
    background: #f1f5f9;
    overflow: hidden;
}
.uz-adv-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    min-height: 220px;
}
.uz-adv-card__topflag {
    position: absolute;
    top: 12px;
    left: 12px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: white;
    padding: 5px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 12px rgba(245,158,11,0.4);
}
.uz-adv-card__preview {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    background: rgba(15,23,42,0.7);
    color: white !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background 0.15s;
    backdrop-filter: blur(6px);
}
.uz-adv-card__preview:hover { background: #0f172a; }

.uz-adv-card__body {
    flex: 1;
    padding: 20px 22px;
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.uz-adv-card__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
.uz-adv-card__head h3 {
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
    line-height: 1.2;
}

.uz-adv-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.3px;
    white-space: nowrap;
    flex-shrink: 0;
}
.uz-adv-status i { font-size: 13px; }
.uz-adv-status--active { background: #d1fae5; color: #065f46; }
.uz-adv-status--paused { background: #fef3c7; color: #92400e; }
.uz-adv-status--expired { background: #fee2e2; color: #991b1b; }
.uz-adv-status--draft { background: #e2e8f0; color: #475569; }

.uz-adv-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin-bottom: 14px;
}
.uz-adv-card__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #64748b;
}
.uz-adv-card__meta-item i {
    color: #94a3b8;
    font-size: 13px;
}
.uz-adv-card__meta-item--top { color: #d97706; }
.uz-adv-card__meta-item--top i { color: #f59e0b; }

.uz-adv-card__excerpt {
    font-size: 14px;
    color: #475569;
    line-height: 1.5;
    margin: 0 0 18px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.uz-adv-card__actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: auto;
}
.uz-adv-warn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: #fef3c7;
    color: #92400e;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    width: 100%;
    margin-bottom: 8px;
}
.uz-adv-warn i { font-size: 15px; }
.uz-adv-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 16px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}
.uz-adv-btn i { font-size: 13px; }
.uz-adv-btn--primary {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 4px 12px rgba(247,92,150,0.3);
}
.uz-adv-btn--primary:hover {
    background: linear-gradient(135deg, #E11D48 0%, #BE123C 100%);
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(247,92,150,0.45);
}
.uz-adv-btn--green {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white !important;
    box-shadow: 0 4px 12px rgba(16,185,129,0.3);
}
.uz-adv-btn--green:hover {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    transform: translateY(-1px);
}
.uz-adv-btn--secondary {
    background: #f1f5f9;
    color: #334155 !important;
}
.uz-adv-btn--secondary:hover { background: #e2e8f0; }

.uz-adv-edit-menu {
    position: relative;
}
.uz-adv-edit-dropdown {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    background: white;
    border-radius: 10px;
    box-shadow: 0 10px 32px rgba(15,23,42,0.12);
    min-width: 220px;
    padding: 6px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-4px);
    transition: all 0.15s;
    z-index: 20;
}
.uz-adv-edit-menu--open .uz-adv-edit-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.uz-adv-edit-dropdown a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 7px;
    color: #334155 !important;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    transition: background 0.15s;
}
.uz-adv-edit-dropdown a:hover {
    background: #f8fafc;
    color: #F75C96 !important;
}
.uz-adv-edit-dropdown a i {
    color: #94a3b8;
    width: 16px;
    text-align: center;
}
.uz-adv-edit-dropdown a:hover i { color: #F75C96; }

@media (max-width: 768px) {
    .uz-adv-card { flex-direction: column; }
    .uz-adv-card__image { width: 100%; height: 200px; }
    .uz-adv-card__image img { min-height: auto; height: 200px; }
    .uz-adv-card__head { flex-direction: column; align-items: flex-start; }
    .uz-adv-card__head h3 { font-size: 18px; }
    .uz-adv-card__actions .uz-adv-btn { flex: 1; justify-content: center; }
}

/* ----- ADV SUMMARY (dashboard, když user má inzeráty) ----- */
.uz-adv-summary {
    display: flex;
    align-items: center;
    gap: 20px;
    background: white;
    border-radius: 16px;
    padding: 22px 26px;
    margin-bottom: 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
    flex-wrap: wrap;
}
.uz-adv-summary__icon {
    width: 60px;
    height: 60px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(247,92,150,0.1) 0%, rgba(225,29,72,0.08) 100%);
    color: #F75C96;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    flex-shrink: 0;
}
.uz-adv-summary__body {
    flex: 1;
    min-width: 200px;
}
.uz-adv-summary__body span {
    display: block;
    font-size: 12px;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-bottom: 2px;
}
.uz-adv-summary__body strong {
    display: block;
    font-size: 22px;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 4px;
    line-height: 1;
}
.uz-adv-summary__body p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
}
.uz-adv-summary__actions {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
    flex-wrap: wrap;
}
.uz-adv-summary__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 18px;
    border-radius: 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    transition: transform 0.15s, box-shadow 0.15s;
}
.uz-adv-summary__btn--primary {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 6px 16px rgba(247,92,150,0.3);
}
.uz-adv-summary__btn--primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(247,92,150,0.45);
}
.uz-adv-summary__btn--secondary {
    background: #f1f5f9;
    color: #0f172a !important;
}
.uz-adv-summary__btn--secondary:hover { background: #e2e8f0; }

@media (max-width: 640px) {
    .uz-adv-summary__actions { width: 100%; }
    .uz-adv-summary__btn { flex: 1; justify-content: center; }
}

/* ----- LOGOUT BUTTON (v levém menu) ----- */
.uz-menu .logout_btn,
.uz-menu .logout_btn.color2-bg {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 14px 16px 16px !important;
    padding: 12px 18px !important;
    background: #fef2f2 !important;
    color: #dc2626 !important;
    border: 1.5px solid #fecaca !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    text-align: center !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    box-shadow: none !important;
    transition: all 0.15s !important;
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
    float: none !important;
    clear: both !important;
}
.uz-menu .logout_btn:hover,
.uz-menu .logout_btn.color2-bg:hover {
    background: #fee2e2 !important;
    border-color: #fca5a5 !important;
    color: #b91c1c !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(220,38,38,0.15) !important;
}
.uz-menu .logout_btn i {
    color: #dc2626 !important;
    font-size: 13px !important;
    margin: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    line-height: 1 !important;
    width: auto !important;
    height: auto !important;
    display: inline-block !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.uz-menu .logout_btn:hover i {
    color: #b91c1c !important;
}

/* ----- MOBILE MENU BUTTON (pryč z fialové) ----- */
.main-dashboard-sec .mob-nav-content-btn,
.main-dashboard-sec .mob-nav-content-btn.purp-bg {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px !important;
    margin-bottom: 16px !important;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important;
    color: white !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    box-shadow: 0 6px 18px rgba(15,23,42,0.15) !important;
    transition: all 0.2s !important;
    cursor: pointer;
    line-height: 1 !important;
}
.main-dashboard-sec .mob-nav-content-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(15,23,42,0.25) !important;
}
.main-dashboard-sec .mob-nav-content-btn i {
    color: #F75C96 !important;
    font-size: 16px !important;
    margin: 0 !important;
}

/* ----- STATUS BADGE — Deaktivováno ----- */
.uz-adv-status--deactivated {
    background: #fee2e2;
    color: #7f1d1d;
    border: 1px dashed #fca5a5;
}

/* ----- COUNT BADGE (zelené kolečko s počtem inzerátů) ----- */
.uz-menu .user-profile-menu li a .uz-count-badge {
    margin-left: auto !important;
    background: #10b981 !important;
    color: white !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 9px !important;
    border-radius: 12px !important;
    min-width: 22px !important;
    text-align: center !important;
    line-height: 14px !important;
    box-shadow: 0 2px 6px rgba(16,185,129,0.35);
}

/* ==========================================================================
   WIZARD — Přidat inzerát (step 1-4)
   ========================================================================== */
.wiz-container { padding-bottom: 100px; }
.wiz-body { clear: both; width: 100%; }

/* ----- HEADER ----- */
.wiz-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    background: white;
    border-radius: 16px;
    padding: 22px 26px;
    margin-bottom: 18px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
}
.wiz-header__title h2 {
    font-size: 22px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 4px;
}
.wiz-header__title p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
}
.wiz-header__close {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: #f1f5f9;
    color: #334155 !important;
    border-radius: 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    transition: all 0.15s;
    flex-shrink: 0;
}
.wiz-header__close:hover { background: #e2e8f0; color: #0f172a !important; }

/* ----- STEPPER ----- */
.wiz-stepper {
    display: flex;
    align-items: stretch;
    background: white;
    border-radius: 16px;
    padding: 22px 24px;
    margin-bottom: 18px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
    gap: 0;
}
.wiz-step {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
}
.wiz-step__circle {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #f1f5f9;
    color: #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
    transition: all 0.2s;
    box-shadow: 0 2px 8px rgba(15,23,42,0.04);
}
.wiz-step--current .wiz-step__circle {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    box-shadow: 0 6px 18px rgba(247,92,150,0.4);
}
.wiz-step--done .wiz-step__circle {
    background: #10b981;
    color: white;
    box-shadow: 0 4px 12px rgba(16,185,129,0.3);
}
.wiz-step__num { font-family: inherit; }
.wiz-step__text { min-width: 0; }
.wiz-step__text strong {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
}
.wiz-step--pending .wiz-step__text strong { color: #94a3b8; }
.wiz-step__text span {
    display: block;
    font-size: 11px;
    color: #64748b;
    line-height: 1.2;
    margin-top: 3px;
}
.wiz-step-connector {
    height: 2px;
    background: #f1f5f9;
    align-self: center;
    flex: 0 0 24px;
    margin: 0 4px;
    border-radius: 2px;
}
.wiz-step-connector--done { background: #10b981; }

@media (max-width: 900px) {
    .wiz-stepper {
        padding: 16px 14px;
        gap: 6px;
    }
    .wiz-step {
        flex: 1;
        flex-direction: column;
        align-items: center;
        gap: 6px;
        text-align: center;
        min-width: 0;
    }
    .wiz-step__circle {
        width: 36px;
        height: 36px;
        font-size: 12px;
    }
    .wiz-step__text strong {
        font-size: 11px;
        line-height: 1.2;
    }
    .wiz-step__text span { display: none; }
    .wiz-step-connector {
        flex: 0 0 12px;
        min-width: 12px;
        margin: 0 -3px;
        align-self: flex-start;
        margin-top: 17px;
    }
}
@media (max-width: 480px) {
    .wiz-step__text strong { font-size: 0; }
    .wiz-step__text strong:first-letter {
        font-size: 11px;
        text-transform: uppercase;
    }
    /* Show only step number in small screens */
    .wiz-step__text { display: none; }
    .wiz-stepper { padding: 12px 8px; }
    .wiz-step-connector { margin-top: 15px; flex: 0 0 8px; min-width: 8px; }
}

/* ----- SECTION ----- */
.wiz-section {
    background: white;
    border-radius: 16px;
    padding: 24px 26px;
    margin-bottom: 16px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
}
.wiz-section__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f1f5f9;
    text-align: center;
    clear: both;
    width: 100%;
}
.wiz-section__icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(247,92,150,0.12) 0%, rgba(225,29,72,0.08) 100%);
    color: #F75C96;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
    box-shadow: 0 6px 16px rgba(247,92,150,0.15);
}
.wiz-section__title {
    text-align: center;
    width: 100%;
    max-width: 640px;
}
.wiz-section__title h3 {
    font-size: 18px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 4px;
    text-align: center;
    line-height: 1.3;
}
.wiz-section__title p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
    text-align: center;
}
.wiz-section__subtitle {
    font-size: 12px;
    font-weight: 700;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin: 18px 0 10px;
    clear: both;
    width: 100%;
}
.wiz-section__body { clear: both; width: 100%; }

/* ----- FIELDS ----- */
.wiz-field {
    margin-bottom: 16px;
    clear: both;
    width: 100%;
}
.wiz-field label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #334155;
    margin-bottom: 6px;
}
.wiz-field label i {
    color: #94a3b8;
    margin-right: 4px;
}
.wiz-field input[type="text"],
.wiz-field input[type="number"],
.wiz-field input[type="email"],
.wiz-field input[type="time"],
.wiz-field select,
.wiz-field textarea,
.wiz-field .chosen-container .chosen-single {
    width: 100%;
    padding: 12px 14px;
    border: 2px solid #e2e8f0;
    border-radius: 10px;
    font-size: 14px;
    color: #0f172a;
    background: #f8fafc;
    transition: all 0.15s;
    box-sizing: border-box;
    height: auto;
    line-height: 1.4;
}
.wiz-field input:focus,
.wiz-field select:focus,
.wiz-field textarea:focus {
    outline: none;
    border-color: #F75C96;
    background: white;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.1);
}
.wiz-field input:disabled {
    background: #f1f5f9;
    color: #94a3b8;
    cursor: not-allowed;
}
.wiz-field textarea {
    min-height: 100px;
    resize: vertical;
}
.wiz-hint {
    display: block;
    font-size: 12px;
    color: #94a3b8;
    margin-top: 6px;
    line-height: 1.4;
}
.wiz-badge-muted {
    display: inline-block;
    background: #f1f5f9;
    color: #64748b;
    padding: 1px 8px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-left: 4px;
}
.wiz-field-row {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 16px;
    flex-wrap: wrap;
}
.wiz-field-row > .wiz-field { margin-bottom: 0; }
.wiz-field--half { flex: 1 1 calc(50% - 6px); min-width: 200px; }
.wiz-field--third { flex: 0 0 130px; }
.wiz-field--grow { flex: 1 1 auto; }
.wiz-field--shrink { flex: 0 0 auto; }
.wiz-field--muted label { color: #64748b; }

/* Chosen override */
.wiz-section .chosen-container-single .chosen-single {
    height: 46px !important;
    line-height: 44px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    background: #f8fafc !important;
    border: 2px solid #e2e8f0 !important;
    box-shadow: none !important;
    color: #0f172a !important;
}
.wiz-section .chosen-container-single .chosen-single div b {
    background-position: 0 12px !important;
}

/* ----- CHIPS ----- */
.wiz-chips-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    clear: both;
    width: 100%;
}
.wiz-chip {
    display: inline-flex;
    align-items: center;
    background: #f8fafc;
    border: 1.5px solid #e2e8f0;
    border-radius: 20px;
    padding: 0;
    overflow: hidden;
    transition: all 0.15s;
}
.wiz-chip:hover {
    border-color: #F75C96;
    background: white;
}
.wiz-chip input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.wiz-chip label {
    padding: 7px 14px;
    font-size: 13px;
    font-weight: 500;
    color: #334155;
    cursor: pointer;
    display: inline-block;
    margin: 0;
    position: relative;
    z-index: 1;
}
.wiz-chip input[type="checkbox"]:checked + label,
.wiz-chip:has(input:checked) {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    border-color: transparent;
    color: white;
}
.wiz-chip:has(input:checked) label { color: white; }

/* ----- DAYS GRID ----- */
.wiz-days-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 12px;
    clear: both;
    width: 100%;
}
.wiz-day {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px 16px;
    background: #f8fafc;
    border: 1.5px solid #e2e8f0;
    border-radius: 12px;
}
.wiz-day__toggle { margin-bottom: 4px; }
.wiz-day__toggle label {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
}
.wiz-day__times {
    display: flex;
    gap: 10px;
}
.wiz-day__time { flex: 1; }
.wiz-day__time label {
    font-size: 11px;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-bottom: 4px;
    display: block;
}
.wiz-day__time input[type="time"] {
    width: 100%;
    padding: 8px 10px;
    border: 1.5px solid #e2e8f0;
    border-radius: 8px;
    font-size: 13px;
    background: white;
    box-sizing: border-box;
}

/* ----- UPLOAD ----- */
.wiz-upload {
    display: flex;
    flex-direction: column;
    gap: 14px;
    clear: both;
    width: 100%;
}
.wiz-upload__dropzone {
    position: relative;
    border: 2px dashed #cbd5e1;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 60%);
    border-radius: 14px;
    padding: 40px 20px;
    text-align: center;
    transition: all 0.2s;
    cursor: pointer;
}
.wiz-upload__dropzone:hover {
    border-color: #F75C96;
    background: linear-gradient(180deg, rgba(247,92,150,0.05) 0%, #ffffff 60%);
}
.wiz-upload__dropzone input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
.wiz-upload__icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(247,92,150,0.1) 0%, rgba(225,29,72,0.08) 100%);
    color: #F75C96;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin: 0 auto 12px;
}
.wiz-upload__inner strong {
    display: block;
    font-size: 16px;
    color: #0f172a;
    font-weight: 700;
    margin-bottom: 4px;
}
.wiz-upload__inner span {
    display: block;
    font-size: 13px;
    color: #64748b;
}

/* ----- PHOTO GRID ----- */
.wiz-photo-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 14px;
    clear: both;
    width: 100%;
}
.wiz-photo {
    position: relative;
    aspect-ratio: 3/4;
    border-radius: 12px;
    overflow: hidden;
    background: #f1f5f9;
    border: 3px solid transparent;
    transition: all 0.2s;
}
.wiz-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.wiz-photo--main { border-color: #F75C96; }
.wiz-photo__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 40%, rgba(15,23,42,0.75) 100%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    opacity: 0;
    transition: opacity 0.2s;
}
.wiz-photo:hover .wiz-photo__overlay { opacity: 1; }
.wiz-photo__btn {
    width: 38px;
    height: 38px;
    background: rgba(255,255,255,0.9);
    color: #334155 !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.15s;
    backdrop-filter: blur(8px);
}
.wiz-photo__btn:hover { transform: scale(1.1); }
.wiz-photo__btn--main:hover { background: #F75C96; color: white !important; }
.wiz-photo__btn--del:hover { background: #dc2626; color: white !important; }
.wiz-photo__badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    box-shadow: 0 4px 12px rgba(247,92,150,0.35);
}
.wiz-empty {
    text-align: center;
    padding: 40px 20px;
    color: #94a3b8;
}
.wiz-empty i { font-size: 42px; margin-bottom: 8px; display: block; }
.wiz-empty p { margin: 0; }

/* ----- ADV SUMMARY (step 4) ----- */
.wiz-adv-summary {
    display: flex;
    align-items: center;
    gap: 20px;
    background: white;
    border-radius: 16px;
    padding: 18px 22px;
    margin-bottom: 18px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    flex-wrap: wrap;
}
.wiz-adv-summary__image {
    width: 90px;
    height: 90px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
    background: #f1f5f9;
}
.wiz-adv-summary__image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wiz-adv-summary__body { flex: 1; min-width: 200px; }
.wiz-adv-summary__body h3 { font-size: 18px; font-weight: 700; color: #0f172a; margin: 0 0 8px; }
.wiz-adv-summary__meta { display: flex; flex-wrap: wrap; gap: 12px; }
.wiz-adv-summary__meta span { font-size: 13px; color: #64748b; }
.wiz-adv-summary__meta i { color: #94a3b8; margin-right: 4px; }
.wiz-adv-summary__preview {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: #f1f5f9;
    color: #334155 !important;
    border-radius: 8px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    flex-shrink: 0;
}
.wiz-adv-summary__preview:hover { background: #e2e8f0; }

/* ----- PAYMENT ----- */
.wiz-pay-summary {
    display: flex;
    align-items: center;
    gap: 18px;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: white;
    border-radius: 16px;
    padding: 20px 24px;
    margin-bottom: 18px;
}
.wiz-pay-summary__icon {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: rgba(247,92,150,0.2);
    color: #F75C96;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}
.wiz-pay-summary__body span {
    display: block;
    font-size: 12px;
    color: rgba(255,255,255,0.6);
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-bottom: 2px;
}
.wiz-pay-summary__body strong {
    display: block;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 6px;
}
.wiz-pay-summary__body p {
    font-size: 13px;
    color: rgba(255,255,255,0.75);
    margin: 0;
}
.wiz-pay-methods {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.wiz-pay-method {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 20px;
    background: #f8fafc;
    border: 2px solid #e2e8f0;
    border-radius: 14px;
    flex-wrap: wrap;
    transition: all 0.15s;
}
.wiz-pay-method--disabled { opacity: 0.65; }
.wiz-pay-method:hover { border-color: #F75C96; background: white; }
.wiz-pay-method__icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: white;
    flex-shrink: 0;
}
.wiz-pay-method__icon--credit { background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%); }
.wiz-pay-method__icon--bank { background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%); }
.wiz-pay-method__body { flex: 1; min-width: 220px; }
.wiz-pay-method__body strong {
    display: block;
    font-size: 15px;
    color: #0f172a;
    font-weight: 700;
    margin-bottom: 4px;
}
.wiz-pay-method__body > span {
    display: block;
    font-size: 13px;
    color: #64748b;
    line-height: 1.4;
    margin-bottom: 6px;
}
.wiz-pay-method__price {
    display: inline-block;
    background: white;
    color: #0f172a !important;
    padding: 3px 10px;
    border-radius: 8px;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin: 0 !important;
}
.wiz-pay-method--ok:hover .wiz-pay-method__price { background: #f1f5f9; }

/* ----- TARIFF ----- */
.wiz-partners {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: linear-gradient(90deg, #f0fdf4 0%, #ffffff 60%);
    border-left: 4px solid #10b981;
    border-radius: 10px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.wiz-partners > span { font-size: 13px; color: #065f46; font-weight: 700; }
.wiz-partners__list { display: flex; gap: 8px; flex-wrap: wrap; flex: 1; }
.wiz-partners__item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    background: white;
    border: 1px solid #d1fae5;
    color: #059669;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}
.wiz-partners__item i { color: #10b981; font-size: 10px; }

.wiz-tariff-toggle {
    display: flex;
    justify-content: center;
    margin-bottom: 24px;
}
.wiz-tariff-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}
.wiz-tariff {
    position: relative;
    background: white;
    border: 2px solid #e2e8f0;
    border-radius: 16px;
    padding: 26px 20px 24px;
    text-align: center;
    transition: all 0.2s;
    display: flex;
    flex-direction: column;
}
.wiz-tariff:hover {
    border-color: #F75C96;
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(247,92,150,0.15);
}
.wiz-tariff--best {
    border-color: #10b981;
    background: linear-gradient(180deg, rgba(16,185,129,0.05) 0%, #ffffff 60%);
}
.wiz-tariff__flag {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white;
    padding: 5px 14px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 12px rgba(16,185,129,0.35);
}
.wiz-tariff__name {
    font-size: 14px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}
.wiz-tariff__price {
    font-size: 36px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1;
    margin-bottom: 18px;
}
.wiz-tariff__currency { font-size: 16px; color: #94a3b8; font-weight: 600; margin-right: 4px; }
.wiz-tariff__discount {
    display: inline-block;
    background: #fef3c7;
    color: #92400e;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 10px;
}
.wiz-tariff__desc { flex: 1; margin-bottom: 18px; }
.wiz-tariff__desc ul {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: left;
}
.wiz-tariff__desc li {
    font-size: 13px;
    color: #334155;
    padding: 5px 0;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.4;
}
.wiz-tariff__desc li i { color: #10b981; margin-top: 3px; flex-shrink: 0; }
.wiz-tariff__btn { width: 100%; justify-content: center; }

.wiz-trust-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    padding-top: 20px;
    border-top: 1px solid #f1f5f9;
}
.wiz-trust {
    display: flex;
    align-items: center;
    gap: 12px;
}
.wiz-trust i {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, rgba(247,92,150,0.1) 0%, rgba(225,29,72,0.08) 100%);
    color: #F75C96;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.wiz-trust strong {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 2px;
}
.wiz-trust > div span {
    display: block;
    font-size: 12px;
    color: #64748b;
    line-height: 1.3;
}
@media (max-width: 700px) { .wiz-trust-row { grid-template-columns: 1fr; } }

/* ----- FOOTER (sticky) ----- */
.wiz-footer {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background: white;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -8px 24px rgba(15,23,42,0.08);
    padding: 12px 20px;
    z-index: 90;
    clear: both;
    width: 100%;
}
.wiz-footer__inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}
.wiz-footer__status { display: flex; align-items: center; gap: 12px; }
.wiz-footer__step {
    display: inline-block;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
}
.wiz-footer__hint { font-size: 13px; color: #64748b; font-weight: 600; }
.wiz-footer__actions { display: flex; gap: 10px; flex-shrink: 0; }

/* ----- BUTTONS ----- */
.wiz-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 20px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s;
}
.wiz-btn--primary {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 6px 16px rgba(247,92,150,0.3);
}
.wiz-btn--primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(247,92,150,0.45);
    background: linear-gradient(135deg, #E11D48 0%, #BE123C 100%);
    color: white !important;
}
.wiz-btn--secondary {
    background: #0f172a;
    color: white !important;
}
.wiz-btn--secondary:hover { background: #1e293b; }
.wiz-btn--ghost {
    background: transparent;
    color: #64748b !important;
    border: 1.5px solid #e2e8f0;
}
.wiz-btn--ghost:hover { background: #f8fafc; border-color: #cbd5e1; color: #0f172a !important; }
.wiz-btn--wide { width: 100%; justify-content: center; }

/* ----- FLASH ERROR ----- */
.wiz-flash-error {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fee2e2;
    color: #991b1b;
    padding: 12px 18px;
    border-radius: 10px;
    margin-bottom: 14px;
    font-size: 13px;
    font-weight: 600;
    border-left: 4px solid #dc2626;
}
.wiz-flash-error i { font-size: 16px; }

/* ==========================================================================
   PAYED — balance, tabs history, invoices, bank transfer instructions
   ========================================================================== */

/* Balance hero card */
.uz-credit-balance {
    display: flex;
    align-items: center;
    gap: 20px;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: white;
    border-radius: 16px;
    padding: 24px 28px;
    margin-bottom: 18px;
    position: relative;
    overflow: hidden;
    clear: both;
    width: 100%;
    flex-wrap: wrap;
}
.uz-credit-balance::before {
    content: '';
    position: absolute;
    right: -60px;
    top: -60px;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(247,92,150,0.2) 0%, transparent 65%);
    pointer-events: none;
}
.uz-credit-balance__label {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255,255,255,0.65);
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    font-weight: 600;
    position: relative;
    flex-shrink: 0;
}
.uz-credit-balance__label i {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: rgba(247,92,150,0.2);
    color: #F75C96;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}
.uz-credit-balance__value {
    font-size: 42px;
    font-weight: 800;
    line-height: 1;
    flex: 1;
    text-align: left;
    position: relative;
}
.uz-credit-balance__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    padding: 12px 22px;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 8px 22px rgba(247,92,150,0.4);
    transition: transform 0.15s, box-shadow 0.15s;
    position: relative;
    flex-shrink: 0;
}
.uz-credit-balance__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(247,92,150,0.55);
}
@media (max-width: 640px) {
    .uz-credit-balance__value { flex-basis: 100%; text-align: left; font-size: 36px; }
    .uz-credit-balance__btn { width: 100%; justify-content: center; }
}

/* Credit history operations */
.uz-credit-history {
    display: flex;
    flex-direction: column;
    gap: 8px;
    clear: both;
    width: 100%;
}
.uz-credit-op {
    display: grid;
    grid-template-columns: 44px 1fr auto auto auto;
    gap: 14px;
    align-items: center;
    background: #f8fafc;
    border-radius: 12px;
    padding: 14px 18px;
    transition: background 0.15s;
}
.uz-credit-op:hover { background: #f1f5f9; }
.uz-credit-op__icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: white;
    flex-shrink: 0;
}
.uz-credit-op__icon--plus { background: linear-gradient(135deg, #10b981 0%, #059669 100%); }
.uz-credit-op__icon--minus { background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%); }
.uz-credit-op__body { min-width: 0; }
.uz-credit-op__body strong {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 3px;
}
.uz-credit-op__body span {
    display: block;
    font-size: 12px;
    color: #94a3b8;
    font-style: italic;
}
.uz-credit-op__amount {
    font-size: 16px;
    font-weight: 800;
    padding: 6px 14px;
    border-radius: 20px;
    white-space: nowrap;
}
.uz-credit-op__amount--plus {
    background: rgba(16,185,129,0.1);
    color: #059669;
}
.uz-credit-op__amount--minus {
    background: rgba(245,158,11,0.1);
    color: #d97706;
}
.uz-credit-op__date {
    font-size: 12px;
    color: #94a3b8;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 5px;
}
.uz-credit-op__link a {
    width: 32px;
    height: 32px;
    background: white;
    color: #64748b !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 12px;
    box-shadow: 0 2px 6px rgba(15,23,42,0.05);
}
.uz-credit-op__link a:hover {
    background: #F75C96;
    color: white !important;
}
@media (max-width: 640px) {
    .uz-credit-op {
        grid-template-columns: 44px 1fr auto;
        grid-template-areas:
            "icon body amount"
            "icon date link";
        gap: 8px 14px;
    }
    .uz-credit-op__icon { grid-area: icon; }
    .uz-credit-op__body { grid-area: body; }
    .uz-credit-op__amount { grid-area: amount; }
    .uz-credit-op__date { grid-area: date; }
    .uz-credit-op__link { grid-area: link; justify-self: end; }
}

/* Invoice list */
.uz-invoice-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
    clear: both;
    width: 100%;
}
.uz-invoice {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #f8fafc;
    border: 1.5px solid transparent;
    border-radius: 12px;
    padding: 16px 18px;
    text-decoration: none;
    color: inherit !important;
    transition: all 0.15s;
}
.uz-invoice:hover {
    background: white;
    border-color: #F75C96;
    box-shadow: 0 6px 18px rgba(247,92,150,0.12);
    transform: translateY(-2px);
}
.uz-invoice__icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(16,185,129,0.15) 0%, rgba(5,150,105,0.1) 100%);
    color: #059669;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.uz-invoice__body { flex: 1; min-width: 0; }
.uz-invoice__body strong {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 3px;
}
.uz-invoice__body span {
    display: block;
    font-size: 12px;
    color: #64748b;
}
.uz-invoice__body span i { margin-right: 3px; color: #94a3b8; }
.uz-invoice__arrow {
    color: #cbd5e1;
    font-size: 14px;
    transition: transform 0.15s, color 0.15s;
}
.uz-invoice:hover .uz-invoice__arrow {
    color: #F75C96;
    transform: translateX(3px);
}

/* Empty state (bez inzerátů/dat) */
.uz-empty {
    text-align: center;
    padding: 40px 20px;
    color: #94a3b8;
    clear: both;
    width: 100%;
}
.uz-empty i {
    font-size: 48px;
    margin-bottom: 10px;
    display: block;
    color: #cbd5e1;
}
.uz-empty p {
    margin: 0 0 6px;
    font-size: 14px;
    color: #64748b;
    font-weight: 600;
}
.uz-empty small {
    display: block;
    font-size: 12px;
    color: #94a3b8;
    max-width: 380px;
    margin: 0 auto;
    line-height: 1.4;
}

/* ----- BANK TRANSFER INSTRUCTIONS (credit_pay) ----- */
.uz-pay-status {
    display: flex;
    align-items: center;
    gap: 16px;
    background: linear-gradient(90deg, #fef3c7 0%, #ffffff 60%);
    border-left: 5px solid #f59e0b;
    border-radius: 12px;
    padding: 16px 22px;
    margin-bottom: 18px;
    clear: both;
    width: 100%;
    flex-wrap: wrap;
}
.uz-pay-status__icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #f59e0b;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
    animation: uzPulse 2s infinite;
}
@keyframes uzPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(245,158,11,0.5); }
    50% { box-shadow: 0 0 0 12px rgba(245,158,11,0); }
}
.uz-pay-status__body { flex: 1; min-width: 200px; }
.uz-pay-status__body strong {
    display: block;
    font-size: 16px;
    color: #92400e;
    font-weight: 700;
    margin-bottom: 3px;
}
.uz-pay-status__body span {
    font-size: 13px;
    color: #92400e;
}
.uz-pay-status__body b {
    background: white;
    padding: 2px 8px;
    border-radius: 6px;
    font-family: monospace;
    font-size: 14px;
}
.uz-pay-status__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white !important;
    padding: 11px 20px;
    border-radius: 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 6px 16px rgba(16,185,129,0.35);
    transition: transform 0.15s, box-shadow 0.15s;
    flex-shrink: 0;
}
.uz-pay-status__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(16,185,129,0.5);
}

/* Currency tabs */
.uz-pay-currency-tabs {
    display: flex;
    gap: 6px;
    background: white;
    padding: 6px;
    border-radius: 12px;
    margin-bottom: 18px;
    box-shadow: 0 4px 16px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
    overflow-x: auto;
}
.uz-pay-currency-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: transparent;
    color: #64748b !important;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    border-radius: 8px;
    white-space: nowrap;
    transition: all 0.15s;
    cursor: pointer;
}
.uz-pay-currency-tab:hover { background: #f8fafc; color: #0f172a !important; }
.uz-pay-currency-tab--active {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    box-shadow: 0 4px 12px rgba(247,92,150,0.3);
}
.uz-pay-currency-tab--active:hover { color: white !important; }

/* Pay panel (2 columns: QR + details) */
.uz-pay-panel {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 18px;
    background: white;
    border-radius: 16px;
    padding: 24px;
    margin-bottom: 18px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
}
.uz-pay-panel__qr {
    text-align: center;
    padding: 24px 20px;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 60%);
    border: 2px dashed #e2e8f0;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.uz-pay-panel__qr-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: white;
    color: #F75C96;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 14px;
    box-shadow: 0 2px 8px rgba(15,23,42,0.06);
}
.uz-pay-panel__qr img {
    max-width: 240px;
    width: 100%;
    height: auto;
    border-radius: 12px;
    background: white;
    padding: 8px;
    box-shadow: 0 8px 22px rgba(15,23,42,0.1);
    margin-bottom: 14px;
}
.uz-pay-panel__note {
    font-size: 12px;
    color: #64748b;
    margin: 0;
    text-align: center;
    line-height: 1.4;
}
.uz-pay-panel__note a { color: #F75C96 !important; font-weight: 600; }

.uz-pay-panel__details { display: flex; flex-direction: column; gap: 10px; }
.uz-pay-panel__title {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f1f5f9;
    margin-bottom: 6px;
}
.uz-pay-panel__title i {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, rgba(59,130,246,0.15) 0%, rgba(37,99,235,0.1) 100%);
    color: #3b82f6;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}
.uz-pay-panel__title strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 2px;
}
.uz-pay-panel__title span {
    display: block;
    font-size: 12px;
    color: #64748b;
}

.uz-pay-detail {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    background: #f8fafc;
    border-radius: 10px;
    transition: background 0.15s;
}
.uz-pay-detail--highlight {
    background: linear-gradient(90deg, #fef3c7 0%, #fffbeb 100%);
    border-left: 3px solid #f59e0b;
}
.uz-pay-detail__label {
    font-size: 11px;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    flex-shrink: 0;
}
.uz-pay-detail--highlight .uz-pay-detail__label { color: #92400e; }
.uz-pay-detail__value {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: monospace;
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    text-align: right;
    word-break: break-all;
}
.uz-pay-detail--highlight .uz-pay-detail__value { color: #92400e; }
.uz-pay-copy {
    width: 30px;
    height: 30px;
    background: white;
    border: 1px solid #e2e8f0;
    color: #64748b;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 12px;
    transition: all 0.15s;
    flex-shrink: 0;
    padding: 0;
}
.uz-pay-copy:hover { background: #F75C96; color: white; border-color: #F75C96; }
.uz-pay-copy--ok { background: #10b981 !important; color: white !important; border-color: #10b981 !important; }

@media (max-width: 800px) {
    .uz-pay-panel { grid-template-columns: 1fr; }
}
@media (max-width: 500px) {
    .uz-pay-detail { flex-direction: column; align-items: flex-start; gap: 6px; }
    .uz-pay-detail__value { text-align: left; }
    .uz-pay-status { flex-direction: column; align-items: flex-start; }
    .uz-pay-status__btn { width: 100%; justify-content: center; }
}

/* ==========================================================================
   OVERRIDE — framework style.css conflicts inside wiz-section (payed tabs)
   ========================================================================== */

/* Nette form inside wiz-section — reset framework padding/floats */
.wiz-section form { clear: both; width: 100%; float: none; margin: 0; }
.wiz-section__body:after {
    content: '';
    display: block;
    clear: both;
}

/* Stronger overrides for inputs against .custom-form global framework selectors */
.wiz-section .wiz-field input[type="text"],
.wiz-section .wiz-field input[type="number"],
.wiz-section .wiz-field input[type="email"],
.wiz-section .wiz-field input[type="tel"],
.wiz-section .wiz-field input[type="time"],
.wiz-section .wiz-field textarea {
    width: 100% !important;
    padding: 12px 14px !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    color: #0f172a !important;
    background: #f8fafc !important;
    box-sizing: border-box !important;
    height: auto !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.wiz-section .wiz-field input:focus,
.wiz-section .wiz-field textarea:focus {
    border-color: #F75C96 !important;
    background: white !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.1) !important;
}
.wiz-section .wiz-field label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    padding: 0 !important;
    background: transparent !important;
    float: none !important;
    width: auto !important;
}
.wiz-section .wiz-field-row {
    display: flex !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    align-items: flex-end !important;
    margin-bottom: 16px !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
}
.wiz-section .wiz-field-row > .wiz-field { margin-bottom: 0 !important; }
.wiz-section .wiz-field {
    clear: none !important;
    width: 100% !important;
    float: none !important;
    margin-bottom: 16px !important;
}
.wiz-section .wiz-field--half {
    flex: 1 1 calc(50% - 6px) !important;
    min-width: 200px !important;
    width: auto !important;
}

/* Button inside wiz-section — kill framework .color2-bg + .btn conflicts */
.wiz-section .wiz-btn {
    text-transform: none !important;
    letter-spacing: normal !important;
    height: auto !important;
    line-height: 1 !important;
}

/* ----- INVOICE LOCKED (bez detailu) ----- */
.uz-invoice--locked {
    cursor: default !important;
    background: #f8fafc !important;
}
.uz-invoice--locked:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
    background: #f8fafc !important;
}
.uz-invoice--locked .uz-invoice__icon {
    background: linear-gradient(135deg, rgba(148,163,184,0.15) 0%, rgba(100,116,139,0.1) 100%);
    color: #64748b;
}
.uz-invoice__locked-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}
.uz-invoice__locked-badge i { font-size: 12px; color: #94a3b8; }
.uz-invoice-note {
    margin: 16px 0 0 !important;
    padding: 12px 16px;
    background: #eff6ff;
    border-left: 3px solid #3b82f6;
    border-radius: 8px;
    font-size: 13px;
    color: #1e40af;
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.uz-invoice-note i { color: #3b82f6; margin-top: 2px; flex-shrink: 0; }
.uz-invoice-note a { color: #1e40af !important; font-weight: 700; text-decoration: underline; }

/* ----- ADDRESS SEARCH RESULTS (injected do #addressResult v wizardu) ----- */
.wiz-address-empty {
    text-align: center;
    padding: 32px 20px;
    background: #f8fafc;
    border-radius: 14px;
    border: 2px dashed #e2e8f0;
    clear: both;
    width: 100%;
}
.wiz-address-empty__icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 12px;
    background: white;
    color: #cbd5e1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
}
.wiz-address-empty strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 4px;
}
.wiz-address-empty p {
    font-size: 13px;
    color: #64748b;
    margin: 0 auto;
    max-width: 380px;
    line-height: 1.4;
}

.wiz-address-results {
    background: #f8fafc;
    border-radius: 14px;
    padding: 18px 20px;
    clear: both;
    width: 100%;
}
.wiz-address-results__label {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 14px;
    margin-bottom: 12px;
    border-bottom: 1px solid #e2e8f0;
    font-size: 13px;
    color: #64748b;
    font-weight: 600;
}
.wiz-address-results__label i { color: #F75C96; font-size: 15px; }
.wiz-address-results__label strong { color: #0f172a; font-weight: 700; }

.wiz-address-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.wiz-address {
    display: flex;
    align-items: center;
    gap: 14px;
    background: white;
    border: 1.5px solid transparent;
    border-radius: 12px;
    padding: 14px 16px;
    transition: all 0.15s;
}
.wiz-address:hover {
    border-color: #F75C96;
    box-shadow: 0 6px 18px rgba(247,92,150,0.12);
    transform: translateY(-1px);
}
.wiz-address__icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(59,130,246,0.12) 0%, rgba(37,99,235,0.08) 100%);
    color: #3b82f6;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.wiz-address__body {
    flex: 1;
    min-width: 0;
}
.wiz-address__body strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 3px;
    line-height: 1.2;
}
.wiz-address__body span {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #64748b;
    line-height: 1.3;
}
.wiz-address__body span i { color: #94a3b8; font-size: 11px; }
.wiz-address__btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 16px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    border-radius: 9px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(247,92,150,0.3);
    transition: transform 0.15s, box-shadow 0.15s;
}
.wiz-address__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(247,92,150,0.45);
    color: white !important;
}
.wiz-address__btn i { font-size: 10px; }

@media (max-width: 640px) {
    .wiz-address { flex-wrap: wrap; }
    .wiz-address__body { flex: 1 1 calc(100% - 60px); }
    .wiz-address__btn { width: 100%; justify-content: center; margin-top: 8px; }
}

/* ----- PHONE ROW (prefix + number) ----- */
.wiz-phone-row {
    display: flex;
    gap: 10px;
    align-items: stretch;
    clear: both;
    width: 100%;
}
.wiz-phone-row__prefix {
    flex: 0 0 140px;
    min-width: 0;
}
.wiz-phone-row__number {
    flex: 1;
    min-width: 0;
}
.wiz-phone-row__number input {
    width: 100% !important;
    box-sizing: border-box !important;
}
@media (max-width: 480px) {
    .wiz-phone-row__prefix { flex: 0 0 110px; }
}

/* ----- DIVIDER + SUBTITLE HINT ----- */
.wiz-divider {
    height: 1px;
    background: #f1f5f9;
    margin: 28px 0 20px;
    clear: both;
    width: 100%;
}
.wiz-subtitle-hint {
    font-size: 12px;
    color: #64748b;
    margin: 0 0 14px !important;
    line-height: 1.4;
    clear: both;
    width: 100%;
}

/* ----- CHIP OVERHAUL (Alternativní kontakty + Pro koho) ----- */
.wiz-chips-row {
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px;
    clear: both;
    width: 100%;
    float: none;
    margin: 0;
}
.wiz-chips-row.filter-tags .wiz-chip,
.wiz-chip {
    position: relative;
    display: inline-flex;
    align-items: center;
    background: #f8fafc;
    border: 1.5px solid #e2e8f0;
    border-radius: 22px;
    padding: 0;
    overflow: visible;
    transition: all 0.15s;
    margin: 0;
    float: none;
    width: auto;
    height: auto;
    line-height: 1;
    min-height: 40px;
}
.wiz-chip:hover {
    border-color: #F75C96;
    background: white;
    box-shadow: 0 4px 12px rgba(247,92,150,0.1);
}
.wiz-chip input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    cursor: pointer;
    pointer-events: auto;
    z-index: 2;
    background: transparent !important;
    border: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
}
.wiz-chip input[type="checkbox"]:after,
.wiz-chip input[type="checkbox"]:before {
    display: none !important;
    content: none !important;
    background: none !important;
}
.wiz-chip label {
    padding: 10px 18px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px;
    margin: 0 !important;
    position: relative;
    z-index: 1;
    background: transparent !important;
    border: none !important;
    line-height: 1 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    float: none !important;
    width: auto !important;
    height: auto !important;
    pointer-events: none;
    user-select: none;
}
.wiz-chip label:before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid #cbd5e1;
    border-radius: 4px;
    background: white;
    transition: all 0.15s;
    flex-shrink: 0;
    position: relative;
}
.wiz-chip label:after {
    content: '✓';
    position: absolute;
    left: 21px;
    top: 50%;
    transform: translateY(-50%);
    color: white;
    font-size: 11px;
    font-weight: 700;
    opacity: 0;
    transition: opacity 0.15s;
    pointer-events: none;
}
.wiz-chip input[type="checkbox"]:checked ~ label,
.wiz-chip:has(input:checked) label {
    color: #F75C96 !important;
}
.wiz-chip input[type="checkbox"]:checked ~ label:before,
.wiz-chip:has(input:checked) label:before {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    border-color: #F75C96;
}
.wiz-chip input[type="checkbox"]:checked ~ label:after,
.wiz-chip:has(input:checked) label:after {
    opacity: 1;
}
.wiz-chip:has(input:checked) {
    border-color: #F75C96;
    background: rgba(247,92,150,0.05);
}

/* ----- UPLOAD dropzone states + preview ----- */
.wiz-upload__dropzone--drag {
    border-color: #F75C96 !important;
    background: linear-gradient(180deg, rgba(247,92,150,0.1) 0%, #ffffff 60%) !important;
    transform: scale(1.005);
}
.wiz-upload__dropzone--has-files {
    border-style: solid;
    border-color: #10b981;
    background: linear-gradient(180deg, rgba(16,185,129,0.05) 0%, #ffffff 60%);
}
.wiz-upload__dropzone--has-files .wiz-upload__icon {
    background: linear-gradient(135deg, rgba(16,185,129,0.15) 0%, rgba(5,150,105,0.1) 100%);
    color: #10b981;
}
.wiz-upload__dropzone--has-files .wiz-upload__inner strong {
    color: #059669;
}
.wiz-upload__dropzone--has-files .wiz-upload__inner strong::before {
    content: '✓ ';
}

.wiz-preview-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 10px;
    clear: both;
    width: 100%;
    margin-top: 4px;
}
.wiz-preview {
    display: flex;
    align-items: center;
    gap: 10px;
    background: white;
    border: 1.5px solid #e2e8f0;
    border-radius: 12px;
    padding: 8px 12px 8px 8px;
    transition: all 0.15s;
    overflow: hidden;
}
.wiz-preview:hover {
    border-color: #F75C96;
    box-shadow: 0 4px 12px rgba(247,92,150,0.1);
}
.wiz-preview__img {
    width: 52px;
    height: 52px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
    background: #f1f5f9;
    display: block;
}
.wiz-preview__body {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}
.wiz-preview__body strong {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #0f172a;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 3px;
}
.wiz-preview__body span {
    display: block;
    font-size: 11px;
    color: #94a3b8;
    line-height: 1;
}

/* Disabled upload button */
.wiz-btn:disabled,
.wiz-btn[disabled] {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
    background: #cbd5e1 !important;
    color: #64748b !important;
}
.wiz-btn:disabled:hover,
.wiz-btn[disabled]:hover {
    transform: none !important;
    background: #cbd5e1 !important;
}

/* ----- SEGMENTED SWITCH (tariff toggle) ----- */
.wiz-segmented {
    display: inline-flex;
    background: white;
    border: 1.5px solid #e2e8f0;
    border-radius: 14px;
    padding: 6px;
    gap: 4px;
    box-shadow: 0 4px 16px rgba(15,23,42,0.06);
    max-width: 100%;
    flex-wrap: nowrap;
    position: relative;
}
.wiz-segmented__input {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none;
    width: 0;
    height: 0;
}
.wiz-segmented__option {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 12px 22px !important;
    margin: 0 !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    cursor: pointer;
    transition: all 0.2s;
    background: transparent !important;
    border: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    line-height: 1 !important;
    white-space: nowrap;
    position: relative;
    float: none !important;
    width: auto !important;
    height: auto !important;
}
.wiz-segmented__option i {
    font-size: 14px;
    color: #94a3b8;
    transition: color 0.2s;
}
.wiz-segmented__option:hover {
    background: #f8fafc !important;
    color: #0f172a !important;
}
.wiz-segmented__option:hover i { color: #64748b; }
.wiz-segmented__input:checked + .wiz-segmented__option {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    box-shadow: 0 6px 16px rgba(247,92,150,0.35);
}
.wiz-segmented__input:checked + .wiz-segmented__option i { color: white; }
.wiz-segmented__input:checked + .wiz-segmented__option--highlight {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    box-shadow: 0 6px 16px rgba(245,158,11,0.35);
}
.wiz-segmented__badge {
    display: inline-block;
    background: rgba(255,255,255,0.25);
    color: currentColor;
    padding: 2px 8px;
    border-radius: 8px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-style: normal;
    margin-left: 2px;
}
.wiz-segmented__option:not(.wiz-segmented__option--highlight) .wiz-segmented__badge,
.wiz-segmented__input:not(:checked) + .wiz-segmented__option--highlight .wiz-segmented__badge {
    background: rgba(245,158,11,0.15);
    color: #d97706;
}
.wiz-segmented__input:checked + .wiz-segmented__option--highlight .wiz-segmented__badge {
    background: rgba(255,255,255,0.25);
    color: white;
}

@media (max-width: 560px) {
    .wiz-segmented {
        width: 100%;
        flex-direction: column;
    }
    .wiz-segmented__option {
        width: 100%;
        justify-content: center;
    }
}

/* ----- Tariff variants — hidden attribute + top mode ----- */
.wiz-tariff [hidden] { display: none !important; }
.wiz-tariff--top-mode {
    border-color: #f59e0b;
    background: linear-gradient(180deg, rgba(245,158,11,0.05) 0%, #ffffff 60%);
}
.wiz-tariff--top-mode .wiz-tariff__price { color: #d97706; }
.wiz-tariff--top-mode .wiz-tariff__btn {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    box-shadow: 0 4px 12px rgba(245,158,11,0.35);
}
.wiz-tariff--top-mode .wiz-tariff__btn:hover {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
    box-shadow: 0 8px 18px rgba(245,158,11,0.5);
}
.wiz-tariff--top-mode.wiz-tariff--best {
    border-color: #d97706;
}

/* ==========================================================================
   DIRECTORY (Neseriózní zákazníci)
   ========================================================================== */

/* Locked state */
.uz-dir-locked {
    background: white;
    border-radius: 16px;
    padding: 48px 32px 40px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
}
.uz-dir-locked__icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 16px;
    background: linear-gradient(135deg, rgba(148,163,184,0.15) 0%, rgba(100,116,139,0.1) 100%);
    color: #94a3b8;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
}
.uz-dir-locked h3 {
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 8px;
}
.uz-dir-locked p {
    font-size: 14px;
    color: #64748b;
    margin: 0 auto 22px;
    max-width: 440px;
    line-height: 1.5;
}
.uz-dir-locked__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 8px 22px rgba(247,92,150,0.35);
    transition: transform 0.15s, box-shadow 0.15s;
}
.uz-dir-locked__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(247,92,150,0.5);
}

/* Hero info card */
.uz-dir-hero {
    display: flex;
    align-items: center;
    gap: 18px;
    background: linear-gradient(90deg, #eff6ff 0%, #ffffff 60%);
    border-left: 5px solid #3b82f6;
    border-radius: 12px;
    padding: 18px 22px;
    margin-bottom: 18px;
    clear: both;
    width: 100%;
    flex-wrap: wrap;
}
.uz-dir-hero__icon {
    width: 48px;
    height: 48px;
    background: #3b82f6;
    color: white;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}
.uz-dir-hero__body { flex: 1; min-width: 200px; }
.uz-dir-hero__body strong {
    display: block;
    font-size: 15px;
    color: #1e40af;
    font-weight: 700;
    margin-bottom: 3px;
}
.uz-dir-hero__body p {
    font-size: 13px;
    color: #1e40af;
    margin: 0;
    line-height: 1.4;
    opacity: 0.85;
}
.uz-dir-hero__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white !important;
    border-radius: 10px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 6px 16px rgba(247,92,150,0.3);
    transition: transform 0.15s, box-shadow 0.15s;
    flex-shrink: 0;
}
.uz-dir-hero__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(247,92,150,0.45);
}

/* Form actions */
.wiz-form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding-top: 8px;
    margin-top: 8px;
    clear: both;
    width: 100%;
}
@media (max-width: 480px) {
    .wiz-form-actions { flex-direction: column-reverse; }
    .wiz-form-actions .wiz-btn { width: 100%; justify-content: center; }
}

/* Search bar */
.uz-dir-search {
    display: flex;
    gap: 10px;
    background: white;
    border-radius: 14px;
    padding: 12px;
    margin-bottom: 18px;
    box-shadow: 0 4px 16px rgba(15,23,42,0.06);
    clear: both;
    width: 100%;
    align-items: stretch;
}
.uz-dir-search form {
    display: flex;
    gap: 10px;
    width: 100%;
}
.uz-dir-search__field {
    position: relative;
    flex: 1;
}
.uz-dir-search__field i {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    font-size: 15px;
    pointer-events: none;
}
.uz-dir-search__field input {
    width: 100% !important;
    padding: 12px 14px 12px 40px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    background: #f8fafc !important;
    box-sizing: border-box !important;
    color: #0f172a !important;
    height: auto !important;
    line-height: 1.4 !important;
}
.uz-dir-search__field input:focus {
    outline: none !important;
    border-color: #F75C96 !important;
    background: white !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.1) !important;
}
@media (max-width: 560px) {
    .uz-dir-search form { flex-direction: column; }
    .uz-dir-search .wiz-btn { width: 100%; justify-content: center; }
}

/* Entry list */
.uz-dir-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    clear: both;
    width: 100%;
}
.uz-dir-entry {
    display: flex;
    align-items: stretch;
    gap: 18px;
    background: white;
    border-radius: 16px;
    padding: 20px 22px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    transition: box-shadow 0.15s, transform 0.15s;
}
.uz-dir-entry:hover {
    box-shadow: 0 10px 28px rgba(15,23,42,0.09);
    transform: translateY(-1px);
}
.uz-dir-entry__marker {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}
.uz-dir-entry__icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(239,68,68,0.12) 0%, rgba(220,38,38,0.08) 100%);
    color: #dc2626;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}
.uz-dir-entry__count {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    background: #fee2e2;
    color: #991b1b;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 800;
}
.uz-dir-entry__count i { font-size: 10px; }

.uz-dir-entry__body { flex: 1; min-width: 0; }
.uz-dir-entry__head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
    flex-wrap: wrap;
}
.uz-dir-entry__head h4 {
    font-size: 17px;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
    line-height: 1.2;
}
.uz-dir-entry__contact {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    background: #f1f5f9;
    color: #334155;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    font-family: monospace;
}
.uz-dir-entry__contact i { color: #94a3b8; font-size: 10px; }

.uz-dir-entry__text {
    font-size: 14px;
    color: #334155;
    line-height: 1.5;
    margin: 0 0 12px;
    white-space: pre-wrap;
}

.uz-dir-entry__meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding-top: 12px;
    border-top: 1px solid #f1f5f9;
    font-size: 12px;
    color: #94a3b8;
    flex-wrap: wrap;
}
.uz-dir-entry__confirmers {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    flex: 1;
}
.uz-dir-entry__confirmers-label {
    color: #94a3b8;
    font-weight: 600;
}
.uz-dir-user {
    display: inline-block;
    padding: 2px 8px;
    background: #f1f5f9;
    color: #334155 !important;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
}
.uz-dir-user:hover {
    background: #F75C96;
    color: white !important;
}
.uz-dir-entry__date {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}
.uz-dir-entry__date i { font-size: 11px; }

.uz-dir-entry__like {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 16px;
    background: white;
    border: 2px solid #e2e8f0;
    color: #64748b !important;
    border-radius: 12px;
    text-decoration: none;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    flex-shrink: 0;
    align-self: center;
    transition: all 0.15s;
    min-width: 90px;
}
.uz-dir-entry__like i { font-size: 20px; }
.uz-dir-entry__like:hover {
    border-color: #dc2626;
    color: #dc2626 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(220,38,38,0.15);
}
.uz-dir-entry__like--active {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    border-color: #dc2626;
    color: white !important;
    box-shadow: 0 6px 16px rgba(220,38,38,0.3);
}
.uz-dir-entry__like--active:hover {
    background: linear-gradient(135deg, #b91c1c 0%, #991b1b 100%);
    color: white !important;
}

@media (max-width: 640px) {
    .uz-dir-entry {
        flex-wrap: wrap;
        padding: 16px 18px;
        gap: 12px;
    }
    .uz-dir-entry__marker {
        flex-direction: row;
        width: 100%;
        justify-content: flex-start;
        align-items: center;
        gap: 10px;
    }
    .uz-dir-entry__body {
        flex: 1 1 100%;
    }
    .uz-dir-entry__like {
        width: 100%;
        flex-direction: row;
        min-width: 0;
        justify-content: center;
    }
}

/* ==========================================================================
   BOUGHT (Odemčený obsah)
   ========================================================================== */

/* Tab count badge */
.uz-tab__count {
    background: rgba(247,92,150,0.15);
    color: #F75C96;
    padding: 2px 8px !important;
    border-radius: 10px;
    font-size: 11px !important;
    font-weight: 700 !important;
    margin-left: 4px;
    line-height: 1.4;
}
.uz-tab--active .uz-tab__count {
    background: rgba(255,255,255,0.25);
    color: white;
}

/* Photo grid (tab 1 + 3) */
.uz-bought-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 14px;
    clear: both;
    width: 100%;
}
.uz-bought {
    background: white;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    text-decoration: none;
    color: inherit !important;
    display: flex;
    flex-direction: column;
    transition: transform 0.15s, box-shadow 0.15s;
}
.uz-bought:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(15,23,42,0.1);
    color: inherit !important;
}
.uz-bought__media {
    position: relative;
    aspect-ratio: 4/3;
    background: #f1f5f9;
    overflow: hidden;
    display: block;
}
.uz-bought__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}
.uz-bought:hover .uz-bought__media img { transform: scale(1.05); }
.uz-bought__media--album {
    background-size: cover;
    background-position: center;
    background-color: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
}
.uz-bought__media--video {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}
.uz-bought__type {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: rgba(255,255,255,0.9);
    color: #0f172a;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    backdrop-filter: blur(8px);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.uz-bought__unlock {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    box-shadow: 0 4px 12px rgba(16,185,129,0.4);
}
.uz-bought__body {
    padding: 14px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}
.uz-bought__body strong {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.3;
}
.uz-bought__body strong a {
    color: #0f172a !important;
    text-decoration: none;
}
.uz-bought__body strong a:hover { color: #F75C96 !important; }
.uz-bought__body p {
    font-size: 12px;
    color: #64748b;
    margin: 0;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.uz-bought__date {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    color: #94a3b8;
    margin-top: auto;
}
.uz-bought__date i { font-size: 10px; }
.uz-bought__chat-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    background: #f1f5f9;
    color: #334155 !important;
    border-radius: 8px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    transition: all 0.15s;
    margin-top: 4px;
}
.uz-bought__chat-btn:hover { background: #F75C96; color: white !important; }

/* Profile list (tab 2) */
.uz-bought-profiles {
    display: flex;
    flex-direction: column;
    gap: 12px;
    clear: both;
    width: 100%;
}
.uz-bought-profile {
    display: flex;
    align-items: center;
    gap: 16px;
    background: white;
    border-radius: 14px;
    padding: 16px 20px;
    box-shadow: 0 4px 16px rgba(15,23,42,0.06);
    text-decoration: none;
    color: inherit !important;
    transition: all 0.15s;
    border: 1.5px solid transparent;
}
.uz-bought-profile:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(15,23,42,0.1);
    border-color: #F75C96;
    color: inherit !important;
}
.uz-bought-profile__avatar {
    position: relative;
    flex-shrink: 0;
}
.uz-bought-profile__avatar img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    border: 3px solid white;
    box-shadow: 0 4px 12px rgba(15,23,42,0.1);
}
.uz-bought-profile__unlock {
    position: absolute;
    right: -4px;
    bottom: -4px;
    width: 24px;
    height: 24px;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    box-shadow: 0 4px 10px rgba(16,185,129,0.35);
    border: 2px solid white;
}
.uz-bought-profile__body { flex: 1; min-width: 0; }
.uz-bought-profile__body strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 4px;
    line-height: 1.2;
}
.uz-bought-profile__active,
.uz-bought-profile__expired {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 12px;
}
.uz-bought-profile__active {
    background: #d1fae5;
    color: #065f46;
}
.uz-bought-profile__expired {
    background: #fee2e2;
    color: #991b1b;
}
.uz-bought-profile__arrow {
    color: #cbd5e1;
    font-size: 16px;
    transition: transform 0.15s, color 0.15s;
    flex-shrink: 0;
}
.uz-bought-profile:hover .uz-bought-profile__arrow {
    color: #F75C96;
    transform: translateX(3px);
}

/* ==========================================================================
   PROFILE — Účet a profil
   ========================================================================== */

/* Avatar upload — side-by-side preview + dropzone */
.uz-avatar-upload {
    display: flex;
    align-items: center;
    gap: 22px;
    clear: both;
    width: 100%;
    flex-wrap: wrap;
}
.uz-avatar-upload__preview {
    position: relative;
    flex-shrink: 0;
}
.uz-avatar-upload__preview img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    background: white;
    padding: 4px;
    box-shadow: 0 10px 28px rgba(15,23,42,0.12);
    display: block;
}
.uz-avatar-upload__zone {
    position: relative;
    flex: 1;
    min-width: 260px;
    border: 2px dashed #cbd5e1;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 60%);
    border-radius: 14px;
    padding: 24px 22px;
    cursor: pointer;
    transition: all 0.2s;
    text-align: center;
}
.uz-avatar-upload__zone:hover {
    border-color: #F75C96;
    background: linear-gradient(180deg, rgba(247,92,150,0.05) 0%, #ffffff 60%);
}
.uz-avatar-upload__zone input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
.uz-avatar-upload__icon {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, rgba(247,92,150,0.12) 0%, rgba(225,29,72,0.08) 100%);
    color: #F75C96;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin: 0 auto 10px;
}
.uz-avatar-upload__inner strong {
    display: block;
    font-size: 15px;
    color: #0f172a;
    font-weight: 700;
    margin-bottom: 4px;
}
.uz-avatar-upload__inner span {
    display: block;
    font-size: 12px;
    color: #64748b;
}

/* Unlock (odemčení) cards */
.uz-unlock-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    clear: both;
    width: 100%;
}
.uz-unlock-card {
    position: relative;
    background: #f8fafc;
    border: 2px solid #e2e8f0;
    border-radius: 14px;
    padding: 20px 16px 16px;
    text-align: center;
    transition: all 0.2s;
}
.uz-unlock-card:hover {
    border-color: #F75C96;
    background: white;
    box-shadow: 0 6px 18px rgba(247,92,150,0.1);
}
.uz-unlock-card__icon {
    width: 44px;
    height: 44px;
    margin: 0 auto 10px;
    background: linear-gradient(135deg, rgba(247,92,150,0.12) 0%, rgba(225,29,72,0.08) 100%);
    color: #F75C96;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}
.uz-unlock-card label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #334155 !important;
    margin-bottom: 8px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-align: center !important;
    float: none !important;
    width: auto !important;
}
.uz-unlock-card input[type="text"],
.uz-unlock-card input[type="number"] {
    width: 100% !important;
    padding: 12px 14px !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 10px !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #F75C96 !important;
    background: white !important;
    text-align: center !important;
    box-sizing: border-box !important;
    height: auto !important;
    line-height: 1.2 !important;
}
.uz-unlock-card input:focus {
    outline: none !important;
    border-color: #F75C96 !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.15) !important;
}
.uz-unlock-card small {
    display: block;
    margin-top: 6px;
    font-size: 11px;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}
@media (max-width: 640px) {
    .uz-unlock-grid { grid-template-columns: 1fr; }
}

/* Top image (banner) preview */
.uz-top-image-preview {
    margin-bottom: 12px;
    border-radius: 12px;
    overflow: hidden;
    background: #f1f5f9;
    box-shadow: 0 4px 14px rgba(15,23,42,0.08);
}
.uz-top-image-preview img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 3/1;
    object-fit: cover;
}

/* Social icons */
.uz-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    color: white !important;
    font-size: 11px !important;
    margin-right: 4px;
}
.uz-social-icon--fb { background: #1877f2; }
.uz-social-icon--ig { background: linear-gradient(135deg, #f09433, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888); }
.uz-social-icon--tw { background: #0f172a; }
.uz-social-icon--of { background: linear-gradient(135deg, #00aff0, #009ddc); }

/* ==========================================================================
   FIRST MESSAGE — sub-tabs + media grid
   ========================================================================== */
.uz-fm-tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 20px;
    clear: both;
    width: 100%;
}
.uz-fm-tab {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: white;
    border: 2px solid transparent;
    border-radius: 14px;
    text-decoration: none;
    color: inherit !important;
    transition: all 0.15s;
    box-shadow: 0 4px 16px rgba(15,23,42,0.05);
}
.uz-fm-tab:hover {
    border-color: #cbd5e1;
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(15,23,42,0.08);
    color: inherit !important;
}
.uz-fm-tab--active {
    border-color: #F75C96;
    background: linear-gradient(135deg, rgba(247,92,150,0.05) 0%, #ffffff 60%);
    box-shadow: 0 6px 20px rgba(247,92,150,0.15);
}
.uz-fm-tab__icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #f1f5f9;
    color: #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
    transition: all 0.15s;
}
.uz-fm-tab--active .uz-fm-tab__icon {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    box-shadow: 0 4px 12px rgba(247,92,150,0.35);
}
.uz-fm-tab__body { flex: 1; min-width: 0; }
.uz-fm-tab__body strong {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
    margin-bottom: 3px;
}
.uz-fm-tab__body span {
    display: block;
    font-size: 11px;
    color: #94a3b8;
}
.uz-fm-tab__status {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: white;
    flex-shrink: 0;
}
.uz-fm-tab__status--ok { background: #10b981; box-shadow: 0 3px 8px rgba(16,185,129,0.35); }
.uz-fm-tab__status--empty { background: #cbd5e1; }

@media (max-width: 700px) {
    .uz-fm-tabs { grid-template-columns: 1fr; }
    .uz-fm-tab__body span { display: none; }
}

/* Media grid */
.uz-fm-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 10px;
    margin-top: 14px;
    clear: both;
    width: 100%;
}
.uz-fm-media {
    position: relative;
    aspect-ratio: 1/1;
    border-radius: 12px;
    overflow: hidden;
    background: #0f172a;
    box-shadow: 0 4px 12px rgba(15,23,42,0.08);
}
.uz-fm-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}
.uz-fm-media:hover img { transform: scale(1.05); }
.uz-fm-media__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 50%, rgba(15,23,42,0.7) 100%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    opacity: 0;
    transition: opacity 0.2s;
}
.uz-fm-media:hover .uz-fm-media__overlay { opacity: 1; }
.uz-fm-media__btn {
    width: 36px;
    height: 36px;
    background: rgba(255,255,255,0.9);
    color: #0f172a !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    backdrop-filter: blur(6px);
    transition: all 0.15s;
    font-size: 13px;
}
.uz-fm-media__btn:hover { transform: scale(1.1); background: white; color: #F75C96 !important; }
.uz-fm-media__btn--del:hover { background: #dc2626; color: white !important; }

/* ==========================================================================
   PASSWORD
   ========================================================================== */
.uz-pw-field {
    position: relative;
}
.uz-pw-field input,
.uz-pw-input {
    padding-right: 46px !important;
}
.uz-pw-toggle {
    position: absolute;
    right: 8px;
    bottom: 8px;
    width: 36px;
    height: 36px;
    background: transparent;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    transition: all 0.15s;
    font-size: 14px;
}
.uz-pw-toggle:hover { background: #f1f5f9; color: #F75C96; }

.uz-pw-tips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 4px 0 14px;
    padding: 12px 16px;
    background: #f8fafc;
    border-radius: 10px;
}
.uz-pw-tip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
}
.uz-pw-tip i { color: #10b981; font-size: 13px; }

/* ==========================================================================
   CHAT / MESSAGES
   ========================================================================== */
.uz-chat {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 18px;
    clear: both;
    width: 100%;
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(15,23,42,0.06);
    overflow: hidden;
    height: calc(100vh - 260px);
    min-height: 620px;
    max-height: 900px;
}

/* CONTACTS SIDEBAR */
.uz-chat__contacts {
    background: #f8fafc;
    border-right: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}
.uz-chat__contacts-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    border-bottom: 1px solid #f1f5f9;
    background: white;
}
.uz-chat__contacts-header strong {
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.uz-chat__contacts-header span {
    background: #f1f5f9;
    color: #64748b;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
}
.uz-chat__contacts-list {
    flex: 1;
    overflow-y: auto;
    padding: 8px;
}

.uz-chat-contact {
    display: flex !important;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 12px;
    text-decoration: none;
    color: inherit !important;
    transition: all 0.15s;
    margin-bottom: 4px;
    background: transparent;
    border: 1.5px solid transparent;
    width: 100%;
    float: none;
    box-sizing: border-box;
}
.uz-chat-contact:hover {
    background: white;
    border-color: #f1f5f9;
    color: inherit !important;
}
.uz-chat-contact--active {
    background: linear-gradient(135deg, rgba(247,92,150,0.08) 0%, rgba(225,29,72,0.04) 100%);
    border-color: rgba(247,92,150,0.25);
}
.uz-chat-contact__avatar {
    position: relative;
    flex-shrink: 0;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
}
.uz-chat-contact__avatar img {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    background: white;
}
.uz-chat-contact__online {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 12px;
    height: 12px;
    background: #10b981;
    border: 2px solid white;
    border-radius: 50%;
    box-shadow: 0 0 0 1px rgba(16,185,129,0.4);
}
.uz-chat-contact__body {
    flex: 1;
    min-width: 0;
    padding: 0 !important;
}
.uz-chat-contact__head {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 6px;
    margin-bottom: 3px;
}
.uz-chat-contact__body h4 {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 !important;
    line-height: 1.2 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    min-width: 0;
}
.uz-chat-contact__time {
    font-size: 11px;
    color: #94a3b8;
    font-weight: 500;
    flex-shrink: 0;
}
.uz-chat-contact__preview {
    font-size: 12px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.3 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left !important;
}
.uz-chat-contact__preview i { color: #94a3b8; margin-right: 3px; }
.uz-chat-contact--active .uz-chat-contact__body h4 { color: #F75C96 !important; }

/* MAIN CHAT */
.uz-chat__main {
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: white;
}

.uz-chat__header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 20px;
    border-bottom: 1px solid #f1f5f9;
    background: linear-gradient(135deg, rgba(247,92,150,0.03) 0%, #ffffff 60%);
}
.uz-chat__back {
    display: none;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #f1f5f9;
    color: #334155 !important;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 14px;
}
.uz-chat__back:hover { background: #e2e8f0; }
.uz-chat__header-avatar {
    position: relative;
    flex-shrink: 0;
}
.uz-chat__header-avatar img {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}
.uz-chat__header-info { flex: 1; min-width: 0; }
.uz-chat__header-info strong {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
    margin-bottom: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.uz-chat__header-info a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: #F75C96 !important;
    text-decoration: none;
    font-weight: 600;
}
.uz-chat__header-info a:hover { text-decoration: underline; }

/* STREAM */
.uz-chat__stream {
    flex: 1;
    overflow-y: auto !important;
    padding: 20px !important;
    background: #f8fafc;
    max-height: none !important;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.uz-chat__load-more {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 8px 16px !important;
    background: white !important;
    border: 1.5px solid #e2e8f0 !important;
    color: #64748b !important;
    border-radius: 20px !important;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    margin: 0 auto 12px !important;
    align-self: center;
    width: auto !important;
}
.uz-chat__load-more:hover {
    background: #F75C96 !important;
    color: white !important;
    border-color: #F75C96 !important;
}

.uz-chat-msg {
    display: flex !important;
    gap: 10px;
    max-width: 78%;
    margin: 0 !important;
    float: none !important;
    width: auto !important;
}
.uz-chat-msg--mine {
    align-self: flex-end;
    flex-direction: row-reverse;
}
.uz-chat-msg--other {
    align-self: flex-start;
}
.uz-chat-msg__avatar {
    flex-shrink: 0;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    text-align: center;
}
.uz-chat-msg__avatar img {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    margin: 0 auto;
}
.uz-chat-msg__avatar .chat-message-user-name {
    display: block;
    font-size: 10px;
    color: #94a3b8;
    margin-top: 4px;
    line-height: 1;
    background: transparent !important;
    color: #94a3b8 !important;
    padding: 0 !important;
}
.uz-chat-msg__bubble {
    background: white;
    border: 1px solid #f1f5f9;
    border-radius: 16px;
    padding: 12px 16px;
    max-width: 100%;
    min-width: 0;
    box-shadow: 0 2px 8px rgba(15,23,42,0.05);
    position: relative;
}
.uz-chat-msg--mine .uz-chat-msg__bubble {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    border-color: transparent;
    border-radius: 16px 16px 4px 16px;
}
.uz-chat-msg--other .uz-chat-msg__bubble {
    border-radius: 16px 16px 16px 4px;
}
.uz-chat-msg__content {
    font-size: 14px;
    line-height: 1.5;
    margin: 0 0 4px !important;
    color: inherit;
    word-break: break-word;
    padding: 0 !important;
}
.uz-chat-msg--mine .uz-chat-msg__content { color: white; }
.uz-chat-msg__content a { color: inherit; text-decoration: underline; }
.uz-chat-msg__content img { max-width: 100%; border-radius: 8px; margin-top: 4px; display: block; }
.uz-chat-msg__time {
    display: block;
    font-size: 10px;
    color: #94a3b8;
    text-align: right;
    line-height: 1;
    margin-top: 4px;
    padding: 0 !important;
    background: transparent !important;
}
.uz-chat-msg--mine .uz-chat-msg__time,
.uz-chat-msg--mine .uz-chat-msg__time span { color: rgba(255,255,255,0.7); }

/* COMPOSER */
.uz-chat__composer {
    border-top: 1px solid #f1f5f9;
    background: white;
    padding: 10px 12px;
}
.uz-chat__composer-tabs {
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    margin-bottom: 8px;
}
.uz-chat__composer-tabs ul {
    display: flex !important;
    gap: 4px;
    margin: 0 !important;
    padding: 0 !important;
    background: #f1f5f9;
    border-radius: 10px;
    padding: 4px !important;
    width: fit-content;
    max-width: 100%;
}
.uz-chat__composer-tabs li {
    list-style: none;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}
.uz-chat__composer-tabs a {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 6px 14px !important;
    background: transparent !important;
    color: #64748b !important;
    text-decoration: none;
    border-radius: 7px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    transition: all 0.15s;
    border: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    float: none !important;
    width: auto !important;
}
.uz-chat__composer-tabs a i { color: inherit !important; font-size: 12px; }
.uz-chat__composer-tabs li.current a {
    background: white !important;
    color: #F75C96 !important;
    box-shadow: 0 2px 6px rgba(15,23,42,0.08);
}

.uz-chat__composer-msg {
    display: flex;
    gap: 8px;
    align-items: flex-end;
}
.uz-chat__input-wrap {
    flex: 1;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    height: auto !important;
}
.uz-chat__textarea {
    width: 100% !important;
    min-height: 44px !important;
    max-height: 140px !important;
    padding: 12px 16px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    color: #0f172a !important;
    background: #f8fafc !important;
    resize: none !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
    outline: none !important;
    box-shadow: none !important;
}
.uz-chat__textarea:focus {
    border-color: #F75C96 !important;
    background: white !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.1) !important;
}
.uz-chat__send-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 18px !important;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(247,92,150,0.3);
    transition: transform 0.15s, box-shadow 0.15s;
    margin: 0 !important;
    float: none !important;
    height: auto !important;
    line-height: 1 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.uz-chat__send-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(247,92,150,0.45);
}
.uz-chat__send-btn i { font-size: 15px; }
@media (max-width: 480px) {
    .uz-chat__send-btn span { display: none; }
    .uz-chat__send-btn { padding: 12px !important; width: 44px; }
}

.uz-chat__composer-photos { padding: 8px 0 0; }
.uz-chat__composer-photos:empty { display: none; }

/* MOBILE */
@media (max-width: 860px) {
    .uz-chat {
        grid-template-columns: 1fr;
        height: calc(100vh - 200px);
    }
    .uz-chat__contacts {
        display: none;
    }
    .uz-chat__contacts--visible { display: flex; }
    .uz-chat__back { display: inline-flex; }
    .uz-chat-msg { max-width: 90%; }
}

/* ----- Composer hint + Photo picker (loaded from Messages:files) ----- */
.uz-chat__composer-hint {
    margin: 8px 6px 0 !important;
    font-size: 11px;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 6px;
}
.uz-chat__composer-hint i { color: #cbd5e1; font-size: 12px; }

/* Photo picker loaded via ajax into #photoList */
.uz-chat__composer #assignPhotoBlock {
    padding: 12px !important;
    background: #f8fafc;
    border-radius: 12px;
    margin: 8px 0 0;
    max-height: 400px;
    overflow-y: auto;
}
.uz-chat__composer #assignPhotoBlock .fuzone {
    background: white !important;
    border: 2px dashed #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 16px 14px !important;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.15s;
    position: relative;
    margin-bottom: 12px;
}
.uz-chat__composer #assignPhotoBlock .fuzone:hover {
    border-color: #F75C96 !important;
}
.uz-chat__composer #assignPhotoBlock .fuzone .fu-text span {
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}
.uz-chat__composer #assignPhotoBlock .fuzone input[type="file"] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
.uz-chat__composer #assignPhotoBlock .imagebox,
.uz-chat__composer .fileToSelectBox {
    position: relative;
    aspect-ratio: 1 / 1;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 10px !important;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s;
    margin: 6px !important;
    padding: 0 !important;
    display: block !important;
    float: none !important;
    width: calc(33.333% - 12px) !important;
    max-width: calc(33.333% - 12px) !important;
    min-height: 100px;
}
.uz-chat__composer .fileToSelectBox:hover {
    transform: scale(1.03);
    box-shadow: 0 6px 16px rgba(15,23,42,0.15);
}
.uz-chat__composer #photoInnerList {
    display: flex !important;
    flex-wrap: wrap !important;
    padding: 0 !important;
    margin: 0 !important;
}
.uz-chat__composer #photoInnerList > .fuzone { width: 100% !important; margin-bottom: 12px !important; }
.uz-chat__composer .fileToSelectBox .btn {
    padding: 4px 10px !important;
    font-size: 10px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    border: none !important;
    box-shadow: 0 4px 10px rgba(247,92,150,0.4);
}
.uz-chat__composer #fileToSend {
    padding: 12px;
    background: white;
    border-radius: 10px;
    margin-bottom: 12px;
    box-shadow: 0 4px 12px rgba(15,23,42,0.08);
}
.uz-chat__composer #fileToSend .col-lg-6 {
    padding: 0 6px;
}
.uz-chat__composer #fileToSend label {
    display: block !important;
    font-size: 12px !important;
    color: #334155 !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.uz-chat__composer #fileToSend #creditForOpen {
    width: 100% !important;
    padding: 10px 12px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    background: #f8fafc !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
}
.uz-chat__composer #fileToSend #sendFile {
    width: 100% !important;
    padding: 11px 16px !important;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer;
    margin-top: 22px !important;
    box-shadow: 0 6px 14px rgba(247,92,150,0.3);
}
.uz-chat__composer #selectedFile img { border-radius: 10px; }
.uz-chat__composer #changeSelectedFile {
    display: inline-block;
    margin-top: 10px;
    color: #F75C96 !important;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
}
.uz-chat__composer #changeSelectedFile:hover { text-decoration: underline; }

/* Force composer never to be cut off */
.uz-chat__composer {
    flex-shrink: 0;
    max-height: 60vh;
    overflow-y: auto;
}
.uz-chat__composer-msg { min-height: 44px; }

/* Ensure send button always visible */
#profileMessageSend {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ==========================================================================
   MESSAGES — Complete redesign (msgr-*)
   ========================================================================== */

.msgr {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 0;
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(15,23,42,0.08);
    height: 700px;
    max-height: calc(100vh - 200px);
    min-height: 500px;
    clear: both;
    width: 100%;
}

/* ============ CONTACTS COLUMN ============ */
.msgr-contacts {
    background: #f8fafc;
    border-right: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}
.msgr-contacts__head {
    padding: 20px 20px 12px;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    background: white;
    border-bottom: 1px solid #f1f5f9;
    flex-shrink: 0;
}
.msgr-contacts__head h2 {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin: 0 !important;
    line-height: 1 !important;
    letter-spacing: -0.5px;
}
.msgr-contacts__count {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    padding: 3px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 4px 10px rgba(247,92,150,0.3);
}
.msgr-contacts__search {
    padding: 12px 14px;
    background: white;
    border-bottom: 1px solid #f1f5f9;
    flex-shrink: 0;
    position: relative;
}
.msgr-contacts__search i {
    position: absolute;
    left: 26px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    font-size: 14px;
    pointer-events: none;
}
.msgr-contacts__search input {
    width: 100% !important;
    padding: 10px 14px 10px 38px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 10px !important;
    background: #f8fafc !important;
    font-size: 13px !important;
    color: #0f172a !important;
    box-sizing: border-box !important;
    height: auto !important;
    line-height: 1.3 !important;
    box-shadow: none !important;
}
.msgr-contacts__search input:focus {
    outline: none !important;
    border-color: #F75C96 !important;
    background: white !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.1) !important;
}

.msgr-contacts__list {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 6px;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}
.msgr-contacts__list::-webkit-scrollbar { width: 6px; }
.msgr-contacts__list::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
.msgr-contacts__list::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

.msgr-contact {
    display: flex !important;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 12px;
    text-decoration: none;
    color: inherit !important;
    transition: all 0.15s;
    margin-bottom: 3px;
    background: transparent;
    width: 100%;
    float: none;
    box-sizing: border-box;
    border: none;
    position: relative;
}
.msgr-contact:hover {
    background: white;
    box-shadow: 0 4px 12px rgba(15,23,42,0.06);
    color: inherit !important;
}
.msgr-contact--active {
    background: linear-gradient(135deg, rgba(247,92,150,0.1) 0%, rgba(225,29,72,0.06) 100%);
    color: inherit !important;
}
.msgr-contact--active::before {
    content: '';
    position: absolute;
    left: 4px;
    top: 20%;
    bottom: 20%;
    width: 3px;
    background: linear-gradient(180deg, #F75C96, #E11D48);
    border-radius: 2px;
}
.msgr-contact__avatar {
    position: relative;
    flex-shrink: 0;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
}
.msgr-contact__avatar img {
    width: 46px !important;
    height: 46px !important;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    background: #f1f5f9;
    border: 2px solid white;
    box-shadow: 0 2px 8px rgba(15,23,42,0.06);
}
.msgr-contact__body {
    flex: 1;
    min-width: 0;
    padding: 0 !important;
}
.msgr-contact__top {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 3px;
}
.msgr-contact__name {
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    min-width: 0;
    display: block;
}
.msgr-contact--active .msgr-contact__name { color: #F75C96; }
.msgr-contact__time {
    font-size: 11px;
    color: #94a3b8;
    font-weight: 500;
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
}
.msgr-contact__preview {
    font-size: 12px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.35 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left !important;
    padding: 0 !important;
}
.msgr-contact__preview i { color: #94a3b8; margin-right: 3px; font-size: 11px; }

/* ============ CHAT COLUMN ============ */
.msgr-chat {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    background: white;
}

.msgr-chat__head {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 24px;
    background: white;
    border-bottom: 1px solid #f1f5f9;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(15,23,42,0.02);
    z-index: 2;
}
.msgr-chat__back {
    display: none;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: #f1f5f9;
    color: #334155 !important;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 15px;
    flex-shrink: 0;
    transition: background 0.15s;
}
.msgr-chat__back:hover { background: #e2e8f0; }
.msgr-chat__peer {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
}
.msgr-chat__peer-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    flex-shrink: 0;
    border: 2px solid white;
    box-shadow: 0 4px 12px rgba(15,23,42,0.08);
}
.msgr-chat__peer > div { flex: 1; min-width: 0; }
.msgr-chat__peer strong {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
    margin-bottom: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.msgr-chat__peer a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: #F75C96 !important;
    text-decoration: none;
    font-weight: 600;
}
.msgr-chat__peer a:hover { text-decoration: underline; }

/* ============ STREAM ============ */
.msgr-chat__stream {
    flex: 1 1 auto;
    overflow-y: auto !important;
    padding: 20px 24px !important;
    background: linear-gradient(180deg, #fafbfc 0%, #f8fafc 100%);
    max-height: none !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 0;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
    scroll-behavior: smooth;
}
.msgr-chat__stream::-webkit-scrollbar { width: 6px; }
.msgr-chat__stream::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }

.msgr-chat__load {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 8px 16px !important;
    background: white !important;
    color: #64748b !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    margin: 0 auto 12px !important;
    align-self: center;
    width: auto !important;
    box-shadow: 0 2px 8px rgba(15,23,42,0.04);
}
.msgr-chat__load:hover {
    background: #F75C96 !important;
    color: white !important;
    border-color: #F75C96 !important;
}

/* ============ MESSAGES ============ */
.msgr-msg {
    display: flex !important;
    gap: 8px;
    max-width: 80%;
    margin: 0 !important;
    float: none !important;
    width: auto !important;
    align-items: flex-end;
}
.msgr-msg--mine {
    align-self: flex-end;
    flex-direction: row-reverse;
    margin-left: auto !important;
}
.msgr-msg--other {
    align-self: flex-start;
    margin-right: auto !important;
}
.msgr-msg__avatar {
    flex-shrink: 0;
    padding: 0 !important;
    margin: 0 !important;
    width: 32px !important;
    height: 32px !important;
    align-self: flex-end;
}
.msgr-msg__avatar img {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}
.msgr-msg__wrap {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 3px;
}
.msgr-msg--mine .msgr-msg__wrap { align-items: flex-end; }
.msgr-msg--other .msgr-msg__wrap { align-items: flex-start; }

.msgr-msg__bubble {
    background: white;
    color: #0f172a;
    padding: 10px 14px;
    border-radius: 18px;
    max-width: 100%;
    box-shadow: 0 2px 8px rgba(15,23,42,0.05);
    border: 1px solid #f1f5f9;
    font-size: 14px;
    line-height: 1.5;
    margin: 0 !important;
    word-break: break-word;
    display: block;
}
.msgr-msg--mine .msgr-msg__bubble {
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%);
    color: white;
    border-color: transparent;
    border-bottom-right-radius: 4px;
    box-shadow: 0 4px 14px rgba(247,92,150,0.25);
}
.msgr-msg--other .msgr-msg__bubble {
    border-bottom-left-radius: 4px;
}
.msgr-msg__bubble a { color: inherit; text-decoration: underline; }
.msgr-msg__bubble img { max-width: 100%; border-radius: 12px; margin-top: 6px; display: block; }
.msgr-msg__time {
    display: block;
    font-size: 10px;
    color: #94a3b8;
    padding: 0 4px !important;
    background: transparent !important;
    line-height: 1;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}
.msgr-msg__time span { color: #cbd5e1; }

/* ============ MEDIA PANEL ============ */
.msgr-media {
    display: none;
    background: #f8fafc;
    border-top: 1px solid #f1f5f9;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease;
    flex-shrink: 0;
}
.msgr-media--open {
    max-height: 460px;
    overflow-y: auto !important;
    display: block !important;
    padding: 12px !important;
}
.msgr-media__loading {
    padding: 30px;
    text-align: center;
    color: #64748b;
    font-size: 13px;
}
.msgr-media__loading i { color: #F75C96; font-size: 20px; margin-right: 8px; }

/* Photo picker from Messages:files (framework markup) styling */
.msgr-media #assignPhotoBlock {
    padding: 0 !important;
    background: transparent;
    border-radius: 12px;
    margin: 0 !important;
    max-height: none;
    overflow: visible;
}
.msgr-media #assignPhotoBlock > .listsearch-input-item {
    padding: 0 !important;
    background: transparent !important;
}
.msgr-media #assignPhotoBlock > .listsearch-input-item > .row {
    max-height: none !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}
.msgr-media .fuzone {
    background: white !important;
    border: 2px dashed #cbd5e1 !important;
    border-radius: 12px !important;
    padding: 20px 16px !important;
    text-align: center;
    cursor: pointer;
    transition: all 0.15s;
    position: relative;
    margin-bottom: 12px !important;
    min-height: 0 !important;
    width: 100% !important;
}
.msgr-media .fuzone:hover {
    border-color: #F75C96 !important;
    background: rgba(247,92,150,0.04) !important;
}
.msgr-media .fu-text span {
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}
.msgr-media input[type="file"] {
    position: absolute !important;
    inset: 0 !important;
    opacity: 0 !important;
    cursor: pointer;
    width: 100% !important;
    height: 100% !important;
}
.msgr-media #photoInnerList {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px;
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
}
.msgr-media #photoInnerList > .fuzone { width: 100% !important; }
.msgr-media .fileToSelectBox,
.msgr-media .imagebox {
    position: relative;
    aspect-ratio: 1 / 1;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 10px !important;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    float: none !important;
    flex: 0 0 calc(33.333% - 6px) !important;
    max-width: calc(33.333% - 6px) !important;
    width: auto !important;
    min-height: 100px;
    background-color: #f1f5f9;
}
.msgr-media .fileToSelectBox:hover {
    transform: scale(1.03);
    box-shadow: 0 8px 20px rgba(247,92,150,0.25);
}
.msgr-media .fileToSelectBox::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, transparent 60%, rgba(247,92,150,0.7) 100%);
    opacity: 0;
    transition: opacity 0.15s;
}
.msgr-media .fileToSelectBox:hover::before { opacity: 1; }
.msgr-media .fileToSelectBox .btn {
    position: absolute !important;
    bottom: 8px;
    right: 8px;
    padding: 4px 10px !important;
    font-size: 10px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    border-radius: 12px !important;
    background: white !important;
    color: #0f172a !important;
    border: none !important;
    box-shadow: 0 4px 10px rgba(15,23,42,0.15);
    z-index: 1;
}
.msgr-media #fileToSend {
    padding: 16px;
    background: white;
    border-radius: 12px;
    margin-bottom: 12px;
    box-shadow: 0 4px 14px rgba(15,23,42,0.08);
}
.msgr-media #selectedFile { margin-top: 12px !important; }
.msgr-media #selectedFile img {
    display: block;
    margin: 0 auto;
    border-radius: 10px;
    max-width: 260px !important;
    max-height: 200px !important;
    object-fit: cover;
}
.msgr-media #fileToSend .col-lg-6 { padding: 0 6px; }
.msgr-media #fileToSend label {
    display: block !important;
    font-size: 12px !important;
    color: #334155 !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.msgr-media #creditForOpen {
    width: 100% !important;
    padding: 10px 12px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 8px !important;
    background: #f8fafc !important;
    font-size: 14px !important;
    color: #0f172a !important;
    box-sizing: border-box !important;
    height: auto !important;
    line-height: 1.3 !important;
}
.msgr-media #sendFile {
    width: 100% !important;
    padding: 11px 16px !important;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer;
    margin-top: 22px !important;
    box-shadow: 0 6px 14px rgba(247,92,150,0.3);
}
.msgr-media #changeSelectedFile {
    display: inline-block;
    margin-top: 10px;
    color: #F75C96 !important;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    width: 100%;
}
.msgr-media #changeSelectedFile:hover { text-decoration: underline; }

/* ============ COMPOSER ============ */
.msgr-composer {
    padding: 14px 18px 16px;
    background: white;
    border-top: 1px solid #f1f5f9;
    flex-shrink: 0;
}
.msgr-composer__toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    flex-wrap: wrap;
}
.msgr-composer__attach {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 10px 16px !important;
    background: #f1f5f9 !important;
    color: #334155 !important;
    border: 1.5px solid transparent !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer;
    transition: all 0.15s !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    line-height: 1 !important;
    height: auto !important;
    box-shadow: none !important;
    float: none !important;
    margin: 0 !important;
}
.msgr-composer__attach i { font-size: 15px; color: #64748b; }
.msgr-composer__attach:hover {
    background: white !important;
    border-color: #F75C96 !important;
    color: #F75C96 !important;
}
.msgr-composer__attach:hover i { color: #F75C96; }
.msgr-composer__attach--active {
    background: linear-gradient(135deg, rgba(247,92,150,0.1) 0%, rgba(225,29,72,0.06) 100%) !important;
    color: #F75C96 !important;
    border-color: rgba(247,92,150,0.3) !important;
}
.msgr-composer__attach--active i { color: #F75C96; }

.msgr-composer__send {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 24px !important;
    background: linear-gradient(135deg, #F75C96 0%, #E11D48 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(247,92,150,0.3);
    transition: transform 0.15s, box-shadow 0.15s !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    line-height: 1 !important;
    height: auto !important;
    float: none !important;
    margin: 0 !important;
}
.msgr-composer__send:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(247,92,150,0.45);
    background: linear-gradient(135deg, #E11D48 0%, #BE123C 100%) !important;
    color: white !important;
}
.msgr-composer__send i { font-size: 14px; }

@media (max-width: 500px) {
    .msgr-composer__toolbar { flex-direction: column-reverse; }
    .msgr-composer__attach,
    .msgr-composer__send { width: 100%; justify-content: center; }
}

.msgr-composer__input {
    flex: 1;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    height: auto !important;
    min-width: 0;
}
.msgr-composer__input textarea {
    width: 100% !important;
    min-height: 44px !important;
    max-height: 140px !important;
    padding: 11px 16px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    color: #0f172a !important;
    background: #f8fafc !important;
    resize: none !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
    line-height: 1.4 !important;
    outline: none !important;
    box-shadow: none !important;
    display: block !important;
}
.msgr-composer__input textarea:focus {
    border-color: #F75C96 !important;
    background: white !important;
    box-shadow: 0 0 0 3px rgba(247,92,150,0.1) !important;
}

/* ============ PLACEHOLDER (no active chat) ============ */
.msgr-chat__placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 40px 30px;
    color: #94a3b8;
    height: 100%;
    background: linear-gradient(180deg, #fafbfc 0%, #f1f5f9 100%);
}
.msgr-chat__placeholder-icon {
    width: 90px;
    height: 90px;
    background: white;
    color: #cbd5e1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 38px;
    margin-bottom: 16px;
    box-shadow: 0 8px 24px rgba(15,23,42,0.06);
}
.msgr-chat__placeholder h3 {
    font-size: 18px;
    font-weight: 700;
    color: #334155;
    margin: 0 0 6px;
}
.msgr-chat__placeholder p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    max-width: 320px;
    line-height: 1.5;
}

/* ============ MOBILE ============ */
@media (max-width: 860px) {
    .msgr {
        grid-template-columns: 1fr;
        height: calc(100vh - 180px);
        border-radius: 14px;
    }
    .msgr-contacts {
        display: none;
    }
    .msgr:not(.msgr--has-active) .msgr-contacts {
        display: flex;
    }
    .msgr:not(.msgr--has-active) .msgr-chat {
        display: none;
    }
    .msgr-chat__back { display: inline-flex; }
    .msgr-msg { max-width: 88%; }
    .msgr-chat__stream { padding: 16px !important; }
    .msgr-chat__head { padding: 12px 16px; }
    .msgr-composer { padding: 10px 12px 12px; }
}
