/* Fever Sports admin form foundation. Load after admin.css. */
:root {
  --form-height: 52px;
  --form-radius: 12px;
  --form-border: #d2dacf;
  --form-hover: #91a18b;
  --form-muted: #eef1e9;
  --form-gap: 18px;
  --form-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2363716d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}
:is(main, dialog, .login) label { gap: 8px; font-size: 14px; font-weight: 700; }
:is(main, dialog, .login) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):not([type=color]):not([type=range]), select, textarea) {
  min-width: 0; max-width: 100%; min-height: var(--form-height);
  border: 1px solid var(--form-border); border-radius: var(--form-radius);
  padding: 13px 16px; background-color: #fff; color: var(--ink);
  font-family: Arial, Helvetica, sans-serif; font-size: 16px; line-height: 24px;
  box-shadow: 0 2px 4px #151e2505;
  transition: border-color .15s, box-shadow .15s;
}
:is(main, dialog, .login) select {
  appearance: none; -webkit-appearance: none; height: var(--form-height);
  padding-right: 48px; font-weight: 600; cursor: pointer;
  background-image: var(--form-arrow); background-repeat: no-repeat;
  background-position: right 16px center;
}
:is(main, dialog, .login) textarea { min-height: 112px; resize: vertical; }
:is(main, dialog, .login) :is(input, select, textarea):hover:not(:disabled):not([readonly]) { border-color: var(--form-hover); }
:is(main, dialog, .login) :is(input, select, textarea):focus-visible {
  outline: none; border-color: var(--orange); box-shadow: 0 0 0 3px #ed421c1a;
}
:is(main, dialog, .login) :is(input, select, textarea):is(:disabled, [readonly]) {
  background-color: var(--form-muted); color: #63716d; box-shadow: none; cursor: default;
}
:is(main, dialog, .login) :is(input[type=checkbox], input[type=radio]) {
  width: 20px; min-width: 20px; height: 20px; min-height: 20px;
  padding: 0; accent-color: var(--orange); flex-shrink: 0; cursor: pointer;
}
:is(main, dialog, .login) label.check { flex-direction: row; align-items: center; gap: 10px; }
:is(main, dialog, .login) label:has(> input:is([type=checkbox], [type=radio])), .settings-grid .setting-toggle { flex-direction: row; align-items: center; gap: 10px; }
.fields { gap: var(--form-gap); align-items: start; }
.fields > label { min-width: 0; }
.fields > .full { grid-column: 1 / -1; }
:is(main, dialog, .login) form > button,
:is(.dialog-actions, .planning-actions, .dt-actions) > button {
  min-height: 48px; padding: 12px 18px; border-radius: var(--form-radius); margin: 0;
}
:is(.dialog-actions, .planning-actions, .dt-actions) { gap: 12px; align-items: stretch; }
.dialog-head > button { border-radius: var(--form-radius); min-width: 44px; min-height: 44px; }
.datetime-field > button {
  min-height: var(--form-height); padding: 13px 16px;
  border-color: var(--form-border); border-radius: var(--form-radius); font-size: 16px;
}
.toolbar { align-items: flex-end; gap: 14px; }
.toolbar > button { min-height: var(--form-height); border-radius: var(--form-radius); }
.customer-toolbar input, .customer-toolbar > button { height: var(--form-height); min-height: var(--form-height); }
.access-permissions > label { font-size: 13px; }
.settings-grid form > label:not(.setting-toggle), .settings-grid form > .fields { margin-top: 18px; }
.planning-head > div, .dialog-head > div { min-width: 0; flex: 1; }
.planning-head h2, .dialog-head h2 { min-width: 0; overflow-wrap: anywhere; }
.planning-head > button, .dialog-head > button { flex-shrink: 0; border-radius: var(--form-radius); }
@media (max-width: 720px) {
  .planning-head { gap: 12px; }
  .planning-head h2 { font-size: 26px; }
  .fields { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  :is(.dialog-actions, .planning-actions) > button { flex: 1 1 120px; }
}
@media (prefers-reduced-motion: reduce) {
  :is(main, dialog, .login) :is(input, select, textarea) { transition: none; }
}
/* Facility photographs share the standard card spacing and controls. */
.facility-photo,.facility-photo-empty{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;margin-bottom:20px}.facility-photo-empty{display:flex;align-items:center;justify-content:center;gap:12px;background:#f1f3ed;color:#697970}.facility-photo-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px}.photo-upload{position:relative;display:inline-flex!important;align-items:center;gap:8px;padding:12px 16px;border:1px solid #d9dfd7;border-radius:12px;cursor:pointer;overflow:hidden}.photo-upload input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.photo-upload:focus-within{outline:3px solid #ff765a;outline-offset:3px}
