/* =====================================================================
   Tema escuro do painel (cor principal configurável)
   Carregado depois do AdminLTE em todas as páginas.
   ===================================================================== */
:root {
  --rk-bg: #0d1220;
  --rk-side: #111829;
  --rk-card: #151d30;
  --rk-card2: #1a2338;
  --rk-line: #232d45;
  --rk-txt: #e6e9f2;
  --rk-mut: #8a93ab;
  --rk-pri: #7c6cff;
  --rk-pri2: #a78bfa;
  --rk-pri3: #c4b5fd;
  --rk-pri-rgb: 124,108,255;
  --rk-ok: #22c55e;
  --rk-warn: #f59e0b;
  --rk-bad: #f43f5e;
  --rk-info: #38bdf8;
}

body, body.dark-mode, .wrapper, .content-wrapper, body.dark-mode .content-wrapper {
  background: var(--rk-bg) !important;
  color: var(--rk-txt) !important;
  font-family: Inter, "Source Sans Pro", system-ui, -apple-system, "Segoe UI", sans-serif !important;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, label { color: var(--rk-txt); }
a { color: var(--rk-pri2); }
a:hover { color: var(--rk-pri3); }
.text-muted, small.text-muted { color: var(--rk-mut) !important; }
hr { border-color: var(--rk-line) !important; }

/* ---------- topo ---------- */
.main-header.navbar, body.dark-mode .main-header.navbar, .navbar-white, .navbar-light {
  background: rgba(13, 18, 32, .92) !important;
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--rk-line) !important;
}
.main-header .nav-link, .navbar-light .navbar-nav .nav-link { color: var(--rk-txt) !important; }
.main-header .badge { border-radius: 999px; }

/* ---------- menu lateral ---------- */
.main-sidebar, body.dark-mode .main-sidebar, [class*=sidebar-dark-], [class*=sidebar-light-] {
  background: var(--rk-side) !important;
  border-right: 1px solid var(--rk-line);
  box-shadow: none !important;
}
.brand-link, body.dark-mode .brand-link {
  background: var(--rk-side) !important;
  border-bottom: 1px solid var(--rk-line) !important;
  color: #fff !important;
  font-weight: 800;
}
.sidebar .user-panel { border-bottom: 1px solid var(--rk-line) !important; }
.sidebar .user-panel .info a { color: #fff !important; font-weight: 600; }
.nav-sidebar .nav-header {
  color: #5d6681 !important; font-size: 10.5px !important; letter-spacing: .12em; text-transform: uppercase;
  font-weight: 700; padding: 1rem 1rem .4rem !important;
}
.nav-sidebar .nav-link, [class*=sidebar-] .nav-sidebar > .nav-item > .nav-link {
  color: #b7bdd0 !important; border-radius: 10px !important; margin: 1px 6px; width: auto !important;
}
.nav-sidebar .nav-link .nav-icon { color: #6f7896 !important; }
.nav-sidebar .nav-link:hover { background: #18213a !important; color: #fff !important; }
[class*=sidebar-] .nav-sidebar > .nav-item > .nav-link.active, .nav-pills .nav-link.active,
[class*=sidebar-] .nav-sidebar > .nav-item.menu-open > .nav-link {
  background: linear-gradient(90deg, rgba(var(--rk-pri-rgb),.25), rgba(var(--rk-pri-rgb),.05)) !important;
  color: #fff !important; box-shadow: inset 3px 0 0 var(--rk-pri) !important;
}
[class*=sidebar-] .nav-sidebar > .nav-item > .nav-link.active .nav-icon { color: var(--rk-pri2) !important; }
.nav-treeview > .nav-item > .nav-link { color: #9aa2b8 !important; padding-left: 1.6rem; }
.nav-treeview > .nav-item > .nav-link.active, [class*=sidebar-] .nav-treeview > .nav-item > .nav-link.active {
  background: rgba(var(--rk-pri-rgb),.12) !important; color: #fff !important; box-shadow: none !important;
}
.sidebar .badge { border-radius: 999px; }

/* ---------- conteúdo ---------- */
.content-header h1, .content-header .m-0 { color: var(--rk-txt) !important; font-weight: 800 !important; }
.breadcrumb { background: transparent !important; }
.breadcrumb-item, .breadcrumb-item a, .breadcrumb-item.active { color: var(--rk-mut) !important; }
.main-footer, body.dark-mode .main-footer {
  background: var(--rk-bg) !important; border-top: 1px solid var(--rk-line) !important; color: var(--rk-mut) !important;
}

/* ---------- cards ---------- */
.card, body.dark-mode .card {
  background: var(--rk-card) !important; border: 1px solid var(--rk-line) !important;
  border-radius: 14px !important; box-shadow: none !important; color: var(--rk-txt);
}
.card-header, body.dark-mode .card-header { background: transparent !important; border-bottom: 1px solid var(--rk-line) !important; }
.card-title { color: var(--rk-txt) !important; font-weight: 700 !important; }
.card-footer { background: transparent !important; border-top: 1px solid var(--rk-line) !important; }
.card-primary.card-outline, .card-info.card-outline, .card-success.card-outline { border-top: 3px solid var(--rk-pri) !important; }
.card-primary:not(.card-outline) > .card-header, .card-info:not(.card-outline) > .card-header {
  background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)) !important; color: #fff !important;
}
.callout { background: var(--rk-card2) !important; border-left-color: var(--rk-pri) !important; border-radius: 12px; color: var(--rk-txt); }
.callout.callout-info { border-left-color: var(--rk-info) !important; }
.callout.callout-warning { border-left-color: var(--rk-warn) !important; }
.callout.callout-danger { border-left-color: var(--rk-bad) !important; }

/* caixas do dashboard */
.info-box, body.dark-mode .info-box {
  background: var(--rk-card) !important; border: 1px solid var(--rk-line); border-radius: 14px !important;
  box-shadow: none !important; color: var(--rk-txt) !important; min-height: 86px;
}
.info-box .info-box-icon { border-radius: 12px !important; width: 56px; font-size: 1.5rem; box-shadow: none !important; }
.info-box .info-box-text { color: var(--rk-mut) !important; text-transform: none; font-size: 13px; }
.info-box .info-box-number { font-size: 22px; font-weight: 800; color: var(--rk-txt) !important; }
.info-box-icon.bg-info, .info-box-icon.bg-primary { background: rgba(var(--rk-pri-rgb),.18) !important; color: var(--rk-pri2) !important; }
.info-box-icon.bg-success { background: rgba(34,197,94,.14) !important; color: var(--rk-ok) !important; }
.info-box-icon.bg-warning { background: rgba(245,158,11,.15) !important; color: var(--rk-warn) !important; }
.info-box-icon.bg-danger { background: rgba(244,63,94,.14) !important; color: var(--rk-bad) !important; }
.info-box-icon.bg-secondary, .info-box-icon.bg-dark { background: rgba(56,189,248,.14) !important; color: var(--rk-info) !important; }
.small-box { border-radius: 14px !important; box-shadow: none !important; border: 1px solid var(--rk-line); }
.small-box.bg-info, .small-box.bg-primary { background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)) !important; }
.small-box.bg-success { background: linear-gradient(135deg, #15803d, #22c55e) !important; }
.small-box.bg-warning { background: linear-gradient(135deg, #b45309, #f59e0b) !important; color: #fff !important; }
.small-box.bg-danger { background: linear-gradient(135deg, #be123c, #f43f5e) !important; }
.small-box > .small-box-footer { background: rgba(0,0,0,.15) !important; border-radius: 0 0 14px 14px; }

/* ---------- botões ---------- */
.btn { border-radius: 10px !important; font-weight: 600; }
.btn-primary, .btn-info, .bg-gradient-primary {
  background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)) !important; border-color: transparent !important; color: #fff !important;
  box-shadow: 0 6px 16px rgba(var(--rk-pri-rgb),.25);
}
.btn-primary:hover, .btn-info:hover { filter: brightness(1.08); }
.btn-success { background: #16a34a !important; border-color: #16a34a !important; }
.btn-danger { background: #e11d48 !important; border-color: #e11d48 !important; }
.btn-warning { background: #d97706 !important; border-color: #d97706 !important; color: #fff !important; }
.btn-secondary, .btn-default, .btn-light, .btn-dark, .btn-outline-secondary {
  background: var(--rk-card2) !important; border: 1px solid var(--rk-line) !important; color: var(--rk-txt) !important;
}
.btn-icon { border-radius: 9px !important; }
td .btn-icon {
  width: 32px; height: 32px; padding: 0 !important; display: inline-grid !important; place-items: center;
  background: var(--rk-card2); border: 1px solid var(--rk-line) !important; margin: 1px;
}
td .btn-icon:hover { border-color: var(--rk-pri) !important; }

/* ---------- formulários ---------- */
.form-control, .custom-select, select.form-control, .input-group-text,
body.dark-mode .form-control, body.dark-mode .custom-select {
  background: var(--rk-card2) !important; border: 1px solid var(--rk-line) !important; color: var(--rk-txt) !important; border-radius: 10px !important;
}
.input-group > .form-control:not(:last-child), .input-group > .custom-select:not(:last-child) { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }
.input-group > .form-control:not(:first-child) { border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; }
.input-group-prepend .input-group-text { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; color: var(--rk-mut) !important; }
.input-group-append .input-group-text { border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; color: var(--rk-mut) !important; }
.form-control:focus { border-color: var(--rk-pri) !important; box-shadow: 0 0 0 3px rgba(var(--rk-pri-rgb),.18) !important; }
.custom-control-input:checked ~ .custom-control-label::before { background: var(--rk-pri) !important; border-color: var(--rk-pri) !important; }
.select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple,
.select2-dropdown { background: var(--rk-card2) !important; border-color: var(--rk-line) !important; color: var(--rk-txt) !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--rk-txt) !important; }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--rk-pri) !important; }
.select2-container--default .select2-selection--multiple .select2-selection__choice { background: var(--rk-pri) !important; border: 0 !important; }

/* ---------- tabelas ---------- */
.table, table.dataTable, body.dark-mode .table { color: var(--rk-txt) !important; }
.table thead th, table.dataTable thead th {
  color: #6c7590 !important; font-size: 11.5px; text-transform: uppercase; letter-spacing: .06em;
  border-bottom: 1px solid var(--rk-line) !important; border-top: 0 !important; font-weight: 700; background: transparent !important;
}
.table td, .table th { border-color: var(--rk-line) !important; vertical-align: middle !important; }
.table-striped tbody tr:nth-of-type(odd) { background: rgba(255,255,255,.015) !important; }
.table-hover tbody tr:hover, table.dataTable tbody tr:hover { background: rgba(var(--rk-pri-rgb),.06) !important; color: var(--rk-txt) !important; }
.dataTables_wrapper .dataTables_filter input, .dataTables_wrapper .dataTables_length select {
  background: var(--rk-card2) !important; border: 1px solid var(--rk-line) !important; color: var(--rk-txt) !important; border-radius: 8px;
}
.dataTables_info, .dataTables_length, .dataTables_filter { color: var(--rk-mut) !important; }
.page-link { background: var(--rk-card2) !important; border-color: var(--rk-line) !important; color: var(--rk-txt) !important; }
.page-item.active .page-link { background: var(--rk-pri) !important; border-color: var(--rk-pri) !important; }

/* ---------- badges / alertas ---------- */
.badge { border-radius: 999px !important; padding: 4px 9px !important; font-weight: 700 !important; }
.badge-success { background: rgba(34,197,94,.15) !important; color: var(--rk-ok) !important; }
.badge-danger { background: rgba(244,63,94,.15) !important; color: var(--rk-bad) !important; }
.badge-warning { background: rgba(245,158,11,.16) !important; color: var(--rk-warn) !important; }
.badge-info, .badge-primary { background: rgba(var(--rk-pri-rgb),.18) !important; color: var(--rk-pri3) !important; }
.badge-secondary { background: rgba(138,147,171,.15) !important; color: #c9cfe2 !important; }
.alert { border-radius: 12px !important; border: 1px solid var(--rk-line) !important; }
.alert-success { background: rgba(34,197,94,.1) !important; color: #86efac !important; }
.alert-danger { background: rgba(244,63,94,.1) !important; color: #fda4af !important; }
.alert-warning { background: rgba(245,158,11,.1) !important; color: #fcd34d !important; }
.alert-info { background: rgba(var(--rk-pri-rgb),.1) !important; color: var(--rk-pri3) !important; }

/* ---------- janelas ---------- */
.modal-content, body.dark-mode .modal-content { background: var(--rk-card) !important; border: 1px solid var(--rk-line) !important; border-radius: 16px !important; color: var(--rk-txt); }
.modal-header, .modal-footer { border-color: var(--rk-line) !important; }
.close { color: var(--rk-txt) !important; text-shadow: none !important; }
.dropdown-menu { background: var(--rk-card) !important; border: 1px solid var(--rk-line) !important; border-radius: 12px; }
.dropdown-item { color: var(--rk-txt) !important; }
.dropdown-item:hover { background: var(--rk-card2) !important; }
.swal2-popup { background: var(--rk-card) !important; color: var(--rk-txt) !important; border-radius: 16px !important; }
.swal2-title, .swal2-content, .swal2-html-container { color: var(--rk-txt) !important; }

/* ---------- login (painel e área do cliente) ---------- */
.container-login100 {
  background-color: var(--rk-bg) !important;
  background-blend-mode: overlay;
  position: relative;
}
.container-login100::before {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(circle at 20% 15%, rgba(var(--rk-pri-rgb),.35), transparent 45%), linear-gradient(180deg, rgba(13,18,32,.75), rgba(13,18,32,.92));
}
.wrap-login100 {
  position: relative; z-index: 1; background: rgba(21, 29, 48, .92) !important; border: 1px solid var(--rk-line);
  border-radius: 20px !important; padding: 40px 32px 30px !important; width: 400px !important; max-width: calc(100vw - 32px);
  box-shadow: 0 30px 80px rgba(0,0,0,.45);
}
.input100 {
  background: var(--rk-card2) !important; color: var(--rk-txt) !important; border: 1px solid var(--rk-line) !important;
  border-radius: 12px !important;
}
.input100::placeholder { color: var(--rk-mut) !important; }
.login100-form-btn {
  background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)) !important; border-radius: 12px !important;
  box-shadow: 0 10px 24px rgba(var(--rk-pri-rgb),.35); font-weight: 700 !important;
}
.txt1, .txt2, .login100-form-title { color: var(--rk-mut) !important; }
.login100-form-avatar img { max-height: 110px; width: auto !important; }

/* =====================================================================
   LAYOUT v2 — barra superior, menu lateral e início redesenhados
   ===================================================================== */
:root { --rk-sbw: 264px; --rk-top: 66px; }
body { letter-spacing: -.005em; }

/* barra superior */
.main-header.rk-topbar {
  height: var(--rk-top); padding: 0 22px 0 14px !important;
  background: rgba(13,18,32,.78) !important; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--rk-line) !important; box-shadow: none !important;
}
.rk-icon-btn { width: 40px; height: 40px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 11px; color: var(--rk-mut) !important; position: relative; padding: 0 !important; }
.rk-icon-btn:hover { background: var(--rk-card2); color: #fff !important; }
.rk-topbar-title { font-weight: 700; font-size: 15px; color: var(--rk-txt); margin-left: 8px; }
.rk-topbar-right { gap: 10px; }
.rk-quick { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 16px; border-radius: 11px; color: #fff !important; font-weight: 600; font-size: 13.5px;
  background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)); box-shadow: 0 8px 20px rgba(var(--rk-pri-rgb),.35); }
.rk-quick:hover { filter: brightness(1.08); text-decoration: none; }
.rk-wallet { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-radius: 11px; background: var(--rk-card2); border: 1px solid var(--rk-line); color: var(--rk-txt); font-weight: 700; font-size: 13.5px; }
.rk-wallet i { color: var(--rk-pri2); }
.rk-dot { position: absolute; top: 5px; right: 5px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 9px; background: var(--rk-bad); color: #fff; font-size: 10px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.rk-user { display: flex; align-items: center; gap: 10px; padding: 4px 10px 4px 4px; border-radius: 13px; color: var(--rk-txt) !important; }
.rk-user:hover { background: var(--rk-card2); text-decoration: none; }
.rk-user i.fa-chevron-down { font-size: 10px; color: var(--rk-mut); }
.rk-user-txt { flex-direction: column; line-height: 1.15; }
.rk-user-txt b { font-size: 13.5px; }
.rk-user-txt small { color: var(--rk-mut); font-size: 11.5px; }
.rk-avatar { width: 36px; height: 36px; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; color: #fff;
  background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)); flex: 0 0 auto; }
.rk-avatar.lg { width: 42px; height: 42px; border-radius: 13px; font-size: 15px; }
.rk-menu { background: var(--rk-card) !important; border: 1px solid var(--rk-line) !important; border-radius: 14px !important; padding: 6px !important; min-width: 210px; box-shadow: 0 18px 40px rgba(0,0,0,.45) !important; margin-top: 8px !important; }
.rk-menu .dropdown-item { border-radius: 9px; padding: 9px 12px; color: var(--rk-txt) !important; font-size: 13.5px; display: flex; align-items: center; gap: 10px; }
.rk-menu .dropdown-item i { width: 16px; text-align: center; color: var(--rk-mut); }
.rk-menu .dropdown-item:hover { background: var(--rk-card2) !important; }
.rk-menu .dropdown-item.text-danger, .rk-menu .dropdown-item.text-danger i { color: #fb7185 !important; }
.rk-menu .dropdown-divider { border-color: var(--rk-line); margin: 5px 0; }

/* menu lateral */
.main-sidebar.rk-sidebar { width: var(--rk-sbw); background: var(--rk-side) !important; border-right: 1px solid var(--rk-line); box-shadow: none !important; }
@media (min-width: 992px) {
  body:not(.sidebar-collapse) .content-wrapper, body:not(.sidebar-collapse) .main-footer, body:not(.sidebar-collapse) .main-header { margin-left: var(--rk-sbw) !important; }
}
.rk-brand.brand-link { height: var(--rk-top); display: flex !important; align-items: center; gap: 11px; padding: 0 20px !important; border-bottom: 1px solid var(--rk-line) !important; }
.rk-brand .rk-brand-ico { width: 34px; height: 34px; border-radius: 10px; object-fit: contain; margin: 0 !important; float: none !important; max-height: none !important; }
.rk-brand .rk-brand-txt { font-weight: 800; font-size: 16px; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-sidebar .sidebar { padding: 14px 12px 24px !important; }
.rk-me { display: flex; align-items: center; gap: 11px; padding: 11px; margin-bottom: 8px; border-radius: 14px; background: var(--rk-card); border: 1px solid var(--rk-line); }
.rk-me:hover { text-decoration: none; border-color: rgba(var(--rk-pri-rgb),.45); }
.rk-me-txt { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; }
.rk-me-txt b { color: #fff; font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-me-txt small { color: var(--rk-mut); font-size: 12px; display: flex; align-items: center; gap: 6px; }
.rk-me-txt small i { font-size: 7px; color: var(--rk-ok); }
.rk-sidebar .nav-sidebar .nav-header { font-size: 10.5px !important; letter-spacing: .09em; text-transform: uppercase; color: #5f6987 !important; padding: 16px 12px 6px !important; font-weight: 700; }
.rk-sidebar .nav-sidebar .nav-item > .nav-link { border-radius: 10px !important; padding: 9px 12px !important; margin-bottom: 2px; color: #b3bbd1 !important; font-size: 14px; display: flex; align-items: center; }
.rk-sidebar .nav-sidebar .nav-item > .nav-link p { margin: 0; flex: 1; display: flex; align-items: center; }
.rk-sidebar .nav-sidebar .nav-link .nav-icon { width: 22px !important; margin-right: 10px !important; font-size: 14.5px !important; color: #6b7593 !important; }
.rk-sidebar .nav-sidebar .nav-link .right { margin-left: auto; position: static !important; }
.rk-sidebar .nav-sidebar .nav-item > .nav-link:hover { background: var(--rk-card) !important; color: #fff !important; }
.rk-sidebar .nav-sidebar > .nav-item > .nav-link.active {
  background: linear-gradient(90deg, rgba(var(--rk-pri-rgb),.22), rgba(var(--rk-pri-rgb),.06)) !important; color: #fff !important; box-shadow: inset 3px 0 0 var(--rk-pri) !important;
}
.rk-sidebar .nav-sidebar > .nav-item > .nav-link.active .nav-icon { color: var(--rk-pri2) !important; }
.rk-sidebar .nav-sidebar > .nav-item.menu-open > .nav-link:not(.active) { background: transparent !important; }
.rk-sidebar .nav-treeview { padding: 2px 0 6px 0; }
.rk-sidebar .nav-treeview > .nav-item > .nav-link { padding: 7px 12px 7px 20px !important; font-size: 13.5px; color: #98a1ba !important; background: transparent !important; box-shadow: none !important; }
.rk-sidebar .nav-treeview > .nav-item > .nav-link.active { color: #fff !important; background: transparent !important; }
.rk-sidebar .nav-icon.rk-sub { width: 22px; display: inline-flex; justify-content: center; }
.rk-sidebar .nav-icon.rk-sub::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #3e4763; display: block; }
.rk-sidebar .nav-treeview > .nav-item > .nav-link.active .rk-sub::before { background: var(--rk-pri2); box-shadow: 0 0 0 3px rgba(var(--rk-pri-rgb),.25); }
.rk-sidebar .rk-logout { margin-top: 14px; border-top: 1px solid var(--rk-line); padding-top: 10px; }
.rk-sidebar .rk-logout .nav-link { color: #fb7185 !important; }
.rk-sidebar .rk-logout .nav-link .nav-icon { color: #fb7185 !important; }
.rk-sidebar .badge { border-radius: 999px; }
/* menu recolhido (desktop) */
.sidebar-mini.sidebar-collapse .rk-sidebar:not(:hover) .rk-brand-txt,
.sidebar-mini.sidebar-collapse .rk-sidebar:not(:hover) .rk-me-txt,
.sidebar-mini.sidebar-collapse .rk-sidebar:not(:hover) .nav-header { display: none !important; }
.sidebar-mini.sidebar-collapse .rk-sidebar:not(:hover) .rk-me { padding: 6px; justify-content: center; background: transparent; border: 0; }

/* conteúdo */
.content-wrapper { padding: 6px 10px 20px; }
.content-header { padding: 22px 8px 10px !important; }
.content-header h1 { font-size: 24px !important; letter-spacing: -.02em; }
.breadcrumb { background: transparent !important; font-size: 12.5px; }
.breadcrumb-item a { color: var(--rk-mut) !important; }
.card { border-radius: 16px !important; }
.card-header { padding: 16px 20px !important; }
.card-title { font-weight: 700 !important; font-size: 15.5px !important; display: flex; align-items: center; gap: 10px; }
.rk-ttl-ico { width: 32px; height: 32px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; background: rgba(var(--rk-pri-rgb),.16); color: var(--rk-pri2); font-size: 14px; }

/* início */
.rk-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; flex-wrap: wrap; padding: 26px 28px; border-radius: 20px; position: relative; overflow: hidden;
  background: radial-gradient(600px 240px at 0% 0%, rgba(var(--rk-pri-rgb),.35), transparent 70%), linear-gradient(135deg, var(--rk-card2), var(--rk-card)); border: 1px solid var(--rk-line); }
.rk-hero::after { content: ""; position: absolute; right: -60px; top: -80px; width: 260px; height: 260px; border-radius: 50%; border: 40px solid rgba(var(--rk-pri-rgb),.08); pointer-events: none; }
.rk-hero h1 { font-size: 27px !important; font-weight: 800 !important; margin: 8px 0 4px !important; color: #fff !important; }
.rk-hero p { margin: 0; color: var(--rk-mut); }
.rk-hero-date { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; color: var(--rk-pri3); background: rgba(var(--rk-pri-rgb),.14); padding: 5px 11px; border-radius: 999px; }
.rk-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; position: relative; z-index: 1; }
.rk-act { display: inline-flex; align-items: center; gap: 9px; height: 42px; padding: 0 16px; border-radius: 12px; background: rgba(255,255,255,.05); border: 1px solid var(--rk-line); color: var(--rk-txt) !important; font-weight: 600; font-size: 13.5px; }
.rk-act:hover { text-decoration: none; border-color: rgba(var(--rk-pri-rgb),.6); background: rgba(var(--rk-pri-rgb),.12); }
.rk-act.primary { background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)); border: 0; color: #fff !important; box-shadow: 0 10px 24px rgba(var(--rk-pri-rgb),.35); }
.rk-section-title { display: flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--rk-mut); margin: 22px 2px 12px; }
.rk-section-title i { color: var(--rk-pri2); }
.rk-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 8px; }
.rk-kpi { display: flex; align-items: center; gap: 14px; padding: 18px; border-radius: 16px; background: var(--rk-card); border: 1px solid var(--rk-line); transition: transform .15s, border-color .15s; }
.rk-kpi:hover { transform: translateY(-2px); border-color: rgba(var(--rk-pri-rgb),.45); }
.rk-kpi span { display: block; color: var(--rk-mut); font-size: 13px; }
.rk-kpi b { display: block; font-size: 26px; font-weight: 800; color: #fff; line-height: 1.2; }
.rk-kpi b i { font-size: 16px; color: var(--rk-mut); }
.rk-kpi-ico { width: 50px; height: 50px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 19px; flex: 0 0 auto; }
.rk-kpi-ico.c1 { background: rgba(var(--rk-pri-rgb),.16); color: var(--rk-pri2); }
.rk-kpi-ico.c2 { background: rgba(34,197,94,.13); color: #4ade80; }
.rk-kpi-ico.c3 { background: rgba(245,158,11,.14); color: #fbbf24; }
.rk-kpi-ico.c4 { background: rgba(56,189,248,.13); color: #38bdf8; }
.rk-card-table { margin-top: 18px; }
.rk-card-table .card-body { padding: 8px 14px 16px !important; }

/* rodapé */
.main-footer.rk-footer { display: flex; justify-content: space-between; align-items: center; gap: 10px; background: transparent !important; border-top: 1px solid var(--rk-line) !important; color: var(--rk-mut) !important; font-size: 12.5px; padding: 14px 24px !important; }
.rk-footer-ver { opacity: .7; }

/* campos de marca nas configurações */
.rk-swatch { position: relative; width: 34px; height: 34px; margin: 0 !important; cursor: pointer; }
.rk-swatch input[type=radio] { position: absolute; opacity: 0; }
.rk-swatch span { display: block; width: 34px; height: 34px; border-radius: 10px; background: var(--sw); border: 2px solid transparent; box-shadow: inset 0 0 0 2px rgba(0,0,0,.25); }
.rk-swatch input:checked + span { border-color: #fff; box-shadow: 0 0 0 3px var(--sw); }
.rk-swatch-custom input[type=color] { width: 34px; height: 34px; padding: 0; border: 1px dashed var(--rk-mut); border-radius: 10px; background: transparent; cursor: pointer; }
.rk-logo-field { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 14px; }
.rk-logo-prev { width: 120px; height: 72px; flex: 0 0 auto; border-radius: 12px; border: 1px dashed var(--rk-line); background: var(--rk-bg); display: flex; align-items: center; justify-content: center; padding: 8px; }
.rk-logo-prev img { max-width: 100%; max-height: 100%; object-fit: contain; }

@media (max-width: 991px) { .rk-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) {
  .main-header.rk-topbar { padding: 0 10px !important; }
  .rk-topbar-right { gap: 6px; }
  .rk-quick { padding: 0 12px; }
  .rk-wallet { padding: 0 10px; }
  .rk-hero { padding: 20px; }
  .rk-hero h1 { font-size: 22px !important; }
  .rk-hero-actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
  .rk-act { justify-content: center; }
  .rk-kpi { padding: 14px; gap: 10px; }
  .rk-kpi b { font-size: 21px; }
  .rk-kpi-ico { width: 40px; height: 40px; font-size: 16px; border-radius: 12px; }
  .main-footer.rk-footer { flex-direction: column; }
}

/* tabelas v2 */
.table { border-collapse: separate !important; border-spacing: 0; }
.table.table-bordered, .table.table-bordered td, .table.table-bordered th { border: 0 !important; }
.table thead th { border-bottom: 1px solid var(--rk-line) !important; background: transparent !important; color: #6b7593 !important; font-size: 11px !important; letter-spacing: .07em; text-transform: uppercase; font-weight: 700 !important; padding: 12px 10px !important; }
.table td { border-top: 1px solid rgba(35,45,69,.7) !important; padding: 11px 10px !important; vertical-align: middle !important; }
.table-striped tbody tr:nth-of-type(odd) { background: transparent !important; }
.table tbody tr:hover { background: rgba(var(--rk-pri-rgb),.06) !important; }
.table tfoot { display: none; }
.page-item .page-link { background: var(--rk-card2) !important; border: 1px solid var(--rk-line) !important; color: var(--rk-txt) !important; margin: 0 3px; border-radius: 9px !important; min-width: 36px; text-align: center; }
.page-item.active .page-link { background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)) !important; border-color: transparent !important; color: #fff !important; }
.page-item.disabled .page-link { opacity: .45; }
.dataTables_info { color: var(--rk-mut) !important; font-size: 12.5px; padding-top: 14px !important; }
.dataTables_wrapper .dataTables_filter input, .dataTables_wrapper .dataTables_length select { background: var(--rk-card2) !important; border: 1px solid var(--rk-line) !important; color: var(--rk-txt) !important; border-radius: 10px !important; }

@media (max-width: 991.98px) {
  body:not(.sidebar-open) .main-sidebar.rk-sidebar { margin-left: calc(-1 * var(--rk-sbw) - 2px) !important; }
  .content-wrapper, .main-footer, .main-header { margin-left: 0 !important; }
}
@media (max-width: 575px) {
  .rk-act { padding: 0 10px; font-size: 13px; white-space: nowrap; }
  .rk-kpi span { font-size: 12px; }
}

/* =====================================================================
   LOGIN v2 (painel e área do cliente)
   ===================================================================== */
body.rk-auth-body { display: block !important; margin: 0; padding: 0 !important; min-height: 100vh; background: var(--rk-bg) !important; font-family: 'Inter', system-ui, sans-serif !important; }
.rk-auth { width: 100%; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); min-height: 100vh; }
.rk-auth-side { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; padding: 44px 52px; color: #fff;
  background: radial-gradient(700px 420px at 15% 10%, rgba(var(--rk-pri-rgb),.55), transparent 65%), radial-gradient(600px 400px at 100% 100%, rgba(var(--rk-pri-rgb),.25), transparent 60%), linear-gradient(160deg, #141b31, #0b1020); }
.rk-auth-side::before { content: ""; position: absolute; inset: 0; background-image: var(--rk-auth-bg, none); background-size: cover; background-position: center; opacity: .22; }
.rk-auth-side::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 44px 44px; mask-image: radial-gradient(circle at 30% 30%, #000, transparent 75%); -webkit-mask-image: radial-gradient(circle at 30% 30%, #000, transparent 75%); }
.rk-auth-side > * { position: relative; z-index: 1; }
.rk-auth-brand img { max-height: 54px; max-width: 260px; object-fit: contain; }
.rk-auth-pitch h2 { font-size: 34px; line-height: 1.15; font-weight: 800; letter-spacing: -.02em; max-width: 460px; margin: 0 0 22px; color: #fff; }
.rk-auth-pitch ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.rk-auth-pitch li { display: flex; align-items: center; gap: 12px; color: #d4d8e6; font-size: 15px; }
.rk-auth-pitch li i { width: 26px; height: 26px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.1); color: var(--rk-pri3); font-size: 12px; }
.rk-auth-copy { color: rgba(255,255,255,.5); font-size: 12.5px; }
.rk-auth-main { display: flex; align-items: center; justify-content: center; padding: 40px 24px; }
.rk-auth-card { width: 100%; max-width: 380px; }
.rk-auth-card h1 { font-size: 26px; font-weight: 800; color: #fff; margin: 0 0 6px; letter-spacing: -.02em; }
.rk-auth-sub { color: var(--rk-mut); margin: 0 0 26px; font-size: 14.5px; }
.rk-auth-card label { display: block; font-size: 13px; font-weight: 600; color: #c9cee0; margin: 0 0 7px; }
.rk-label-row { display: flex; justify-content: space-between; align-items: baseline; margin-top: 16px; }
.rk-label-row a, .rk-auth-alt a { color: var(--rk-pri2); font-size: 13px; font-weight: 600; }
.rk-field { position: relative; display: flex; align-items: center; height: 50px; border-radius: 13px; background: var(--rk-card); border: 1px solid var(--rk-line); transition: border-color .15s, box-shadow .15s; }
.rk-field:focus-within { border-color: var(--rk-pri); box-shadow: 0 0 0 4px rgba(var(--rk-pri-rgb),.2); }
.rk-field > i { width: 46px; text-align: center; color: #6b7593; font-size: 15px; }
.rk-field input { flex: 1; height: 100%; border: 0; outline: 0; background: transparent; color: #fff; font-size: 15px; padding-right: 12px; min-width: 0; }
.rk-field input::placeholder { color: #545d78; }
.rk-eye { border: 0; background: transparent; color: #6b7593; width: 44px; height: 100%; cursor: pointer; }
.rk-auth-card .g-recaptcha { margin-top: 16px; }
.rk-btn-main { width: 100%; height: 50px; margin-top: 22px; border: 0; border-radius: 13px; color: #fff; font-weight: 700; font-size: 15px; cursor: pointer;
  background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)); box-shadow: 0 14px 30px rgba(var(--rk-pri-rgb),.38); transition: filter .15s, transform .15s; }
.rk-btn-main:hover { filter: brightness(1.07); }
.rk-btn-main:active { transform: translateY(1px); }
.rk-btn-main:disabled { opacity: .7; cursor: wait; }
.rk-auth-alt { text-align: center; color: var(--rk-mut); font-size: 13.5px; margin-top: 22px; }
.rk-auth-logo-m { display: none; max-height: 44px; max-width: 220px; margin-bottom: 22px; }
@media (max-width: 900px) {
  .rk-auth { grid-template-columns: 1fr; }
  .rk-auth-side { display: none; }
  .rk-auth-main { min-height: 100vh; background: radial-gradient(500px 300px at 50% 0%, rgba(var(--rk-pri-rgb),.28), transparent 70%); }
  .rk-auth-logo-m { display: block; }
}
.rk-auth :where(h1,h2,p,a,label,li,small,span,input,button,div):not(.fa) { font-family: 'Inter', system-ui, sans-serif !important; }
.rk-auth-pitch li { width: auto !important; max-width: none !important; padding: 0 !important; margin: 0 !important; line-height: 1.4; float: none !important; }
.rk-auth-pitch ul { width: 100% !important; max-width: 480px !important; }
.rk-check { display: flex !important; align-items: center; gap: 10px; margin: 16px 0 0 !important; cursor: pointer; font-weight: 500 !important; color: #c9cee0 !important; }
.rk-check input { position: absolute; opacity: 0; }
.rk-check span { width: 20px; height: 20px; border-radius: 6px; border: 1px solid var(--rk-line); background: var(--rk-card); display: inline-flex; align-items: center; justify-content: center; }
.rk-check input:checked + span { background: var(--rk-pri); border-color: var(--rk-pri); }
.rk-check input:checked + span::after { content: ""; width: 6px; height: 11px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) translate(-1px,-1px); }
.rk-status { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; font-weight: 600; padding: 5px 11px; border-radius: 999px; }
.rk-status.ok { background: rgba(34,197,94,.14); color: #4ade80; }
.rk-status.warn { background: rgba(245,158,11,.15); color: #fbbf24; }
.rk-status.bad { background: rgba(244,63,94,.15); color: #fb7185; }
.rk-hero p b { color: #fff; }
.rk-kpi b.rk-kpi-sm { font-size: 19px; }
.rk-kpi > div:last-child { min-width: 0; }
@media (max-width: 575px) {
  .rk-kpi b.rk-kpi-sm { font-size: 15px; }
  .layout-footer-fixed .main-footer { position: static !important; }
  .layout-footer-fixed .content-wrapper { padding-bottom: 10px !important; }
}
.rk-lic { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-radius: 11px; background: rgba(245,158,11,.14); border: 1px solid rgba(245,158,11,.45); color: #fbbf24; font-weight: 700; font-size: 13px; white-space: nowrap; }
@media (max-width: 575px) { .rk-lic { padding: 0 10px; font-size: 0; gap: 0; } .rk-lic i { font-size: 14px; } }
a.rk-lic:hover { text-decoration: none; background: rgba(245,158,11,.22); color: #fde68a; }
.rk-fatura { display: flex; align-items: center; gap: 16px; padding: 16px 18px; margin: 18px 0 4px; border-radius: 16px; border: 1px solid rgba(245,158,11,.45); background: linear-gradient(90deg, rgba(245,158,11,.14), rgba(245,158,11,.04)); }
.rk-fatura-ic { width: 46px; height: 46px; border-radius: 13px; background: rgba(245,158,11,.18); color: #fbbf24; display: flex; align-items: center; justify-content: center; font-size: 19px; flex: 0 0 auto; }
.rk-fatura-t { flex: 1; min-width: 0; }
.rk-fatura-t b { display: block; color: #fde68a; font-size: 15px; }
.rk-fatura-t span { color: #d6c9a6; font-size: 13px; }
@media (max-width: 575px) { .rk-fatura { flex-wrap: wrap; } .rk-fatura .rk-act { width: 100%; justify-content: center; } }

/* Área do cliente: selo "ao vivo" e menu inferior no celular */
.rk-sidebar .badge.rk-live { background: rgba(239,68,68,.18); color: #fca5a5; font-size: 9.5px; letter-spacing: .04em; }
.rk-bottomnav { display: none; }
@media (max-width: 767px) {
  .rk-bottomnav { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 1040; background: var(--rk-side, #0e1222); border-top: 1px solid var(--rk-line); justify-content: space-around; padding: 8px 0 calc(10px + env(safe-area-inset-bottom)); }
  .rk-bottomnav a { flex: 1; color: var(--rk-mut); font-size: 11px; text-decoration: none !important; display: flex; flex-direction: column; align-items: center; gap: 4px; }
  .rk-bottomnav a i { font-size: 18px; }
  .rk-bottomnav a.on { color: var(--rk-pri2); }
  body:has(.rk-bottomnav) .content-wrapper { padding-bottom: 74px; }
  body:has(.rk-bottomnav) .main-footer { display: none; }
}

/* Campo "Pesquisa" das listas (clientes, códigos, revendas): mesmo padrão escuro dos filtros */
#search-div input, #search-div input.form-control, #search-div input.form-control-sm {
  display: block; width: 100% !important; height: 32px !important; margin: 0 !important;
  background: var(--rk-card2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%237a84a3' d='M505 442.7 405.3 343c28.4-34.9 45.7-79.4 45.7-127.5C451 96.6 354.4 0 235.5 0S20 96.6 20 215.5 116.6 431 235.5 431c48.1 0 92.6-17.3 127.5-45.7L462.7 485c11.7 11.7 30.7 11.7 42.4 0s11.7-30.6-.1-42.3zM235.5 371c-85.8 0-155.5-69.7-155.5-155.5S149.7 60 235.5 60 391 129.7 391 215.5 321.3 371 235.5 371z'/%3E%3C/svg%3E") no-repeat 12px center / 14px !important;
  border: 1px solid var(--rk-line) !important; border-radius: 10px !important; color: var(--rk-txt) !important;
  padding: 0 12px 0 36px !important; font-size: 14px; box-shadow: none !important; outline: 0;
}
#search-div input:focus { border-color: var(--rk-pri) !important; box-shadow: 0 0 0 3px rgba(var(--rk-pri-rgb), .2) !important; }
#search-div input::placeholder { color: #6b7593; }

/* Preenchimento automático do navegador (usuário/senha salvos): mantém o campo escuro */
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus,
textarea:-webkit-autofill, select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--rk-card2) inset !important; box-shadow: 0 0 0 1000px var(--rk-card2) inset !important;
  -webkit-text-fill-color: var(--rk-txt, #fff) !important; caret-color: var(--rk-txt, #fff); transition: background-color 600000s 0s, color 600000s 0s;
}
.rk-field input:-webkit-autofill, .rk-field input:-webkit-autofill:hover, .rk-field input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px var(--rk-card) inset !important; box-shadow: 0 0 0 1000px var(--rk-card) inset !important; -webkit-text-fill-color: #fff !important;
}
input:autofill { box-shadow: 0 0 0 1000px var(--rk-card2) inset !important; -webkit-text-fill-color: var(--rk-txt, #fff) !important; }
.rk-field input:autofill { box-shadow: 0 0 0 1000px var(--rk-card) inset !important; }
.rk-field input { padding-left: 2px; }
.rk-field { overflow: hidden; }

/* Configurações: menu lateral agrupado no lugar das abas */
.rk-cfg-card { display: grid !important; grid-template-columns: 270px minmax(0, 1fr); align-items: start; background: var(--rk-card) !important; border: 1px solid var(--rk-line) !important; border-radius: 16px !important; overflow: hidden; }
.rk-cfg-card > *:not(.rk-cfg-nav) { grid-column: 2; min-width: 0; }
.rk-cfg-card > form > .card-header, .rk-cfg-card > .card-header { background: transparent !important; border-bottom: 1px solid var(--rk-line) !important; padding: 18px 24px !important; }
.rk-cfg-card .card-title { font-size: 17px !important; font-weight: 700; color: #fff; }
.rk-cfg-card .card-body { padding: 22px 24px !important; }
.rk-cfg-card .card-footer { background: transparent !important; border-top: 1px solid var(--rk-line) !important; padding: 16px 24px !important; }
.rk-cfg-nav { grid-column: 1; grid-row: 1 / span 60; align-self: stretch; background: var(--rk-side, #0f1526); border-right: 1px solid var(--rk-line); padding: 14px 10px 20px; min-height: 100%; }
.rk-cfg-grupo { margin-bottom: 8px; }
.rk-cfg-gtit { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: #5f6987; padding: 10px 12px 6px; }
.rk-cfg-item { display: flex; align-items: center; gap: 12px; padding: 9px 12px; border-radius: 11px; color: #c3c9db !important; text-decoration: none !important; position: relative; transition: background .15s; }
.rk-cfg-item:hover { background: var(--rk-card2); color: #fff !important; }
.rk-cfg-item i { width: 30px; height: 30px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.04); color: #8a93ab; font-size: 13px; flex: 0 0 auto; }
.rk-cfg-item span { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; }
.rk-cfg-item b { font-size: 13.5px; font-weight: 600; }
.rk-cfg-item small { font-size: 11.5px; color: #6f7894; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-cfg-item.active { background: linear-gradient(90deg, rgba(var(--rk-pri-rgb), .24), rgba(var(--rk-pri-rgb), .06)); color: #fff !important; }
.rk-cfg-item.active:before { content: ""; position: absolute; left: -10px; top: 9px; bottom: 9px; width: 3px; border-radius: 3px; background: var(--rk-pri2); }
.rk-cfg-item.active i { background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)); color: #fff; }
.rk-cfg-item.active small { color: #b7aef5; }
@media (max-width: 991px) {
  .rk-cfg-card { grid-template-columns: 1fr; }
  .rk-cfg-card > *:not(.rk-cfg-nav) { grid-column: 1; }
  .rk-cfg-nav { grid-row: auto; display: flex; gap: 6px; overflow-x: auto; padding: 10px; border-right: 0; border-bottom: 1px solid var(--rk-line); scrollbar-width: none; }
  .rk-cfg-grupo { display: contents; }
  .rk-cfg-gtit { display: none; }
  .rk-cfg-item { flex: 0 0 auto; padding: 7px 12px 7px 8px; }
  .rk-cfg-item small { display: none; }
  .rk-cfg-item.active:before { display: none; }
}
/* Botão "Escolher arquivo" no mesmo visual do painel */
input[type=file] { color: var(--rk-mut); font-size: 13px; }
input[type=file]::file-selector-button { margin-right: 10px; padding: 6px 12px; border-radius: 8px; border: 1px solid var(--rk-line); background: var(--rk-card2); color: var(--rk-txt); font-weight: 600; cursor: pointer; }
input[type=file]::file-selector-button:hover { border-color: var(--rk-pri); }
/* v1.4.18: logo do login inteira no menu (quando não há ícone pequeno) */
.rk-brand .rk-brand-full { height: 40px; width: auto; max-width: 100%; object-fit: contain; object-position: left center; margin: 0 !important; float: none !important; max-height: 40px !important; border-radius: 0; }
.sidebar-mini.sidebar-collapse .rk-sidebar:not(:hover) .rk-brand-full { width: 36px; height: 36px; object-fit: cover; object-position: left center; border-radius: 9px; }
.sidebar-mini.sidebar-collapse .rk-sidebar:not(:hover) .rk-brand.brand-link { padding: 0 !important; justify-content: center; }
/* v1.4.18: login com a logo centralizada em cima do formulário */
.rk-auth-side .rk-auth-brand { display: none; }
.rk-auth-side { justify-content: center; }
.rk-auth-side .rk-auth-copy { position: absolute; left: 52px; bottom: 36px; }
.rk-auth-logo-m { display: block; max-height: 72px; max-width: 260px; margin: 0 auto 26px; object-fit: contain; }
.rk-auth-card h1, .rk-auth-sub { text-align: center; }
@media (max-width: 900px) { .rk-auth-logo-m { max-height: 56px; } }
/* v1.4.19: tela inicial — vencendo compacto + desempenho de vendas */
.rk-dash-row > [class*=col-] { display: flex; flex-direction: column; }
.rk-dash-row .card { margin-bottom: 1rem; }
.rk-dash-row .col-xl-8 .card { flex: 1; }
.rk-venc .card-header, .rk-vendas .card-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.rk-venc .card-header::after, .rk-vendas .card-header::after { display: none; }
.rk-venc-qtd { color: var(--rk-pri2); font-size: 12.5px; font-weight: 700; }
.rk-venc .card-body { padding: 4px 18px 12px !important; }
.rk-venc-tab { margin: 0 !important; border: 0 !important; background: transparent !important; }
.rk-venc-tab thead { display: none; }
.rk-venc-tab td { border: 0 !important; border-bottom: 1px solid rgba(255,255,255,.05) !important; padding: 10px 2px !important; vertical-align: middle !important; background: transparent !important; }
.rk-venc-tab tbody tr:last-child td { border-bottom: 0 !important; }
.rk-venc-tab tbody tr:nth-of-type(odd) { background: transparent !important; }
.rk-venc-c { display: flex; align-items: center; gap: 12px; min-width: 0; }
.rk-venc-av { width: 34px; height: 34px; border-radius: 10px; flex: 0 0 auto; background: rgba(var(--rk-pri-rgb), .18); color: var(--rk-pri3, #c4b5fd); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 12px; }
.rk-venc-tx { min-width: 0; text-align: left; }
.rk-venc-tx b { display: block; color: #fff; font-size: 13.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 190px; }
.rk-venc-tx small { font-weight: 700; font-size: 11.5px; color: #a3a9bd; }
.rk-venc-tx small.r { color: #f87171; } .rk-venc-tx small.a { color: #fbbf24; }
.rk-venc-acoes { text-align: right !important; white-space: nowrap; width: 1%; }
.rk-venc-acoes .actions { text-align: right !important; }
.rk-venc .dataTables_wrapper .row:last-child { margin-top: 8px; }
.rk-venc .dataTables_paginate { float: none !important; text-align: right; }
.rk-venc .dataTables_paginate .pagination { justify-content: flex-end; margin: 0; }
.rk-venc .dataTables_empty { color: var(--rk-mut); padding: 18px 0 !important; text-align: center; }
.rk-vendas-per { display: flex; gap: 6px; }
.rk-vendas-per button { border: 0; padding: 5px 11px; border-radius: 9px; font-size: 12px; font-weight: 700; background: var(--rk-card2, #1a2238); color: var(--rk-mut); cursor: pointer; }
.rk-vendas-per button.on { background: var(--rk-pri); color: #fff; }
.rk-vendas-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-bottom: 14px; }
.rk-vendas-kpis small { display: block; color: var(--rk-mut); font-size: 12px; }
.rk-vendas-kpis b { display: block; font-size: 24px; font-weight: 800; color: #fff; line-height: 1.25; }
.rk-vendas-kpis em { font-style: normal; font-size: 12px; font-weight: 700; color: var(--rk-mut); }
.rk-vendas-kpis em.up { color: #22c55e; } .rk-vendas-kpis em.down { color: #f87171; }
.rk-vendas-graf { height: 230px; }
.rk-vendas-svg { width: 100%; height: 230px; display: block; overflow: visible; }
.rk-vendas-svg text { fill: #6f7894; font-size: 11px; font-family: Inter, sans-serif; }
.rk-vendas-svg .gl { stroke: #232b45; }
.rk-vendas-svg .s1 { stop-color: var(--rk-pri2); stop-opacity: .42; } .rk-vendas-svg .s2 { stop-color: var(--rk-pri2); stop-opacity: 0; }
.rk-vendas-svg .l1 { fill: none; stroke: var(--rk-pri2); stroke-width: 2.5; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.rk-vendas-svg .l2 { fill: none; stroke: #22c55e; stroke-width: 2; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.rk-vendas-svg .pt { fill: var(--rk-pri2); stroke: #0f1424; stroke-width: 2; }
.rk-vendas-msg { height: 100%; display: flex; align-items: center; justify-content: center; gap: 8px; color: var(--rk-mut); font-size: 13.5px; }
.rk-vendas-leg { display: flex; gap: 18px; margin-top: 8px; font-size: 12.5px; color: #a3a9bd; }
.rk-vendas-leg i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; }
.rk-vendas-leg .l1 { background: var(--rk-pri2); } .rk-vendas-leg .l2 { background: #22c55e; }
@media (max-width: 767px) { .rk-vendas-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rk-vendas-kpis b { font-size: 21px; } }
/* v1.4.21: cor do grupo de revenda por nível */
.badge.rk-grp { font-weight: 700; padding: 4px 9px; border-radius: 20px; border: 1px solid transparent; }
.badge.rk-grp-reseller { background: rgba(34,197,94,.16) !important; color: #4ade80 !important; border-color: rgba(34,197,94,.35); }
.badge.rk-grp-master { background: rgba(59,130,246,.16) !important; color: #60a5fa !important; border-color: rgba(59,130,246,.35); }
.badge.rk-grp-ultra { background: rgba(239,68,68,.16) !important; color: #f87171 !important; border-color: rgba(239,68,68,.35); }
.badge.rk-grp-admin, .badge.rk-grp-partner { background: rgba(var(--rk-pri-rgb),.18) !important; color: var(--rk-pri3, #c4b5fd) !important; border-color: rgba(var(--rk-pri-rgb),.4); }
.badge.rk-grp-outro { background: rgba(148,163,184,.14) !important; color: #cbd5e1 !important; }
/* v1.4.21: voltar para a conta de origem (após "logar como revendedor") */
.rk-voltar { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-radius: 11px; font-weight: 700; font-size: 13px; color: #fde68a !important; background: rgba(245,158,11,.14); border: 1px solid rgba(245,158,11,.45); margin-right: 8px; white-space: nowrap; }
.rk-voltar:hover { background: rgba(245,158,11,.24); }
/* v1.4.21: suporte (tickets) */
.rk-chat .direct-chat-messages { height: calc(100vh - 360px); min-height: 320px; padding: 16px 18px; }
.rk-chat .direct-chat-msg { margin-bottom: 16px; }
.rk-chat .direct-chat-infos { font-size: 12px; margin-bottom: 4px; }
.rk-chat .direct-chat-name { color: #fff; font-weight: 700; }
.rk-chat .direct-chat-timestamp { color: var(--rk-mut); }
.rk-chat-av { width: 40px !important; height: 40px !important; border-radius: 12px !important; display: inline-flex !important; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; color: #fff; background: #334155; float: left; }
.rk-chat-av.adm { background: linear-gradient(135deg, var(--rk-pri), var(--rk-pri2)); }
.rk-chat .right .rk-chat-av { float: right; }
.rk-chat .direct-chat-text { background: var(--rk-card2, #1a2238) !important; border: 1px solid var(--rk-line) !important; color: var(--rk-txt, #e6e9f2) !important; border-radius: 14px; padding: 10px 14px; margin: 4px 0 0 52px; line-height: 1.5; }
.rk-chat .right .direct-chat-text { background: rgba(var(--rk-pri-rgb), .22) !important; border-color: rgba(var(--rk-pri-rgb), .45) !important; margin: 4px 52px 0 0; }
.rk-chat .direct-chat-text::before, .rk-chat .direct-chat-text::after { display: none !important; }
.rk-chat .card-footer { background: transparent; border-top: 1px solid var(--rk-line); }
.select2-container--bootstrap4 .select2-selection { background: var(--rk-card2, #1a2238) !important; border-color: var(--rk-line) !important; color: var(--rk-txt, #e6e9f2) !important; border-radius: 11px !important; min-height: 40px; }
.select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered { color: var(--rk-txt, #e6e9f2) !important; line-height: 38px !important; padding-left: 14px !important; }
.select2-container--bootstrap4 .select2-dropdown { background: var(--rk-card2, #1a2238) !important; border-color: var(--rk-line) !important; color: var(--rk-txt, #e6e9f2) !important; }
.select2-container--bootstrap4 .select2-results__option--highlighted { background: var(--rk-pri) !important; color: #fff !important; }
.select2-container--bootstrap4 .select2-search__field { background: var(--rk-bg) !important; color: #fff !important; border-color: var(--rk-line) !important; }
.dataTables_length label { display: inline-flex !important; align-items: center; gap: 8px; font-weight: 600; white-space: nowrap; }
.dataTables_length select { width: auto !important; min-width: 70px; display: inline-block !important; }
/* v1.4.23: janelas de recibo (renovação, recarga, nova revenda) */
.rkr-bg{position:fixed;inset:0;background:rgba(5,8,16,.74);backdrop-filter:blur(3px);z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;font-family:Inter,system-ui,sans-serif}
.rkr{width:100%;max-width:440px;background:#141a2e;border:1px solid #232b45;border-radius:20px;color:#e6e9f2;box-shadow:0 30px 80px rgba(0,0,0,.55);overflow:hidden;position:relative}
.rkr-x{position:absolute;top:14px;right:14px;background:#1a2238;border:0;color:#8a93ab;width:32px;height:32px;border-radius:9px;font-size:20px;line-height:1;cursor:pointer}
.rkr-top{text-align:center;padding:26px 22px 14px;background:radial-gradient(260px 120px at 50% 0,rgba(34,197,94,.18),transparent 70%)}
.rkr-top.p{background:radial-gradient(260px 120px at 50% 0,rgba(124,108,255,.25),transparent 70%)}
.rkr-ic{width:58px;height:58px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;font-size:24px;background:rgba(34,197,94,.16);color:#22c55e;box-shadow:0 0 0 8px rgba(34,197,94,.06)}
.rkr-top.p .rkr-ic{background:rgba(124,108,255,.18);color:#a78bfa;box-shadow:0 0 0 8px rgba(124,108,255,.07)}
.rkr-top h3{margin:0;font-size:18px;font-weight:800;color:#fff}
.rkr-top p{margin:4px 0 0;color:#8a93ab;font-size:13px}
.rkr-big{margin:14px auto 0;display:inline-flex;align-items:baseline;gap:8px;padding:8px 16px;border-radius:14px;background:#0f1424;border:1px solid #232b45}
.rkr-big b{font-size:26px;font-weight:800;color:#fff}.rkr-big small{color:#8a93ab;font-size:12.5px}
.rkr-rows{margin:6px 18px 0;border:1px solid #232b45;border-radius:14px;overflow:hidden}
.rkr-row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid #1d2540;font-size:13.5px}
.rkr-row:last-child{border-bottom:0}
.rkr-row i.l{width:28px;height:28px;border-radius:8px;background:#1a2238;color:#a78bfa;display:grid;place-items:center;font-size:12px;flex:none}
.rkr-row span{color:#8a93ab;flex:none}
.rkr-row b{margin-left:auto;color:#fff;font-weight:700;text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rkr-row b.g{color:#4ade80}.rkr-row b.pw{font-family:ui-monospace,Menlo,monospace;letter-spacing:.03em}
.rkr-row .cp{background:#1a2238;border:0;color:#8a93ab;width:28px;height:28px;border-radius:8px;cursor:pointer;flex:none;font-size:12px}
.rkr-msg{margin:12px 18px 0;font-size:12px;color:#6f7894;display:flex;align-items:center;gap:6px}
.rkr-msg a{color:#a78bfa;font-weight:700;margin-left:auto}
.rkr-f{display:flex;gap:10px;padding:14px 18px 18px}
.rkr-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:12px;font-weight:700;font-size:14px;border:0;cursor:pointer;text-decoration:none}
.rkr-btn.sec{background:#1a2238;color:#fff;border:1px solid #2c3552}
.rkr-btn.wa{background:#22c55e;color:#04210f;box-shadow:0 10px 24px rgba(34,197,94,.28)}
.rkr-btn.pri{background:linear-gradient(135deg,var(--rk-pri,#7c6cff),var(--rk-pri2,#a78bfa));color:#fff;box-shadow:0 10px 24px rgba(124,108,255,.3)}
.rkr-msg a{cursor:pointer;text-decoration:none}.rkr-txt{display:block;width:calc(100% - 36px);margin:10px 18px 0;min-height:160px;background:#0f1424;color:#e6e9f2;border:1px solid #232b45;border-radius:12px;padding:12px 14px;font:13.5px/1.5 Inter,system-ui,sans-serif;resize:vertical;scrollbar-width:thin;scrollbar-color:#2c3552 transparent}.rkr-txt[hidden]{display:none}.rkr-txt:focus{outline:none;border-color:var(--rk-pri,#7c6cff)}@media(max-width:420px){.rkr-f{flex-direction:column}}
/* v1.4.23: janelas de confirmação (bootbox) no padrão do painel */
.bootbox.modal .modal-dialog{max-width:460px;margin:auto;min-height:calc(100% - 3.5rem);display:flex;align-items:center}
.bootbox .modal-content{background:#141a2e!important;border:1px solid #232b45!important;border-radius:18px!important;box-shadow:0 30px 80px rgba(0,0,0,.55);overflow:hidden;width:100%}
.bootbox .modal-header{padding:16px 18px!important;border-bottom:1px solid #232b45!important;align-items:center}
.bootbox .modal-title{font-size:16px!important;font-weight:800!important;line-height:1.35!important;color:#fff;font-family:Inter,sans-serif}
.bootbox .modal-header .close,.bootbox .bootbox-close-button{margin:0 0 0 12px!important;padding:0!important;width:32px;height:32px;border-radius:9px;background:#1a2238!important;color:#8a93ab!important;opacity:1!important;font-size:20px!important;text-shadow:none!important;flex:none}
.bootbox .modal-body{padding:16px 18px!important;font-size:14px;color:#c3c9db}
.bootbox .modal-body .form-group{margin-bottom:12px}
.bootbox .modal-body .form-group.col-md-6,.bootbox .modal-body .form-group.row{padding:0!important;margin-left:0!important;margin-right:0!important;max-width:100%;flex:none}
.bootbox .modal-body label{font-size:12.5px;font-weight:700;color:#c9cee0;margin-bottom:6px}
.bootbox .modal-body .form-control{height:42px;border-radius:11px!important}
.bootbox .modal-body span > b{display:block;margin-top:10px;padding:10px 12px;border-radius:11px;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);color:#fde68a;font-weight:600;font-size:13px}

.bootbox .modal-footer{padding:12px 18px 18px!important;border-top:0!important;gap:8px;flex-wrap:wrap}
.bootbox .modal-footer>*{margin:0!important}
.bootbox .modal-footer .btn{height:42px;padding:0 16px;border-radius:12px!important;font-weight:700;font-size:13.5px;flex:1 1 auto}
.bootbox .modal-footer .btn-secondary{background:#1a2238!important;border:1px solid #2c3552!important;color:#fff!important}
.bootbox .modal-footer .btn-info,.bootbox .modal-footer .btn-primary{background:linear-gradient(135deg,var(--rk-pri,#7c6cff),var(--rk-pri2,#a78bfa))!important;border:0!important;color:#fff!important}
.bootbox .modal-footer .btn-danger{background:#ef4444!important;border:0!important}
.bootbox .modal-footer .btn-outline-info,.bootbox .modal-footer .btn-outline-primary{background:transparent!important;border:1px solid rgba(124,108,255,.55)!important;color:#c4b5fd!important}
.bootbox .modal-body [class*=col-]{padding-left:0!important;padding-right:0!important;max-width:100%;flex:0 0 100%}.bootbox .modal-body .input-group{flex-wrap:nowrap}.modal-backdrop.show{opacity:.72!important;background:#05080f}
/* mensagem rápida dentro da janela */
.bootbox .fast-message{max-height:58vh;overflow:auto;background:#0f1424;border:1px solid #232b45;border-radius:12px;padding:12px 14px;font-size:13.5px;line-height:1.6;color:#e6e9f2;word-break:break-word;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:#2c3552 transparent}
.bootbox .modal-body:has(.fast-message){padding-top:44px!important}
.bootbox .modal-content>.bootbox-close-button,.bootbox .modal-body>.bootbox-close-button{position:absolute;top:12px;right:14px;z-index:2}
/* v1.4.25: estatística de cliente */
.rk-st h1{font-size:24px;font-weight:800;margin:0;color:#fff}.rk-st-head p{color:var(--rk-mut);margin:4px 0 0;font-size:13.5px}
.rk-st-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.rk-st-busca{display:flex;align-items:center;gap:10px;background:var(--rk-card);border:1px solid var(--rk-line);border-radius:13px;padding:5px 5px 5px 14px;min-width:380px}
.rk-st-busca i{color:var(--rk-mut)}.rk-st-busca input{flex:1;background:transparent;border:0;color:#fff;font-size:14px;outline:0}
.rk-st-busca>button{border:0;background:linear-gradient(135deg,var(--rk-pri),var(--rk-pri2));color:#fff;font-weight:700;border-radius:10px;padding:8px 16px}
.rk-st-cli{display:flex;align-items:center;gap:14px;background:var(--rk-card);border:1px solid var(--rk-line);border-radius:16px;padding:14px 16px;margin-bottom:12px;flex-wrap:wrap}
.rk-st-av{width:44px;height:44px;border-radius:13px;background:rgba(var(--rk-pri-rgb),.2);color:#c4b5fd;display:grid;place-items:center;font-weight:800}
.rk-st-cli-t b{display:block;color:#fff;font-size:16px}.rk-st-cli-t small{color:var(--rk-mut);font-size:12.5px}
.rk-st-badge{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:20px;background:var(--rk-card2);color:#c3c9db}.rk-st-badge.ok{background:rgba(34,197,94,.14);color:#4ade80}
.rk-st-cli-b{margin-left:auto;display:flex;gap:8px}
.rk-st-btn{border:1px solid var(--rk-line);background:var(--rk-card2);color:#fff;font-weight:700;font-size:13px;border-radius:11px;padding:8px 14px;display:inline-flex;gap:8px;align-items:center}
.rk-st-btn.red{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.4);color:#fca5a5}
.rk-st-alert{display:flex;gap:14px;align-items:flex-start;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.35);border-radius:14px;padding:12px 16px;margin-bottom:12px}
.rk-st-alert>i{color:#f87171;font-size:18px;margin-top:2px}.rk-st-alert b{display:block;color:#fecaca;font-size:14px}.rk-st-alert span{color:#d1b4b4;font-size:13px}
.rk-st-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}
.rk-st-kpis>div{background:var(--rk-card);border:1px solid var(--rk-line);border-radius:14px;padding:12px 16px}
.rk-st-kpis small{color:var(--rk-mut);font-size:12px}.rk-st-kpis b{display:block;font-size:26px;font-weight:800;color:#fff;line-height:1.25}.rk-st-kpis b.r{color:#f87171}.rk-st-kpis b.g{color:#4ade80}.rk-st-kpis em{font-style:normal;color:#6f7894;font-size:12px}
.rk-st-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px}
.rk-st-card{background:var(--rk-card);border:1px solid var(--rk-line);border-radius:16px;overflow:hidden}
.rk-st-ch{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--rk-line)}.rk-st-ch b{color:#fff;font-size:14px}.rk-st-ch span{color:var(--rk-mut);font-size:12px}
.rk-st-tab{width:100%;border-collapse:collapse;font-size:13px}.rk-st-tab th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#6f7894;font-weight:800;padding:10px 14px;text-align:left}
.rk-st-tab td{padding:10px 14px;border-top:1px solid rgba(255,255,255,.05);color:#c3c9db;vertical-align:middle}.rk-st-c{text-align:center}
.rk-st-dev{display:flex;align-items:center;gap:11px}.rk-st-di{width:34px;height:34px;border-radius:10px;background:var(--rk-card2);color:#a78bfa;display:grid;place-items:center;flex:none}
.rk-st-dev b,.rk-st-ip{display:block;color:#fff;font-size:13px}.rk-st-dev small,.rk-st-sm{color:var(--rk-mut);font-size:11.5px}
.rk-st-dev em{font-style:normal;font-size:9.5px;font-weight:800;background:rgba(251,191,36,.16);color:#fbbf24;padding:1px 6px;border-radius:6px;margin-left:4px}
.rk-st-on{display:inline-flex;align-items:center;gap:6px;color:#4ade80;font-weight:700;font-size:12px}.rk-st-on i{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.18)}
.rk-st-bars{display:flex;align-items:flex-end;gap:4px;height:110px;padding:14px 16px 0}.rk-st-bars i{flex:1;background:rgba(var(--rk-pri-rgb),.55);border-radius:4px 4px 0 0}.rk-st-bars i.r{background:#ef4444}
.rk-st-leg{display:flex;gap:14px;padding:10px 16px 6px;font-size:11.5px;color:var(--rk-mut)}.rk-st-leg i{display:inline-block;width:9px;height:9px;border-radius:3px;background:rgba(var(--rk-pri-rgb),.7);margin-right:5px}.rk-st-leg i.r{background:#ef4444}
.rk-st-loc{padding:6px 16px 14px}.rk-st-loc div{display:grid;grid-template-columns:110px 1fr 36px;align-items:center;gap:10px;font-size:12.5px;padding:5px 0}.rk-st-loc span{color:#c3c9db}.rk-st-loc i{height:6px;border-radius:6px;background:linear-gradient(90deg,var(--rk-pri),var(--rk-pri2))}.rk-st-loc b{color:#fff;text-align:right}
.rk-st-intro{color:var(--rk-mut);font-size:13.5px;margin:-4px 0 12px}
.rk-st-busca{display:flex;align-items:center;gap:10px;background:var(--rk-card);border:1px solid var(--rk-line);border-radius:13px;padding:5px 5px 5px 14px;max-width:620px;margin-bottom:14px}
.rk-st-busca i{color:var(--rk-mut)}.rk-st-busca input{flex:1;min-width:0;background:transparent;border:0;color:#fff;font-size:14px;outline:0;height:36px}
.rk-st-busca select{background:var(--rk-card2);border:1px solid var(--rk-line);color:#fff;border-radius:9px;height:36px;padding:0 8px}
.rk-st-busca>button{border:0;background:linear-gradient(135deg,var(--rk-pri),var(--rk-pri2));color:#fff;font-weight:700;border-radius:10px;padding:0 18px;height:36px}
.rk-st-vazio{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--rk-mut);background:var(--rk-card);border:1px dashed var(--rk-line);border-radius:16px;padding:46px 20px;text-align:center;font-size:14px}
.rk-st-vazio i{font-size:26px;color:#3b4670}.rk-st-vazio.sm{border:0;background:transparent;padding:30px 10px}
.rk-st-badge.off{background:rgba(239,68,68,.14);color:#fca5a5}
.rk-st-btn{text-decoration:none!important}
.rk-st-alerta{display:flex;gap:14px;align-items:flex-start;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.35);border-radius:14px;padding:12px 16px;margin-bottom:12px}
.rk-st-alerta>i{color:#f87171;font-size:18px;margin-top:2px}.rk-st-alerta b{display:block;color:#fecaca;font-size:14px}.rk-st-alerta span{color:#d1b4b4;font-size:13px}
.rk-st-aviso{display:flex;gap:14px;align-items:flex-start;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.35);border-radius:14px;padding:12px 16px;margin-bottom:12px}
.rk-st-aviso>i{color:#60a5fa;font-size:18px;margin-top:2px}.rk-st-aviso b{display:block;color:#bfdbfe;font-size:14px}.rk-st-aviso span{color:#a9bad3;font-size:13px}
.rk-st-bars i.z{background:#232b45}
.rk-st-ch.bt{margin-top:14px;border-top:1px solid var(--rk-line)}
.rk-st-loc div{grid-template-columns:130px 1fr 36px}.rk-st-loc span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1100px){.rk-st-grid{grid-template-columns:1fr}.rk-st-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.rk-st-busca{flex-wrap:wrap}.rk-st-busca input{flex-basis:100%}.rk-st-cli-b{margin-left:0;width:100%}.rk-st-tab th:nth-child(3),.rk-st-tab td:nth-child(3){display:none}}
.rk-st-busca{position:relative}
.rk-st-busca .rk-st-sug{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:#141a2e;border:1px solid #2c3552;border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.45);padding:6px;max-height:320px;overflow:auto}
.rk-st-busca .rk-st-sug button{display:flex;height:auto;font-weight:400;box-shadow:none;justify-content:space-between;align-items:center;gap:10px;width:100%;border:0;background:transparent;color:#fff;text-align:left;padding:9px 12px;border-radius:9px;cursor:pointer}
.rk-st-busca .rk-st-sug button:hover,.rk-st-busca .rk-st-sug button.on{background:rgba(var(--rk-pri-rgb),.2)}
.rk-st-sug button b{font-size:13.5px}.rk-st-sug button small{color:var(--rk-mut);font-size:11.5px}.rk-st-sug button small.r{color:#f87171}
.rk-st-sug-v{padding:12px;color:var(--rk-mut);font-size:13px;text-align:center}

.rk-st-sug[hidden]{display:none!important}
/* v1.4.28: monitoramento (histórico do painel, tentativas, suspeitos, sininho) */
.rk-st-srcw{display:flex;justify-content:flex-end;margin:-6px 0 10px}
.rk-st-src{display:inline-flex;gap:8px;align-items:center;font-size:12.5px;font-weight:700;color:#a78bfa;background:rgba(124,108,255,.12);border:1px solid rgba(124,108,255,.35);padding:6px 12px;border-radius:20px}
.rk-st-src.x{color:#93c5fd;background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.35)}
.rk-st-mot{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:20px;background:#1a2238;color:#c3c9db;white-space:nowrap}.rk-st-mot.r{background:rgba(239,68,68,.14);color:#fca5a5}.rk-st-mot.a{background:rgba(245,158,11,.14);color:#fcd34d}
.rk-sp-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.rk-sp-f{display:flex;gap:8px;align-items:center}.rk-sp-f select{background:var(--rk-card2);border:1px solid var(--rk-line);color:#fff;border-radius:10px;height:36px;padding:0 10px}
.rk-sp-seg{display:flex;gap:4px}.rk-sp-seg button{border:0;padding:8px 13px;border-radius:9px;font-size:12.5px;font-weight:700;background:var(--rk-card2);color:var(--rk-mut);cursor:pointer}.rk-sp-seg button.on{background:var(--rk-pri);color:#fff}
.rk-sp-r{color:#f87171!important}
.rk-sp-risco{font-size:11.5px;font-weight:800;padding:4px 10px;border-radius:20px}.rk-sp-risco.alto{background:rgba(239,68,68,.16);color:#fca5a5}.rk-sp-risco.medio{background:rgba(245,158,11,.16);color:#fcd34d}.rk-sp-risco.baixo{background:rgba(34,197,94,.14);color:#86efac}
.rk-mon-t{font-size:15px;font-weight:800;color:#fff;display:flex;gap:8px;align-items:center}.rk-mon-t i{color:var(--rk-pri2)}
.dropdown-menu.rk-sino{width:380px;max-width:calc(100vw - 24px);padding:0!important;background:#141a2e!important;border:1px solid #2c3552!important;border-radius:16px!important;box-shadow:0 24px 60px rgba(0,0,0,.55);overflow:hidden}
.rk-sino-h{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #232b45}.rk-sino-h b{color:#fff}.rk-sino-h a{color:#a78bfa;font-size:12.5px;font-weight:700}
.rk-sino-l{max-height:360px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2c3552 transparent}
.rk-sino-i{display:flex;gap:12px;padding:11px 16px;border-bottom:1px solid #1d2540;text-decoration:none!important}.rk-sino-i:hover{background:#1a2238}
.rk-sino-i>i{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;flex:none;background:#1a2238;color:#a78bfa}.rk-sino-i>i.r{background:rgba(239,68,68,.14);color:#f87171}.rk-sino-i>i.a{background:rgba(245,158,11,.14);color:#fbbf24}
.rk-sino-i span b{display:block;color:#c3c9db;font-weight:500;font-size:13px;line-height:1.4}.rk-sino-i.novo span b{color:#fff;font-weight:700}.rk-sino-i small{color:#6f7894;font-size:11.5px}
.rk-sino-v{padding:24px 16px;text-align:center;color:var(--rk-mut);font-size:13px;display:flex;flex-direction:column;gap:8px;align-items:center}
.rk-sino-f{display:flex;justify-content:space-around;padding:10px 12px}.rk-sino-f a{color:#a78bfa;font-size:12.5px;font-weight:700;display:inline-flex;gap:6px;align-items:center}
/* v1.4.29: controles nativos no tema escuro (setinhas dos campos de número, listas, calendário) */
:root, body.dark-mode, .form-control, select, input { color-scheme: dark; }
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none !important; appearance: none !important; margin: 0; display: none; }
input[type=number] { -moz-appearance: textfield !important; appearance: textfield !important; }

/* v1.4.31: olho da senha nas listas */
.rk-pw { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.rk-pw-t { letter-spacing: 2px; color: #9aa3b8; }
.rk-pw-t.rk-pw-on { letter-spacing: 0; color: inherit; }
.rk-pw-b, .rk-pw-h { background: none; border: 0; color: #8b8fa8; padding: 2px 4px; cursor: pointer; line-height: 1; }
.rk-pw-b:hover, .rk-pw-h:hover { color: #a78bfa; }
.rk-pw-h { color: #a78bfa; margin-left: 4px; }
.rk-pw-b:focus, .rk-pw-h:focus { outline: none; }

/* v1.4.32: migração em massa */
#mgApp .mg-card { background: var(--rk-card, #161d33); border: 1px solid rgba(255,255,255,.07); border-radius: 14px; padding: 18px; margin-bottom: 18px; }
#mgApp .mg-card h4 { font-size: 15px; font-weight: 700; margin: 0 0 4px; }
#mgApp .mg-card h4 > i { color: #a78bfa; }
#mgApp .mg-sub { color: #8b93a7; font-size: 12.5px; margin-bottom: 12px; }
#mgApp .mg-ta { width: 100%; height: 150px; background: #0f1528; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; color: #cdd3e1; font: 12.5px/1.7 ui-monospace, Consolas, monospace; padding: 10px 12px; resize: vertical; white-space: pre; overflow: auto; }
#mgApp .mg-ta:focus { outline: none; border-color: rgba(139,92,246,.6); }
#mgApp .mg-cnt { display: flex; justify-content: space-between; color: #8b93a7; font-size: 12px; margin: 8px 0 14px; }
#mgApp .mg-cnt b { color: #e5e7eb; }
#mgApp .mg-foot { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; }
#mgApp .mg-rules { color: #8b93a7; font-size: 12px; margin: 0; padding-left: 18px; display: flex; flex-wrap: wrap; gap: 4px 26px; }
#mgApp .mg-tbl { width: 100%; font-size: 13px; }
#mgApp .mg-tbl th { color: #8b93a7; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; padding: 8px; border-bottom: 1px solid rgba(255,255,255,.07); white-space: nowrap; }
#mgApp .mg-tbl td { padding: 10px 8px; border-bottom: 1px solid rgba(255,255,255,.05); vertical-align: middle; }
#mgApp .mg-ok { color: #34d399; font-weight: 600; }
#mgApp .mg-er { color: #f87171; font-weight: 600; }
#mgApp .mg-wa { color: #fbbf24; font-weight: 600; }
#mgApp .mg-host { color: #8b93a7; font-size: 11.5px; }
#mgApp .mg-link { font-size: 11.5px; margin-left: 6px; color: #a78bfa; }
#mgApp .mg-sum { display: flex; gap: 12px; margin: 16px 0 4px; }
#mgApp .mg-box { flex: 1; background: #0f1528; border: 1px solid rgba(255,255,255,.07); border-radius: 12px; padding: 12px 14px; }
#mgApp .mg-box small { color: #8b93a7; font-size: 11.5px; display: block; }
#mgApp .mg-box b { font-size: 20px; }
#mgApp .mg-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 14px; flex-wrap: wrap; }
#mgApp .mg-chk { accent-color: #8b5cf6; width: 15px; height: 15px; cursor: pointer; }
#mgApp .mg-prog { height: 6px; background: #0f1528; border-radius: 6px; overflow: hidden; margin: 4px 0 14px; }
#mgApp .mg-prog i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #8b5cf6, #a78bfa); transition: width .3s; }
@media (max-width: 640px) { #mgApp .mg-sum { flex-direction: column; } }

/* v1.4.33: alterar vencimento */
.vc-modal .modal-dialog { max-width: 520px; }
.vc .vc-at { display: flex; justify-content: space-between; background: #0f1528; border: 1px solid rgba(255,255,255,.07); border-radius: 12px; padding: 12px 14px; margin-bottom: 14px; }
.vc .vc-at small, .vc .vc-sum small { color: #8b93a7; font-size: 11.5px; display: block; }
.vc .vc-at b { font-size: 16px; }
.vc .vc-l { color: #8b93a7; font-size: 12px; margin-bottom: 6px; display: block; }
.vc .vc-q { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 14px; }
.vc .vc-q button { flex: 1; min-width: 70px; background: #0f1528; border: 1px solid rgba(255,255,255,.1); color: #cdd3e1; border-radius: 10px; padding: 8px 0; font-weight: 600; font-size: 13px; cursor: pointer; }
.vc .vc-q button:hover { border-color: rgba(139,92,246,.6); }
.vc .vc-q button.on { border-color: #8b5cf6; background: rgba(139,92,246,.18); color: #fff; }
.vc .vc-in { width: 100%; background: #0f1528; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; color: #fff; padding: 9px 12px; font-size: 14px; }
.vc .vc-in:focus { outline: none; border-color: #8b5cf6; }
.vc .vc-in::-webkit-calendar-picker-indicator { filter: invert(.8); cursor: pointer; }
.vc .vc-sum { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 14px 0 8px; }
.vc .vc-sum div { background: #0f1528; border: 1px solid rgba(255,255,255,.07); border-radius: 12px; padding: 10px 12px; }
.vc .vc-sum b { font-size: 18px; }
.vc .vc-note { color: #8b93a7; font-size: 12px; }
.vc .vc-note i { color: #a78bfa; }

/* v1.4.34: WhatsApp sem as imagens de bandeira: só o número */
body.rk-sem-bandeira .iti__flag-container { display: none !important; }
body.rk-sem-bandeira .iti input, body.rk-sem-bandeira .iti input[type=tel] { padding-left: 12px !important; }
.iti { width: 100%; }

/* v1.4.34: ranking "Clientes com mais aparelhos" */
.rk-tp { margin-top: 18px; }
.rk-tp-h { display: flex; justify-content: space-between; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 12px; }
.rk-tp-h h4 { margin: 0; font-size: 15px; font-weight: 700; }
.rk-tp-h h4 i { color: #f87171; }
.rk-tp-h small { color: var(--rk-mut, #8b93a7); }
.rk-tp-f { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.rk-tp-seg { display: flex; gap: 6px; }
.rk-tp-seg button { padding: 6px 12px; border-radius: 8px; border: 1px solid rgba(255,255,255,.1); background: transparent; color: #cdd3e1; font-size: 12.5px; cursor: pointer; }
.rk-tp-seg button.on { background: rgba(139,92,246,.18); border-color: #8b5cf6; color: #fff; }
.rk-tp-dd { position: relative; }
.rk-tp-sel { background: #0f1528; border: 1px solid rgba(255,255,255,.12); color: #e5e7eb; border-radius: 8px; padding: 6px 10px; font-size: 12.5px; display: flex; gap: 8px; align-items: center; cursor: pointer; }
.rk-tp-sel b { color: #a78bfa; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rk-tp-sel i { color: #8b93a7; font-size: 11px; }
.rk-tp-menu { display: none; position: absolute; right: 0; top: calc(100% + 6px); z-index: 30; background: #141b30; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; width: 270px; box-shadow: 0 18px 40px rgba(0,0,0,.45); padding: 6px; }
.rk-tp-dd.on .rk-tp-menu { display: block; }
.rk-tp-menu input { width: 100%; background: #0f1528; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; color: #cdd3e1; padding: 6px 9px; font-size: 12.5px; margin-bottom: 4px; outline: none; }
.rk-tp-ops { max-height: 300px; overflow: auto; }
.rk-tp-op { padding: 7px 10px; border-radius: 7px; font-size: 12.5px; color: #cdd3e1; display: flex; justify-content: space-between; gap: 8px; cursor: pointer; }
.rk-tp-op:hover { background: rgba(255,255,255,.05); }
.rk-tp-op.on { background: rgba(139,92,246,.18); color: #fff; }
.rk-tp-op small { color: #8b93a7; }
.rk-tp-op em { color: #8b93a7; font-style: normal; font-size: 11px; }
.rk-tp-nada { color: #8b93a7; font-size: 12px; padding: 8px 10px; }
.rk-tp-tab { width: 100%; font-size: 13px; }
.rk-tp-tab th { color: #8b93a7; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; padding: 8px; border-bottom: 1px solid rgba(255,255,255,.07); white-space: nowrap; }
.rk-tp-tab td { padding: 9px 8px; border-bottom: 1px solid rgba(255,255,255,.05); vertical-align: middle; white-space: nowrap; }
.rk-tp-tab .n { color: #8b93a7; width: 28px; }
.rk-tp-tab .m { color: #8b93a7; font-size: 12px; }
.rk-tp-tab b.r { color: #f87171; } .rk-tp-tab b.y { color: #fbbf24; }
.rk-tp-tab .ap i { display: inline-block; height: 6px; border-radius: 4px; background: linear-gradient(90deg, #f87171, #fb923c); vertical-align: middle; margin-left: 8px; }
.rk-tp-t { font-size: 10.5px; color: #fbbf24; border: 1px solid rgba(251,191,36,.4); border-radius: 6px; padding: 0 5px; }
.rk-tp-ver { padding: 2px 12px !important; }
.rk-tp-more { text-align: center; color: #8b93a7; font-size: 12.5px; margin-top: 10px; }
.rk-tp-voltar { margin: 0 0 12px; font-size: 13px; }
.rk-tp-voltar a { color: #a78bfa; }

/* v1.4.35: aviso amarelo quando nunca passou das telas ao mesmo tempo */
.rk-st-alerta.aviso { background: rgba(251,191,36,.08) !important; border-color: rgba(251,191,36,.35) !important; }
.rk-st-alerta.aviso > i, .rk-st-alerta.aviso b { color: #fbbf24 !important; }

/* v1.4.36: janela de PIX (LynxPix / UpdePix) */
.rkpix-bg { position: fixed; inset: 0; z-index: 2000; background: rgba(5,8,18,.72); display: flex; align-items: center; justify-content: center; padding: 16px; }
.rkpix { position: relative; width: 100%; max-width: 400px; background: #141b30; border: 1px solid rgba(255,255,255,.08); border-radius: 18px; padding: 24px; color: #e5e7eb; box-shadow: 0 30px 80px rgba(0,0,0,.5); text-align: center; max-height: 94vh; overflow: auto; }
.rkpix h3 { font-size: 18px; font-weight: 700; margin: 0 0 4px; }
.rkpix h3 i { color: #a78bfa; }
.rkpix-x { position: absolute; top: 10px; right: 12px; background: none; border: 0; color: #8b93a7; font-size: 24px; line-height: 1; cursor: pointer; }
.rkpix-sub { color: #8b93a7; font-size: 13px; margin: 0 0 14px; }
.rkpix-qr { width: 220px; height: 220px; background: #fff; border-radius: 12px; padding: 8px; margin: 4px auto 14px; display: block; object-fit: contain; }
.rkpix-l { display: block; text-align: left; font-size: 12px; color: #8b93a7; margin: 0 0 6px; }
.rkpix-code { font-family: ui-monospace, Consolas, monospace; font-size: 12px; resize: none; }
.rkpix-st { margin-top: 14px; padding: 10px; border-radius: 10px; background: rgba(139,92,246,.1); color: #c4b5fd; font-size: 13px; }
.rkpix-st.fim { background: rgba(251,191,36,.1); color: #fbbf24; }
.rkpix-hint { display: block; color: #8b93a7; font-size: 11.5px; margin-top: 10px; }
.rkpix-load, .rkpix-erro { padding: 24px 6px; color: #cdd3e1; }
.rkpix-erro i { color: #f87171; font-size: 28px; }
.rkpix-pago span { width: 64px; height: 64px; border-radius: 50%; background: rgba(52,211,153,.15); color: #34d399; display: inline-flex; align-items: center; justify-content: center; font-size: 28px; margin-bottom: 10px; }
.rkpix-pago p { color: #cdd3e1; }

/* v1.4.37: estatística mais enxuta */
.rk-st-vermais { display: block; text-align: center; padding: 10px; font-size: 12.5px; color: #a78bfa; border-top: 1px solid rgba(255,255,255,.05); }
.rk-st-vezes { display: inline-block; min-width: 34px; padding: 1px 7px; border-radius: 8px; background: rgba(248,113,113,.15); color: #fca5a5; font-weight: 700; font-size: 12px; }
.rk-st-mais-ip { font-size: 11px; color: #a78bfa; background: rgba(139,92,246,.15); border-radius: 6px; padding: 0 6px; margin-left: 4px; cursor: help; white-space: nowrap; }

/* v1.4.38: DNS da revenda — onde usar */
.rk-dns-op { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; margin-bottom: 8px; cursor: pointer; font-weight: 400 !important; }
.rk-dns-op:has(input:checked), .rk-dns-op.on { border-color: #8b5cf6; background: rgba(139,92,246,.1); }
.rk-dns-op input { accent-color: #8b5cf6; margin-top: 4px; }
.rk-dns-op b { display: block; font-size: 13.5px; }
.rk-dns-op small { color: #8b93a7; }
.rk-enc-dns { display: inline-block; background: rgba(139,92,246,.15); color: #c4b5fd; border-radius: 7px; padding: 2px 8px; font-size: 12px; font-family: ui-monospace, Consolas, monospace; white-space: nowrap; }
.rk-enc-dns.meu { background: rgba(52,211,153,.12); color: #6ee7b7; }
.rk-enc-url { display: inline-block; max-width: 380px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; vertical-align: middle; font-family: ui-monospace, Consolas, monospace; font-size: 12px; color: #cdd3e1; }

/* v1.4.43: três listas de vencimento na tela inicial */
.rk-vl-row > [class*=col-] { display: flex; flex-direction: column; }
.rk-vl { flex: 1; display: flex; flex-direction: column; overflow: hidden; }
.rk-vl .card-header { display: flex !important; align-items: center; gap: 10px; padding: 14px 16px !important; }
.rk-vl .card-header::after { display: none; }
.rk-vl-ic { width: 34px; height: 34px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; flex: none; font-size: 15px; }
.rk-vl-tt { min-width: 0; }
.rk-vl-tt .card-title { float: none !important; margin: 0 !important; font-size: 15px !important; font-weight: 700; }
.rk-vl-tt small { display: block; color: var(--rk-mut, #8f97ad); font-size: 11.5px; }
.rk-vl-tt small b { font-weight: 600; color: inherit; }
.rk-vl-qtd { margin-left: auto; font-weight: 800; font-size: 13px; padding: 4px 10px; border-radius: 20px; }
.rk-vl.y .rk-vl-ic, .rk-vl.y .rk-vl-qtd { background: rgba(250,204,21,.13); color: #facc15; }
.rk-vl.o .rk-vl-ic, .rk-vl.o .rk-vl-qtd { background: rgba(251,146,60,.14); color: #fb923c; }
.rk-vl.rd .rk-vl-ic, .rk-vl.rd .rk-vl-qtd { background: rgba(248,113,113,.13); color: #f87171; }
.rk-vl-abas { display: flex; gap: 4px; padding: 10px 16px 2px; flex-wrap: wrap; }
.rk-vl-abas button { border: 0; font-size: 11.5px; padding: 4px 10px; border-radius: 8px; color: var(--rk-mut, #8f97ad); background: rgba(255,255,255,.04); cursor: pointer; }
.rk-vl-abas button.on { background: var(--rk-pri, #8b5cf6); color: #fff; }
.rk-vl-lista { flex: 1; padding: 4px 10px; min-height: 120px; transition: opacity .15s; }
.rk-vl-load .rk-vl-lista { opacity: .45; }
.rk-vl-it { display: flex; align-items: center; gap: 10px; padding: 7px 6px; border-bottom: 1px solid rgba(255,255,255,.04); }
.rk-vl-it:last-child { border-bottom: 0; }
.rk-vl-av { width: 30px; height: 30px; border-radius: 9px; flex: none; background: rgba(var(--rk-pri-rgb, 139,92,246), .18); color: var(--rk-pri3, #c4b5fd); font-size: 11px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }
.rk-vl-nm { flex: 1; min-width: 0; }
.rk-vl-nm b { display: block; color: #fff; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-vl-nm small { font-size: 11.5px; color: #8f97ad; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-vl-nm .w { color: #facc15; } .rk-vl-nm .o { color: #fb923c; } .rk-vl-nm .r { color: #f87171; }
.rk-vl-ac { display: flex; gap: 6px; flex: none; }
.rk-vl-ac a { width: 30px; height: 30px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.07); }
.rk-vl-ac a:hover { background: rgba(255,255,255,.08); }
.rk-vl-ac .wa { color: #4ade80; } .rk-vl-ac .rn { color: #fbbf24; }
.rk-vl-vazio { color: var(--rk-mut, #8f97ad); text-align: center; padding: 28px 0; font-size: 13px; }
.rk-vl-rod { display: flex; align-items: center; justify-content: space-between; padding: 10px 16px; font-size: 12px; color: var(--rk-mut, #8f97ad); border-top: 1px solid rgba(255,255,255,.06); }
.rk-vl-pg { display: flex; gap: 6px; }
.rk-vl-pg button { width: 30px; height: 30px; border-radius: 8px; border: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.03); color: #c9cfdd; cursor: pointer; }
.rk-vl-pg button:disabled { opacity: .35; cursor: default; }

/* v1.4.45: Configurações > Créditos e bloqueio */
.rk-cred-bl { padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.rk-cred-bl:first-of-type { padding-top: 0; }
.rk-cred-bl:last-child { border-bottom: 0; }
.rk-cred-d { color: var(--rk-mut, #8f97ad); font-size: 13px; line-height: 1.55; margin: 6px 0 10px 2.4rem; }
.rk-cred-f { margin-left: 2.4rem; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rk-cred-f label { margin: 0; font-weight: 500; }
.rk-cred-f input { width: 100px; text-align: center; font-weight: 700; }
.rk-cred-ex { margin: 10px 0 0 2.4rem; background: rgba(255,255,255,.03); border-radius: 10px; padding: 9px 12px; font-size: 12.5px; color: #9aa3bd; }
@media (max-width: 576px) { .rk-cred-d, .rk-cred-f, .rk-cred-ex { margin-left: 0; } }

/* v1.4.46: faixa "Área do cliente" na tela inicial */
.rk-ca { position: relative; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; background: var(--rk-card, #141b30); border: 1px solid rgba(56,189,248,.28); border-radius: 16px; padding: 12px 16px; margin-bottom: 18px; }
.rk-ca-ic { width: 42px; height: 42px; border-radius: 12px; background: rgba(56,189,248,.14); color: #38bdf8; display: inline-flex; align-items: center; justify-content: center; font-size: 18px; flex: none; }
.rk-ca-tx { min-width: 0; }
.rk-ca-tx b { display: block; color: #fff; font-size: 15px; }
.rk-ca-tx small { color: var(--rk-mut, #8f97ad); font-size: 12.5px; }
.rk-ca-url { flex: 1 1 260px; min-width: 0; display: flex; align-items: center; gap: 10px; background: rgba(0,0,0,.22); border: 1px solid rgba(255,255,255,.08); border-radius: 10px; padding: 9px 14px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 14px; color: #7dd3fc; }
.rk-ca-url i { color: var(--rk-mut, #8f97ad); }
.rk-ca-url span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-ca-bts { display: flex; gap: 8px; flex-wrap: wrap; }
.rk-ca-b { display: inline-flex; align-items: center; gap: 7px; padding: 9px 13px; border-radius: 10px; font-size: 13px; font-weight: 700; color: #e8ebf3 !important; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); cursor: pointer; text-decoration: none !important; line-height: 1.2; }
.rk-ca-b:hover, .rk-ca-b.on { background: rgba(255,255,255,.1); }
.rk-ca-b.g { background: #22c55e; border-color: #22c55e; color: #052e14 !important; }
.rk-ca-b.g:hover { background: #16a34a; }
.rk-ca-pop { position: absolute; right: 16px; top: calc(100% + 8px); z-index: 30; width: 220px; background: var(--rk-card, #141b30); border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 14px; text-align: center; box-shadow: 0 20px 50px rgba(0,0,0,.5); }
.rk-ca-pop[hidden] { display: none; }
.rk-ca-qr { width: 180px; height: 180px; margin: 0 auto; border-radius: 8px; overflow: hidden; background: #fff; }
.rk-ca-qr svg { width: 100%; height: 100%; display: block; }
.rk-ca-pop small { display: block; color: var(--rk-mut, #8f97ad); font-size: 12px; margin-top: 8px; line-height: 1.4; }
@media (max-width: 768px) { .rk-ca-bts { width: 100%; } .rk-ca-b { flex: 1 1 auto; justify-content: center; } .rk-ca-pop { left: 50%; right: auto; transform: translateX(-50%); } }
@media (min-width: 1200px) { .rk-ca { flex-wrap: nowrap; } .rk-ca-url { flex: 1 1 0; } .rk-ca-bts { flex-wrap: nowrap; flex: none; } .rk-ca-b { white-space: nowrap; } }
@media (min-width: 1200px) and (max-width: 1699px) { .rk-ca-tx small { display: none; } }

/* v1.4.47: avisos em abas */
.rk-av-cab { display: flex !important; align-items: center; justify-content: space-between; }
.rk-av-cab::after { display: none; }
.rk-av-cfg { display: grid; grid-template-columns: 290px 1fr; min-height: 420px; }
.rk-av-lst { border-right: 1px solid rgba(255,255,255,.06); padding: 12px; }
.rk-av-it { display: flex; align-items: center; gap: 6px; padding: 6px; border-radius: 10px; margin-bottom: 6px; border: 1px solid transparent; background: rgba(255,255,255,.02); }
.rk-av-it.on { background: rgba(var(--rk-pri-rgb, 139,92,246), .14); border-color: rgba(var(--rk-pri-rgb, 139,92,246), .4); }
.rk-av-it.des .rk-av-t small { color: #f87171; }
.rk-av-mv { display: flex; flex-direction: column; margin: 0; }
.rk-av-mv button { background: none; border: 0; color: var(--rk-mut, #8f97ad); padding: 0 4px; line-height: 1; font-size: 15px; cursor: pointer; }
.rk-av-mv button:hover:not(:disabled) { color: #fff; }
.rk-av-mv button:disabled { opacity: .25; cursor: default; }
.rk-av-lk { flex: 1; min-width: 0; display: flex; align-items: center; gap: 9px; color: inherit !important; text-decoration: none !important; padding: 4px 2px; }
.rk-av-ic { width: 30px; height: 30px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; background: rgba(56,189,248,.14); color: #7dd3fc; flex: none; font-size: 13px; }
.rk-av-t { flex: 1; min-width: 0; }
.rk-av-t b { display: block; font-size: 13.5px; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-av-t small { font-size: 11px; color: var(--rk-mut, #8f97ad); }
.rk-av-pill { font-size: 10.5px; font-weight: 700; padding: 2px 8px; border-radius: 20px; background: rgba(56,189,248,.15); color: #7dd3fc; white-space: nowrap; }
.rk-av-pill.off { background: rgba(255,255,255,.06); color: var(--rk-mut, #8f97ad); }
.rk-av-dica { font-size: 11.5px; color: var(--rk-mut, #8f97ad); margin: 10px 4px 0; }
.rk-av-ed { padding: 16px 20px; min-width: 0; }
.rk-av-modo { display: flex; gap: 6px; flex-wrap: wrap; margin: 4px 0 0 2.5rem; transition: opacity .15s; }
.rk-av-modo label { margin: 0; font-size: 12.5px; font-weight: 500; padding: 6px 11px; border-radius: 8px; background: rgba(255,255,255,.05); color: var(--rk-mut, #9aa3bd); cursor: pointer; }
.rk-av-modo label.on { background: var(--rk-pri, #8b5cf6); color: #fff; }
.rk-av-modo input { display: none; }
.rk-av-rod { display: flex; justify-content: space-between; align-items: center; border-top: 1px solid rgba(255,255,255,.06); padding-top: 14px; margin-top: 6px; }
@media (max-width: 900px) { .rk-av-cfg { grid-template-columns: 1fr; } .rk-av-lst { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.06); } .rk-av-modo { margin-left: 0; } }
.rk-av-page { overflow: hidden; }
.rk-av-tabs { display: flex; gap: 2px; padding: 8px 14px 0; border-bottom: 1px solid rgba(255,255,255,.07); overflow-x: auto; }
.rk-av-tabs button { background: none; border: 0; border-bottom: 2px solid transparent; color: var(--rk-mut, #9aa3bd); padding: 11px 14px; font-size: 14px; font-weight: 600; white-space: nowrap; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
.rk-av-tabs button.on { color: #fff; border-color: var(--rk-pri, #8b5cf6); }
.rk-av-cont { line-height: 1.7; }
.rk-av-cont img, .rk-av-b img { max-width: 100%; height: auto; }
body.rk-av-aberto { overflow: hidden; }
.rk-av-ov { position: fixed; inset: 0; z-index: 2000; background: rgba(5,8,18,.72); display: flex; align-items: center; justify-content: center; padding: 16px; }
.rk-av-md { width: 100%; max-width: 520px; max-height: calc(100vh - 32px); display: flex; flex-direction: column; background: var(--rk-card, #141b30); border: 1px solid rgba(255,255,255,.12); border-radius: 18px; box-shadow: 0 30px 80px rgba(0,0,0,.6); overflow: hidden; }
.rk-av-pg { display: flex; flex-direction: column; min-height: 0; flex: 1; }
.rk-av-pg[hidden] { display: none; }
.rk-av-h { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-bottom: 1px solid rgba(255,255,255,.07); }
.rk-av-h b { font-size: 16px; color: #fff; }
.rk-av-h small { margin-left: auto; color: var(--rk-mut, #8f97ad); font-size: 12px; white-space: nowrap; }
.rk-av-b { padding: 14px 18px; font-size: 14px; line-height: 1.7; color: #d4d8e4; overflow-y: auto; }
.rk-av-dots { display: flex; gap: 6px; justify-content: center; padding: 4px 0 8px; }
.rk-av-dots[hidden] { display: none; }
.rk-av-dots i { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.15); }
.rk-av-dots i.on { background: var(--rk-pri, #8b5cf6); }
.rk-av-f { display: flex; justify-content: space-between; align-items: center; padding: 12px 18px; border-top: 1px solid rgba(255,255,255,.07); }
.rk-av-ant { background: none; border: 0; color: var(--rk-mut, #9aa3bd); font-size: 13.5px; cursor: pointer; }
.rk-av-ant[hidden] { visibility: hidden; display: inline-block; }
.rk-av-ok { background: var(--rk-pri, #8b5cf6); color: #fff; border: 0; font-weight: 700; padding: 10px 18px; border-radius: 10px; font-size: 14px; cursor: pointer; }
/* v1.4.49: esconde o texto cru enquanto o editor monta (evita o "pisca") */
.rk-av-ed textarea.textarea { visibility: hidden; height: 260px; }

/* v1.4.54: botão voltar no ticket */
.rk-tk-cab { display: flex !important; align-items: center; gap: 12px; flex-wrap: wrap; }
.rk-tk-cab::after { display: none; }
.rk-tk-cab .card-title { float: none !important; margin: 0 !important; }
.rk-tk-voltar { border-color: rgba(255,255,255,.18) !important; color: #e8ebf3 !important; font-weight: 600; }
.rk-tk-voltar:hover { background: rgba(255,255,255,.08) !important; }

/* v1.4.54: link para o site no rodapé */
.rk-footer-dir { display: inline-flex; align-items: center; gap: 8px; }
.rk-footer-site { color: var(--rk-mut, #8f97ad) !important; text-decoration: none !important; }
.rk-footer-site b { color: var(--rk-pri2, #a78bfa); font-weight: 600; }
.rk-footer-site i { font-size: 10px; opacity: .7; margin-left: 2px; }
.rk-footer-site:hover b { text-decoration: underline; }
.rk-footer-sep { opacity: .5; }
