:root{--demo-bg:#0f172a;--demo-card:#fff;--demo-primary:#e7622d;--demo-text:#172033;--demo-muted:#6b7280}.demo-top-banner{position:fixed;top:0;left:0;right:0;z-index:1100;background:#98753a;color:#111827;text-align:center;padding:7px 12px;font-weight:700;font-size:13px}.demo-navbar-offset{top:34px}.demo-layout-offset{padding-top:34px}.demo-main{width:100%;min-height:100vh}.demo-muted-light{color:#cbd5e1;margin-top:-8px}.demo-auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at top,#273758,#0b1020 68%)}.demo-auth-card{width:min(460px,100%);background:#fff;padding:34px;border-radius:20px;box-shadow:0 25px 70px rgba(0,0,0,.35)}.demo-auth-card-wide{width:min(760px,100%)}.demo-auth-brand{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.demo-auth-brand img{max-width:130px;max-height:48px}.demo-badge{background:#fff1eb;color:#b64013;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800}.demo-muted{color:var(--demo-muted)}.demo-form{display:grid;gap:10px}.demo-form label{font-weight:700;font-size:14px;color:#374151;margin:0}.demo-form input,.demo-form select,.demo-payment-summary select{width:100%;border:1px solid #d8dee8;border-radius:10px;padding:12px;background:#fff}.demo-form-grid{grid-template-columns:1fr 1fr;gap:16px}.demo-form-full{grid-column:1/-1}.demo-password-wrap{position:relative}.demo-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent}.demo-credentials{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.demo-credentials div{display:grid;background:#f7f8fb;border-radius:12px;padding:12px}.demo-credentials span{font-size:13px;color:#596273}.demo-auth-footer{text-align:center;margin:20px 0 0}.demo-alert{padding:12px;border-radius:10px;margin:12px 0}.demo-alert-error{background:#fee2e2;color:#991b1b}.demo-page-head,.demo-table-tools{display:flex;justify-content:space-between;align-items:center;gap:16px}.demo-table-card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 12px 30px rgba(0,0,0,.12)}.demo-table-tools{margin-bottom:18px}.demo-table-tools input{max-width:340px;padding:10px 12px;border:1px solid #d9dee8;border-radius:9px}.demo-table td,.demo-table th{vertical-align:middle;white-space:nowrap}.demo-status{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800;background:#e5e7eb}.demo-status-ativo,.demo-status-aprovado{background:#dcfce7;color:#166534}.demo-status-pendente,.demo-status-em\ análise,.demo-status-novo{background:#fef3c7;color:#92400e}.demo-status-inativo,.demo-status-cancelado{background:#fee2e2;color:#991b1b}.demo-icon-btn{border:0;background:#eef2f7;border-radius:8px;padding:8px}.demo-summary-card{height:100%;background:#fff;border-radius:16px;padding:24px;display:grid;gap:6px;box-shadow:0 12px 30px rgba(0,0,0,.12)}.demo-summary-card i{font-size:26px;color:var(--demo-primary)}.demo-summary-card span{color:#6b7280}.demo-summary-card strong{font-size:24px}.demo-plan-card{width:100%;height:100%;border:2px solid transparent;border-radius:18px;background:#fff;padding:25px;text-align:left;box-shadow:0 12px 30px rgba(0,0,0,.12);cursor:pointer}.demo-plan-card.featured{border-color:#f59e0b}.demo-plan-card.selected{outline:4px solid rgba(231,98,45,.3);border-color:var(--demo-primary)}.demo-plan-label{font-size:12px;font-weight:800;color:var(--demo-primary)}.demo-price{font-size:40px;font-weight:800;margin:16px 0}.demo-price small,.demo-price span{font-size:14px}.demo-plan-card ul{list-style:none;padding:0;min-height:110px}.demo-plan-card li{margin:10px 0}.demo-plan-card li i{color:#16a34a}.demo-payment-summary{background:#fff;border-radius:16px;padding:24px;box-shadow:0 12px 30px rgba(0,0,0,.12);display:grid;grid-template-columns:1fr 1fr 1.3fr auto;align-items:end;gap:18px}.demo-payment-summary[hidden]{display:none}.demo-payment-summary div{display:grid}.demo-payment-summary span,.demo-payment-summary label,.demo-payment-summary small{color:#6b7280}.demo-payment-summary strong{font-size:19px}.demo-payment-summary small{grid-column:1/-1}.grafic{background:#fff!important;border-radius:16px;margin-bottom:24px;padding:18px;box-shadow:0 12px 30px rgba(0,0,0,.12)}.grafic h2{color:#172033!important;font-size:20px}.sidebar{padding-top:56px!important}@media(max-width:768px){.demo-form-grid,.demo-credentials,.demo-payment-summary{grid-template-columns:1fr}.demo-page-head,.demo-table-tools{align-items:flex-start;flex-direction:column}.demo-main{padding:28px 16px!important}.demo-payment-summary small{grid-column:auto}}

/* ===== Refinamento visual escuro para a versão de portfólio ===== */
:root{
  --demo-bg:#111827;
  --demo-panel:#1f2a3d;
  --demo-panel-2:#243247;
  --demo-panel-3:#182235;
  --demo-border:rgba(255,255,255,.09);
  --demo-text:#f3f6fb;
  --demo-muted:#aebbd0;
  --demo-primary:#4f8dfd;
  --demo-accent:#e7622d;
}
body{color:var(--demo-text)}
.demo-auth-page{background:radial-gradient(circle at top,#2b3d62 0,#111827 58%,#0b1020 100%)}
.demo-auth-card{
  background:linear-gradient(180deg,#26354c 0%,#1e293b 100%);
  border:1px solid var(--demo-border);
  color:var(--demo-text);
  box-shadow:0 28px 80px rgba(0,0,0,.48);
}
.demo-auth-card h1,.demo-auth-card h2,.demo-auth-card strong,.demo-auth-footer{color:var(--demo-text)}
.demo-auth-card .demo-muted{color:var(--demo-muted)}
.demo-badge{background:rgba(231,98,45,.14);color:#ff9b72;border:1px solid rgba(231,98,45,.24)}
.demo-form label{color:#e8eef9}
.demo-form input,.demo-form select,.demo-payment-summary select,.demo-table-tools input{
  background:#172235;
  color:#f7f9fc;
  border:1px solid #3a4962;
  box-shadow:none;
}
.demo-form input::placeholder,.demo-table-tools input::placeholder{color:#8797b2}
.demo-form input:focus,.demo-form select:focus,.demo-table-tools input:focus{
  border-color:#5e9bff;
  box-shadow:0 0 0 3px rgba(79,141,253,.16);
  outline:none;
}
.demo-password-toggle{color:#dce7f8}
.demo-credentials div{background:#172235;border:1px solid var(--demo-border)}
.demo-credentials span{color:#aebbd0}
.demo-auth-footer a{color:#7eb0ff}
.btn-primary{
  background:linear-gradient(135deg,#5798ff,#426fdc)!important;
  border-color:#5798ff!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(66,111,220,.28)!important;
  transition:transform .18s ease,box-shadow .18s ease;
}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(66,111,220,.38)!important}

.demo-main{background:linear-gradient(135deg,#4d3547 0%,#213d67 100%);color:var(--demo-text)}
.titulo{color:#fff!important}
.demo-muted-light{color:#d1d9e8}
.demo-table-card,.demo-summary-card,.demo-plan-card,.demo-payment-summary,.grafic{
  background:linear-gradient(180deg,var(--demo-panel-2),var(--demo-panel))!important;
  border:1px solid var(--demo-border);
  color:var(--demo-text)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.23);
}
.demo-summary-card span,.demo-payment-summary span,.demo-payment-summary label,.demo-payment-summary small,.demo-plan-card p,.demo-plan-card small{color:var(--demo-muted)}
.demo-summary-card strong,.demo-payment-summary strong,.demo-plan-card strong,.demo-price{color:#fff}
.demo-table{color:#e9f0fb!important;margin-bottom:0}
.demo-table thead th{background:#182235;color:#fff;border-color:#40506a;font-weight:700}
.demo-table tbody td{color:#e3ebf8;border-color:#40506a;background:transparent}
.demo-table tbody tr:nth-child(even){background:rgba(255,255,255,.025)}
.demo-table tbody tr:hover{background:rgba(79,141,253,.10)}
.demo-table-tools{padding-bottom:4px;color:#bac7da}
.demo-table-tools input{width:min(100%,360px);margin:0}
.demo-icon-btn{background:#172235;color:#dce7f8;border:1px solid var(--demo-border)}
.demo-icon-btn:hover{background:#31415b;color:#fff}
.demo-plan-card:hover{transform:translateY(-3px)}
.demo-plan-card{transition:transform .18s ease,border-color .18s ease}
.demo-plan-card li{color:#dce6f5}
.grafic h2{color:#fff!important}
.sidebar{background:#182235!important;border-right:1px solid var(--demo-border)}
.navbar.bg-dark{background:#202a37!important;border-bottom:1px solid var(--demo-border)}

@media(max-width:768px){
  .demo-auth-card{padding:25px}
  .demo-table-tools input{max-width:none;width:100%}
}
