.cms-builder__tabs { background: var(--panel, #fff); border-bottom: 1px solid var(--border, #d9dee3); display: flex; gap: .25rem; margin-bottom: 1rem; padding: 0 .25rem; position: sticky; top: 0; z-index: 20; }
.cms-builder__tabs .app-tab { background: transparent; border: 0; border-bottom: 3px solid transparent; color: inherit; cursor: pointer; padding: .75rem 1rem; }
.cms-builder__tabs .app-tab.is-active { border-bottom-color: var(--accent, #2463eb); color: var(--accent, #2463eb); }
.cms-builder__workspace { align-items: start; display: grid; gap: .65rem; grid-template-columns: auto minmax(0, 1fr) auto; min-height: calc(100vh - 170px); }
.cms-builder__toolbox, .cms-builder__right-drawer { max-height: calc(100vh - 150px); position: sticky; top: 64px; }
.cms-builder__toolbox { overflow: auto; scrollbar-gutter: stable; transition: width .2s ease; width: 310px; }
.cms-builder__right-drawer { overflow: auto; transition: width .2s ease; width: 430px; }
.cms-builder__right-drawer.is-collapsed { display: none; }
.cms-builder__toolbox.is-collapsed { padding: .45rem; width: 78px; }
.cms-builder__toolbox.is-collapsed .cms-builder__drawer-heading h3, .cms-builder__toolbox.is-collapsed .cms-builder__search, .cms-builder__toolbox.is-collapsed .cms-builder__tool-group h4, .cms-builder__toolbox.is-collapsed .cms-builder__tool-copy { display: none; }
.cms-builder__toolbox.is-collapsed .cms-builder__tool-list { gap: .45rem; }
.cms-builder__toolbox.is-collapsed .cms-builder__tool-group { margin-bottom: .45rem; }
.cms-builder__toolbox.is-collapsed .cms-builder__tool { display: block; padding: .3rem; }
.cms-builder__toolbox.is-collapsed .cms-builder__tool-thumbnail { width: 100%; }
.cms-builder__canvas-panel { min-width: 0; }
.cms-builder__drawer-heading { align-items: center; background: var(--panel, #fff); display: flex; justify-content: space-between; position: sticky; top: 0; z-index: 5; }
.cms-builder__drawer-heading h3, .cms-builder__drawer-heading p { margin: 0; }
.cms-builder__drawer-close { align-items: center; background: transparent; border: 1px solid var(--border, #d9dee3); border-radius: 4px; color: inherit; cursor: pointer; display: inline-flex; flex: 0 0 32px; font-size: 1.2rem; height: 32px; justify-content: center; padding: 0; }
.cms-builder__drawer-close:hover { background: #edf4ff; border-color: var(--accent, #2463eb); color: var(--accent, #2463eb); }
.cms-builder__toolbox.is-collapsed .cms-builder__drawer-heading { justify-content: center; margin-bottom: .45rem; }
.cms-builder__toolbox.is-collapsed .cms-builder__drawer-close { transform: rotate(180deg); }
.cms-builder__activity-bar { align-items: center; display: flex; flex-wrap: wrap; gap: .35rem; justify-content: flex-end; margin: 0 0 .65rem; }
.cms-builder__activity-button { align-items: center; background: transparent; border: 1px solid var(--border, #d9dee3); border-radius: 4px; color: inherit; cursor: pointer; display: inline-flex; font-size: .78rem; gap: .4rem; min-height: 36px; padding: .35rem .65rem; text-align: left; }
.cms-builder__activity-button:hover, .cms-builder__activity-button.is-active { background: #edf4ff; border-color: var(--accent, #2463eb); color: var(--accent, #2463eb); }
.cms-builder__activity-icon { align-items: center; display: inline-flex; font-size: 1.1rem; justify-content: center; }
.cms-builder__right-panel[hidden] { display: none; }
.cms-builder__search { display: grid; gap: .35rem; margin-bottom: .75rem; }
.cms-builder__tool-group { margin-bottom: .9rem; }
.cms-builder__tool-group h4 { margin: 0 0 .4rem; }
.cms-builder__tool-list { display: grid; gap: .35rem; }
.cms-builder__tool { align-items: center; background: var(--panel, #fff); border: 1px solid var(--border, #d9dee3); border-radius: 4px; color: inherit; cursor: pointer; display: grid; gap: .55rem; grid-template-columns: 96px 1fr; padding: .55rem .65rem; text-align: left; width: 100%; }
.cms-builder__tool-copy { display: grid; gap: .15rem; }
.cms-builder__tool-thumbnail { aspect-ratio: 16 / 9; background: #f3f6fa; border: 1px solid #d9dee3; display: block; overflow: hidden; width: 96px; }
.cms-builder__tool-thumbnail img { display: block; height: 100%; object-fit: cover; width: 100%; }
.cms-builder__tool:hover { border-color: var(--accent, #2463eb); }
.cms-builder__tool small { color: var(--muted, #667085); }
.cms-builder__tool span { color: var(--muted, #667085); font-size: .7rem; }
.cms-builder__structure { min-height: 240px; }
.cms-builder__structure-heading { align-items: baseline; display: flex; gap: .5rem; justify-content: space-between; }
.cms-builder__structure-heading small { color: var(--muted, #667085); }
.cms-builder__canvas { display: grid; gap: .4rem; margin: .8rem 0 0; min-height: 90px; }
.cms-builder__block { align-items: center; background: var(--panel, #fff); border: 1px solid var(--border, #d9dee3); border-radius: 4px; cursor: grab; display: grid; gap: .7rem; grid-template-columns: auto 1fr auto; padding: .65rem; }
.cms-builder__block.is-active { border-color: var(--accent, #2463eb); box-shadow: inset 3px 0 var(--accent, #2463eb); }
.cms-builder__block.is-unpublished { background: #f1f3f5; border-style: dashed; opacity: .68; }
.cms-builder__block-handle { color: var(--muted, #667085); font-weight: 700; }
.cms-builder__block-title { display: grid; gap: .1rem; }
.cms-builder__block-title small { color: var(--muted, #667085); }
.cms-builder__empty { border: 1px dashed var(--border, #d9dee3); border-radius: 4px; color: var(--muted, #667085); padding: 1.4rem; text-align: center; }
.cms-builder__preview { background: #fff; border: 1px solid var(--border, #d9dee3); border-radius: 4px; color: #16202a; margin-inline: auto; min-height: 420px; overflow: hidden; transition: width .2s ease; width: 100%; }
.cms-builder__preview--tablet { width: min(100%, 760px); }
.cms-builder__preview--mobile { width: min(100%, 390px); }
.cms-builder__live-frame-wrap { background: #e8edf3; margin-inline: auto; min-height: 70vh; padding: .65rem; transition: width .2s ease; width: 100%; }
.cms-builder__live-frame-wrap--tablet { width: min(100%, 820px); }
.cms-builder__live-frame-wrap--mobile { width: min(100%, 430px); }
.cms-builder__live-frame { background: #fff; border: 0; box-shadow: 0 1px 8px rgba(20, 35, 55, .14); display: block; min-height: 72vh; width: 100%; }
.cms-builder__preview-section { cursor: pointer; outline: 2px solid transparent; outline-offset: -2px; padding: clamp(1.25rem, 4vw, 3rem); position: relative; }
.cms-builder__preview-section:hover, .cms-builder__preview-section.is-active { outline-color: var(--accent, #2463eb); }
.cms-builder__preview-section.is-unpublished { filter: grayscale(.2); opacity: .55; }
.cms-builder__preview-status { background: #4b5563; color: #fff; font-size: .75rem; left: .55rem; padding: .3rem .5rem; position: absolute; top: .55rem; }
.cms-preview-nested-draft { border: 2px dashed var(--accent, #2463eb); margin: .5rem; }
.cms-builder__preview-actions { background: var(--accent, #2463eb); display: none; gap: .25rem; padding: .25rem; position: absolute; right: .55rem; top: .55rem; z-index: 2; }
.cms-builder__preview-action { align-items: center; background: #fff; border: 0; border-radius: 3px; color: #172033; cursor: pointer; display: inline-flex; height: 30px; justify-content: center; padding: 0; width: 30px; }
.cms-builder__preview-action:hover { background: #edf4ff; color: #1849a9; }
.cms-builder__preview-action svg { height: 17px; pointer-events: none; width: 17px; }
.cms-builder__preview-section:hover .cms-builder__preview-actions, .cms-builder__preview-section.is-active .cms-builder__preview-actions { display: flex; }
.cms-builder__preview-section:nth-child(even) { background: #f6f8fa; }
.cms-builder__preview-section h1, .cms-builder__preview-section h2 { margin-top: 0; }
.cms-builder__preview-grid { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
.cms-builder__preview-card { border: 1px solid #d9dee3; border-radius: 4px; padding: .75rem; }
.cms-builder__preview img { display: block; height: auto; max-width: 100%; }
.cms-builder__compact-actions, .cms-builder__editor-actions { display: flex; flex-wrap: wrap; gap: .4rem; }
.cms-builder__field-list, [data-advanced-fields] { display: grid; gap: .7rem; }
.cms-builder__field { display: grid; gap: .3rem; }
.cms-builder__field-label { font-weight: 600; }
.cms-builder__richtext-source { min-height: 220px; }
.cms-builder__right-drawer .jodit-container { border-color: var(--border, #d9dee3); border-radius: 4px; max-width: 100%; }
.cms-builder__right-drawer .jodit-toolbar__box { border-radius: 4px 4px 0 0; }
.cms-builder__right-drawer .jodit-workplace { min-height: 220px; }
.jodit-container.jodit_fullsize { border-radius: 0; z-index: 10000; }
.cms-builder__richtext-media { display: flex; flex-wrap: wrap; gap: .4rem; }
.cms-builder__richtext-media-label { flex-basis: 100%; font-size: .78rem; font-weight: 600; }
.cms-builder__editor-tabs { margin: 0 0 .75rem; }
.cms-builder__editor-heading { align-items: center; display: flex; justify-content: space-between; margin-top: 1rem; }
.cms-builder__item { border-top: 1px solid var(--border, #d9dee3); display: grid; gap: .55rem; padding: .75rem 0; }
.cms-builder__item-actions { display: flex; flex-wrap: wrap; gap: .35rem; justify-content: flex-end; }
.cms-builder__nested-item { align-items: center; grid-template-columns: minmax(0, 1fr) auto; }
.cms-builder__ai { border-top: 1px solid var(--border, #d9dee3); display: grid; gap: .55rem; margin-top: 1rem; padding-top: 1rem; }
.cms-builder__ai label { display: grid; gap: .35rem; }
.cms-builder__editor-actions { background: var(--panel, #fff); border-top: 1px solid var(--border, #d9dee3); bottom: 0; margin-top: 1rem; padding-top: 1rem; position: sticky; z-index: 4; }
.cms-builder__seo-report { border-top: 1px solid var(--border, #d9dee3); margin-top: 1rem; padding-top: 1rem; }
.cms-builder__meta-section { margin-bottom: 1rem; }
.cms-builder__meta-section .profile-section__heading { align-items: flex-start; gap: .75rem; }
.cms-builder__meta-section .profile-section__heading h3 { margin-bottom: .2rem; }
.cms-builder__meta-section .profile-section__heading p { margin: 0; }
.cms-builder__social-preview { background: #f6f8fa; border: 1px solid var(--border, #d9dee3); border-radius: 4px; margin-top: 1rem; max-width: 600px; overflow: hidden; }
.cms-builder__social-preview img { display: block; height: auto; max-width: 100%; }
.cms-builder__media-actions { align-items: center; background: #f7f9fc; border: 1px dashed var(--border, #d9dee3); border-radius: 4px; display: flex; flex-wrap: wrap; gap: .5rem; padding: .75rem; }
.cms-builder__media-actions.is-dragover { background: #edf4ff; border-color: var(--accent, #2463eb); }
.cms-builder__media-dialog { border: 1px solid var(--border, #d9dee3); border-radius: 5px; max-height: 90vh; max-width: min(1000px, 94vw); padding: 0; width: 100%; }
.cms-builder__media-dialog::backdrop { background: rgba(10, 20, 30, .58); }
.cms-builder__media-grid { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); max-height: 65vh; overflow: auto; }
.cms-builder__media-item { background: #fff; border: 1px solid var(--border, #d9dee3); border-radius: 4px; cursor: pointer; display: grid; gap: .4rem; overflow: hidden; padding: .45rem; text-align: left; }
.cms-builder__media-item:hover { border-color: var(--accent, #2463eb); }
.cms-builder__media-item img { aspect-ratio: 1.5; object-fit: cover; width: 100%; }
.cms-builder__media-item span { font-size: .78rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cms-builder__seo-score { font-size: 1.5rem; font-weight: 700; }
.cms-builder__seo-checks { display: grid; gap: .35rem; list-style: none; padding: 0; }
.cms-builder__seo-checks li { border-left: 3px solid #b42318; padding: .3rem .55rem; }
.cms-builder__seo-checks li.is-ok { border-left-color: #16834b; }
.cms-builder__ai-review { border: 1px solid var(--border, #d9dee3); border-radius: 5px; max-height: 90vh; max-width: min(920px, 94vw); padding: 0; width: 100%; }
.cms-builder__ai-review::backdrop { background: rgba(10, 20, 30, .58); }
.cms-builder__ai-review .profile-section { margin: 0; max-height: 90vh; overflow: auto; }
.cms-builder__ai-review pre, [data-geo-report] pre { background: #f6f8fa; border: 1px solid var(--border, #d9dee3); border-radius: 4px; max-height: 48vh; overflow: auto; padding: .75rem; white-space: pre-wrap; }
[data-ai-review-actions] { display: grid; gap: .65rem; }
[data-ai-review-actions] label { display: grid; gap: .35rem; }
.cms-agent__decision { margin-top: 1rem; }
.cms-agent__decision form { display: grid; gap: .6rem; }
.cms-agent__messages { display: grid; gap: .6rem; margin-bottom: 1rem; }
.cms-agent__message { border-left: 3px solid var(--border, #d9dee3); padding: .55rem .75rem; }
.cms-agent__message--assistant { border-left-color: var(--accent, #2463eb); }
.cms-agent__message p { margin: .25rem 0 0; }
.cms-agent__draft-sections { display: grid; gap: .45rem; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); margin: 1rem 0; }
.cms-agent__draft-sections article { border: 1px solid var(--border, #d9dee3); border-radius: 4px; display: grid; gap: .2rem; padding: .65rem; }
.cms-agent__draft-sections small { color: var(--muted, #667085); }
.cms-menu__root, .cms-menu__children { display: grid; gap: .45rem; list-style: none; margin: .6rem 0; padding-left: 0; }
.cms-menu__children { margin-left: 1.5rem; }
.cms-menu__row { align-items: start; border: 1px solid var(--border, #d9dee3); border-radius: 4px; display: grid; gap: .65rem; grid-template-columns: auto 1fr minmax(90px, auto); padding: .6rem; }
.cms-menu__row > span { display: grid; gap: .15rem; }
.cms-menu__row small { color: var(--muted, #667085); }
.cms-menu__handle { cursor: grab; font-weight: 700; }
.cms-menu__edit { min-width: min(480px, 70vw); padding-top: .6rem; }
@media (max-width: 1250px) { .cms-builder__toolbox:not(.is-collapsed) { width: 250px; } .cms-builder__right-drawer:not(.is-collapsed) { bottom: 0; box-shadow: -4px 0 18px rgba(20,35,55,.18); max-height: calc(100vh - 64px); position: fixed; right: 0; top: 64px; width: min(430px, 94vw); z-index: 60; } }
@media (max-width: 780px) { .cms-builder__workspace { grid-template-columns: minmax(0, 1fr); } .cms-builder__toolbox { bottom: 0; box-shadow: 4px 0 18px rgba(20,35,55,.18); left: 0; max-height: calc(100vh - 64px); position: fixed; top: 64px; z-index: 60; } .cms-builder__toolbox.is-collapsed { display: none; } .cms-builder__compact-actions { margin-top: .5rem; } }
.cms-editorial {
  margin: 0 auto;
  max-width: 1180px;
}

.cms-editorial__form {
  display: grid;
  gap: 14px;
}

.cms-editorial__compact-fields,
.cms-editorial__seo-grid,
.cms-editorial__image-fields {
  display: grid;
  gap: 12px;
}

.cms-editorial__compact-fields label,
.cms-editorial__image-fields label {
  display: grid;
  gap: 5px;
}

.cms-editorial__body-heading {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  margin: 14px 0 7px;
}

.cms-editorial__body-heading > label {
  font-weight: 700;
}

.cms-editorial .jodit-container {
  border-radius: 5px;
  max-width: 100%;
}

.cms-editorial .jodit-toolbar__box {
  border-radius: 5px 5px 0 0;
}

.cms-editorial__image-row {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(220px, 360px) minmax(0, 1fr);
}

.cms-editorial__image-preview {
  align-items: center;
  aspect-ratio: 1200 / 630;
  background: var(--admin-surface-muted, #f4f6f8);
  border: 1px solid var(--admin-border, #d8dee5);
  display: flex;
  justify-content: center;
  min-width: 0;
  overflow: hidden;
}

.cms-editorial__image-preview img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.cms-editorial__seo > summary {
  cursor: pointer;
  list-style: none;
}

.cms-editorial__seo > summary::-webkit-details-marker {
  display: none;
}

.cms-editorial__seo-grid {
  padding: 0 14px 14px;
}

.cms-editorial__link-dialog {
  border: 0;
  max-height: min(720px, 90vh);
  max-width: min(760px, 92vw);
  padding: 0;
  width: 100%;
}

.cms-editorial__link-results {
  display: grid;
  gap: 6px;
  max-height: 520px;
  overflow: auto;
}

.cms-editorial__link-results button {
  background: transparent;
  border: 1px solid var(--admin-border, #d8dee5);
  cursor: pointer;
  display: grid;
  gap: 3px;
  padding: 10px;
  text-align: left;
}

.cms-editorial__link-results button:hover,
.cms-editorial__link-results button:focus-visible {
  border-color: var(--admin-primary, #2463eb);
}

.cms-editorial__link-results small,
.cms-media-library__item small {
  color: var(--admin-muted, #667085);
}

.cms-editorial__spellcheck:not(:empty) {
  margin-top: 7px;
}

.cms-editorial__spellcheck-results {
  border: 1px solid var(--admin-border, #d8dee5);
  display: grid;
  margin-top: 6px;
  max-height: 170px;
  overflow: auto;
}

.cms-editorial__spellcheck-results[hidden] {
  display: none;
}

.cms-editorial__spellcheck-results > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  padding: 6px 9px;
}

.cms-editorial__spellcheck-results > div + div {
  border-top: 1px solid var(--admin-border, #d8dee5);
}

.cms-media-library__grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
}

.cms-media-library__item {
  background: var(--admin-surface, #fff);
  border: 1px solid var(--admin-border, #d8dee5);
  border-radius: 5px;
  min-width: 0;
  overflow: hidden;
}

.cms-media-library__item > img,
.cms-media-library__file {
  align-items: center;
  aspect-ratio: 4 / 3;
  background: var(--admin-surface-muted, #f4f6f8);
  display: flex;
  height: auto;
  justify-content: center;
  object-fit: cover;
  width: 100%;
}

.cms-media-library__item > div:last-child {
  display: grid;
  gap: 5px;
  padding: 10px;
}

.cms-media-library__status:not(:empty) {
  padding: 8px 0;
}

@media (max-width: 720px) {
  .cms-editorial__image-row {
    grid-template-columns: minmax(0, 1fr);
  }
}
