/* FirewallX — system settings pages (shared) */

.p-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.p-master {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-radius: var(--r-lg);
  border: 1px solid var(--line);
  background: rgba(10, 15, 27, 0.6);
  margin-bottom: 18px;
}
.p-master strong { display: block; font-size: var(--s-lg); font-weight: 600; }
.p-master span { display: block; color: var(--steel); font-size: var(--s-sm); margin-top: 2px; max-width: 60ch; }
.p-master:has(.fx-switch:checked) { border-color: rgba(127, 208, 255, 0.35); background: linear-gradient(90deg, rgba(127, 208, 255, 0.08), rgba(10, 15, 27, 0.6) 60%); }
html[dir="rtl"] .p-master:has(.fx-switch:checked) { background: linear-gradient(-90deg, rgba(127, 208, 255, 0.08), rgba(10, 15, 27, 0.6) 60%); }
.p-master .fx-switch { transform: scale(1.15); }

.p-toolbar { display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap; margin-bottom: 12px; }
.p-toolbar .fx-input { max-width: 360px; }
.p-count { font-size: var(--s-xs); color: var(--steel); }

/* Action rows (anti-nuke) */
.p-acts { display: grid; border-top: 1px solid var(--line); }
.p-act {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 92px 170px;
  gap: 14px;
  align-items: center;
  padding: 12px 4px;
  border-bottom: 1px solid var(--line);
  transition: background 0.2s;
}
.p-act:hover { background: rgba(255, 255, 255, 0.015); }
.p-act__name { font-weight: 600; font-size: var(--s-sm); }
.p-act__key { font-family: var(--f-mono); font-size: 11px; color: var(--steel); }
.p-act .fx-input, .p-act .fx-select { min-height: 36px; padding-block: 0.4em; }
.p-act.is-off .p-act__name { color: var(--steel); }
.p-act.tier-locked { opacity: 0.45; }
.p-act__lbl { display: none; }
@media (max-width: 680px) {
  .p-act { grid-template-columns: auto 1fr; }
  .p-act > label { grid-column: span 1; }
  .p-act__lbl { display: block; font-size: 11px; color: var(--steel); margin-bottom: 4px; }
  .p-act__f { grid-column: span 1; }
}

/* ID lists (whitelists) */
.p-ids textarea { font-family: var(--f-mono); font-size: 12.5px; min-height: 150px; }
.p-ids__meta { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; gap: 10px; }
.p-ids__actions { display: flex; gap: 6px; margin-top: 8px; }
.invalidField { border-color: var(--fire) !important; }
.invalidNote { color: #ff9d93; font-size: var(--s-xs); margin-top: 6px; }

/* Settings sections */
.p-sec { scroll-margin-top: 20px; }
.p-sub { font-size: var(--s-sm); font-weight: 600; color: var(--mist); margin: 18px 0 10px; }

/* Words / chips editor */
.p-words { display: grid; gap: 8px; }
.p-words__add { display: flex; gap: 8px; }
.p-words__add .fx-input { flex: 1; }

/* Generic tier lock overlay from older pages */
.tier-locked[data-required-label] { position: relative; }
