* { box-sizing: border-box; }
body { margin: 0; font-family: Arial, sans-serif; background: #0f1115; color: #f2f2f2; }
a { color: #8ec5ff; text-decoration: none; }
.topbar { display: flex; justify-content: space-between; align-items: center; padding: 24px 32px; border-bottom: 1px solid #232833; background: #141923; gap: 16px; }
.topbar h1 { margin: 0 0 6px; }
.topbar p { margin: 0; color: #b8c0cc; }
.top-actions { display: flex; gap: 10px; align-items: center; }
.container { padding: 24px 32px; }
.project-layout { display: grid; grid-template-columns: minmax(380px, 0.95fr) minmax(420px, 1.05fr); gap: 20px; align-items: start; }
.panel { background: #171d27; border: 1px solid #252d3a; border-radius: 16px; padding: 20px; }
.panel.full { grid-column: 1 / -1; }
.hero-panel { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 20px; }
.import-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: center; width: min(760px, 100%); }
.section-title { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-bottom: 16px; }
.section-title h2 { margin: 0; }
.grid.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px; }
.grid.cards.compact { grid-template-columns: repeat(auto-fill, minmax(135px, 1fr)); }
.card { background: #10151d; border: 1px solid #293243; border-radius: 14px; overflow: hidden; display: block; color: inherit; }
.card img { width: 100%; height: 220px; object-fit: cover; display: block; background: #0b0f15; }
.compact .card img { height: 160px; }
.placeholder { height: 220px; display: flex; align-items: center; justify-content: center; color: #8993a4; }
.card-body { padding: 12px; }
.project-card h3 { margin: 0 0 8px; }
.project-card p { color: #b8c0cc; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.asset-card { cursor: pointer; position: relative; }
.asset-card input { position: absolute; top: 10px; left: 10px; transform: scale(1.2); }
.asset-card.selected { border: 2px solid #40c463; }
.btn { display: inline-block; padding: 10px 16px; border-radius: 10px; border: none; background: #2e7df6; color: white; cursor: pointer; text-decoration: none; margin-top: 8px; }
.btn.secondary { background: #485468; }
.btn.primary { background: #28b463; }
.btn.danger { background: #b84242; }
.btn.big { width: 100%; padding: 14px 18px; font-size: 16px; margin-top: 16px; }
.btn.small { padding: 8px 12px; font-size: 12px; }
.text-input, textarea, input[type="file"], #searchInput { width: 100%; margin-top: 8px; margin-bottom: 12px; background: #0f141c; color: #f2f2f2; border: 1px solid #2a3343; border-radius: 12px; padding: 12px; }
textarea { resize: vertical; }
label { color: #cbd5e1; font-weight: bold; display: block; margin-top: 10px; }
.result-image-wrap { margin-bottom: 20px; }
.result-image { width: 100%; max-height: 720px; object-fit: contain; border-radius: 14px; background: #0f141c; border: 1px solid #2a3343; }
.copy-block { margin-top: 18px; }
.copy-block textarea { min-height: 120px; }
.history-list { display: flex; flex-direction: column; gap: 16px; }
.history-item { display: grid; grid-template-columns: 150px 1fr; gap: 16px; padding: 14px; border: 1px solid #2a3343; border-radius: 14px; background: #10151d; }
.history-item img { width: 150px; height: 230px; object-fit: cover; border-radius: 10px; background: #0b0f15; }
.empty { padding: 20px; border: 1px dashed #3a4658; border-radius: 14px; text-align: center; grid-column: 1 / -1; }
.status { margin-top: 12px; color: #ffd166; }
.sticky-result { position: sticky; top: 16px; }
@media (max-width: 980px) { .project-layout { grid-template-columns: 1fr; } .topbar, .hero-panel, .section-title { flex-direction: column; align-items: flex-start; } .import-row { grid-template-columns: 1fr; } .container { padding: 16px; } .sticky-result { position: static; } }

.video-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.video-item {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #2a3343;
  border-radius: 14px;
  background: #10151d;
}

.video-item video {
  width: 130px;
  height: 170px;
  object-fit: cover;
  border-radius: 10px;
  background: #0f141c;
}

.playwright-options { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: 8px; }
.inline-check { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: normal; color: #d6deea; }
.inline-check input { transform: scale(1.1); }
.hint { color: #9fb0c8; font-size: 14px; margin: 8px 0 0; }

.batch-panel textarea {
  margin-top: 12px;
}
.batch-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 12px;
}
.small-input {
  max-width: 230px;
}
.selectable-card {
  position: relative;
}
.selectable-card .project-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.select-project {
  position: absolute;
  z-index: 5;
  top: 10px;
  left: 10px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  padding: 7px 9px;
  border-radius: 999px;
  background: rgba(15, 17, 21, .88);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(0,0,0,.22);
  cursor: pointer;
}
.select-project input {
  margin: 0;
}


.helper-card { margin-top: -2px; margin-bottom: 12px; padding: 10px 12px; border: 1px solid #2a3343; border-radius: 12px; background: #10151d; color: #b8c0cc; font-size: 13px; line-height: 1.45; }
.copy-block .btn { width: 100%; }
@media (max-width: 680px) {
  .topbar { padding: 16px; }
  .top-actions { width: 100%; }
  .top-actions .btn { flex: 1; text-align: center; }
  .container { padding: 12px; }
  .panel { padding: 14px; border-radius: 14px; }
  .grid.cards.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .compact .card img { height: 140px; }
  .video-item { grid-template-columns: 1fr; }
  .video-item video { width: 100%; height: 220px; }
  .history-item { grid-template-columns: 1fr; }
  .history-item img { width: 100%; height: 250px; }
  .btn, .btn.small, .btn.big { width: 100%; text-align: center; }
  .copy-block textarea { min-height: 150px; }
  .text-input, textarea, input[type="file"], #searchInput { font-size: 16px; }
  .result-image { max-height: 520px; }
}

.inline-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: -2px;
  margin-bottom: 10px;
}
.inline-action-row .btn {
  margin-top: 0;
}
@media (max-width: 680px) {
  .inline-action-row { flex-direction: column; }
}

.config-details {
  margin: 12px 0 16px;
  padding: 12px;
  border: 1px solid #2a3343;
  border-radius: 14px;
  background: #10151d;
}
.config-details summary {
  cursor: pointer;
  font-weight: 700;
  color: #e5edf8;
}
.config-details textarea {
  font-family: Consolas, Monaco, monospace;
  font-size: 13px;
  min-height: 260px;
}

.queue-status {
  width: 100%;
  margin-top: 14px;
}
.queue-status h3 {
  margin: 6px 0 10px;
}
.queue-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px;
  margin-top: 8px;
  border: 1px solid #2a3343;
  border-radius: 12px;
  background: #10151d;
}
.queue-item p {
  margin: 4px 0 0;
  color: #b8c0cc;
  font-size: 13px;
}
.queue-completed { border-color: #227d47; }
.queue-failed { border-color: #9d3636; }
.queue-processing { border-color: #b88a27; }
@media (max-width: 680px) {
  .queue-item { flex-direction: column; align-items: stretch; }
}

/* V2.0.15 UI refresh */
.eyebrow {
  display: inline-block;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #8ec5ff;
  font-weight: 800;
  margin-bottom: 6px;
}

.dashboard-hero {
  display: grid;
  grid-template-columns: minmax(260px, .9fr) minmax(360px, 1.35fr);
  align-items: start;
}

.hero-copy h2 {
  margin-top: 0;
}

.import-card {
  width: 100%;
  padding: 14px;
  border: 1px solid #2a3343;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(46,125,246,.08), rgba(16,21,29,.4));
}

.compact-options {
  gap: 10px;
  margin-top: 4px;
}

.compact-queue {
  grid-column: 1 / -1;
  margin-top: 4px;
}

.queue-compact-card {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
  border-radius: 14px;
  background: #10151d;
  border: 1px solid #2a3343;
}

.queue-compact-card strong {
  display: block;
  word-break: break-word;
}

.queue-compact-card p {
  margin: 6px 0 0;
  color: #b8c0cc;
}

.queue-completed { border-color: rgba(40,180,99,.7); }
.queue-failed { border-color: rgba(184,66,66,.7); }
.queue-processing { border-color: rgba(255,209,102,.75); }

.batch-import-panel textarea {
  min-height: 150px;
}

.mini-results {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  max-height: 260px;
  overflow: auto;
}

.mini-result {
  padding: 9px 11px;
  border-radius: 10px;
  border: 1px solid #2a3343;
  background: #10151d;
  font-size: 13px;
}

.mini-ok { border-color: rgba(40,180,99,.7); color: #d7ffe6; }
.mini-error { border-color: rgba(184,66,66,.7); color: #ffd6d6; }

.batch-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}

.batch-options-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(145px, 1fr));
  gap: 12px;
  align-items: end;
}

.batch-options-grid label {
  margin-top: 0;
}

.wide-action {
  width: 100%;
  margin-top: 12px;
}

.selectable-cards {
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
}

.project-card {
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.project-card:hover {
  transform: translateY(-2px);
  border-color: #3b82f6;
  box-shadow: 0 12px 26px rgba(0,0,0,.22);
}

@media (max-width: 1120px) {
  .dashboard-hero {
    grid-template-columns: 1fr;
  }
  .batch-options-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  body {
    background: #0d1118;
  }
  .topbar {
    padding: 14px;
  }
  .topbar h1 {
    font-size: 21px;
  }
  .hero-copy h2,
  .section-title h2 {
    font-size: 20px;
  }
  .dashboard-hero,
  .panel {
    border-radius: 14px;
  }
  .import-card {
    padding: 10px;
  }
  .playwright-options {
    display: grid;
    grid-template-columns: 1fr;
  }
  .queue-compact-card {
    display: grid;
    grid-template-columns: 1fr;
  }
  .batch-options-grid {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .batch-toolbar {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .batch-controls {
    display: grid;
    grid-template-columns: 1fr;
  }
  .selectable-cards {
    grid-template-columns: 1fr;
  }
  .project-card .card-body h3 {
    font-size: 16px;
  }
  .project-card img,
  .placeholder {
    height: 190px;
  }
}

.prompt-toolbar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:8px 0 10px;}
.mode-badge { display:inline-flex; align-items:center; padding:8px 12px; border-radius:999px; font-size:12px; font-weight:700; border:1px solid #2a3343;}
.mode-auto { background: rgba(40, 180, 99, 0.14); color: #c8ffdb; border-color: #227d47;}
.mode-manual { background: rgba(255, 209, 102, 0.14); color: #ffe4a3; border-color: #b88a27;}
.nested-config { margin-top: 12px;}
#imagePromptEditor { min-height: 260px;}
@media (max-width: 680px) { .prompt-toolbar { flex-direction: column; align-items: stretch; } }


/* V2.0.17 minimal home + simplified batch */
.home-container { max-width: 1440px; margin: 0 auto; }
.home-topbar { background: linear-gradient(135deg, #141923, #0f1115); }
.home-grid { display: grid; grid-template-columns: minmax(280px, 0.9fr) minmax(320px, 1.1fr); gap: 20px; margin-bottom: 20px; }
.quick-import-panel h2, .compact-batch-import h2 { margin: 4px 0 8px; }
.muted { color: #aab5c6; margin-top: 0; }
.action-grid { display: grid; gap: 10px; }
.two-actions { grid-template-columns: 1fr 1fr; }
.compact-details { margin-top: 12px; border: 1px solid #2a3343; border-radius: 12px; padding: 10px 12px; background: #10151d; }
.compact-details summary { cursor: pointer; font-weight: 700; color: #e5edf8; }
.simplified-batch-panel { border-color: rgba(46,125,246,.35); }
.preset-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 14px; }
.preset-chip { border: 1px solid #2a3343; background: #10151d; color: #dce7f5; padding: 9px 12px; border-radius: 999px; cursor: pointer; font-weight: 700; }
.preset-chip.active { background: #2e7df6; border-color: #2e7df6; color: #fff; }
.simplified-options-grid { grid-template-columns: repeat(4, minmax(150px, 1fr)); }
.history-title-row input { max-width: 380px; }
@media (max-width: 980px) { .home-grid { grid-template-columns: 1fr; } .simplified-options-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 680px) { .two-actions, .simplified-options-grid { grid-template-columns: 1fr; } .home-container { padding: 12px; } .compact-batch-import textarea { min-height: 160px; } }

/* V2.0.18 navigation/settings refresh */
.centered-topbar {
  justify-content: center;
  text-align: center;
  position: relative;
}
.brand-center {
  width: min(920px, 100%);
  margin: 0 auto;
}
.brand-center h1 {
  margin: 0 0 6px;
  font-size: 34px;
  letter-spacing: -0.03em;
}
.brand-center p {
  margin: 0 auto 14px;
  color: #b8c0cc;
  max-width: 760px;
}
.main-menu {
  display: inline-flex;
  gap: 8px;
  padding: 6px;
  border: 1px solid #2a3343;
  border-radius: 999px;
  background: #10151d;
}
.main-menu a {
  padding: 9px 18px;
  border-radius: 999px;
  color: #dbe7f5;
  font-weight: 700;
}
.main-menu a.active,
.main-menu a:hover {
  background: #2e7df6;
  color: #fff;
}
.floating-actions {
  position: absolute;
  right: 24px;
  top: 24px;
}
.pagination-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
}
.pagination-row button:disabled {
  opacity: .45;
  cursor: not-allowed;
}
.settings-container {
  display: grid;
  gap: 20px;
}
.settings-panel .section-title {
  align-items: flex-start;
}
.settings-list {
  display: grid;
  gap: 12px;
}
.settings-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 14px;
  border: 1px solid #2a3343;
  border-radius: 14px;
  background: #10151d;
}
.settings-item strong {
  display: block;
  margin-bottom: 6px;
}
.settings-item p,
.settings-item small {
  display: block;
  color: #b8c0cc;
  margin: 0 0 6px;
  line-height: 1.45;
  word-break: break-word;
}
.settings-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0,0,0,.68);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.modal-card {
  width: min(720px, 100%);
  max-height: 92vh;
  overflow: auto;
  padding: 20px;
  border-radius: 18px;
  background: #171d27;
  border: 1px solid #2a3343;
  box-shadow: 0 24px 70px rgba(0,0,0,.45);
}
.modal-card h3 {
  margin-top: 0;
}
.modal-actions {
  justify-content: flex-end;
  margin-top: 10px;
}
.muted {
  color: #9fb0c8;
}
@media (max-width: 680px) {
  .brand-center h1 { font-size: 26px; }
  .brand-center p { font-size: 14px; }
  .main-menu { width: 100%; justify-content: center; }
  .main-menu a { flex: 1; text-align: center; padding: 10px 8px; }
  .floating-actions { position: static; margin-top: 10px; width: 100%; }
  .settings-item { grid-template-columns: 1fr; }
  .settings-actions { justify-content: stretch; }
  .settings-actions .btn { flex: 1; }
  .pagination-row { display: grid; grid-template-columns: 1fr; text-align: center; }
}


/* Corrige modal aparecendo automaticamente ao entrar em Configurações */
.modal-backdrop[hidden],
.modal-backdrop.is-hidden {
  display: none !important;
}


.result-title-row {
  align-items: center;
  margin-bottom: 12px;
}
.result-title-row h2 {
  margin: 0;
}
.result-title-row .btn {
  margin-top: 0;
}
@media (max-width: 680px) {
  .result-title-row {
    display: grid;
    grid-template-columns: 1fr;
  }
}

.hidden-select { display:none; }
.builder-grid { display:grid; gap:16px; }
.builder-step { border:1px solid #233146; border-radius:16px; padding:14px; background:#111827; }
.builder-step-title { font-weight:700; margin-bottom:10px; }
.option-card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; }
.option-card { display:flex; flex-direction:column; align-items:flex-start; gap:6px; text-align:left; padding:12px; border-radius:14px; border:1px solid #2a3343; background:#0f172a; color:#e5eefc; cursor:pointer; }
.option-card strong { font-size:14px; }
.option-card span { font-size:12px; color:#9fb0c8; }
.option-card.selected { border-color:#55c1ff; box-shadow:0 0 0 1px #55c1ff inset; background:#132238; }
.helper-card { margin-top:10px; background:#0d1522; border:1px solid #233146; border-radius:12px; padding:10px 12px; color:#b2c2d7; font-size:13px; }
.modal-card-wide { width:min(780px,92vw); }
.modal-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.result-card { display:grid; grid-template-columns:minmax(260px, 420px) 1fr; gap:18px; align-items:start; }
.result-image { width:100%; border-radius:16px; display:block; }
.result-text { white-space:pre-wrap; background:#0d1522; border:1px solid #233146; padding:12px; border-radius:12px; max-height:240px; overflow:auto; }
.asset-card { border:1px solid #2a3343; background:#0f172a; border-radius:14px; padding:8px; cursor:pointer; display:flex; flex-direction:column; gap:8px; }
.asset-card img, .asset-card video { width:100%; aspect-ratio:3/4; object-fit:cover; border-radius:10px; }
.asset-card.selected { border-color:#55c1ff; box-shadow:0 0 0 1px #55c1ff inset; }
.video-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.video-list video { width:100%; border-radius:12px; }
.history-list { display:grid; gap:12px; }
.history-item { display:grid; grid-template-columns:110px 1fr; gap:12px; background:#101827; border:1px solid #233146; border-radius:14px; padding:10px; }
.history-item img { width:100%; border-radius:10px; aspect-ratio:3/4; object-fit:cover; }
@media (max-width: 800px) { .modal-grid, .result-card, .history-item { grid-template-columns:1fr; } .option-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 560px) { .option-card-grid { grid-template-columns:1fr; } }

.hero-strip { display:flex; justify-content:space-between; gap:24px; align-items:center; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.catalog-summary-grid { grid-template-columns: 1.15fr 1fr; }
.catalog-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.catalog-mini-card { display:grid; grid-template-columns:80px 1fr; gap:12px; background:#101827; border:1px solid #233146; border-radius:16px; padding:10px; }
.catalog-mini-card img { width:100%; height:100%; object-fit:cover; border-radius:12px; aspect-ratio:1/1; }
.catalog-layout { display:grid; gap:16px; }
.catalog-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:14px; }
.catalog-card { display:flex; flex-direction:column; border:1px solid #233146; border-radius:18px; overflow:hidden; background:#101827; }
.catalog-cover { aspect-ratio:4/5; background:#0d1522; display:flex; align-items:center; justify-content:center; }
.catalog-cover img { width:100%; height:100%; object-fit:cover; }
.catalog-body { padding:14px; display:flex; flex-direction:column; gap:10px; }
.catalog-topline { display:flex; justify-content:space-between; gap:10px; align-items:center; }
.catalog-tag { background:#16304f; color:#8ed5ff; padding:6px 10px; border-radius:999px; font-size:12px; }
.catalog-price { font-weight:700; color:#ffe08a; }
.hidden-select { display:none; }
.flow-panel { overflow:hidden; }
.flow-builder { display:grid; grid-template-columns: minmax(220px,1fr) 56px minmax(220px,1fr) 56px minmax(220px,1fr) 56px minmax(220px,1fr); gap:0; align-items:stretch; }
.flow-node { border:1px solid #233146; border-radius:18px; padding:14px; background:linear-gradient(180deg,#101827,#0f172a); min-height:100%; }
.flow-node-head { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.flow-node-head span { width:28px; height:28px; border-radius:999px; background:#173457; color:#8ed5ff; display:grid; place-items:center; font-weight:800; }
.flow-link { display:flex; align-items:center; justify-content:center; }
.flow-link-line { height:2px; width:100%; background:linear-gradient(90deg,#1f4e7a,#55c1ff); position:relative; }
.flow-link-dot { width:12px; height:12px; border-radius:999px; background:#55c1ff; margin-left:-6px; box-shadow:0 0 0 6px rgba(85,193,255,.12); }
.flow-card-grid { grid-template-columns:1fr; max-height:420px; overflow:auto; }
.option-card { position:relative; }
.option-card-avatar { width:100%; max-height:160px; object-fit:cover; border-radius:12px; margin-bottom:8px; }
.mode-badge { padding:8px 12px; border-radius:999px; font-size:12px; font-weight:700; }
.mode-auto { background:#16304f; color:#8ed5ff; }
.mode-manual { background:#3b1d1d; color:#ffb0b0; }
.prompt-toolbar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:16px 0; }
.settings-model-item { grid-template-columns:100px 1fr auto !important; }
.settings-model-preview { width:88px; height:88px; }
.settings-model-preview img, .settings-model-preview .avatar-placeholder { width:88px; height:88px; border-radius:14px; object-fit:cover; display:grid; place-items:center; background:#0d1522; border:1px solid #233146; }
.checkbox-line { display:flex; gap:8px; align-items:center; }
@media (max-width: 1200px) { .flow-builder { grid-template-columns:1fr; gap:12px; } .flow-link { display:none; } .catalog-summary-grid { grid-template-columns:1fr; } }
@media (max-width: 760px) { .hero-strip { flex-direction:column; align-items:flex-start; } .catalog-preview-grid { grid-template-columns:1fr; } }

.two-cols-inline { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.product-head-row { align-items:end; }
.assets-inline-box { margin-top:18px; padding-top:12px; border-top:1px solid #233146; }
.compact-title { margin-bottom:10px; }
.mini-note { color:#9bb0c9; font-size:12px; }
.option-card-empty { display:grid; place-items:center; background:#0f172a; color:#8ed5ff; font-weight:800; letter-spacing:.04em; }
.hidden { display:none !important; }
@media (max-width: 860px) { .two-cols-inline { grid-template-columns:1fr; } }

/* V2.0.38 layout fixes */
.project-action-row { align-items:center; gap:12px; flex-wrap:wrap; }
.sticky-result { position: static !important; }
.project-layout { grid-template-columns: minmax(420px, 1fr) minmax(420px, 1fr); }
.project-layout > .panel.full { grid-column: 1 / -1; }
.project-layout > .sticky-result { grid-column: 1 / -1; }
.project-layout > .panel.full:last-child { grid-column: 1 / -1; }
.catalog-filter-row { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.catalog-filter-row select { min-width: 220px; }
@media (max-width: 980px) { .project-layout { grid-template-columns: 1fr; } }


/* V2.0.40 layout polish */
.home-container {
  max-width: 1440px;
  margin: 0 auto;
  display: grid;
  gap: 24px;
}
.home-container > .panel {
  margin-bottom: 0;
}
.project-layout {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}
.flow-node-head {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
.flow-node-title {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: max-content;
}
.flow-node-title span {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #173457;
  color: #8ed5ff;
  display: grid;
  place-items: center;
  font-weight: 800;
}
.flow-search-input {
  width: min(190px, 52%);
  min-width: 112px;
  border: 1px solid #2a3343;
  background: #0d1522;
  color: #e6edf7;
  border-radius: 10px;
  padding: 8px 10px;
  outline: none;
  font-size: 12px;
}
.flow-search-input:focus {
  border-color: #55c1ff;
  box-shadow: 0 0 0 2px rgba(85, 193, 255, .15);
}
.empty-card-search {
  border: 1px dashed #2a3343;
  border-radius: 12px;
  padding: 14px;
  color: #9fb0c8;
  background: #0d1522;
}
@media (min-width: 981px) {
  .project-layout > .sticky-result {
    grid-column: 1 / 2 !important;
  }
  .project-layout > .generation-history-panel {
    grid-column: 2 / 3 !important;
  }
}
@media (max-width: 980px) {
  .home-container {
    gap: 16px;
  }
  .project-layout > .sticky-result,
  .project-layout > .generation-history-panel {
    grid-column: 1 / -1 !important;
  }
}
@media (max-width: 560px) {
  .flow-node-head {
    align-items: stretch;
    flex-direction: column;
  }
  .flow-search-input {
    width: 100%;
  }
}


/* V2.0.41 model/builder polish */
.flow-builder {
  grid-template-columns: minmax(250px,1fr) 32px minmax(250px,1fr) 32px minmax(250px,1fr) 32px minmax(250px,1fr);
}
.flow-node {
  padding: 16px;
}
.flow-link-dot { width: 10px; height: 10px; }
.flow-card-grid { max-height: 470px; }
.option-card-avatar {
  width: 100%;
  height: 170px;
  object-fit: contain;
  object-position: center top;
  border-radius: 12px;
  margin-bottom: 8px;
  background: #0b1220;
  border: 1px solid #223046;
}
.settings-model-preview {
  width: 96px;
  height: 120px;
}
.settings-model-preview img, .settings-model-preview .avatar-placeholder {
  width: 96px;
  height: 120px;
  object-fit: contain;
  object-position: center top;
  background: #0b1220;
}
.project-action-row {
  justify-content: space-between;
  align-items: flex-start;
}
.project-primary-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 280px;
}
#sendChatgptBtn { order: 1; }
#generateBtn { order: 2; }
.general-setting-item {
  grid-template-columns: 1fr auto !important;
}
@media (max-width: 1200px) {
  .flow-builder {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
@media (max-width: 680px) {
  .project-primary-actions { min-width: 100%; }
  .project-action-row { align-items: stretch; }
}


/* V2.0.42 visual polish */
:root {
  --tai-bg-1: #0b1020;
  --tai-bg-2: #111827;
  --tai-panel: rgba(20, 29, 43, .88);
  --tai-panel-2: rgba(16, 24, 38, .92);
  --tai-border: rgba(119, 148, 185, .18);
  --tai-border-strong: rgba(85, 193, 255, .45);
  --tai-text: #eef6ff;
  --tai-muted: #9fb0c8;
  --tai-blue: #39a7ff;
  --tai-blue-2: #6fd3ff;
  --tai-shadow: 0 20px 70px rgba(0,0,0,.28);
}
body {
  background:
    radial-gradient(circle at 18% -10%, rgba(57,167,255,.18), transparent 30%),
    radial-gradient(circle at 85% 0%, rgba(145,95,255,.12), transparent 34%),
    linear-gradient(180deg, #0b1020 0%, #0f1115 48%, #0b1020 100%);
  color: var(--tai-text);
}
.topbar {
  background: rgba(12, 18, 31, .86);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--tai-border);
  box-shadow: 0 12px 45px rgba(0,0,0,.22);
}
.brand-center h1 {
  letter-spacing: -.035em;
}
.main-menu a {
  border: 1px solid transparent;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}
.main-menu a:hover, .main-menu a.active {
  background: rgba(85,193,255,.12);
  border-color: rgba(85,193,255,.25);
  transform: translateY(-1px);
}
.container, .home-container, .project-layout {
  gap: 26px;
}
.panel {
  background: linear-gradient(180deg, rgba(23, 31, 47, .96), rgba(14, 22, 36, .96));
  border: 1px solid var(--tai-border);
  box-shadow: var(--tai-shadow);
}
.panel h2, .panel h3 {
  letter-spacing: -.02em;
}
.eyebrow {
  color: var(--tai-blue-2);
  font-weight: 800;
  letter-spacing: .08em;
}
.text-input, textarea, select, input[type="text"], input[type="url"] {
  border: 1px solid rgba(119,148,185,.22);
  background: rgba(8, 14, 26, .82);
  color: #eef6ff;
  border-radius: 12px;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.text-input:focus, textarea:focus, select:focus, input[type="text"]:focus, input[type="url"]:focus {
  outline: none;
  border-color: rgba(85,193,255,.65);
  box-shadow: 0 0 0 3px rgba(85,193,255,.12);
  background: rgba(10, 18, 32, .98);
}
.btn {
  border-radius: 12px;
  font-weight: 800;
  letter-spacing: -.01em;
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}
.btn:hover {
  transform: translateY(-1px);
}
.btn.primary {
  background: linear-gradient(135deg, #168bff, #55c1ff);
  border-color: rgba(111,211,255,.55);
  box-shadow: 0 12px 28px rgba(57,167,255,.22);
}
.btn.secondary {
  background: rgba(18, 30, 48, .94);
  border-color: rgba(119,148,185,.24);
}
.btn.danger {
  background: linear-gradient(135deg, #b42318, #e5484d);
}
.flow-panel {
  background:
    linear-gradient(180deg, rgba(20,29,43,.96), rgba(13,21,34,.96)),
    radial-gradient(circle at top left, rgba(85,193,255,.12), transparent 25%);
}
.flow-builder {
  gap: 4px;
}
.flow-node {
  border-color: rgba(85,193,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 10px 30px rgba(0,0,0,.18);
}
.flow-node-head {
  background: rgba(9, 17, 31, .55);
  padding: 8px;
  border-radius: 14px;
  border: 1px solid rgba(119,148,185,.14);
}
.flow-node-title strong {
  font-size: 15px;
}
.flow-link-line {
  opacity: .75;
}
.option-card {
  border-color: rgba(119,148,185,.18);
  background: linear-gradient(180deg, rgba(15,23,42,.98), rgba(11,18,32,.98));
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.option-card:hover {
  transform: translateY(-2px);
  border-color: rgba(85,193,255,.4);
  box-shadow: 0 14px 28px rgba(0,0,0,.18);
}
.option-card.selected {
  border-color: #55c1ff;
  background: linear-gradient(180deg, rgba(25,52,86,.96), rgba(14,33,58,.96));
  box-shadow: 0 0 0 1px rgba(85,193,255,.5) inset, 0 18px 34px rgba(57,167,255,.16);
}
.option-card-avatar {
  height: 178px;
  object-fit: contain;
  object-position: center top;
}
.asset-card, .history-item, .card {
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.asset-card:hover, .history-item:hover, .card:hover {
  transform: translateY(-2px);
  border-color: rgba(85,193,255,.36);
  box-shadow: 0 16px 35px rgba(0,0,0,.18);
}
.helper-card {
  background: rgba(8, 14, 26, .78);
  border-color: rgba(119,148,185,.18);
}
.prompt-toolbar {
  background: rgba(8,14,26,.42);
  padding: 10px;
  border: 1px solid rgba(119,148,185,.14);
  border-radius: 16px;
}
.result-card {
  background: rgba(8,14,26,.28);
  border: 1px solid rgba(119,148,185,.14);
  border-radius: 18px;
  padding: 12px;
}
.result-image {
  box-shadow: 0 16px 42px rgba(0,0,0,.3);
}
.result-text {
  background: rgba(7, 12, 23, .85);
  border-color: rgba(119,148,185,.18);
}
.project-primary-actions .btn {
  width: 100%;
}
#sendChatgptBtn {
  min-height: 50px;
  font-size: 16px;
}
#generateBtn {
  opacity: .92;
}
.settings-item {
  background: rgba(8,14,26,.42);
  border-color: rgba(119,148,185,.16);
}
.home-container > .panel {
  margin-bottom: 4px;
}
@media (min-width: 1201px) {
  .flow-builder {
    grid-template-columns: minmax(270px,1.1fr) 26px minmax(270px,1.1fr) 26px minmax(270px,1.1fr) 26px minmax(270px,1.1fr);
  }
}
@media (max-width: 760px) {
  .container, .home-container, .project-layout {
    padding-left: 16px;
    padding-right: 16px;
  }
  .panel {
    padding: 16px;
  }
  .option-card-avatar {
    height: 210px;
  }
}


/* V2.0.43 addon/Grok live log */
.addon-log-panel {
  margin-top: 14px;
  border: 1px solid rgba(85,193,255,.22);
  background: rgba(7, 13, 25, .72);
  border-radius: 16px;
  overflow: hidden;
}
.addon-log-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: rgba(18, 34, 56, .85);
  border-bottom: 1px solid rgba(119,148,185,.18);
}
.addon-log-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  max-height: 260px;
  overflow: auto;
}
.addon-log-entry {
  display: grid;
  grid-template-columns: 78px 1fr;
  gap: 10px;
  align-items: start;
  border: 1px solid rgba(119,148,185,.14);
  background: rgba(12, 20, 34, .78);
  border-radius: 12px;
  padding: 8px 10px;
}
.addon-log-entry span {
  color: #8ed5ff;
  font-size: 12px;
  font-weight: 800;
}
.addon-log-entry p {
  margin: 0;
  color: #d8e7fb;
  font-size: 13px;
  line-height: 1.35;
}
.addon-log-entry.ok {
  border-color: rgba(88, 214, 141, .35);
}
.addon-log-entry.ok span {
  color: #7ff0a3;
}
.addon-log-entry.error {
  border-color: rgba(255, 107, 107, .38);
}
.addon-log-entry.error span {
  color: #ffb0b0;
}
#sendGrokBtn {
  background: linear-gradient(135deg, #673dff, #55c1ff);
  border-color: rgba(130,180,255,.55);
}


/* V2.0.45 usability refinements */
.option-card-avatar {
  aspect-ratio: 1 / 1;
  height: auto !important;
  width: 100%;
  object-fit: cover !important;
  object-position: center 18% !important;
  border-radius: 16px;
}
.settings-model-preview {
  width: 118px !important;
  height: 118px !important;
  aspect-ratio: 1 / 1;
}
.settings-model-preview img, .settings-model-preview .avatar-placeholder {
  width: 118px !important;
  height: 118px !important;
  aspect-ratio: 1 / 1;
  object-fit: cover !important;
  object-position: center 18% !important;
  border-radius: 16px;
}
.disabled-model-item {
  opacity: .58;
  filter: grayscale(.35);
}
.disabled-model-item strong::after {
  content: "  • desativada";
  color: #ffb0b0;
  font-size: 12px;
  font-weight: 700;
}
.project-primary-actions {
  width: 100%;
}
.full-send-chatgpt,
#sendChatgptBtn {
  width: 100% !important;
  min-height: 58px;
  font-size: 17px;
}
.api-key-setting-item {
  grid-template-columns: 1fr minmax(280px, 420px) !important;
  align-items: center;
}
.api-key-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.api-key-form .inline-action-row {
  justify-content: flex-end;
}
.config-details.hidden {
  display: none !important;
}
@media (max-width: 760px) {
  .projects-grid, #projectsGrid, .project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .project-card, .card.project-card {
    min-width: 0;
  }
  .project-card h3, .card.project-card h3 {
    font-size: 13px;
    line-height: 1.2;
  }
  .project-card p, .card.project-card p {
    font-size: 11px;
  }
  .api-key-setting-item {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  #projects.grid.cards.selectable-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  #projects .card {
    padding: 10px !important;
  }
  #projects .card img {
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
  }
}

/* V2.0.46 configuration/capture refinements */
.collapsed-section-body { display: none !important; }
.collapse-panel-btn { margin-left: auto; }
.settings-panel .section-title { align-items: center; }
.chatgpt-image-count-row { display: grid; grid-template-columns: 220px minmax(160px, 260px); gap: 12px; align-items: end; margin: 12px 0; }
.chatgpt-image-count-row label { margin: 0; }
@media (max-width: 760px) { .chatgpt-image-count-row { grid-template-columns: 1fr; } }
.generation-picker-row { margin-top: 10px; display:flex; gap: 8px; flex-wrap: wrap; }
.generation-picker-row .btn.active-generation { background: linear-gradient(135deg, #168bff, #55c1ff); color: #fff; }


/* V2.0.51 */
.projects-filter-row {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.generated-only-filter {
  white-space: nowrap;
  font-size: 13px;
  color: #d8e7fb;
}
@media (max-width: 760px) {
  .projects-filter-row {
    justify-content: stretch;
    width: 100%;
  }
  .projects-filter-row input[type="text"],
  .projects-filter-row #searchInput {
    width: 100%;
  }
}


/* V2.0.52 comparison and filters */
.compare-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
  margin: 16px 0;
}
.stat-card {
  background: rgba(8,14,26,.62);
  border: 1px solid rgba(119,148,185,.18);
  border-radius: 14px;
  padding: 14px;
}
.stat-card strong {
  display: block;
  font-size: 28px;
  line-height: 1;
}
.stat-card span {
  display: block;
  margin-top: 6px;
  color: #9fb0c8;
  font-size: 13px;
}
.stat-card.ok { border-color: rgba(88,214,141,.35); }
.stat-card.warn { border-color: rgba(255,190,80,.35); }
.compare-data-table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: 14px;
}
.compare-data-table th,
.compare-data-table td {
  border-bottom: 1px solid rgba(119,148,185,.14);
  padding: 11px 10px;
  text-align: left;
  vertical-align: top;
}
.compare-data-table th {
  color: #8ed5ff;
  background: rgba(8,14,26,.72);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 12px;
  font-weight: 800;
  background: rgba(119,148,185,.14);
}
.pill.ok {
  color: #7ff0a3;
  background: rgba(88,214,141,.13);
  border: 1px solid rgba(88,214,141,.28);
}
.pill.warn {
  color: #ffd28a;
  background: rgba(255,190,80,.12);
  border: 1px solid rgba(255,190,80,.26);
}
@media (max-width: 760px) {
  .compare-data-table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}


/* V2.0.53 vitrine/product comparison */
.catalog-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 8px 0;
}
.catalog-metrics span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(85,193,255,.12);
  border: 1px solid rgba(85,193,255,.22);
  color: #dcecff;
  font-size: 12px;
  font-weight: 800;
}
.tai-import-button[data-imported="1"] {
  background: linear-gradient(135deg,#16a34a,#22c55e) !important;
}


/* V2.0.56 Home commercial metrics */
.project-commercial-metrics {
  margin-top: 8px;
  margin-bottom: 8px;
}
.project-commercial-metrics span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}


/* V2.0.65 — clean modern UI polish */
:root {
  --tai-bg: #080d16;
  --tai-surface: rgba(15, 23, 42, .86);
  --tai-surface-2: rgba(17, 28, 48, .86);
  --tai-border: rgba(148, 163, 184, .16);
  --tai-border-strong: rgba(85, 193, 255, .30);
  --tai-text: #eef6ff;
  --tai-muted: #9fb0c8;
  --tai-accent: #55c1ff;
  --tai-accent-2: #7c3aed;
  --tai-ok: #22c55e;
  --tai-shadow: 0 18px 48px rgba(0, 0, 0, .32);
}
body {
  background:
    radial-gradient(circle at top left, rgba(85,193,255,.12), transparent 34rem),
    radial-gradient(circle at top right, rgba(124,58,237,.12), transparent 32rem),
    var(--tai-bg);
  color: var(--tai-text);
}
.card, .project-card, .asset-card, .flow-node, .builder-step, .helper-card, .modal-card, .panel, details, .compare-card {
  background: linear-gradient(180deg, rgba(17,28,48,.92), rgba(9,14,25,.92)) !important;
  border: 1px solid var(--tai-border) !important;
  box-shadow: 0 10px 32px rgba(0,0,0,.20);
  backdrop-filter: blur(10px);
}
.project-card, .card, .asset-card {
  border-radius: 20px !important;
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.project-card:hover, .card:hover, .asset-card:hover, .option-card:hover {
  transform: translateY(-2px);
  border-color: var(--tai-border-strong) !important;
  box-shadow: var(--tai-shadow);
}
.card-body { padding: 14px 14px 16px !important; }
.project-card h3 {
  line-height: 1.18;
  letter-spacing: -.01em;
  color: #f8fbff;
}
.project-card p {
  color: var(--tai-muted) !important;
  line-height: 1.35;
}
.btn {
  border-radius: 12px !important;
  font-weight: 800;
  letter-spacing: .01em;
  box-shadow: 0 10px 24px rgba(46,125,246,.16);
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
.btn:hover { transform: translateY(-1px); filter: brightness(1.08); }
.btn.primary {
  background: linear-gradient(135deg, #2563eb, #55c1ff) !important;
}
.btn.secondary {
  background: rgba(72,84,104,.72) !important;
  border: 1px solid rgba(148,163,184,.16);
}
.btn.danger {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
}
.text-input, input, textarea, select {
  border-radius: 13px !important;
  border: 1px solid rgba(148,163,184,.18) !important;
  background: rgba(2, 6, 23, .58) !important;
  color: var(--tai-text) !important;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.text-input:focus, input:focus, textarea:focus, select:focus {
  border-color: rgba(85,193,255,.56) !important;
  box-shadow: 0 0 0 3px rgba(85,193,255,.12);
  background: rgba(2, 6, 23, .78) !important;
}
.flow-builder { gap: 8px !important; }
.flow-node {
  border-radius: 22px !important;
  min-height: 100%;
}
.flow-node-head span {
  background: linear-gradient(135deg, rgba(85,193,255,.25), rgba(124,58,237,.20)) !important;
  color: #dff4ff !important;
  box-shadow: inset 0 0 0 1px rgba(85,193,255,.18);
}
.option-card {
  border-radius: 16px !important;
  background: rgba(15, 23, 42, .76) !important;
  min-height: 116px;
}
.option-card.selected {
  background: linear-gradient(180deg, rgba(19,34,56,.96), rgba(12,22,39,.96)) !important;
  border-color: rgba(85,193,255,.78) !important;
  box-shadow: 0 0 0 1px rgba(85,193,255,.38) inset, 0 18px 44px rgba(85,193,255,.12) !important;
}
.option-card-avatar {
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.10);
}
.catalog-metrics span {
  background: rgba(85,193,255,.10) !important;
  border-color: rgba(85,193,255,.22) !important;
  color: #eaf7ff !important;
}
.project-commercial-metrics span:nth-child(2n) {
  background: rgba(124,58,237,.12) !important;
  border-color: rgba(124,58,237,.24) !important;
}
.addon-log-panel, #addonLogPanel {
  border-radius: 18px !important;
  border: 1px solid rgba(85,193,255,.20) !important;
  box-shadow: var(--tai-shadow);
}
.table, table {
  border-collapse: separate;
  border-spacing: 0;
}
th {
  color: #c9e8ff;
  font-weight: 900;
}
tr:hover td {
  background: rgba(85,193,255,.045);
}
@media (max-width: 920px) {
  .flow-builder { grid-template-columns: 1fr !important; }
  .flow-link { display: none !important; }
  .option-card-grid { grid-template-columns: repeat(auto-fit,minmax(150px,1fr)) !important; }
}


/* V2.0.67 — safe professional dashboard refinement */
.professional-filter-row {
  display: grid !important;
  grid-template-columns: minmax(180px, 220px) minmax(220px, 1fr) repeat(3, minmax(140px, 180px));
  gap: 10px !important;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(148,163,184,.14);
  border-radius: 18px;
  background: rgba(2, 6, 23, .32);
}
.compact-filter-input { min-width: 0; }
.project-card-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(148,163,184,.12);
}
.project-card-actions .btn {
  margin-top: 0 !important;
  padding: 8px 10px !important;
  font-size: 12px;
}
.project-card-actions .sync-product-btn { background: linear-gradient(135deg, #0f766e, #22c55e) !important; }
.project-card-actions .delete-product-btn { background: linear-gradient(135deg, #991b1b, #ef4444) !important; }
.select-project {
  background: rgba(2,6,23,.72) !important;
  border: 1px solid rgba(148,163,184,.18);
  backdrop-filter: blur(8px);
  border-radius: 999px !important;
  padding: 6px 9px !important;
}
.project-link { color: inherit; }
@media (max-width: 1050px) {
  .professional-filter-row { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 680px) {
  .professional-filter-row { grid-template-columns: 1fr !important; }
}


/* V2.0.68 — ajustes Home/mobile/vitrine */
.generated-only-filter {
  display: none !important;
}
#generatedOnlyFilter.hidden,
#hideGeneratedFilter.hidden {
  display: none !important;
}
.product-mobile-actions {
  align-items: stretch;
}
.product-mobile-actions .btn {
  white-space: nowrap;
}
@media (max-width: 720px) {
  .product-mobile-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .product-mobile-actions .btn {
    width: 100%;
    margin-top: 0 !important;
    text-align: center;
  }
}
.tai-showcase-row-import {
  position: absolute !important;
  right: 10px !important;
  top: 10px !important;
}


/* V2.1.0 — SaaS / Admin Tenants */
.auth-body {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at top left, rgba(85,193,255,.16), transparent 30rem),
    radial-gradient(circle at bottom right, rgba(124,58,237,.15), transparent 26rem),
    #070b13;
}
.auth-shell {
  width: min(480px, calc(100% - 28px));
}
.auth-card h1 {
  margin: 8px 0 6px;
}
.small-note {
  font-size: 12px;
  margin-top: 14px;
}
.admin-container {
  max-width: 1220px;
  margin: 0 auto;
}
.admin-hero {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}
.tenant-form-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 12px;
}
.tenant-security-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(148,163,184,.14);
  border-radius: 16px;
  background: rgba(2,6,23,.26);
  margin: 8px 0 12px;
}
.admin-secret-box {
  white-space: pre-wrap;
  padding: 14px;
  border-radius: 14px;
  background: rgba(2,6,23,.74);
  border: 1px solid rgba(85,193,255,.22);
  color: #dff4ff;
  min-height: 76px;
  overflow: auto;
}
.tenant-list {
  display: grid;
  gap: 12px;
}
.tenant-card {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(148,163,184,.16);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.56));
}
.tenant-card h3 {
  margin: 8px 0 6px;
}
.tenant-card small {
  color: #93a4bb;
  font-weight: 700;
}
.tenant-actions {
  display: flex;
  flex-direction: column;
  min-width: 160px;
}
.captcha-placeholder {
  margin: 10px 0;
  padding: 12px;
  border: 1px dashed rgba(85,193,255,.35);
  border-radius: 12px;
  color: #c8e9ff;
  background: rgba(85,193,255,.08);
}
.hidden { display: none !important; }
@media (max-width: 920px) {
  .tenant-form-grid { grid-template-columns: 1fr 1fr; }
  .tenant-card { flex-direction: column; align-items: stretch; }
  .tenant-actions { flex-direction: row; flex-wrap: wrap; }
}
@media (max-width: 620px) {
  .tenant-form-grid { grid-template-columns: 1fr; }
  .admin-hero { flex-direction: column; align-items: stretch; }
}


/* V2.1.1 — SaaS front/login polish */
.saas-front-body {
  min-height: 100vh;
  background:
    radial-gradient(circle at 16% 8%, rgba(38, 132, 255, .20), transparent 34rem),
    radial-gradient(circle at 82% 16%, rgba(34, 197, 94, .14), transparent 28rem),
    radial-gradient(circle at 50% 92%, rgba(168, 85, 247, .16), transparent 28rem),
    #050913;
  color: #f8fbff;
}
.saas-front-nav {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 22px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.saas-front-logo {
  font-weight: 900;
  letter-spacing: -.03em;
  font-size: 22px;
}
.saas-front-logo span {
  color: #55c1ff;
}
.saas-front-nav nav {
  display: flex;
  gap: 12px;
  align-items: center;
}
.saas-front-nav a {
  color: #d9e9ff;
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 999px;
  padding: 9px 14px;
  background: rgba(15,23,42,.38);
}
.saas-front {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 42px 0 70px;
}
.saas-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) 410px;
  gap: 34px;
  align-items: center;
  min-height: 520px;
}
.saas-hero h1 {
  margin: 10px 0 16px;
  font-size: clamp(42px, 7vw, 76px);
  line-height: .94;
  letter-spacing: -.07em;
}
.saas-hero p {
  color: #b8c8dd;
  font-size: 18px;
  line-height: 1.65;
  max-width: 760px;
}
.saas-hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px;
}
.saas-hero-card {
  border-radius: 28px;
  padding: 24px;
  background: linear-gradient(180deg, rgba(15,23,42,.86), rgba(2,6,23,.72));
  border: 1px solid rgba(85,193,255,.18);
  box-shadow: 0 30px 80px rgba(0,0,0,.34);
}
.saas-hero-card strong {
  display: block;
  font-size: 20px;
  margin-bottom: 10px;
}
.saas-hero-card li {
  margin: 12px 0;
  color: #dcecff;
}
.saas-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.saas-feature-grid article {
  border-radius: 22px;
  padding: 18px;
  background: rgba(15,23,42,.54);
  border: 1px solid rgba(148,163,184,.14);
}
.saas-feature-grid span {
  color: #55c1ff;
  font-weight: 900;
}
.saas-feature-grid h3 {
  margin: 10px 0 8px;
}
.saas-feature-grid p {
  color: #aebdd0;
  line-height: 1.5;
}
.login-pro-shell {
  width: min(540px, calc(100% - 28px));
}
.login-pro-card {
  box-shadow: 0 30px 90px rgba(0,0,0,.40);
}
.login-shortcuts {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
  font-size: 13px;
}
.login-shortcuts a {
  color: #8ed4ff;
}
@media (max-width: 920px) {
  .saas-hero { grid-template-columns: 1fr; min-height: auto; }
  .saas-feature-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  .saas-front-nav { flex-direction: column; gap: 14px; }
  .saas-front-nav nav { flex-wrap: wrap; justify-content: center; }
  .saas-feature-grid { grid-template-columns: 1fr; }
  .saas-hero h1 { font-size: 44px; }
}


/* V2.1.2 — tenant secure app */
.tenant-addon-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  align-items: center;
  gap: 18px;
  border: 1px solid rgba(34,197,94,.24) !important;
  background: linear-gradient(135deg, rgba(5,46,22,.35), rgba(15,23,42,.74)) !important;
}
.tenant-addon-panel.hidden {
  display: none !important;
}
.tenant-addon-panel .wide-action {
  text-align: center;
  margin-top: 0;
}
@media (max-width: 780px) {
  .tenant-addon-panel {
    grid-template-columns: 1fr;
  }
}


/* V2.1.4 — Admin tenant lifecycle */
.tenant-form-grid .wide-field {
  grid-column: span 3;
}
.tenant-card-danger {
  border-color: rgba(239,68,68,.45) !important;
  background: linear-gradient(180deg, rgba(127,29,29,.32), rgba(15,23,42,.72)) !important;
}
.tenant-actions .danger {
  background: rgba(239,68,68,.12) !important;
  color: #fecaca !important;
  border: 1px solid rgba(239,68,68,.35) !important;
}
.admin-only-topbar {
  border-bottom: 1px solid rgba(85,193,255,.12);
}
@media (max-width: 920px) {
  .tenant-form-grid .wide-field { grid-column: auto; }
}


/* V2.1.5 — upload de foto de modelo */
.model-upload-preview {
  margin-top: 10px;
  min-height: 72px;
  border: 1px dashed rgba(148,163,184,.32);
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(15,23,42,.45);
  color: #94a3b8;
  overflow: hidden;
}
.model-upload-preview img {
  width: 100%;
  max-height: 180px;
  object-fit: contain;
  display: block;
}
.settings-limit-note {
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(85,193,255,.20);
  background: rgba(85,193,255,.08);
  color: #c8e9ff;
  font-weight: 700;
}
button:disabled,
.btn:disabled {
  opacity: .48;
  cursor: not-allowed;
  filter: grayscale(.2);
}


/* V2.1.6 — tenant info/logout */
.tenant-info-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 12px;
}
.tenant-info-card {
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(15,23,42,.48);
}
.tenant-info-card span {
  display: block;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 6px;
}
.tenant-info-card strong {
  color: #f8fbff;
  word-break: break-word;
}
.main-menu a[data-logout] {
  border-color: rgba(239,68,68,.32);
  color: #fecaca;
}
@media (max-width: 900px) {
  .tenant-info-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .tenant-info-grid { grid-template-columns: 1fr; }
}


/* V2.1.9 — Premium editable landing */
.premium-landing-body {
  min-height: 100vh;
  margin: 0;
  background:
    radial-gradient(circle at 12% 8%, rgba(85, 193, 255, .20), transparent 34rem),
    radial-gradient(circle at 78% 4%, rgba(168, 85, 247, .22), transparent 32rem),
    radial-gradient(circle at 50% 100%, rgba(34, 197, 94, .10), transparent 30rem),
    #050816;
  color: #f8fbff;
  overflow-x: hidden;
}
.premium-nav {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 24px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.premium-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #ffffff;
  font-weight: 900;
  letter-spacing: -.03em;
  font-size: 20px;
}
.premium-brand-mark {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #55c1ff, #7c3aed);
  box-shadow: 0 18px 40px rgba(85,193,255,.22);
}
.premium-nav nav {
  display: flex;
  gap: 10px;
  align-items: center;
}
.premium-nav nav a {
  color: #d7e6f7;
  padding: 10px 14px;
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(15,23,42,.42);
  border-radius: 999px;
  backdrop-filter: blur(14px);
}
.premium-hero {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  min-height: 690px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  gap: 42px;
  align-items: center;
  padding: 34px 0 62px;
}
.premium-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #8ed4ff;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 900;
}
.premium-eyebrow::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 24px rgba(34,197,94,.8);
}
.premium-hero h1 {
  margin: 16px 0 18px;
  font-size: clamp(46px, 7vw, 86px);
  line-height: .92;
  letter-spacing: -.08em;
  max-width: 880px;
}
.premium-hero p {
  color: #afc1d8;
  font-size: 19px;
  line-height: 1.7;
  max-width: 760px;
}
.premium-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 30px;
}
.premium-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  font-weight: 900;
  border: 1px solid rgba(148,163,184,.18);
}
.premium-btn.primary {
  color: #04111f;
  background: linear-gradient(135deg, #ffffff, #8ed4ff);
  box-shadow: 0 20px 60px rgba(85,193,255,.22);
}
.premium-btn.secondary {
  color: #e9f5ff;
  background: rgba(15,23,42,.64);
}
.premium-visual {
  position: relative;
}
.premium-dashboard {
  border-radius: 32px;
  border: 1px solid rgba(148,163,184,.18);
  background:
    linear-gradient(180deg, rgba(15,23,42,.88), rgba(2,6,23,.74)),
    radial-gradient(circle at 20% 20%, rgba(85,193,255,.25), transparent 20rem);
  box-shadow: 0 40px 120px rgba(0,0,0,.42);
  padding: 18px;
  transform: rotate(1.5deg);
}
.dash-top {
  height: 42px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #dcecff;
}
.dash-top span {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(148,163,184,.5);
}
.dash-top strong {
  margin-left: auto;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #94a3b8;
}
.dash-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.dash-card,
.dash-list,
.dash-phone {
  border-radius: 22px;
  background: rgba(15,23,42,.74);
  border: 1px solid rgba(148,163,184,.14);
  padding: 16px;
}
.dash-card.wide {
  grid-column: span 2;
}
.dash-card small {
  display: block;
  color: #8da2bb;
  margin-bottom: 8px;
}
.dash-card strong {
  color: #f8fbff;
}
.dash-bar {
  height: 9px;
  background: rgba(148,163,184,.16);
  border-radius: 999px;
  overflow: hidden;
  margin-top: 16px;
}
.dash-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #55c1ff, #22c55e);
}
.dash-phone {
  min-height: 290px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 20%, rgba(85,193,255,.18), transparent 12rem),
    linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.9));
}
.phone-glow {
  position: absolute;
  inset: 20px;
  border-radius: 26px;
  background: linear-gradient(135deg, rgba(85,193,255,.28), rgba(124,58,237,.20));
  filter: blur(10px);
}
.phone-product {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 132px;
  height: 188px;
  transform: translate(-50%, -50%);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(142,212,255,.7)),
    linear-gradient(180deg, #fff, #8ed4ff);
  box-shadow: 0 30px 70px rgba(0,0,0,.35);
}
.phone-product::after {
  content: "";
  position: absolute;
  width: 80px;
  height: 34px;
  left: 26px;
  bottom: 24px;
  border-radius: 999px;
  background: rgba(5,8,22,.72);
}
.dash-list {
  display: grid;
  align-content: center;
  gap: 12px;
}
.dash-list p {
  margin: 0;
  font-size: 14px;
  color: #d7e6f7;
}
.dash-list b {
  color: #22c55e;
}
.premium-metrics {
  width: min(1180px, calc(100% - 32px));
  margin: -10px auto 84px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.premium-metrics article {
  padding: 18px;
  border-radius: 24px;
  background: rgba(15,23,42,.52);
  border: 1px solid rgba(148,163,184,.14);
}
.premium-metrics strong {
  display: block;
  font-size: 22px;
  color: #ffffff;
  margin-bottom: 4px;
}
.premium-metrics span {
  color: #9fb2ca;
}
.premium-section,
.premium-split,
.premium-cta {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto 90px;
}
.premium-section-head {
  max-width: 760px;
  margin-bottom: 24px;
}
.premium-section h2,
.premium-split h2,
.premium-cta h2 {
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1;
  letter-spacing: -.06em;
  margin: 12px 0 14px;
}
.premium-section-head p,
.premium-split p,
.premium-cta p {
  color: #aebfd5;
  line-height: 1.7;
}
.premium-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.premium-feature-card {
  min-height: 230px;
  border-radius: 28px;
  padding: 22px;
  background: linear-gradient(180deg, rgba(15,23,42,.76), rgba(2,6,23,.58));
  border: 1px solid rgba(148,163,184,.14);
}
.premium-feature-card span {
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: rgba(85,193,255,.12);
  color: #8ed4ff;
  font-weight: 900;
  margin-bottom: 24px;
}
.premium-feature-card h3 {
  color: #ffffff;
  margin: 0 0 10px;
  font-size: 22px;
  letter-spacing: -.03em;
}
.premium-feature-card p {
  color: #a9bbd2;
  line-height: 1.65;
}
.premium-split {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 22px;
  align-items: stretch;
}
.premium-checks {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 26px 0 0;
  list-style: none;
}
.premium-checks li {
  border-radius: 16px;
  border: 1px solid rgba(148,163,184,.14);
  background: rgba(15,23,42,.5);
  padding: 14px 16px;
  color: #dbeafe;
}
.premium-checks li::before {
  content: "✓";
  color: #22c55e;
  font-weight: 900;
  margin-right: 10px;
}
.premium-glass-panel {
  padding: 26px;
  border-radius: 32px;
  background:
    radial-gradient(circle at 20% 20%, rgba(124,58,237,.24), transparent 18rem),
    rgba(15,23,42,.62);
  border: 1px solid rgba(148,163,184,.16);
}
.premium-glass-panel h3 {
  margin-top: 0;
  font-size: 26px;
}
.premium-tags {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.premium-tags span {
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  padding: 10px 13px;
  color: #dbeafe;
  font-weight: 800;
}
.premium-cta {
  text-align: center;
  padding: 56px 24px;
  border-radius: 36px;
  background:
    linear-gradient(135deg, rgba(85,193,255,.18), rgba(124,58,237,.16)),
    rgba(15,23,42,.72);
  border: 1px solid rgba(148,163,184,.16);
}
.premium-footer {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 32px 0 44px;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid rgba(148,163,184,.12);
  color: #8da2bb;
}
.premium-footer a {
  color: #dbeafe;
}
@media (max-width: 980px) {
  .premium-hero,
  .premium-split {
    grid-template-columns: 1fr;
  }
  .premium-metrics,
  .premium-feature-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  .premium-nav {
    flex-direction: column;
    gap: 16px;
  }
  .premium-nav nav {
    flex-wrap: wrap;
    justify-content: center;
  }
  .premium-hero h1 {
    font-size: 44px;
  }
  .premium-metrics,
  .premium-feature-grid {
    grid-template-columns: 1fr;
  }
  .dash-grid {
    grid-template-columns: 1fr;
  }
  .dash-card.wide {
    grid-column: auto;
  }
}

/* V2.1.18 — compact addon card */
.tenant-addon-panel {
  min-height: 0 !important;
  padding: 16px 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}
.tenant-addon-panel h2 {
  margin: 2px 0 0 !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
}
.tenant-addon-panel .eyebrow {
  margin-bottom: 0 !important;
}
.tenant-addon-panel .btn {
  min-width: 180px;
  width: auto !important;
}
@media (max-width: 720px) {
  .tenant-addon-panel {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
  .tenant-addon-panel .btn {
    width: 100% !important;
  }
}

.activity-panel{margin-top:14px;padding:14px;border:1px solid rgba(125,160,255,.24);background:rgba(15,23,42,.45);border-radius:14px}
.activity-panel.hidden{display:none}
.activity-row{margin-top:10px;padding:10px;border-radius:12px;background:rgba(255,255,255,.04)}
.activity-top{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:800}
.activity-bar{height:8px;background:rgba(255,255,255,.12);border-radius:999px;overflow:hidden;margin-top:7px}
.activity-bar span{display:block;height:100%;background:linear-gradient(90deg,#168bff,#55c1ff);border-radius:999px;transition:width .35s ease}
.activity-row p{margin:7px 0 0;color:var(--muted);font-size:12px}
.activity-failed .activity-bar span{background:linear-gradient(90deg,#dc2626,#ef4444)}
.activity-ok .activity-bar span{background:linear-gradient(90deg,#16a34a,#22c55e)}
.generated-video-box{margin-top:14px;padding:12px;border-radius:14px;background:rgba(255,255,255,.04)}
.generated-video{width:100%;max-height:520px;border-radius:12px;background:#000}


.video-text-option {
  margin-top: 10px;
  display: flex;
  gap: 9px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 12px;
  background: rgba(15,23,42,.35);
  color: #dbeafe;
  font-size: 13px;
}
.video-text-option input { width: 16px; height: 16px; }
.mini-helper {
  margin: 6px 0 0;
  color: #9fb3cc;
  font-size: 12px;
  line-height: 1.4;
}
.addon-log-toggle {
  margin: 8px 0 10px;
}


/* V2.1.44 — Home product image carousel */
.project-cover-carousel {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: rgba(15, 23, 42, .45);
}
.project-cover-carousel img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.project-cover-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 34px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  background: rgba(2, 6, 23, .68);
  color: #fff;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.25);
}
.project-cover-arrow.prev { left: 8px; }
.project-cover-arrow.next { right: 8px; }
.project-cover-arrow:hover { background: rgba(37, 99, 235, .86); }
.project-cover-count {
  position: absolute;
  right: 9px;
  bottom: 9px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(2, 6, 23, .72);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}


.captcha-image-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
.captcha-image {
  display: block;
  width: min(260px, 100%);
  height: auto;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(0,0,0,.22);
  user-select: none;
  -webkit-user-drag: none;
}

.backup-actions-box {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 18px;
  background: rgba(15, 23, 42, .28);
}
.backup-actions-box h3 {
  margin: 0 0 6px;
}
.support-read-only-banner {
  position: sticky;
  top: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 20px;
  color: #fff;
  background: linear-gradient(135deg, #7c2d12, #b45309);
  box-shadow: 0 8px 24px rgba(69, 26, 3, .28);
}
.support-read-only-banner div { display: grid; gap: 2px; }
.support-read-only-banner span { font-size: .88rem; opacity: .92; }
@media (max-width: 720px) {
  .support-read-only-banner { align-items: stretch; flex-direction: column; }
}

.model-builder-container { display: grid; gap: 20px; max-width: 1180px; }
.model-builder-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.model-builder-intro h2, .model-prompt-panel h2 { margin: 5px 0 8px; }
.model-gender-picker {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 22px;
}
.model-gender-card {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  column-gap: 14px;
  padding: 18px;
  text-align: left;
  color: inherit;
  border: 1px solid rgba(148, 163, 184, .24);
  border-radius: 18px;
  background: rgba(15, 23, 42, .32);
  cursor: pointer;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}
.model-gender-card > span { grid-row: 1 / 3; align-self: center; font-size: 2rem; }
.model-gender-card strong { font-size: 1rem; }
.model-gender-card small { margin-top: 3px; color: var(--muted, #94a3b8); }
.model-gender-card:hover { transform: translateY(-1px); border-color: rgba(96, 165, 250, .7); }
.model-gender-card.selected {
  border-color: #60a5fa;
  background: linear-gradient(135deg, rgba(37, 99, 235, .2), rgba(14, 165, 233, .1));
  box-shadow: 0 0 0 2px rgba(96, 165, 250, .12);
}
.model-options-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.model-option-field { display: grid; gap: 7px; }
.model-option-field > span { font-size: .86rem; font-weight: 800; color: #cbd5e1; }
.model-prompt-panel textarea {
  width: 100%;
  min-height: 500px;
  resize: vertical;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  line-height: 1.55;
}
.model-prompt-actions { margin-top: 14px; }
@media (max-width: 900px) {
  .model-options-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .model-builder-intro { align-items: stretch; flex-direction: column; }
  .model-gender-picker, .model-options-grid { grid-template-columns: 1fr; }
  .model-prompt-actions .btn { width: 100%; }
}

/* v2.4 — Reference Studio and settings modernization */
.reference-studio { max-width: 1120px; margin-inline: auto; }
.reference-studio .panel { border: 1px solid rgba(148,163,184,.16); box-shadow: 0 18px 50px rgba(2,6,23,.16); }
.reference-studio .model-builder-intro { text-align: left; padding: clamp(22px,4vw,38px); border-radius: 24px; background: linear-gradient(135deg, rgba(37,99,235,.16), rgba(14,165,233,.07)); }
.reference-studio .model-builder-panel, .reference-studio .model-prompt-panel { border-radius: 24px; padding: clamp(20px,4vw,34px); }
.reference-studio .model-gender-picker { max-width: 760px; margin: 0 auto 28px; }
.reference-studio .model-options-grid { max-width: 920px; margin-inline: auto; }
.reference-studio textarea { border-radius: 18px; padding: 20px; line-height: 1.55; background: rgba(15,23,42,.42); }
.reference-create-card { margin-top: 20px; padding: 20px; border-radius: 20px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid rgba(56,189,248,.3); background: linear-gradient(135deg, rgba(37,99,235,.18), rgba(14,165,233,.08)); }
.reference-create-card h3 { margin: 3px 0 6px; }
.reference-create-card p { margin: 0; max-width: 700px; color: var(--muted); }
.reference-create-button { min-width: 250px; min-height: 52px; }
.reference-progress { margin-top: 18px; padding: 15px 17px; border-radius: 16px; background: rgba(15,23,42,.56); border: 1px solid rgba(148,163,184,.18); display: grid; gap: 7px; }
.reference-progress[hidden] { display: none; }
.reference-progress-bar { height: 8px; overflow: hidden; border-radius: 999px; background: rgba(148,163,184,.18); }
.reference-progress-bar span { display: block; width: 4%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#2563eb,#38bdf8); transition: width .35s ease; }
.reference-progress small { color: var(--muted); }
.settings-header-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.settings-panel { scroll-margin-top: 24px; border-radius: 22px; }
.settings-panel > .section-title { align-items: flex-start; gap: 18px; }
.settings-list { gap: 12px; }
.settings-item { border-radius: 18px; border: 1px solid rgba(148,163,184,.14); background: rgba(15,23,42,.34); padding: 16px; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.settings-item:hover { transform: translateY(-1px); border-color: rgba(56,189,248,.28); background: rgba(15,23,42,.46); }
.settings-model-item { grid-template-columns: 118px minmax(0,1fr) auto; align-items: center; }
.settings-model-preview { width: 104px; height: 124px; border-radius: 16px; overflow: hidden; background: rgba(148,163,184,.12); }
.settings-model-preview img { width: 100%; height: 100%; object-fit: cover; }
.settings-model-preview.scenario-preview { width: 132px; height: 82px; }
.settings-scenario-item { grid-template-columns: 146px minmax(0,1fr) auto; }
.disabled-model-item { opacity: .58; filter: saturate(.7); }
.modal-card-wide { border-radius: 24px; max-height: min(90vh,900px); overflow: auto; box-shadow: 0 28px 90px rgba(2,6,23,.54); }
.model-upload-preview { min-height: 150px; border-radius: 18px; overflow: hidden; background: rgba(15,23,42,.36); }
.model-upload-preview img { max-height: 320px; width: 100%; object-fit: contain; }
.option-card .option-card-avatar { width: 100%; height: 108px; border-radius: 12px; object-fit: cover; margin-bottom: 8px; }
@media (max-width: 760px) {
  .reference-create-card { align-items: stretch; flex-direction: column; }
  .reference-create-button { min-width: 0; width: 100%; }
  .settings-model-item, .settings-scenario-item { grid-template-columns: 82px minmax(0,1fr); }
  .settings-model-preview, .settings-model-preview.scenario-preview { width: 74px; height: 74px; }
  .settings-item .settings-actions { grid-column: 1 / -1; width: 100%; justify-content: flex-start; }
  .settings-header-actions { width: 100%; justify-content: stretch; }
  .settings-header-actions .btn { flex: 1; }
}

/* v2.4.2 — Professional ERP shell, flexible builder and commercial landing */
:root {
  --erp-bg: #f4f7fb;
  --erp-surface: #ffffff;
  --erp-surface-soft: #f8fafc;
  --erp-border: #dbe4f0;
  --erp-text: #172033;
  --erp-muted: #66758d;
  --erp-primary: #2563eb;
  --erp-primary-strong: #1d4ed8;
  --erp-sidebar: #0f1c33;
  --erp-sidebar-soft: #172844;
  --erp-success: #0f9f6e;
  --erp-danger: #dc3f4f;
  --erp-shadow: 0 14px 38px rgba(23, 40, 70, .08);
}

body.erp-tenant-shell {
  min-height: 100vh;
  padding-left: 272px;
  background: var(--erp-bg);
  color: var(--erp-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.erp-tenant-shell .erp-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 9000;
  width: 272px;
  min-height: 100vh;
  display: block;
  padding: 28px 18px;
  overflow-y: auto;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, var(--erp-sidebar), #0a1426 100%);
  box-shadow: 12px 0 34px rgba(15,28,51,.12);
  text-align: left;
}
.erp-tenant-shell .erp-sidebar .brand-center { width: 100%; }
.erp-tenant-shell .erp-sidebar .brand-center::before {
  content: "TA";
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin-bottom: 18px;
  border-radius: 14px;
  color: #fff;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .06em;
  background: linear-gradient(135deg, #2563eb, #06b6d4);
  box-shadow: 0 12px 30px rgba(37,99,235,.3);
}
.erp-tenant-shell .erp-sidebar h1 {
  color: #fff;
  font-size: 21px;
  letter-spacing: -.025em;
  margin-bottom: 5px;
}
.erp-tenant-shell .erp-sidebar p {
  color: #94a9c7;
  font-size: 12px;
  line-height: 1.5;
  margin: 0 0 24px;
}
.erp-tenant-shell .main-menu {
  display: grid;
  width: 100%;
  gap: 7px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.erp-tenant-shell .main-menu a {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 9px 11px;
  border: 1px solid transparent;
  border-radius: 13px;
  color: #cad6e8;
  transition: background .16s ease, border-color .16s ease, transform .16s ease;
}
.erp-tenant-shell .main-menu a:hover {
  transform: translateX(2px);
  color: #fff;
  background: rgba(255,255,255,.07);
}
.erp-tenant-shell .main-menu a.active {
  color: #fff;
  border-color: rgba(96,165,250,.24);
  background: linear-gradient(135deg, rgba(37,99,235,.32), rgba(14,165,233,.13));
  box-shadow: inset 3px 0 0 #60a5fa;
}
.erp-nav-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #b8cdf0;
  background: rgba(255,255,255,.07);
  font-size: 16px;
  font-weight: 800;
}
.main-menu a.active .erp-nav-icon { color: #fff; background: rgba(37,99,235,.55); }
.erp-nav-copy { display: grid; gap: 2px; min-width: 0; }
.erp-nav-copy strong { font-size: 13px; line-height: 1.1; }
.erp-nav-copy small { color: #8499b7; font-size: 10.5px; font-weight: 500; line-height: 1.25; }
.erp-tenant-shell .floating-actions {
  position: static;
  margin-top: 20px;
}
.erp-mobile-bar { display: none; }

.erp-tenant-shell > .container,
.erp-tenant-shell > main.container,
.erp-tenant-shell .home-container,
.erp-tenant-shell .project-layout {
  width: min(1540px, 100%);
  max-width: none;
  margin: 0 auto;
  padding: 30px clamp(20px, 3vw, 46px) 60px;
}
.erp-tenant-shell .panel {
  color: var(--erp-text);
  border: 1px solid var(--erp-border);
  border-radius: 18px;
  background: var(--erp-surface);
  box-shadow: var(--erp-shadow);
}
.erp-tenant-shell h1,
.erp-tenant-shell h2,
.erp-tenant-shell h3,
.erp-tenant-shell strong,
.erp-tenant-shell label { color: var(--erp-text); }
.erp-tenant-shell .muted,
.erp-tenant-shell .mini-note,
.erp-tenant-shell .mini-helper,
.erp-tenant-shell .section-title p,
.erp-tenant-shell .reference-create-card p,
.erp-tenant-shell .settings-item p,
.erp-tenant-shell .settings-item small { color: var(--erp-muted); }
.erp-tenant-shell .eyebrow {
  color: var(--erp-primary);
  font-weight: 850;
  letter-spacing: .11em;
}
.erp-tenant-shell .text-input,
.erp-tenant-shell textarea,
.erp-tenant-shell input[type="file"],
.erp-tenant-shell #searchInput,
.erp-tenant-shell .flow-search-input {
  color: var(--erp-text);
  border: 1px solid #cbd7e7;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15,23,42,.03);
}
.erp-tenant-shell .text-input:focus,
.erp-tenant-shell textarea:focus,
.erp-tenant-shell #searchInput:focus,
.erp-tenant-shell .flow-search-input:focus {
  outline: 0;
  border-color: #60a5fa;
  box-shadow: 0 0 0 4px rgba(37,99,235,.11);
}
.erp-tenant-shell .btn { margin-top: 0; border-radius: 10px; font-weight: 750; }
.erp-tenant-shell .btn.primary { background: var(--erp-primary); }
.erp-tenant-shell .btn.primary:hover { background: var(--erp-primary-strong); }
.erp-tenant-shell .btn.secondary { color: #314158; border: 1px solid #cbd7e7; background: #fff; }
.erp-tenant-shell .btn.secondary:hover { color: var(--erp-primary); border-color: #93b4e4; background: #f7faff; }
.erp-tenant-shell .btn.danger { background: var(--erp-danger); }
.erp-tenant-shell .helper-card,
.erp-tenant-shell .reference-progress,
.erp-tenant-shell .compact-details,
.erp-tenant-shell .backup-actions-box,
.erp-tenant-shell .result-card,
.erp-tenant-shell .result-text,
.erp-tenant-shell .addon-log-panel,
.erp-tenant-shell .addon-log-entry,
.erp-tenant-shell .prompt-toolbar {
  color: var(--erp-muted);
  border-color: var(--erp-border);
  background: var(--erp-surface-soft);
}
.erp-tenant-shell .card,
.erp-tenant-shell .project-card,
.erp-tenant-shell .asset-card,
.erp-tenant-shell .history-item,
.erp-tenant-shell .catalog-card,
.erp-tenant-shell .settings-item {
  color: var(--erp-text);
  border-color: var(--erp-border);
  background: #fff;
}
.erp-tenant-shell .project-card p { color: var(--erp-muted); }
.erp-tenant-shell .settings-item:hover { background: #fbfdff; border-color: #a9c5ed; }
.erp-tenant-shell .option-card {
  color: var(--erp-text);
  border-color: #d7e1ed;
  background: #fff;
}
.erp-tenant-shell .option-card span { color: var(--erp-muted); }
.erp-tenant-shell .option-card:hover { border-color: #9dbbe5; background: #f8fbff; }
.erp-tenant-shell .option-card.selected {
  border-color: var(--erp-primary);
  background: #eff6ff;
  box-shadow: 0 0 0 1px rgba(37,99,235,.22) inset;
}
.erp-tenant-shell .flow-node,
.erp-tenant-shell .builder-step {
  color: var(--erp-text);
  border-color: var(--erp-border);
  background: #f8fafc;
}
.erp-tenant-shell .flow-node-head span,
.erp-tenant-shell .flow-node-title span { color: #fff; background: var(--erp-primary); }
.erp-tenant-shell .flow-link-line { background: linear-gradient(90deg,#93b9ee,#2563eb); }
.erp-tenant-shell .flow-link-dot { background: #2563eb; box-shadow: 0 0 0 6px rgba(37,99,235,.1); }
.erp-tenant-shell .model-gender-card {
  color: var(--erp-text);
  border-color: var(--erp-border);
  background: #fff;
}
.erp-tenant-shell .model-gender-card small { color: var(--erp-muted); }
.erp-tenant-shell .model-gender-card.selected { border-color: #60a5fa; background: #eff6ff; }
.erp-tenant-shell .reference-studio .model-builder-intro,
.erp-tenant-shell .reference-create-card {
  border-color: #bed5f5;
  background: linear-gradient(135deg, #eff6ff, #f0fdfa);
}
.erp-tenant-shell .reference-studio textarea { background: #fff; }
.erp-tenant-shell .sticky-result { top: 18px; }
.erp-tenant-shell .status.success { color: #087f5b; }
.erp-tenant-shell .status.error { color: #c52e42; }

/* Builder layout switch */
.builder-section-title { align-items: flex-start; }
.builder-layout-switch {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 5px;
  border: 1px solid var(--erp-border, #2a3343);
  border-radius: 12px;
  background: var(--erp-surface-soft, #10151d);
}
.builder-layout-switch .btn { min-width: 132px; }
.builder-layout-switch .btn.active {
  color: #fff;
  border-color: var(--erp-primary, #2563eb);
  background: var(--erp-primary, #2563eb);
}
.flow-builder[data-layout="horizontal"] {
  display: flex !important;
  align-items: stretch;
  gap: 0 !important;
  width: 100%;
  padding: 2px 2px 12px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x proximity;
}
.flow-builder[data-layout="horizontal"] .flow-node {
  flex: 1 0 270px;
  min-width: 270px;
  max-width: 360px;
  scroll-snap-align: start;
}
.flow-builder[data-layout="horizontal"] .flow-link { flex: 0 0 36px; min-width: 36px; }
.flow-builder[data-layout="horizontal"] .flow-card-grid { max-height: 360px; }
.flow-builder[data-layout="classic"] {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(300px, 1fr)) !important;
  gap: 16px !important;
}
.flow-builder[data-layout="classic"] .flow-link { display: none !important; }
.flow-builder[data-layout="classic"] .flow-node { min-width: 0; max-width: none; }
.flow-builder[data-layout="classic"] .flow-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); max-height: 390px; }

/* Free-form scenario builder */
.scenario-builder-fields { display: grid; gap: 24px; }
.scenario-environment-field {
  display: grid;
  gap: 8px;
  max-width: 920px;
  margin: 0 auto;
  padding: 20px;
  border: 1px solid #bed5f5;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(37,99,235,.08), rgba(14,165,233,.04));
}
.scenario-environment-field strong { font-size: 1.08rem; }
.scenario-environment-field .text-input { margin: 2px 0 0; font-size: 1rem; }
.scenario-environment-field small { color: var(--erp-muted, #94a3b8); line-height: 1.45; }

/* Professional admin refresh */
.admin-only-topbar {
  border-bottom-color: #1d3558;
  background: linear-gradient(135deg,#0f1c33,#152b4b);
}
.admin-container { max-width: 1480px; }
.admin-container .panel { border-radius: 18px; box-shadow: 0 16px 44px rgba(0,0,0,.13); }
.tenant-list .tenant-card { border-radius: 16px; }

/* Commercial landing expansion */
.premium-nav { gap: 22px; }
.premium-nav .nav-cta { padding: 11px 18px; white-space: nowrap; }
.premium-hero { min-height: min(780px, calc(100vh - 80px)); }
.premium-trust-row { display: flex; flex-wrap: wrap; gap: 12px 18px; margin-top: 24px; color: #a9bbd5; font-size: 13px; font-weight: 650; }
.erp-product-mock {
  display: grid;
  grid-template-columns: 72px 1fr;
  min-height: 510px;
  overflow: hidden;
  border: 1px solid rgba(148,163,184,.2);
  border-radius: 28px;
  background: #f5f8fc;
  box-shadow: 0 34px 90px rgba(0,0,0,.36);
  transform: perspective(1200px) rotateY(-4deg) rotateX(2deg);
}
.erp-mock-sidebar { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 22px 12px; background: #0e1a30; }
.erp-mock-sidebar b { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: linear-gradient(135deg,#2563eb,#06b6d4); color:#fff; }
.erp-mock-sidebar i { width: 34px; height: 34px; border-radius: 10px; background: rgba(255,255,255,.08); }
.erp-mock-sidebar i:first-of-type { background: rgba(37,99,235,.5); }
.erp-mock-main { padding: 22px; color: #172033; }
.erp-mock-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:18px; border-bottom:1px solid #dce4ef; font-weight:800; }
.erp-mock-top em { padding:7px 10px; border-radius:999px; color:#087f5b; background:#dcfce7; font-size:11px; font-style:normal; }
.erp-mock-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:18px; }
.erp-mock-kpis article { padding:14px; border:1px solid #dce4ef; border-radius:14px; background:#fff; }
.erp-mock-kpis small { display:block; color:#718096; margin-bottom:6px; }
.erp-mock-kpis strong { font-size:15px; }
.erp-mock-flow { display:flex; align-items:center; gap:7px; margin-top:16px; overflow:hidden; }
.erp-mock-flow div { flex:1; min-width:64px; padding:11px 7px; border:1px solid #cfdbea; border-radius:11px; background:#fff; text-align:center; font-size:11px; font-weight:800; }
.erp-mock-flow b { color:#2563eb; }
.erp-mock-result { display:grid; grid-template-columns:140px 1fr; gap:18px; align-items:center; margin-top:18px; padding:17px; border-radius:18px; background:#eaf1fb; }
.mock-phone { width:116px; height:205px; margin:auto; padding:7px; border-radius:25px; background:#111827; box-shadow:0 16px 30px rgba(15,23,42,.25); }
.mock-phone span { display:block; width:100%; height:100%; border-radius:19px; background:linear-gradient(160deg,#f0c6a4,#f7e7d5 46%,#9fc0a4); }
.erp-mock-result ul { display:grid; gap:10px; margin:0; padding:0; list-style:none; color:#46566d; font-size:12px; }
.erp-mock-result li::before { content:"✓"; margin-right:7px; color:#0f9f6e; font-weight:900; }
.outcome-section { padding-top: 88px; }
.outcome-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.outcome-grid .premium-feature-card { background: linear-gradient(160deg,rgba(37,99,235,.11),rgba(14,165,233,.035)); }
.premium-steps { display:grid; gap:12px; margin:28px 0 0; padding:0; list-style:none; }
.premium-steps li { display:grid; grid-template-columns:42px 1fr; align-items:center; gap:12px; padding:13px 15px; border:1px solid rgba(148,163,184,.16); border-radius:14px; background:rgba(15,23,42,.34); }
.premium-steps b { display:grid; place-items:center; width:36px; height:36px; border-radius:10px; color:#fff; background:#2563eb; font-size:11px; }
.premium-steps span { color:#c4d0e2; line-height:1.45; }
.benefits-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.benefits-grid .premium-feature-card span { color:#8ed5ff; background:rgba(37,99,235,.16); }

@media (max-width: 1100px) {
  .benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .erp-product-mock { transform: none; }
}
@media (max-width: 900px) {
  body.erp-tenant-shell { padding-left: 0; padding-top: 60px; }
  .erp-mobile-bar {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 9100;
    height: 60px;
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    color: #fff;
    background: #0f1c33;
    box-shadow: 0 8px 24px rgba(15,28,51,.2);
  }
  .erp-mobile-bar span { color:#8fa4c1; font-size:11px; }
  .erp-menu-toggle { width:38px; height:38px; border:0; border-radius:10px; color:#fff; background:rgba(255,255,255,.08); font-size:19px; }
  .erp-tenant-shell .erp-sidebar { width: 280px; transform: translateX(-104%); transition: transform .2s ease; }
  .erp-tenant-shell.erp-nav-open .erp-sidebar { transform: translateX(0); }
  .erp-tenant-shell > .container,
  .erp-tenant-shell > main.container,
  .erp-tenant-shell .home-container,
  .erp-tenant-shell .project-layout { padding: 20px 14px 42px; }
  .flow-builder[data-layout="classic"] { grid-template-columns: 1fr !important; }
  .builder-section-title { align-items: stretch; }
  .builder-layout-switch { width:100%; }
  .builder-layout-switch .btn { flex:1; min-width:0; }
  .outcome-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .premium-nav nav { display:none; }
  .premium-nav .nav-cta { display:inline-flex; }
  .erp-product-mock { grid-template-columns: 52px 1fr; min-height: 440px; }
  .erp-mock-sidebar { padding:16px 7px; }
  .erp-mock-sidebar i { width:30px; height:30px; }
  .erp-mock-main { padding:14px; }
  .erp-mock-kpis { grid-template-columns:1fr; }
  .erp-mock-flow { display:grid; grid-template-columns:1fr 1fr; }
  .erp-mock-flow b { display:none; }
  .erp-mock-result { grid-template-columns:1fr; }
  .mock-phone { height:170px; }
  .benefits-grid { grid-template-columns:1fr; }
  .flow-builder[data-layout="horizontal"] .flow-node { flex-basis: 86vw; min-width: 86vw; }
}

/* v2.4.3 — Premium workspace design system */
:root {
  --ui-bg: #f5f7fb;
  --ui-bg-subtle: #eef2f7;
  --ui-surface: #ffffff;
  --ui-surface-2: #f8fafc;
  --ui-surface-3: #f1f5f9;
  --ui-overlay: rgba(255,255,255,.92);
  --ui-border: #e1e7ef;
  --ui-border-strong: #cbd5e1;
  --ui-text: #111827;
  --ui-text-soft: #334155;
  --ui-muted: #64748b;
  --ui-faint: #94a3b8;
  --ui-primary: #5b5ce2;
  --ui-primary-hover: #4f46d8;
  --ui-primary-soft: #eef0ff;
  --ui-accent: #0891b2;
  --ui-success: #059669;
  --ui-warning: #d97706;
  --ui-danger: #dc3545;
  --ui-focus: rgba(91,92,226,.18);
  --ui-shadow-xs: 0 1px 2px rgba(15,23,42,.04);
  --ui-shadow-sm: 0 8px 24px rgba(15,23,42,.06);
  --ui-shadow-md: 0 18px 48px rgba(15,23,42,.09);
  --ui-radius-sm: 10px;
  --ui-radius-md: 14px;
  --ui-radius-lg: 20px;
  --ui-sidebar: #111827;
  --ui-sidebar-2: #172033;
  --ui-sidebar-border: rgba(255,255,255,.08);
  --ui-sidebar-text: #dbe4f0;
  --ui-sidebar-muted: #8794a8;
  --bg: var(--ui-bg);
  --panel: var(--ui-surface);
  --panel-2: var(--ui-surface-2);
  --text: var(--ui-text);
  --muted: var(--ui-muted);
  --border: var(--ui-border);
  --primary: var(--ui-primary);
}

:root[data-theme="dark"] {
  --ui-bg: #0b0f16;
  --ui-bg-subtle: #0f141d;
  --ui-surface: #121823;
  --ui-surface-2: #171e2a;
  --ui-surface-3: #1d2634;
  --ui-overlay: rgba(18,24,35,.94);
  --ui-border: #273244;
  --ui-border-strong: #354258;
  --ui-text: #eef2f7;
  --ui-text-soft: #cbd5e1;
  --ui-muted: #98a6ba;
  --ui-faint: #6f7d91;
  --ui-primary: #8586ff;
  --ui-primary-hover: #999aff;
  --ui-primary-soft: rgba(133,134,255,.14);
  --ui-accent: #22b8cf;
  --ui-success: #34d399;
  --ui-warning: #fbbf24;
  --ui-danger: #fb7185;
  --ui-focus: rgba(133,134,255,.24);
  --ui-shadow-xs: 0 1px 2px rgba(0,0,0,.18);
  --ui-shadow-sm: 0 10px 28px rgba(0,0,0,.2);
  --ui-shadow-md: 0 22px 54px rgba(0,0,0,.28);
  --ui-sidebar: #0d121a;
  --ui-sidebar-2: #121925;
  --ui-sidebar-border: rgba(255,255,255,.07);
  --ui-sidebar-text: #e2e8f0;
  --ui-sidebar-muted: #7f8ca0;
}

html { background: var(--ui-bg); }
body.erp-tenant-shell {
  min-height: 100vh;
  padding-left: 264px;
  background:
    radial-gradient(circle at 78% -10%, rgba(91,92,226,.07), transparent 30%),
    var(--ui-bg);
  color: var(--ui-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 14px;
  line-height: 1.5;
}

.erp-tenant-shell .erp-sidebar {
  width: 264px;
  padding: 22px 16px 16px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-right: 1px solid var(--ui-sidebar-border);
  background: linear-gradient(180deg, var(--ui-sidebar), var(--ui-sidebar-2));
  box-shadow: none;
}
.erp-tenant-shell .erp-sidebar .brand-center { display: flex; min-height: 0; flex: 1; flex-direction: column; }
.erp-tenant-shell .erp-sidebar .brand-center::before {
  width: 40px;
  height: 40px;
  margin: 0 0 14px;
  border-radius: 12px;
  background: linear-gradient(135deg, #7778ff, #4f46e5 58%, #0891b2);
  box-shadow: 0 10px 24px rgba(79,70,229,.26);
}
.erp-tenant-shell .erp-sidebar h1 {
  margin: 0;
  color: #f8fafc;
  font-size: 19px;
  font-weight: 760;
  letter-spacing: -.03em;
}
.erp-tenant-shell .erp-sidebar p {
  margin: 4px 0 18px;
  color: var(--ui-sidebar-muted);
  font-size: 11.5px;
}
.erp-tenant-shell .main-menu {
  flex: 1;
  align-content: start;
  gap: 4px;
  overflow-y: auto;
  scrollbar-width: thin;
}
.erp-tenant-shell .main-menu a {
  grid-template-columns: 34px minmax(0,1fr);
  gap: 10px;
  min-height: 52px;
  padding: 8px 9px;
  border-radius: 11px;
  color: var(--ui-sidebar-text);
}
.erp-tenant-shell .main-menu a:hover {
  transform: none;
  background: rgba(255,255,255,.055);
}
.erp-tenant-shell .main-menu a.active {
  border-color: rgba(133,134,255,.18);
  background: rgba(133,134,255,.13);
  box-shadow: inset 3px 0 0 #8586ff;
}
.erp-nav-icon {
  width: 32px;
  height: 32px;
  border-radius: 9px;
  background: rgba(255,255,255,.045);
  color: #aebad0;
}
.main-menu a.active .erp-nav-icon { background: rgba(133,134,255,.19); color: #d9dbff; }
.erp-nav-copy strong { color: inherit !important; font-size: 12.5px; font-weight: 680; }
.erp-nav-copy small { color: var(--ui-sidebar-muted); font-size: 10px; }

.erp-sidebar-footer {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding-top: 14px;
  border-top: 1px solid var(--ui-sidebar-border);
}
.erp-sidebar-status {
  display: grid;
  grid-template-columns: 10px minmax(0,1fr);
  align-items: center;
  gap: 9px;
  padding: 8px 9px;
}
.erp-sidebar-status .status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #34d399;
  box-shadow: 0 0 0 4px rgba(52,211,153,.11);
}
.erp-sidebar-status div { display: grid; gap: 1px; }
.erp-sidebar-status strong { color: #dce5f2 !important; font-size: 11px; font-weight: 650; }
.erp-sidebar-status small { color: var(--ui-sidebar-muted); font-size: 9.5px; }
.erp-theme-control {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 3px;
  padding: 3px;
  border: 1px solid var(--ui-sidebar-border);
  border-radius: 10px;
  background: rgba(0,0,0,.14);
}
.erp-theme-control button {
  min-height: 30px;
  padding: 0 4px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--ui-sidebar-muted);
  font-size: 9.5px;
  font-weight: 680;
  cursor: pointer;
}
.erp-theme-control button:hover { color: #fff; background: rgba(255,255,255,.055); }
.erp-theme-control button.active { color: #fff; background: rgba(133,134,255,.24); box-shadow: inset 0 0 0 1px rgba(169,170,255,.12); }

.erp-mobile-bar { background: var(--ui-sidebar); border-bottom: 1px solid var(--ui-sidebar-border); box-shadow: 0 8px 24px rgba(0,0,0,.16); }
.erp-mobile-brand { display: grid; min-width: 0; }
.erp-mobile-brand strong { color: #f8fafc !important; font-size: 13px; }
.erp-mobile-brand span { color: var(--ui-sidebar-muted) !important; font-size: 9.5px !important; }
.erp-mobile-theme,
.erp-menu-toggle {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 10px;
  background: rgba(255,255,255,.05);
  color: #e2e8f0;
  cursor: pointer;
}

.erp-tenant-shell > .container,
.erp-tenant-shell > main.container,
.erp-tenant-shell .home-container,
.erp-tenant-shell .project-layout {
  width: min(1520px, 100%);
  padding: 26px clamp(22px, 3vw, 46px) 64px;
}
.erp-page-header {
  grid-column: 1 / -1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  min-height: 104px;
  padding: 4px 2px 8px;
}
.erp-page-heading { min-width: 0; }
.erp-breadcrumb { display: flex; align-items: center; gap: 7px; margin-bottom: 9px; color: var(--ui-faint); font-size: 10px; font-weight: 650; letter-spacing: .02em; }
.erp-breadcrumb b { color: var(--ui-border-strong); }
.erp-page-heading h1 { margin: 0; color: var(--ui-text) !important; font-size: clamp(25px, 2.2vw, 34px); font-weight: 750; letter-spacing: -.035em; line-height: 1.12; }
.erp-page-heading p { max-width: 760px; margin: 7px 0 0; color: var(--ui-muted); font-size: 13px; }
.erp-page-actions { display: flex; flex-wrap: wrap; gap: 8px; }

.erp-tenant-shell .panel {
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface);
  color: var(--ui-text);
  box-shadow: var(--ui-shadow-sm);
}
.erp-tenant-shell .panel:hover { border-color: var(--ui-border); }
.erp-tenant-shell .section-title { gap: 20px; margin-bottom: 18px; }
.erp-tenant-shell .section-title h2 { margin: 2px 0 4px; color: var(--ui-text) !important; font-size: 19px; font-weight: 720; letter-spacing: -.02em; }
.erp-tenant-shell .section-title p { max-width: 800px; margin: 0; color: var(--ui-muted); font-size: 12.5px; }
.erp-tenant-shell .eyebrow { color: var(--ui-primary); font-size: 9.5px; font-weight: 800; letter-spacing: .12em; }
.erp-tenant-shell h2, .erp-tenant-shell h3, .erp-tenant-shell strong, .erp-tenant-shell label { color: var(--ui-text); }
.erp-tenant-shell .muted, .erp-tenant-shell .mini-note, .erp-tenant-shell .mini-helper { color: var(--ui-muted); }

.erp-tenant-shell .text-input,
.erp-tenant-shell textarea,
.erp-tenant-shell input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.erp-tenant-shell select,
.erp-tenant-shell #searchInput,
.erp-tenant-shell .flow-search-input {
  min-height: 42px;
  border: 1px solid var(--ui-border-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-text);
  box-shadow: var(--ui-shadow-xs);
}
.erp-tenant-shell textarea { min-height: 96px; padding: 12px 13px; line-height: 1.55; }
.erp-tenant-shell input::placeholder,
.erp-tenant-shell textarea::placeholder { color: var(--ui-faint); }
.erp-tenant-shell .text-input:focus,
.erp-tenant-shell textarea:focus,
.erp-tenant-shell input:focus,
.erp-tenant-shell select:focus,
.erp-tenant-shell #searchInput:focus,
.erp-tenant-shell .flow-search-input:focus {
  outline: 0;
  border-color: var(--ui-primary);
  box-shadow: 0 0 0 4px var(--ui-focus);
}
.erp-tenant-shell .btn {
  min-height: 40px;
  padding: 0 15px;
  border-radius: var(--ui-radius-sm);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: -.005em;
  transition: transform .14s ease, border-color .14s ease, background .14s ease, box-shadow .14s ease;
}
.erp-tenant-shell .btn:hover { transform: translateY(-1px); }
.erp-tenant-shell .btn:active { transform: translateY(0); }
.erp-tenant-shell .btn.primary { border-color: var(--ui-primary); background: var(--ui-primary); color: #fff; box-shadow: 0 6px 16px rgba(91,92,226,.18); }
.erp-tenant-shell .btn.primary:hover { border-color: var(--ui-primary-hover); background: var(--ui-primary-hover); }
.erp-tenant-shell .btn.secondary { border-color: var(--ui-border-strong); background: var(--ui-surface); color: var(--ui-text-soft); }
.erp-tenant-shell .btn.secondary:hover { border-color: var(--ui-primary); background: var(--ui-primary-soft); color: var(--ui-primary); }
.erp-tenant-shell .btn.danger { color: #fff; background: var(--ui-danger); }
.erp-tenant-shell .btn:disabled { transform: none; opacity: .48; cursor: not-allowed; box-shadow: none; }

.erp-tenant-shell .helper-card,
.erp-tenant-shell .reference-progress,
.erp-tenant-shell .compact-details,
.erp-tenant-shell .backup-actions-box,
.erp-tenant-shell .result-card,
.erp-tenant-shell .result-text,
.erp-tenant-shell .addon-log-panel,
.erp-tenant-shell .addon-log-entry,
.erp-tenant-shell .prompt-toolbar,
.erp-tenant-shell details {
  border-color: var(--ui-border);
  background: var(--ui-surface-2);
  color: var(--ui-muted);
}
.erp-tenant-shell .card,
.erp-tenant-shell .project-card,
.erp-tenant-shell .asset-card,
.erp-tenant-shell .history-item,
.erp-tenant-shell .catalog-card,
.erp-tenant-shell .settings-item,
.erp-tenant-shell .tenant-info-card {
  border-color: var(--ui-border);
  background: var(--ui-surface);
  color: var(--ui-text);
  box-shadow: var(--ui-shadow-xs);
}
.erp-tenant-shell .project-card:hover,
.erp-tenant-shell .asset-card:hover,
.erp-tenant-shell .settings-item:hover {
  transform: translateY(-1px);
  border-color: var(--ui-border-strong);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-sm);
}
.erp-tenant-shell .project-card p,
.erp-tenant-shell .settings-item p,
.erp-tenant-shell .settings-item small { color: var(--ui-muted); }

/* Guided horizontal builder */
.builder-section-title { align-items: flex-start; }
.builder-layout-switch {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 3px;
  padding: 3px;
  border: 1px solid var(--ui-border);
  border-radius: 11px;
  background: var(--ui-surface-2);
}
.builder-layout-switch .btn { min-width: 104px; min-height: 34px; padding: 0 11px; border: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--ui-muted) !important; }
.builder-layout-switch .btn.active { background: var(--ui-surface) !important; color: var(--ui-text) !important; box-shadow: var(--ui-shadow-xs) !important; }
.builder-stepper {
  display: grid;
  grid-template-columns: minmax(150px,1fr) 28px minmax(150px,1fr) 28px minmax(150px,1fr) 28px minmax(150px,1fr);
  align-items: center;
  gap: 7px;
  margin: 22px 0 18px;
}
.builder-stepper > i { height: 1px; background: var(--ui-border-strong); }
.builder-stepper > button {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 58px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: transparent;
  color: var(--ui-muted);
  text-align: left;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.builder-stepper > button:hover { background: var(--ui-surface-2); }
.builder-stepper > button > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--ui-border-strong);
  border-radius: 10px;
  background: var(--ui-surface);
  color: var(--ui-muted);
  font-size: 11px;
  font-weight: 800;
}
.builder-stepper > button > div { display: grid; gap: 2px; min-width: 0; }
.builder-stepper > button strong { overflow: hidden; color: inherit !important; font-size: 12.5px; font-weight: 710; text-overflow: ellipsis; white-space: nowrap; }
.builder-stepper > button small { overflow: hidden; color: var(--ui-faint); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.builder-stepper > button.active { border-color: rgba(91,92,226,.24); background: var(--ui-primary-soft); color: var(--ui-primary); }
.builder-stepper > button.active > span { border-color: var(--ui-primary); background: var(--ui-primary); color: #fff; box-shadow: 0 5px 14px rgba(91,92,226,.2); }
.builder-stepper > button.completed > span { border-color: rgba(5,150,105,.24); background: rgba(5,150,105,.11); color: var(--ui-success); }
.builder-stepper > button.completed > span::after { content: "✓"; }
.builder-stepper > button.completed > span { font-size: 0; }
.builder-stepper > button.completed > span::after { font-size: 12px; }

.flow-builder[data-layout="horizontal"] {
  display: block !important;
  width: 100%;
  padding: 0;
  overflow: visible;
}
.flow-builder[data-layout="horizontal"] .flow-link { display: none !important; }
.flow-builder[data-layout="horizontal"] .flow-node { display: none; }
.flow-builder[data-layout="horizontal"] .flow-node.is-active {
  display: block;
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: clamp(18px, 2.2vw, 28px);
  border: 1px solid var(--ui-border);
  border-radius: 17px;
  background: var(--ui-surface-2);
  animation: builderStageIn .2s ease both;
}
@keyframes builderStageIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.flow-builder[data-layout="horizontal"] .flow-node-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(220px,320px);
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}
.flow-builder[data-layout="horizontal"] .flow-node-title { display: flex; align-items: center; gap: 11px; }
.flow-builder[data-layout="horizontal"] .flow-node-title span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: var(--ui-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}
.flow-builder[data-layout="horizontal"] .flow-node-title strong { font-size: 17px; font-weight: 720; letter-spacing: -.02em; }
.flow-builder[data-layout="horizontal"] .flow-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(185px, 1fr));
  gap: 11px;
  max-height: 430px;
  padding: 2px 5px 5px 2px;
  overflow: auto;
  scrollbar-width: thin;
}
.flow-builder[data-layout="horizontal"] [data-builder-step-panel="0"] .flow-card-grid,
.flow-builder[data-layout="horizontal"] [data-builder-step-panel="3"] .flow-card-grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}
.erp-tenant-shell .option-card {
  min-height: 104px;
  padding: 12px;
  border: 1px solid var(--ui-border);
  border-radius: 13px;
  background: var(--ui-surface);
  color: var(--ui-text);
  box-shadow: var(--ui-shadow-xs);
}
.erp-tenant-shell .option-card:hover { transform: translateY(-1px); border-color: var(--ui-border-strong); background: var(--ui-surface); box-shadow: var(--ui-shadow-sm); }
.erp-tenant-shell .option-card.selected { border-color: var(--ui-primary); background: var(--ui-primary-soft); box-shadow: 0 0 0 1px rgba(91,92,226,.08), var(--ui-shadow-xs); }
.erp-tenant-shell .option-card.selected::after {
  content: "✓";
  position: absolute;
  top: 9px;
  right: 9px;
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--ui-primary);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
}
.erp-tenant-shell .option-card strong { padding-right: 22px; font-size: 12.5px; line-height: 1.3; }
.erp-tenant-shell .option-card span { display: -webkit-box; overflow: hidden; color: var(--ui-muted); font-size: 10.5px; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.erp-tenant-shell .option-card .option-card-avatar {
  width: 100%;
  height: 132px;
  margin: 0 0 10px;
  border-radius: 10px;
  background: var(--ui-surface-3);
  object-fit: cover;
}
.erp-tenant-shell .option-card-empty { color: var(--ui-primary); background: var(--ui-surface-3); }
.flow-builder .helper-card { margin-top: 13px; padding: 11px 13px; border-radius: 11px; font-size: 10.5px; line-height: 1.5; }
.builder-stage-footer {
  display: grid;
  grid-template-columns: auto minmax(180px,1fr) auto;
  align-items: center;
  gap: 14px;
  margin-top: 14px;
  padding: 13px 14px;
  border: 1px solid var(--ui-border);
  border-radius: 13px;
  background: var(--ui-surface);
}
.builder-current-choice { display: grid; justify-items: center; gap: 1px; min-width: 0; }
.builder-current-choice span { color: var(--ui-faint); font-size: 9px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.builder-current-choice strong { overflow: hidden; max-width: 100%; color: var(--ui-text) !important; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.flow-builder[data-layout="classic"] { display: grid !important; grid-template-columns: repeat(2,minmax(320px,1fr)) !important; gap: 14px !important; }
.flow-builder[data-layout="classic"] .flow-node { display: block !important; min-width: 0; max-width: none; padding: 18px; border-color: var(--ui-border); border-radius: 15px; background: var(--ui-surface-2); }
.flow-builder[data-layout="classic"] .flow-link { display: none !important; }
.flow-builder[data-layout="classic"] .flow-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-height: 350px; overflow: auto; }

.prompt-toolbar { margin-top: 24px; border-radius: 12px; }
.project-layout { grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr); gap: 18px; }
.project-layout .flow-panel { padding: clamp(18px,2vw,26px); }
.project-layout .sticky-result { top: 18px; }
.product-head-row { gap: 14px; }
.assets-inline-box { border-color: var(--ui-border); background: var(--ui-surface-2); }

/* Consistent settings and reference studios */
.settings-container { display: grid; gap: 18px; }
.settings-panel { padding: clamp(18px,2vw,25px); }
.settings-item {
  min-height: 76px;
  padding: 14px 15px;
  border-radius: 14px;
  background: var(--ui-surface-2) !important;
}
.settings-item:hover { background: var(--ui-surface-2) !important; }
.settings-actions { gap: 7px; }
.settings-limit-note { color: var(--ui-muted); background: var(--ui-surface-2); border-color: var(--ui-border); }
.tenant-info-grid { gap: 10px; }
.tenant-info-card { min-height: 74px; border-radius: 13px; }
.reference-studio { display: grid; gap: 18px; }
.reference-studio .model-builder-intro,
.reference-create-card,
.scenario-environment-field {
  border-color: var(--ui-border) !important;
  background: linear-gradient(135deg, var(--ui-primary-soft), var(--ui-surface-2)) !important;
}
.model-gender-card { border-color: var(--ui-border) !important; background: var(--ui-surface) !important; color: var(--ui-text) !important; }
.model-gender-card.selected { border-color: var(--ui-primary) !important; background: var(--ui-primary-soft) !important; }
.modal-backdrop { background: rgba(4,8,15,.62); backdrop-filter: blur(6px); }
.modal-card, .modal-card-wide { border: 1px solid var(--ui-border); background: var(--ui-surface); color: var(--ui-text); box-shadow: var(--ui-shadow-md); }

/* Home/product operation */
.compact-batch-import, .project-history-panel, .batch-panel, .tenant-addon-panel { padding: clamp(18px,2vw,25px); }
.professional-filter-row { gap: 8px; }
.professional-filter-row > * { min-width: 150px; }
.erp-tenant-shell .project-card { border-radius: 15px; }
.pagination-row { color: var(--ui-muted); }
.backup-actions-box { border-radius: 15px; }

/* Theme-specific refinements */
:root[data-theme="dark"] .erp-tenant-shell .btn.primary { color: #0b0f16; box-shadow: 0 7px 20px rgba(133,134,255,.16); }
:root[data-theme="dark"] .erp-tenant-shell .option-card.selected::after { color: #0b0f16; }
:root[data-theme="dark"] .builder-stepper > button.active > span { color: #0b0f16; }
:root[data-theme="dark"] .erp-tenant-shell .status.success { color: #6ee7b7; }
:root[data-theme="dark"] .erp-tenant-shell .status.error { color: #fda4af; }
:root[data-theme="dark"] .erp-tenant-shell input[type="checkbox"] { accent-color: var(--ui-primary); }
:root[data-theme="dark"] .erp-tenant-shell img { color-scheme: dark; }

/* Admin and authentication consistency */
body.admin-shell { background: var(--ui-bg); color: var(--ui-text); }
.admin-only-topbar { border-color: var(--ui-border); background: var(--ui-surface); color: var(--ui-text); }
.admin-only-topbar h1, .admin-only-topbar p { color: var(--ui-text); }
.admin-container .panel, .tenant-card { border-color: var(--ui-border); background: var(--ui-surface); color: var(--ui-text); box-shadow: var(--ui-shadow-sm); }
:root[data-theme="dark"] .auth-body { background: radial-gradient(circle at 30% -10%, rgba(133,134,255,.13), transparent 34%), var(--ui-bg); }

@media (max-width: 1180px) {
  .builder-stepper { grid-template-columns: repeat(4,minmax(135px,1fr)); gap: 7px; overflow-x: auto; padding-bottom: 4px; }
  .builder-stepper > i { display: none; }
  .flow-builder[data-layout="classic"] { grid-template-columns: 1fr !important; }
}
@media (max-width: 900px) {
  body.erp-tenant-shell { padding-left: 0; padding-top: 60px; }
  .erp-tenant-shell .erp-sidebar { width: 270px; transform: translateX(-103%); transition: transform .2s ease; }
  .erp-tenant-shell.erp-nav-open .erp-sidebar { transform: translateX(0); }
  .erp-page-header { min-height: 82px; align-items: flex-start; flex-direction: column; gap: 12px; }
  .erp-page-actions { width: 100%; }
  .erp-page-actions .btn { flex: 1; }
  .builder-section-title { align-items: stretch; flex-direction: column; }
  .builder-layout-switch { width: 100%; }
  .builder-layout-switch .btn { flex: 1; }
  .project-layout { grid-template-columns: 1fr; }
  .project-layout .sticky-result { position: static; }
  .flow-builder[data-layout="horizontal"] .flow-node-head { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .erp-tenant-shell > .container,
  .erp-tenant-shell > main.container,
  .erp-tenant-shell .home-container,
  .erp-tenant-shell .project-layout { padding: 17px 12px 40px; }
  .erp-page-heading h1 { font-size: 25px; }
  .erp-tenant-shell .panel { border-radius: 16px; }
  .builder-stepper {
    display: flex;
    gap: 7px;
    margin: 16px -2px 14px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }
  .builder-stepper > button { flex: 0 0 158px; min-height: 54px; scroll-snap-align: start; }
  .flow-builder[data-layout="horizontal"] .flow-node.is-active { padding: 15px; }
  .flow-builder[data-layout="horizontal"] .flow-card-grid,
  .flow-builder[data-layout="horizontal"] [data-builder-step-panel="0"] .flow-card-grid,
  .flow-builder[data-layout="horizontal"] [data-builder-step-panel="3"] .flow-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-height: 470px; }
  .erp-tenant-shell .option-card { min-height: 96px; padding: 10px; }
  .erp-tenant-shell .option-card .option-card-avatar { height: 112px; }
  .builder-stage-footer { grid-template-columns: 1fr 1fr; }
  .builder-current-choice { grid-column: 1 / -1; grid-row: 1; }
  .builder-stage-footer .btn { width: 100%; }
  .settings-model-item, .settings-scenario-item { grid-template-columns: 68px minmax(0,1fr); }
}
@media (max-width: 460px) {
  .flow-builder[data-layout="horizontal"] .flow-card-grid,
  .flow-builder[data-layout="horizontal"] [data-builder-step-panel="0"] .flow-card-grid,
  .flow-builder[data-layout="horizontal"] [data-builder-step-panel="3"] .flow-card-grid { grid-template-columns: 1fr; }
  .professional-filter-row > * { width: 100%; min-width: 0; }
}

/* v2.4.3 legacy visual reset — removes obsolete forced dark gradients */
.erp-tenant-shell .panel,
.erp-tenant-shell .card,
.erp-tenant-shell .project-card,
.erp-tenant-shell .asset-card,
.erp-tenant-shell .history-item,
.erp-tenant-shell .catalog-card,
.erp-tenant-shell .settings-item,
.erp-tenant-shell .tenant-info-card,
.erp-tenant-shell .modal-card,
.erp-tenant-shell .compare-card {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-sm) !important;
  backdrop-filter: none !important;
}
.erp-tenant-shell .helper-card,
.erp-tenant-shell details,
.erp-tenant-shell .prompt-toolbar,
.erp-tenant-shell .backup-actions-box,
.erp-tenant-shell .reference-progress,
.erp-tenant-shell .result-text,
.erp-tenant-shell .addon-log-panel,
.erp-tenant-shell .addon-log-entry {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface-2) !important;
  color: var(--ui-muted) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.erp-tenant-shell .flow-node,
.erp-tenant-shell .builder-step {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface-2) !important;
  color: var(--ui-text) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.erp-tenant-shell .flow-node-head {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface) !important;
}
.erp-tenant-shell .flow-node-head span,
.erp-tenant-shell .flow-node-title span {
  border: 0 !important;
  background: var(--ui-primary) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.erp-tenant-shell .option-card {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.erp-tenant-shell .option-card:hover {
  border-color: var(--ui-border-strong) !important;
  background: var(--ui-surface) !important;
  box-shadow: var(--ui-shadow-sm) !important;
}
.erp-tenant-shell .option-card.selected {
  border-color: var(--ui-primary) !important;
  background: var(--ui-primary-soft) !important;
  box-shadow: 0 0 0 1px rgba(91,92,226,.08), var(--ui-shadow-xs) !important;
}
.erp-tenant-shell .text-input,
.erp-tenant-shell input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.erp-tenant-shell textarea,
.erp-tenant-shell select,
.erp-tenant-shell #searchInput,
.erp-tenant-shell .flow-search-input {
  border-color: var(--ui-border-strong) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.erp-tenant-shell .text-input:focus,
.erp-tenant-shell input:focus,
.erp-tenant-shell textarea:focus,
.erp-tenant-shell select:focus,
.erp-tenant-shell #searchInput:focus,
.erp-tenant-shell .flow-search-input:focus {
  border-color: var(--ui-primary) !important;
  background: var(--ui-surface) !important;
  box-shadow: 0 0 0 4px var(--ui-focus) !important;
}
.erp-tenant-shell .btn { border-radius: var(--ui-radius-sm) !important; box-shadow: none !important; filter: none !important; }
.erp-tenant-shell .btn.primary { border-color: var(--ui-primary) !important; background: var(--ui-primary) !important; color: #fff !important; box-shadow: 0 6px 16px rgba(91,92,226,.18) !important; }
.erp-tenant-shell .btn.primary:hover { border-color: var(--ui-primary-hover) !important; background: var(--ui-primary-hover) !important; }
.erp-tenant-shell .btn.secondary { border-color: var(--ui-border-strong) !important; background: var(--ui-surface) !important; color: var(--ui-text-soft) !important; }
.erp-tenant-shell .btn.secondary:hover { border-color: var(--ui-primary) !important; background: var(--ui-primary-soft) !important; color: var(--ui-primary) !important; }
.erp-tenant-shell .btn.danger { background: var(--ui-danger) !important; color: #fff !important; }
.erp-tenant-shell .catalog-metrics span {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface-2) !important;
  color: var(--ui-text-soft) !important;
}
:root[data-theme="dark"] .erp-tenant-shell .btn.primary,
:root[data-theme="dark"] .erp-tenant-shell .flow-node-head span,
:root[data-theme="dark"] .erp-tenant-shell .flow-node-title span { color: #090d14 !important; }

/* v2.4.3 standalone surfaces — admin and authentication share the workspace language */
.auth-body,
body.admin-shell {
  min-height: 100vh;
  color: var(--ui-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 76% -8%, rgba(91,92,226,.10), transparent 32%),
    radial-gradient(circle at 12% 104%, rgba(8,145,178,.07), transparent 30%),
    var(--ui-bg) !important;
}
.standalone-theme-control {
  display: inline-grid;
  grid-template-columns: repeat(3,auto);
  gap: 3px;
  padding: 3px;
  border: 1px solid var(--ui-border);
  border-radius: 11px;
  background: var(--ui-surface-2);
  box-shadow: var(--ui-shadow-xs);
}
.standalone-theme-control button {
  min-width: 52px;
  min-height: 31px;
  padding: 0 9px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ui-muted);
  font: inherit;
  font-size: 10.5px;
  font-weight: 700;
  cursor: pointer;
}
.standalone-theme-control button:hover { color: var(--ui-text); background: var(--ui-surface-3); }
.standalone-theme-control button.active { color: var(--ui-primary); background: var(--ui-primary-soft); box-shadow: inset 0 0 0 1px rgba(91,92,226,.12); }
.auth-theme-control { position: fixed; z-index: 20; top: 18px; right: 18px; }
.auth-shell { width: min(500px, calc(100% - 28px)); }
.auth-card,
.login-pro-card {
  padding: clamp(24px,4vw,36px) !important;
  border: 1px solid var(--ui-border) !important;
  border-radius: 22px !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-md) !important;
  backdrop-filter: none !important;
}
.auth-card::before {
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  margin-bottom: 20px;
  border-radius: 13px;
  background: linear-gradient(135deg,#7778ff,#4f46e5 60%,#0891b2);
  box-shadow: 0 10px 24px rgba(79,70,229,.22);
}
.auth-card h1 { color: var(--ui-text) !important; font-size: clamp(25px,4vw,31px); letter-spacing: -.035em; }
.auth-card label { display: grid; gap: 7px; margin-top: 14px; color: var(--ui-text-soft); font-size: 11.5px; font-weight: 700; }
.auth-card .muted { color: var(--ui-muted) !important; }
.auth-card .text-input,
.auth-card input,
.auth-card select,
.auth-card textarea {
  min-height: 43px;
  border: 1px solid var(--ui-border-strong) !important;
  border-radius: var(--ui-radius-sm) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.auth-card .text-input:focus,
.auth-card input:focus,
.auth-card select:focus,
.auth-card textarea:focus {
  border-color: var(--ui-primary) !important;
  background: var(--ui-surface) !important;
  box-shadow: 0 0 0 4px var(--ui-focus) !important;
}
.auth-card .captcha-placeholder {
  border-color: var(--ui-border-strong) !important;
  background: var(--ui-surface-2) !important;
  color: var(--ui-text-soft) !important;
}
.auth-card .btn {
  min-height: 41px;
  border-radius: var(--ui-radius-sm) !important;
  box-shadow: none !important;
  filter: none !important;
}
.auth-card .btn.primary { border-color: var(--ui-primary) !important; background: var(--ui-primary) !important; color: #fff !important; }
.auth-card .btn.secondary { border-color: var(--ui-border-strong) !important; background: var(--ui-surface) !important; color: var(--ui-text-soft) !important; }
:root[data-theme="dark"] .auth-card .btn.primary { color: #090d14 !important; }

.admin-only-topbar {
  border-bottom: 1px solid var(--ui-border) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-xs);
}
.admin-only-topbar .brand-center {
  width: min(1480px,calc(100% - 36px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  column-gap: 24px;
  text-align: left;
}
.admin-only-topbar .brand-center > h1,
.admin-only-topbar .brand-center > p { grid-column: 1; }
.admin-only-topbar h1 { margin-bottom: 2px; color: var(--ui-text) !important; letter-spacing: -.025em; }
.admin-only-topbar p { margin: 0; color: var(--ui-muted) !important; }
.admin-top-actions { grid-column: 2; grid-row: 1 / span 2; display: flex; align-items: center; gap: 10px; }
.admin-only-topbar .main-menu { margin: 0; }
.admin-only-topbar .main-menu a {
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid var(--ui-border);
  border-radius: 10px;
  background: var(--ui-surface-2);
  color: var(--ui-text-soft);
}
.admin-container { width: min(1480px,100%); padding: 26px clamp(18px,3vw,42px) 60px; }
.admin-container .panel,
.admin-shell .tenant-card {
  border: 1px solid var(--ui-border) !important;
  border-radius: var(--ui-radius-lg) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-sm) !important;
  backdrop-filter: none !important;
}
.admin-container .panel { padding: clamp(19px,2.4vw,28px); }
.admin-container .panel + .panel { margin-top: 18px; }
.admin-container h2,
.admin-container h3,
.admin-container label,
.admin-container strong { color: var(--ui-text) !important; }
.admin-container .muted,
.admin-container small { color: var(--ui-muted) !important; }
.admin-container .text-input,
.admin-container input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.admin-container textarea,
.admin-container select {
  min-height: 42px;
  border: 1px solid var(--ui-border-strong) !important;
  border-radius: var(--ui-radius-sm) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.admin-container .text-input:focus,
.admin-container input:focus,
.admin-container textarea:focus,
.admin-container select:focus { border-color: var(--ui-primary) !important; box-shadow: 0 0 0 4px var(--ui-focus) !important; }
.admin-container .tenant-security-grid {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface-2) !important;
}
.admin-container .admin-secret-box {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface-2) !important;
  color: var(--ui-text-soft) !important;
}
.admin-container .btn { border-radius: var(--ui-radius-sm) !important; box-shadow: none !important; filter: none !important; }
.admin-container .btn.primary { border-color: var(--ui-primary) !important; background: var(--ui-primary) !important; color: #fff !important; }
.admin-container .btn.secondary { border-color: var(--ui-border-strong) !important; background: var(--ui-surface) !important; color: var(--ui-text-soft) !important; }
.admin-container .btn.danger,
.admin-container .tenant-actions .danger { border-color: var(--ui-danger) !important; background: var(--ui-danger) !important; color: #fff !important; }
.admin-shell .tenant-card-danger { border-color: rgba(220,53,69,.42) !important; background: var(--ui-surface) !important; }
:root[data-theme="dark"] .admin-container .btn.primary { color: #090d14 !important; }

@media (max-width: 760px) {
  .auth-theme-control { top: 10px; right: 10px; }
  .standalone-theme-control button { min-width: 44px; padding: 0 6px; }
  .admin-only-topbar .brand-center { grid-template-columns: 1fr; padding: 14px 0; }
  .admin-top-actions { grid-column: 1; grid-row: auto; margin-top: 12px; flex-wrap: wrap; }
}

/* v2.4.4 — Clean enterprise workspace and product-image selection */
:root {
  --ui-bg: #f6f7f9;
  --ui-bg-subtle: #f1f3f6;
  --ui-surface: #ffffff;
  --ui-surface-2: #f9fafb;
  --ui-surface-3: #f3f4f6;
  --ui-overlay: rgba(255,255,255,.96);
  --ui-border: #e5e7eb;
  --ui-border-strong: #d0d5dd;
  --ui-text: #101828;
  --ui-text-soft: #344054;
  --ui-muted: #667085;
  --ui-faint: #98a2b3;
  --ui-primary: #2563eb;
  --ui-primary-hover: #1d4ed8;
  --ui-primary-soft: #eff6ff;
  --ui-primary-border: #bfdbfe;
  --ui-accent: #0e7490;
  --ui-success: #079455;
  --ui-warning: #dc6803;
  --ui-danger: #d92d20;
  --ui-focus: rgba(37,99,235,.16);
  --ui-shadow-xs: 0 1px 2px rgba(16,24,40,.04);
  --ui-shadow-sm: 0 1px 3px rgba(16,24,40,.06), 0 1px 2px rgba(16,24,40,.04);
  --ui-shadow-md: 0 12px 32px rgba(16,24,40,.10);
  --ui-radius-xs: 8px;
  --ui-radius-sm: 10px;
  --ui-radius-md: 14px;
  --ui-radius-lg: 18px;
  --ui-sidebar: #111827;
  --ui-sidebar-2: #111827;
  --ui-sidebar-border: rgba(255,255,255,.08);
  --ui-sidebar-text: #e5e7eb;
  --ui-sidebar-muted: #98a2b3;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --ui-bg: #0c0f14;
  --ui-bg-subtle: #11151c;
  --ui-surface: #151922;
  --ui-surface-2: #1a1f29;
  --ui-surface-3: #202632;
  --ui-overlay: rgba(21,25,34,.97);
  --ui-border: #262c38;
  --ui-border-strong: #394150;
  --ui-text: #f2f4f7;
  --ui-text-soft: #d0d5dd;
  --ui-muted: #98a2b3;
  --ui-faint: #667085;
  --ui-primary: #3b82f6;
  --ui-primary-hover: #60a5fa;
  --ui-primary-soft: rgba(59,130,246,.14);
  --ui-primary-border: rgba(96,165,250,.38);
  --ui-accent: #22a2c4;
  --ui-success: #32d583;
  --ui-warning: #fdb022;
  --ui-danger: #f97066;
  --ui-focus: rgba(59,130,246,.24);
  --ui-shadow-xs: 0 1px 2px rgba(0,0,0,.22);
  --ui-shadow-sm: 0 1px 3px rgba(0,0,0,.28), 0 1px 2px rgba(0,0,0,.20);
  --ui-shadow-md: 0 16px 42px rgba(0,0,0,.36);
  --ui-sidebar: #0f131a;
  --ui-sidebar-2: #0f131a;
  --ui-sidebar-border: #262c38;
  --ui-sidebar-text: #eaecf0;
  --ui-sidebar-muted: #98a2b3;
}

html,
body,
body.erp-tenant-shell,
.auth-body,
body.admin-shell {
  background: var(--ui-bg) !important;
}
body.erp-tenant-shell {
  padding-left: 256px;
  background-image: none !important;
  color: var(--ui-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Persistent application shell */
.erp-tenant-shell .erp-sidebar {
  width: 256px;
  padding: 20px 14px 14px;
  border-right: 1px solid var(--ui-sidebar-border);
  background: var(--ui-sidebar) !important;
  box-shadow: none !important;
}
.erp-tenant-shell .erp-sidebar .brand-center::before {
  width: 38px;
  height: 38px;
  margin-bottom: 13px;
  border-radius: 10px;
  background: linear-gradient(145deg,#3b82f6,#2563eb 60%,#1d4ed8);
  box-shadow: 0 8px 20px rgba(37,99,235,.25);
}
.erp-tenant-shell .erp-sidebar h1 { font-size: 18px; font-weight: 720; letter-spacing: -.025em; }
.erp-tenant-shell .erp-sidebar p { margin: 3px 0 17px; font-size: 11px; }
.erp-tenant-shell .main-menu { gap: 3px; }
.erp-tenant-shell .main-menu a {
  min-height: 48px;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: var(--ui-sidebar-text);
}
.erp-tenant-shell .main-menu a:hover { background: rgba(255,255,255,.055); }
.erp-tenant-shell .main-menu a.active {
  border-color: rgba(96,165,250,.20);
  background: rgba(59,130,246,.14);
  box-shadow: inset 3px 0 0 #60a5fa;
}
.erp-nav-icon { width: 30px; height: 30px; border-radius: 8px; }
.erp-nav-copy strong { font-size: 12.5px; font-weight: 650; }
.erp-nav-copy small { font-size: 9.5px; }
.erp-theme-control { border-radius: 9px; background: rgba(0,0,0,.16); }
.erp-theme-control button { min-height: 29px; border-radius: 6px; }
.erp-theme-control button.active { background: rgba(59,130,246,.25); }

/* Page rhythm and hierarchy */
.erp-tenant-shell > .container,
.erp-tenant-shell > main.container,
.erp-tenant-shell .home-container,
.erp-tenant-shell .project-layout {
  width: min(1540px,100%);
  padding: 24px clamp(22px,3vw,44px) 64px;
}
.erp-page-header {
  min-height: 92px;
  padding: 0 0 12px;
  align-items: center;
}
.erp-page-heading h1 { font-size: clamp(26px,2.1vw,34px); font-weight: 720; letter-spacing: -.035em; }
.erp-page-heading p { margin-top: 6px; font-size: 13px; line-height: 1.55; }
.erp-breadcrumb { margin-bottom: 7px; font-size: 10px; }

.erp-tenant-shell .panel,
.admin-container .panel,
.admin-shell .tenant-card,
.auth-card,
.login-pro-card,
.modal-card,
.modal-card-wide {
  border: 1px solid var(--ui-border) !important;
  border-radius: var(--ui-radius-md) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-sm) !important;
  backdrop-filter: none !important;
}
.erp-tenant-shell .panel { padding: clamp(18px,2vw,24px); }
.erp-tenant-shell .panel:hover { border-color: var(--ui-border) !important; transform: none !important; }
.erp-tenant-shell .section-title { margin-bottom: 16px; }
.erp-tenant-shell .section-title h2 { font-size: 18px; font-weight: 680; letter-spacing: -.02em; }
.erp-tenant-shell .section-title p { font-size: 12.5px; }
.erp-tenant-shell .eyebrow { color: var(--ui-primary); font-size: 9.5px; letter-spacing: .12em; }

/* Buttons: reliable vertical alignment on every page */
.btn,
button.btn,
a.btn,
.erp-tenant-shell .btn,
.admin-container .btn,
.auth-card .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px;
  min-height: 40px;
  margin-top: 0 !important;
  padding: 0 15px !important;
  border: 1px solid transparent !important;
  border-radius: var(--ui-radius-sm) !important;
  font-family: inherit;
  font-size: 13px;
  font-weight: 650;
  line-height: 1 !important;
  letter-spacing: 0;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}
.btn:hover,
.erp-tenant-shell .btn:hover,
.admin-container .btn:hover { transform: none !important; }
.btn.small,
.erp-tenant-shell .btn.small,
.admin-container .btn.small { min-height: 34px; padding: 0 12px !important; font-size: 12px; }
.btn.big,
.erp-tenant-shell .btn.big { min-height: 46px; padding: 0 18px !important; font-size: 14px; }
.btn.primary,
.erp-tenant-shell .btn.primary,
.admin-container .btn.primary,
.auth-card .btn.primary {
  border-color: var(--ui-primary) !important;
  background: var(--ui-primary) !important;
  color: #fff !important;
}
.btn.primary:hover,
.erp-tenant-shell .btn.primary:hover,
.admin-container .btn.primary:hover { border-color: var(--ui-primary-hover) !important; background: var(--ui-primary-hover) !important; }
.btn.secondary,
.erp-tenant-shell .btn.secondary,
.admin-container .btn.secondary,
.auth-card .btn.secondary {
  border-color: var(--ui-border-strong) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text-soft) !important;
}
.btn.secondary:hover,
.erp-tenant-shell .btn.secondary:hover,
.admin-container .btn.secondary:hover { border-color: var(--ui-primary-border) !important; background: var(--ui-primary-soft) !important; color: var(--ui-primary) !important; }
.btn.danger,
.erp-tenant-shell .btn.danger,
.admin-container .btn.danger { border-color: var(--ui-danger) !important; background: var(--ui-danger) !important; color: #fff !important; }
:root[data-theme="dark"] .btn.primary,
:root[data-theme="dark"] .erp-tenant-shell .btn.primary,
:root[data-theme="dark"] .admin-container .btn.primary,
:root[data-theme="dark"] .auth-card .btn.primary { color: #fff !important; }

.inline-action-row,
.top-actions,
.erp-page-actions,
.settings-actions,
.project-card-actions { align-items: center; gap: 8px; }
.inline-action-row { margin-top: 0; }

/* Form controls */
.erp-tenant-shell .text-input,
.erp-tenant-shell input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.erp-tenant-shell textarea,
.erp-tenant-shell select,
.admin-container input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.admin-container textarea,
.admin-container select,
.auth-card input,
.auth-card textarea,
.auth-card select {
  min-height: 42px;
  margin-top: 6px;
  border: 1px solid var(--ui-border-strong) !important;
  border-radius: var(--ui-radius-sm) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.erp-tenant-shell textarea { min-height: 96px; }
.erp-tenant-shell label,
.admin-container label,
.auth-card label { color: var(--ui-text-soft) !important; font-size: 12px; font-weight: 620; }
.erp-tenant-shell input:focus,
.erp-tenant-shell textarea:focus,
.erp-tenant-shell select:focus,
.admin-container input:focus,
.admin-container textarea:focus,
.admin-container select:focus,
.auth-card input:focus,
.auth-card textarea:focus,
.auth-card select:focus {
  outline: 0 !important;
  border-color: var(--ui-primary) !important;
  box-shadow: 0 0 0 3px var(--ui-focus) !important;
}

/* Product image selector */
.assets-inline-box {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid var(--ui-border) !important;
  border-radius: var(--ui-radius-md);
  background: var(--ui-surface-2) !important;
}
#assets.grid.cards.compact {
  grid-template-columns: repeat(auto-fill,minmax(142px,1fr));
  gap: 12px;
}
.erp-tenant-shell .asset-card,
.asset-card {
  position: relative;
  display: grid;
  grid-template-rows: auto auto;
  min-width: 0;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid var(--ui-border) !important;
  border-radius: 12px !important;
  background: var(--ui-surface) !important;
  color: var(--ui-text) !important;
  text-align: left;
  cursor: pointer;
  box-shadow: var(--ui-shadow-xs) !important;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.erp-tenant-shell .asset-card:hover,
.asset-card:hover {
  transform: translateY(-1px) !important;
  border-color: var(--ui-border-strong) !important;
  box-shadow: var(--ui-shadow-sm) !important;
}
.asset-card img,
.grid.cards.compact .asset-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
  background: var(--ui-surface-3);
}
.asset-card-caption {
  display: grid;
  gap: 3px;
  padding: 10px 11px 11px;
  background: var(--ui-surface);
}
.asset-card-caption strong { color: var(--ui-text) !important; font-size: 12.5px; font-weight: 680; line-height: 1.25; }
.asset-card-caption small { color: var(--ui-muted); font-size: 10.5px; line-height: 1.3; }
.erp-tenant-shell .asset-card.selected,
.asset-card.selected {
  border: 2px solid var(--ui-primary) !important;
  background: var(--ui-primary-soft) !important;
  box-shadow: 0 0 0 3px var(--ui-focus), var(--ui-shadow-sm) !important;
}
.asset-card.selected .asset-card-caption { background: var(--ui-primary-soft); }
.asset-selected-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 0 8px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  background: var(--ui-primary);
  color: #fff !important;
  font-size: 10px;
  font-weight: 750;
  line-height: 1;
  box-shadow: 0 4px 12px rgba(37,99,235,.28);
}
.asset-card:focus-visible { outline: 0; border-color: var(--ui-primary) !important; box-shadow: 0 0 0 4px var(--ui-focus) !important; }

/* Builder: quiet, task-focused enterprise styling */
.builder-layout-switch { border-color: var(--ui-border); border-radius: 10px; background: var(--ui-surface-3); }
.builder-layout-switch .btn { min-height: 32px !important; border: 0 !important; background: transparent !important; }
.builder-layout-switch .btn.active { background: var(--ui-surface) !important; color: var(--ui-text) !important; box-shadow: var(--ui-shadow-xs) !important; }
.builder-stepper { gap: 8px; margin: 18px 0 14px; }
.builder-stepper > button {
  min-height: 64px;
  border: 1px solid var(--ui-border);
  border-radius: 11px;
  background: var(--ui-surface);
  color: var(--ui-muted);
  box-shadow: var(--ui-shadow-xs);
}
.builder-stepper > button.active { border-color: var(--ui-primary-border); background: var(--ui-primary-soft); color: var(--ui-text); box-shadow: 0 0 0 2px var(--ui-focus); }
.builder-stepper > button.completed { border-color: var(--ui-border); background: var(--ui-surface-2); }
.builder-stepper > button > span { background: var(--ui-surface-3); color: var(--ui-muted); }
.builder-stepper > button.active > span,
.builder-stepper > button.completed > span { background: var(--ui-primary); color: #fff !important; }
.builder-stepper > i { background: var(--ui-border-strong); }
.flow-builder[data-layout="horizontal"] .flow-node.is-active,
.flow-builder[data-layout="classic"] .flow-node {
  border-color: var(--ui-border) !important;
  border-radius: var(--ui-radius-md) !important;
  background: var(--ui-surface-2) !important;
}
.flow-builder[data-layout="horizontal"] .flow-node-title span { border-radius: 9px; background: var(--ui-primary); color: #fff !important; }
.erp-tenant-shell .option-card {
  min-height: 100px;
  border-color: var(--ui-border) !important;
  border-radius: 11px !important;
  background: var(--ui-surface) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.erp-tenant-shell .option-card:hover { border-color: var(--ui-border-strong) !important; box-shadow: var(--ui-shadow-sm) !important; }
.erp-tenant-shell .option-card.selected { border-color: var(--ui-primary) !important; background: var(--ui-primary-soft) !important; box-shadow: 0 0 0 2px var(--ui-focus) !important; }
.builder-stage-footer { border-color: var(--ui-border); border-radius: 11px; background: var(--ui-surface); }
.prompt-toolbar,
.erp-tenant-shell .helper-card,
.erp-tenant-shell details,
.erp-tenant-shell .result-text,
.erp-tenant-shell .addon-log-panel {
  border-color: var(--ui-border) !important;
  background: var(--ui-surface-2) !important;
}

/* Lists, settings, results and admin share one component language */
.erp-tenant-shell .card,
.erp-tenant-shell .project-card,
.erp-tenant-shell .history-item,
.erp-tenant-shell .catalog-card,
.erp-tenant-shell .settings-item,
.erp-tenant-shell .tenant-info-card,
.admin-shell .tenant-card {
  border-color: var(--ui-border) !important;
  border-radius: 12px !important;
  background: var(--ui-surface) !important;
  box-shadow: var(--ui-shadow-xs) !important;
}
.erp-tenant-shell .project-card:hover,
.erp-tenant-shell .settings-item:hover,
.erp-tenant-shell .catalog-card:hover { border-color: var(--ui-border-strong) !important; box-shadow: var(--ui-shadow-sm) !important; transform: none !important; }
.result-card { border-radius: 12px !important; }
.result-image { border-color: var(--ui-border) !important; border-radius: 12px; background: var(--ui-surface-2); }
.modal-backdrop { background: rgba(8,12,20,.58); backdrop-filter: blur(5px); }

/* Standalone consistency */
.auth-body,
body.admin-shell { background-image: none !important; }
.admin-only-topbar { border-color: var(--ui-border) !important; background: var(--ui-surface) !important; box-shadow: var(--ui-shadow-xs); }
.standalone-theme-control { border-color: var(--ui-border); background: var(--ui-surface-2); }
.standalone-theme-control button.active { background: var(--ui-primary-soft); color: var(--ui-primary); }
.auth-card::before { border-radius: 10px; background: linear-gradient(145deg,#3b82f6,#2563eb); box-shadow: 0 8px 20px rgba(37,99,235,.22); }

@media (max-width: 900px) {
  body.erp-tenant-shell { padding-left: 0; }
  .erp-tenant-shell .erp-sidebar { width: 270px; }
}
@media (max-width: 700px) {
  #assets.grid.cards.compact { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .asset-selected-badge { top: 6px; right: 6px; padding: 0 7px; font-size: 9px; }
  .btn,
  button.btn,
  a.btn,
  .erp-tenant-shell .btn { white-space: normal; line-height: 1.2 !important; }
}

/* ========================================================================== 
   v2.4.7 — Product intelligence, numeric navigation and global help center
   ========================================================================== */
.product-breadcrumb-path {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 32px;
  margin-top: 9px;
  color: var(--ui-muted);
  font-size: 11.5px;
}
.product-breadcrumb-path:empty { display: none; }
.product-breadcrumb-path a,
.product-breadcrumb-path span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 9px;
  border: 1px solid var(--ui-border);
  border-radius: 999px;
  background: var(--ui-surface-2);
  color: var(--ui-text-soft);
  text-decoration: none;
  line-height: 1;
}
.product-breadcrumb-path a:hover {
  border-color: var(--ui-primary);
  background: var(--ui-primary-soft);
  color: var(--ui-primary);
}
.product-breadcrumb-separator { color: var(--ui-faint); font-size: 11px; }

.suggested-products-panel { overflow: hidden; }
.suggested-products-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}
.suggested-product-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--ui-border);
  border-radius: 14px;
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-xs);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.suggested-product-card:hover {
  border-color: var(--ui-border-strong);
  box-shadow: var(--ui-shadow-sm);
  transform: translateY(-2px);
}
.suggested-product-card > img,
.suggested-product-placeholder {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  background: var(--ui-surface-3);
}
.suggested-product-placeholder {
  display: grid;
  place-items: center;
  color: var(--ui-muted);
  font-size: 11px;
}
.suggested-product-card > div:last-child {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
}
.suggested-product-card h3 {
  display: -webkit-box;
  min-height: 36px;
  margin: 0;
  overflow: hidden;
  color: var(--ui-text);
  font-size: 12.5px;
  font-weight: 680;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.suggested-product-card strong { color: var(--ui-primary); font-size: 13px; }
.suggested-product-card .btn { width: 100%; margin-top: auto; }

.project-title-link { display: block; min-width: 0; text-decoration: none; }
.project-title-link h3 {
  display: block;
  margin: 0;
  overflow: hidden;
  color: var(--ui-text) !important;
  font-size: 14px;
  font-weight: 710;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.project-title-link:hover h3 { color: var(--ui-primary) !important; }
.project-metric-list {
  display: grid;
  gap: 0;
  margin-top: 11px;
  border-top: 1px solid var(--ui-border);
}
.metric-row {
  display: grid;
  grid-template-columns: minmax(88px, .82fr) minmax(0, 1.35fr);
  align-items: center;
  gap: 10px;
  min-height: 31px;
  padding: 6px 0;
  border-bottom: 1px solid var(--ui-border);
  color: var(--ui-muted);
  font-size: 10.5px;
}
.metric-row > span:first-child { font-weight: 650; }
.metric-row strong,
.metric-row > span:last-child {
  min-width: 0;
  overflow: hidden;
  color: var(--ui-text-soft);
  font-weight: 620;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.metric-link {
  min-width: 0;
  overflow: hidden;
  color: var(--ui-primary);
  font-weight: 650;
  text-align: right;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.metric-link:hover { text-decoration: underline; }
.project-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 12px;
  color: var(--ui-muted);
  font-size: 10.5px;
}
.project-card-footer .btn { min-height: 30px !important; }

.numeric-pagination {
  display: flex !important;
  align-items: center;
  justify-content: center;
  grid-template-columns: none !important;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 22px;
}
.pagination-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid var(--ui-border);
  border-radius: 10px;
  background: var(--ui-surface);
  color: var(--ui-text-soft);
  font: inherit;
  font-size: 12px;
  font-weight: 680;
  line-height: 1;
  cursor: pointer;
}
.pagination-page:hover { border-color: var(--ui-primary); background: var(--ui-primary-soft); color: var(--ui-primary); }
.pagination-page.active { border-color: var(--ui-primary); background: var(--ui-primary); color: #fff; box-shadow: 0 6px 16px var(--ui-focus); }
.pagination-ellipsis { display: inline-grid; width: 28px; place-items: center; color: var(--ui-muted); }

.system-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: min(100%, 1480px);
  margin: 26px auto 12px;
  padding: 14px 24px;
  color: var(--ui-muted);
  font-size: 10.5px;
  letter-spacing: .01em;
  text-align: center;
}
.erp-tenant-shell .system-footer { padding-left: 20px; padding-right: 20px; }
.standalone-system-footer { width: min(calc(100% - 32px), 1180px); }

.help-video-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.help-video-card {
  overflow: hidden;
  border: 1px solid var(--ui-border);
  border-radius: 14px;
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-xs);
}
.help-video-frame {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #090d14;
}
.help-video-frame iframe,
.help-video-frame video { width: 100%; height: 100%; border: 0; object-fit: cover; }
.help-video-frame > a { display: grid; width: 100%; height: 100%; place-items: center; color: #fff; text-decoration: none; }
.help-video-card > div:last-child { display: grid; gap: 8px; padding: 15px; }
.help-video-card h3 { margin: 0; font-size: 14px; }
.help-video-card p { min-height: 38px; margin: 0; color: var(--ui-muted); font-size: 11.5px; line-height: 1.55; }
.useful-links-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.useful-link-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 112px;
  padding: 16px;
  border: 1px solid var(--ui-border);
  border-radius: 14px;
  background: var(--ui-surface);
  color: var(--ui-text);
  text-decoration: none;
  box-shadow: var(--ui-shadow-xs);
}
.useful-link-card:hover { border-color: var(--ui-primary); background: var(--ui-primary-soft); box-shadow: var(--ui-shadow-sm); }
.useful-link-card > span { color: var(--ui-primary); font-size: 18px; }
.useful-link-card h3 { margin: 0 0 5px; font-size: 13.5px; }
.useful-link-card p { margin: 0; color: var(--ui-muted); font-size: 11px; line-height: 1.55; }

.admin-help-layout {
  display: grid;
  grid-template-columns: minmax(300px, .7fr) minmax(380px, 1.3fr);
  gap: 18px;
  margin-top: 18px;
}
.admin-help-layout + .admin-help-layout { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--ui-border); }
.admin-help-editor {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--ui-border);
  border-radius: 14px;
  background: var(--ui-surface-2);
}
.admin-help-editor h3 { margin: 2px 0 0; font-size: 16px; }
.admin-help-editor label:not(.checkbox-line) { display: grid; gap: 6px; color: var(--ui-text-soft); font-size: 11px; font-weight: 650; }
.admin-help-compact-fields { display: grid; grid-template-columns: 110px 1fr; align-items: end; gap: 12px; }
.admin-help-list { display: grid; gap: 10px; }
.admin-help-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--ui-border);
  border-radius: 12px;
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-xs);
}
.admin-help-item.is-inactive { opacity: .64; }
.admin-help-item-copy { min-width: 0; }
.admin-help-item-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.admin-help-item-heading strong { font-size: 12.5px; }
.admin-help-item p { margin: 7px 0; color: var(--ui-muted); font-size: 10.8px; line-height: 1.5; }
.admin-help-item a { display: block; overflow: hidden; color: var(--ui-primary); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.admin-help-item-actions { display: flex; flex-shrink: 0; gap: 6px; }

@media (max-width: 1180px) {
  .suggested-products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .help-video-grid, .useful-links-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  .admin-help-layout { grid-template-columns: 1fr; }
  .suggested-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .metric-row { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .suggested-products-grid, .help-video-grid, .useful-links-grid { grid-template-columns: 1fr; }
  .admin-help-compact-fields { grid-template-columns: 1fr; }
  .admin-help-item { flex-direction: column; }
  .admin-help-item-actions { width: 100%; }
  .admin-help-item-actions .btn { flex: 1; }
  .product-breadcrumb-path { align-items: flex-start; }
}


/* ==========================================================================
   v2.5.0 — Public pricing and subscription checkout administration
   ========================================================================== */
.pricing-page-body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 12% -10%, color-mix(in srgb, var(--primary) 12%, transparent), transparent 36%),
    radial-gradient(circle at 90% 4%, color-mix(in srgb, #8b5cf6 9%, transparent), transparent 34%),
    var(--bg);
  color: var(--text);
}
.pricing-nav nav a.active { color: var(--text); background: var(--surface-2); }
.pricing-main { overflow: hidden; }
.pricing-hero {
  position: relative;
  max-width: 1240px;
  margin: 0 auto;
  padding: 112px 32px 66px;
  text-align: center;
}
.pricing-hero-content { position: relative; z-index: 2; max-width: 930px; margin: 0 auto; }
.pricing-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  color: var(--primary);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.pricing-hero h1 {
  max-width: 900px;
  margin: 0 auto;
  font-size: clamp(42px, 6vw, 76px);
  line-height: .99;
  letter-spacing: -.055em;
  color: var(--text-strong);
}
.pricing-hero p {
  max-width: 760px;
  margin: 28px auto 0;
  font-size: clamp(17px, 2vw, 21px);
  line-height: 1.68;
  color: var(--text-muted);
}
.pricing-trust-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 26px; margin-top: 30px; color: var(--text-muted); font-size: 14px; font-weight: 650; }
.pricing-trust-row b { color: #10b981; }
.pricing-hero-glow { position: absolute; border-radius: 999px; filter: blur(1px); pointer-events: none; }
.pricing-hero-glow-one { width: 430px; height: 430px; left: -280px; top: 40px; background: color-mix(in srgb, var(--primary) 8%, transparent); }
.pricing-hero-glow-two { width: 360px; height: 360px; right: -220px; top: 10px; background: color-mix(in srgb, #8b5cf6 7%, transparent); }
.pricing-plans-section { max-width: 1340px; margin: 0 auto; padding: 40px 32px 94px; }
.pricing-section-heading { max-width: 720px; margin: 0 auto 42px; text-align: center; }
.pricing-section-heading.compact { margin-bottom: 28px; }
.pricing-section-heading h2, .pricing-value-copy h2, .pricing-proof-card h2, .pricing-final-cta h2 { margin: 0; color: var(--text-strong); font-size: clamp(30px, 4vw, 48px); line-height: 1.08; letter-spacing: -.035em; }
.pricing-section-heading p { margin: 16px auto 0; color: var(--text-muted); font-size: 17px; line-height: 1.65; }
.pricing-status { margin: 0 auto 18px; text-align: center; color: var(--text-muted); }
.pricing-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; align-items: stretch; }
.pricing-plan-card {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 30px 26px 26px;
  border: 1px solid var(--border);
  border-radius: 24px;
  background: color-mix(in srgb, var(--surface) 96%, transparent);
  box-shadow: 0 16px 40px rgba(15, 23, 42, .06);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.pricing-plan-card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--primary) 40%, var(--border)); box-shadow: 0 24px 58px rgba(15, 23, 42, .11); }
.pricing-plan-card.is-featured {
  z-index: 2;
  border: 2px solid var(--primary);
  background: linear-gradient(180deg, color-mix(in srgb, var(--primary) 7%, var(--surface)) 0%, var(--surface) 34%);
  box-shadow: 0 24px 70px color-mix(in srgb, var(--primary) 18%, transparent);
  transform: translateY(-12px);
}
.pricing-plan-card.is-featured:hover { transform: translateY(-17px); }
.pricing-featured-ribbon { position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); padding: 8px 16px; border-radius: 999px; background: var(--primary); color: white; font-size: 11px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; box-shadow: 0 10px 25px color-mix(in srgb, var(--primary) 36%, transparent); }
.pricing-plan-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; min-height: 74px; }
.pricing-plan-duration { display: block; color: var(--text-strong); font-size: 24px; font-weight: 850; letter-spacing: -.025em; }
.pricing-plan-top p { margin: 7px 0 0; color: var(--text-muted); font-size: 13px; line-height: 1.45; }
.pricing-discount-badge, .pricing-base-badge { flex: none; display: inline-flex; align-items: center; min-height: 28px; padding: 5px 9px; border-radius: 999px; font-size: 10px; font-weight: 850; letter-spacing: .06em; }
.pricing-discount-badge { color: #047857; background: #d1fae5; }
.pricing-base-badge { color: var(--text-muted); background: var(--surface-2); }
[data-theme="dark"] .pricing-discount-badge { color: #6ee7b7; background: rgba(16,185,129,.14); }
.pricing-plan-price { margin-top: 28px; }
.pricing-plan-price span { display: block; color: var(--text-strong); font-size: clamp(34px, 3.2vw, 48px); font-weight: 900; line-height: 1; letter-spacing: -.055em; white-space: nowrap; }
.pricing-plan-price small { display: block; margin-top: 9px; color: var(--text-muted); font-size: 12px; }
.pricing-monthly-equivalent { margin-top: 18px; padding: 12px 14px; border-radius: 12px; background: var(--surface-2); color: var(--text-muted); font-size: 13px; }
.pricing-monthly-equivalent strong { color: var(--text-strong); }
.pricing-saving { margin-top: 10px; color: #059669; font-size: 13px; font-weight: 750; }
.pricing-saving.neutral { color: var(--text-muted); }
.pricing-plan-features { display: grid; gap: 12px; margin: 24px 0 28px; padding: 22px 0 0; border-top: 1px solid var(--border); list-style: none; }
.pricing-plan-features li { position: relative; padding-left: 24px; color: var(--text); font-size: 13px; line-height: 1.45; }
.pricing-plan-features li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--primary); font-weight: 900; }
.pricing-subscribe-button { display: inline-flex; min-height: 48px; margin-top: auto; align-items: center; justify-content: center; gap: 10px; padding: 0 18px; border: 1px solid var(--primary); border-radius: 13px; background: var(--primary); color: #fff; text-decoration: none; font-size: 14px; font-weight: 800; box-shadow: 0 10px 24px color-mix(in srgb, var(--primary) 20%, transparent); cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, filter .18s ease; }
.pricing-subscribe-button:hover { transform: translateY(-2px); filter: brightness(1.03); box-shadow: 0 15px 30px color-mix(in srgb, var(--primary) 26%, transparent); }
.pricing-subscribe-button.is-disabled { border-color: var(--border); background: var(--surface-2); color: var(--text-muted); box-shadow: none; cursor: not-allowed; }
.pricing-checkout-note { margin: 24px auto 0; text-align: center; color: var(--text-muted); font-size: 12px; }
.pricing-value-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; max-width: 1240px; margin: 0 auto; padding: 96px 32px; border-top: 1px solid var(--border); }
.pricing-value-copy { align-self: start; position: sticky; top: 110px; }
.pricing-value-copy p { margin: 20px 0 0; color: var(--text-muted); font-size: 17px; line-height: 1.68; }
.pricing-value-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pricing-value-grid article { padding: 25px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface); }
.pricing-value-grid article > span { color: var(--primary); font-size: 11px; font-weight: 900; letter-spacing: .1em; }
.pricing-value-grid h3 { margin: 18px 0 8px; color: var(--text-strong); font-size: 18px; }
.pricing-value-grid p { margin: 0; color: var(--text-muted); font-size: 14px; line-height: 1.62; }
.pricing-proof-section { max-width: 1240px; margin: 0 auto; padding: 26px 32px 96px; }
.pricing-proof-card { display: grid; grid-template-columns: 1.1fr .9fr; gap: 46px; align-items: center; padding: 54px; border: 1px solid color-mix(in srgb, var(--primary) 24%, var(--border)); border-radius: 28px; background: linear-gradient(135deg, color-mix(in srgb, var(--primary) 8%, var(--surface)), var(--surface)); }
.pricing-proof-list { display: grid; gap: 12px; }
.pricing-proof-list span { padding: 15px 17px 15px 45px; border: 1px solid var(--border); border-radius: 13px; background: color-mix(in srgb, var(--surface) 88%, transparent); color: var(--text); font-size: 14px; font-weight: 650; position: relative; }
.pricing-proof-list span::before { content: "✓"; position: absolute; left: 17px; color: #10b981; font-weight: 900; }
.pricing-faq-section { max-width: 960px; margin: 0 auto; padding: 30px 32px 100px; }
.pricing-faq-grid { display: grid; gap: 12px; }
.pricing-faq-grid details { border: 1px solid var(--border); border-radius: 16px; background: var(--surface); overflow: hidden; }
.pricing-faq-grid summary { padding: 20px 22px; color: var(--text-strong); font-size: 15px; font-weight: 780; cursor: pointer; }
.pricing-faq-grid p { margin: 0; padding: 0 22px 21px; color: var(--text-muted); font-size: 14px; line-height: 1.65; }
.pricing-final-cta { max-width: 1100px; margin: 0 auto 100px; padding: 68px 32px; border-radius: 30px; background: var(--text-strong); color: var(--bg); text-align: center; }
.pricing-final-cta .pricing-kicker { color: color-mix(in srgb, var(--primary) 60%, #fff); }
.pricing-final-cta h2 { max-width: 820px; margin: 0 auto 28px; color: var(--bg); }
.subscription-admin-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.subscription-admin-card { display: grid; gap: 12px; padding: 18px; border: 1px solid var(--border); border-radius: 16px; background: var(--surface-2); }
.subscription-admin-card.is-featured { border-color: color-mix(in srgb, var(--primary) 55%, var(--border)); background: color-mix(in srgb, var(--primary) 5%, var(--surface)); }
.subscription-admin-card > span { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.subscription-admin-card strong { color: var(--text-strong); font-size: 16px; }
.subscription-admin-card small { color: var(--text-muted); font-weight: 650; }
.subscription-admin-actions { grid-column: 1 / -1; display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 4px; }
.subscription-admin-actions .status { margin: 0; }
@media (max-width: 1100px) {
  .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pricing-plan-card.is-featured { transform: none; }
  .pricing-plan-card.is-featured:hover { transform: translateY(-5px); }
}
@media (max-width: 820px) {
  .pricing-hero { padding-top: 80px; }
  .pricing-value-section, .pricing-proof-card { grid-template-columns: 1fr; }
  .pricing-value-copy { position: static; }
  .pricing-proof-card { padding: 36px 28px; }
  .subscription-admin-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .pricing-nav { padding-inline: 18px; }
  .pricing-hero, .pricing-plans-section, .pricing-value-section, .pricing-proof-section, .pricing-faq-section { padding-left: 18px; padding-right: 18px; }
  .pricing-grid, .pricing-value-grid { grid-template-columns: 1fr; }
  .pricing-plan-card { border-radius: 20px; }
  .pricing-plan-card.is-featured { margin-top: 10px; }
  .pricing-final-cta { margin: 0 18px 70px; border-radius: 22px; padding: 48px 22px; }
  .pricing-trust-row { align-items: center; flex-direction: column; gap: 9px; }
}

/* v2.5.0 — administração enterprise */
.admin-enterprise-shell{display:block;background:var(--bg);min-height:100vh}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:268px;display:flex;flex-direction:column;padding:22px 16px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(18px);z-index:50}.admin-sidebar-brand{display:flex;align-items:center;gap:12px;padding:8px 10px 22px;color:var(--text-strong);text-decoration:none}.admin-sidebar-brand>span:last-child{display:grid}.admin-sidebar-brand strong{font-size:16px}.admin-sidebar-brand small{margin-top:2px;color:var(--text-muted);font-size:11px}.admin-sidebar-nav{display:grid;gap:4px}.admin-sidebar-nav a{display:flex;align-items:center;min-height:42px;padding:0 12px;border-radius:10px;color:var(--text-muted);font-size:13px;font-weight:700;text-decoration:none}.admin-sidebar-nav a:hover,.admin-sidebar-nav a:focus{background:var(--surface-2);color:var(--text-strong)}.admin-sidebar-bottom{display:grid;gap:12px;margin-top:auto}.admin-workspace{margin-left:268px;min-width:0}.admin-workspace>.admin-only-topbar{display:none}.admin-workspace .admin-container{max-width:1280px;padding:30px 34px 70px}.admin-workspace .system-footer{margin-left:0}.code-editor{min-height:420px;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;font-size:12px;line-height:1.55;resize:vertical}.compact-input{max-width:280px}.email-sendgrid-field{display:none}.admin-help-list .webhook-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.webhook-row code{font-size:11px;color:var(--text-muted);word-break:break-all}@media(max-width:900px){.admin-sidebar{position:relative;width:auto;border-right:0;border-bottom:1px solid var(--border)}.admin-sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-workspace{margin-left:0}.admin-workspace .admin-container{padding:20px 16px 60px}}

/* v2.5.6 — estados administrativos consistentes */
.section-title-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.section-title-inline h2{margin:0}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 10px;border:1px solid var(--border);border-radius:999px;font-size:11px;font-weight:800;line-height:1;letter-spacing:.02em}.status-badge.success{color:var(--success-text,#137a4b);background:color-mix(in srgb,var(--success,#18a66a) 12%,var(--surface));border-color:color-mix(in srgb,var(--success,#18a66a) 34%,var(--border))}.status-badge.warning{color:var(--warning-text,#946200);background:color-mix(in srgb,var(--warning,#d99a00) 12%,var(--surface));border-color:color-mix(in srgb,var(--warning,#d99a00) 34%,var(--border))}

/* AI Studio 2.5.6 — diagnóstico de e-mail */
.email-actions-row{align-items:center;flex-wrap:wrap}.email-diagnostic-card{margin-top:18px;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}.email-diagnostic-card h3{margin:0;font-size:15px}.email-diagnostic-result{display:grid;gap:10px;margin-top:14px}.email-diagnostic-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.email-diagnostic-summary strong{display:block;margin-bottom:4px}.email-diagnostic-stage{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.email-diagnostic-stage-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;font-size:12px;font-weight:900}.email-diagnostic-stage.success .email-diagnostic-stage-icon{background:color-mix(in srgb,var(--success,#18a66a) 16%,var(--surface));color:var(--success-text,#137a4b)}.email-diagnostic-stage.failed .email-diagnostic-stage-icon{background:color-mix(in srgb,var(--danger,#df3f52) 14%,var(--surface));color:var(--danger,#c92b42)}.email-diagnostic-stage h4{margin:1px 0 4px;font-size:13px}.email-diagnostic-stage p{margin:2px 0;font-size:12px;color:var(--text-muted);word-break:break-word}.email-diagnostic-stage code{font-size:11px;white-space:pre-wrap;word-break:break-word}.email-diagnostic-duration{font-size:11px;color:var(--text-muted);white-space:nowrap}.server-command-help{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.server-command-help summary{cursor:pointer;font-weight:700;font-size:12px;color:var(--text-muted)}.server-command-help code{display:block;margin-top:9px;padding:10px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--border);font-size:11px;overflow:auto}.status-badge.danger{color:var(--danger,#c92b42);background:color-mix(in srgb,var(--danger,#df3f52) 12%,var(--surface));border-color:color-mix(in srgb,var(--danger,#df3f52) 34%,var(--border))}@media(max-width:760px){.email-diagnostic-stage{grid-template-columns:28px minmax(0,1fr)}.email-diagnostic-duration{grid-column:2}.email-diagnostic-summary{display:grid}}
.email-diagnostic-stage.warning .email-diagnostic-stage-icon{background:color-mix(in srgb,var(--warning,#d99a00) 15%,var(--surface));color:var(--warning-text,#946200)}.email-diagnostic-limitations{padding:12px 14px;border:1px dashed var(--border);border-radius:13px;background:var(--surface)}.email-diagnostic-limitations p{margin:4px 0;font-size:12px;color:var(--text-muted)}

/* AI Studio 2.5.6 — primeiro acesso compacto e centralizado */
.password-setup-page {
  min-height: 100vh;
  margin: 0;
  display: grid;
  grid-template-rows: 1fr auto;
  color: var(--text-primary, #172033);
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--accent, #5b6ff9) 14%, transparent), transparent 30rem),
    radial-gradient(circle at 82% 88%, color-mix(in srgb, #14b8a6 10%, transparent), transparent 28rem),
    var(--page-bg, #f5f7fb);
}
.password-setup-shell {
  width: 100%;
  min-height: calc(100vh - 58px);
  display: grid;
  place-items: center;
  padding: 32px 20px;
}
.password-setup-card {
  width: min(100%, 520px);
  padding: clamp(24px, 4vw, 36px);
  border: 1px solid var(--border-subtle, #dde4ee);
  border-radius: 24px;
  background: color-mix(in srgb, var(--surface, #fff) 96%, transparent);
  box-shadow: 0 28px 70px rgba(27, 38, 67, .13), 0 3px 12px rgba(27, 38, 67, .06);
  backdrop-filter: blur(18px);
}
.password-setup-header {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 16px;
  margin-bottom: 22px;
}
.password-brand-mark { width: 52px; height: 52px; border-radius: 16px; font-size: 1rem; }
.password-setup-header h1 { margin: 3px 0 5px; font-size: clamp(1.55rem, 3vw, 2rem); letter-spacing: -.035em; }
.password-setup-header p { margin: 0; color: var(--text-muted, #697386); line-height: 1.5; }
.password-security-note {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: start;
  margin: 0 0 22px;
  padding: 13px 15px;
  border: 1px solid color-mix(in srgb, var(--accent, #5b6ff9) 22%, var(--border-subtle, #dde4ee));
  border-radius: 14px;
  background: color-mix(in srgb, var(--accent, #5b6ff9) 7%, var(--surface, #fff));
}
.password-security-note p { margin: 0; color: var(--text-secondary, #475569); font-size: .9rem; line-height: 1.5; }
.password-setup-form { display: grid; gap: 16px; }
.field-stack { display: grid; gap: 7px; font-weight: 650; font-size: .9rem; }
.password-field-wrap { position: relative; }
.password-field-wrap .text-input { width: 100%; min-height: 48px; padding-right: 82px; }
.password-visibility-btn {
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  min-height: 32px;
  padding: 0 9px;
  border: 0;
  border-radius: 9px;
  color: var(--accent, #4f63e8);
  background: transparent;
  font: inherit;
  font-size: .78rem;
  font-weight: 750;
  cursor: pointer;
}
.password-visibility-btn:hover { background: color-mix(in srgb, var(--accent, #5b6ff9) 10%, transparent); }
.password-requirements {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  padding: 14px;
  border: 1px solid var(--border-subtle, #dde4ee);
  border-radius: 14px;
  background: var(--surface-soft, #f8fafc);
}
.password-requirements span { display: flex; align-items: center; gap: 7px; color: var(--text-muted, #697386); font-size: .79rem; }
.password-requirements span::before { content: '○'; color: var(--text-faint, #94a3b8); font-weight: 800; }
.password-requirements span.is-valid { color: var(--success-text, #087f5b); }
.password-requirements span.is-valid::before { content: '✓'; color: var(--success, #10b981); }
.password-submit-btn { width: 100%; min-height: 48px; margin-top: 2px; }
.password-status { min-height: 22px; margin: 0; text-align: center; }
.password-status.success { color: var(--success-text, #087f5b); }
.password-status.error { color: var(--danger, #dc2626); }
@media (max-width: 560px) {
  .password-setup-shell { padding: 18px 12px; }
  .password-setup-card { padding: 22px 18px; border-radius: 20px; }
  .password-requirements { grid-template-columns: 1fr; }
}

/* AI Studio 2.5.6 — modo superuser somente leitura */
.support-read-only [aria-disabled="true"],
.support-read-only :disabled {
  cursor: not-allowed !important;
}
.support-read-only form :disabled,
.support-read-only button:disabled {
  opacity: .58;
}

/* AI Studio 2.5.6 — editor modular de prompts */
.prompt-defaults-panel { overflow: hidden; }
.prompt-target-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}
.prompt-target-card,
.prompt-duration-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 92px;
  padding: 18px;
  border: 1px solid var(--border-subtle, #dfe5ee);
  border-radius: 16px;
  background: var(--surface-soft, #f8fafc);
}
.prompt-target-card > span,
.prompt-duration-card > span { display: grid; gap: 5px; }
.prompt-target-card small,
.prompt-duration-card small { color: var(--text-muted, #697386); line-height: 1.45; }
.prompt-target-card input { width: 22px; height: 22px; accent-color: var(--accent, #5865f2); flex: 0 0 auto; }
.prompt-duration-card > div { display: flex; align-items: center; gap: 8px; }
.prompt-duration-card input { width: 92px; text-align: center; }
.prompt-placeholders-help {
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px dashed var(--border-strong, #cbd5e1);
  border-radius: 14px;
  background: color-mix(in srgb, var(--surface-soft, #f8fafc) 84%, transparent);
}
.prompt-placeholders-help summary { cursor: pointer; font-weight: 750; margin-bottom: 10px; }
.prompt-placeholders-help code {
  display: inline-flex;
  margin: 4px 5px 0 0;
  padding: 5px 8px;
  border-radius: 8px;
  color: var(--accent-strong, #3949c6);
  background: color-mix(in srgb, var(--accent, #5865f2) 9%, var(--surface, #fff));
  font-size: .75rem;
}
.prompt-editor-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.prompt-editor-grid label { display: grid; gap: 8px; font-weight: 700; }
.prompt-editor-wide { grid-column: 1 / -1; }
.prompt-code-editor {
  min-height: 220px;
  resize: vertical;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: .82rem;
  line-height: 1.55;
  tab-size: 2;
}
@media (max-width: 900px) {
  .prompt-target-grid,
  .prompt-editor-grid { grid-template-columns: 1fr; }
  .prompt-editor-wide { grid-column: auto; }
}
@media (max-width: 560px) {
  .prompt-target-card,
  .prompt-duration-card { align-items: flex-start; flex-direction: column; min-height: auto; }
}
.support-read-only input:not([type="search"]),
.support-read-only textarea,
.support-read-only select {
  pointer-events: none;
  opacity: .62;
}
.prompt-master-editor { min-height: 520px; }

/* V2.5.6 — seleção de destinos de vídeo e prompts independentes */
.video-target-selector{margin-top:16px;padding:16px;border:1px solid var(--border,#dce3ec);border-radius:16px;background:var(--surface-soft,#f7f9fc);display:grid;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(180px,.7fr));gap:12px;align-items:stretch}
.video-target-heading{display:flex;flex-direction:column;justify-content:center;gap:4px}.video-target-heading small,.video-target-option small{color:var(--text-muted,#667085);line-height:1.35}
.video-target-option{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border,#dce3ec);border-radius:13px;background:var(--surface,#fff);cursor:pointer;transition:.18s ease}.video-target-option:hover{border-color:var(--primary,#2563eb);transform:translateY(-1px)}.video-target-option:has(input:checked){border-color:var(--primary,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#2563eb) 15%,transparent)}.video-target-option input{width:18px;height:18px;accent-color:var(--primary,#2563eb)}.video-target-option span{display:flex;flex-direction:column;gap:3px}.video-target-status{grid-column:1/-1;font-size:13px;color:var(--text-muted,#667085);padding-top:2px}.prompt-char-count{font-size:12px;color:var(--text-muted,#667085);align-self:center}
@media(max-width:900px){.video-target-selector{grid-template-columns:1fr}.video-target-status{grid-column:auto}}
.batch-video-targets{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--border,#dce3ec);border-radius:12px;background:var(--surface-soft,#f7f9fc)}.batch-video-targets>span{font-weight:700;width:100%}.batch-video-targets label{display:inline-flex;align-items:center;gap:6px}.batch-video-targets small{color:var(--text-muted,#667085)}
