/* Isolated Admin V3 preview: no existing admin or public styles are replaced. */
#adminContent.av3-preview-open > .admin-workspace { display: none !important; }
/* The legacy floating buttons live outside #adminContent; keep them out of V3. */
body.av3-preview-active #quickActions { display: none !important; }
#adminV3Preview[hidden],
#adminV3Preview [hidden],
#adminV3PreviewLaunch[hidden] { display: none !important; }

#adminV3Preview,
#adminV3Preview * { box-sizing: border-box; }

#adminV3Preview {
  --av3-bg: #f4ecdc;
  --av3-surface: #fff9ec;
  --av3-surface-2: #eee0c7;
  --av3-text: #32251e;
  --av3-muted: #765f4e;
  --av3-border: #d9c6a8;
  --av3-accent: #75422d;
  --av3-gold: #b69055;
  --av3-nav: #28221d;
  --av3-nav-text: #f4e4c7;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  width: 100%;
  min-height: min(78vh, 860px);
  color: var(--av3-text);
  background: var(--av3-bg);
  font: 14px/1.45 Georgia, serif;
  border: 1px solid var(--av3-border);
  box-shadow: 0 8px 22px #37201224;
}

#adminV3Preview[data-theme="dark"] {
  --av3-bg: #211d1b;
  --av3-surface: #2d2825;
  --av3-surface-2: #3a322b;
  --av3-text: #f1e5d1;
  --av3-muted: #c0ad92;
  --av3-border: #59483b;
  --av3-accent: #ae865b;
  --av3-gold: #d3aa74;
  --av3-nav: #161311;
  --av3-nav-text: #f1e1c4;
}

#adminV3Preview button,
#adminV3Preview input,
#adminV3Preview select { font-family: inherit; }

#adminV3Preview .av3-side {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: var(--av3-nav);
  color: var(--av3-nav-text);
  border-right: 1px solid #9878534d;
}
#adminV3Preview .av3-brand {
  min-height: 69px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid #98785354;
}
#adminV3Preview .av3-emblem { color: #d3aa74; font-size: 26px; }
#adminV3Preview .av3-brand-label { display: grid; gap: 1px; }
#adminV3Preview .av3-brand-label strong { font-size: 16px; letter-spacing: .09em; }
#adminV3Preview .av3-brand-label small { color: #bda58a; font-size: 9px; letter-spacing: .07em; }
#adminV3Preview .av3-side-search { display:block; padding:10px 10px 0; }
#adminV3Preview .av3-side-search input {
  width:100%;min-width:0;min-height:35px;border:1px solid #9b8166;
  border-radius:5px;background:#382d25;color:#f7eada;
  padding:7px 9px;font-size:12px;
}
#adminV3Preview .av3-side-search input::placeholder {color:#d0b89a;opacity:1;}
#adminV3Preview .av3-side-search input:focus-visible {outline:2px solid #d3aa74;outline-offset:2px;}
#adminV3Preview .av3-nav { display: grid; align-content: start; gap: 9px; padding: 12px 7px; flex: 1; min-height:0;overflow-y:auto; }
#adminV3Preview .av3-nav-empty {color:#ddc6a5;font:12px/1.4 Georgia,serif;padding:7px 9px;}
#adminV3Preview .av3-nav-group { display: grid; gap: 2px; }
#adminV3Preview .av3-nav-label { color: #a18a6a; font: 700 10px/1.4 Georgia, serif; padding: 5px 9px 3px; text-transform: uppercase; letter-spacing: .065em; }
#adminV3Preview .av3-nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 32px;
  padding: 6px 9px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--av3-nav-text);
  text-align: left;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
}
#adminV3Preview .av3-nav-item:hover { background: #a68b612c; }
#adminV3Preview .av3-nav-item.active { background: #ab8b6142; box-shadow: inset 2px 0 0 #d7ab73; color: #fff6e6; }
#adminV3Preview .av3-nav-symbol { width: 17px; flex: none; font-size: 15px; text-align: center; color: #d2b07c; }
#adminV3Preview .av3-side-footer { padding: 12px; border-top: 1px solid #98785354; font-size: 10px; color: #c5b094; }

#adminV3Preview .av3-workspace { min-width: 0; display: flex; flex-direction: column; }
#adminV3Preview .av3-topbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; padding: 12px 18px; min-height: 70px; border-bottom: 1px solid var(--av3-border); background: var(--av3-surface); }
#adminV3Preview .av3-title-wrap,
#adminV3Preview .av3-top-actions { display: flex; align-items: center; gap: 9px; min-width: 0; }
#adminV3Preview .av3-top-actions { flex-wrap: wrap; }
#adminV3Preview .av3-breadcrumb,
#adminV3Preview .av3-main-head small { display: block; color: var(--av3-muted); font-size: 11px; }
#adminV3Preview .av3-title-wrap h2 { margin: 0; font: 700 21px/1.2 Georgia, serif; color: var(--av3-text); }
#adminV3Preview .av3-work-status {
  font-size:11px;line-height:1.25;color:var(--av3-muted);
  border:1px solid var(--av3-border);border-radius:4px;
  background:var(--av3-bg);padding:7px 9px;
}
#adminV3Preview .av3-work-status.has-changes {
  color:var(--av3-accent);font-weight:700;
  border-color:var(--av3-gold);background:var(--av3-surface-2);
}
#adminV3Preview .av3-icon-button,
#adminV3Preview .av3-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 6px 11px;
  border-radius: 5px;
  border: 1px solid var(--av3-border);
  background: var(--av3-surface);
  color: var(--av3-text);
  font: 700 12px/1.2 Georgia, serif;
  cursor: pointer;
}
#adminV3Preview .av3-icon-button { width: 34px; padding: 4px; font-size: 17px; }
#adminV3Preview :is(.av3-button,.av3-icon-button):hover { background: var(--av3-surface-2); }
#adminV3Preview .av3-button.av3-primary { background: var(--av3-accent); color: var(--av3-surface); border-color: var(--av3-accent); }
#adminV3Preview .av3-button.av3-primary:hover { filter: brightness(1.12); }
#adminV3Preview :is(button,input,select):focus-visible { outline: 2px solid var(--av3-gold); outline-offset: 2px; }

#adminV3Preview .av3-columns {
  display: grid;
  flex: 1;
  grid-template-columns: minmax(0, 1fr) 245px;
  min-width: 0;
}
#adminV3Preview .av3-main { min-width: 0; padding: 16px; }
#adminV3Preview .av3-main-head { display: flex; gap: 12px; align-items: center; justify-content: space-between; margin-bottom: 12px; }
#adminV3Preview .av3-main-head strong { display: block; font-size: 17px; }
#adminV3Preview .av3-count { flex: none; font-size: 11px; font-weight: 700; color: var(--av3-muted); }
#adminV3Preview .av3-searchbar { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(120px, 180px) minmax(120px, 160px); gap: 8px; margin-bottom: 11px; }
#adminV3Preview .av3-searchbar label { min-width: 0; margin: 0; }
#adminV3Preview .av3-searchbar :is(input,select) {
  width: 100%;
  min-width: 0;
  min-height: 35px;
  padding: 7px 9px;
  border: 1px solid var(--av3-border);
  border-radius: 5px;
  background: var(--av3-surface);
  color: var(--av3-text);
  font-size: 12px;
}
#adminV3Preview .av3-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#adminV3Preview .av3-table-head,
#adminV3Preview .av3-list-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(95px, 135px) minmax(80px, 115px); gap: 12px; align-items: center; }
#adminV3Preview .av3-table-head { padding: 8px 11px; background: var(--av3-surface-2); border: 1px solid var(--av3-border); color: var(--av3-muted); font-size: 11px; font-weight: 700; }
#adminV3Preview .av3-list { max-height: 58vh; overflow-y: auto; background: var(--av3-surface); border: 1px solid var(--av3-border); border-top: 0; }
#adminV3Preview .av3-list-row { width: 100%; padding: 10px 11px; border: 0; border-bottom: 1px solid var(--av3-border); color: var(--av3-text); background: transparent; text-align: left; font-size: 12px; cursor: pointer; }
#adminV3Preview .av3-list-row:hover { background: var(--av3-bg); }
#adminV3Preview .av3-list-row.active { background: var(--av3-surface-2); box-shadow: inset 3px 0 0 var(--av3-accent); }
#adminV3Preview .av3-list-main { display: grid; gap: 1px; min-width: 0; }
#adminV3Preview .av3-list-main strong { font-size: 13px; overflow-wrap: anywhere; }
#adminV3Preview .av3-list-main small { color: var(--av3-muted); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
#adminV3Preview .av3-list-group,
#adminV3Preview .av3-list-status { min-width: 0; overflow-wrap: anywhere; font-size: 11px; }
#adminV3Preview .av3-table-footer { padding-top: 8px; font-size: 10px; color: var(--av3-muted); }
#adminV3Preview .av3-empty { margin: 20px; color: var(--av3-muted); }
#adminV3Preview .av3-inspector { min-width: 0; padding: 20px 15px; background: var(--av3-surface); border-left: 1px solid var(--av3-border); overflow-wrap: anywhere; }
#adminV3Preview .av3-inspector h3 { margin: 8px 0 4px; font-size: 18px; line-height: 1.3; }
#adminV3Preview .av3-kicker { color: var(--av3-accent); letter-spacing: .06em; font-size: 10px; font-weight: 700; }
#adminV3Preview .av3-muted { color: var(--av3-muted); }
#adminV3Preview .av3-small { font-size: 11px; }
#adminV3Preview .av3-detail-subtitle { color: var(--av3-muted); font-size: 12px; }
#adminV3Preview .av3-metadata { display: grid; grid-template-columns: 58px minmax(0,1fr); gap: 5px 8px; padding: 10px 0; margin: 12px 0; border-block: 1px solid var(--av3-border); font-size: 11px; }
#adminV3Preview .av3-metadata dt { color: var(--av3-muted); }
#adminV3Preview .av3-metadata dd { margin: 0; overflow-wrap: anywhere; }
#adminV3Preview .av3-summary { white-space: pre-wrap; font-size: 12px; }
#adminV3Preview .av3-inspector .av3-button { width: 100%; margin-top: 8px; white-space: normal; }
#adminV3Preview .av3-intro { max-width: 720px; padding: 20px; }
#adminV3Preview .av3-intro h3 { margin: 0 0 8px; font-size: 19px; }
#adminV3Preview .av3-feature-row { display: grid; gap: 2px; margin-bottom: 8px; padding: 10px; background: var(--av3-bg); border: 1px solid var(--av3-border); }
#adminV3Preview .av3-feature-row span { color: var(--av3-muted); font-size: 12px; }
#adminV3Preview.av3-side-collapsed { grid-template-columns: 59px minmax(0,1fr); }
#adminV3Preview.av3-side-collapsed .av3-side-search,
#adminV3Preview.av3-side-collapsed .av3-nav-text,
#adminV3Preview.av3-side-collapsed .av3-nav-label,
#adminV3Preview.av3-side-collapsed .av3-brand-label { display: none; }
#adminV3Preview.av3-side-collapsed .av3-nav-item { justify-content: center; padding-inline: 2px; }
#adminV3Preview.av3-side-collapsed .av3-brand { justify-content: center; padding-inline: 4px; }
#adminV3Preview.av3-side-collapsed .av3-side-footer { display: none; }
.av3-launch:not([hidden]) { border: 1px solid #ba9a68; padding: 6px 10px; border-radius: 5px; background: #352820; color: #fff1d7; font: 700 12px/1.3 Georgia,serif; cursor: pointer; }

@media (max-width: 1100px) {
  #adminV3Preview .av3-columns { grid-template-columns: minmax(0,1fr) 210px; }
  #adminV3Preview .av3-searchbar { grid-template-columns: minmax(0,1fr) minmax(110px, 150px); }
  #adminV3Preview .av3-searchbar label:last-child { grid-column: 1 / -1; }
}
@media (max-width: 780px) {
  #adminV3Preview { grid-template-columns: 58px minmax(0,1fr); }
  #adminV3Preview .av3-side-search,
  #adminV3Preview .av3-side .av3-nav-text,
  #adminV3Preview .av3-side .av3-nav-label,
  #adminV3Preview .av3-brand-label,
  #adminV3Preview .av3-side-footer { display: none; }
  #adminV3Preview .av3-brand { justify-content: center; padding: 6px; }
  #adminV3Preview .av3-nav-item { justify-content: center; padding: 5px; }
  #adminV3Preview .av3-columns { grid-template-columns: 1fr; }
  #adminV3Preview .av3-inspector { border-left: 0; border-top: 1px solid var(--av3-border); }
  #adminV3Preview .av3-work-status {font-size:10px;padding:5px 7px;}
  #adminV3Preview .av3-topbar { padding: 10px; }
  #adminV3Preview .av3-main { padding: 10px; }
}
@media (max-width: 480px) {
  #adminV3Preview .av3-searchbar { grid-template-columns: 1fr; }
  #adminV3Preview .av3-searchbar label:last-child { grid-column: auto; }
  #adminV3Preview .av3-table-head,
  #adminV3Preview .av3-list-row { grid-template-columns: minmax(0,1fr) minmax(70px, 90px); gap: 6px; }
  #adminV3Preview .av3-table-head span:nth-child(2),
  #adminV3Preview .av3-list-group { display: none; }
  #adminV3Preview .av3-top-actions .av3-button { font-size: 11px; padding: 5px 7px; }
}


/* Admin V3 article workbench — isolated in the owner preview. */
#adminV3Preview .av3-document-editor[hidden] { display: none !important; }
#adminV3Preview .av3-columns.av3-article-mode {
  display: block;
}
#adminV3Preview .av3-columns.av3-article-mode > .av3-main,
#adminV3Preview .av3-columns.av3-article-mode > .av3-inspector {
  display: none;
}
#adminV3Preview .av3-document-editor {
  min-width: 0;
  padding: 15px;
  color: var(--av3-text);
}
#adminV3Preview .av3-editor-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 9px;
  margin-bottom: 13px;
}
#adminV3Preview .av3-editor-history { display: inline-flex; flex-wrap: wrap; gap: 5px; }
#adminV3Preview .av3-editor-history .av3-button { padding: 5px 9px; font-size: 11px; }
#adminV3Preview .av3-editor-history .av3-button:disabled { opacity: .45; cursor: default; }
#adminV3Preview .av3-editor-dirty { color: var(--av3-muted); font-size: 11px; }
#adminV3Preview .av3-editor-dirty.is-dirty { color: var(--av3-accent); font-weight: 700; }
#adminV3Preview .av3-editor-grid {
  display: grid;
  /* Give the actual article canvas the space formerly wasted around its 920px cap.
     A wider, proportional inspector keeps Russian block titles legible. */
  grid-template-columns: minmax(0, 1fr) clamp(280px, 25%, 355px);
  gap: clamp(10px, 1vw, 18px);
  width: 100%;
  min-width: 0;
  align-items: start;
}
#adminV3Preview .av3-document-editor.av3-article-focus .av3-editor-grid {
  grid-template-columns: minmax(0, 1fr);
}
#adminV3Preview .av3-editor-sheet,
#adminV3Preview .av3-editor-properties {
  border: 1px solid var(--av3-border);
  background: var(--av3-surface);
  min-width: 0;
  padding: clamp(12px, 1.5vw, 22px);
}
#adminV3Preview .av3-editor-sheet {
  /* The old 920px max-width caused conspicuous empty gutters on wide screens. */
  max-width: none;
  width: 100%;
  justify-self: stretch;
}
/* Article owner preview: local, read-only draft view; never substitute
   placeholders for interactive maps or other specialized public widgets. */
#adminV3Preview .av3-document-editor.av3-previewing .av3-editor-sheet > :not(.av3-v3-preview-panel) {display:none!important;}
#adminV3Preview .av3-v3-preview-panel[hidden] {display:none!important;}
#adminV3Preview .av3-draft-preview-notice {
  padding:12px 15px;margin-bottom:20px;border:1px solid var(--av3-gold);
  background:var(--av3-surface-2);font-size:12px;line-height:1.5;
}
#adminV3Preview .av3-draft-preview-notice strong {display:block;color:var(--av3-accent);font-size:14px;}
#adminV3Preview .av3-draft-preview-notice p {margin:6px 0 0;}
#adminV3Preview .av3-draft-preview-document {
  display:grid;gap:13px;max-width:100%;overflow-wrap:anywhere;
  color:var(--av3-text);font:16px/1.55 Georgia,serif;
}
#adminV3Preview .av3-draft-preview-title {font-size:clamp(24px,3vw,36px);line-height:1.2;margin:0;}
#adminV3Preview .av3-draft-preview-summary {margin:0 0 8px;color:var(--av3-muted);}
#adminV3Preview .av3-draft-preview-document :is(h2,h3,h4,p,blockquote,ul) {margin:0;}
#adminV3Preview .av3-draft-preview-document h2 {font-size:26px;line-height:1.3;}
#adminV3Preview .av3-draft-preview-document h3 {font-size:22px;line-height:1.3;}
#adminV3Preview .av3-draft-preview-document h4 {font-size:19px;line-height:1.35;}
#adminV3Preview .av3-draft-preview-quote {border-left:3px solid var(--av3-gold);padding:6px 14px;background:var(--av3-bg);}
#adminV3Preview .av3-draft-preview-image {margin:0;display:grid;gap:6px;}
#adminV3Preview .av3-draft-preview-image img {display:block;max-width:100%;height:auto;object-fit:contain;}
#adminV3Preview .av3-draft-preview-image figcaption {font-size:12px;color:var(--av3-muted);}
#adminV3Preview .av3-draft-preview-table-wrap {min-width:0;max-width:100%;overflow-x:auto;}
#adminV3Preview .av3-draft-preview-table {border-collapse:collapse;width:100%;font-size:13px;}
#adminV3Preview .av3-draft-preview-table :is(td,th) {border:1px solid var(--av3-border);padding:8px;vertical-align:top;white-space:pre-wrap;}
#adminV3Preview .av3-draft-preview-table th {background:var(--av3-surface-2);}
#adminV3Preview .av3-draft-preview-special {padding:14px;border:1px dashed var(--av3-border);background:var(--av3-bg);}
#adminV3Preview .av3-draft-preview-special p,
#adminV3Preview .av3-draft-preview-warning {font-size:12px;line-height:1.5;color:var(--av3-muted);}
#adminV3Preview .av3-draft-preview-divider {border:0;border-top:1px solid var(--av3-border);width:100%;}
#adminV3Preview .av3-editor-toolbar [data-wb="toggle-preview"][aria-pressed="true"] {
  border-color:var(--av3-gold);background:var(--av3-surface-2);font-weight:700;
}
#adminV3Preview .av3-editor-lede {
  color: var(--av3-accent); font-size: 10px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  margin-bottom: 12px;
}
#adminV3Preview .av3-editor-field { display: grid; gap: 6px; margin: 0 0 13px; font-size: 12px; font-weight: 700; }
#adminV3Preview .av3-editor-field span { color: var(--av3-muted); }
#adminV3Preview .av3-editor-field :is(input,textarea,select) {
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid var(--av3-border);
  border-radius: 4px;
  background: var(--av3-surface);
  color: var(--av3-text);
  font-size: 14px;
  padding: 9px 11px;
}
#adminV3Preview .av3-editor-field textarea { resize: vertical; }
#adminV3Preview [data-wb="title"] { font-size: clamp(18px, 2vw, 25px); font-weight: 700; }
#adminV3Preview .av3-editor-separator {
  display: flex; justify-content: space-between; align-items: center; gap: 9px;
  border-top: 1px solid var(--av3-border);
  padding: 14px 0 9px;
}
#adminV3Preview .av3-editor-separator strong { font-size: 17px; }
#adminV3Preview .av3-editor-separator small { font-size: 11px; color: var(--av3-muted); }
#adminV3Preview .av3-editor-blocks { display: grid; gap: 8px; }
#adminV3Preview .av3-editor-block {
  border: 1px solid var(--av3-border);
  background: var(--av3-bg);
  border-radius: 4px;
  min-width: 0;
  overflow: hidden;
}
#adminV3Preview .av3-editor-block-head {
  display: flex; align-items: center; gap: 5px;
  min-height: 28px;
  padding: 5px 8px;
  background: var(--av3-surface-2);
}
#adminV3Preview .av3-editor-block-type {
  color: var(--av3-muted);
  font-size: 11px;
  font-weight: 700;
  flex: 1;
}
#adminV3Preview .av3-editor-block-head .av3-icon-button {
  min-height: 25px;
  width: 27px;
  font-size: 13px;
  padding: 0;
}
#adminV3Preview .av3-editor-block-head .av3-icon-button:disabled { opacity: .35; cursor: default; }
#adminV3Preview .av3-editor-heading-level {
  border: 1px solid var(--av3-border);
  border-radius: 4px;
  min-height: 25px;
  padding: 2px 3px;
  background: var(--av3-surface);
  color: var(--av3-text);
  font: 700 11px Georgia, serif;
}
#adminV3Preview .av3-inline-heading[data-level="1"] { font-size: 26px; }
#adminV3Preview .av3-inline-heading[data-level="2"] { font-size: 22px; }
#adminV3Preview .av3-inline-heading[data-level="3"] { font-size: 18px; }
#adminV3Preview .av3-editor-block-head .av3-editor-add {
  width: 32px; font-size: 11px; font-weight: 700;
  color: var(--av3-accent); background: var(--av3-surface);
}
#adminV3Preview .av3-editor-add:focus-visible { outline: 2px solid var(--av3-gold); outline-offset: 1px; }
#adminV3Preview .av3-editor-remove:hover { color: #9d3727; }
#adminV3Preview :is(.av3-inline-heading,.av3-inline-paragraph) {
  font-family: Georgia,serif;
  display: block;
  width: 100%;
  min-width: 0;
  border: 0;
  box-sizing: border-box;
  outline-offset: -2px;
  background: var(--av3-surface);
  color: var(--av3-text);
  padding: 10px 12px;
  resize: vertical;
  line-height: 1.45;
}
#adminV3Preview .av3-inline-heading { font-size: 20px; font-weight: 700; }
#adminV3Preview .av3-inline-paragraph { font-size: 15px; min-height: 54px; }
#adminV3Preview :is(.av3-inline-quote,.av3-inline-list) {
  display: block; width: 100%; min-height: 54px; padding: 10px 12px;
  box-sizing: border-box; background: var(--av3-surface); color: var(--av3-text);
  font: 15px/1.5 Georgia, serif; border: 0; resize: vertical;
}
#adminV3Preview .av3-inline-quote { border-left: 3px solid var(--av3-gold); font-style: italic; }
#adminV3Preview .av3-editor-slash-menu {
  display: block; margin: 4px 8px 8px; width: calc(100% - 16px);
  border: 1px solid var(--av3-border); border-radius: 4px;
  background: var(--av3-surface); color: var(--av3-text); padding: 8px;
}
#adminV3Preview .av3-editor-slash-menu[hidden] { display: none !important; }
#adminV3Preview .av3-editor-block-head[draggable="true"] { cursor: grab; }
#adminV3Preview .av3-special-block {
  display: grid; gap: 4px;
  padding: 10px 12px;
  border-left: 3px solid var(--av3-gold);
  overflow-wrap: anywhere;
}
#adminV3Preview .av3-special-block strong { font-size: 13px; }
#adminV3Preview .av3-special-block small { font-size: 11px; color: var(--av3-muted); }
#adminV3Preview .av3-editor-insert {
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 11px;
}
#adminV3Preview .av3-editor-properties {
  position: sticky;
  top: 10px;
  width: 100%;
  min-width: 0;
  max-height: calc(100vh - 24px);
  overflow-y: auto;
  scrollbar-width: thin;
}
#adminV3Preview .av3-editor-properties[hidden] {display:none !important;}
#adminV3Preview .av3-editor-properties :is(dd,dt,p,strong,small) {
  overflow-wrap: anywhere;
}
#adminV3Preview .av3-editor-toolbar [data-wb="toggle-properties"] {
  white-space: normal;
  min-width: 110px;
}
#adminV3Preview .av3-editor-properties > strong { display: block; margin-bottom: 12px; }
#adminV3Preview .av3-editor-properties .av3-metadata { margin: 12px 0; }
#adminV3Preview .av3-block-outline-panel {
  display:grid;gap:8px;min-width:0;
  border-block:1px solid var(--av3-border);padding:13px 0;margin:12px 0;
}
#adminV3Preview .av3-block-outline-panel > strong {font-size:14px;}
#adminV3Preview .av3-block-outline-panel .av3-editor-field {margin:0;}
#adminV3Preview .av3-block-outline-option {
  display:flex;align-items:center;gap:7px;
  color:var(--av3-text);font:12px/1.3 Georgia,serif;cursor:pointer;
}
#adminV3Preview .av3-block-outline-option input {accent-color:var(--av3-accent);width:16px;height:16px;margin:0;flex:none;}
#adminV3Preview .av3-block-outline-count {color:var(--av3-muted);font-size:11px;}
#adminV3Preview .av3-block-outline-list {
  display:grid;gap:4px;align-content:start;
  max-height:min(55vh,580px);min-width:0;overflow-y:auto;
  scrollbar-width:thin;
}
#adminV3Preview .av3-block-outline-item {
  display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;
  min-width:0;width:100%;padding:7px;border:1px solid var(--av3-border);
  border-radius:4px;background:var(--av3-bg);color:var(--av3-text);
  text-align:left;cursor:pointer;
}
#adminV3Preview .av3-block-outline-item:hover,
#adminV3Preview .av3-block-outline-item.active {background:var(--av3-surface-2);border-color:var(--av3-gold);}
#adminV3Preview .av3-block-outline-item:focus-visible {outline:2px solid var(--av3-gold);outline-offset:1px;}
#adminV3Preview .av3-block-outline-index {color:var(--av3-muted);font:700 11px/1.4 Georgia,serif;}
#adminV3Preview .av3-block-outline-copy {display:grid;gap:2px;min-width:0;}
#adminV3Preview .av3-block-outline-copy strong {
  font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;
}
#adminV3Preview .av3-block-outline-copy small {
  font-size:12px;
  line-height:1.45;
  color:var(--av3-muted);
  white-space:normal;
  overflow-wrap:anywhere;
  /* Do not truncate long Russian titles/descriptions; scroll the list instead. */
  display:block;
}
#adminV3Preview .av3-editor-block.av3-editor-block-target {
  outline:2px solid var(--av3-gold);outline-offset:2px;
}
@media (max-width: 1120px) {
  /* On compact laptop widths, show the inspector above the canvas rather than
     squeezing the article into a narrow column. */
  #adminV3Preview .av3-editor-grid { grid-template-columns: minmax(0, 1fr); }
  #adminV3Preview .av3-editor-properties {
    position: static;
    max-height: none;
    overflow: visible;
    order: -1;
  }
  #adminV3Preview .av3-block-outline-list {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-height:250px;
  }
}
@media (max-width: 600px) {
  #adminV3Preview .av3-document-editor { padding: 8px; }
  #adminV3Preview .av3-editor-toolbar .av3-button { font-size: 11px; }
  #adminV3Preview .av3-editor-sheet,
  #adminV3Preview .av3-editor-properties { padding: 12px; }
  #adminV3Preview .av3-block-outline-list {grid-template-columns:minmax(0,1fr);}
}

/* Owner-only V3 card workbench; shared theme variables from the V3 shell. */
#adminV3Preview .av3-columns.av3-card-mode { display: block; }
#adminV3Preview .av3-columns.av3-card-mode > :is(.av3-main,.av3-inspector) { display: none; }
#adminV3Preview .av3-card-workbench { min-width: 0; padding: 12px; color: var(--av3-text); }
#adminV3Preview .av3-card-workbench[hidden] { display: none !important; }
#adminV3Preview .av3-card-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; justify-content: space-between; padding-bottom: 12px; }
#adminV3Preview .av3-card-save-status { color: var(--av3-muted); font-size: 12px; }
#adminV3Preview .av3-card-save-status.is-dirty { color: var(--av3-accent); font-weight: 700; }
#adminV3Preview .av3-card-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(235px, .75fr); gap: 12px; align-items: start; }
#adminV3Preview :is(.av3-card-form,.av3-card-preview) { min-width: 0; background: var(--av3-surface); border: 1px solid var(--av3-border); padding: clamp(12px,1.5vw,20px); }
#adminV3Preview .av3-card-preview { position: sticky; top: 10px; }
#adminV3Preview .av3-card-preview > strong { display: block; margin-bottom: 12px; }
#adminV3Preview .av3-card-preview .database-card { max-width: 100%; }
#adminV3Preview .av3-card-lede { margin-bottom: 14px; font-size: 12px; font-weight: 700; color: var(--av3-accent); }
#adminV3Preview .av3-card-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px 12px; }
#adminV3Preview .av3-card-field { display: grid; gap: 5px; min-width: 0; font-size: 12px; font-weight: 700; }
#adminV3Preview .av3-card-field span { color: var(--av3-muted); overflow-wrap: anywhere; }
#adminV3Preview .av3-card-field :is(input,textarea) { min-width: 0; width: 100%; padding: 8px 10px; border: 1px solid var(--av3-border); border-radius: 4px; background: var(--av3-surface); color: var(--av3-text); font: 13px/1.35 Georgia,serif; box-sizing: border-box; }
#adminV3Preview .av3-card-field textarea { resize: vertical; grid-column: auto; }
#adminV3Preview .av3-card-active { display: flex; align-items: center; gap: 8px; margin: 14px 0; font-size: 13px; }
#adminV3Preview .av3-card-more { margin-top: 15px; border-top: 1px solid var(--av3-border); padding-top: 13px; }
#adminV3Preview .av3-card-more > summary { cursor: pointer; font-weight: 700; margin-bottom: 12px; }
#adminV3Preview .av3-card-property-filter {
  display:flex;gap:10px;align-items:end;justify-content:space-between;
  flex-wrap:wrap;min-width:0;margin-bottom:12px;
  padding:10px;border:1px solid var(--av3-border);background:var(--av3-bg);
}
#adminV3Preview .av3-card-property-filter .av3-card-field {
  flex:1 1 220px;max-width:540px;margin:0;
}
#adminV3Preview .av3-card-property-filter small {font-size:11px;color:var(--av3-muted);}
#adminV3Preview .av3-card-property[hidden] {display:none !important;}
@media(max-width: 1050px) {
  #adminV3Preview .av3-card-grid { grid-template-columns: minmax(0,1fr); }
  #adminV3Preview .av3-card-preview { position: static; }
}
@media(max-width: 580px) {
  #adminV3Preview .av3-card-fields { grid-template-columns: minmax(0,1fr); }
  #adminV3Preview .av3-card-workbench { padding: 7px; }
}

/* Admin V3 settings hub: independent fade sliders and functional legacy links. */
#adminV3Preview .av3-columns.av3-settings-mode { display: block; }
#adminV3Preview .av3-columns.av3-settings-mode > :is(.av3-main,.av3-inspector) { display: none; }
#adminV3Preview .av3-settings-workbench { min-width: 0; padding: 14px; color: var(--av3-text); }
#adminV3Preview .av3-settings-workbench[hidden] { display: none !important; }
#adminV3Preview .av3-settings-toolbar { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding-bottom: 14px; }
#adminV3Preview .av3-settings-toolbar span { font-size: 12px; color: var(--av3-muted); }
#adminV3Preview .av3-settings-toolbar span.is-dirty { font-weight: 700; color: var(--av3-accent); }
#adminV3Preview .av3-settings-content { display: grid; gap: 12px; }
#adminV3Preview .av3-settings-content h3 { font-size: 19px; margin: 0; }
#adminV3Preview .av3-settings-content h4 { font-size: 15px; margin: 0 0 12px; }
#adminV3Preview .av3-settings-panel { border: 1px solid var(--av3-border); background: var(--av3-surface); padding: clamp(12px,1.5vw,20px); min-width: 0; }
#adminV3Preview .av3-settings-fades { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 16px; }
#adminV3Preview .av3-settings-fade { display: grid; grid-template-columns: minmax(0,1fr) 70px; gap: 7px 12px; align-items: center; padding: 8px; background: var(--av3-bg); border-radius: 5px; }
#adminV3Preview .av3-settings-fade > span { grid-column: 1/-1; font-weight: 700; font-size: 12px; }
#adminV3Preview .av3-settings-fade input { width: 100%; accent-color: var(--av3-accent); }
#adminV3Preview .av3-settings-fade output { text-align: right; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
#adminV3Preview .av3-settings-groups { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
#adminV3Preview .av3-settings-group { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; padding: 12px; border: 1px solid var(--av3-border); }
#adminV3Preview .av3-settings-group > div { display: grid; gap: 3px; }
#adminV3Preview .av3-settings-group small { color: var(--av3-muted); font-size: 11px; }
@media(max-width: 900px) {
  #adminV3Preview :is(.av3-settings-fades,.av3-settings-groups) { grid-template-columns: 1fr; }
}

/* Owner-only V3 inline rich-text formatting */
#adminV3Preview .av3-rich-editor { min-width:0; background:var(--av3-surface); }
#adminV3Preview .av3-rich-toolbar {
  display:flex;flex-wrap:wrap;align-items:end;gap:6px;
  padding:9px;border-bottom:1px solid var(--av3-border);
}
#adminV3Preview .av3-rich-control {display:grid;gap:3px;min-width:0;color:var(--av3-muted);font:11px Georgia,serif;}
#adminV3Preview .av3-rich-select {
  width:auto;max-width:180px;min-height:30px;min-width:80px;
  padding:4px 6px;border:1px solid var(--av3-border);border-radius:4px;
  background:var(--av3-surface);color:var(--av3-text);font:12px Georgia,serif;
}
#adminV3Preview .av3-rich-select:focus-visible {outline:2px solid var(--av3-gold);}
@media(max-width:600px) {
  #adminV3Preview .av3-rich-toolbar {gap:5px;padding:7px;}
  #adminV3Preview .av3-rich-select {max-width:135px;}
}
#adminV3Preview .av3-rich-button { min-width:29px; min-height:28px; padding:3px 7px; border:1px solid var(--av3-border); border-radius:4px; background:var(--av3-bg); color:var(--av3-text); font:700 13px Georgia,serif; cursor:pointer; }
#adminV3Preview .av3-rich-button:nth-child(2) { font-style:italic; }
#adminV3Preview .av3-rich-button:nth-child(3) { text-decoration:underline; }
#adminV3Preview .av3-rich-content { min-height:50px; min-width:0; padding:10px 12px; outline-offset:-3px; background:var(--av3-surface); color:var(--av3-text); font:15px/1.55 Georgia,serif; white-space:pre-wrap; overflow-wrap:anywhere; }
#adminV3Preview .av3-rich-content a { color:var(--av3-accent); text-decoration:underline; }
#adminV3Preview .av3-rich-content img { max-width:100%; height:auto; }
#adminV3Preview .av3-rich-content:focus-visible { outline:2px solid var(--av3-gold); }
#adminV3Preview .av3-rich-hint { display:block; padding:0 11px 7px; color:var(--av3-muted); font-size:10px; }

/* Inline image/table block editing, scoped to owner-only V3. */
#adminV3Preview .av3-image-editor { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; padding:12px; min-width:0; }
#adminV3Preview .av3-image-editor .av3-editor-field { margin:0; min-width:0; }
#adminV3Preview .av3-image-editor > small { grid-column:1/-1; overflow-wrap:anywhere; }
#adminV3Preview .av3-image-preview { display:block; grid-column:1/-1; max-width:100%; max-height:260px; height:auto; object-fit:contain; margin:auto; }
#adminV3Preview .av3-image-preview[hidden] { display:none !important; }
#adminV3Preview .av3-table-editor { max-width:100%; overflow-x:auto; padding:10px; }
#adminV3Preview .av3-table-tools {
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;
  margin-bottom:9px;padding:8px;border:1px solid var(--av3-border);
  background:var(--av3-surface-2);
}
#adminV3Preview .av3-table-tools .av3-button {padding:5px 8px;font:12px Georgia,serif;}
#adminV3Preview .av3-table-tools .av3-button:disabled {opacity:.4;cursor:default;}
#adminV3Preview .av3-table-tools > small:first-child {margin-right:auto;min-width:105px;}
@media(max-width:600px) {
  #adminV3Preview .av3-table-tools > small:first-child {flex:1 1 100%;}
  #adminV3Preview .av3-table-tools .av3-button {flex:1 1 auto;}
}
#adminV3Preview .av3-table-merge-panel {
  display:flex;align-items:end;gap:9px;flex-wrap:wrap;
  margin-top:10px;padding:12px;border:1px solid var(--av3-border);
  background:var(--av3-surface-2);min-width:0;
}
#adminV3Preview .av3-table-merge-panel > strong {
  flex:1 1 100%;font:700 14px/1.35 Georgia,serif;
}
#adminV3Preview .av3-table-merge-panel .av3-v3-cell-field {
  flex:0 1 140px;min-width:90px;
}
#adminV3Preview .av3-table-merge-panel .av3-button {
  min-height:35px;padding:7px 10px;white-space:nowrap;
}
#adminV3Preview .av3-table-merge-panel .av3-button:disabled {
  opacity:.48;cursor:not-allowed;
}
#adminV3Preview .av3-table-merge-panel > small {
  flex:1 1 100%;overflow-wrap:anywhere;font:12px/1.5 Georgia,serif;
}
@media(max-width:650px) {
  #adminV3Preview .av3-table-merge-panel .av3-v3-cell-field {flex:1 1 calc(50% - 8px);}
  #adminV3Preview .av3-table-merge-panel .av3-button {flex:1 1 auto;}
}
#adminV3Preview .av3-table-grid { border-collapse:collapse; min-width:max-content; width:100%; table-layout:fixed; }
#adminV3Preview .av3-table-grid th, #adminV3Preview .av3-table-grid td { min-width:125px; border:1px solid var(--av3-border); padding:4px; }
#adminV3Preview .av3-table-grid th { background:var(--av3-surface-2); }
#adminV3Preview .av3-table-grid input { width:100%; min-width:0; box-sizing:border-box; border:0; background:var(--av3-surface); color:var(--av3-text); padding:7px 8px; font:13px Georgia,serif; }
#adminV3Preview .av3-table-grid .av3-table-cell-selected {outline:2px solid var(--av3-gold);outline-offset:-2px;}
#adminV3Preview .av3-v3-cell-editor,
#adminV3Preview .av3-table-dimensions {
  display:flex;align-items:end;gap:8px;flex-wrap:wrap;
  margin-top:10px;padding:11px;border:1px solid var(--av3-border);
  background:var(--av3-surface-2);min-width:0;
}
#adminV3Preview .av3-v3-cell-editor > .av3-cell-coord {flex:1 1 100%;font-size:13px;}
#adminV3Preview .av3-v3-cell-controls {
  display:flex;flex-wrap:wrap;gap:8px;align-items:end;flex:1 1 100%;
}
#adminV3Preview .av3-v3-cell-field {
  display:grid;gap:5px;min-width:100px;flex:1 1 110px;
  font:12px/1.3 Georgia,serif;color:var(--av3-text);
}
#adminV3Preview .av3-v3-cell-field :is(input,select) {
  box-sizing:border-box;width:100%;min-height:35px;min-width:0;
  border:1px solid var(--av3-border);border-radius:4px;
  background:var(--av3-surface);color:var(--av3-text);
  padding:5px 8px;font:12px Georgia,serif;
}
#adminV3Preview .av3-v3-cell-field input[type="color"] {padding:3px;max-width:105px;}
#adminV3Preview .av3-table-dimensions .av3-v3-cell-field {flex:1 1 165px;}
#adminV3Preview .av3-v3-cell-editor > small,
#adminV3Preview .av3-table-dimensions > small {flex:1 1 100%;}
#adminV3Preview .av3-v3-cell-editor .av3-button,
#adminV3Preview .av3-table-dimensions .av3-button {padding:7px 9px;font-size:12px;}
@media(max-width:650px) {
  #adminV3Preview .av3-v3-cell-controls {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  #adminV3Preview .av3-v3-cell-field {min-width:0;}
}
#adminV3Preview .av3-table-editor > small { display:block; margin-top:7px; font-size:11px; }
@media(max-width:650px) { #adminV3Preview .av3-image-editor { grid-template-columns:minmax(0,1fr); } }

/* V3: complete long card fields and structured combo editing. */
#adminV3Preview .av3-card-form .av3-card-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
#adminV3Preview .av3-card-field-long { grid-column:1/-1; }
#adminV3Preview .av3-card-field textarea.av3-card-large-input {
  display:block; width:100%; min-width:0; min-height:128px; max-height:520px;
  padding:11px 12px; font:13px/1.6 Georgia,serif; white-space:pre-wrap;
  resize:vertical; overflow-y:auto; overflow-wrap:anywhere;
}
#adminV3Preview .av3-card-field textarea[aria-invalid="true"] { outline:2px solid #b74b3b; }
#adminV3Preview .av3-card-length { font:11px Georgia,serif; font-weight:400; color:var(--av3-muted); }
#adminV3Preview .av3-card-combo-editor { display:grid; gap:9px; padding:12px;
  border:1px solid var(--av3-border); background:var(--av3-bg); min-width:0; }
#adminV3Preview .av3-card-combo-editor h4 { margin:0; font:700 16px Georgia,serif; }
#adminV3Preview .av3-card-combo-step { display:grid; grid-template-columns:60px minmax(145px,1fr) repeat(2,minmax(105px,.7fr));
  align-items:center; gap:10px; padding:10px; background:var(--av3-surface); border:1px solid var(--av3-border); min-width:0; }
#adminV3Preview .av3-card-combo-step select { width:100%; min-width:0; padding:7px; border:1px solid var(--av3-border);
  color:var(--av3-text); background:var(--av3-surface); }
#adminV3Preview .av3-card-combo-flag { display:flex; flex-direction:row; align-items:center; gap:6px; font-size:11px; }
#adminV3Preview .av3-card-combo-step > small { grid-column:1/-1; }
#adminV3Preview .av3-card-combo-advanced { padding:10px; border:1px solid var(--av3-border); }
#adminV3Preview .av3-card-combo-advanced summary { cursor:pointer; font-weight:700; font-size:12px; }
#adminV3Preview .av3-card-combo-advanced .av3-card-field { margin-top:10px; }
#adminV3Preview .av3-card-combo-advanced textarea { min-height:190px !important; font:12px/1.5 ui-monospace,monospace !important; }
@media(max-width:1050px) { #adminV3Preview .av3-card-combo-step { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } }
@media(max-width:580px) { #adminV3Preview .av3-card-combo-step { grid-template-columns:minmax(0,1fr); } }

/* Admin V3 card fields: reorder, custom label, add missing properties. */
#adminV3Preview .av3-card-property { display:grid; gap:8px; min-width:0; border:1px solid var(--av3-border); padding:10px; }
#adminV3Preview .av3-card-property:has(.av3-card-field-long) { grid-column:1/-1; }
#adminV3Preview .av3-card-property-tools { display:flex; justify-content:space-between; align-items:center; gap:7px; flex-wrap:wrap; }
#adminV3Preview .av3-card-property-tools strong { margin-right:auto; overflow-wrap:anywhere; font-size:12px; }
#adminV3Preview .av3-card-property-tools .av3-button { padding:3px 7px; min-width:28px; font-weight:700; }
#adminV3Preview .av3-card-property-tools .av3-button:disabled { opacity:.35; cursor:default; }
#adminV3Preview .av3-card-label-editor { display:grid; gap:4px; color:var(--av3-muted); font-size:11px; }
#adminV3Preview .av3-card-label-editor input { padding:6px 8px; min-width:0; width:100%; box-sizing:border-box; border:1px solid var(--av3-border); background:var(--av3-surface); color:var(--av3-text); }
#adminV3Preview .av3-card-add-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; align-items:center; padding:12px; border:1px dashed var(--av3-border); margin-top:12px; }
#adminV3Preview .av3-card-add-fields > strong { grid-column:1/-1; }
#adminV3Preview .av3-card-add-fields :is(input,select) { min-width:0; width:100%; padding:8px 10px; box-sizing:border-box; background:var(--av3-surface); color:var(--av3-text); border:1px solid var(--av3-border); }
#adminV3Preview .av3-card-add-fields > small { grid-column:1/-1; }
@media(max-width:660px) { #adminV3Preview .av3-card-add-fields { grid-template-columns:minmax(0,1fr); } }

/* V3 combo: editable structured effect lists, including empty steps. */
#adminV3Preview .av3-card-combo-effects {
  grid-column:1/-1; width:100%; min-width:0; padding:9px 10px;
  border:1px solid var(--av3-border); background:var(--av3-bg);
}
#adminV3Preview .av3-card-combo-effects > summary { cursor:pointer; font-size:12px; font-weight:700; }
#adminV3Preview .av3-card-combo-effects .av3-card-field { margin-top:10px; }
#adminV3Preview .av3-card-combo-effects textarea { min-height:130px !important;
  font:12px/1.5 ui-monospace,monospace !important; }


/* Owner-only Home workbench, using Admin V3 parchment design tokens. */
#adminV3Preview .av3-columns.av3-home-mode {display:block;}
#adminV3Preview .av3-columns.av3-home-mode > :is(.av3-main,.av3-inspector) {display:none;}
#adminV3Preview .av3-home-workbench {min-width:0;padding:clamp(11px,1.5vw,20px);color:var(--av3-text);}
#adminV3Preview .av3-home-workbench[hidden] {display:none!important;}
#adminV3Preview .av3-home-content {display:grid;gap:13px;}
#adminV3Preview .av3-home-content h3 {margin:0 0 5px;font:700 20px/1.25 Georgia,serif;}
#adminV3Preview .av3-home-content p {margin:0 0 10px;font-size:12px;}
#adminV3Preview .av3-home-content h4 {margin:0 0 12px;color:var(--av3-text);}
#adminV3Preview .av3-home-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 15px;}
#adminV3Preview .av3-home-field {display:grid;gap:5px;min-width:0;font-size:12px;color:var(--av3-text);}
#adminV3Preview .av3-home-field > span {font-weight:700;}
#adminV3Preview .av3-home-field :is(input,textarea) {box-sizing:border-box;width:100%;min-width:0;min-height:36px;
  border:1px solid var(--av3-border);border-radius:5px;padding:8px 10px;
  background:var(--av3-surface);color:var(--av3-text);font:13px/1.4 Georgia,serif;}
#adminV3Preview .av3-home-field textarea {min-height:80px;resize:vertical;grid-column:1/-1;}
#adminV3Preview .av3-home-flags {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
#adminV3Preview .av3-home-flag {display:flex;align-items:center;gap:9px;min-height:36px;
  border:1px solid var(--av3-border);border-radius:5px;padding:7px 10px;
  background:var(--av3-bg);font-size:12px;cursor:pointer;}
#adminV3Preview .av3-home-flag input {flex:none;accent-color:var(--av3-accent);}
#adminV3Preview .av3-home-sides {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
#adminV3Preview .av3-home-side {min-width:0;display:grid;align-content:start;gap:8px;}
#adminV3Preview .av3-home-side h5 {font:700 13px Georgia,serif;margin:0;}
#adminV3Preview .av3-home-widget {min-width:0;display:grid;gap:8px;background:var(--av3-bg);
  border:1px solid var(--av3-border);padding:9px;}
#adminV3Preview .av3-home-widget .av3-home-flag {border:0;padding:0;}
#adminV3Preview .av3-home-content > .av3-button {justify-self:start;}
@media(max-width:800px) {
  #adminV3Preview .av3-home-fields,
  #adminV3Preview .av3-home-flags,
  #adminV3Preview .av3-home-sides {grid-template-columns:minmax(0,1fr);}
}


/* Owner-only Menu workbench. No public styles or legacy editor overrides. */
#adminV3Preview .av3-columns.av3-menu-mode {display:block;}
#adminV3Preview .av3-columns.av3-menu-mode > :is(.av3-main,.av3-inspector) {display:none;}
#adminV3Preview .av3-menu-workbench {padding:clamp(11px,1.5vw,20px);min-width:0;color:var(--av3-text);}
#adminV3Preview .av3-menu-workbench[hidden] {display:none!important;}
#adminV3Preview .av3-menu-intro {margin-bottom:15px;}
#adminV3Preview .av3-menu-intro h3 {margin:0 0 5px;font:700 20px/1.25 Georgia,serif;}
#adminV3Preview .av3-menu-intro p {font-size:12px;margin:0;}
#adminV3Preview .av3-menu-list {display:grid;gap:10px;}
#adminV3Preview .av3-menu-item {min-width:0;border:1px solid var(--av3-border);
  background:var(--av3-surface);padding:12px;}
#adminV3Preview .av3-menu-item-head {display:flex;flex-wrap:wrap;align-items:center;
  justify-content:space-between;gap:8px;margin-bottom:9px;}
#adminV3Preview .av3-menu-item-head strong {font:700 14px/1.3 Georgia,serif;overflow-wrap:anywhere;}
#adminV3Preview .av3-menu-reorder {display:flex;gap:5px;}
#adminV3Preview .av3-menu-reorder .av3-button {min-width:31px;padding:5px;}
#adminV3Preview .av3-menu-reorder .av3-button:disabled {opacity:.35;cursor:default;}
#adminV3Preview .av3-menu-item-fields {display:grid;grid-template-columns:minmax(160px,1.5fr) minmax(140px,1fr)
  minmax(120px,1fr) minmax(90px,.6fr);gap:9px;align-items:end;}
#adminV3Preview .av3-menu-field {min-width:0;display:grid;gap:5px;font-size:12px;}
#adminV3Preview .av3-menu-field :is(input:not([type=checkbox]),select) {box-sizing:border-box;min-width:0;width:100%;
  min-height:35px;background:var(--av3-surface);color:var(--av3-text);border:1px solid var(--av3-border);
  border-radius:4px;padding:7px 8px;}
#adminV3Preview .av3-menu-field input[type=checkbox] {accent-color:var(--av3-accent);width:18px;height:18px;}
#adminV3Preview .av3-menu-subsections {margin-top:10px;color:var(--av3-muted);
  border-top:1px solid var(--av3-border);padding-top:8px;font-size:11px;}
#adminV3Preview .av3-menu-subsections summary {cursor:pointer;font-weight:700;}
#adminV3Preview .av3-menu-subsections ul {display:grid;gap:4px;padding-inline-start:18px;overflow-wrap:anywhere;}
#adminV3Preview .av3-menu-footer {padding:15px 0;display:flex;justify-content:flex-start;}
@media(max-width:1100px){
  #adminV3Preview .av3-menu-item-fields {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
  #adminV3Preview .av3-menu-item-fields {grid-template-columns:minmax(0,1fr);}
}


/* Admin V3 article — safe advanced editing for every native block type. */
#adminV3Preview .av3-insert-special {
  display:flex;align-items:center;gap:7px;min-width:0;
  color:var(--av3-muted);font:12px/1.3 Georgia,serif;
}
#adminV3Preview .av3-insert-special select {
  box-sizing:border-box;min-width:145px;max-width:240px;min-height:34px;
  border:1px solid var(--av3-border);border-radius:4px;
  padding:6px 8px;color:var(--av3-text);background:var(--av3-surface);
  font:12px Georgia,serif;
}
#adminV3Preview .av3-editor-json-toggle {
  width:auto;min-width:42px;font:700 11px/1.3 ui-monospace,monospace;
}
#adminV3Preview .av3-advanced-block {
  display:grid;gap:9px;min-width:0;width:100%;
  padding:clamp(10px,1.3vw,15px);
  border:1px solid var(--av3-gold);background:var(--av3-bg);
}
#adminV3Preview .av3-advanced-block > p {margin:0;}
#adminV3Preview textarea.av3-advanced-json {
  box-sizing:border-box;display:block;width:100%;min-width:0;
  min-height:220px;max-height:68vh;resize:vertical;
  border:1px solid var(--av3-border);border-radius:4px;
  padding:12px;background:var(--av3-surface);color:var(--av3-text);
  font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;
  white-space:pre;overflow:auto;
}
#adminV3Preview .av3-advanced-actions {display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
#adminV3Preview .av3-advanced-feedback {
  display:block;min-height:19px;color:var(--av3-accent);
  overflow-wrap:anywhere;font:12px/1.5 Georgia,serif;
}
#adminV3Preview .av3-advanced-json:focus-visible,
#adminV3Preview .av3-insert-special select:focus-visible {
  outline:2px solid var(--av3-gold);outline-offset:2px;
}
@media (max-width:700px) {
  #adminV3Preview .av3-insert-special {width:100%;flex-wrap:wrap;}
  #adminV3Preview .av3-insert-special select {max-width:100%;flex:1;}
  #adminV3Preview .av3-advanced-actions .av3-button {flex:1 1 auto;}
}


#adminV3Preview .av3-image-upload {
  display:grid;grid-column:1/-1;gap:6px;padding:10px;
  border:1px dashed var(--av3-border);background:var(--av3-bg);min-width:0;
  font:12px/1.4 Georgia,serif;color:var(--av3-text);
}
#adminV3Preview .av3-image-upload input {
  max-width:100%;min-width:0;color:var(--av3-text);
}
#adminV3Preview .av3-image-upload input:disabled {opacity:.55;cursor:wait;}


/* Direct, lossless forms for existing special article block types. */
#adminV3Preview .av3-special-fields {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;
  padding:clamp(9px,1.3vw,14px);background:var(--av3-bg);
  border:1px solid var(--av3-border);min-width:0;
}
#adminV3Preview .av3-special-field {
  min-width:0;display:grid;gap:5px;align-content:start;
  color:var(--av3-text);font:12px/1.45 Georgia,serif;
}
#adminV3Preview .av3-special-field > span {font-weight:700;}
#adminV3Preview .av3-special-field :is(input,select,textarea),
#adminV3Preview .av3-special-faq-item :is(input,textarea) {
  box-sizing:border-box;width:100%;min-width:0;min-height:35px;
  border:1px solid var(--av3-border);border-radius:4px;
  padding:8px 10px;color:var(--av3-text);background:var(--av3-surface);
  font:13px/1.5 Georgia,serif;
}
#adminV3Preview .av3-special-field textarea {min-height:92px;resize:vertical;}
#adminV3Preview .av3-special-field:has(textarea) {grid-column:1/-1;}
#adminV3Preview .av3-special-field :is(input,textarea):disabled {
  opacity:.62;cursor:not-allowed;
}
#adminV3Preview .av3-special-faq-item {
  display:grid;grid-column:1/-1;gap:8px;min-width:0;
  padding:10px;border:1px solid var(--av3-border);
  background:var(--av3-surface);
}
#adminV3Preview .av3-special-faq-item textarea {min-height:80px;resize:vertical;}
#adminV3Preview .av3-special-faq-item > .av3-button {justify-self:start;}
#adminV3Preview .av3-special-fields > .av3-button {grid-column:1/-1;justify-self:start;}
@media(max-width:650px) {
  #adminV3Preview .av3-special-fields {grid-template-columns:minmax(0,1fr);}
}


/* Real renderer output inside the isolated, unsaved Admin V3 preview. */
#adminV3Preview .av3-public-article-preview {
  min-width:0;max-width:100%;padding:clamp(8px,1vw,16px);
  border:1px solid var(--av3-border);background:var(--av3-surface);
  color:var(--av3-text);
}
#adminV3Preview .av3-public-article-preview h2 {
  margin:0 0 12px;font:700 clamp(24px,2vw,32px)/1.3 Georgia,serif;
}
#adminV3Preview .av3-public-article-preview .article-body {
  min-width:0;max-width:100%;overflow-wrap:anywhere;
}
#adminV3Preview .av3-public-article-preview :is(img,table,video,iframe) {
  max-width:100%;
}
#adminV3Preview .av3-public-article-preview .content-table-wrap,
#adminV3Preview .av3-public-article-preview .content-map,
#adminV3Preview .av3-public-article-preview .content-columns {
  max-width:100%;min-width:0;overflow-x:auto;
}
#adminV3Preview .av3-public-article-preview .content-table {
  min-width:0;max-width:100%;
}
@media(max-width:780px) {
  #adminV3Preview .av3-public-article-preview {padding:8px;}
}


/* Article V3 nested columns — editable without rewriting extra metadata. */
#adminV3Preview .av3-columns-fields {
  min-width:0;display:grid;gap:10px;
  padding:12px;border:1px solid var(--av3-border);
  background:var(--av3-surface);
}
#adminV3Preview .av3-columns-fields > p {margin:0;}
#adminV3Preview .av3-column-grid {
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr));
  gap:10px;min-width:0;
}
#adminV3Preview .av3-column-entry {
  min-width:0;display:grid;align-content:start;gap:9px;
  padding:10px;background:var(--av3-bg);
  border:1px solid var(--av3-border);
}
#adminV3Preview .av3-column-entry > strong {
  color:var(--av3-accent);font:700 14px/1.4 Georgia,serif;
}
#adminV3Preview .av3-column-entry .av3-special-field > :is(input,textarea,select) {
  min-width:0;width:100%;box-sizing:border-box;
  background:var(--av3-surface);color:var(--av3-text);
  border:1px solid var(--av3-border);border-radius:4px;
  padding:8px;min-height:34px;
  font:12px/1.5 Georgia,serif;
}
#adminV3Preview .av3-column-entry textarea {resize:vertical;}
#adminV3Preview .av3-column-entry .av3-special-field :disabled {opacity:.64;cursor:not-allowed;}
@media(max-width:750px){
  #adminV3Preview .av3-column-grid {grid-template-columns:minmax(0,1fr);}
}


/* Admin V3 migration plan: read-only owner dashboard, both themes. */
#adminV3Preview .av3-migration {display:grid;gap:16px;min-width:0;}
#adminV3Preview .av3-migration > :is(h3,p) {margin:0;}
#adminV3Preview .av3-migration-stages {
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
  gap:10px;min-width:0;
}
#adminV3Preview .av3-migration-stage {
  min-width:0;display:flex;flex-direction:column;align-items:stretch;
  justify-content:space-between;gap:11px;padding:13px;
  border:1px solid var(--av3-border);background:var(--av3-surface);
}
#adminV3Preview .av3-migration-copy {min-width:0;display:grid;gap:5px;}
#adminV3Preview .av3-migration-copy small {
  color:var(--av3-muted);font-size:11px;font-weight:700;
}
#adminV3Preview .av3-migration-copy strong {
  color:var(--av3-text);font:700 15px/1.3 Georgia,serif;
}
#adminV3Preview .av3-migration-copy p {
  margin:0;color:var(--av3-muted);font:12px/1.55 Georgia,serif;
  overflow-wrap:anywhere;
}
#adminV3Preview .av3-migration-stage > .av3-button {align-self:start;}
#adminV3Preview .av3-migration-public {
  min-width:0;padding:13px;border:1px solid var(--av3-border);
  background:var(--av3-surface);display:grid;gap:8px;
}
#adminV3Preview .av3-migration-public strong {
  font:700 15px/1.35 Georgia,serif;color:var(--av3-text);
}
#adminV3Preview .av3-migration-public p {
  margin:0;color:var(--av3-muted);font:12px/1.55 Georgia,serif;
}
@media(max-width:650px){
  #adminV3Preview .av3-migration-stages {grid-template-columns:minmax(0,1fr);}
}


/* Global Codex V2 switch: owner-only Home settings, not a client-only preview. */
#adminV3Preview .av3-public-codex-settings {
  border-inline-start:3px solid var(--av3-accent);
  display:grid;gap:10px;
}
#adminV3Preview .av3-public-codex-settings > :is(h4,p) {margin:0;}
#adminV3Preview .av3-public-codex-settings .av3-home-flag {
  justify-content:space-between;flex-direction:row-reverse;
  min-height:43px;font-size:13px;
}
#adminV3Preview .av3-public-codex-settings .av3-home-flag input {
  width:21px;height:21px;flex:none;
}
#adminV3Preview .av3-public-codex-status {
  color:var(--av3-text);font-size:12px;
  font-weight:700;overflow-wrap:anywhere;
}
@media(max-width:640px) {
  #adminV3Preview .av3-public-codex-settings .av3-home-flag {align-items:center;}
}


/* Admin V3 articles: map and dungeon-floor selection with preserved references. */
#adminV3Preview .av3-map-picker {
  min-width:0;display:grid;gap:10px;
  padding:12px;border:1px solid var(--av3-border);background:var(--av3-surface);
}
#adminV3Preview .av3-map-picker > :is(h5,p) {margin:0;}
#adminV3Preview .av3-map-picker h5 {font:700 15px/1.3 Georgia,serif;color:var(--av3-text);}
#adminV3Preview .av3-map-selected {display:grid;gap:9px;min-width:0;}
#adminV3Preview .av3-map-selected-entry {
  min-width:0;display:flex;flex-wrap:wrap;align-items:center;
  justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--av3-border);
  background:var(--av3-bg);
}
#adminV3Preview .av3-map-selected-copy {display:grid;gap:4px;min-width:0;overflow-wrap:anywhere;}
#adminV3Preview .av3-map-selected-copy strong {color:var(--av3-text);font:700 13px/1.4 Georgia,serif;}
#adminV3Preview .av3-map-selected-copy small {font-size:11px;}
#adminV3Preview .av3-map-selected-actions {display:flex;gap:5px;flex-wrap:wrap;}
#adminV3Preview .av3-map-selected .av3-special-field textarea {
  display:block;width:100%;min-height:64px;min-width:0;box-sizing:border-box;resize:vertical;
  padding:8px;border:1px solid var(--av3-border);color:var(--av3-text);
  background:var(--av3-bg);font:12px/1.4 Georgia,serif;
}
#adminV3Preview input.av3-map-picker-search {
  box-sizing:border-box;min-height:36px;width:100%;min-width:0;
  padding:8px 10px;border:1px solid var(--av3-border);border-radius:4px;
  background:var(--av3-bg);color:var(--av3-text);
}
#adminV3Preview .av3-map-candidates {
  min-width:0;max-height:250px;overflow-y:auto;display:grid;align-content:start;gap:5px;
  border:1px solid var(--av3-border);padding:8px;
}
#adminV3Preview .av3-map-candidates .av3-map-candidate {
  min-width:0;justify-content:flex-start;text-align:left;white-space:normal;overflow-wrap:anywhere;
}
@media(max-width:650px){
  #adminV3Preview .av3-map-selected-entry {flex-direction:column;align-items:stretch;}
}


/* Admin V3 article world-map editor: reuse original city/location controls. */
#adminV3Preview .av3-world-map-panel {
  min-width:0;width:100%;box-sizing:border-box;display:grid;gap:10px;
  padding:12px;border:1px solid var(--av3-border);background:var(--av3-surface);
}
#adminV3Preview .av3-world-map-panel > p {margin:0;}
#adminV3Preview .av3-world-map-panel .swm-native-editor {
  min-width:0;max-width:100%;overflow-wrap:anywhere;
  background:var(--av3-bg);color:var(--av3-text);
}
#adminV3Preview .av3-world-map-panel .swm-editor-field {
  min-width:0;max-width:100%;color:var(--av3-text);
}
#adminV3Preview .av3-world-map-panel :is(input,textarea,select) {
  box-sizing:border-box;max-width:100%;min-width:0;
  color:var(--av3-text);background:var(--av3-surface);
}
#adminV3Preview .av3-world-map-panel .swm-editor-row {
  min-width:0;max-width:100%;
}
@media(max-width:780px){
  #adminV3Preview .av3-world-map-panel {padding:8px;}
  #adminV3Preview .av3-world-map-panel .swm-editor-row {display:grid;grid-template-columns:minmax(0,1fr);}
}
