/* ─── PERFIL PAGE ─────────────────────────────────────────────────────────── */

.perfil-header{
  display:flex;align-items:center;gap:16px;margin-bottom:28px;
}
.perfil-header h1{font-size:1.5rem;font-weight:800;color:var(--text)}

.perfil-section{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  padding:24px 28px;margin-bottom:20px;
}
.perfil-section-title{
  font-size:.8rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--muted);margin-bottom:16px;
}
.perfil-section-desc{
  font-size:.82rem;color:var(--muted);margin-top:-8px;margin-bottom:20px;
}

/* Account block */
.perfil-account{display:flex;align-items:center;gap:14px}
.perfil-avatar-wrap{flex-shrink:0}
.perfil-account-details{display:flex;flex-direction:column;gap:3px}
.perfil-account-name{font-size:.95rem;font-weight:600;color:var(--text)}
.perfil-account-email{font-size:.82rem;color:var(--muted)}
.perfil-discount-display{padding:4px 0}
.perfil-discount-badge{
  display:inline-block;padding:6px 16px;border-radius:6px;
  font-size:.85rem;font-weight:700;
}
.perfil-discount-none{background:rgba(255,255,255,.06);color:var(--muted)}
.perfil-discount-active{background:rgba(230,126,34,.15);color:#e67e22;font-size:.95rem}
.perfil-payment-badge{
  display:inline-block;padding:6px 16px;border-radius:6px;
  font-size:.85rem;font-weight:700;
  background:rgba(255,255,255,.06);color:var(--muted);
}

/* Form */
.perfil-form{display:flex;flex-direction:column;gap:16px}

.perfil-field{display:flex;flex-direction:column;gap:6px}
.perfil-field-row{flex-direction:row;gap:12px;align-items:flex-end}
.perfil-field-col{display:flex;flex-direction:column;gap:6px;min-width:0}
.perfil-field-col--wide{flex:1}

.perfil-label{font-size:.78rem;font-weight:600;color:var(--muted);letter-spacing:.3px}

.perfil-input{
  background:var(--dark2);border:1px solid var(--border);border-radius:8px;
  color:var(--text);padding:9px 13px;font-size:.88rem;font-family:inherit;
  transition:border-color .15s;outline:none;width:100%;
}
.perfil-input:focus{border-color:var(--yellow)}
.perfil-input-sm{max-width:220px}

.perfil-radio-group{display:flex;gap:20px}
.perfil-radio{
  display:flex;align-items:center;gap:7px;cursor:pointer;
  font-size:.88rem;color:var(--text);
}
.perfil-radio input{accent-color:var(--yellow);width:15px;height:15px;cursor:pointer}

.perfil-form-footer{
  display:flex;align-items:center;justify-content:flex-end;gap:16px;
  margin-top:8px;flex-wrap:wrap;
}

.perfil-save-btn{
  background:var(--yellow);color:#000;border:none;
  padding:10px 28px;border-radius:8px;font-size:.88rem;font-weight:700;
  cursor:pointer;transition:background .15s;
}
.perfil-save-btn:hover{background:var(--yellow-dark)}

.perfil-msg{font-size:.82rem;padding:6px 12px;border-radius:6px}
.perfil-msg--ok{background:rgba(63,185,80,.12);color:#3fb950;border:1px solid rgba(63,185,80,.3)}
.perfil-msg--err{background:rgba(255,80,80,.1);color:#ff8080;border:1px solid rgba(255,80,80,.3)}

/* ─── ADMIN PRICING EDITOR ───────────────────────────────────────────────── */

.price-tabs{
  display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px;
  border-bottom:1px solid var(--border);padding-bottom:12px;
}
.price-tab{
  background:none;border:1px solid var(--border);color:var(--muted);
  padding:5px 14px;border-radius:6px;cursor:pointer;font-size:.8rem;
  transition:all .15s;font-family:inherit;
}
.price-tab:hover{border-color:var(--yellow);color:var(--yellow)}
.price-tab.active{background:var(--yellow);color:#000;border-color:var(--yellow);font-weight:700}

.price-general-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;
}

.price-mat-header{margin-bottom:16px}

.price-stock-group{margin-bottom:18px}
.price-stock-cbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.price-stock-cb{
  display:flex;align-items:center;gap:5px;cursor:pointer;
  font-size:.82rem;color:var(--text);
}
.price-stock-cb input{accent-color:var(--yellow);width:14px;height:14px;cursor:pointer}

.price-table-wrap{overflow-x:auto}
.price-table{
  width:100%;border-collapse:collapse;font-size:.8rem;
}
.price-table th{
  background:var(--dark2);color:var(--muted);font-weight:600;
  padding:7px 10px;text-align:left;font-size:.72rem;letter-spacing:.5px;
  white-space:nowrap;border-bottom:1px solid var(--border);
}
.price-table td{
  padding:5px 6px;border-bottom:1px solid var(--border);vertical-align:middle;
}
.price-thk-label{
  font-size:.8rem;color:var(--muted);font-weight:600;white-space:nowrap;padding-right:8px;
}
.price-inp{
  background:var(--dark2);border:1px solid var(--border);border-radius:5px;
  color:var(--text);padding:4px 7px;font-size:.8rem;font-family:inherit;
  width:90px;outline:none;transition:border-color .15s;
}
.price-inp:focus{border-color:var(--yellow)}
.price-sel{
  background:var(--dark2);border:1px solid var(--border);border-radius:5px;
  color:var(--text);padding:4px 6px;font-size:.8rem;font-family:inherit;
  outline:none;cursor:pointer;transition:border-color .15s;
}
.price-sel:focus{border-color:var(--yellow)}

/* RGPD: botão eliminar conta */
.perfil-delete-btn {
  background: #2a1010;
  color: #ff6b6b;
  border: 1px solid #ff4a4a55;
  padding: 10px 20px;
  border-radius: 6px;
  cursor: pointer;
  font-family: inherit;
  font-size: .9rem;
  font-weight: 600;
  transition: background .15s, border-color .15s;
}
.perfil-delete-btn:hover:not(:disabled) {
  background: #3a1414;
  border-color: #ff4a4a;
}
.perfil-delete-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}
