/* HPI — sobreposições finais (login, ranking, listas, confirmações).
   ATENÇÃO: a ordem de carregamento (index.php) é a ordem da cascata. Não reordene. */

/* ===== Ajustes (round 3) ===== */
.sv-t{font-size:14px}
.sv-v{display:flex;justify-content:flex-end;align-items:center;gap:12px}
.sv-del{width:28px;height:28px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:rgba(255,255,255,.7);font-size:14px;cursor:pointer;transition:all .2s}
.sv-del:hover{background:rgba(255,60,60,.25);border-color:rgba(255,90,90,.6);color:#ff8a8a}
.sv-cab.ex .r{padding-right:40px}
.sv-resumo{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;margin:12px 0 16px;padding:16px 22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.45);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;font-size:15px;font-weight:600}
@media (min-width:600px){.sv-filtros{grid-template-columns:1.6fr 1fr 1fr}.sv-filtros .sv-semana{grid-column:auto}}
@media (min-width:1024px){.sv-filtros{grid-template-columns:1.6fr 1.2fr 1fr}}

.save-bar{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:12px}
.save-status{margin:0 auto 0 0;text-align:left}
.save-btn{width:auto;min-width:0;height:42px;padding:0 22px;background:#fff;color:#111;border:0;border-radius:12px;font-size:14px;font-weight:600;backdrop-filter:none}
.save-btn:hover{background:rgba(255,255,255,.85)}
.save-btn:disabled{opacity:.35}

.fac-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.fac-tag{padding:6px 12px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.06);font-size:13px;font-weight:600}
.fac-vazio{color:rgba(255,255,255,.6);font-size:13px;font-weight:400}

.pg-btn.branco{background:#fff;color:#111;border-color:#fff}
.pg-btn.branco:hover{background:rgba(255,255,255,.85)}
.pg-btn.perigo{background:rgba(255,60,60,.25);border-color:rgba(255,90,90,.6)}
.pg-btn.perigo:hover{background:rgba(255,60,60,.4)}
.pc-wrap{max-width:920px}
.pc-wrap .glass-input,.pc-wrap .glass-select{height:48px}

.gf-lista{list-style:none}
.gf-ac{display:flex;justify-content:flex-end}
.gf-sw{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:rgba(255,255,255,.7);cursor:pointer}
.gf-lbl{display:inline}
@media (max-width:599px){
  .gf-sw{grid-column:1 / -1}
  .gf-ac{grid-column:2;grid-row:1}
}
@media (min-width:600px){
  .gf-cab,.gf-item{grid-template-columns:1.6fr .9fr .9fr 1fr 1.4fr}
  .gf-cab .c{text-align:center}
  .gf-lbl{display:none}
  .gf-sw{justify-content:center}
}

.modal.conf{z-index:50}
.conf-box{max-width:420px}
.conf-box h3{font-size:18px;font-weight:700}
.cf-texto{color:rgba(255,255,255,.7);font-size:14px;line-height:1.5;margin-top:8px}
.modal-wide{max-width:1040px;height:100%;max-height:780px;overflow:hidden;display:flex;flex-direction:column}
.modal-wide>*{flex-shrink:0}
.modal-wide>.rm-lista{flex:1 1 auto;min-height:0;overflow-y:auto}
.rm-filtros{margin-bottom:0}
.rm-filtros .rm-m{grid-column:1 / -1}
@media (min-width:600px){
  .rm-filtros{grid-template-columns:1.5fr 1fr 1fr 1.3fr}
  .rm-filtros .rm-m{grid-column:auto}
}
@media (max-height:520px){.modal-wide{height:auto;overflow-y:auto}.modal-wide>.rm-lista{overflow:visible}}

/* ===== Ajustes (round 4) ===== */
.fac-info{margin:0;padding:0 16px 14px;border:0;border-radius:0}
.fac-tags{margin-top:0}
.mb-pos{width:34px;flex-shrink:0;color:rgba(255,255,255,.65);font-size:15px;font-weight:700}
.mb-corpos{margin-top:2px;color:rgba(255,255,255,.7);font-size:12px;font-weight:600}
.glass-input[readonly]{opacity:.7;cursor:default}
.gm-c{grid-column:1 / -1;display:flex;justify-content:space-between;font-size:13px;color:rgba(255,255,255,.8)}
.gm-c::before{content:attr(data-label);color:rgba(255,255,255,.55)}
.gm-senha{display:flex;gap:8px}
.gm-senha .glass-input{flex:1;min-width:0}
@media (min-width:600px){
  .gm-cab,.gm-item{grid-template-columns:1.6fr 1fr 1fr .9fr 1.4fr}
  .gm-cab .c{text-align:center}
  .gm-c{grid-column:auto;display:block;font-size:14px}
  .gm-c::before{content:none}
}
.login{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:#000;overflow-y:auto}
.login-card{width:100%;max-width:390px;padding:32px 24px;border-radius:28px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);box-shadow:0 20px 40px rgba(0,0,0,.5);color:#fff}
.login-card h2{text-align:center;font-size:24px;font-weight:700}
.login-sub{text-align:center;color:rgba(255,255,255,.65);font-size:14px;margin:10px 0 28px}
.login-card .input-group{margin-bottom:18px}
.login-card .glass-input{height:54px;font-size:16px}
.lg-manter{display:flex;align-items:center;gap:10px;margin:2px 0 6px;color:rgba(255,255,255,.75);font-size:14px;cursor:pointer}
.chk{appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:6px;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.07);position:relative;cursor:pointer;flex-shrink:0}
.chk:checked{background:#fff;border-color:#fff}
.chk:checked::after{content:'';position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #111;border-width:0 2px 2px 0;transform:rotate(45deg)}
.login-card .form-error{margin:8px 0 0}
.lg-btn{width:100%;height:54px;margin-top:18px;border-radius:16px;border:1px solid rgba(255,255,255,.35);background:linear-gradient(135deg,rgba(255,255,255,.3),rgba(255,255,255,.06));color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s}
.lg-btn:hover{background:linear-gradient(135deg,rgba(255,255,255,.4),rgba(255,255,255,.1))}
.sv-del-ph{width:28px;height:28px;flex-shrink:0}
