/**
 * Tema escuro global — painel, auth, legal, editor, app legado
 * Carregar após app.css / panel.css / auth.css / site-editor.css
 */

:root {
  --td-bg: #030303;
  --td-raised: #0a0a0c;
  --td-card: #111114;
  --td-card-hover: #16161b;
  --td-border: rgba(255, 255, 255, 0.08);
  --td-border-strong: rgba(255, 255, 255, 0.14);
  --td-text: #fafafa;
  --td-text-soft: #d4d4d8;
  --td-muted: #71717a;
  --td-accent: #8b5cf6;
  --td-accent-2: #06b6d4;
  --td-gradient: linear-gradient(135deg, #c026d3 0%, #8b5cf6 45%, #06b6d4 100%);
  --td-focus: rgba(139, 92, 246, 0.35);
}

/* —— Painel: shell preto (#030303) —— */
.panel-app .panel-side,
.panel-app .panel-side-head,
.panel-app .panel-main,
.panel-app .panel-bar {
  background: var(--td-bg);
}

.panel-app .panel-side-foot {
  background: var(--td-raised);
  border-top-color: var(--td-border);
}

.panel-app .panel-side {
  border-right-color: var(--td-border);
}

.panel-app .sites-empty {
  background: var(--td-card);
  border-color: var(--td-border);
}

.panel-app .sites-empty__glyph {
  background: rgba(139, 92, 246, 0.14);
  border-color: rgba(139, 92, 246, 0.28);
  color: #c4b5fd;
}

.panel-app .sites-hero,
.panel-app .sites-strip,
.panel-app .sites-welcome__shell,
.panel-app .sites-welcome__panel {
  background: var(--td-card);
  border-color: var(--td-border);
}

.panel-app .sites-welcome__visual,
.panel-app .sites-welcome__go {
  background: var(--td-raised);
  border-color: var(--td-border);
}

.panel-app .sites-strip__btn {
  background: var(--td-raised);
  border-color: var(--td-border);
  color: var(--td-text-soft);
}

.panel-app .panel-link-ico {
  background: var(--td-raised);
  border-color: var(--td-border);
}

.panel-app .panel-side-action {
  background: var(--td-raised);
  border-color: var(--td-border);
  color: var(--td-muted);
}

.panel-app .panel-side-action:hover {
  background: var(--td-card);
  color: var(--td-text);
  border-color: var(--td-border-strong);
}

/* —— Painel: superfícies e formulários —— */
.panel-app .panel-menu-btn,
.panel-app .panel-plan,
.panel-app .panel-legal-foot,
.panel-app .panel-filters,
.panel-app .page-title-ico,
.panel-app .panel-step,
.panel-app .dash-panel,
.panel-app .kpi-card,
.panel-app .wizard-card,
.panel-app .wizard-step-panel,
.panel-app .sites-card,
.panel-app .model-card,
.panel-app .renew-card,
.panel-app .pdv-shell,
.panel-app .order-card,
.panel-app .agenda-day,
.panel-app .config-block,
.panel-app .admin-card {
  background: var(--td-card);
  border-color: var(--td-border);
  color: var(--td-text-soft);
}

.panel-app .panel-menu-btn {
  background: var(--td-card);
  border-color: var(--td-border);
  color: var(--td-text);
}

.panel-app .panel-menu-btn:hover {
  background: var(--td-card-hover);
  border-color: var(--td-border-strong);
}

.panel-app .panel-menu-btn .panel-ico {
  color: var(--td-text);
}

.panel-app .panel-plan {
  background: var(--td-raised);
}

.panel-app .panel-legal-foot {
  background: var(--td-raised);
}

.panel-app .panel-legal-foot a {
  color: var(--td-muted);
}

.panel-app .panel-legal-foot a:hover {
  color: var(--td-accent);
}

.panel-app .page-title-ico {
  background: linear-gradient(145deg, rgba(139, 92, 246, 0.2), var(--td-card));
  border-color: rgba(139, 92, 246, 0.25);
}

.panel-app .panel-lead strong {
  color: var(--td-text-soft);
}

.panel-app .panel-filters {
  background: var(--td-raised);
}

.panel-app input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="file"]),
.panel-app select,
.panel-app textarea,
.panel-app .admin-inp,
.panel-app .admin-form input,
.panel-app .admin-form select,
.panel-app .admin-form textarea,
.panel-app .panel-filters select,
.panel-app .panel-filters input,
.panel-app .wizard-inp,
.panel-app .lead-search-input,
.panel-app .pdv-inp {
  background: var(--td-raised) !important;
  border-color: var(--td-border-strong) !important;
  color: var(--td-text) !important;
}

.panel-app input::placeholder,
.panel-app textarea::placeholder {
  color: #52525b;
}

.panel-app input:focus,
.panel-app select:focus,
.panel-app textarea:focus {
  border-color: var(--td-accent) !important;
  box-shadow: 0 0 0 3px var(--td-focus) !important;
  outline: none;
}

.panel-app .panel-table th {
  background: var(--td-raised);
  color: var(--td-muted);
  border-color: var(--td-border);
}

.panel-app .panel-table td {
  border-color: var(--td-border);
  color: var(--td-text-soft);
}

.panel-app .panel-table tr:hover td {
  background: rgba(255, 255, 255, 0.03);
}

.panel-app .panel-card {
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

.panel-app .btn,
.panel-app .panel-filters .btn {
  background: var(--td-gradient);
  border: 0;
  color: #fff;
  box-shadow: 0 8px 24px rgba(139, 92, 246, 0.3);
}

.panel-app .btn:hover,
.panel-app .panel-filters .btn:hover {
  filter: brightness(1.06);
}

.panel-app .btn-ghost,
.panel-app .sites-create-ghost-link {
  background: transparent !important;
  border: 1px solid var(--td-border-strong) !important;
  color: var(--td-text-soft) !important;
  box-shadow: none !important;
}

.panel-app .btn-ghost:hover,
.panel-app .sites-create-ghost-link:hover {
  background: rgba(255, 255, 255, 0.05) !important;
  color: var(--td-text) !important;
}

.panel-app .admin-form label,
.panel-app .wizard-label,
.panel-app .config-label {
  color: var(--td-muted);
}

.panel-app .user-drop {
  background: var(--td-card);
  border: 1px solid var(--td-border-strong);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
  color: var(--td-text);
}

.panel-app .user-drop a:hover {
  background: rgba(255, 255, 255, 0.06);
}

.panel-app .panel-overlay {
  background: rgba(0, 0, 0, 0.65);
}

/* KPI / dashboard */
.panel-app .dash-hero {
  background:
    radial-gradient(600px 280px at 100% 0%, rgba(139, 92, 246, 0.15), transparent 55%),
    var(--td-card);
  border: 1px solid var(--td-border);
}

.panel-app .dash-hello {
  color: var(--td-text);
}

.panel-app .kpi-card {
  border: 1px solid var(--td-border);
}

.panel-app .kpi-val {
  color: var(--td-text);
}

/* Leads / modais */
.panel-app .lead-how-dialog,
.panel-app .lead-search-dialog,
.panel-app .lead-search-dialog__panel,
.panel-app dialog.lead-search-dialog {
  background: var(--td-card);
  border: 1px solid var(--td-border-strong);
  color: var(--td-text-soft);
}

.panel-app .lead-how-dialog__head h2,
.panel-app .lead-search-dialog__head h2,
.panel-app .lead-card__title,
.panel-app .lead-search-stat strong {
  color: var(--td-text);
}

.panel-app .lead-search-dialog .lead-search-close,
.panel-app .lead-card,
.panel-app .lead-search-result,
.panel-app .lead-search-stat {
  background: var(--td-raised);
  border-color: var(--td-border);
  color: var(--td-text-soft);
}

.panel-app .lead-search-dialog .lead-search-close:hover {
  background: rgba(255, 255, 255, 0.06);
  color: var(--td-text);
}

.panel-app .lead-search-results::-webkit-scrollbar-track {
  background: var(--td-raised);
}

/* Wizard criar site */
.panel-app .wizard-layout-opt,
.panel-app .wizard-segment-chip,
.panel-app .wizard-preview-shell {
  background: var(--td-raised);
  border-color: var(--td-border);
  color: var(--td-text-soft);
}

.panel-app .wizard-layout-opt.is-selected,
.panel-app .wizard-segment-chip.is-on {
  border-color: rgba(139, 92, 246, 0.5);
  background: rgba(139, 92, 246, 0.12);
}

/* Tags / pills */
.panel-app .tag,
.panel-app .pill,
.panel-app .chip {
  background: rgba(255, 255, 255, 0.06);
  color: var(--td-text-soft);
  border: 1px solid var(--td-border);
}

/* —— Auth —— */
.auth-body {
  background: var(--td-bg);
  color: var(--td-text);
}

.auth-main {
  background: var(--td-bg);
}

.auth-card {
  background: var(--td-card);
  border: 1px solid var(--td-border-strong);
  box-shadow: 0 32px 64px rgba(0, 0, 0, 0.45);
}

.auth-card h1 {
  color: var(--td-text);
}

.auth-card .sub,
.auth-terms {
  color: var(--td-muted);
}

.auth-field label {
  color: var(--td-muted);
}

.auth-field input {
  background: var(--td-raised);
  border: 1px solid var(--td-border-strong);
  color: var(--td-text);
}

.auth-field input:focus {
  border-color: var(--td-accent);
  box-shadow: 0 0 0 4px var(--td-focus);
}

.auth-terms a {
  color: #a78bfa;
}

.auth-foot {
  border-top-color: var(--td-border);
}

.auth-foot a {
  color: #a78bfa;
}

.auth-actions .btn {
  background: var(--td-gradient);
  box-shadow: 0 12px 32px rgba(139, 92, 246, 0.35);
}

.auth-showcase h2 em {
  background: var(--td-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.auth-price-pill strong {
  color: #e9d5ff;
}

/* —— Legal —— */
.legal-page {
  background: var(--td-bg);
  color: var(--td-text-soft);
  font-family: "Plus Jakarta Sans", Inter, system-ui, sans-serif;
}

.legal-header {
  background: rgba(10, 10, 12, 0.85);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--td-border);
}

.legal-brand {
  color: var(--td-text);
}

.legal-nav a {
  color: var(--td-muted);
}

.legal-nav a:hover {
  color: #a78bfa;
}

.legal-doc h1,
.legal-doc h2 {
  color: var(--td-text);
}

.legal-doc p,
.legal-doc li {
  color: var(--td-text-soft);
}

.legal-doc a {
  color: #a78bfa;
}

.legal-updated {
  color: var(--td-muted);
}

.legal-company-box,
.legal-contact-card {
  background: var(--td-card);
  border-color: var(--td-border);
}

.legal-footer {
  background: var(--td-raised);
  border-top: 1px solid var(--td-border);
}

/* —— Editor de site —— */
.site-editor-app {
  --se-ink: #fafafa;
  --se-muted: #71717a;
  --se-line: rgba(255, 255, 255, 0.08);
  --se-blue: #8b5cf6;
  --se-blue-dark: #7c3aed;
  color: var(--se-ink);
  background:
    radial-gradient(ellipse 80% 50% at 20% -10%, rgba(139, 92, 246, 0.12), transparent 55%),
    radial-gradient(ellipse 60% 40% at 90% 20%, rgba(6, 182, 212, 0.08), transparent 50%),
    linear-gradient(165deg, #030303 0%, #0a0a0c 100%);
}

.site-editor-app .se-form-col,
.site-editor-app .se-block,
.site-editor-app .se-catalog-item,
.site-editor-app .se-preview-wrap,
.site-editor-app .se-device-bar,
.site-editor-app .wizard-ai-card {
  background: var(--td-card);
  border-color: var(--td-border);
}

.site-editor-app .se-field input,
.site-editor-app .se-field select,
.site-editor-app .se-field textarea,
.site-editor-app .color-row input[type="text"] {
  background: var(--td-raised);
  border-color: var(--td-border-strong);
  color: var(--td-text);
}

.site-editor-app .se-field label,
.site-editor-app .se-block .hint {
  color: var(--td-muted);
}

.site-editor-app .se-btn-primary {
  background: var(--td-gradient);
}

.site-editor-app .se-nav a.on {
  background: var(--td-gradient);
  box-shadow: 0 4px 14px rgba(139, 92, 246, 0.35);
}

.site-editor-app .se-renew,
.site-editor-app a.se-renew {
  background: var(--td-gradient);
  box-shadow: 0 4px 12px rgba(139, 92, 246, 0.35);
}

.site-editor-app .se-form-col label {
  color: var(--td-muted);
}

.site-editor-app .se-form-col input,
.site-editor-app .se-form-col select,
.site-editor-app .se-form-col textarea {
  background: var(--td-raised) !important;
  border-color: var(--td-border-strong) !important;
  color: var(--td-text) !important;
}

.site-editor-app .se-form-col input:focus,
.site-editor-app .se-form-col select:focus,
.site-editor-app .se-form-col textarea:focus {
  background: var(--td-raised) !important;
  border-color: var(--td-accent) !important;
  box-shadow: 0 0 0 4px var(--td-focus) !important;
}

.site-editor-app .se-form-col .btn-blue {
  background: var(--td-gradient);
  box-shadow: 0 4px 12px rgba(139, 92, 246, 0.3);
}

.site-editor-app .se-form-col .btn-ghost {
  background: transparent !important;
  border: 1px solid var(--td-border-strong) !important;
  color: var(--td-text-soft) !important;
}

.site-editor-app .se-form-col .media-row,
.site-editor-app .se-form-col .item-row {
  background: var(--td-raised);
  border-color: var(--td-border);
}

.site-editor-app .se-form-col .item-row__meta input,
.site-editor-app .se-form-col .item-row__meta select {
  background: var(--td-card) !important;
  border-color: var(--td-border) !important;
  color: var(--td-text) !important;
}

.site-editor-app .se-block,
.site-editor-app .se-sidebar,
.site-editor-app .se-preview-panel,
.site-editor-app .se-publish-bar {
  background: var(--td-card);
  border-color: var(--td-border);
}

.site-editor-app .se-brand .brand-logo-img--upload {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--td-border);
}

.site-editor-app .flash {
  background: rgba(34, 197, 94, 0.12);
  color: #86efac;
  border: 1px solid rgba(34, 197, 94, 0.25);
}

.site-editor-app .flash.err {
  background: rgba(239, 68, 68, 0.12);
  color: #fca5a5;
  border-color: rgba(239, 68, 68, 0.25);
}

/* Badges painel */
.panel-app .badge.ok {
  background: rgba(34, 197, 94, 0.15);
  color: #86efac;
}

.panel-app .badge.off {
  background: rgba(239, 68, 68, 0.15);
  color: #fca5a5;
}

.panel-app .btn-renew-sm {
  background: var(--td-gradient);
  color: #fff;
  border: 0;
}

.panel-app .panel-brand {
  color: var(--td-text);
}

/* —— App legado (comprovante etc.) —— */
.app-body {
  background: var(--td-bg);
  color: var(--td-text);
}

.app-body .page-card,
.app-body .user-drop {
  background: var(--td-card);
  border: 1px solid var(--td-border);
  color: var(--td-text);
}

.app-body .search-bar select,
.app-body .search-bar input,
.app-body .field input,
.app-body .field select,
.app-body .field textarea {
  background: var(--td-raised);
  border-color: var(--td-border-strong);
  color: var(--td-text);
}

.app-body .grid-table th {
  color: var(--td-muted);
}

.app-body .grid-table td {
  border-color: var(--td-border);
}

.app-body .tag {
  background: rgba(255, 255, 255, 0.06);
  color: var(--td-text-soft);
}
