.cc24-property-tooltip { display: inline-flex; vertical-align: middle; }
.cc24-property-tooltip__button,
.cc24-property-hint-edit { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; min-height: 28px; padding: 3px; border: 1px solid currentColor; border-radius: 50%; color: var(--cc24-color-muted, #646970); background: transparent; font: inherit; font-size: 14px; line-height: 1; cursor: pointer; }
.cc24-property-tooltip__button:focus-visible,
.cc24-property-hint-edit:focus-visible { outline: 2px solid var(--cc24-color-text, #1d2327); outline-offset: 3px; }
.cc24-property-tooltip__content { box-sizing: border-box; max-width: calc(100vw - 24px); position: fixed; z-index: 2147483000; padding: 14px 16px; border: 1px solid var(--cc24-color-border, #dcdcde); border-radius: var(--cc24-radius-small, 6px); color: var(--cc24-color-text, #1d2327); background: var(--cc24-color-surface, #fff); box-shadow: 0 4px 16px rgb(0 0 0 / 12%); white-space: pre-line; overflow-wrap: anywhere; font-size: 14px; line-height: 1.5; text-align: left; }
.cc24-property-tooltip__content[hidden],
.cc24-property-editor[hidden],
[data-cc24-tariff-panel][hidden],
[data-cc24-hint-editor][hidden] { display: none !important; }
.has-property-tooltip { display: inline-block; margin-inline-start: 6px; }
.cc24-property-hint-edit.is-filled { color: var(--cc24-ai-success, #008a20); }
.cc24-property-editor { width: 100%; min-width: 0; }
.cc24-property-item { position: relative; display: grid; gap: 10px; margin-block: 10px 16px; padding: 12px; border: 1px solid var(--cc24-ai-border, #dcdcde); border-radius: 4px; }
.cc24-property-item > label,
.cc24-property-range > label,
.cc24-property-tier > label { display: grid; gap: 5px; min-width: 0; }
.cc24-property-item textarea,
.cc24-property-item input,
.cc24-property-item select { width: 100%; max-width: 100%; box-sizing: border-box; }
.cc24-property-range { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.cc24-property-na { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; }
.cc24-property-hint-edit { justify-self: end; }
.cc24-property-item .description:empty { display: none; }
.cc24-property-tier { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.2fr) auto; gap: 8px; align-items: end; margin-block: 10px; }
.cc24-property-tier-editor summary { cursor: pointer; }
.cc24-property-tariff-admin { margin-block: 12px 18px; }
.cc24-property-tariff-admin > label { display: block; margin-top: 12px; }
.cc24-property-tariff-heading { font-size: 20px; line-height: 1.3; }
.cc24-property-tariff-config { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-block: 10px; }
.cc24-property-tariff-config > label:first-child { flex: 1 1 180px; }
.cc24-property-tariffs { margin-block: 20px; }
.cc24-property-tariffs > label { display: block; margin-bottom: 8px; font-weight: 600; }
.cc24-property-tariffs > select { width: min(100%, 420px); min-height: 44px; margin-bottom: 12px; padding: 8px 12px; border: 1px solid var(--cc24-color-border, #dcdcde); border-radius: var(--cc24-radius-small, 6px); background: var(--cc24-color-surface, #fff); color: inherit; font: inherit; }
.cc24-property-tariffs .cc24-offer-card__detail-value { white-space: pre-line; }
.cc24-property-tariff-name { margin-block: 8px; font-size: 14px; }
.cc24-section-offer__parameters--count-5,
.cc24-section-offer__parameters--count-6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 620px) {
    .cc24-section-offer__parameters--count-5,
    .cc24-section-offer__parameters--count-6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cc24-property-range { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .cc24-property-range > label:last-child { grid-column: 1 / -1; }
    .cc24-property-tier { grid-template-columns: minmax(0, 1fr); }
    .cc24-property-tooltip__button,
    .cc24-property-hint-edit { min-width: 44px; min-height: 44px; }
}

.cc24-property-tooltip__button { position: relative; border: 0; padding: 0; }
.cc24-property-tooltip__button::before { position: absolute; inset: 4px; border: 1px solid currentColor; border-radius: 50%; content: ""; pointer-events: none; }
.has-property-tooltip[hidden] { display: none !important; }
@media (max-width: 620px) { .cc24-property-tooltip__button::before { inset: 12px; } }
