/* Uzel News Account 1.8.0 */
.uzel-account,.uzel-account *{box-sizing:border-box}
.uzel-account{width:100%;max-width:1180px;margin:0 auto;color:#111827;font-family:inherit}
.uzel-account a{text-decoration:none}
.uzel-account-shell{display:grid;gap:18px}
.uzel-account-header,.uzel-account-card{border:1px solid #e3edf7;border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(12,32,54,.08)}
.uzel-account-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px}
.uzel-account-user{display:flex;align-items:center;gap:14px;min-width:0}
.uzel-account-user img,.uzel-account-avatar-field img{border-radius:50%!important;object-fit:cover!important}
.uzel-account-user h1{margin:0 0 4px;color:#111827;font-size:28px;line-height:1.1}
.uzel-account-user p{margin:0;color:#64748b;font-size:14px}
.uzel-account-exit{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;border:1px solid #d8e5f1;border-radius:999px;background:#fff;color:#526172;font-size:13px;font-weight:900}
.uzel-account-nav{display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:1px solid #e3edf7;border-radius:999px;background:#f1f7fd}
.uzel-account-nav a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 14px;border-radius:999px;color:#526172;font-size:13px;font-weight:900;white-space:nowrap}
.uzel-account-nav a.is-active{background:#0095ff;color:#fff;box-shadow:0 10px 25px rgba(0,149,255,.22)}
.uzel-account-icon{display:inline-flex;width:18px;height:18px;flex:0 0 auto}
.uzel-account-icon svg{width:100%;height:100%}
.uzel-account-card{padding:24px}
.uzel-account-section-head{margin:0 0 18px}
.uzel-account-section-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.uzel-account-section-head h2{margin:0 0 5px;color:#111827;font-size:24px;line-height:1.15}
.uzel-account-section-head p{margin:0;color:#64748b;font-size:14px}
.uzel-account-form{display:grid;gap:14px}
.uzel-account-form label{display:grid;gap:7px}
.uzel-account-form label>span,.uzel-account-tax-box>span{color:#334155;font-size:13px;font-weight:900}
.uzel-account-form input[type=text],.uzel-account-form input[type=email],.uzel-account-form input[type=file],.uzel-account-form select,.uzel-account-form textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid #d8e5f1;border-radius:14px;background:#fff;color:#111827;font-size:15px;outline:none}
.uzel-account-form textarea{min-height:110px;resize:vertical}
.uzel-account-form input:focus,.uzel-account-form select:focus,.uzel-account-form textarea:focus{border-color:#0095ff;box-shadow:0 0 0 3px rgba(0,149,255,.12)}
.uzel-account-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:0 18px;border:1px solid #0095ff;border-radius:999px;background:#0095ff;color:#fff!important;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 12px 28px rgba(0,149,255,.22)}
.uzel-account-button-light{background:#fff;color:#0095ff!important;box-shadow:none}
.uzel-account-button-small{min-height:40px;padding:0 14px}
.uzel-account-icon-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #d8e5f1;border-radius:50%;background:#fff;color:#0095ff;cursor:pointer}
.uzel-account-icon-button.is-danger{color:#f34b92}
.uzel-account-avatar-field,.uzel-account-image-field{display:flex;align-items:center;gap:14px}
.uzel-account-avatar-field img{width:76px!important;height:76px!important;flex:0 0 auto}
.uzel-account-image-field img{width:120px;height:84px;border-radius:14px;object-fit:cover;border:1px solid #e3edf7}
.uzel-account-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.uzel-account-check-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.uzel-account-check-grid label{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 10px;border:1px solid #d8e5f1;border-radius:999px;background:#fff;font-size:13px;font-weight:800}
.uzel-account-form-actions{display:flex;flex-wrap:wrap;gap:10px}
.uzel-account-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}
.uzel-account-mini-grid div{padding:16px;border-radius:18px;background:#f1f7fd}
.uzel-account-mini-grid strong{display:block;color:#111827;font-size:28px;line-height:1}
.uzel-account-mini-grid span{display:block;margin-top:6px;color:#64748b;font-size:13px;font-weight:800}
.uzel-account-list,.uzel-account-post-table{display:grid;gap:10px}
.uzel-account-list article,.uzel-account-post-table article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #e3edf7;border-radius:18px;background:#fff}
.uzel-account-list h3,.uzel-account-post-table h3{margin:0 0 5px;color:#111827;font-size:16px;line-height:1.3}
.uzel-account-list p,.uzel-account-post-table p{margin:0;color:#64748b;font-size:13px}
.uzel-account-post-actions{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto}
.uzel-account-post-actions form{margin:0}
.uzel-account-empty{padding:18px;border-radius:18px;background:#f1f7fd;color:#64748b;font-size:14px;font-weight:800}
.uzel-account-settings-list{display:grid;gap:10px}
.uzel-account-settings-list div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf3f8}
.uzel-account-settings-list span{color:#64748b}
.uzel-account-settings-list strong{color:#111827}
.uzel-account-notice{margin:0 0 14px;padding:13px 15px;border-radius:16px;font-size:14px;font-weight:800}
.uzel-account-notice-success{background:rgba(28,185,129,.1);color:#0f8a5f;border:1px solid rgba(28,185,129,.2)}
.uzel-account-notice-error{background:rgba(243,75,146,.09);color:#b42362;border:1px solid rgba(243,75,146,.2)}
.uzel-account-guest{max-width:520px;margin:0 auto}
.uzel-account-guest h2{margin:0 0 8px}
.uzel-account-guest p{margin:0 0 18px;color:#64748b}
@media(max-width:767px){
.uzel-account{max-width:none;padding-left:var(--uzel-account-mobile-padding,16px);padding-right:var(--uzel-account-mobile-padding,16px)}
.uzel-account-header{align-items:flex-start;flex-direction:column;padding:16px;border-radius:20px}
.uzel-account-user h1{font-size:24px}
.uzel-account-exit span{display:none}
.uzel-account-nav{flex-wrap:nowrap;overflow-x:auto;border-radius:20px;padding:7px;scrollbar-width:none}
.uzel-account-nav::-webkit-scrollbar{display:none}
.uzel-account-nav a{flex:0 0 auto;flex-direction:column;gap:3px;min-width:76px;min-height:58px;padding:7px 9px;font-size:11px;line-height:1.1}
.uzel-account-card{padding:16px;border-radius:20px}
.uzel-account-section-head-row{flex-direction:column}
.uzel-account-two-cols,.uzel-account-mini-grid{grid-template-columns:1fr}
.uzel-account-list article,.uzel-account-post-table article{align-items:flex-start;flex-direction:column}
.uzel-account-post-actions{width:100%;justify-content:flex-start}
.uzel-account-avatar-field,.uzel-account-image-field{align-items:flex-start;flex-direction:column}
.uzel-account-form-actions{flex-direction:column}
.uzel-account-button,.uzel-account-button-light{width:100%}
}
@media(max-width:420px){
.uzel-account{padding-left:12px;padding-right:12px}
.uzel-account-card,.uzel-account-header{border-radius:18px}
}


/* Version 1.1.0: стандартный визуальный редактор WordPress и планирование */
.uzel-account-editor-field {
    display: grid;
    gap: 8px;
}

.uzel-account-editor-field > span,
.uzel-account-schedule-field > span {
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}

.uzel-account-editor-field .wp-editor-wrap {
    border: 1px solid #d8e5f1;
    border-radius: 14px;
    overflow: hidden;
    background: #ffffff;
}

.uzel-account-editor-field .wp-editor-tools,
.uzel-account-editor-field .wp-editor-tabs {
    display: none !important;
}

.uzel-account-editor-field .mce-toolbar-grp,
.uzel-account-editor-field .quicktags-toolbar {
    border-color: #d8e5f1 !important;
}

.uzel-account-editor-field iframe {
    min-height: 320px !important;
}

.uzel-account-schedule-field small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
    line-height: 1.35;
}

.uzel-account-wp-editor-link {
    color: #526172;
}

@media (max-width: 767px) {
    .uzel-account-editor-field iframe {
        min-height: 280px !important;
    }

    .uzel-account-section-head-row .uzel-account-button-small {
        width: 100%;
    }
}


/* Version 1.1.1: иконка вставки картинки в редактор записи */
.uzel-account-editor-label-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.uzel-account-editor-label-row > span {
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}

.uzel-account-insert-image {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border: 1px solid #d8e5f1 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #0095ff !important;
    cursor: pointer !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.uzel-account-insert-image:hover,
.uzel-account-insert-image:focus {
    border-color: #0095ff !important;
    background: rgba(0, 149, 255, .07) !important;
    outline: none !important;
}

.uzel-account-insert-image svg {
    width: 19px !important;
    height: 19px !important;
    display: block !important;
}

.uzel-account-content-image {
    display: block;
    margin: 18px 0;
    max-width: 100%;
}

.uzel-account-content-image img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 14px;
}

.uzel-account-content-image figcaption {
    margin-top: 7px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.4;
}

@media (max-width: 767px) {
    .uzel-account-insert-image {
        width: 36px !important;
        height: 36px !important;
    }
}


/* Version 1.1.2: выравнивание иконок и более дружелюбный UI */
.uzel-account-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    flex: 0 0 18px !important;
    line-height: 1 !important;
}

.uzel-account-icon svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    stroke: currentColor !important;
    overflow: visible !important;
}

.uzel-account-nav a {
    position: relative;
    align-items: center !important;
    line-height: 1 !important;
}

.uzel-account-nav a span:not(.uzel-account-icon) {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1.15 !important;
}

.uzel-account-icon-button {
    flex: 0 0 38px !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.uzel-account-icon-button .uzel-account-icon {
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    min-height: 17px !important;
    flex-basis: 17px !important;
}

.uzel-account-icon-button .uzel-account-icon svg {
    width: 17px !important;
    height: 17px !important;
}

.uzel-account-button .uzel-account-icon {
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    min-height: 17px !important;
    flex-basis: 17px !important;
}

.uzel-account-wp-editor-link {
    color: #526172 !important;
    background: #f8fbff !important;
}

.uzel-account-wp-editor-link:hover,
.uzel-account-wp-editor-link:focus {
    color: #0095ff !important;
    border-color: rgba(0, 149, 255, .35) !important;
    background: rgba(0, 149, 255, .07) !important;
}

.uzel-account-post-actions {
    align-items: center !important;
}

.uzel-account-post-actions form,
.uzel-account-post-actions button {
    display: inline-flex !important;
}

.uzel-account-section-head p {
    max-width: 760px;
}

@media (max-width: 767px) {
    .uzel-account-nav a {
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }

    .uzel-account-nav a .uzel-account-icon {
        margin: 0 auto !important;
    }

    .uzel-account-nav a span:not(.uzel-account-icon) {
        justify-content: center !important;
        text-align: center !important;
    }

    .uzel-account-post-actions {
        gap: 8px !important;
    }
}


/* Version 1.2.0: профиль, пользователи, настройки и аккуратная загрузка аватара */
.uzel-account-profile-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 18px;
    align-items: start;
}

.uzel-account-avatar-upload {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px;
    border: 1px solid #e3edf7;
    border-radius: 18px;
    background: #f8fbff;
}

.uzel-account-avatar-upload img {
    width: 88px !important;
    height: 88px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 3px solid #fff !important;
    box-shadow: 0 10px 24px rgba(12, 32, 54, .1) !important;
}

.uzel-account-avatar-upload-controls {
    display: grid;
    gap: 7px;
    min-width: 0;
}

.uzel-account-avatar-upload-controls strong {
    color: #111827;
    font-size: 15px;
}

.uzel-account-avatar-upload-controls p {
    margin: 0;
    color: #64748b;
    font-size: 12px;
    line-height: 1.35;
}

.uzel-account-file-input {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    pointer-events: none !important;
}

.uzel-account-upload-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: fit-content !important;
    min-height: 38px !important;
    padding: 0 13px !important;
    border: 1px solid #0095ff !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0095ff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

.uzel-account-upload-button i {
    display: none;
    width: 15px;
    height: 15px;
    border: 2px solid rgba(0, 149, 255, .25);
    border-top-color: #0095ff;
    border-radius: 50%;
    animation: uzelAccountSpin .7s linear infinite;
}

.uzel-account-upload-button.is-loading i,
.uzel-account-form.is-loading .uzel-account-upload-button i {
    display: inline-block;
}

@keyframes uzelAccountSpin {
    to { transform: rotate(360deg); }
}

.uzel-account-profile-stats {
    display: grid;
    gap: 12px;
    padding: 18px;
    border-radius: 20px;
    background: #f1f7fd;
    border: 1px solid #e3edf7;
}

.uzel-account-profile-stats h3 {
    margin: 0;
    color: #111827;
    font-size: 18px;
}

.uzel-account-achievement-score {
    padding: 14px;
    border-radius: 16px;
    background: #ffffff;
}

.uzel-account-achievement-score strong {
    display: block;
    color: #0095ff;
    font-size: 34px;
    line-height: 1;
}

.uzel-account-achievement-score span {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
}

.uzel-account-achievements {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.uzel-account-achievements span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    background: #ffffff;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 900;
    border: 1px solid #e3edf7;
}

.uzel-account-achievements span.is-active {
    color: #0f8a5f;
    border-color: rgba(28, 185, 129, .24);
    background: rgba(28, 185, 129, .08);
}

.uzel-account-profile-stats p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.uzel-account-settings-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.uzel-account-settings-grid form {
    padding: 18px;
    border: 1px solid #e3edf7;
    border-radius: 18px;
    background: #f8fbff;
}

.uzel-account-settings-grid h3 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 10px;
    color: #111827;
    font-size: 18px;
}

.uzel-account-toggle {
    display: flex !important;
    grid-template-columns: none !important;
    flex-direction: row;
    align-items: center;
    gap: 9px !important;
    min-height: 38px;
    padding: 0 0 4px;
    color: #334155;
    font-size: 14px;
    font-weight: 800;
}

.uzel-account-users-list {
    display: grid;
    gap: 12px;
}

.uzel-account-user-row {
    display: grid;
    grid-template-columns: minmax(210px, 1.3fr) minmax(160px, 1fr) minmax(150px, .8fr) minmax(140px, .8fr) minmax(150px, .8fr) auto;
    gap: 10px;
    align-items: end;
    padding: 14px;
    border: 1px solid #e3edf7;
    border-radius: 18px;
    background: #ffffff;
}

.uzel-account-user-row label {
    display: grid;
    gap: 6px;
}

.uzel-account-user-row label span {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
}

.uzel-account-user-row input,
.uzel-account-user-row select {
    width: 100%;
    min-height: 38px;
    padding: 0 10px;
    border: 1px solid #d8e5f1;
    border-radius: 12px;
    background: #ffffff;
    color: #111827;
    font-size: 13px;
}

.uzel-account-user-info {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.uzel-account-user-info img {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
}

.uzel-account-user-info strong,
.uzel-account-user-info span {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.uzel-account-user-info strong {
    color: #111827;
    font-size: 14px;
}

.uzel-account-user-info span {
    color: #64748b;
    font-size: 12px;
}

@media (max-width: 980px) {
    .uzel-account-profile-layout,
    .uzel-account-settings-grid {
        grid-template-columns: 1fr;
    }

    .uzel-account-user-row {
        grid-template-columns: 1fr 1fr;
    }

    .uzel-account-user-info {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    .uzel-account-avatar-upload {
        align-items: flex-start;
        flex-direction: column;
    }

    .uzel-account-user-row {
        grid-template-columns: 1fr;
    }

    .uzel-account-user-row .uzel-account-button {
        width: 100%;
    }
}


/* Version 1.2.1: более акцентный интерфейс и аккуратные настройки */
.uzel-account {
    --uzel-blue: #0095ff;
    --uzel-blue-dark: #0076d1;
    --uzel-pink: #f34b92;
    --uzel-green: #1cb981;
    --uzel-soft-blue: #edf7ff;
    --uzel-soft-pink: #fff0f6;
    --uzel-soft-green: #ecfbf5;
}

.uzel-account-header {
    background: linear-gradient(135deg, #ffffff 0%, #f2f9ff 100%) !important;
    border-color: rgba(0, 149, 255, .16) !important;
}

.uzel-account-nav {
    background: #ffffff !important;
    border-color: rgba(0, 149, 255, .16) !important;
    box-shadow: 0 12px 34px rgba(12, 32, 54, .06) !important;
}

.uzel-account-nav a {
    color: #475569 !important;
}

.uzel-account-nav a:hover {
    background: rgba(0, 149, 255, .08) !important;
    color: var(--uzel-blue) !important;
}

.uzel-account-nav a.is-active {
    background: linear-gradient(135deg, var(--uzel-blue), #1aa7ff) !important;
    color: #ffffff !important;
}

.uzel-account-card {
    border-color: rgba(0, 149, 255, .13) !important;
}

.uzel-account-section-head h2 {
    position: relative;
    padding-left: 14px;
}

.uzel-account-section-head h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: .18em;
    width: 4px;
    height: .9em;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--uzel-blue), var(--uzel-pink));
}

.uzel-account-button {
    background: linear-gradient(135deg, var(--uzel-blue), #1aa7ff) !important;
    border-color: var(--uzel-blue) !important;
    box-shadow: 0 12px 28px rgba(0, 149, 255, .24) !important;
}

.uzel-account-button:hover,
.uzel-account-button:focus {
    background: linear-gradient(135deg, var(--uzel-blue-dark), var(--uzel-blue)) !important;
}

.uzel-account-button-light {
    background: #ffffff !important;
    color: var(--uzel-blue) !important;
    border-color: rgba(0, 149, 255, .28) !important;
    box-shadow: none !important;
}

.uzel-account-button-light:hover,
.uzel-account-button-light:focus {
    background: rgba(0, 149, 255, .08) !important;
}

.uzel-account-settings-card {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
}

.uzel-account-settings-pro-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.uzel-account-setting-tile {
    position: relative;
    display: grid;
    gap: 13px;
    padding: 18px;
    border: 1px solid rgba(0, 149, 255, .15);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(12, 32, 54, .06);
    overflow: hidden;
}

.uzel-account-setting-tile::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 4px;
    background: var(--uzel-blue);
}

.uzel-account-setting-tile.is-security::before {
    background: linear-gradient(90deg, var(--uzel-blue), #4db8ff);
}

.uzel-account-setting-tile.is-reset::before {
    background: linear-gradient(90deg, var(--uzel-pink), #ff79b2);
}

.uzel-account-setting-tile.is-mail::before {
    background: linear-gradient(90deg, #7c3aed, var(--uzel-blue));
}

.uzel-account-setting-tile.is-preferences::before {
    background: linear-gradient(90deg, var(--uzel-green), #48d79f);
}

.uzel-account-setting-tile-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.uzel-account-setting-tile-head b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 14px;
    color: #ffffff;
    background: var(--uzel-blue);
    box-shadow: 0 12px 24px rgba(0, 149, 255, .22);
}

.uzel-account-setting-tile.is-reset .uzel-account-setting-tile-head b {
    background: var(--uzel-pink);
    box-shadow: 0 12px 24px rgba(243, 75, 146, .2);
}

.uzel-account-setting-tile.is-mail .uzel-account-setting-tile-head b {
    background: #7c3aed;
    box-shadow: 0 12px 24px rgba(124, 58, 237, .18);
}

.uzel-account-setting-tile.is-preferences .uzel-account-setting-tile-head b {
    background: var(--uzel-green);
    box-shadow: 0 12px 24px rgba(28, 185, 129, .18);
}

.uzel-account-setting-tile-head h3 {
    margin: 0 0 4px;
    color: #111827;
    font-size: 18px;
    line-height: 1.18;
}

.uzel-account-setting-tile-head p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.4;
}

.uzel-account-setting-tile label {
    display: grid;
    gap: 7px;
}

.uzel-account-setting-tile label > span {
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}

.uzel-account-setting-tile input[type="password"],
.uzel-account-setting-tile input[type="email"] {
    width: 100%;
    min-height: 44px;
    padding: 10px 13px;
    border: 1px solid #d8e5f1;
    border-radius: 14px;
    background: #ffffff;
    color: #111827;
    font-size: 14px;
    outline: none;
}

.uzel-account-setting-tile input:focus {
    border-color: var(--uzel-blue);
    box-shadow: 0 0 0 3px rgba(0, 149, 255, .12);
}

.uzel-account-current-value,
.uzel-account-pending-email {
    padding: 12px;
    border-radius: 14px;
    background: #f8fbff;
    border: 1px solid #edf3f8;
}

.uzel-account-current-value span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
}

.uzel-account-current-value strong {
    display: block;
    margin-top: 3px;
    color: #111827;
    font-size: 14px;
    word-break: break-word;
}

.uzel-account-pending-email {
    color: #7c3aed;
    font-size: 13px;
    font-weight: 800;
    background: rgba(124, 58, 237, .07);
    border-color: rgba(124, 58, 237, .16);
}

.uzel-account-toggle {
    min-height: 42px;
    padding: 10px 12px !important;
    border-radius: 14px;
    background: #f8fbff;
    border: 1px solid #edf3f8;
}

.uzel-account-toggle input {
    accent-color: var(--uzel-blue);
}

.uzel-account-empty,
.uzel-account-mini-grid div,
.uzel-account-profile-stats {
    background: linear-gradient(135deg, #f1f8ff, #ffffff) !important;
    border: 1px solid rgba(0, 149, 255, .12) !important;
}

.uzel-account-achievement-score {
    background: linear-gradient(135deg, rgba(0, 149, 255, .08), #ffffff) !important;
}

@media (max-width: 920px) {
    .uzel-account-settings-pro-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .uzel-account-setting-tile {
        padding: 16px;
        border-radius: 18px;
    }

    .uzel-account-setting-tile-head b {
        width: 38px;
        height: 38px;
        min-width: 38px;
        border-radius: 12px;
    }

    .uzel-account-setting-tile-head h3 {
        font-size: 17px;
    }
}


/* Version 1.2.2: единые кнопки по логике Impreza */
.uzel-account {
    --uzel-btn-h: 42px;
    --uzel-btn-icon: 42px;
    --uzel-btn-radius: 999px;
    --uzel-btn-blue: #0095ff;
    --uzel-btn-blue-hover: #007bd3;
    --uzel-btn-text: #111827;
    --uzel-btn-muted: #64748b;
}

/* Общая база всех кнопок ЛК */
.uzel-account .uzel-account-button,
.uzel-account .uzel-account-upload-button,
.uzel-account .uzel-account-icon-button,
.uzel-account .uzel-account-exit,
.uzel-account .uzel-account-insert-image {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: var(--uzel-btn-h) !important;
    height: var(--uzel-btn-h) !important;
    border-radius: var(--uzel-btn-radius) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

/* Primary — как us-btn-style_3: синяя кнопка */
.uzel-account .uzel-account-button:not(.uzel-account-button-light),
.uzel-account .uzel-account-button.us-btn-style_3:not(.uzel-account-button-light) {
    min-width: 142px !important;
    padding: 0 20px !important;
    border: 1px solid var(--uzel-btn-blue) !important;
    background: var(--uzel-btn-blue) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.uzel-account .uzel-account-button:not(.uzel-account-button-light):hover,
.uzel-account .uzel-account-button:not(.uzel-account-button-light):focus {
    background: var(--uzel-btn-blue-hover) !important;
    border-color: var(--uzel-btn-blue-hover) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

/* Secondary — как us-btn-style_1: светлая плашка */
.uzel-account .uzel-account-button-light,
.uzel-account .uzel-account-upload-button,
.uzel-account .uzel-account-exit {
    min-width: 132px !important;
    padding: 0 18px !important;
    border: 1px solid #e4edf7 !important;
    background: #f7f9fc !important;
    color: var(--uzel-btn-text) !important;
    box-shadow: none !important;
}

.uzel-account .uzel-account-button-light:hover,
.uzel-account .uzel-account-button-light:focus,
.uzel-account .uzel-account-upload-button:hover,
.uzel-account .uzel-account-upload-button:focus,
.uzel-account .uzel-account-exit:hover,
.uzel-account .uzel-account-exit:focus {
    border-color: rgba(0,149,255,.35) !important;
    background: rgba(0,149,255,.08) !important;
    color: var(--uzel-btn-blue) !important;
}

/* Icon buttons — единый размер вместо разнобоя */
.uzel-account .uzel-account-icon-button,
.uzel-account .uzel-account-insert-image {
    width: var(--uzel-btn-icon) !important;
    min-width: var(--uzel-btn-icon) !important;
    max-width: var(--uzel-btn-icon) !important;
    height: var(--uzel-btn-icon) !important;
    min-height: var(--uzel-btn-icon) !important;
    padding: 0 !important;
    border: 1px solid #e4edf7 !important;
    background: #f7f9fc !important;
    color: #334155 !important;
    box-shadow: none !important;
    flex: 0 0 var(--uzel-btn-icon) !important;
}

.uzel-account .uzel-account-icon-button:hover,
.uzel-account .uzel-account-icon-button:focus,
.uzel-account .uzel-account-insert-image:hover,
.uzel-account .uzel-account-insert-image:focus {
    border-color: rgba(0,149,255,.4) !important;
    background: rgba(0,149,255,.09) !important;
    color: var(--uzel-btn-blue) !important;
    transform: translateY(-1px) !important;
}

.uzel-account .uzel-account-icon-button.is-danger {
    color: #f34b92 !important;
    background: #fff5f9 !important;
    border-color: rgba(243,75,146,.22) !important;
}

.uzel-account .uzel-account-icon-button.is-danger:hover,
.uzel-account .uzel-account-icon-button.is-danger:focus {
    color: #ffffff !important;
    background: #f34b92 !important;
    border-color: #f34b92 !important;
}

/* Полный редактор — не шестерёнка, а понятная кнопка */
.uzel-account .uzel-account-wp-editor-link {
    background: #f7f9fc !important;
    color: #334155 !important;
    border-color: #e4edf7 !important;
}

.uzel-account .uzel-account-wp-editor-link:hover,
.uzel-account .uzel-account-wp-editor-link:focus {
    color: var(--uzel-btn-blue) !important;
    background: rgba(0,149,255,.08) !important;
    border-color: rgba(0,149,255,.35) !important;
}

/* Иконки внутри кнопок — одинаковая геометрия */
.uzel-account .uzel-account-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    flex: 0 0 18px !important;
    line-height: 1 !important;
    transform: none !important;
}

.uzel-account .uzel-account-icon svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    stroke: currentColor !important;
    fill: none !important;
    overflow: visible !important;
}

.uzel-account .uzel-account-icon-button .uzel-account-icon,
.uzel-account .uzel-account-icon-button .uzel-account-icon svg,
.uzel-account .uzel-account-insert-image svg {
    width: 18px !important;
    height: 18px !important;
}

/* Навигация ЛК — больше акцента, но без визуального шума */
.uzel-account .uzel-account-nav {
    gap: 7px !important;
    padding: 7px !important;
    border-radius: 22px !important;
    background: #ffffff !important;
}

.uzel-account .uzel-account-nav a {
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 15px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #475569 !important;
}

.uzel-account .uzel-account-nav a:hover {
    background: #f7f9fc !important;
    border-color: #e4edf7 !important;
    color: var(--uzel-btn-blue) !important;
}

.uzel-account .uzel-account-nav a.is-active {
    background: var(--uzel-btn-blue) !important;
    border-color: var(--uzel-btn-blue) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

/* Списки действий — чтобы кнопки не прыгали */
.uzel-account .uzel-account-post-actions {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
}

.uzel-account .uzel-account-post-actions form {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Убираем старые градиенты, которые конфликтовали с Impreza-логикой */
.uzel-account .uzel-account-button,
.uzel-account .uzel-account-button:hover,
.uzel-account .uzel-account-button:focus {
    background-image: none !important;
}

/* Карточки — разделяем интерфейс, чтобы не сливался */
.uzel-account .uzel-account-card {
    border-color: #e1ebf5 !important;
    box-shadow: 0 12px 34px rgba(12,32,54,.06) !important;
}

.uzel-account .uzel-account-section-head h2::before {
    background: var(--uzel-btn-blue) !important;
}

/* Settings cards: кнопки тоже одного размера */
.uzel-account .uzel-account-setting-tile .uzel-account-button,
.uzel-account .uzel-account-setting-tile .uzel-account-button-light {
    width: fit-content !important;
    min-width: 160px !important;
}

@media (max-width: 767px) {
    .uzel-account .uzel-account-nav a {
        min-width: 76px !important;
        height: 58px !important;
        min-height: 58px !important;
        padding: 7px 9px !important;
    }

    .uzel-account .uzel-account-setting-tile .uzel-account-button,
    .uzel-account .uzel-account-setting-tile .uzel-account-button-light,
    .uzel-account .uzel-account-button,
    .uzel-account .uzel-account-button-light {
        width: 100% !important;
    }

    .uzel-account .uzel-account-post-actions {
        justify-content: flex-start !important;
    }
}




/* Version 1.4.1: только пользовательские стили кнопок + Font Awesome / Material */
.uzel-account.uzel-account-custom-buttons .uzel-account-button:not(.uzel-account-button-light),
.uzel-account.uzel-account-custom-buttons .uzel-account-button.us-btn-style_3:not(.uzel-account-button-light) {
    background: var(--uzel-custom-primary-bg) !important;
    border-color: var(--uzel-custom-primary-bg) !important;
    color: var(--uzel-custom-primary-text) !important;
}

.uzel-account.uzel-account-custom-buttons .uzel-account-button:not(.uzel-account-button-light):hover,
.uzel-account.uzel-account-custom-buttons .uzel-account-button:not(.uzel-account-button-light):focus {
    background: var(--uzel-custom-primary-hover-bg) !important;
    border-color: var(--uzel-custom-primary-hover-bg) !important;
    color: var(--uzel-custom-primary-hover-text) !important;
}

.uzel-account.uzel-account-custom-buttons .uzel-account-button-light,
.uzel-account.uzel-account-custom-buttons .uzel-account-upload-button,
.uzel-account.uzel-account-custom-buttons .uzel-account-exit {
    background: var(--uzel-custom-secondary-bg) !important;
    border-color: var(--uzel-custom-secondary-bg) !important;
    color: var(--uzel-custom-secondary-text) !important;
}

.uzel-account.uzel-account-custom-buttons .uzel-account-button-light:hover,
.uzel-account.uzel-account-custom-buttons .uzel-account-button-light:focus,
.uzel-account.uzel-account-custom-buttons .uzel-account-upload-button:hover,
.uzel-account.uzel-account-custom-buttons .uzel-account-upload-button:focus,
.uzel-account.uzel-account-custom-buttons .uzel-account-exit:hover,
.uzel-account.uzel-account-custom-buttons .uzel-account-exit:focus {
    background: var(--uzel-custom-secondary-hover-bg) !important;
    border-color: var(--uzel-custom-secondary-hover-bg) !important;
    color: var(--uzel-custom-secondary-hover-text) !important;
}

.uzel-account.uzel-account-custom-buttons .uzel-account-icon-button,
.uzel-account.uzel-account-custom-buttons .uzel-account-insert-image {
    background: var(--uzel-custom-icon-bg) !important;
    color: var(--uzel-custom-icon-text) !important;
}

.uzel-account.uzel-account-custom-buttons .uzel-account-icon-button:hover,
.uzel-account.uzel-account-custom-buttons .uzel-account-icon-button:focus,
.uzel-account.uzel-account-custom-buttons .uzel-account-insert-image:hover,
.uzel-account.uzel-account-custom-buttons .uzel-account-insert-image:focus {
    background: var(--uzel-custom-icon-hover-bg) !important;
    color: var(--uzel-custom-icon-hover-text) !important;
}

.uzel-account-icon-fa i,
.uzel-account-icon-material i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

.uzel-account-icon-material i {
    font-family: 'Material Icons' !important;
    font-weight: normal !important;
    font-style: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    white-space: nowrap !important;
    direction: ltr !important;
    -webkit-font-feature-settings: 'liga' !important;
    -webkit-font-smoothing: antialiased !important;
}

.uzel-account-admin-icon-settings {
    display: grid;
    grid-template-columns: 220px 260px 180px;
    gap: 10px;
    align-items: end;
}

.uzel-account-admin-icon-settings label {
    display: grid;
    gap: 5px;
}

.uzel-account-admin-icon-settings label span {
    font-size: 12px;
    font-weight: 600;
}

@media (max-width: 782px) {
    .uzel-account-admin-icon-settings {
        grid-template-columns: 1fr;
    }
}


/* Version 1.4.2: фикс вращения Font Awesome-иконки загрузки аватара */
.uzel-account-upload-button .uzel-account-icon-fa i,
.uzel-account-upload-button .uzel-account-icon-material i {
    display: inline-flex !important;
    width: 18px !important;
    height: 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    animation: none !important;
    transform: none !important;
}

.uzel-account-upload-spinner {
    display: none;
    width: 15px;
    height: 15px;
    border: 2px solid rgba(0, 149, 255, .25);
    border-top-color: #0095ff;
    border-radius: 50%;
    animation: uzelAccountSpin .7s linear infinite;
}

.uzel-account-upload-button.is-loading .uzel-account-upload-spinner,
.uzel-account-form.is-loading .uzel-account-upload-button .uzel-account-upload-spinner {
    display: inline-block;
}

/* На всякий случай отключаем старое поведение, где любой i внутри кнопки считался спиннером */
.uzel-account-upload-button > i {
    display: none !important;
    animation: none !important;
}


/* Version 1.4.3: единое применение настроек ко всем кнопкам ЛК */
.uzel-account {
    --uzel-account-icon-blue: #0095ff;
}

/* Основные кнопки: сохранить, новая запись, подгрузить ещё, запросить изменение и т.д. */
.uzel-account .uzel-account-button:not(.uzel-account-button-light),
.uzel-account button.uzel-account-button:not(.uzel-account-button-light),
.uzel-account a.uzel-account-button:not(.uzel-account-button-light),
.uzel-account .uzel-account-setting-tile .uzel-account-button:not(.uzel-account-button-light),
.uzel-account .uzel-account-load-more-wrap .uzel-account-button {
    background: var(--uzel-custom-primary-bg) !important;
    border-color: var(--uzel-custom-primary-bg) !important;
    color: var(--uzel-custom-primary-text) !important;
    background-image: none !important;
}

.uzel-account .uzel-account-button:not(.uzel-account-button-light):hover,
.uzel-account .uzel-account-button:not(.uzel-account-button-light):focus,
.uzel-account button.uzel-account-button:not(.uzel-account-button-light):hover,
.uzel-account button.uzel-account-button:not(.uzel-account-button-light):focus,
.uzel-account a.uzel-account-button:not(.uzel-account-button-light):hover,
.uzel-account a.uzel-account-button:not(.uzel-account-button-light):focus,
.uzel-account .uzel-account-setting-tile .uzel-account-button:not(.uzel-account-button-light):hover,
.uzel-account .uzel-account-setting-tile .uzel-account-button:not(.uzel-account-button-light):focus,
.uzel-account .uzel-account-load-more-wrap .uzel-account-button:hover,
.uzel-account .uzel-account-load-more-wrap .uzel-account-button:focus {
    background: var(--uzel-custom-primary-hover-bg) !important;
    border-color: var(--uzel-custom-primary-hover-bg) !important;
    color: var(--uzel-custom-primary-hover-text) !important;
    background-image: none !important;
}

/* Вторичные кнопки: полный редактор, к списку, выход, загрузить аватар */
.uzel-account .uzel-account-button-light,
.uzel-account a.uzel-account-button-light,
.uzel-account button.uzel-account-button-light,
.uzel-account .uzel-account-upload-button,
.uzel-account .uzel-account-exit,
.uzel-account .uzel-account-setting-tile .uzel-account-button-light {
    background: var(--uzel-custom-secondary-bg) !important;
    border-color: var(--uzel-custom-secondary-bg) !important;
    color: var(--uzel-custom-secondary-text) !important;
    background-image: none !important;
}

.uzel-account .uzel-account-button-light:hover,
.uzel-account .uzel-account-button-light:focus,
.uzel-account a.uzel-account-button-light:hover,
.uzel-account a.uzel-account-button-light:focus,
.uzel-account button.uzel-account-button-light:hover,
.uzel-account button.uzel-account-button-light:focus,
.uzel-account .uzel-account-upload-button:hover,
.uzel-account .uzel-account-upload-button:focus,
.uzel-account .uzel-account-exit:hover,
.uzel-account .uzel-account-exit:focus,
.uzel-account .uzel-account-setting-tile .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile .uzel-account-button-light:focus {
    background: var(--uzel-custom-secondary-hover-bg) !important;
    border-color: var(--uzel-custom-secondary-hover-bg) !important;
    color: var(--uzel-custom-secondary-hover-text) !important;
    background-image: none !important;
}

/* Кнопки-иконки: открыть, редактировать, полный редактор-иконка, удалить, картинка в редакторе */
.uzel-account .uzel-account-icon-button,
.uzel-account a.uzel-account-icon-button,
.uzel-account button.uzel-account-icon-button,
.uzel-account .uzel-account-icon-button.is-danger,
.uzel-account .uzel-account-insert-image,
.uzel-account .uzel-account-post-actions .uzel-account-icon-button,
.uzel-account .uzel-account-post-actions button.uzel-account-icon-button {
    background: var(--uzel-custom-icon-bg) !important;
    border-color: var(--uzel-custom-icon-bg) !important;
    color: var(--uzel-custom-icon-text) !important;
    background-image: none !important;
}

.uzel-account .uzel-account-icon-button:hover,
.uzel-account .uzel-account-icon-button:focus,
.uzel-account a.uzel-account-icon-button:hover,
.uzel-account a.uzel-account-icon-button:focus,
.uzel-account button.uzel-account-icon-button:hover,
.uzel-account button.uzel-account-icon-button:focus,
.uzel-account .uzel-account-icon-button.is-danger:hover,
.uzel-account .uzel-account-icon-button.is-danger:focus,
.uzel-account .uzel-account-insert-image:hover,
.uzel-account .uzel-account-insert-image:focus,
.uzel-account .uzel-account-post-actions .uzel-account-icon-button:hover,
.uzel-account .uzel-account-post-actions .uzel-account-icon-button:focus,
.uzel-account .uzel-account-post-actions button.uzel-account-icon-button:hover,
.uzel-account .uzel-account-post-actions button.uzel-account-icon-button:focus {
    background: var(--uzel-custom-icon-hover-bg) !important;
    border-color: var(--uzel-custom-icon-hover-bg) !important;
    color: var(--uzel-custom-icon-hover-text) !important;
    background-image: none !important;
}

/* Навигация ЛК тоже управляется настройками: обычные вкладки как вторичные, активная как основная */
.uzel-account .uzel-account-nav a {
    background: var(--uzel-custom-secondary-bg) !important;
    border-color: var(--uzel-custom-secondary-bg) !important;
    color: var(--uzel-custom-secondary-text) !important;
}

.uzel-account .uzel-account-nav a:hover,
.uzel-account .uzel-account-nav a:focus {
    background: var(--uzel-custom-secondary-hover-bg) !important;
    border-color: var(--uzel-custom-secondary-hover-bg) !important;
    color: var(--uzel-custom-secondary-hover-text) !important;
}

.uzel-account .uzel-account-nav a.is-active {
    background: var(--uzel-custom-primary-bg) !important;
    border-color: var(--uzel-custom-primary-bg) !important;
    color: var(--uzel-custom-primary-text) !important;
}

.uzel-account .uzel-account-nav a.is-active:hover,
.uzel-account .uzel-account-nav a.is-active:focus {
    background: var(--uzel-custom-primary-hover-bg) !important;
    border-color: var(--uzel-custom-primary-hover-bg) !important;
    color: var(--uzel-custom-primary-hover-text) !important;
}

/* Убираем цветные полоски на карточках настроек */
.uzel-account .uzel-account-setting-tile::before,
.uzel-account .uzel-account-setting-tile.is-security::before,
.uzel-account .uzel-account-setting-tile.is-reset::before,
.uzel-account .uzel-account-setting-tile.is-mail::before,
.uzel-account .uzel-account-setting-tile.is-preferences::before {
    display: none !important;
    content: none !important;
}

/* Все иконки в карточках настроек — единый синий цвет */
.uzel-account .uzel-account-setting-tile-head b,
.uzel-account .uzel-account-setting-tile.is-security .uzel-account-setting-tile-head b,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-setting-tile-head b,
.uzel-account .uzel-account-setting-tile.is-mail .uzel-account-setting-tile-head b,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-setting-tile-head b {
    background: rgba(0, 149, 255, .10) !important;
    color: var(--uzel-account-icon-blue) !important;
    box-shadow: none !important;
    border: 1px solid rgba(0, 149, 255, .18) !important;
}

/* Иконки во вкладках, кнопках и действиях наследуют цвет кнопки */
.uzel-account .uzel-account-icon,
.uzel-account .uzel-account-icon i,
.uzel-account .uzel-account-icon svg,
.uzel-account .uzel-account-icon-fa i,
.uzel-account .uzel-account-icon-material i {
    color: currentColor !important;
}

/* Но иконки в самих карточках настроек всегда синие */
.uzel-account .uzel-account-setting-tile-head b .uzel-account-icon,
.uzel-account .uzel-account-setting-tile-head b .uzel-account-icon i,
.uzel-account .uzel-account-setting-tile-head b .uzel-account-icon svg {
    color: var(--uzel-account-icon-blue) !important;
}

/* Сохранение одинаковой высоты и формы для всех типов кнопок */
.uzel-account .uzel-account-button,
.uzel-account .uzel-account-button-light,
.uzel-account .uzel-account-upload-button,
.uzel-account .uzel-account-exit {
    min-height: 42px !important;
    height: 42px !important;
    border-radius: 999px !important;
}

.uzel-account .uzel-account-icon-button,
.uzel-account .uzel-account-insert-image {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    border-radius: 999px !important;
}


/* Version 1.4.4: точечное выравнивание кнопок профиля и настроек */

/*
 * Кнопка «Загрузить» в профиле.
 * Это label, а не button/a, поэтому тема могла стилизовать её иначе.
 */
.uzel-account label.uzel-account-upload-button,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 132px !important;
    width: fit-content !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    border: 1px solid var(--uzel-custom-secondary-bg) !important;
    border-radius: 999px !important;
    background: var(--uzel-custom-secondary-bg) !important;
    color: var(--uzel-custom-secondary-text) !important;
    background-image: none !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.uzel-account label.uzel-account-upload-button:hover,
.uzel-account label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:hover,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:hover,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:focus {
    border-color: var(--uzel-custom-secondary-hover-bg) !important;
    background: var(--uzel-custom-secondary-hover-bg) !important;
    color: var(--uzel-custom-secondary-hover-text) !important;
    background-image: none !important;
    box-shadow: none !important;
    transform: none !important;
}

/*
 * Кнопки «Отправить ссылку» и «Сохранить настройки» внутри вкладки «Настройки».
 * Обе должны выглядеть как вторичные кнопки, если на них есть .uzel-account-button-light.
 */
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 160px !important;
    width: fit-content !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    border: 1px solid var(--uzel-custom-secondary-bg) !important;
    border-radius: 999px !important;
    background: var(--uzel-custom-secondary-bg) !important;
    color: var(--uzel-custom-secondary-text) !important;
    background-image: none !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
}

.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:focus,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:focus {
    border-color: var(--uzel-custom-secondary-hover-bg) !important;
    background: var(--uzel-custom-secondary-hover-bg) !important;
    color: var(--uzel-custom-secondary-hover-text) !important;
    background-image: none !important;
    box-shadow: none !important;
    transform: none !important;
}

/*
 * Иконки внутри этих кнопок тоже должны наследовать цвет кнопки.
 */
.uzel-account label.uzel-account-upload-button .uzel-account-icon,
.uzel-account label.uzel-account-upload-button .uzel-account-icon i,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon i,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon i {
    color: currentColor !important;
}

/*
 * На мобильной версии эти кнопки растягиваются как остальные кнопки форм.
 */
@media (max-width: 767px) {
    .uzel-account label.uzel-account-upload-button,
    .uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button,
    .uzel-account .uzel-account-profile-form label.uzel-account-upload-button,
    .uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button,
    .uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light,
    .uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button,
    .uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* Version 1.4.5: кнопки профиля и настроек приведены к основным кнопкам */

/*
 * Эти кнопки должны выглядеть точно как основная кнопка «Обновить пароль»:
 * - «Загрузить» в профиле;
 * - «Отправить ссылку» в настройках;
 * - «Сохранить настройки» в блоке «Профиль и уведомления».
 *
 * Поэтому здесь принудительно используем primary-настройки, а не secondary.
 */
.uzel-account label.uzel-account-upload-button,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 142px !important;
    width: fit-content !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 20px !important;
    border: 1px solid var(--uzel-custom-primary-bg) !important;
    border-radius: 999px !important;
    background: var(--uzel-custom-primary-bg) !important;
    color: var(--uzel-custom-primary-text) !important;
    background-image: none !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-shadow: none !important;
    cursor: pointer !important;
    transform: none !important;
    transition: background .18s ease, color .18s ease, border-color .18s ease !important;
}

.uzel-account label.uzel-account-upload-button:hover,
.uzel-account label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:hover,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:hover,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:focus,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:focus {
    border-color: var(--uzel-custom-primary-hover-bg) !important;
    background: var(--uzel-custom-primary-hover-bg) !important;
    color: var(--uzel-custom-primary-hover-text) !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
}

/* Иконки внутри этих кнопок должны вести себя как в основной кнопке */
.uzel-account label.uzel-account-upload-button .uzel-account-icon,
.uzel-account label.uzel-account-upload-button .uzel-account-icon i,
.uzel-account label.uzel-account-upload-button .uzel-account-icon svg,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon i,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon svg,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon i,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon svg {
    color: currentColor !important;
    fill: none !important;
    text-shadow: none !important;
}

/*
 * Старые правила .uzel-account-button-light не должны перебивать эти кнопки.
 * Даже если в HTML остался класс light, визуально они теперь primary.
 */
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light {
    border-color: var(--uzel-custom-primary-bg) !important;
    background: var(--uzel-custom-primary-bg) !important;
    color: var(--uzel-custom-primary-text) !important;
}

.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:focus {
    border-color: var(--uzel-custom-primary-hover-bg) !important;
    background: var(--uzel-custom-primary-hover-bg) !important;
    color: var(--uzel-custom-primary-hover-text) !important;
}

@media (max-width: 767px) {
    .uzel-account label.uzel-account-upload-button,
    .uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button,
    .uzel-account .uzel-account-profile-form label.uzel-account-upload-button,
    .uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button,
    .uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light,
    .uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button,
    .uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* Version 1.4.6: фикс цвета текста внутри primary-кнопок */

/*
 * Тема Impreza может красить не саму кнопку, а вложенный span/i/svg.
 * Поэтому фиксируем цвет и для самой кнопки, и для всех внутренних элементов.
 */
.uzel-account label.uzel-account-upload-button,
.uzel-account label.uzel-account-upload-button *,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button *,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button *,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button *,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light *,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button *,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light * {
    color: var(--uzel-custom-primary-text) !important;
    text-shadow: none !important;
}

.uzel-account label.uzel-account-upload-button:hover,
.uzel-account label.uzel-account-upload-button:hover *,
.uzel-account label.uzel-account-upload-button:focus,
.uzel-account label.uzel-account-upload-button:focus *,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:hover,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:hover *,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-avatar-upload label.uzel-account-upload-button:focus *,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:hover,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:hover *,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:focus,
.uzel-account .uzel-account-profile-form label.uzel-account-upload-button:focus *,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:hover *,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:focus,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:focus *,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:hover *,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:focus,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button-light:focus *,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:hover *,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:focus *,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:hover,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:hover *,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:focus,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button-light:focus * {
    color: var(--uzel-custom-primary-hover-text) !important;
    text-shadow: none !important;
}

/* Font Awesome / Material внутри этих кнопок тоже строго белые/цвет primary-текста */
.uzel-account label.uzel-account-upload-button .uzel-account-icon-fa i,
.uzel-account label.uzel-account-upload-button .uzel-account-icon-material i,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon-fa i,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button .uzel-account-icon-material i,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon-fa i,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button .uzel-account-icon-material i {
    color: var(--uzel-custom-primary-text) !important;
}

.uzel-account label.uzel-account-upload-button:hover .uzel-account-icon-fa i,
.uzel-account label.uzel-account-upload-button:hover .uzel-account-icon-material i,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:hover .uzel-account-icon-fa i,
.uzel-account .uzel-account-setting-tile.is-reset .uzel-account-button:hover .uzel-account-icon-material i,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:hover .uzel-account-icon-fa i,
.uzel-account .uzel-account-setting-tile.is-preferences .uzel-account-button:hover .uzel-account-icon-material i {
    color: var(--uzel-custom-primary-hover-text) !important;
}


/* Version 1.5.0: уровни и достижения */
.uzel-account-level-card {
    padding: 14px;
    border: 1px solid rgba(0, 149, 255, .14);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(0, 149, 255, .08), #ffffff);
    margin-bottom: 12px;
}

.uzel-account-level-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.uzel-account-level-head strong {
    color: #111827;
    font-size: 16px;
}

.uzel-account-level-head span {
    color: #0095ff;
    font-size: 13px;
    font-weight: 900;
}

.uzel-account-level-bar,
.uzel-account-achievement-card-body b {
    display: block;
    height: 7px;
    border-radius: 999px;
    background: #e7f2fb;
    overflow: hidden;
}

.uzel-account-level-bar i,
.uzel-account-achievement-card-body b i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #0095ff;
}

.uzel-account-level-card p {
    margin: 9px 0 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.4;
}

.uzel-account-achievements-grid {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}

.uzel-account-achievement-card {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 11px;
    align-items: flex-start;
    padding: 12px;
    border: 1px solid #e4edf7;
    border-radius: 16px;
    background: #ffffff;
}

.uzel-account-achievement-card.is-active {
    border-color: rgba(0, 149, 255, .28);
    background: #f4fbff;
}

.uzel-account-achievement-card.is-locked {
    opacity: .62;
}

.uzel-account-achievement-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: rgba(0, 149, 255, .10);
    color: #0095ff;
}

.uzel-account-achievement-icon i {
    font-size: 18px;
    line-height: 1;
}

.uzel-account-achievement-card-body {
    display: grid;
    gap: 5px;
}

.uzel-account-achievement-card-body strong {
    color: #111827;
    font-size: 14px;
    line-height: 1.2;
}

.uzel-account-achievement-card-body span {
    color: #64748b;
    font-size: 12.5px;
    line-height: 1.35;
}

.uzel-account-achievement-card-body em {
    color: #0095ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.uzel-account-admin-achievement-grid {
    display: grid;
    grid-template-columns: 90px 190px minmax(220px, 1fr) 180px 180px 180px 90px;
    gap: 10px;
    align-items: end;
}

.uzel-account-admin-achievement-grid label {
    display: grid;
    gap: 5px;
}

.uzel-account-admin-achievement-grid label span {
    font-size: 12px;
    font-weight: 600;
}

.uzel-account-admin-achievement-grid input[type="text"],
.uzel-account-admin-achievement-grid input[type="number"],
.uzel-account-admin-achievement-grid select {
    width: 100%;
}

@media (max-width: 1200px) {
    .uzel-account-admin-achievement-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767px) {
    .uzel-account-achievement-card {
        grid-template-columns: 38px 1fr;
    }

    .uzel-account-achievement-icon {
        width: 38px;
        height: 38px;
    }

    .uzel-account-admin-achievement-grid {
        grid-template-columns: 1fr;
    }
}


/* Version 1.6.0: форумные бейджи и расширенная активность */
.uzel-account-forum-badges {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    margin-left: 6px;
    vertical-align: middle;
}

.uzel-account-forum-badge {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 3px 7px;
    border-radius: 999px;
    background: rgba(0, 149, 255, .10);
    color: #0095ff;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

.uzel-account-forum-badge.is-best {
    background: rgba(28, 185, 129, .12);
    color: #0f9f6e;
}

.uzel-account-forum-badge.is-solved {
    background: rgba(124, 58, 237, .10);
    color: #6d28d9;
}

.uzel-forum-author-identity .uzel-account-forum-badges,
.uzel-forum-reply-meta .uzel-account-forum-badges,
.uzel-forum-solution-author .uzel-account-forum-badges {
    margin-left: 6px;
}

@media (max-width: 767px) {
    .uzel-account-forum-badges {
        margin-left: 0;
        margin-top: 5px;
    }

    .uzel-account-forum-badge {
        font-size: 10.5px;
    }
}


/* Version 1.7.0: отображение подписок на записи и статистики записей в ЛК */
.uzel-account-subsection-head {
    margin: 22px 0 12px;
}

.uzel-account-subsection-head:first-child {
    margin-top: 0;
}

.uzel-account-subsection-head h3 {
    margin: 0 0 4px;
    color: #111827;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.2;
}

.uzel-account-subsection-head p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.uzel-account-subscription-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.uzel-account-subscription-column {
    min-width: 0;
}

.uzel-account-post-list article {
    align-items: center;
}

.uzel-account-post-stat-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.uzel-account-post-stat-row span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 25px;
    padding: 0 9px;
    border: 1px solid rgba(148, 163, 184, .16);
    border-radius: 999px;
    background: #ffffff;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

.uzel-account-post-stat-row i {
    color: #0095ff;
    font-size: 12px;
    line-height: 1;
}

@media (max-width: 900px) {
    .uzel-account-subscription-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .uzel-account-post-stat-row {
        gap: 6px;
    }

    .uzel-account-post-stat-row span {
        min-height: 24px;
        padding: 0 8px;
        font-size: 11px;
    }
}


/* Version 1.8.0: ACF поля в редакторе записей */
.uzel-account-acf-panel {
    margin: 18px 0;
    padding: 18px;
    border: 1px solid #dbe7f3;
    border-radius: 22px;
    background: #fbfdff;
}

.uzel-account-acf-panel-head {
    margin-bottom: 14px;
}

.uzel-account-acf-panel-head h3 {
    margin: 0 0 5px;
    color: #111827;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.2;
}

.uzel-account-acf-panel-head p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.uzel-account-acf-fields .acf-fields {
    border: 0 !important;
    background: transparent !important;
}

.uzel-account-acf-fields .acf-field {
    padding: 14px 0 !important;
    border-top: 1px solid #edf4fb !important;
}

.uzel-account-acf-fields .acf-field:first-child {
    border-top: 0 !important;
    padding-top: 0 !important;
}

.uzel-account-acf-fields .acf-label label {
    color: #111827;
    font-size: 13px;
    font-weight: 900;
}

.uzel-account-acf-fields .acf-label p.description,
.uzel-account-acf-fields .description {
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

.uzel-account-acf-fields input[type="text"],
.uzel-account-acf-fields input[type="number"],
.uzel-account-acf-fields input[type="email"],
.uzel-account-acf-fields input[type="url"],
.uzel-account-acf-fields input[type="password"],
.uzel-account-acf-fields textarea,
.uzel-account-acf-fields select {
    max-width: 100%;
    border-color: #dbe7f3 !important;
    border-radius: 14px !important;
}

.uzel-account-admin-checkbox-list {
    display: grid;
    gap: 8px;
    max-width: 760px;
}

.uzel-account-admin-checkbox-list label {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 7px 10px;
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #ffffff;
}

.uzel-account-admin-checkbox-list code {
    margin-left: auto;
    color: #646970;
    font-size: 11px;
}

@media (max-width: 767px) {
    .uzel-account-acf-panel {
        padding: 14px;
        border-radius: 18px;
    }
}

/* Version 1.8.1: вкладка управления форумом в ЛК */
.uzel-account-forum-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 18px;
}

.uzel-account-forum-filter a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 16px;
    border: 1px solid #dbe7f3;
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.uzel-account-forum-filter a:hover,
.uzel-account-forum-filter a.is-active {
    border-color: var(--uzel-account-primary-bg, #0095ff);
    background: var(--uzel-account-primary-bg, #0095ff);
    color: var(--uzel-account-primary-text, #ffffff);
}

.uzel-account-forum-table .uzel-account-post-actions {
    flex-wrap: wrap;
}

@media (max-width: 767px) {
    .uzel-account-forum-filter {
        gap: 8px;
    }

    .uzel-account-forum-filter a {
        flex: 1 1 auto;
        min-height: 40px;
        padding: 0 12px;
    }
}

/* Version 1.8.2: предпросмотр и обрезка главной картинки записи */
.uzel-account-editor-form.is-saving {
    opacity: .78;
    pointer-events: none;
}

.uzel-account-thumbnail-preview {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    min-height: 105px;
    overflow: hidden;
    border: 1px solid #dbe7f3;
    border-radius: 18px;
    background: #f8fbff;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
    text-align: center;
}

.uzel-account-thumbnail-preview img {
    display: block;
    width: 100% !important;
    height: 105px !important;
    object-fit: cover;
    border-radius: 0 !important;
}

.uzel-account-thumbnail-preview.is-empty {
    padding: 14px;
}

.uzel-account-image-field label small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
}

.uzel-account-crop-is-open {
    overflow: hidden;
}

.uzel-account-crop-modal[hidden] {
    display: none !important;
}

.uzel-account-crop-modal,
.uzel-account-crop-modal * {
    box-sizing: border-box;
}

.uzel-account-crop-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
}

.uzel-account-crop-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .62);
    backdrop-filter: blur(6px);
}

.uzel-account-crop-modal__dialog {
    position: relative;
    width: min(920px, 100%);
    max-height: min(860px, calc(100vh - 44px));
    overflow: auto;
    padding: 24px;
    border: 1px solid rgba(219, 231, 243, .95);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .22);
}

.uzel-account-crop-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.uzel-account-crop-modal__head strong {
    display: block;
    color: #111827;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.15;
}

.uzel-account-crop-modal__head p {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.45;
}

.uzel-account-crop-modal__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    min-width: 38px;
    border: 1px solid #dbe7f3;
    border-radius: 50%;
    background: #ffffff;
    color: #334155;
    font-size: 28px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
}

.uzel-account-crop-modal__choice,
.uzel-account-crop-modal__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.uzel-account-crop-modal__crop[hidden],
.uzel-account-crop-modal__choice[hidden] {
    display: none !important;
}

/* Version 1.8.10: предпросмотр главной картинки до выбора обрезки */
.uzel-account-crop-preview[hidden] {
    display: none !important;
}

.uzel-account-crop-preview {
    width: 100%;
    margin: 0 0 16px;
    overflow: hidden;
    border: 1px solid #dbe7f3;
    border-radius: 22px;
    background: #f8fbff;
}

.uzel-account-crop-preview img {
    display: block;
    width: 100%;
    max-height: 420px;
    object-fit: contain;
    background: #f8fbff;
}

.uzel-account-crop-canvas-wrap {
    width: 100%;
    overflow: hidden;
    border: 1px solid #dbe7f3;
    border-radius: 22px;
    background: #0f172a;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
}

.uzel-account-crop-canvas-wrap canvas {
    display: block;
    width: 100%;
    height: auto;
    cursor: grab;
    touch-action: none;
}

.uzel-account-crop-canvas-wrap canvas:active {
    cursor: grabbing;
}

.uzel-account-crop-zoom {
    display: grid;
    gap: 8px;
    margin: 16px 0;
}

.uzel-account-crop-zoom span {
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}

.uzel-account-crop-zoom input[type="range"] {
    width: 100%;
}

.uzel-account-crop-note {
    margin: 12px 0 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

@media (max-width: 767px) {
    .uzel-account-crop-modal {
        align-items: flex-end;
        padding: 10px;
    }

    .uzel-account-crop-modal__dialog {
        max-height: calc(100vh - 20px);
        padding: 18px;
        border-radius: 22px;
    }

    .uzel-account-crop-modal__head strong {
        font-size: 19px;
    }

    .uzel-account-crop-modal__choice .uzel-account-button,
    .uzel-account-crop-modal__actions .uzel-account-button {
        flex: 1 1 100%;
    }

    .uzel-account-thumbnail-preview {
        width: 100%;
        min-height: 160px;
    }

    .uzel-account-thumbnail-preview img {
        height: 160px !important;
    }
}


/* Version 1.8.4: точечные кнопки только для редактора записи и загрузки картинок */
.uzel-account .uzel-account-editor-form .uzel-account-insert-image,
.uzel-account .uzel-account-editor-form .uzel-account-insert-image:hover,
.uzel-account .uzel-account-editor-form .uzel-account-insert-image:focus,
.uzel-account .uzel-account-editor-form .uzel-account-form-actions button[type="submit"].uzel-account-button,
.uzel-account .uzel-account-editor-form .uzel-account-form-actions button[type="submit"].uzel-account-button:hover,
.uzel-account .uzel-account-editor-form .uzel-account-form-actions button[type="submit"].uzel-account-button:focus,
.uzel-account-crop-modal .uzel-account-button,
.uzel-account-crop-modal .uzel-account-button:hover,
.uzel-account-crop-modal .uzel-account-button:focus,
.uzel-account-content-crop-modal .uzel-account-button,
.uzel-account-content-crop-modal .uzel-account-button:hover,
.uzel-account-content-crop-modal .uzel-account-button:focus {
    background: #0057ff !important;
    background-color: #0057ff !important;
    color: #ffffff !important;
    border-color: #0057ff !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.uzel-account .uzel-account-editor-form .uzel-account-insert-image *,
.uzel-account .uzel-account-editor-form .uzel-account-form-actions button[type="submit"].uzel-account-button *,
.uzel-account-crop-modal .uzel-account-button *,
.uzel-account-content-crop-modal .uzel-account-button * {
    color: #ffffff !important;
    text-shadow: none !important;
}

.uzel-account .uzel-account-editor-form .uzel-account-insert-image svg,
.uzel-account .uzel-account-editor-form .uzel-account-form-actions button[type="submit"].uzel-account-button svg,
.uzel-account-crop-modal .uzel-account-button svg,
.uzel-account-content-crop-modal .uzel-account-button svg {
    color: #ffffff !important;
    stroke: currentColor !important;
}

.uzel-account .uzel-account-editor-form .uzel-account-insert-image.is-loading {
    pointer-events: none;
    opacity: .7;
}

.uzel-account .uzel-account-editor-form .wp-media-buttons {
    display: none !important;
}

.uzel-account-editor-form.is-saving {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.uzel-account-thumbnail-preview img[hidden] {
    display: none !important;
}

.uzel-account-thumbnail-preview.is-empty img[src=""],
.uzel-account-thumbnail-preview.is-empty img:not([src]) {
    display: none !important;
}

/* Модальное окно обрезки картинки для вставки в текст */
.uzel-account-content-crop-modal[hidden] {
    display: none !important;
}

.uzel-account-content-crop-modal,
.uzel-account-content-crop-modal * {
    box-sizing: border-box;
}

.uzel-account-content-crop-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
}

.uzel-account-content-crop-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .62);
    backdrop-filter: blur(6px);
}

.uzel-account-content-crop-modal__dialog {
    position: relative;
    width: min(920px, 100%);
    max-height: min(860px, calc(100vh - 44px));
    overflow: auto;
    padding: 24px;
    border: 1px solid rgba(219, 231, 243, .95);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .22);
}

.uzel-account-content-crop-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.uzel-account-content-crop-modal__head strong {
    display: block;
    margin-bottom: 4px;
    color: #111827;
    font-size: 20px;
    line-height: 1.15;
}

.uzel-account-content-crop-modal__head p,
.uzel-account-content-crop-note {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.uzel-account-content-crop-modal__close {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border: 1px solid #e4edf7;
    border-radius: 50%;
    background: #f7f9fc;
    color: #334155;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.uzel-account-content-crop-modal__choice,
.uzel-account-content-crop-modal__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.uzel-account-content-crop-modal__crop {
    display: grid;
    gap: 14px;
}

.uzel-account-content-crop-canvas-wrap {
    width: 100%;
    overflow: hidden;
    border: 1px solid #dbe7f3;
    border-radius: 20px;
    background: #f8fbff;
}

.uzel-account-content-crop-canvas-wrap canvas {
    display: block;
    width: 100%;
    height: auto;
    cursor: grab;
    touch-action: none;
}

.uzel-account-content-crop-canvas-wrap canvas:active {
    cursor: grabbing;
}

.uzel-account-content-crop-zoom {
    display: grid;
    gap: 8px;
    color: #334155;
    font-size: 13px;
    font-weight: 800;
}

.uzel-account-content-crop-zoom input {
    width: 100%;
}

@media (max-width: 767px) {
    .uzel-account-content-crop-modal {
        padding: 12px;
    }

    .uzel-account-content-crop-modal__dialog {
        padding: 18px;
        border-radius: 22px;
    }

    .uzel-account-content-crop-modal__choice .uzel-account-button,
    .uzel-account-content-crop-modal__actions .uzel-account-button {
        width: 100% !important;
    }
}

/* Version 1.8.7: статус подготовки и загрузки главной картинки */
.uzel-account-image-field {
    position: relative;
}

.uzel-account-thumbnail-status {
    flex: 1 1 100%;
    margin-top: 8px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.45;
}

.uzel-account-image-field.is-thumbnail-loading .uzel-account-thumbnail-status,
.uzel-account-image-field.is-thumbnail-waiting .uzel-account-thumbnail-status {
    color: #0057ff;
}

.uzel-account-image-field.is-thumbnail-ready .uzel-account-thumbnail-status {
    color: #14804a;
}

.uzel-account-crop-modal__status {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    margin: 0 0 14px;
    padding: 10px 14px;
    border: 1px solid #dbe7f3;
    border-radius: 16px;
    background: #f8fbff;
    color: #334155;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.35;
}

.uzel-account-crop-modal.is-loading .uzel-account-crop-modal__status::before,
.uzel-account-editor-form.is-thumbnail-saving .uzel-account-form-actions button[type="submit"]::before,
.uzel-account-image-field.is-thumbnail-loading .uzel-account-thumbnail-status::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    min-width: 16px;
    border: 2px solid rgba(0,87,255,.22);
    border-top-color: #0057ff;
    border-radius: 50%;
    animation: uzelAccountSpin .75s linear infinite;
    vertical-align: -3px;
}

.uzel-account-image-field.is-thumbnail-loading .uzel-account-thumbnail-status::before {
    margin-right: 8px;
}

.uzel-account-crop-modal .uzel-account-button.is-loading,
.uzel-account-crop-modal .uzel-account-button:disabled,
.uzel-account-editor-form.is-thumbnail-saving .uzel-account-form-actions button[type="submit"] {
    cursor: wait !important;
    opacity: .78 !important;
    transform: none !important;
}

.uzel-account-editor-form.is-thumbnail-saving .uzel-account-form-actions button[type="submit"]::before {
    border-color: rgba(255,255,255,.35);
    border-top-color: #ffffff;
    margin-right: 8px;
}

@keyframes uzelAccountSpin {
    to { transform: rotate(360deg); }
}

/* Version 1.8.11: forum management tabs hover contrast */
.uzel-account .uzel-account-forum-filter a:hover,
.uzel-account .uzel-account-forum-filter a:focus,
.uzel-account .uzel-account-forum-filter a.is-active {
    border-color: var(--uzel-account-primary-bg, #0095ff) !important;
    background: var(--uzel-account-primary-bg, #0095ff) !important;
    color: #ffffff !important;
}
.uzel-account .uzel-account-forum-filter a:hover *,
.uzel-account .uzel-account-forum-filter a:focus *,
.uzel-account .uzel-account-forum-filter a.is-active * {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}
.uzel-account-list article.is-forum-report {
    border-color: rgba(220,38,38,.20) !important;
    background: #fffafa !important;
}

/* Version 1.8.12: ручные баллы, достижения и медали администрации */
.uzel-account-manual-points-note{
    margin:10px 0 0;
    padding:10px 12px;
    border-radius:14px;
    background:#eaf5ff;
    color:#007bd3;
    font-size:13px;
    font-weight:700;
}
.uzel-account-manual-awards{
    margin-top:18px;
}
.uzel-account-manual-awards h4{
    margin:0 0 10px;
    font-size:14px;
    line-height:1.25;
    color:#111827;
}
.uzel-account-manual-awards-grid{
    display:grid;
    gap:10px;
}
.uzel-account-achievement-card.is-manual{
    border-color:rgba(0,149,255,.22);
    background:linear-gradient(180deg,#ffffff 0%,#f4faff 100%);
}
.uzel-account-user-awards{
    grid-column:1/-1;
    padding:12px;
    border:1px solid rgba(15,23,42,.10);
    border-radius:16px;
    background:#f8fafc;
}
.uzel-account-user-awards summary{
    cursor:pointer;
    font-size:13px;
    font-weight:800;
    color:#111827;
}
.uzel-account-user-awards label{
    margin-top:10px;
}
.uzel-account-user-awards textarea{
    width:100%;
    min-height:84px;
    resize:vertical;
}
.uzel-account-user-awards p{
    margin:8px 0 0;
    color:#64748b;
    font-size:12px;
    line-height:1.4;
}
.uzel-account-forum-badge.is-admin-points,
.uzel-account-forum-badge.is-admin-medal{
    background:#eaf5ff;
    color:#007bd3;
    border-color:rgba(0,149,255,.22);
}

/* Version 1.8.13: ручные достижения/медали с PNG/SVG иконками */
.uzel-account-user-awards {
    width: 100%;
    grid-column: 1 / -1;
    padding: 12px;
    border: 1px solid #e3edf7;
    border-radius: 18px;
    background: #f8fbff;
}
.uzel-account-user-awards summary {
    cursor: pointer;
    color: #111827;
    font-weight: 900;
}
.uzel-account-admin-awards-editor {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}
.uzel-account-admin-awards-editor > strong {
    color: #111827;
    font-size: 14px;
}
.uzel-account-admin-awards-editor > p {
    margin: 0;
    color: #64748b;
    font-size: 12px;
    line-height: 1.35;
}
.uzel-account-admin-award-row {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
    border: 1px solid #e3edf7;
    border-radius: 16px;
    background: #fff;
}
.uzel-account-admin-award-preview {
    width: 56px;
    height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 149, 255, .16);
    border-radius: 16px;
    background: #eaf5ff;
    color: #0095ff;
    overflow: hidden;
}
.uzel-account-admin-award-preview img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    padding: 8px;
}
.uzel-account-admin-award-fields {
    display: grid;
    gap: 8px;
}
.uzel-account-admin-award-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.uzel-account-achievement-icon.is-image {
    background: #ffffff !important;
    border: 1px solid rgba(0,149,255,.16);
    color: inherit !important;
    overflow: hidden;
}
.uzel-account-achievement-icon.is-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    padding: 7px;
}
@media (max-width: 767px) {
    .uzel-account-admin-award-row {
        grid-template-columns: 1fr;
    }
    .uzel-account-admin-award-preview {
        width: 52px;
        height: 52px;
    }
}

/* Version 1.8.14: медали и достижения добавляются только по кнопке */
.uzel-account-admin-awards-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
}
.uzel-account-admin-awards-list{
    display:grid;
    gap:10px;
}
.uzel-account-admin-awards-editor script{
    display:none!important;
}
.uzel-account-button.is-danger,
.uzel-account-button.uzel-account-button-light.is-danger{
    color:#dc2626!important;
    border-color:rgba(220,38,38,.18)!important;
    background:#fff!important;
}
.uzel-account-button.is-danger:hover,
.uzel-account-button.uzel-account-button-light.is-danger:hover{
    color:#fff!important;
    border-color:#dc2626!important;
    background:#dc2626!important;
}

/* Version 1.8.15: авторские подписки и персональная лента в ЛК */
.uzel-account-subscription-tabs {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin: 18px 0 20px;
    padding: 6px;
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 20px;
    background: #f7f9fc;
}

.uzel-account-subscription-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    color: #475569;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none !important;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}

.uzel-account-subscription-tab:hover,
.uzel-account-subscription-tab.is-active {
    background: #ffffff;
    color: #0095ff;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
}

.uzel-account-author-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.uzel-account-author-card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
    padding: 16px;
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .04);
}

.uzel-account-author-card-main {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
}

.uzel-account-author-card-main img {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    border-radius: 50%;
    object-fit: cover;
}

.uzel-account-author-card-main h3 {
    margin: 0 0 4px;
    color: #111827;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.2;
}

.uzel-account-author-card-main p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.uzel-account-author-card-stats {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.uzel-account-author-card-stats span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid rgba(148, 163, 184, .16);
    border-radius: 999px;
    background: #f8fafc;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

.uzel-account-author-card-stats strong {
    color: #111827;
    font-weight: 900;
}

.uzel-account-feed-list article,
.uzel-account-subscription-post-card {
    align-items: center;
}

.uzel-account-subscription-author-line {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 8px;
    color: #0095ff;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none !important;
}

.uzel-account-subscription-author-line:hover {
    text-decoration: underline !important;
}

.uzel-account-subscription-author-line img {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
}

.uzel-account-subscription-excerpt {
    max-width: 760px;
    margin-top: 7px !important;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

@media (max-width: 900px) {
    .uzel-account-author-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .uzel-account-subscription-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 6px;
        padding: 6px;
    }

    .uzel-account-subscription-tab {
        min-height: 36px;
        padding: 0 10px;
        font-size: 12px;
    }

    .uzel-account-author-card {
        padding: 14px;
        border-radius: 18px;
    }
}
