/* css/settings.css — styles owned by the matching view files: settings, branches, rooms, equipment */

/* ---------- shared by the admin screens ---------- */
.seg.wrap{flex-wrap:wrap}
.seg button:disabled{opacity:.6;cursor:not-allowed}
.card-head.wrap,.section-title.wrap{flex-wrap:wrap}
.chk{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-sm);cursor:pointer;min-height:32px}
.chk input{width:18px;height:18px;margin:0;accent-color:var(--primary);flex:none;color-scheme:light}
html.app-dark .chk input{color-scheme:dark}
.dlg-form{display:flex;flex-direction:column;gap:var(--gap)}
.scroll-x{overflow-x:auto}
.phone-only{display:none;white-space:normal}
.card.tight .note{margin:0;padding:12px var(--pad);border-top:1px solid var(--border)}
.table td.wrap{white-space:normal;min-width:200px}
.table tr.group td{height:32px;background:var(--muted-2);color:var(--text-muted);font-size:var(--fs-xs);font-weight:500;text-transform:uppercase;letter-spacing:.06em}
.chip .lucide{width:1em;height:1em}

/* ---------- settings rows ---------- */
.setting .side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.setting .acts{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.setting .ctl input[type="number"]{flex:0 0 120px;width:120px}
.setting .ctl .unit{color:var(--text-muted);font-size:var(--fs-sm)}
.setting .ctl .error{flex-basis:100%;font-size:var(--fs-xs);color:var(--danger)}
.setting .ctl .error:empty{display:none}
.setting .note{grid-column:1 / -1}

/* ---------- opening hours: one grid per weekday so a phone can reorder the cells ---------- */
.hours-form{display:flex;flex-direction:column;gap:10px}
.hours-form .cap{display:none}
.hours-form .tcell{display:flex;flex-direction:column;gap:4px}
.hours-form .day{font-weight:500}
.hours-form .error:empty{display:none}
.dates .d{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}
.dates .d:last-child{border-bottom:0}

/* ---------- seats ---------- */
.seatgrid{display:flex;flex-wrap:wrap;gap:8px}
.seat.off{background:repeating-linear-gradient(45deg,transparent 0 5px,var(--muted) 5px 10px);color:var(--text-muted);border-style:dashed}
.seat .badge{min-width:18px;height:18px;padding:0 5px;border-radius:9999px;background:var(--muted);color:var(--text-soft);font-size:10px;font-weight:600;display:inline-grid;place-items:center}

@media (max-width:767px){
  .phone-only{display:block;margin-top:4px}
  .setting .side{align-items:flex-start}
  .setting .acts{justify-content:flex-start}
  .hours-form .hhead{display:none}
  .hours-form .hours{grid-template-columns:1fr 1fr}
  .hours-form .day{order:1}
  .hours-form .chk{order:2;justify-self:end}
  .hours-form .tcell{order:3}
  .hours-form .cap{display:block;font-size:var(--fs-xs);color:var(--text-muted)}
  .dates .d{grid-template-columns:1fr auto}
  .dates .d span:nth-child(2){grid-column:1 / -1;grid-row:2;color:var(--text-muted)}
  .dates .d .btn{grid-column:2;grid-row:1}
}
@media (max-width:640px){
  .seg.wrap{display:grid;grid-template-columns:1fr 1fr}
  .card.tight .admin-table{min-width:0}
}
