
:root{
  color-scheme:dark;
  --bg:#050a0f;--panel:#0a141c;--line:#37566a;--text:#edf7ff;
  --muted:#9cb3c1;--green:#18aa67;--red:#d04c4c;--blue:#158bd2;
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at top,#153044,#050a0f 48%);color:var(--text);font-family:Arial,sans-serif}
.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}
aside{background:#03080c;border-right:1px solid var(--line);padding:18px 12px}
.brand{font-size:29px;font-weight:900;padding:8px 12px 25px}.brand small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
aside a{display:block;color:#dce8ee;text-decoration:none;padding:12px;border-bottom:1px solid #203847}
aside a.active{background:linear-gradient(90deg,#0b7145,#102630);border-left:4px solid #29d789}
main{padding:26px 32px;min-width:0}
header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
h1{margin:0}header p,.muted{color:var(--muted)}.badge{background:#0b7c4a;border-radius:20px;padding:8px 14px}
.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}
.card,.panel{background:rgba(7,16,23,.94);border:1px solid #668294;border-radius:14px;padding:18px;margin-bottom:16px}
.card span{display:block;color:var(--muted)}.card strong{display:block;font-size:34px;margin-top:8px}
.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
label{color:#c9d8e0;font-size:13px}input,select{width:100%;height:43px;margin-top:5px;border:1px solid #8097a5;border-radius:8px;background:#f7f9fa;color:#111;padding:0 9px}
button,.button{border:0;border-radius:9px;background:#0b8d54;color:#fff;padding:12px 17px;font-weight:800;text-decoration:none;align-self:end}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #294453;white-space:nowrap}th{color:#a9bfcb}
.flash{padding:12px 14px;border-radius:9px;margin-bottom:14px}.flash.success{background:#0b5435}.flash.error{background:#5d1c1c}
.secret-box{padding:15px;background:#5d3d08;border:1px solid #e1a740;border-radius:12px;margin-bottom:15px}.secret-box code{display:block;word-break:break-all;margin-top:8px;font-size:14px}
.login-body{min-height:100vh;display:grid;place-items:center}.login-card{width:min(92%,420px);padding:28px;border:1px solid #718895;border-radius:18px;background:#07121a}.login-card h1{font-size:42px}.login-card label{display:block;margin-top:13px}.login-card button{width:100%;margin-top:18px}
@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:750px){.shell{grid-template-columns:1fr}aside{position:static}.form-grid{grid-template-columns:1fr}main{padding:16px}.cards{grid-template-columns:1fr 1fr}}

.password-panel{max-width:900px}.password-form{grid-template-columns:repeat(3,1fr) auto}

.tenant-config-card{margin-top:18px}
.tenant-card-head{display:flex;justify-content:space-between;align-items:center}
.tenant-card-head h2{margin-bottom:3px}
.registration-url-box{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-top:16px;padding:13px;background:#0e2635;border:1px solid #315c73;border-radius:10px}
.registration-url-box code{word-break:break-all;color:#d8f1ff}
.copy-button{padding:9px 13px}
.check-label{display:flex;gap:9px;align-items:center;margin-top:22px}
.check-label input{width:20px;height:20px;margin:0}
.registration-card form label{display:block;margin-top:11px}
.device-login-card{text-align:left}
.device-summary{display:grid;gap:7px;padding:14px;margin:15px 0;background:#0d2432;border:1px solid #41687e;border-radius:10px}
.device-summary span{color:#a9bfcb}
.full-button{display:block;text-align:center;margin-top:15px}
.device-credentials span{display:block;color:#c1d2dc;margin-top:10px}
.device-credentials details{margin-top:12px}
@media(max-width:800px){.registration-url-box{grid-template-columns:1fr}.tenant-card-head{align-items:flex-start}}

.tenant-create-form{grid-template-columns:repeat(4,1fr)}
.tenant-url-note{margin:14px 0 0}
.tenant-url-note code{color:#d8f1ff}
@media(max-width:1100px){
  .tenant-create-form{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:750px){
  .tenant-create-form{grid-template-columns:1fr}
}

.engine-worker-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.engine-worker-head h2{margin:0 0 4px}
.worker-online{background:#07874f}.worker-offline{background:#a53232}
.engine-group-card{margin-top:17px}
.engine-config-form{grid-template-columns:repeat(4,1fr)}
.engine-toggle-form{margin-top:12px}
.danger-button{background:#a63b3b}
.engine-worker-card .badge,.engine-group-card .badge{white-space:nowrap}
@media(max-width:1100px){.engine-config-form{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.engine-config-form{grid-template-columns:1fr}.engine-worker-head{flex-direction:column}}


.table-wrap form{margin:0}
.table-wrap .danger-button{padding:8px 11px;white-space:nowrap}
.device-credentials p{color:#fff;margin-bottom:0}


.device-list-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:12px;
}
.device-list-header h2{margin:0 0 4px}
.device-action-buttons{
  display:flex;
  align-items:center;
  gap:7px;
}
.device-action-buttons form{margin:0}
.device-action-buttons button{
  padding:8px 10px;
  white-space:nowrap;
}
@media(max-width:800px){
  .device-list-header{
    flex-direction:column;
  }
  .device-action-buttons{
    flex-direction:column;
    align-items:stretch;
  }
}


.prize-admin-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}
.prize-admin-header h2{margin:0 0 4px}
.prize-admin-filters{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.card small{
  display:block;
  margin-top:5px;
  color:#9eb4c0;
}
@media(max-width:760px){
  .prize-admin-header{
    flex-direction:column;
  }
}


.paytable-official{
  border-color:#38a96c;
  background:#123927;
}


/* V7I — Relatórios financeiros e auditoria */
.dashboard-finance-cards{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.dashboard-finance-cards .card strong{
  font-size:24px;
}
.dashboard-current-state{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.dashboard-current-state h2{
  margin:0 0 5px;
}
.dashboard-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.secondary-button{
  background:#274353;
}
.positive-text{
  color:#61e59d!important;
}
.negative-text{
  color:#ff7777!important;
}

.report-title-row,
.report-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}
.report-title-row h2,
.report-section-head h2{
  margin:0 0 5px;
}
.report-export-button{
  white-space:nowrap;
}
.report-preset-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:16px 0;
}
.active-filter{
  background:#12a565;
  box-shadow:0 0 0 2px rgba(45,225,137,.18);
}
.report-filter-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.report-filter-grid button{
  min-height:43px;
}
.report-period-strip{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin:0 0 14px;
  padding:11px 15px;
  border:1px solid #4a6d80;
  border-radius:10px;
  background:#0b2532;
}
.report-period-strip span{
  color:#9fb5c1;
}
.report-summary-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.report-summary-cards .card{
  min-height:132px;
}
.report-summary-cards .card strong{
  font-size:25px;
}
.report-summary-cards .negative-card{
  border-color:#a64747;
  background:#321919;
}
.report-summary-cards .positive-card{
  border-color:#27895a;
  background:#0a3423;
}
.report-summary-cards .warning-card{
  border-color:#9b762c;
  background:#352b12;
}
.report-operational-cards{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.report-operational-cards .card strong{
  font-size:24px;
}
.report-numbers{
  min-width:250px;
  white-space:normal;
  word-spacing:5px;
  font-weight:700;
}
.audit-action{
  display:inline-block;
  padding:5px 8px;
  border-radius:7px;
  background:#17394b;
  font-size:12px;
  font-weight:800;
}
.audit-action.blocked{
  background:#6b2323;
}
.audit-details summary{
  cursor:pointer;
  color:#7fdcb0;
}
.audit-details pre{
  max-width:430px;
  max-height:220px;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
  color:#dceaf1;
  font-size:11px;
}
.report-method-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.report-method-grid>div{
  padding:12px;
  border:1px solid #345b6e;
  border-radius:9px;
  background:#0b2532;
}
.report-method-grid strong,
.report-method-grid span{
  display:block;
}
.report-method-grid span{
  margin-top:5px;
  color:#a8bdc8;
  line-height:1.4;
}
@media(max-width:1350px){
  .report-filter-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .report-summary-cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .report-operational-cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .dashboard-finance-cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:900px){
  .report-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .report-summary-cards,
  .report-operational-cards,
  .dashboard-finance-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .report-method-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dashboard-current-state,
  .report-title-row{
    flex-direction:column;
  }
}
@media(max-width:600px){
  .report-filter-grid,
  .report-summary-cards,
  .report-operational-cards,
  .dashboard-finance-cards,
  .report-method-grid{
    grid-template-columns:1fr;
  }
}


/* V7I3 — Senha definida pelo Super Admin */
.tenant-create-panel h2,
.tenant-organized-card h2,
.tenant-subcard h3{
  margin:0;
}
.tenant-section-title,
.tenant-subcard-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}
.tenant-section-title p,
.tenant-subcard-head p{
  margin:5px 0 0;
}
.tenant-create-organized{
  display:grid;
  gap:14px;
  margin-top:15px;
}
.tenant-create-organized fieldset{
  margin:0;
  padding:14px;
  border:1px solid #345b6e;
  border-radius:11px;
  background:#091b25;
}
.tenant-create-organized legend{
  padding:0 7px;
  color:#68df9e;
  font-weight:800;
}
.tenant-create-core{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.tenant-create-admin{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:end;
}
.tenant-create-admin .tenant-password-option,
.tenant-create-admin button{
  grid-column:1/-1;
}
.tenant-generated-password-note{
  min-height:43px;
  padding:8px 10px;
  border:1px solid #3e6578;
  border-radius:8px;
  background:#0d2937;
}
.tenant-generated-password-note strong,
.tenant-generated-password-note span{
  display:block;
}
.tenant-generated-password-note span{
  margin-top:3px;
  color:#a9bec9;
  font-size:12px;
}
.tenant-meta-line{
  display:flex;
  flex-wrap:wrap;
  gap:8px 17px;
}
.tenant-management-grid{
  display:grid;
  grid-template-columns:minmax(320px,.8fr) minmax(500px,1.2fr);
  gap:14px;
  margin-top:15px;
}
.tenant-subcard{
  min-width:0;
  padding:15px;
  border:1px solid #345b6e;
  border-radius:11px;
  background:#081a24;
}
.tenant-commercial-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
  margin-top:13px;
}
.tenant-commercial-form .tenant-public-check,
.tenant-commercial-form button{
  grid-column:1/-1;
}
.tenant-admin-count{
  flex:none;
  padding:6px 9px;
  border-radius:15px;
  background:#123b2b;
  color:#64e6a0;
  font-size:12px;
  font-weight:800;
}
.tenant-panel-login-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin-top:13px;
  padding:11px;
  border:1px solid #376377;
  border-radius:9px;
  background:#0d2937;
}
.tenant-panel-login-row span,
.tenant-panel-login-row code{
  display:block;
}
.tenant-panel-login-row span{
  color:#a9bec9;
  font-size:12px;
}
.tenant-panel-login-row code{
  margin-top:4px;
  overflow-wrap:anywhere;
  color:#dff5ff;
}
.tenant-login-actions{
  display:flex;
  gap:7px;
}
.tenant-login-actions .button,
.tenant-login-actions button{
  padding:8px 11px;
  white-space:nowrap;
}
.tenant-admin-list{
  display:grid;
  gap:8px;
  margin-top:12px;
}
.tenant-admin-row{
  display:grid;
  grid-template-columns:minmax(180px,.9fr) minmax(180px,.7fr) minmax(320px,1.2fr);
  gap:12px;
  align-items:center;
  padding:11px;
  border:1px solid #2d5264;
  border-radius:9px;
  background:#07141d;
}
.tenant-admin-identity strong,
.tenant-admin-identity span,
.tenant-admin-state small{
  display:block;
}
.tenant-admin-identity span{
  margin-top:4px;
  color:#a9bec9;
  overflow-wrap:anywhere;
}
.tenant-admin-state{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px 8px;
}
.tenant-admin-state small{
  color:#a9bec9;
}
.status-pill{
  display:inline-block;
  padding:4px 7px;
  border-radius:12px;
  font-size:11px;
  font-weight:900;
}
.status-pill.active{
  background:#0c6f43;
}
.status-pill.suspended{
  background:#8d3131;
}
.password-pending{
  color:#f2c45e!important;
}
.account-locked{
  color:#ff7777!important;
}
.warning-button{
  background:#bd7a18;
  white-space:nowrap;
}
.tenant-no-admin{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-top:12px;
  padding:12px;
  border:1px solid #9d6922;
  border-radius:9px;
  background:#36280f;
}
.tenant-no-admin span{
  color:#e0c99d;
}
.tenant-add-admin{
  margin-top:12px;
  border-top:1px solid #294b5b;
  padding-top:11px;
}
.tenant-add-admin summary{
  cursor:pointer;
  color:#6fe1a3;
  font-weight:800;
}
.tenant-admin-create-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  align-items:end;
  margin-top:11px;
}
.tenant-admin-create-form .tenant-password-option,
.tenant-admin-create-form button{
  grid-column:1/-1;
}
.tenant-password-editor{
  min-width:0;
  padding:9px;
  border:1px solid #45697b;
  border-radius:8px;
  background:#0b2532;
}
.tenant-password-editor summary{
  cursor:pointer;
  color:#f2c45e;
  font-weight:800;
}
.tenant-set-password-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.tenant-set-password-form .check-label,
.tenant-set-password-form button{
  grid-column:1/-1;
}
.tenant-password-option{
  min-height:42px;
  align-self:end;
}
.tenant-create-admin label small{
  display:block;
  margin-top:4px;
  color:#9fb5c1;
  font-size:11px;
}
.tenant-links-grid{
  margin-top:14px;
}
.tenant-access-secret h2{
  margin:0 0 5px;
}
.tenant-secret-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-top:13px;
}
.tenant-secret-grid>div{
  padding:11px;
  border:1px solid #b57f2a;
  border-radius:9px;
  background:#33240b;
}
.tenant-secret-grid span,
.tenant-secret-grid strong,
.tenant-secret-grid code{
  display:block;
}
.tenant-secret-grid span{
  color:#ebd4a3;
  font-size:12px;
}
.tenant-secret-grid strong,
.tenant-secret-grid code{
  margin-top:5px;
  overflow-wrap:anywhere;
  color:#fff;
}
.compact-copy{
  margin-top:8px;
  padding:6px 9px;
}
.tenant-password-warning{
  margin:12px 0 0;
  color:#ffe1a0;
}
.tenant-central-login .tenant-login-name{
  color:#fff;
  font-size:17px;
  font-weight:800;
}
.tenant-login-scope{
  margin:12px 0;
  padding:10px;
  border:1px solid #2d7552;
  border-radius:8px;
  background:#0b3a27;
  color:#b9f3d2;
  font-size:13px;
}
@media(max-width:1250px){
  .tenant-create-core{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .tenant-create-admin{
    grid-template-columns:1fr 1fr;
  }
  .tenant-management-grid{
    grid-template-columns:1fr;
  }
  .tenant-secret-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .tenant-create-core,
  .tenant-create-admin,
  .tenant-commercial-form,
  .tenant-secret-grid,
  .tenant-admin-create-form,
  .tenant-set-password-form{
    grid-template-columns:1fr;
  }
  .tenant-commercial-form .tenant-public-check,
  .tenant-commercial-form button{
    grid-column:auto;
  }
  .tenant-panel-login-row,
  .tenant-admin-row{
    grid-template-columns:1fr;
  }
  .tenant-login-actions{
    flex-direction:column;
  }
  .tenant-login-actions .button,
  .tenant-login-actions button,
  .tenant-admin-row button{
    width:100%;
    text-align:center;
  }
}


/* V7I3 final overrides */
@media(max-width:1250px){
  .tenant-admin-row{
    grid-template-columns:1fr;
  }
}


/* V7J — Comissões e acertos financeiros */
.settlement-summary-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.settlement-preview-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:14px;
}
.settlement-preview-card{
  padding:16px;
  border:1px solid #486b7d;
  border-radius:12px;
  background:#071722;
}
.settlement-preview-head,
.settlement-platform-head,
.settlement-detail-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.settlement-preview-head h3,
.settlement-detail-head h2,
.settlement-platform-head h2{
  margin:0 0 5px;
}
.settlement-preview-head span{
  color:#9fb5c1;
}
.settlement-partial-badge{
  background:#9b6a16!important;
}
.settlement-void-badge{
  background:#8a3030!important;
}
.settlement-preview-data{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:14px 0;
}
.settlement-preview-data>div{
  padding:9px;
  border:1px solid #315366;
  border-radius:8px;
  background:#0b2532;
}
.settlement-preview-data dt{
  color:#9fb5c1;
  font-size:12px;
}
.settlement-preview-data dd{
  margin:4px 0 0;
  font-weight:800;
}
.settlement-create-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.settlement-create-form .settlement-reason-field,
.settlement-create-form button{
  grid-column:1/-1;
}
.settlement-create-form textarea{
  min-height:72px;
}
.settlement-detail-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.settlement-detail-cards .card strong{
  font-size:22px;
}
.settlement-platform-panel{
  border-color:#457d65;
}
.settlement-payment-form{
  grid-template-columns:1fr 1fr auto;
  align-items:end;
}
.settlement-paid-box{
  margin-top:14px;
  padding:12px;
  border:1px solid #2b8b5c;
  border-radius:9px;
  background:#0a3423;
}
.settlement-line-action summary{
  cursor:pointer;
  color:#68e2a1;
  font-weight:800;
}
.settlement-line-form{
  min-width:260px;
  margin-top:8px;
  display:grid;
  gap:7px;
}
.settlement-danger-panel{
  border-color:#8c3f3f;
}
.settlement-danger-panel summary{
  cursor:pointer;
  color:#ff8b8b;
  font-weight:800;
}
.settlement-danger-panel textarea{
  min-height:80px;
}
.settlement-void-panel{
  border-color:#8c3f3f;
  background:#321919;
}
.settlement-formulas{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
@media(max-width:1250px){
  .settlement-summary-cards,
  .settlement-detail-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .settlement-preview-grid{
    grid-template-columns:1fr;
  }
  .settlement-payment-form{
    grid-template-columns:1fr 1fr;
  }
  .settlement-payment-form button{
    grid-column:1/-1;
  }
}
@media(max-width:700px){
  .settlement-summary-cards,
  .settlement-detail-cards,
  .settlement-preview-data,
  .settlement-create-form,
  .settlement-formulas{
    grid-template-columns:1fr;
  }
  .settlement-create-form .settlement-reason-field,
  .settlement-create-form button{
    grid-column:auto;
  }
  .settlement-preview-head,
  .settlement-platform-head,
  .settlement-detail-head{
    flex-direction:column;
  }
  .settlement-payment-form{
    grid-template-columns:1fr;
  }
  .settlement-payment-form button{
    grid-column:auto;
  }
}


/* V7J1 — Período atual e fechamento automático */
.settlement-current-panel{
  border-color:#3f7d64;
}
.settlement-auto-badge{
  background:#0d8d57!important;
}
.settlement-current-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}
.settlement-current-card{
  padding:16px;
  border:1px solid #486b7d;
  border-radius:12px;
  background:#071722;
}
.settlement-current-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.settlement-current-head h3{
  margin:0 0 4px;
  font-size:22px;
}
.settlement-current-head>div>span{
  color:#9fb5c1;
}
.settlement-running-badge{
  background:#197a55!important;
}
.settlement-pending-badge{
  background:#9b6a16!important;
}
.settlement-paid-badge{
  background:#16774d!important;
}
.settlement-period-dates{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
}
.settlement-period-dates>div{
  padding:9px;
  border:1px solid #315366;
  border-radius:8px;
  background:#0b2532;
}
.settlement-period-dates span,
.settlement-current-values span{
  display:block;
  color:#9fb5c1;
  font-size:12px;
}
.settlement-period-dates strong,
.settlement-current-values strong{
  display:block;
  margin-top:4px;
}
.settlement-progress{
  height:10px;
  margin:12px 0;
  overflow:hidden;
  border:1px solid #416173;
  border-radius:999px;
  background:#031018;
}
.settlement-progress span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    #0ca35e,
    #5ce39b
  );
}
.settlement-current-values{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.settlement-current-values>div{
  min-height:76px;
  padding:10px;
  border:1px solid #315366;
  border-radius:8px;
  background:#0b2532;
}
.settlement-current-values strong{
  font-size:18px;
}
.settlement-current-values small{
  display:block;
  margin-top:3px;
  color:#9fb5c1;
}
.settlement-current-values .settlement-net-value{
  border-color:#27895a;
  background:#0a3423;
}
.settlement-current-values.point-only{
  grid-template-columns:1fr;
}
@media(max-width:1350px){
  .settlement-current-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:850px){
  .settlement-period-dates,
  .settlement-current-values{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:560px){
  .settlement-current-head,
  .report-section-head{
    flex-direction:column;
  }
  .settlement-period-dates,
  .settlement-current-values{
    grid-template-columns:1fr;
  }
}


/* ================================================================
   V7K — Tenant, pontos, operadores e créditos online
   ================================================================ */

.point-identity-panel,
.point-identity-panel>div:first-child{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.point-identity-panel h2{
  margin:0 0 5px;
}

.point-dashboard-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.point-dashboard-cards .card strong{
  font-size:25px;
}

.point-dashboard-actions>div{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.point-current-commission{
  border-color:#3e7a61;
}

.point-commission-split{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-top:14px;
}
.point-commission-split>div{
  padding:12px;
  border:1px solid #31576a;
  border-radius:9px;
  background:#0b2532;
}
.point-commission-split span,
.tenant-financial-value span{
  display:block;
  color:#9fb5c1;
  font-size:12px;
}
.point-commission-split strong,
.tenant-financial-value strong{
  display:block;
  margin-top:5px;
  font-size:21px;
}

.tenant-financial-overview{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.tenant-financial-value{
  margin-top:14px;
  padding:14px;
  border:1px solid #31576a;
  border-radius:9px;
  background:#0b2532;
}
.tenant-financial-value small{
  display:block;
  margin-top:5px;
  color:#9fb5c1;
}

.inline-filter-form select{
  min-width:220px;
}

.online-credit-form{
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
  align-items:end;
}
.compact-action-form{
  display:grid;
  gap:7px;
  min-width:250px;
  margin-top:8px;
}
.compact-action-form textarea{
  min-height:75px;
}

.point-period-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:15px;
}
.point-period-card{
  padding:14px;
  border:1px solid #456a7d;
  border-radius:11px;
  background:#071722;
}
.point-period-card header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
}
.point-period-card h3{
  margin:0 0 4px;
}
.point-period-card header span{
  color:#9fb5c1;
}
.point-period-card header>strong{
  color:#5ee39b;
  font-size:22px;
}
.point-period-card dl{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin:12px 0 0;
}
.point-period-card dl>div{
  padding:8px;
  border:1px solid #315366;
  border-radius:8px;
  background:#0b2532;
}
.point-period-card dt{
  color:#9fb5c1;
  font-size:11px;
}
.point-period-card dd{
  margin:4px 0 0;
  font-weight:800;
}

.point-config-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:15px;
}
.point-config-card{
  padding:15px;
  border:1px solid #456a7d;
  border-radius:11px;
  background:#071722;
}
.point-config-card header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
}
.point-config-card h3{
  margin:0 0 4px;
}
.point-config-card header>div>span{
  color:#9fb5c1;
}
.point-config-info{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  margin:12px 0;
  color:#9fb5c1;
}
.point-config-info strong{
  color:#fff;
}
.point-commercial-form{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
.point-commercial-form button{
  grid-column:1/-1;
}
.point-readonly-rules{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.point-readonly-rules>div{
  padding:9px;
  border:1px solid #315366;
  border-radius:8px;
  background:#0b2532;
}
.point-readonly-rules dt{
  color:#9fb5c1;
  font-size:12px;
}
.point-readonly-rules dd{
  margin:4px 0 0;
  font-weight:800;
}

.tenant-point-settlement-link{
  border-color:#3e7a61;
}

@media(max-width:1350px){
  .point-dashboard-cards,
  .point-period-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .online-credit-form{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .online-credit-form button{
    grid-column:1/-1;
  }
}

@media(max-width:1000px){
  .point-config-grid,
  .tenant-financial-overview{
    grid-template-columns:1fr;
  }
  .point-commission-split{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .point-commercial-form{
    grid-template-columns:1fr 1fr;
  }
  .point-commercial-form button{
    grid-column:1/-1;
  }
}

@media(max-width:650px){
  .point-dashboard-cards,
  .point-period-grid,
  .point-commission-split,
  .point-period-card dl,
  .point-commercial-form,
  .point-readonly-rules,
  .online-credit-form{
    grid-template-columns:1fr;
  }
  .point-commercial-form button,
  .online-credit-form button{
    grid-column:auto;
  }
  .point-identity-panel,
  .point-period-card header,
  .point-config-card header{
    flex-direction:column;
  }
}


/* V7L1 — Administração de jogadores */
.players-access-panel{border-color:#39785f}
.players-links-grid{margin-top:14px}
.player-group-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:14px}
.player-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.player-admin-card{padding:15px;border:1px solid #456a7d;border-radius:11px;background:#071722}
.player-admin-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.player-admin-card h3{margin:0 0 4px}.player-admin-card header span{color:#9fb5c1}
.player-admin-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0}
.player-admin-card dl>div{padding:9px;border:1px solid #315366;border-radius:8px;background:#0b2532}
.player-admin-card dt{font-size:12px;color:#9fb5c1}.player-admin-card dd{margin:4px 0 0;font-weight:800}
.player-admin-card details{margin-top:8px;border-top:1px solid #274858;padding-top:8px}
.player-admin-card summary{cursor:pointer;font-weight:800;color:#6fe2a1}
.player-delete-details summary{color:#ff8b8b}
.player-admin-form{display:grid;gap:8px;margin-top:10px}.wallet-payout-panel{border-color:#9b6a16}
@media(max-width:900px){.player-admin-grid{grid-template-columns:1fr}}
@media(max-width:650px){.player-group-form,.player-admin-card dl{grid-template-columns:1fr}}

/* Keno 2.42 — hierarquia e acerto Proprietário × representante */
.owner-summary-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.owner-relationship-panel,
.owner-current-panel,
.owner-history-panel{
  margin-top:16px;
}
.owner-settings-form{
  margin-top:16px;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
  align-items:end;
}
.owner-settings-form label small{
  display:block;
  margin-top:6px;
  color:#91adbc;
  line-height:1.35;
}
.owner-readonly-notice{
  margin-top:14px;
  padding:13px 15px;
  border:1px solid #35566a;
  border-radius:10px;
  background:#09202b;
  color:#c9dce5;
}
.owner-cycle-time{
  margin:12px 0;
}
.owner-close-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:end;
  margin-top:16px;
}
.owner-close-form textarea{
  min-height:76px;
}
.owner-close-form button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.owner-history-details summary{
  cursor:pointer;
  color:#7edcff;
  font-weight:800;
}
.owner-history-lines{
  min-width:330px;
  display:grid;
  gap:8px;
  padding:10px 0 2px;
}
.owner-history-lines>div{
  display:grid;
  gap:3px;
  padding:8px 10px;
  border:1px solid #2d4a5b;
  border-radius:8px;
  background:#061821;
}
.owner-history-lines span{
  color:#9eb8c5;
  font-size:12px;
}
.owner-payment-row td{
  background:rgba(8,39,51,.65);
}
.owner-payment-form{
  display:grid;
  grid-template-columns:minmax(180px,.8fr) minmax(240px,1.4fr) auto;
  gap:10px;
  align-items:end;
}
@media(max-width:1050px){
  .owner-summary-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .owner-settings-form,
  .owner-payment-form{
    grid-template-columns:1fr 1fr;
  }
  .owner-settings-form button,
  .owner-payment-form button{
    grid-column:1/-1;
  }
}
@media(max-width:680px){
  .owner-summary-cards,
  .owner-settings-form,
  .owner-close-form,
  .owner-payment-form{
    grid-template-columns:1fr;
  }
  .owner-history-lines{
    min-width:250px;
  }
}
