#prime-global-loading{position:fixed;inset:0;z-index:99999;background:rgba(8,12,24,.62);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;font:600 14px Inter,Arial,sans-serif}#prime-global-loading[hidden]{display:none}#prime-global-loading span{width:22px;height:22px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:prime-spin .8s linear infinite}@keyframes prime-spin{to{transform:rotate(360deg)}}#prime-offline{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:99998;background:#b45309;color:#fff;padding:10px 16px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.25);font:600 13px Inter,Arial,sans-serif}#prime-offline[hidden]{display:none}.prime-toast{position:fixed;right:20px;top:20px;z-index:99999;max-width:380px;padding:12px 16px;border-radius:10px;background:#1f2937;color:#fff;box-shadow:0 10px 35px rgba(0,0,0,.3);opacity:0;transform:translateY(-10px);transition:.2s;font:600 13px Inter,Arial,sans-serif}.prime-toast.show{opacity:1;transform:none}.prime-toast-error{background:#991b1b}.prime-toast-success{background:#166534}.prime-empty-state{padding:32px;text-align:center;opacity:.75}

/* ===== Prime Motors UI v3: identidade visual + tema claro/escuro ===== */
:root{
  color-scheme: light;
  --pm-red:#d52f36;
  --pm-red-hover:#b9232a;
  --pm-red-soft:rgba(213,47,54,.12);
  --pm-bg:#f4f6f9;
  --pm-surface:#ffffff;
  --pm-surface-2:#f8fafc;
  --pm-sidebar:#0b0b0d;
  --pm-sidebar-hover:#1a1a1f;
  --pm-border:#e2e8f0;
  --pm-text:#111827;
  --pm-muted:#64748b;
  --pm-input:#ffffff;
  --pm-shadow:0 14px 36px rgba(15,23,42,.09);
}
html[data-theme="dark"]{
  color-scheme: dark;
  --pm-bg:#0b0c10;
  --pm-surface:#14161c;
  --pm-surface-2:#1a1d25;
  --pm-sidebar:#050506;
  --pm-sidebar-hover:#1b1c21;
  --pm-border:#2a2d36;
  --pm-text:#f8fafc;
  --pm-muted:#9ca3af;
  --pm-input:#101218;
  --pm-shadow:0 16px 42px rgba(0,0,0,.32);
}
html,body{background:var(--pm-bg)!important;color:var(--pm-text)!important;transition:background-color .2s ease,color .2s ease}
body,.main,.main-content,.content,.page-content,.dashboard-container,.container{color:var(--pm-text)}
.card,.panel,.widget,.stat-card,.metric-card,.form-card,.table-container,.modal-content,.content-card,.section-card,.login-container{
  background:var(--pm-surface)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important;box-shadow:var(--pm-shadow)!important
}
h1,h2,h3,h4,h5,h6,.title,.page-title,.card-title,.section-title{color:var(--pm-text)!important}
p,.subtitle,.description,.helper-text,.text-muted,small{color:var(--pm-muted)!important}
input,select,textarea,.form-input,.search-input{
  background:var(--pm-input)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important
}
input::placeholder,textarea::placeholder{color:var(--pm-muted)!important;opacity:.8}
input:focus,select:focus,textarea:focus,.form-input:focus{border-color:var(--pm-red)!important;box-shadow:0 0 0 3px var(--pm-red-soft)!important}
button,.btn,.btn-primary,.primary-button,[class*="btn-primary"]{border-radius:9px}
.btn-primary,.btn-login,.primary-button,button.primary,[class*="btn-primary"]{background:var(--pm-red)!important;color:#fff!important;border-color:var(--pm-red)!important}
.btn-primary:hover,.btn-login:hover,.primary-button:hover,button.primary:hover{background:var(--pm-red-hover)!important}
a{accent-color:var(--pm-red)}
table{color:var(--pm-text)!important}
thead,th{background:var(--pm-surface-2)!important;color:var(--pm-muted)!important;border-color:var(--pm-border)!important}
td,tr{border-color:var(--pm-border)!important}
tr:hover td{background:var(--pm-red-soft)}
.badge,.status-badge{border-color:var(--pm-border)}

/* Sidebars */
.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar{background:var(--pm-sidebar)!important;border-color:#242428!important}
.sidebar .brand,.side .brand,.prime-standard-sidebar .brand,.seller-standard-sidebar .brand{padding-top:0!important}
.pm-sidebar-logo{display:block;width:100%;max-width:225px;height:auto;margin:0 auto;object-fit:contain}
.sidebar a,.side a{transition:background .18s ease,color .18s ease}
.sidebar .menu-item.active a,.sidebar li.active a,.side li.active a,.prime-standard-sidebar .menu-item.active a{background:var(--pm-red)!important;color:#fff!important}
.sidebar a:hover,.side a:hover,.prime-standard-sidebar .menu-item a:hover{background:var(--pm-sidebar-hover)!important;color:#fff!important}
.prime-standard-sidebar .prime-avatar,.seller-standard-sidebar .seller-avatar{background:var(--pm-red)!important}

/* Theme toggle */
#prime-theme-toggle{position:fixed;top:18px;right:20px;z-index:99997;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--pm-border);border-radius:12px;background:var(--pm-surface);color:var(--pm-text);box-shadow:var(--pm-shadow);cursor:pointer;transition:transform .18s ease,background .18s ease}
#prime-theme-toggle:hover{transform:translateY(-1px);background:var(--pm-surface-2)}
#prime-theme-toggle i{font-size:17px}
#prime-theme-toggle .pm-theme-label{position:absolute;right:50px;white-space:nowrap;padding:7px 9px;border-radius:8px;background:var(--pm-sidebar);color:#fff;font-size:11px;font-weight:700;opacity:0;pointer-events:none;transform:translateX(4px);transition:.18s}
#prime-theme-toggle:hover .pm-theme-label{opacity:1;transform:none}

/* Login */
body.pm-login-page{background:radial-gradient(circle at 50% 30%,var(--pm-red-soft),transparent 38%),var(--pm-bg)!important}
.pm-login-page .login-container{max-width:430px!important;border-top:4px solid var(--pm-red)!important}
.pm-login-logo{display:block;width:min(300px,86%);height:auto;margin:0 auto 10px}
.pm-login-page .forgot-password{color:var(--pm-red)!important}
.pm-login-page .remember-me input{accent-color:var(--pm-red)!important}

@media(max-width:780px){#prime-theme-toggle{top:12px;right:12px}.pm-sidebar-logo{max-width:190px}}

/* Correções de login V3.2 */
.pm-login-page { min-height: 100dvh; height: auto !important; overflow: auto !important; padding: 32px 16px; }
.pm-login-page .login-container { width: min(100%, 460px); margin: auto; }
.pm-login-page .pm-login-logo { display:block; width:min(100%, 340px); height:auto; margin:0 auto 12px; object-fit:contain; }
.pm-login-page .input-wrapper { position:relative; }
.pm-login-page .input-wrapper .form-input { padding-right:48px; }
.pm-login-page .password-toggle { position:absolute; right:8px; top:50%; transform:translateY(-50%); width:36px; height:36px; border:0; border-radius:8px; background:transparent; color:var(--pm-muted, #64748b); cursor:pointer; display:grid; place-items:center; }
.pm-login-page .password-toggle:hover { background:rgba(127,127,127,.1); color:var(--pm-text, #111827); }
.login-message { margin:0 0 18px; padding:12px 14px; border-radius:10px; font-size:13px; line-height:1.45; border:1px solid transparent; }
.login-message.error { color:#991b1b; background:#fef2f2; border-color:#fecaca; }
.login-message.success { color:#166534; background:#f0fdf4; border-color:#bbf7d0; }
.login-message.info { color:#1e40af; background:#eff6ff; border-color:#bfdbfe; }
[data-theme="dark"] .login-message.error { color:#fecaca; background:rgba(127,29,29,.28); border-color:#7f1d1d; }
[data-theme="dark"] .login-message.success { color:#bbf7d0; background:rgba(20,83,45,.28); border-color:#166534; }
[data-theme="dark"] .login-message.info { color:#bfdbfe; background:rgba(30,58,138,.28); border-color:#1e40af; }
.pm-login-page .btn-login:disabled { opacity:.72; cursor:wait; }
@media (max-width:560px){
  .pm-login-page { padding:18px 12px; align-items:flex-start !important; }
  .pm-login-page .login-container { padding:26px 20px !important; border-radius:14px !important; }
  .pm-login-page .form-options { gap:14px; flex-wrap:wrap; }
  .pm-login-page #prime-theme-toggle .pm-theme-label { display:none; }
}


/* ===== Correção definitiva dos temas e consistência visual ===== */
html[data-theme="light"]{color-scheme:light!important}
html[data-theme="dark"]{color-scheme:dark!important}
html[data-theme="light"] body{background:#f3f5f8!important;color:#172033!important;background-image:none!important}
html[data-theme="dark"] body{background:#08090c!important;color:#f4f6fb!important;background-image:none!important}
html[data-theme="light"] :is(.main,.main-content,.content,.page-content,.dashboard-container){background:#f3f5f8!important;color:#172033!important}
html[data-theme="dark"] :is(.main,.main-content,.content,.page-content,.dashboard-container){background:#08090c!important;color:#f4f6fb!important}
html[data-theme="light"] :is(.card,.panel,.widget,.stat-card,.metric-card,.form-card,.table-container,.content-card,.section-card,.summary-box,.vehicle-card,.car-card,.chart,.modal,.modal-content){background:#fff!important;color:#172033!important;border-color:#d9e0e8!important}
html[data-theme="dark"] :is(.card,.panel,.widget,.stat-card,.metric-card,.form-card,.table-container,.content-card,.section-card,.summary-box,.vehicle-card,.car-card,.chart,.modal-content){background:#121419!important;color:#f4f6fb!important;border-color:#292d35!important}
html[data-theme="light"] :is(.header h1,.card strong,.card b,.car-title,.vehicle-title,.summary-info .value,.profile strong,.user-info .name){color:#101827!important}
html[data-theme="dark"] :is(.header h1,.card strong,.card b,.car-title,.vehicle-title,.summary-info .value,.profile strong,.user-info .name){color:#fff!important}
html[data-theme="light"] :is(.sub,.subtitle,.car-subtitle,.vehicle-meta,.profile,.user-info .role,.card span,.muted){color:#667085!important}
html[data-theme="dark"] :is(.sub,.subtitle,.car-subtitle,.vehicle-meta,.profile,.user-info .role,.card span,.muted){color:#a7b0bf!important}
html[data-theme="light"] :is(input,select,textarea,.search-input,.form-input){background:#fff!important;color:#172033!important;border-color:#cfd7e3!important}
html[data-theme="dark"] :is(input,select,textarea,.search-input,.form-input){background:#0d0f13!important;color:#f8fafc!important;border-color:#343944!important}
html[data-theme="light"] :is(.car-image,.car-image-placeholder,.vehicle-image-wrapper,.car-specs span){background:#eef2f6!important;color:#667085!important;border-color:#d9e0e8!important}
html[data-theme="dark"] :is(.car-image,.car-image-placeholder,.vehicle-image-wrapper,.car-specs span){background:#1a1d23!important;color:#a7b0bf!important;border-color:#292d35!important}
html[data-theme="light"] .sidebar,html[data-theme="light"] .side,html[data-theme="light"] .prime-standard-sidebar,html[data-theme="light"] .seller-standard-sidebar{background:#fff!important;border-color:#d9e0e8!important}
html[data-theme="light"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar) a{color:#526071!important}
html[data-theme="light"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar) :is(.brand,.prime-user-name,.seller-user-name){color:#172033!important}
html[data-theme="dark"] .sidebar,html[data-theme="dark"] .side,html[data-theme="dark"] .prime-standard-sidebar,html[data-theme="dark"] .seller-standard-sidebar{background:#090a0d!important;border-color:#292d35!important}
.pw-photo{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;text-decoration:none!important;min-height:180px}
.pw-photo img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.pm-sidebar-logo{max-height:82px!important;width:auto!important;max-width:230px!important}
.pm-login-logo{max-height:105px!important;width:auto!important;max-width:330px!important}

/* ===== Correção definitiva de contraste — Prime Motors Dark UI ===== */
html[data-theme="dark"]{
  --pm-bg:#070b14;
  --pm-surface:#111827;
  --pm-surface-2:#172033;
  --pm-sidebar:#030712;
  --pm-sidebar-hover:#182033;
  --pm-border:#2a3548;
  --pm-text:#f8fafc;
  --pm-muted:#b5c0d2;
  --pm-input:#0b1220;
  --pm-shadow:0 18px 45px rgba(0,0,0,.36);
}
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .main,
html[data-theme="dark"] .main-content,
html[data-theme="dark"] .content,
html[data-theme="dark"] .page-content,
html[data-theme="dark"] .dashboard-container,
html[data-theme="dark"] .container,
html[data-theme="dark"] .dashboard-content{background:var(--pm-bg)!important;color:var(--pm-text)!important}
html[data-theme="dark"] .card,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .widget,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .metric-card,
html[data-theme="dark"] .form-card,
html[data-theme="dark"] .table-container,
html[data-theme="dark"] .table-wrapper,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .content-card,
html[data-theme="dark"] .section-card,
html[data-theme="dark"] .recent-proposals,
html[data-theme="dark"] .movements-card,
html[data-theme="dark"] .dashboard-card,
html[data-theme="dark"] .client-card,
html[data-theme="dark"] .proposal-card,
html[data-theme="dark"] .user-row,
html[data-theme="dark"] .login-container{background:var(--pm-surface)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important}
html[data-theme="dark"] table,
html[data-theme="dark"] tbody,
html[data-theme="dark"] tr,
html[data-theme="dark"] td{background:var(--pm-surface)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important}
html[data-theme="dark"] thead,
html[data-theme="dark"] thead tr,
html[data-theme="dark"] th{background:var(--pm-surface-2)!important;color:#dbe5f4!important;border-color:var(--pm-border)!important}
html[data-theme="dark"] tbody tr:hover td{background:#1b263a!important}
html[data-theme="dark"] td a,
html[data-theme="dark"] .table-container a,
html[data-theme="dark"] .client-name,
html[data-theme="dark"] .vehicle-name{color:#dce8fb!important}
html[data-theme="dark"] p,
html[data-theme="dark"] small,
html[data-theme="dark"] .subtitle,
html[data-theme="dark"] .description,
html[data-theme="dark"] .text-muted,
html[data-theme="dark"] .helper-text,
html[data-theme="dark"] td span:not(.badge):not(.status-badge){color:var(--pm-muted)!important}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .form-input,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .filter-input,
html[data-theme="dark"] input[type="date"]{background:var(--pm-input)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important}
html[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8}
html[data-theme="dark"] .sidebar,
html[data-theme="dark"] .side,
html[data-theme="dark"] .prime-standard-sidebar,
html[data-theme="dark"] .seller-standard-sidebar{background:var(--pm-sidebar)!important;border-color:#202a3a!important}
html[data-theme="dark"] .sidebar a,
html[data-theme="dark"] .side a,
html[data-theme="dark"] .prime-standard-sidebar a,
html[data-theme="dark"] .seller-standard-sidebar a{color:#aebbd0!important}
html[data-theme="dark"] .sidebar .active a,
html[data-theme="dark"] .side .active a,
html[data-theme="dark"] .prime-standard-sidebar .active a,
html[data-theme="dark"] .seller-standard-sidebar .active a{color:#fff!important;background:var(--pm-red)!important}
html[data-theme="dark"] hr{border-color:var(--pm-border)!important}

/* Tema claro realmente distinto */
html[data-theme="light"] body,
html[data-theme="light"] main,
html[data-theme="light"] .main,
html[data-theme="light"] .main-content,
html[data-theme="light"] .content,
html[data-theme="light"] .page-content,
html[data-theme="light"] .dashboard-container{background:#f4f6f9!important;color:#111827!important}
html[data-theme="light"] .card,
html[data-theme="light"] .panel,
html[data-theme="light"] .widget,
html[data-theme="light"] .stat-card,
html[data-theme="light"] .metric-card,
html[data-theme="light"] .table-container,
html[data-theme="light"] .table-wrapper,
html[data-theme="light"] .content-card,
html[data-theme="light"] .section-card,
html[data-theme="light"] .client-card,
html[data-theme="light"] .proposal-card,
html[data-theme="light"] .user-row{background:#fff!important;color:#111827!important;border-color:#dbe2ea!important}
html[data-theme="light"] table,
html[data-theme="light"] tbody,
html[data-theme="light"] tr,
html[data-theme="light"] td{background:#fff!important;color:#334155!important;border-color:#e2e8f0!important}
html[data-theme="light"] thead,
html[data-theme="light"] thead tr,
html[data-theme="light"] th{background:#f1f5f9!important;color:#475569!important}

/* ===== Camada global de compatibilidade de tema =====
   As telas antigas ainda declaram cores escuras e variáveis próprias nos
   estilos inline. Este bloco mantém uma única fonte de verdade para ambas
   as aparências sem exigir regras diferentes em cada página. */
html[data-theme="light"]{
  --bg:var(--pm-bg);--panel:var(--pm-surface);--panel-2:var(--pm-surface-2);
  --line:var(--pm-border);--text:var(--pm-text);--muted:var(--pm-muted)
}
html[data-theme="dark"]{
  --bg:var(--pm-bg);--panel:var(--pm-surface);--panel-2:var(--pm-surface-2);
  --line:var(--pm-border);--text:var(--pm-text);--muted:var(--pm-muted)
}

html[data-theme] :is(
  main,.main,.main-content,.content,.page-content,.dashboard-container,
  .dashboard-content,.content-wrapper
){background:var(--pm-bg)!important;color:var(--pm-text)!important}

html[data-theme] :is(
  .card,.panel,.widget,.stat-card,.metric-card,.form-card,.chart-card,
  .dashboard-card,.content-card,.section-card,.summary-card,.summary-box,
  .table-container,.table-wrapper,.recent-proposals,.movements-card,
  .client-card,.client-select-card,.client-header-info,.proposal-card,
  .vehicle-card,.car-card,.doc-card,.doc-item,.user-row,.login-container,
  .timeline-content,.event,.message,.conditions,.results-box,.bank-option,
  .modal-card,.modal-content,.status-modal
){background:var(--pm-surface)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important}

html[data-theme] :is(
  input,select,textarea,.form-input,.form-textarea,.search-input,.search-bar,
  .filter-input,.filter-select,.choice,.file-dropzone,.upload-zone,.upload,
  .page-btn,.page-text-btn,.btn-secondary,.btn-dark,.back,.shortcut-btn,.client-btn
){background:var(--pm-input)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important}
html[data-theme] .choice.selected{border-color:var(--pm-red)!important;box-shadow:0 0 0 2px var(--pm-red-soft)!important}

html[data-theme] :is(label,legend,.field label,.form-group label){color:var(--pm-muted)!important}
html[data-theme] :is(
  .card-title,.chart-title,.vehicle-title,.car-title,.summary-value,
  .summary-info .value,.metric-info .value,.client-meta h2,.doc-text h3,
  .client-select-card strong,.message-head strong,.user-name,.client-name,
  .vehicle-name
){color:var(--pm-text)!important}
html[data-theme] :is(
  .sub,.subtitle,.description,.helper-text,.text-muted,.muted,.car-subtitle,
  .vehicle-meta,.profile,.user-info .role,.message-head,.doc-text p,
  .client-meta p,.summary-label
){color:var(--pm-muted)!important}

html[data-theme] table,
html[data-theme] tbody,
html[data-theme] tr,
html[data-theme] td{background:var(--pm-surface)!important;color:var(--pm-text)!important;border-color:var(--pm-border)!important}
html[data-theme] thead,
html[data-theme] thead tr,
html[data-theme] th{background:var(--pm-surface-2)!important;color:var(--pm-muted)!important;border-color:var(--pm-border)!important}

html[data-theme="light"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar){
  background:var(--pm-surface)!important;border-color:var(--pm-border)!important;color:var(--pm-text)!important
}
html[data-theme="light"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar) :is(a,.profile,.user-info .role){color:#526071!important}
html[data-theme="light"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar) :is(.brand,strong,.user-info .name,.prime-user-name,.seller-user-name){color:#172033!important}
html[data-theme="light"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar) .logout{color:#334155!important}
html[data-theme="dark"] :is(.sidebar,.side,.prime-standard-sidebar,.seller-standard-sidebar){
  background:var(--pm-sidebar)!important;border-color:var(--pm-border)!important;color:var(--pm-text)!important
}

html[data-theme] :is(.car-image,.car-image-placeholder,.vehicle-image-wrapper,.car-specs span,.date-badge,.file-attached){
  background:var(--pm-surface-2)!important;color:var(--pm-muted)!important;border-color:var(--pm-border)!important
}
html[data-theme] :is(.modal,.status-modal-backdrop){background:rgba(2,6,23,.7)!important}
html[data-theme="light"] input[type="date"]::-webkit-calendar-picker-indicator{filter:none;opacity:.75}
html[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8}
html[data-theme] :is(input,select,textarea):disabled{opacity:.65;cursor:not-allowed}

/* O modo seguro padrão é escuro. Assim, páginas abertas diretamente por
   file:// não ficam parcialmente claras se o JavaScript estiver em cache ou
   se o armazenamento local for recusado pelo navegador. */
html:not([data-theme]){
  color-scheme:dark;
  --pm-bg:#070b14;--pm-surface:#111827;--pm-surface-2:#172033;
  --pm-sidebar:#030712;--pm-sidebar-hover:#182033;--pm-border:#2a3548;
  --pm-text:#f8fafc;--pm-muted:#b5c0d2;--pm-input:#0b1220;
  --bg:#070b14;--panel:#111827;--panel-2:#172033;--line:#2a3548;
  --text:#f8fafc;--muted:#b5c0d2
}
html[data-theme="light"]{
  --pm-bg:#f4f6f9;--pm-surface:#fff;--pm-surface-2:#f8fafc;
  --pm-sidebar:#fff;--pm-sidebar-hover:#eef2f6;--pm-border:#e2e8f0;
  --pm-text:#111827;--pm-muted:#64748b;--pm-input:#fff
}
