:root {
    --admin-bg: #f7f6f3;
    --admin-surface: #ffffff;
    --admin-sidebar: #1a1a1a;
    --admin-sidebar-text: #f2f0eb;
    --admin-sidebar-muted: #a8a49c;
    --admin-text: #1a1a1a;
    --admin-muted: #6b6862;
    --admin-border: #e6e2db;
    --admin-accent: #2c2c2c;
    --admin-accent-hover: #111111;
    --admin-success: #2f6b4f;
    --admin-danger: #9b3b3b;
    --admin-radius: 8px;
    --admin-field-padding: 5px 10px;
    --admin-control-height: 32px;
    --admin-field-label-offset: calc(14px * 1.25 + 6px);
    --admin-shadow: 0 8px 24px rgba(26, 26, 26, 0.06);
    --admin-font: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

* {
    box-sizing: border-box;
}

body.admin-body {
    margin: 0;
    font-family: var(--admin-font);
    color: var(--admin-text);
    background: var(--admin-bg);
}

a {
    color: inherit;
    text-decoration: none;
}

.admin-shell {
    display: grid;
    grid-template-columns: 260px 1fr;
    min-height: 100vh;
}

.admin-sidebar {
    background: var(--admin-sidebar);
    color: var(--admin-sidebar-text);
    padding: 28px 20px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    height: 100vh;
    position: sticky;
    top: 0;
}

.admin-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 8px 0 4px;
}

.admin-brand__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.admin-brand__logo img {
    display: block;
    width: 100%;
    max-width: 45px;
    height: auto;
}

.admin-sidebar__footer {
    margin-top: auto;
}

.admin-nav {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.admin-nav__link {
    padding: 12px 14px;
    border-radius: var(--admin-radius);
    color: var(--admin-sidebar-text);
    transition: background 0.2s ease;
}

.admin-nav__link:hover,
.admin-nav__link.is-active {
    background: rgba(255, 255, 255, 0.08);
}

.admin-main {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.admin-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 32px 12px;
}

.admin-topbar__title {
    margin: 0;
    font-size: 28px;
    font-weight: 500;
}

.admin-topbar__user {
    color: var(--admin-muted);
    font-size: 14px;
}

.admin-content {
    padding: 12px 32px 32px;
}

.admin-card {
    background: var(--admin-surface);
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    box-shadow: var(--admin-shadow);
    padding: 24px;
}

.admin-card--wide {
    max-width: 1080px;
}

.admin-card--full {
    max-width: none;
}

.admin-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 0;
    align-items: start;
}

.admin-form-grid--3col {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-form-grid--2col {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-form-grid .admin-form-field--full {
    grid-column: 1 / -1;
}

.admin-checkbox-list {
    display: grid;
    gap: 10px 16px;
    margin-top: 6px;
}

.admin-checkbox-list--cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.admin-checkbox-list__item {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    font-size: 14px;
    line-height: 1.35;
    cursor: pointer;
}

.admin-checkbox-list__item input[type="checkbox"] {
    margin: 2px 0 0;
    flex-shrink: 0;
}

@media (max-width: 1200px) {
    .admin-checkbox-list--cols-5 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .admin-checkbox-list--cols-5 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.admin-work-hours__label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1.25;
}

.admin-work-hours__row {
    display: grid;
    grid-template-columns: minmax(64px, 0.7fr) auto minmax(64px, 0.7fr) minmax(72px, 0.9fr) auto minmax(72px, 0.9fr);
    gap: 8px;
    align-items: center;
}

.admin-work-hours__sep {
    color: var(--admin-muted);
    text-align: center;
    user-select: none;
}

@media (max-width: 640px) {
    .admin-work-hours__row {
        grid-template-columns: 1fr auto 1fr;
    }

    .admin-work-hours__row select:nth-child(3),
    .admin-work-hours__row select:nth-child(5),
    .admin-work-hours__row select:nth-child(7) {
        grid-column: 1 / -1;
    }

    .admin-work-hours__row .admin-work-hours__sep:nth-child(4) {
        display: none;
    }
}

.admin-form-grid--dealer-manager-row {
    align-items: start;
}

.admin-form-grid__manager-action {
    margin-top: var(--admin-field-label-offset);
    align-self: start;
}

.admin-form-grid__manager-action .admin-btn,
.admin-form-grid__inline-action .admin-btn {
    height: var(--admin-control-height);
    padding-top: 0;
    padding-bottom: 0;
    box-sizing: border-box;
    white-space: nowrap;
}

.admin-form-grid--dealer-manager-row .form-control,
.admin-form-grid--price-list-inline .form-control {
    height: var(--admin-control-height);
    box-sizing: border-box;
}

.admin-form-grid--price-list-inline input[type="file"].form-control {
    padding-top: 3px;
    padding-bottom: 3px;
    line-height: 1.25;
}

.admin-form-grid--price-list-inline {
    grid-template-columns: 1fr 1fr auto;
    align-items: start;
    gap: 16px 24px;
}

.admin-form-grid--price-list-inline .admin-form-field {
    margin-bottom: 0;
}

.admin-form-grid--price-list-inline .admin-form-field .form-label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1.25;
}

.admin-form-grid--price-list-inline .admin-form-grid__inline-action {
    margin-top: var(--admin-field-label-offset);
    align-self: start;
}

@media (max-width: 960px) {
    .admin-form-grid--3col {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .admin-form-grid--3col,
    .admin-form-grid--2col {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--dealer-manager-row {
        grid-template-columns: 1fr;
    }

    .admin-form-grid__manager-action,
    .admin-form-grid--price-list-inline .admin-form-grid__inline-action {
        margin-top: 0;
    }

    .admin-form-grid--price-list-inline {
        grid-template-columns: 1fr;
    }
}

.admin-form-grid > .form-group {
    min-width: 0;
    margin-bottom: 16px;
}

.admin-form-grid .checkbox {
    margin-top: 28px;
}

.admin-form-grid .admin-form-grid__checkbox-center {
    align-self: center;
}

.admin-form-grid .admin-form-grid__checkbox-center .checkbox {
    margin-top: 0;
    margin-bottom: 0;
}

.admin-form-grid__checkbox-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px;
    align-self: center;
}

.admin-form-grid__checkbox-row > .form-group {
    margin-bottom: 0;
}

@media (max-width: 640px) {
    .admin-form-grid {
        grid-template-columns: 1fr;
    }

    .admin-form-grid .checkbox {
        margin-top: 0;
    }

    .admin-form-grid .admin-form-grid__checkbox-center {
        align-self: start;
    }
}

.admin-product-gallery {
    width: 100%;
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--admin-border);
}

.admin-product-form__gallery {
    position: sticky;
    top: 24px;
}

.admin-product-form__gallery .admin-product-gallery {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.admin-product-form__gallery .admin-product-gallery__grid {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}

.admin-product-form__gallery .admin-media-picker--video {
    margin-top: 28px;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .admin-product-form__gallery {
        position: static;
    }

    .admin-product-form__gallery .admin-product-gallery {
        margin-top: 8px;
        padding-top: 24px;
        border-top: 1px solid var(--admin-border);
    }
}

.admin-product-gallery__header {
    margin-bottom: 16px;
}

.admin-product-gallery__title {
    margin: 0 0 8px;
    font-size: 18px;
    font-weight: 500;
}

.admin-product-gallery__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.admin-product-gallery__item {
    position: relative;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    overflow: hidden;
    background: #fff;
    cursor: grab;
}

.admin-product-gallery__item.is-dragging {
    opacity: 0.45;
    cursor: grabbing;
}

.admin-product-gallery__item.is-drag-over {
    border-color: var(--admin-accent);
    box-shadow: 0 0 0 2px rgba(26, 26, 26, 0.12);
}

.admin-product-gallery__handle {
    position: absolute;
    left: 8px;
    bottom: 8px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.92);
    color: var(--admin-muted);
    pointer-events: none;
}

.admin-product-gallery__preview {
    position: relative;
    aspect-ratio: 4 / 3;
    background: #f3f1ec;
}

.admin-product-gallery__preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.admin-product-gallery__badge {
    position: absolute;
    left: 8px;
    top: 8px;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(26, 26, 26, 0.82);
    color: #fff;
    font-size: 11px;
}

.admin-product-gallery__meta {
    padding: 10px 12px;
    font-size: 12px;
    color: var(--admin-muted);
}

.admin-product-gallery__tile-btn {
    position: absolute;
    right: 8px;
    bottom: 8px;
    z-index: 2;
    background: #fff;
}

.admin-listing-tile-modal .admin-modal__dialog {
    width: min(960px, calc(100vw - 48px));
}

.admin-listing-tile-modal__hint {
    margin-bottom: 16px;
}

.admin-listing-tile-editor {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.admin-listing-tile-editor__canvas {
    display: flex;
    align-items: stretch;
    gap: 12px;
    max-width: 100%;
}

.admin-listing-tile-editor__nudge {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    flex-shrink: 0;
}

.admin-listing-tile-editor__nudge-scale {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 4px;
    padding-top: 12px;
    border-top: 1px solid var(--admin-border);
}

.admin-listing-tile-editor__stage {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    max-width: 100%;
    background: #fcfbf2;
}

.admin-listing-tile-editor__image {
    position: absolute;
    left: 50%;
    top: 50%;
    max-width: none;
    transform-origin: center center;
    user-select: none;
    pointer-events: none;
}

.admin-listing-tile-editor__guide {
    position: absolute;
    left: 0;
    right: 0;
    height: 0;
    border-top: 0.5px dashed rgba(26, 26, 26, 0.45);
    pointer-events: none;
    z-index: 2;
}

.admin-listing-tile-editor__scale {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: min(458px, 100%);
    font-size: 14px;
}

.admin-listing-tile-editor__guide-settings {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: min(458px, 100%);
    padding-top: 4px;
    border-top: 1px solid var(--admin-border);
    font-size: 14px;
}

.admin-listing-tile-editor__guide-label {
    display: block;
}

.admin-listing-tile-editor__guide-row,
.admin-listing-tile-floor-guide__row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.admin-listing-tile-editor__guide-row .form-control,
.admin-listing-tile-editor__guide-row .admin-btn,
.admin-listing-tile-floor-guide__row .form-control,
.admin-listing-tile-floor-guide__row .admin-btn {
    height: var(--admin-control-height);
    box-sizing: border-box;
}

.admin-listing-tile-editor__guide-row .admin-btn,
.admin-listing-tile-floor-guide__row .admin-btn {
    padding-top: 0;
    padding-bottom: 0;
    white-space: nowrap;
}

.admin-listing-tile-editor__guide-number,
.admin-listing-tile-floor-guide__number {
    width: 88px;
    max-width: 88px;
    flex: 0 0 auto;
    padding-top: 0;
    padding-bottom: 0;
    line-height: calc(var(--admin-control-height) - 2px);
}

.admin-listing-tile-floor-guide {
    margin-bottom: 20px;
}

.admin-listing-tile-floor-guide__form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
}

.admin-listing-tile-floor-guide__field {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: min(420px, 100%);
    font-size: 14px;
}

.admin-listing-tile-floor-guide__label {
    display: block;
}

.admin-listing-tile-floor-guide__current {
    margin: 0 0 16px;
    font-size: 15px;
}

.admin-listing-tile-floor-guide__current strong {
    font-variant-numeric: tabular-nums;
}

.admin-listing-tile-editor__guide-current {
    margin: 0 0 12px;
    font-size: 14px;
    color: var(--admin-text-muted, #6b6862);
}

.admin-listing-tile-editor__guide-current strong {
    font-variant-numeric: tabular-nums;
    color: var(--admin-text, #1a1a1a);
}

.admin-listing-tile-floor-guide__meta {
    margin: 0;
    font-size: 13px;
}

.admin-listing-tile-editor__scale input[type="range"] {
    --listing-tile-range-pct: 20%;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 6px;
    margin: 0;
    border-radius: 999px;
    background: linear-gradient(
        to right,
        var(--admin-accent) 0%,
        var(--admin-accent) var(--listing-tile-range-pct),
        #d8d3c8 var(--listing-tile-range-pct),
        #d8d3c8 100%
    );
    cursor: pointer;
}

.admin-listing-tile-editor__scale input[type="range"]::-webkit-slider-runnable-track {
    height: 6px;
    border-radius: 999px;
    background: transparent;
}

.admin-listing-tile-editor__scale input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    margin-top: -6px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--admin-accent);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.admin-listing-tile-editor__scale input[type="range"]::-moz-range-track {
    height: 6px;
    border-radius: 999px;
    background: #d8d3c8;
}

.admin-listing-tile-editor__scale input[type="range"]::-moz-range-progress {
    height: 6px;
    border-radius: 999px;
    background: var(--admin-accent);
}

.admin-listing-tile-editor__scale input[type="range"]::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--admin-accent);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.admin-product-gallery__meta,
.admin-product-gallery__modal-name {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-product-gallery__delete {
    position: absolute;
    right: 8px;
    top: 8px;
    background: #fff;
}

.admin-product-gallery__empty {
    grid-column: 1 / -1;
    padding: 32px;
    text-align: center;
    color: var(--admin-muted);
    border: 1px dashed var(--admin-border);
    border-radius: var(--admin-radius);
    background: #faf9f7;
}

.admin-product-gallery__toolbar {
    margin-top: 16px;
}

.admin-product-gallery__actions,
.admin-media-upload-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.admin-product-gallery__actions .admin-btn,
.admin-media-upload-actions .admin-btn {
    padding: 6px 10px;
    font-size: 12px;
}

.admin-media-picker__toolbar {
    margin: 16px 0;
}

.admin-media-library__folders-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.admin-media-library__folders-row .admin-media-folders {
    flex: 1 1 auto;
    min-width: 0;
}

.admin-media-library__upload-btn {
    flex: 0 0 auto;
}

.admin-media-library__upload-warning {
    margin: 0 0 12px;
    color: #9a6700;
}

.admin-media-library__sections {
    margin-top: 4px;
}

.admin-media-library__section-title {
    margin: 0 0 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--admin-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.admin-media-library__section + .admin-media-library__section {
    margin-top: 16px;
}

.admin-media-library__card {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #fff;
    position: relative;
    cursor: pointer;
}

.admin-media-library__card.is-linked {
    opacity: 0.85;
}

.admin-media-library__card.is-selected {
    border-color: var(--admin-accent);
    box-shadow: 0 0 0 2px rgba(26, 26, 26, 0.08);
}

.admin-media-library__folder-pick-dialog {
    max-width: 420px;
}

.admin-media-library__folder-pick-label {
    display: block;
    margin-bottom: 8px;
    font-size: 13px;
}

.admin-media-picker__modal-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 8px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #fff;
    cursor: pointer;
    text-align: left;
    font: inherit;
    color: inherit;
}

.admin-media-picker__modal-item:hover {
    border-color: var(--admin-accent);
    background: #faf9f7;
}

.admin-media-picker__modal-search {
    margin-bottom: 0;
}

.admin-product-gallery__file-hint {
    margin: 10px 0 0;
}

.admin-product-gallery__modal-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 12px;
    max-height: 420px;
    overflow: auto;
    margin-top: 16px;
    padding-right: 4px;
}

.admin-product-gallery__modal-empty {
    grid-column: 1 / -1;
    margin: 24px 0;
    text-align: center;
}

.admin-product-gallery__modal-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #fff;
    cursor: pointer;
    position: relative;
}

.admin-product-gallery__modal-item.is-selected {
    border-color: var(--admin-accent);
    box-shadow: 0 0 0 2px rgba(26, 26, 26, 0.08);
}

.admin-product-gallery__modal-item.is-added {
    opacity: 0.72;
    cursor: default;
}

.admin-product-gallery__modal-check {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    width: 16px;
    height: 16px;
}

.admin-product-gallery__modal-thumb {
    aspect-ratio: 1;
    border-radius: 8px;
    overflow: hidden;
    background: #f3f1ec;
}

.admin-product-gallery__modal-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.admin-product-gallery__modal-thumb.is-broken,
.admin-product-gallery__modal-thumb:has(.admin-media-library__broken-thumb) {
    display: flex;
    align-items: center;
    justify-content: center;
}

.admin-media-library__broken-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 8px;
    text-align: center;
    font-size: 12px;
    color: var(--admin-muted);
    line-height: 1.35;
}

.admin-product-gallery__modal-thumb.is-broken::after {
    content: 'Нет превью';
    font-size: 12px;
    color: var(--admin-muted);
    text-align: center;
    padding: 8px;
}

.admin-product-gallery__modal-name {
    font-size: 12px;
    color: var(--admin-text);
    word-break: break-all;
    line-height: 1.35;
}

.admin-product-gallery__modal-tag {
    font-size: 11px;
    color: var(--admin-muted);
}

.admin-media-library__delete {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
}

.admin-product-gallery__modal-item .admin-media-library__delete {
    top: 8px;
    right: 8px;
}

.admin-media-picker__modal-item {
    position: relative;
}

.admin-media-picker__modal-item .admin-media-library__delete {
    top: 6px;
    right: 6px;
}

.admin-modal {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.admin-modal[hidden] {
    display: none !important;
}

.admin-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(26, 26, 26, 0.48);
}

.admin-modal__dialog {
    position: relative;
    width: min(920px, 100%);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
    background: var(--admin-surface);
    border-radius: var(--admin-radius);
    box-shadow: var(--admin-shadow);
    overflow: hidden;
}

.admin-modal__header,
.admin-modal__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    border-bottom: 1px solid var(--admin-border);
}

.admin-modal__footer {
    border-bottom: none;
    border-top: 1px solid var(--admin-border);
    justify-content: flex-end;
}

.admin-modal__title {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
}

.admin-modal__close {
    border: none;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: var(--admin-muted);
    padding: 0 4px;
}

.admin-modal__body {
    padding: 20px;
    overflow: auto;
}

.admin-catalog-model-novelty-modal__dialog {
    width: min(560px, 100%);
}

body.admin-modal-open {
    overflow: hidden;
}

.admin-form-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    gap: 24px;
    align-items: start;
}

.admin-form-split__aside {
    position: sticky;
    top: 24px;
}

.admin-form-split__aside .admin-media-picker {
    margin-bottom: 0;
}

@media (max-width: 900px) {
    .admin-form-split {
        grid-template-columns: 1fr;
    }

    .admin-form-split__aside {
        position: static;
    }
}

.admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

.admin-stat {
    padding: 20px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: var(--admin-surface);
}

.admin-stat__label {
    color: var(--admin-muted);
    font-size: 13px;
    margin-bottom: 8px;
}

.admin-stat__value {
    font-size: 32px;
    font-weight: 500;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
}

.admin-table th,
.admin-table td {
    padding: 12px 10px;
    border-bottom: 1px solid var(--admin-border);
    text-align: left;
    vertical-align: top;
}

.admin-table th {
    color: var(--admin-muted);
    font-size: 13px;
    font-weight: 500;
}

.admin-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border: none;
    border-radius: var(--admin-radius);
    background: var(--admin-accent);
    color: #fff;
    cursor: pointer;
    font: inherit;
}

.admin-btn:hover {
    background: var(--admin-accent-hover);
    color: #fff;
}

.admin-btn--secondary {
    background: transparent;
    color: var(--admin-text);
    border: 1px solid var(--admin-border);
}

.admin-btn--secondary:hover {
    background: #f0eeea;
    color: var(--admin-text);
    border-color: #cfc9bf;
}

.admin-btn--danger {
    background: var(--admin-danger);
}

.admin-flash {
    padding: 12px 16px;
    border-radius: var(--admin-radius);
    margin-bottom: 16px;
}

.admin-flash--success {
    background: #e8f3ed;
    color: var(--admin-success);
}

.admin-flash--error {
    background: #f8eaea;
    color: var(--admin-danger);
}

.admin-flash--warning {
    background: #fff6e6;
    color: #9a6700;
}

.admin-flash-list {
    margin: 8px 0 0;
    padding-left: 1.2rem;
}

.admin-field-hint {
    margin: 6px 0 0;
    font-size: 0.8125rem;
    line-height: 1.4;
    color: var(--admin-muted);
}

.admin-dealer-access-flash {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.admin-promo-conditions__title,
.admin-card__title {
    margin: 0 0 12px;
    font-size: 16px;
    font-weight: 600;
}

.admin-promo-conditions__list {
    margin: 0;
    padding-left: 20px;
    color: var(--admin-text, #333);
    font-size: 14px;
    line-height: 1.5;
}

.admin-promo-conditions__list--compact {
    padding-left: 16px;
    font-size: 13px;
}

.admin-promo-conditions__list--compact li + li {
    margin-top: 4px;
}

.admin-promo-conditions__cell {
    max-width: 360px;
    vertical-align: top;
}

.admin-table-row--muted td {
    background: #fafafa;
}

.admin-btn--success {
    background: var(--admin-success);
    color: #fff;
}

.admin-form .form-group {
    margin-bottom: 16px;
}

.admin-form label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1.25;
}

.admin-form .form-control {
    width: 100%;
    padding: var(--admin-field-padding);
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #fff;
    font: inherit;
}

.admin-form select.form-control {
    appearance: none;
    padding-right: 40px;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b6862' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px;
    cursor: pointer;
}

.admin-promo-grant-form .control-label {
    display: block;
    margin-bottom: 6px;
}

.admin-promo-grant-form__row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.admin-promo-grant-form__row .form-control {
    width: min(280px, 30%);
    max-width: 280px;
    flex: 0 0 auto;
    min-width: 180px;
}

.admin-promo-grant-form__row .admin-btn {
    white-space: nowrap;
    flex-shrink: 0;
}

@media (max-width: 640px) {
    .admin-promo-grant-form__row .form-control {
        width: 100%;
        max-width: none;
        flex-basis: 100%;
    }
}

.admin-body .form-control,
.admin-body .form-select,
.admin-body textarea.form-control,
.admin-body select.form-control {
    padding: var(--admin-field-padding);
}

.admin-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 16px;
}

.admin-media-card {
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    overflow: hidden;
    background: #fff;
}

.admin-media-card img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    display: block;
    background: #eee;
}

.admin-media-card__body {
    padding: 12px;
    font-size: 13px;
}

.admin-media-card__meta {
    color: var(--admin-muted);
    margin-top: 6px;
    word-break: break-all;
}

.admin-login {
    min-height: 100vh;
    display: grid;
    place-items: center;
    background: var(--admin-bg);
    padding: 24px;
}

.admin-login__card {
    width: 100%;
    max-width: 420px;
}

.admin-login__brand {
    margin-bottom: 24px;
    text-align: center;
}

.admin-login__brand h1 {
    margin: 0 0 8px;
    font-size: 24px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.admin-login__brand p {
    margin: 0;
    color: var(--admin-muted);
}

.admin-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.admin-form-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: -8px 0 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--admin-border);
}

.admin-form-toolbar--sticky {
    position: sticky;
    top: 0;
    z-index: 20;
    margin-top: 0;
    padding-top: 8px;
    padding-bottom: 16px;
    background: var(--admin-surface);
}

.admin-form-toolbar__lead {
    min-width: 0;
}

.admin-form-toolbar__back {
    display: inline-block;
}

.admin-form-toolbar__actions {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
}

.admin-catalog-model-form .admin-form-toolbar--sticky {
    margin-left: -24px;
    margin-right: -24px;
    padding-left: 24px;
    padding-right: 24px;
}

.admin-btn--sm {
    padding: 6px 12px;
    font-size: 13px;
}

.admin-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.admin-toolbar--card {
    margin-bottom: 12px;
}

.admin-toolbar__title {
    min-width: 0;
    flex: 1 1 200px;
}

.admin-card-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px 12px;
    flex: 0 1 auto;
    max-width: 100%;
}

.admin-toolbar__links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.admin-toolbar__link-form {
    margin: 0;
    display: flex;
}

.admin-toolbar-search {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 1 360px;
    min-width: 0;
    margin: 0;
}

.admin-toolbar-search__field {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
}

.admin-toolbar-search__field .help-block {
    margin: 4px 0 0;
}

.admin-toolbar-search__actions {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}

.admin-icon-btn--accent {
    background: var(--admin-accent);
    border-color: var(--admin-accent);
    color: #fff;
}

.admin-icon-btn--accent:hover {
    background: #2a2620;
    border-color: #2a2620;
    color: #fff;
}

.admin-form-section {
    margin: 24px 0;
    padding-top: 16px;
    border-top: 1px solid var(--admin-border);
}

.admin-form-section h3 {
    margin: 0 0 16px;
    font-size: 15px;
    font-weight: 600;
}

.admin-form-label-hint {
    font-size: 12px;
    font-weight: 400;
    color: var(--admin-muted);
}

.admin-form-section-title {
    margin: 0 0 16px;
    font-size: 15px;
    font-weight: 600;
}

.admin-form-details {
    margin-top: 24px;
    border-top: 1px solid var(--admin-border, #e5e7eb);
    padding-top: 16px;
}

.admin-form-details__summary {
    cursor: pointer;
    font-weight: 600;
    margin-bottom: 12px;
    list-style: none;
}

.admin-form-details__summary::-webkit-details-marker {
    display: none;
}

.admin-form-details__body {
    margin-top: 12px;
}

.admin-model-form__dimensions-head {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
    margin-bottom: 12px;
}

.admin-model-form__dimensions-head .admin-form-section-title {
    margin-bottom: 0;
}

.admin-model-form__dimensions-body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
    align-items: start;
}

.admin-model-form__dimensions-hint {
    margin: 0 0 6px;
    font-size: 14px;
    line-height: 1.25;
}

.admin-model-form__dimensions-fields label {
    line-height: 1.25;
}

.admin-model-form__dimensions-gallery-field {
    margin-bottom: 0;
}

.admin-model-form__dimensions-gallery-field > .form-label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1.25;
}

.admin-model-form__dimensions-gallery-field .admin-product-gallery__header {
    display: none;
}

.admin-model-form__dimensions-media .admin-product-gallery {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.admin-form-section-title--materials {
    margin-top: 8px;
}

.admin-model-form__dimensions-media .admin-product-gallery__grid {
    margin-top: 0;
    margin-bottom: 16px;
}

.admin-model-form__dimensions {
    margin-bottom: 8px;
}

@media (max-width: 767.98px) {
    .admin-model-form__dimensions-head,
    .admin-model-form__dimensions-body {
        grid-template-columns: 1fr;
    }

    .admin-model-form__dimensions-head {
        gap: 0;
        margin-bottom: 16px;
    }

    .admin-model-form__dimensions-head .admin-form-section-title + .admin-form-section-title {
        margin-top: 12px;
    }

    .admin-model-form__dimensions-media {
        margin-top: 16px;
    }
}

.admin-muted {
    color: var(--admin-muted);
    font-size: 12px;
}

@media (max-width: 900px) {
    .admin-shell {
        grid-template-columns: 1fr;
    }

    .admin-sidebar {
        padding: 16px;
    }

    .admin-topbar,
    .admin-content {
        padding-left: 16px;
        padding-right: 16px;
    }
}

.admin-link {
    color: var(--admin-accent);
    text-decoration: underline;
    font-size: 14px;
}

.admin-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    background: #eceae4;
    color: var(--admin-text);
}

.admin-badge--new { background: #e8f0ff; color: #2b4c7e; }
.admin-badge--in_progress,
.admin-badge--confirmed,
.admin-badge--production { background: #fff4df; color: #8a6116; }
.admin-badge--closed,
.admin-badge--completed,
.admin-badge--ready { background: #e8f3ed; color: #2f6b4f; }
.admin-badge--rejected,
.admin-badge--cancelled { background: #f8eaea; color: #9b3b3b; }
.admin-badge--shipping { background: #eef0ff; color: #4a4e8a; }

.admin-detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px 24px;
}

.admin-detail-label {
    display: block;
    color: var(--admin-muted);
    font-size: 13px;
    margin-bottom: 4px;
}

.admin-table--header-filters thead th {
    vertical-align: middle;
}

.admin-table-header-filter {
    width: 100%;
    min-width: 120px;
    max-width: 220px;
    font-weight: 500;
    font-size: 13px;
    padding: 6px 8px;
}

.admin-table-col--icon {
    width: 1%;
    white-space: nowrap;
    text-align: center;
}

.admin-table-col--icon .admin-table-header-filter {
    min-width: 96px;
    max-width: 120px;
}

.admin-filter-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px 16px;
    align-items: end;
}

.admin-filter-grid--leads {
    grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(220px, 1.2fr) auto;
}

.admin-card--table-scroll {
    overflow-x: auto;
}

.admin-table--leads {
    min-width: 0;
}

.admin-table--leads td,
.admin-table--leads th {
    vertical-align: top;
}

.admin-detail-grid--leads {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.admin-dealers-filter-card {
    margin-bottom: 16px;
}

.admin-dealers-filter-bar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px 24px;
    flex-wrap: wrap;
}

.admin-dealers-filter-bar__search {
    flex: 1 1 420px;
    min-width: 0;
}

.admin-filter-grid--dealers-search {
    grid-template-columns: minmax(180px, 1.4fr) auto;
}

.admin-dealers-grid-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px 16px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.admin-dealers-grid-toolbar .summary {
    margin: 0;
    color: var(--admin-muted);
    font-size: 13px;
}

.admin-dealers-grid-toolbar__actions {
    margin-left: auto;
}

.admin-dealers-grid-toolbar__btn {
    white-space: nowrap;
}

.admin-global-price-upload {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-width: 0;
    flex: 0 0 auto;
    padding-bottom: 16px;
}

.admin-global-price-upload__label {
    font-size: 12px;
    color: var(--admin-muted);
    white-space: nowrap;
}

.admin-global-price-upload__file {
    font-size: 12px;
    color: var(--admin-text);
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-global-price-upload__form {
    display: inline-flex;
    margin: 0;
}

.admin-global-price-upload__input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.admin-global-price-upload__btn {
    flex-shrink: 0;
    cursor: pointer;
}

.admin-dealers-toolbar {
    margin-bottom: 16px;
}

.admin-dealers-toolbar__row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px 32px;
    flex-wrap: wrap;
}

.admin-dealers-toolbar__field {
    margin: 0;
    min-width: 0;
}

.admin-dealers-toolbar__field--price,
.admin-dealers-toolbar__field--order-form {
    flex: 0 1 auto;
    max-width: min(100%, 420px);
}

.admin-dealers-toolbar__field--cashback {
    flex: 0 0 auto;
    margin-left: auto;
}

.admin-dealers-toolbar__field--cashback .admin-form-field {
    margin-bottom: 0;
}

.admin-dealers-toolbar__control {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: var(--admin-control-height, 34px);
}

.admin-dealers-toolbar__file {
    font-size: 14px;
    color: var(--admin-text);
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-dealers-toolbar__file-placeholder {
    font-size: 14px;
}

.admin-dealers-toolbar__days-input {
    width: 96px;
    min-width: 96px;
}

.admin-dealers-toolbar__icon-form {
    display: inline-flex;
    margin: 0;
    flex-shrink: 0;
}

.admin-dealers-toolbar__icon-btn {
    flex-shrink: 0;
    cursor: pointer;
}

.admin-form-grid--dealer-pricing {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1100px) {
    .admin-form-grid--dealer-pricing {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-dealers-toolbar__row {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-dealers-toolbar__field--cashback {
        margin-left: 0;
    }

    .admin-global-price-upload {
        justify-content: flex-start;
        padding-bottom: 0;
    }
}

.admin-filter-card {
    margin-bottom: 16px;
}

.admin-filter-actions {
    display: flex;
    gap: 8px;
    align-items: center;
    white-space: nowrap;
    padding-bottom: 16px;
}

.admin-table-actions {
    width: 96px;
    white-space: nowrap;
}

.admin-table-actions .admin-icon-btn + .admin-icon-btn {
    margin-left: 4px;
}

.admin-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    color: var(--admin-text);
    background: #fff;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.admin-icon-btn:hover {
    background: var(--admin-bg);
    border-color: #cfc9bf;
    color: var(--admin-accent);
}

.admin-icon-btn--danger {
    color: var(--admin-danger);
}

.admin-icon-btn--danger:hover {
    background: #f8eaea;
    border-color: #e7caca;
    color: var(--admin-danger);
}

.admin-icon {
    width: 18px;
    height: 18px;
    display: block;
}

.admin-filter-form .help-block {
    color: var(--admin-danger);
    font-size: 13px;
}

.admin-form .help-block {
    color: var(--admin-danger);
    font-size: 13px;
    margin-top: 6px;
}

.admin-form .has-error .form-control,
.admin-form .has-error input[type="text"],
.admin-form .has-error input[type="number"],
.admin-form .has-error select,
.admin-form .has-error textarea {
    border-color: var(--admin-danger);
}

.admin-form-errors {
    margin-bottom: 20px;
    padding: 12px 16px;
    border-radius: 8px;
    background: #f8eaea;
    border: 1px solid #e7caca;
    color: var(--admin-danger);
    font-size: 14px;
}

.admin-form-errors ul {
    margin: 8px 0 0;
    padding-left: 18px;
}

.admin-form-notice {
    margin: 0 0 16px;
    padding: 12px 16px;
    border-radius: 8px;
    background: #fff8e6;
    border: 1px solid #f0dfa0;
    color: #8a6d1f;
}

.admin-table a {
    color: var(--admin-accent);
}

.admin-table-thumb {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid var(--admin-border);
    display: block;
    background: #f0eeea;
}

.admin-table-thumb--empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--admin-muted);
    font-size: 13px;
}

.admin-media-picker {
    margin-bottom: 24px;
    padding: 16px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #faf9f7;
}

.admin-media-picker__preview {
    position: relative;
    width: 100%;
    max-width: none;
    aspect-ratio: 4 / 3;
    border: 1px dashed var(--admin-border);
    border-radius: var(--admin-radius);
    overflow: hidden;
    display: grid;
    place-items: center;
    background: #fff;
    margin-bottom: 12px;
}

.admin-media-picker__listing-tile-btn {
    position: absolute;
    right: 4px;
    bottom: 4px;
    z-index: 3;
    pointer-events: auto;
}

.admin-media-picker--compact .admin-media-picker__listing-tile-btn {
    width: 28px;
    height: 28px;
    padding: 0;
}

.admin-media-picker--compact .admin-media-picker__listing-tile-btn .admin-icon {
    width: 14px;
    height: 14px;
}

.admin-media-picker__preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.admin-media-picker__preview video {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    background: #000;
}

.admin-media-picker--video .admin-media-picker__preview {
    aspect-ratio: 16 / 9;
}

.admin-media-card video {
    width: 100%;
    height: 140px;
    object-fit: cover;
    display: block;
    background: #000;
}

.admin-product-gallery__modal-thumb video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    background: #000;
}

.admin-media-picker__preview.is-empty {
    background: #f3f1ec;
}

.admin-media-picker__placeholder {
    color: var(--admin-muted);
    font-size: 14px;
}

.admin-media-picker__section + .admin-media-picker__section {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--admin-border);
}

.admin-media-picker__section-title {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 10px;
    color: var(--admin-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.admin-media-picker__library {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
    gap: 8px;
    max-height: 220px;
    overflow: auto;
    padding-right: 4px;
}

.admin-media-picker__item {
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 0;
    overflow: hidden;
    cursor: pointer;
    background: #fff;
    aspect-ratio: 1;
}

.admin-media-picker__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.admin-media-picker__item.is-selected {
    border-color: var(--admin-accent);
}

.admin-media-picker__file-hint {
    margin: 10px 0 0;
}

.admin-media-picker__error {
    margin: 8px 0 0;
    color: var(--admin-danger);
}

@media (max-width: 1100px) {
    .admin-filter-grid--leads,
    .admin-filter-grid--dealers-search {
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    }

    .admin-dealers-filter-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-global-price-upload {
        justify-content: flex-start;
        padding-bottom: 0;
    }

    .admin-filter-actions {
        padding-bottom: 0;
    }

    .admin-grid[style*="1fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
}

.admin-settings-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}

.admin-settings-nav__link {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid var(--admin-border);
    background: #fff;
    color: var(--admin-text);
    text-decoration: none;
    font-size: 14px;
}

.admin-settings-nav__link.is-active,
.admin-settings-nav__link:hover {
    border-color: var(--admin-accent);
    background: #f7f6f3;
}

.admin-settings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 12px;
}

.admin-settings-card {
    display: flex;
    align-items: center;
    min-height: 72px;
    padding: 16px 18px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #fff;
    color: var(--admin-text);
    text-decoration: none;
    font-weight: 500;
}

.admin-settings-card:hover {
    border-color: var(--admin-accent);
    background: #faf9f7;
}

.admin-product-dimensions {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid var(--admin-border);
}

.admin-product-dimensions__title {
    margin: 0 0 16px;
    font-size: 18px;
    font-weight: 500;
}

.admin-form-grid--single {
    grid-template-columns: 1fr;
}

.admin-toolbar--inset {
    margin-bottom: 20px;
}

.admin-fabric-manufacturer__custom-row {
    display: flex;
    gap: 8px;
    align-items: flex-start;
}

.admin-fabric-manufacturer__field {
    flex: 1;
    margin-bottom: 0;
}

.admin-fabric-manufacturer__back {
    flex-shrink: 0;
    min-width: 42px;
    padding: 8px 12px;
}

.admin-related-products {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid var(--admin-border);
}

.admin-table--compact td,
.admin-table--compact th {
    padding: 8px 12px;
    font-size: 14px;
}

.admin-table--fabric-categories tbody td {
    border-bottom: none;
    padding-top: 8px;
    padding-bottom: 8px;
}

.admin-table--fabric-categories .admin-fabric-categories__range-head,
.admin-table--fabric-categories .admin-fabric-categories__range {
    width: 190px;
    padding-left: 8px;
    padding-right: 8px;
}

.admin-fabric-categories__range-fields {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 174px;
}

.admin-fabric-categories__range-fields .admin-input--narrow {
    flex: 0 0 84px;
    min-width: 84px;
    max-width: 84px;
    width: 84px;
    padding-left: 8px;
    padding-right: 8px;
}

.admin-fabric-swatches {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
}

.admin-fabric-swatches__dot {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1px solid rgba(26, 26, 26, 0.12);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

.admin-fabric-swatches__more {
    font-size: 13px;
    color: var(--admin-muted);
    line-height: 1;
}

.admin-fabric-collection-name {
    font-weight: 500;
}

.admin-fabric-colors {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid var(--admin-border);
}

.admin-fabric-colors__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.admin-fabric-color-row {
    display: grid;
    grid-template-columns: auto minmax(140px, 1fr) minmax(380px, 480px) auto;
    gap: 16px;
    align-items: start;
    padding: 16px;
    border: 1px solid var(--admin-border);
    border-radius: var(--admin-radius);
    background: #fff;
}

.admin-fabric-color-row__swatch {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.admin-fabric-color-row__dot {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgba(26, 26, 26, 0.12);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.admin-fabric-color-row__hex-picker {
    width: 40px;
    height: 28px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.admin-fabric-color-row__fields {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    align-items: end;
}

.admin-fabric-color-row__field {
    margin: 0;
}

.admin-fabric-color-row__media {
    min-width: 0;
}

.admin-fabric-color-row__media .admin-media-picker {
    width: 100%;
}

.admin-fabric-color-row__media .admin-media-picker__preview {
    max-width: 100%;
    width: 100%;
    max-height: 110px;
    min-height: 80px;
}

.admin-fabric-color-row__media .admin-media-picker__preview img {
    max-height: 110px;
    width: 100%;
    object-fit: cover;
}

.admin-fabric-color-row__media .admin-media-picker--compact .admin-media-picker__preview {
    max-width: 100%;
    width: 100%;
    max-height: 110px;
    min-height: 80px;
    margin-bottom: 10px;
}

.admin-fabric-color-row__media .admin-media-picker--compact .admin-media-picker__preview img {
    max-height: 110px;
    width: 100%;
    object-fit: cover;
}

.admin-fabric-color-row__media .admin-media-picker__toolbar {
    margin-top: 8px;
}

.admin-fabric-color-row__media .admin-media-upload-actions {
    flex-wrap: nowrap;
    gap: 10px;
}

.admin-fabric-color-row__media .admin-media-picker--compact .admin-media-upload-actions {
    flex-wrap: nowrap;
    gap: 10px;
}

.admin-fabric-color-row__media .admin-media-picker--compact .admin-btn {
    flex: 0 0 auto;
    white-space: nowrap;
}

.admin-fabric-colors__add-controls {
    display: flex;
    gap: 12px;
    align-items: center;
}

.admin-fabric-colors__add-controls .admin-fabric-colors__picker {
    flex: 1;
    min-width: 0;
}

.admin-fabric-color-link-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--admin-border);
}

.admin-fabric-color-link-row__label {
    flex: 1;
    min-width: 0;
}

.admin-fabric-colors__toolbar {
    margin-top: 16px;
    margin-bottom: 8px;
}

.admin-fabric-colors__table {
    margin-top: 0;
}

.admin-fabric-colors__thumb {
    width: 40px;
    height: 40px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid var(--admin-border);
}

.admin-fabric-colors__empty.hidden {
    display: none;
}

.admin-fabric-colors__description-store {
    display: none !important;
}

.admin-input--narrow {
    max-width: 120px;
}

.admin-fabric-color-modal .admin-modal__dialog {
    max-width: 640px;
}

.admin-fabric-color-modal #fabric-color-modal-library-gallery {
    margin-top: 20px;
}

.admin-fabric-color-modal #fabric-color-modal-library-gallery .admin-product-gallery__grid {
    min-height: 72px;
}

.admin-media-library__modal {
    z-index: 1300;
}

.admin-media-library__folder-pick {
    z-index: 1310;
}

.admin-fabric-colors__library-photos-store {
    display: none !important;
}

.admin-fabric-colors__library-col {
    width: 72px;
    text-align: center;
    white-space: nowrap;
}

.admin-fabric-colors__table th.admin-fabric-colors__library-col {
    font-size: 12px;
}

.admin-fabric-colors__library-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--admin-surface-muted, #f3f2ef);
    border: 1px solid var(--admin-border);
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    color: var(--admin-text, #1a1a1a);
}

.admin-form-checks {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 16px 0;
}

.admin-fabric-import {
    padding: 16px 20px;
}

.admin-fabric-import__head {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-bottom: 12px;
}

.admin-fabric-import__head .admin-form-section-title {
    margin: 0;
}

.admin-fabric-import__head .admin-muted {
    margin: 0;
    font-size: 13px;
}

.admin-fabric-import__row {
    display: grid;
    grid-template-columns: minmax(200px, 1.1fr) minmax(170px, 0.9fr) minmax(0, 1.6fr) auto;
    gap: 12px 16px;
    align-items: end;
}

.admin-fabric-import__row .form-group {
    margin-bottom: 0;
}

.admin-fabric-import__row .form-label {
    margin-bottom: 4px;
    font-size: 13px;
}

.admin-fabric-import__checks {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 14px;
    min-height: 42px;
    padding-bottom: 2px;
    font-size: 13px;
}

.admin-fabric-import__checks label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    line-height: 1.35;
}

.admin-fabric-import__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 8px;
    padding-bottom: 2px;
}

.admin-fabric-import__download {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding-bottom: 2px;
}

.admin-import-loader {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(2px);
}

.admin-import-loader--corner {
    inset: auto;
    top: auto;
    left: auto;
    right: 24px;
    bottom: 24px;
    display: block;
    padding: 0;
    background: transparent;
    backdrop-filter: none;
    pointer-events: none;
}

.admin-import-loader[hidden] {
    display: none !important;
}

.admin-import-loader__panel {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    max-width: 420px;
    width: 100%;
    padding: 28px 32px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 20px 48px rgba(15, 23, 42, 0.18);
    text-align: center;
}

.admin-import-loader--corner .admin-import-loader__panel {
    pointer-events: auto;
    width: min(360px, calc(100vw - 48px));
    max-width: 360px;
    padding: 20px 22px;
    text-align: left;
    align-items: stretch;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
    border: 1px solid #e2e8f0;
}

.admin-import-loader--corner .admin-import-loader__spinner {
    align-self: center;
}

.admin-import-loader__spinner {
    width: 40px;
    height: 40px;
    border: 3px solid #e2e8f0;
    border-top-color: #2563eb;
    border-radius: 50%;
    animation: admin-import-loader-spin 0.8s linear infinite;
}

.admin-import-loader__success {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #16a34a;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
}

.admin-import-loader__success::before {
    content: '✓';
}

.admin-import-loader__success[hidden] {
    display: none !important;
}

.admin-import-loader--success .admin-import-loader__text {
    color: #15803d;
}

.admin-import-loader--success .admin-import-progress__bar {
    background: #16a34a;
}

.admin-import-loader__text {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #0f172a;
}

.admin-import-loader__hint {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
}

.admin-import-progress {
    width: 100%;
    height: 8px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
}

.admin-import-progress__bar {
    height: 100%;
    width: 0;
    background: #2563eb;
    transition: width 0.25s ease;
}

.admin-import-conflict {
    width: 100%;
    margin-top: 4px;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
    text-align: left;
}

.admin-import-conflict[hidden] {
    display: none !important;
}

.admin-import-conflict__actions {
    flex-wrap: wrap;
    gap: 8px;
}

.admin-import-conflict__actions .admin-btn {
    flex: 1 1 auto;
    min-width: 140px;
}

body.admin-import-loading:not(.admin-import-loading--disabled) {
    overflow: hidden;
}

.admin-import-progress--indeterminate {
    overflow: hidden;
}

.admin-import-progress--indeterminate .admin-import-progress__bar {
    width: 35%;
    animation: admin-import-progress-indeterminate 1.4s ease-in-out infinite;
}

@keyframes admin-import-progress-indeterminate {
    0% {
        transform: translateX(-120%);
    }
    100% {
        transform: translateX(320%);
    }
}

.admin-btn--disabled {
    pointer-events: none;
    opacity: 0.55;
}

@keyframes admin-import-loader-spin {
    to {
        transform: rotate(360deg);
    }
}

.admin-import-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.admin-form .admin-fabric-colors ~ .admin-actions {
    margin-top: 32px;
}

.admin-media-picker--compact .form-group {
    margin-bottom: 0;
}

.admin-media-picker--compact .admin-media-picker__preview {
    max-width: 96px;
    max-height: 72px;
    margin-bottom: 8px;
}

.admin-media-picker--compact .admin-media-picker__preview img {
    max-height: 72px;
    object-fit: cover;
}

.admin-media-picker--compact .admin-media-picker__toolbar {
    margin-top: 16px;
}

.admin-form-grid--collection-head {
    grid-template-columns: 2fr 1.5fr 1fr 100px auto;
    align-items: end;
}

.admin-promo-period-head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px 24px;
    margin-bottom: 20px;
}

.admin-promo-period-head .admin-form-section-title {
    margin-bottom: 0;
}

.admin-promo-period-head__title-block .admin-hint {
    margin: 4px 0 0;
}

.admin-promo-period-head__dates {
    flex: 0 1 480px;
    margin-bottom: 0;
}

.admin-form-grid--promo-banner-dates {
    grid-template-columns: 1fr 1fr;
    align-items: end;
    max-width: 480px;
}

.admin-form-grid--catalog-promotion-head {
    grid-template-columns: minmax(0, 2fr) minmax(180px, 1.2fr) minmax(100px, 140px);
    grid-template-rows: auto auto;
    align-items: end;
    row-gap: 6px;
    margin-bottom: 0;
}

.admin-form-grid--catalog-promotion-head > .form-group {
    margin-bottom: 0;
}

.admin-catalog-promotion-discount-hint {
    grid-column: 2 / 4;
    grid-row: 1;
    justify-self: end;
    margin: 0;
    font-size: 12px;
    line-height: 1.35;
    color: var(--admin-muted, #6b7280);
    text-align: right;
    white-space: nowrap;
}

.admin-catalog-promotion-head-title {
    grid-column: 1;
    grid-row: 2;
}

.admin-catalog-promotion-head-discount-type {
    grid-column: 2;
    grid-row: 2;
}

.admin-catalog-promotion-head-discount-value {
    grid-column: 3;
    grid-row: 2;
}

.admin-form-grid--promo-banner-head-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(148px, 172px) minmax(148px, 172px);
    column-gap: 16px;
    align-items: end;
    margin-bottom: 16px;
}

.admin-promo-banner-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(200px, 260px);
    column-gap: 24px;
    align-items: start;
    margin-bottom: 20px;
}

.admin-promo-banner-split__fields {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.admin-promo-banner-split__fields > .form-group {
    margin-bottom: 0;
}

.admin-promo-banner-split__media .admin-media-picker {
    margin-bottom: 0;
}

.admin-form-grid--promo-banner-prices {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: end;
}

.admin-promo-banner-split__fields .admin-form-grid--promo-banner-prices .form-group {
    margin-bottom: 0;
}

.admin-form-grid--promo-banner-promo-bar {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.5fr) auto;
    align-items: end;
}

.admin-promo-template-select--pending {
    font-weight: 500;
    color: var(--admin-text);
}

.admin-promo-bar-summary {
    margin: 8px 0 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--admin-text);
}

.admin-promo-banner-form__promo-actions .admin-btn {
    white-space: nowrap;
}

.admin-promo-marketing-section__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 16px;
    margin-bottom: 8px;
}

.admin-promo-marketing-section__head-main {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    min-width: 0;
}

.admin-promo-marketing-section__head .admin-form-section-title {
    margin: 0;
}

.admin-promo-marketing-section__create-btn {
    flex-shrink: 0;
}

.admin-promo-banner-create-modal__dialog,
.admin-promo-popup-create-modal__dialog {
    width: min(920px, calc(100vw - 32px));
    max-height: calc(100vh - 48px);
}

.admin-promo-banner-create-modal .admin-modal__header,
.admin-promo-popup-create-modal .admin-modal__header {
    align-items: center;
    gap: 12px;
}

.admin-modal__header-title-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    min-width: 0;
}

.admin-promo-banner-create-modal .admin-modal__header .admin-modal__title,
.admin-promo-popup-create-modal .admin-modal__header .admin-modal__title {
    margin: 0;
}

.admin-promo-marketing-section--popup .admin-card {
    border-left: 4px solid #6b5b95;
}

.admin-promo-marketing-section--feed .admin-card {
    border-left: 4px solid #2a7a6f;
}

.admin-promo-type-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    margin-bottom: 4px;
}

.admin-promo-type-head__title {
    margin: 0;
}

.admin-promo-type-head__hint {
    margin: 0 0 16px;
}

.admin-promo-type-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.admin-promo-type-badge--feed {
    background: #e6f4f1;
    color: #1a5c52;
}

.admin-promo-type-badge--popup {
    background: #ede8f5;
    color: #4a3d6b;
}

.admin-promo-status {
    font-size: 13px;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .admin-promo-period-head {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-promo-period-head__dates {
        flex-basis: auto;
        max-width: none;
    }

    .admin-form-grid--promo-banner-dates {
        max-width: none;
    }

    .admin-promo-banner-split {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--promo-banner-prices {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 16px;
    }
}

@media (max-width: 720px) {
    .admin-form-grid--promo-banner-head-row {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--catalog-promotion-head {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .admin-catalog-promotion-discount-hint,
    .admin-catalog-promotion-head-title,
    .admin-catalog-promotion-head-discount-type,
    .admin-catalog-promotion-head-discount-value {
        grid-column: 1;
        grid-row: auto;
        justify-self: stretch;
    }

    .admin-catalog-promotion-discount-hint {
        white-space: normal;
        text-align: left;
        margin-bottom: 4px;
    }
}

.admin-form-grid--fabric-row-1 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-form-grid--fabric-row-2 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-form-grid--fabric-row-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-form-grid--fabric-row-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-form-grid--fabric-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 16px 32px;
}

.admin-form-grid--fabric-meta .checkbox {
    margin-top: 0;
}

.admin-fabric-collection-cert {
    flex: 1 1 320px;
    max-width: 420px;
}

.admin-fabric-collection-cert .admin-media-picker {
    margin-bottom: 0;
}

.admin-fabric-collection-cert__hint {
    margin: 0 0 6px;
    font-size: 12px;
}

.admin-fabric-collection-cert__source {
    margin: 8px 0 0;
    font-size: 12px;
    line-height: 1.4;
    word-break: break-all;
}

.admin-fabric-collection-cert__source a {
    color: inherit;
    text-decoration: underline;
}

.admin-form-grid--collection-head .checkbox {
    margin-bottom: 0;
    padding-top: 28px;
}

.admin-form-grid--prices,
.admin-form-grid--prices-8 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-model-prices {
    margin-bottom: 0;
}

.admin-model-prices__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 4px 0;
}

.admin-model-prices__summary-lead {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.admin-model-prices__toggle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--admin-border, #e5e7eb);
    border-radius: 10px;
    background: #f3f4f6;
    color: var(--admin-text, #1a1a1a);
    flex-shrink: 0;
    transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.admin-model-prices__toggle-icon .admin-icon {
    width: 20px;
    height: 20px;
}

.admin-model-prices[open] .admin-model-prices__toggle-icon {
    transform: rotate(180deg);
    background: var(--admin-text, #1a1a1a);
    border-color: var(--admin-text, #1a1a1a);
    color: #fff;
}

.admin-model-prices__summary:hover .admin-model-prices__toggle-icon {
    border-color: var(--admin-text, #1a1a1a);
}

.admin-model-prices__summary-title {
    font-size: 16px;
}

.admin-model-prices__summary-meta {
    font-size: 13px;
    font-weight: 400;
    color: var(--admin-muted, #666);
}

.admin-model-prices__header {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-bottom: 16px;
}

.admin-model-prices__header .admin-form-section-title {
    margin-bottom: 0;
}

.admin-model-prices__header:empty {
    display: none;
}

.admin-model-prices__add:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

.admin-model-prices__error {
    margin: 12px 0 0;
    font-size: 13px;
    color: var(--admin-danger);
}

.admin-model-prices__grid {
    margin-bottom: 0;
}

.admin-model-prices__grid > .form-group {
    margin-bottom: 16px;
}

.admin-model-prices__label-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
}

.admin-model-prices__label-row .form-label {
    margin-bottom: 0;
    min-width: 0;
}

.admin-model-prices__remove {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
}

.admin-model-prices__remove:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

.admin-form-divider {
    margin: 28px 0;
    border: none;
    border-top: 1px solid var(--admin-border);
}

.admin-form-stack .form-group {
    margin-bottom: 12px;
}

.admin-form-grid--dimensions-main,
.admin-form-grid--dimensions-extra {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 24px;
    align-items: stretch;
}

.admin-form-grid--dimensions-extra {
    margin-top: 0;
}

.admin-model-form__dimensions-fields .admin-form-grid--dimensions-main > .form-group,
.admin-model-form__dimensions-fields .admin-form-grid--dimensions-extra > .form-group {
    display: grid;
    gap: 6px;
    margin-bottom: 16px;
    min-width: 0;
}

.admin-model-form__dimensions-fields .admin-form-grid--dimensions-main > .form-group,
.admin-model-form__dimensions-fields .admin-form-grid--dimensions-extra > .form-group {
    grid-template-rows: minmax(1.25em, auto) auto;
}

.admin-model-form__dimensions-folder-url {
    margin-top: -8px;
    margin-bottom: 0;
}

.admin-model-form__dimensions-folder-url .form-label {
    margin-bottom: 6px;
}

.admin-model-form__dimensions-fields .admin-form-grid--dimensions-main label,
.admin-model-form__dimensions-fields .admin-form-grid--dimensions-extra label {
    margin-bottom: 0;
    line-height: 1.25;
}

.admin-model-form__dimensions-fields .admin-form-grid--dimensions-main .form-control,
.admin-model-form__dimensions-fields .admin-form-grid--dimensions-extra .form-control {
    width: 100%;
}

@media (max-width: 1199.98px) {
    .admin-model-form__dimensions-fields .admin-form-grid--dimensions-main,
    .admin-model-form__dimensions-fields .admin-form-grid--dimensions-extra {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.admin-form-grid--materials {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
}

.admin-model-filter-slot {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 100%;
}

.admin-model-filter-size {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: auto;
    padding-top: 12px;
}

.admin-model-filter-size__title {
    font-size: 14px;
    line-height: 1.2;
}

.admin-model-filter-size__fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.admin-model-filter-size__fields .form-group {
    margin-bottom: 0;
}

.admin-form-grid--materials > .form-group {
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.admin-form-grid--materials textarea.form-control {
    flex: 1 1 auto;
    min-height: 72px;
    resize: vertical;
}

.admin-model-form__media > .admin-product-gallery:first-child,
.admin-model-form__media > .admin-media-picker:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.admin-model-form__media > .admin-product-gallery,
.admin-model-form__dimensions-media > .admin-product-gallery {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.admin-product-gallery--inline-header .admin-product-gallery__header {
    margin-bottom: 12px;
}

.admin-product-gallery--inline-header .admin-product-gallery__headline {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.35em;
    margin-bottom: 0;
    padding: 0;
}

.admin-product-gallery--inline-header .admin-product-gallery__title {
    margin: 0;
    font-size: inherit;
    font-weight: 500;
    line-height: inherit;
}

.admin-product-gallery--inline-header .admin-product-gallery__hint {
    margin: 0;
    font-size: 12px;
    font-weight: 400;
    line-height: inherit;
    color: var(--admin-muted);
}

.admin-model-form__media .admin-product-gallery + .admin-product-gallery {
    margin-top: 24px;
}

.admin-model-form__media .admin-media-picker--compact {
    margin-top: 24px;
    margin-bottom: 0;
    padding: 0;
    border: none;
    background: transparent;
}

.admin-model-form__media .admin-media-picker--compact .form-group {
    margin-bottom: 0;
}

.admin-model-form__media .admin-media-picker--compact .form-group > label {
    margin-bottom: 12px;
}

.admin-model-form__media .admin-media-picker--compact .admin-media-picker__preview {
    max-width: 100%;
    max-height: 100px;
}

.admin-surface-material-form__media {
    align-items: start;
    max-width: 520px;
}

.admin-surface-material-form__media .admin-media-picker--compact {
    margin-bottom: 0;
}

.admin-surface-material-form__media .admin-media-picker--compact .form-group > label {
    font-size: 14px;
    margin-bottom: 8px;
}

.admin-surface-material-form__media .admin-media-picker--compact .admin-media-picker__preview {
    max-width: 80px;
    max-height: 56px;
    margin-bottom: 6px;
}

.admin-surface-material-form__media .admin-media-picker--compact .admin-media-picker__preview img {
    max-height: 56px;
}

.admin-surface-material-form__media .admin-media-picker--compact .admin-media-picker__toolbar {
    margin-top: 8px;
    gap: 6px;
}

.admin-surface-material-form__media .admin-media-picker--compact .admin-btn {
    padding: 4px 10px;
    font-size: 13px;
}

.admin-media-folders--page {
    margin-bottom: 20px;
}

.admin-media-folders--page .admin-page-tabs {
    margin-bottom: 0;
}

.admin-model-fabrics {
    margin-top: 32px;
}

.admin-model-fabrics > .admin-form-section-title {
    margin-bottom: 12px;
}

.admin-model-fabrics > .admin-muted {
    margin: 0 0 5px;
}

.admin-model-fabrics__group {
    padding: 0;
    border: 1px solid var(--admin-border);
    border-radius: 10px;
    margin-bottom: 12px;
    background: #fff;
}

.admin-model-fabrics__group:last-child {
    margin-bottom: 0;
}

.admin-model-fabrics__group.is-active {
    border-color: var(--admin-text, #1a1a1a);
    box-shadow: 0 0 0 1px var(--admin-text, #1a1a1a);
}

.admin-model-fabrics__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
}

.admin-model-fabrics__head-toggle {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    text-align: left;
    font: inherit;
    color: inherit;
}

.admin-model-fabrics__head-toggle:disabled {
    cursor: default;
}

.admin-model-fabrics__chevron {
    width: 8px;
    height: 8px;
    flex-shrink: 0;
    border-right: 2px solid var(--admin-muted, #6b6862);
    border-bottom: 2px solid var(--admin-muted, #6b6862);
    transform: rotate(-45deg);
    transition: transform 0.15s ease;
}

.admin-model-fabrics__group.is-collapsed .admin-model-fabrics__chevron {
    transform: rotate(45deg);
}

.admin-model-fabrics__head-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
    min-width: 0;
}

.admin-model-fabrics__loading,
.admin-model-fabrics__load-error {
    margin: 12px 0 0;
}

.admin-model-fabrics__name {
    font-weight: 600;
    font-size: 15px;
    color: var(--admin-text, #1a1a1a);
}

.admin-model-fabrics__texture {
    display: inline-flex;
    align-items: center;
    padding: 2px 10px;
    border-radius: 999px;
    background: #f3f3f3;
    color: var(--admin-muted, #666);
    font-size: 12px;
    font-weight: 500;
}

.admin-model-fabrics__add {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--admin-border);
}

.admin-model-fabrics__add-label {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--admin-text, #1a1a1a);
}

.admin-model-fabrics__add-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.admin-model-fabrics__add-select {
    min-width: min(420px, 100%);
    flex: 1 1 280px;
}

.admin-model-fabrics__empty {
    margin: 0 0 12px;
}

.admin-model-fabrics__toggle {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    margin: 0;
    cursor: pointer;
    user-select: none;
}

.admin-model-fabrics__checkbox {
    width: 20px;
    height: 20px;
    margin: 0;
    flex-shrink: 0;
    accent-color: var(--admin-text, #1a1a1a);
    cursor: pointer;
}

.admin-model-fabrics__toggle-label {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 15px;
    color: var(--admin-text, #1a1a1a);
}

.admin-model-fabrics__toggle-meta {
    font-size: 13px;
    color: var(--admin-muted, #666);
    margin-left: auto;
}

.admin-model-fabrics__head-info .admin-model-fabrics__toggle-meta {
    margin-left: auto;
}

.admin-model-fabrics__body {
    padding: 0 16px 16px;
    border-top: 1px solid var(--admin-border);
}

.admin-model-fabrics__variants {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 12px;
}

.admin-model-fabrics__variant {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--admin-border);
    border-radius: 10px;
    background: #fafafa;
}

.admin-model-fabrics__variant-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
}

.admin-model-fabrics__priority-hint {
    margin-top: -4px;
}

.admin-model-fabrics__variant-priority {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.admin-model-fabrics__priority-check {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    flex-shrink: 0;
    font-size: 12px;
    color: var(--admin-muted, #666);
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

.admin-model-fabrics__priority-check input {
    width: 16px;
    height: 16px;
    margin: 0;
    cursor: pointer;
}

.admin-model-fabrics__priority-sort-wrap {
    margin: 0;
}

.admin-model-fabrics__priority-sort {
    width: 56px;
    min-height: 32px;
    padding: 4px 8px;
    text-align: center;
}

.admin-model-fabrics__priority-sort:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.admin-model-fabrics__empty-colors {
    padding: 0 16px 16px;
    margin: 0;
}

.admin-model-fabrics__color {
    display: flex;
    align-items: center;
    gap: 8px;
}

.admin-model-fabrics__color-names {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
}

.admin-model-fabrics__color-catalog {
    font-weight: 600;
    color: var(--admin-text, #1a1a1a);
}

.admin-model-fabrics__color-design {
    font-size: 14px;
    font-weight: 500;
    color: var(--admin-muted, #666);
}

.admin-model-fabrics__color-design::before {
    content: '·';
    margin-right: 6px;
    color: var(--admin-muted, #999);
    font-weight: 400;
}

.admin-model-fabrics__sku-title {
    font-size: 12px;
    margin-top: 4px;
    color: var(--admin-text, #1f1d1a);
}

.admin-model-fabrics__sku-slug {
    font-size: 11px;
    margin-top: 2px;
    color: var(--admin-muted);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    word-break: break-all;
}

.admin-model-fabrics__sku[data-sku-preview] .admin-model-fabrics__sku-title,
.admin-model-fabrics__sku[data-sku-preview] .admin-model-fabrics__sku-slug {
    color: var(--admin-muted);
    font-style: italic;
}

.admin-model-fabrics__photo .admin-media-picker {
    max-width: none;
    width: 100%;
    min-width: 0;
}

.admin-model-fabrics__photo .admin-media-upload-actions {
    flex-wrap: wrap;
}

.admin-model-fabrics__photo .admin-media-picker--compact .admin-btn {
    flex: 0 0 auto;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .admin-model-fabrics__variants {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--prices,
    .admin-form-grid--prices-8 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-form-grid--dimensions-main,
    .admin-form-grid--dimensions-extra,
    .admin-form-grid--dimensions {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--dimensions > .form-group:nth-child(n) {
        grid-column: span 1;
    }

    .admin-form-grid--materials {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .admin-fabric-import__row {
        grid-template-columns: 1fr 1fr;
    }

    .admin-fabric-import__checks,
    .admin-fabric-import__actions,
    .admin-fabric-import__download {
        grid-column: 1 / -1;
    }

    .admin-fabric-import__download {
        justify-content: flex-end;
    }
}

@media (max-width: 900px) {
    .admin-form-grid--collection-head,
    .admin-form-grid--fabric-row-1,
    .admin-form-grid--fabric-row-2,
    .admin-form-grid--fabric-row-3,
    .admin-form-grid--fabric-row-4 {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--collection-head .checkbox {
        padding-top: 0;
    }
}

@media (max-width: 900px) {
    .admin-fabric-color-row {
        grid-template-columns: 1fr;
    }

    .admin-fabric-color-row__fields {
        grid-template-columns: 1fr;
    }
}

/* ——— Страницы сайта (блоки контента) ——— */

.admin-badge--muted {
    background: #f0f0f0;
    color: #666;
}

.admin-page-header {
    margin-bottom: 24px;
}

.admin-page-header__title {
    margin: 8px 0 6px;
    font-size: 22px;
    font-weight: 600;
}

.admin-page-back {
    display: inline-block;
    margin-bottom: 4px;
}

.admin-page-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
}

.admin-page-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 180px;
    padding: 20px;
    border: 1px solid var(--admin-border);
    border-radius: 12px;
    background: #fff;
}

.admin-page-card__title {
    margin: 0 0 8px;
    font-size: 18px;
    font-weight: 600;
}

.admin-page-card__desc {
    margin: 0 0 8px;
    color: var(--admin-muted, #666);
    font-size: 14px;
}

.admin-page-card__meta {
    font-size: 12px;
}

.admin-page-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--admin-border);
}

.admin-page-blocks {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 16px;
    align-items: stretch;
}

.admin-page-block-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 20px;
    border: 1px solid var(--admin-border);
    border-radius: 12px;
    background: #fff;
}

.admin-page-block-card.is-disabled {
    opacity: 0.72;
    background: #fafafa;
}

.admin-page-block-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.admin-page-block-card__title {
    margin: 0 0 4px;
    font-size: 17px;
    font-weight: 600;
}

.admin-page-block-card__type {
    margin: 0;
    font-size: 13px;
    color: var(--admin-muted, #666);
}

.admin-page-block-card__hint {
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.45;
}

.admin-page-block-card__preview {
    margin: 0 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #f5f5f5;
    font-size: 13px;
    line-height: 1.45;
}

.admin-page-block-card__note {
    margin: 0 0 12px;
    font-size: 12px;
    line-height: 1.45;
}

.admin-page-block-card__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid var(--admin-border);
}


.admin-page-block-card__order {
    font-size: 12px;
}

.admin-page-editor {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 20px;
    align-items: start;
}

.admin-page-editor--full {
    grid-template-columns: minmax(0, 1fr);
}

.admin-page-editor__main {
    min-width: 0;
}

.admin-page-block-panel {
    padding: 24px;
    border: 1px solid var(--admin-border);
    border-radius: 12px;
    background: #fff;
}

.admin-page-block-panel__lead {
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 1.5;
}

.admin-page-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.admin-page-tabs__link {
    display: inline-flex;
    align-items: center;
    padding: 10px 16px;
    border: 1px solid var(--admin-border);
    border-radius: 999px;
    background: #fff;
    color: var(--admin-text);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

button.admin-page-tabs__link {
    font: inherit;
    cursor: pointer;
    appearance: none;
}

.admin-page-tabs__link:hover {
    border-color: var(--admin-text-muted);
    color: var(--admin-text);
}

.admin-page-tabs__link--active {
    border-color: var(--admin-text);
    background: var(--admin-text);
    color: #fff;
}

.admin-page-tabs__link--active:hover {
    border-color: var(--admin-text);
    background: var(--admin-text);
    color: #fff;
}

.admin-page-tabs--compact .admin-page-tabs__link {
    padding: 6px 12px;
    font-size: 13px;
}

.admin-page-combined-editor {
    display: grid;
    gap: 20px;
}

.admin-page-combined-section {
    display: grid;
    gap: 12px;
}

.admin-page-combined-section__head {
    display: grid;
    gap: 4px;
}

.admin-page-combined-section__title {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
}

.admin-page-combined-section__lead {
    margin: 0;
    font-size: 13px;
}

.admin-page-editor__actions {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid var(--admin-border);
}

.admin-page-aside-card {
    padding: 20px;
    margin-bottom: 16px;
    border: 1px solid var(--admin-border);
    border-radius: 12px;
    background: #fff;
}

.admin-page-aside-card--hint {
    background: #f8f9fa;
}

.admin-page-aside-card__title {
    margin: 0 0 14px;
    font-size: 15px;
    font-weight: 600;
}

.admin-page-aside-card__actions {
    margin-top: 8px;
}

.admin-page-block-section {
    margin-bottom: 28px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--admin-border);
}

.admin-page-block-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.admin-page-block-section__title {
    margin: 0 0 16px;
    font-size: 16px;
    font-weight: 600;
}

.admin-page-block-section__lead {
    margin: -8px 0 16px;
    font-size: 13px;
}

.admin-page-field {
    margin-bottom: 16px;
}

.admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-page-field__hint {
    margin: 4px 0 8px;
    font-size: 12px;
    line-height: 1.4;
}

.admin-page-media-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.admin-stack-item-grid .admin-media-picker {
    height: 100%;
}

@media (max-width: 900px) {
    .admin-stack-item-grid.admin-page-media-grid {
        grid-template-columns: 1fr;
    }
}

.admin-page-details {
    margin-top: 16px;
    padding: 12px 14px;
    border: 1px dashed var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
}

.admin-page-details summary {
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
}

.admin-page-json-help {
    margin-bottom: 16px;
    padding: 14px 16px;
    border-radius: 8px;
    background: #f0f4ff;
    font-size: 13px;
    line-height: 1.5;
}

.admin-page-json-help ul {
    margin: 8px 0 8px 18px;
    padding: 0;
}

.admin-page-json-editor {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 13px;
    line-height: 1.45;
}

.admin-page-empty {
    padding: 24px;
}

.admin-content-repeatable__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.admin-content-row {
    margin-bottom: 16px;
    padding: 16px;
    border: 1px solid var(--admin-border);
    border-radius: 10px;
    background: #fff;
}

.admin-content-row--compact {
    padding: 12px 14px;
}

.admin-content-row--nested {
    background: #fafafa;
}

.admin-content-row__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.admin-content-row__title {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
}

.admin-content-row__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.admin-content-row__grid--seo .admin-page-field textarea {
    min-height: 84px;
}

.admin-partners-formats-layout {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.admin-partners-formats-layout__body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
}

.admin-partners-formats-layout__photo {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-partners-formats-layout__photo .admin-media-picker {
    flex: 1;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-partners-formats-layout__photo .admin-media-picker__preview {
    flex: 1 1 auto;
    aspect-ratio: unset;
    min-height: 120px;
}

.admin-partners-formats-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
    min-height: 0;
}

.admin-partners-formats-grid__item {
    margin: 0;
    padding: 12px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    box-sizing: border-box;
}

.admin-partners-formats-grid__item .admin-content-row__head {
    margin-bottom: 8px;
    flex-shrink: 0;
}

.admin-partners-formats-grid__item .admin-page-field {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
    min-height: 0;
}

.admin-partners-formats-grid__item .admin-page-field .form-label {
    flex-shrink: 0;
}

.admin-partners-formats-grid__item .admin-page-field textarea {
    height: 112px;
    min-height: 112px;
    max-height: 112px;
    resize: none;
    overflow-y: auto;
    box-sizing: border-box;
}

.admin-library-documents-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

.admin-library-documents-grid__item {
    margin-bottom: 0;
    height: 100%;
    box-sizing: border-box;
}

.admin-library-documents-grid__item .admin-page-field textarea {
    min-height: 72px;
}

.admin-partners-audience-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

.admin-partners-audience-cards__item {
    padding: 12px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
    display: flex;
    flex-direction: column;
    min-height: 0;
    box-sizing: border-box;
}

.admin-partners-audience-cards__item .admin-content-row__head {
    margin-bottom: 8px;
    flex-shrink: 0;
}

.admin-partners-audience-cards__item .admin-page-field {
    margin-bottom: 12px;
}

.admin-partners-audience-cards__item .admin-page-field:last-child {
    margin-bottom: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.admin-partners-audience-cards__item .admin-page-field textarea {
    height: 120px;
    min-height: 120px;
    max-height: 120px;
    resize: none;
    overflow-y: auto;
    box-sizing: border-box;
}

.admin-partners-audience-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-partners-audience-stats .admin-page-field {
    margin-bottom: 0;
}

.admin-partners-salon-formats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

.admin-partners-salon-formats__item {
    padding: 12px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
}

.admin-partners-salon-formats__item .admin-page-field {
    margin-bottom: 10px;
}

.admin-partners-salon-formats__item .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-partners-salon-conditions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 12px;
}

.admin-partners-salon-conditions__item .admin-page-field {
    margin-bottom: 8px;
}

.admin-partners-salon-conditions__item .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-partners-presentation-layout__body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
}

.admin-partners-presentation-layout__content .admin-page-field {
    margin-bottom: 12px;
}

.admin-partners-presentation-layout__content .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-partners-presentation-layout__photo {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-partners-presentation-layout__photo .admin-media-picker {
    flex: 1;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-partners-presentation-layout__photo .admin-media-picker__preview {
    flex: 1 1 auto;
    aspect-ratio: unset;
    min-height: 120px;
}

.admin-partners-presentation-layout__photo .admin-media-picker--document .admin-media-picker__preview {
    min-height: 120px;
    max-width: none;
    max-height: none;
    width: 100%;
}

.admin-partners-presentation-items__row {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    margin-bottom: 8px;
}

.admin-partners-presentation-items__row .admin-page-field {
    margin-bottom: 0;
}

.admin-partners-presentation-items__number {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    font-size: 13px;
    font-weight: 600;
    color: var(--admin-muted);
}

.admin-partners-presentation-items__row .admin-page-field label {
    display: none;
}

.admin-media-picker--document .admin-media-picker__preview {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    aspect-ratio: unset;
    min-height: 72px;
    padding: 12px;
}

.admin-media-picker--compact.admin-media-picker--document .admin-media-picker__preview {
    max-width: none;
    max-height: none;
    width: 100%;
}

.admin-media-picker__document {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.admin-media-picker__document-icon,
.admin-media-library__doc-thumb,
.admin-media-card__doc-thumb {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    height: 48px;
    padding: 0 10px;
    border-radius: 8px;
    background: #f3f1ec;
    font-size: 12px;
    font-weight: 700;
    color: #6b6862;
}

.admin-media-picker__document-name {
    flex: 1;
    min-width: 0;
    font-size: 14px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.admin-media-library__doc-thumb {
    width: 100%;
    height: 100%;
    min-height: 88px;
}

.admin-media-card__doc-thumb {
    width: 100%;
    height: 140px;
}

.admin-partners-contact-layout__body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 16px;
    align-items: stretch;
}

.admin-partners-contact-layout__content .admin-page-field {
    margin-bottom: 12px;
}

.admin-partners-contact-layout__content .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-partners-contact-layout__photo {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-partners-contact-layout__photo .admin-media-picker {
    flex: 1;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-partners-contact-layout__photo .admin-media-picker__preview {
    flex: 1 1 auto;
    aspect-ratio: unset;
    min-height: 120px;
}

.admin-designers-materials-archive {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 12px;
}

.admin-designers-materials-archive .admin-page-field {
    margin-bottom: 0;
}

.admin-designers-materials-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

.admin-designers-materials-columns__item {
    margin: 0;
    padding: 12px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.admin-designers-materials-columns__item .admin-content-row__head {
    margin-bottom: 8px;
}

.admin-designers-materials-columns__item .admin-page-field {
    margin-bottom: 12px;
}

.admin-designers-materials-columns__item .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-designers-materials-columns__item .admin-page-field textarea {
    min-height: 96px;
}

.admin-content-row__grid--triple {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.vacancy-form__grid {
    display: grid;
    column-gap: 24px;
    align-items: start;
}

.vacancy-form__grid--head {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr);
}

.vacancy-form__grid--meta {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 0;
}

.vacancy-form__grid .form-group {
    margin-bottom: 1rem;
}

.vacancy-form__form > .form-group {
    margin-bottom: 1rem;
}

.vacancy-form__label-hint {
    display: block;
    margin-top: 4px;
    line-height: 1.35;
}

.vacancy-form__lists {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid var(--admin-border);
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.vacancy-form__list-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.vacancy-form__list-toolbar .admin-icon-btn {
    margin-left: auto;
}

.vacancy-form__list-label {
    margin-bottom: 0;
}

.vacancy-form__list-item {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.vacancy-form__list-item .form-control {
    flex: 1 1 auto;
    min-width: 0;
}

.vacancy-form__list-item .admin-icon-btn {
    flex: 0 0 auto;
}

.vacancy-form__list-item:last-child {
    margin-bottom: 0;
}

.admin-section-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--admin-muted);
}

.admin-section-icon .admin-icon {
    width: 18px;
    height: 18px;
}

.admin-vacancy-group__head {
    display: grid;
    grid-template-columns: 96px minmax(120px, 0.9fr) minmax(0, 1.4fr);
    gap: 12px;
    align-items: start;
}

.admin-vacancy-group__head .admin-page-field {
    margin-bottom: 0;
}

.admin-vacancy-group__jobs {
    margin-top: 12px;
}

.admin-vacancy-jobs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.admin-vacancy-job {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    height: 100%;
}

.admin-vacancy-job__head {
    margin-bottom: 0;
}

.admin-vacancy-job__meta {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(140px, 0.9fr) minmax(0, 1fr);
    gap: 10px;
    align-items: end;
}

.admin-vacancy-job__meta .admin-page-field,
.admin-vacancy-job__title-salary .admin-page-field,
.admin-vacancy-job__description .admin-page-field {
    margin-bottom: 0;
}

.admin-vacancy-job__meta .form-label,
.admin-vacancy-job__title-salary .form-label,
.admin-vacancy-job__description .form-label {
    min-height: 1.25em;
    margin-bottom: 4px;
}

.admin-vacancy-job__title-salary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(160px, 0.7fr);
    gap: 10px;
    align-items: end;
}

.admin-vacancy-job__description .admin-page-field {
    height: 100%;
}

.admin-vacancy-job__description textarea {
    min-height: 64px;
    resize: vertical;
}

.admin-about-timeline-stage-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 1fr);
    gap: 20px;
    align-items: start;
}

.admin-about-timeline-stage-grid__text .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-about-timeline-stage-grid__photos .admin-content-repeatable__toolbar {
    margin-bottom: 8px;
}

.admin-about-timeline-stage-grid__photos .admin-content-nested__title {
    margin: 0;
}

.admin-gallery-photos-grid--timeline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-gallery-photos-grid,
.admin-designers-gallery-photos {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: start;
}

.admin-gallery-photos-grid__item,
.admin-designers-gallery-photos__item {
    padding: 12px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
}

.admin-designers-gallery-photos__item .admin-page-details {
    margin-top: 8px;
}

.admin-gallery-photos-grid__item .admin-media-picker,
.admin-designers-gallery-photos__item .admin-media-picker {
    margin-bottom: 0;
}

.admin-content-nested {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px dashed var(--admin-border);
}

.admin-content-nested__title {
    margin: 0;
    font-size: 13px;
    font-weight: 600;
}

.admin-faq-paragraph {
    background: #fff;
}

.admin-faq-tabs {
    display: grid;
    gap: 16px;
}

.admin-faq-tabs__nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.admin-faq-tabs__tab {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 12px 14px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fff;
    color: var(--admin-text);
    cursor: pointer;
    text-align: left;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

.admin-faq-tabs__tab:hover {
    border-color: #c9b8a8;
}

.admin-faq-tabs__tab.is-active {
    border-color: #8b5a45;
    background: #faf6f2;
    box-shadow: inset 0 -2px 0 #8b5a45;
}

.admin-faq-tabs__tab-num {
    font-size: 11px;
    font-weight: 600;
    color: var(--admin-muted);
}

.admin-faq-tabs__tab-label {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
}

.admin-faq-tabs__panel {
    display: none;
    padding: 16px;
    border: 1px solid var(--admin-border);
    border-radius: 10px;
    background: #fafafa;
}

.admin-faq-tabs__panel.is-active {
    display: block;
}

.admin-faq-tabs__panel-head {
    margin-bottom: 12px;
}

.admin-faq-tabs__panel-title {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

.admin-faq-tabs__panel-meta {
    margin: 4px 0 0;
    font-size: 12px;
}

.admin-faq-item {
    margin-bottom: 0;
    padding: 20px 0;
    border: none;
    border-radius: 0;
    background: transparent;
    border-bottom: 1px solid var(--admin-border);
}

.admin-faq-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.admin-faq-item .admin-content-row__head {
    margin-bottom: 10px;
}

.admin-faq-item .admin-page-field {
    margin-bottom: 12px;
}

.admin-faq-item .admin-page-field:last-child {
    margin-bottom: 0;
}

.admin-faq-answer-editor {
    min-height: 0;
    height: auto;
    line-height: 1.55;
    font-size: 14px;
    resize: none;
    overflow: hidden;
    field-sizing: content;
}

.admin-faq-answer-field__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 6px;
}

.admin-faq-answer-field__head .form-label {
    margin: 0;
}

.admin-faq-answer-field__hint {
    margin: 6px 0 0;
    font-size: 12px;
}

.admin-journal-tabs__note {
    margin: 8px 0 0;
    font-size: 13px;
}

.admin-home-hero-zones {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.admin-home-hero-zones__divider {
    grid-column: 1 / -1;
    margin: 0;
    font-size: 14px;
    font-weight: 600;
}

.admin-home-hero-zones__lead {
    grid-column: 1 / -1;
    margin: -4px 0 0;
    font-size: 13px;
}

.admin-home-hero-zone {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 12px;
    padding: 12px 14px;
    border: 1px dashed var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
}

.admin-home-hero-zone.admin-content-row {
    margin-bottom: 0;
}

.admin-home-hero-zone__badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #e8e4dc;
    font-size: 13px;
    font-weight: 600;
    color: #5c5348;
}

.admin-home-hero-zone__fields {
    min-width: 0;
}

.admin-home-collections-slides {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.admin-home-collections-slides__item {
    padding: 12px 14px;
    border: 1px dashed var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
}

.admin-home-products {
    display: grid;
    gap: 12px;
}

.admin-home-product-card {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 12px;
    padding: 12px 14px;
    border: 1px dashed var(--admin-border);
    border-radius: 8px;
    background: #fafafa;
}

.admin-home-product-card.admin-content-row {
    margin-bottom: 0;
}

.admin-home-product-card__fields {
    min-width: 0;
}

.admin-home-product-search {
    position: relative;
}

.admin-home-product-search__results {
    position: absolute;
    z-index: 20;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    max-height: 240px;
    overflow: auto;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.admin-home-product-search__item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid #f0f0f0;
    background: #fff;
    text-align: left;
    cursor: pointer;
}

.admin-home-product-search__head {
    padding: 8px 12px 6px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #9a9086;
    border-bottom: 1px solid #f0f0f0;
}

.admin-home-product-search__swatch {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.08);
}

.admin-home-product-search__swatch--empty {
    background: #ece7df;
}

.admin-home-product-search__item-body {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.admin-home-product-search__item:last-child {
    border-bottom: 0;
}

.admin-home-product-search__item:hover,
.admin-home-product-search__item:focus {
    background: #f7f4ef;
}

.admin-home-product-search__item-title {
    font-size: 14px;
    font-weight: 600;
    color: #2f2a25;
}

.admin-home-product-search__item-meta {
    font-size: 12px;
    color: #7a7168;
}

.admin-home-product-search__empty {
    padding: 10px 12px;
    font-size: 13px;
    color: #7a7168;
}

.admin-journal-recommended__search {
    max-width: 520px;
    margin-bottom: 20px;
}

.admin-journal-recommended__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.admin-journal-recommended-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 96px;
    padding: 12px 36px 12px 12px;
    border: 1px solid var(--admin-border);
    border-radius: 10px;
    background: #faf9f7;
}

.admin-journal-recommended-card__body {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-width: 0;
}

.admin-journal-recommended-card__text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.admin-journal-recommended-card__title {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    color: #2f2a25;
    word-break: break-word;
}

.admin-journal-recommended-card__meta {
    font-size: 12px;
    line-height: 1.35;
    color: #7a7168;
    word-break: break-word;
}

.admin-journal-recommended-card__remove {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #9a9086;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}

.admin-journal-recommended-card__remove:hover {
    background: #ece7df;
    color: #2f2a25;
}

@media (max-width: 1100px) {
    .admin-journal-recommended__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .admin-journal-recommended__grid {
        grid-template-columns: 1fr;
    }
}

.admin-home-product-preview {
    margin: 4px 0 8px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #ece7df;
}

.admin-home-product-preview__list {
    display: grid;
    gap: 8px;
    margin: 0;
}

.admin-home-product-preview__list dt {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #9a9086;
}

.admin-home-product-preview__list dd {
    margin: 0;
    font-size: 14px;
    color: #2f2a25;
}

.admin-home-product-preview__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

@media (min-width: 901px) {
    .admin-home-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-home-product-card--featured {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .admin-home-hero-zones {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1000px) {
    .admin-page-editor {
        grid-template-columns: 1fr;
    }

    .admin-page-media-grid {
        grid-template-columns: 1fr;
    }

    .admin-partners-formats-layout__body {
        grid-template-columns: 1fr;
    }

    .admin-partners-formats-grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .admin-library-documents-grid {
        grid-template-columns: 1fr;
    }

    .admin-partners-audience-cards {
        grid-template-columns: 1fr;
    }

    .admin-partners-audience-stats {
        grid-template-columns: 1fr;
    }

    .admin-partners-salon-formats {
        grid-template-columns: 1fr;
    }

    .admin-partners-salon-conditions {
        grid-template-columns: 1fr;
    }

    .admin-partners-presentation-layout__body {
        grid-template-columns: 1fr;
    }

    .admin-partners-contact-layout__body {
        grid-template-columns: 1fr;
    }

    .admin-designers-materials-columns {
        grid-template-columns: 1fr;
    }

    .admin-designers-materials-archive {
        grid-template-columns: 1fr;
    }

    .admin-vacancy-jobs-grid {
        grid-template-columns: 1fr;
    }

    .admin-vacancy-group__head,
    .admin-vacancy-job__meta,
    .admin-vacancy-job__title-salary,
    .vacancy-form__grid--head,
    .vacancy-form__grid--meta {
        grid-template-columns: 1fr;
    }

    .admin-about-timeline-stage-grid {
        grid-template-columns: 1fr;
    }

    .admin-gallery-photos-grid,
    .admin-gallery-photos-grid--timeline,
    .admin-designers-gallery-photos {
        grid-template-columns: 1fr;
    }

    .admin-content-row__grid--triple {
        grid-template-columns: 1fr;
    }

    .admin-faq-tabs__nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.admin-journal-blocks__list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.admin-journal-block {
    padding: 16px 0;
    border-bottom: 1px solid var(--admin-border, #e8e8e8);
}

.admin-journal-block:last-child {
    border-bottom: none;
}

.admin-journal-block.is-dragging {
    opacity: 0.55;
}

.admin-journal-block.is-drag-over {
    background: rgba(0, 0, 0, 0.03);
}

.admin-journal-block__head {
    margin-bottom: 12px;
}

.admin-journal-block__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
}

.admin-journal-block__actions .admin-journal-block__move {
    font-size: 16px;
    line-height: 1;
}

.admin-journal-block__divider-note {
    margin: 0;
    font-size: 13px;
}

.admin-journal-text-editor {
    min-height: 40px;
    resize: none;
    overflow: hidden;
}

.admin-journal-tabs__links {
    margin-top: 12px;
}

.admin-journal-tabs__note {
    margin-top: 8px;
}

.admin-journal-form__meta-row {
    align-items: start;
}

.admin-journal-form__meta-row .form-group {
    margin-bottom: 16px;
}

.admin-journal-form__meta-row .checkbox {
    margin-top: 28px;
}

.admin-journal-form__sidebar .admin-media-picker--compact .admin-media-picker__preview {
    max-width: 100%;
    max-height: 140px;
}

.admin-journal-blocks__fab {
    position: fixed;
    right: 28px;
    bottom: 28px;
    z-index: 1150;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.admin-journal-blocks__fab-btn {
    box-shadow: 0 8px 28px rgba(26, 26, 26, 0.18);
    padding: 12px 20px;
    font-size: 14px;
}

.admin-journal-block-type-modal.admin-modal {
    position: absolute;
    inset: auto;
    right: 0;
    bottom: calc(100% + 12px);
    left: auto;
    top: auto;
    z-index: 2;
    display: block;
    width: min(320px, calc(100vw - 56px));
    padding: 0;
    align-items: stretch;
    justify-content: flex-start;
}

.admin-journal-block-type-modal.admin-modal .admin-modal__backdrop {
    position: fixed;
    inset: 0;
    z-index: -1;
    background: rgba(26, 26, 26, 0.12);
}

.admin-journal-block-type-modal.admin-modal .admin-modal__dialog {
    position: relative;
    z-index: 1;
    width: 100%;
    max-height: min(70vh, 420px);
    box-shadow: 0 12px 40px rgba(26, 26, 26, 0.16);
}

.admin-journal-block-type-modal.admin-modal .admin-modal__header {
    padding: 12px 16px;
}

.admin-journal-block-type-modal.admin-modal .admin-modal__title {
    font-size: 15px;
}

.admin-journal-block-type-modal.admin-modal .admin-modal__body {
    padding: 12px 16px 16px;
}

.admin-journal-block-type-modal.admin-modal.admin-journal-block-type-modal--below {
    bottom: auto;
    top: calc(100% + 12px);
}

.admin-journal-block-type-modal__dialog {
    max-width: none;
}

.admin-journal-block-type-modal__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.admin-journal-block-type-modal__option {
    border: 1px solid var(--admin-border, #e8e8e8);
    background: #fff;
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 14px;
    text-align: left;
    cursor: pointer;
    color: inherit;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.admin-journal-block-type-modal__option:hover {
    border-color: var(--admin-text, #1a1a1a);
    background: rgba(0, 0, 0, 0.03);
}

.admin-journal-tabs__articles {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--admin-border, #e8e8e8);
}

.admin-journal-tabs__empty {
    margin: 0;
    font-size: 13px;
}

.admin-journal-tabs__article-list {
    list-style: none;
    margin: 12px 0 0;
    padding: 0;
}

.admin-journal-tabs__article-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--admin-border, #e8e8e8);
}

.admin-journal-tabs__article-item:last-child {
    border-bottom: none;
}

.admin-journal-tabs__article-main {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.admin-journal-tabs__article-title {
    font-size: 14px;
}

.admin-search-recommended-section + .admin-search-recommended-section {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid var(--admin-border, #e8e8e8);
}

.admin-search-recommended-section__title {
    margin: 0 0 6px;
    font-size: 18px;
}

.admin-search-recommended-group + .admin-search-recommended-group {
    margin-top: 20px;
}

.admin-search-recommended-group__title {
    margin: 0 0 12px;
    font-size: 16px;
}

.admin-search-recommended-scope {
    margin-top: 16px;
}

.admin-search-recommended-scope--nested {
    margin-left: 16px;
    padding-left: 16px;
    border-left: 2px solid var(--admin-border, #e8e8e8);
}

.admin-search-recommended-scope__title {
    margin: 0 0 8px;
    font-size: 15px;
    font-weight: 600;
}

.admin-search-recommended-slots {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 12px 16px;
}

.admin-search-recommended-slot {
    margin-bottom: 0;
}

.admin-catalog-priority-panel + .admin-catalog-priority-panel {
    margin-top: 0;
}

.admin-catalog-priority-search {
    max-width: 560px;
    margin-bottom: 20px;
}

.admin-catalog-priority-search__notice {
    margin-top: 8px;
    font-size: 13px;
}

.admin-catalog-priority-table td,
.admin-catalog-priority-table th {
    vertical-align: middle;
}

.admin-catalog-priority-table__sort-col {
    width: 140px;
}

.admin-catalog-priority-table__actions-col {
    width: 96px;
}

.admin-catalog-priority-table .admin-table-actions .admin-icon-btn {
    text-decoration: none;
    vertical-align: middle;
}

.admin-catalog-priority-row__model {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
}

.admin-catalog-priority-row__body {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.admin-catalog-priority-row__title {
    font-weight: 600;
}

.admin-catalog-priority-row__meta {
    color: var(--admin-muted, #667085);
    font-size: 13px;
}

.admin-catalog-priority-row__sort-input {
    max-width: 120px;
    margin: 0;
}

.admin-catalog-priority-list__empty {
    margin-top: 12px;
}

