/* Virii8 public WordPress content/document windows */
.v8-content-window {
  min-width: min(420px, calc(100vw - 24px));
  min-height: 320px;
}
.v8-content-window .v8-window-title {
  gap: .35rem;
  min-width: 0;
}
.v8-content-title-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v8-content-window-body {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0 !important;
  overflow: hidden !important;
}
.v8-content-window-toolbar {
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .55rem .7rem;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(3, 7, 18, .52);
  backdrop-filter: blur(12px);
  min-height: 44px;
}
.v8-content-window-toolbar button {
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
  color: var(--v8-text-main, #f8fafc);
  border-radius: 999px;
  padding: .35rem .65rem;
  font: inherit;
  font-size: .78rem;
  cursor: pointer;
}
.v8-content-window-toolbar button:hover,
.v8-content-window-toolbar button:focus-visible {
  background: rgba(56,189,248,.18);
  border-color: rgba(56,189,248,.35);
}
.v8-content-url-label {
  margin-left: auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--v8-text-muted, #94a3b8);
  font-size: .72rem;
}
.v8-content-window-shell {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: clamp(16px, 2.4vw, 28px);
  background: rgba(248,250,252,.96);
  color: #111827;
  user-select: text;
  -webkit-user-select: text;
  line-height: 1.65;
}
.v8-content-window-shell a { color: #0369a1; }
.v8-content-window-shell img,
.v8-content-window-shell video,
.v8-content-window-shell iframe {
  max-width: 100%;
  height: auto;
}
.v8-content-window-shell iframe { min-height: 320px; }
.v8-content-document,
.v8-content-archive {
  max-width: 980px;
  margin: 0 auto;
}
.v8-content-doc-header {
  margin-bottom: 1.35rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(15,23,42,.12);
}
.v8-content-doc-kicker {
  display: inline-flex;
  border-radius: 999px;
  padding: .18rem .55rem;
  background: #e0f2fe;
  color: #075985;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.v8-content-doc-header h1 {
  color: #0f172a;
  font-size: clamp(1.85rem, 4vw, 3.3rem);
  line-height: 1.08;
  margin: .7rem 0 .45rem;
}
.v8-content-doc-meta,
.v8-content-card-meta {
  color: #64748b;
  font-size: .88rem;
}
.v8-content-featured { margin: 0 0 1.2rem; }
.v8-content-featured-image,
.v8-content-card-thumb {
  display: block;
  width: 100%;
  border-radius: 18px;
  box-shadow: 0 12px 34px rgba(15,23,42,.12);
}
.v8-content-doc-body :where(h1,h2,h3,h4,h5,h6) { color: #0f172a; line-height: 1.2; }
.v8-content-doc-body pre {
  overflow: auto;
  border-radius: 14px;
  padding: 1rem;
  background: #0f172a;
  color: #e2e8f0;
}
.v8-content-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
  gap: 1rem;
}
.v8-content-card {
  border: 1px solid rgba(15,23,42,.12);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(15,23,42,.08);
}
.v8-content-card-body { padding: 1rem; }
.v8-content-card h2 {
  font-size: 1.1rem;
  line-height: 1.25;
  margin: 0 0 .45rem;
}
.v8-content-card p { margin: 0 0 .75rem; }
.v8-content-loading,
.v8-content-empty {
  min-height: 220px;
  display: grid;
  place-items: center;
  color: #475569;
  text-align: center;
}
.v8-content-shortcut-icon .v8-icon-img {
  background: rgba(14, 165, 233, .18);
}
.v8-platform-mac .v8-content-window-shell,
.v8-platform-win .v8-content-window-shell {
  scrollbar-width: thin;
}
@media (max-width: 720px) {
  .v8-content-window-toolbar { flex-wrap: wrap; }
  .v8-content-url-label { flex-basis: 100%; margin-left: 0; }
  .v8-content-window-shell { padding: 14px; }
}

/* Avada/Fusion clean-preview overlay for admin-only content-window testing. */
.v8e-avada-clean-preview-banner {
  display: grid;
  gap: .85rem;
  margin: 0 0 1.25rem;
  padding: 1rem;
  border: 1px solid rgba(2, 132, 199, .28);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(224, 242, 254, .95), rgba(240, 253, 250, .95));
  color: #0f172a;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}
.v8e-avada-clean-preview-banner strong {
  display: block;
  font-size: 1rem;
  color: #075985;
}
.v8e-avada-clean-preview-banner span {
  display: block;
  margin-top: .18rem;
  color: #334155;
  font-size: .9rem;
}
.v8e-avada-clean-preview-banner dl {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin: 0;
}
.v8e-avada-clean-preview-banner dl > div {
  min-width: 120px;
  padding: .55rem .7rem;
  border-radius: 14px;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(15, 23, 42, .08);
}
.v8e-avada-clean-preview-banner dt {
  color: #64748b;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.v8e-avada-clean-preview-banner dd {
  margin: .15rem 0 0;
  color: #0f172a;
  font-weight: 800;
}
.v8e-avada-clean-preview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0 !important;
}
.v8e-avada-clean-preview-actions a,
.v8e-clean-preview-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .45rem .75rem;
  background: #0284c7;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
}
.v8e-avada-clean-preview-actions a:hover,
.v8e-clean-preview-button:hover {
  background: #0369a1;
}
