/* ===== MelanySports admin theme — gold / silver / black ===== */
:root,
html[data-theme="light"],
html[data-theme="dark"] {
  --primary: #e9c24a;
  --primary-fg: #17130a;
  --secondary: #1c1c21;
  --accent: #e9c24a;

  --body-bg: #0a0a0c;
  --body-fg: #f1f1f3;
  --body-quiet-color: #a3a3ad;
  --body-loud-color: #ffffff;

  --header-color: #f1f1f3;
  --header-branding-color: #e9c24a;
  --header-bg: #111114;
  --header-link-color: #e9c24a;

  --breadcrumbs-fg: #d3d8df;
  --breadcrumbs-link-fg: #e9c24a;
  --breadcrumbs-bg: #141417;

  --link-fg: #e9c24a;
  --link-hover-color: #f3d267;
  --link-selected-fg: #f3d267;

  --hairline-color: #2a2a31;
  --border-color: #2a2a31;

  --button-bg: #e9c24a;
  --button-fg: #17130a;
  --button-hover-bg: #f3d267;
  --default-button-bg: #b98a2e;
  --default-button-hover-bg: #d3a533;
  --close-button-bg: #3b3b45;
  --close-button-hover-bg: #4a4a55;
  --delete-button-bg: #c0392b;
  --delete-button-hover-bg: #e14b3a;

  --object-tools-bg: #b98a2e;
  --object-tools-fg: #17130a;
  --object-tools-hover-bg: #d3a533;

  --module-bg: #141417;
  --darkened-bg: #17171b;
  --selected-bg: #1c1c21;
  --selected-row: #23231b;

  --message-success-bg: #16281e;
  --message-warning-bg: #2a2413;
  --message-error-bg: #2a1414;

  --font-family-primary: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

body { background: var(--body-bg); color: var(--body-fg); }

/* Header / branding */
#header {
  background: linear-gradient(180deg, #141417, #0d0d10);
  border-bottom: 1px solid #2a2a31;
  box-shadow: 0 2px 14px -6px rgba(0,0,0,.8);
}
#branding img { height: 62px; display: block; margin: 6px 0; }
#branding h1, #branding h1 a:link, #branding h1 a:visited { color: var(--accent); font-weight: 800; }
#user-tools { color: var(--body-quiet-color); }
#user-tools a { border-bottom-color: rgba(233,194,74,.4); }

/* Module cards */
.module { background: var(--module-bg); border: 1px solid #23232a; border-radius: 12px; overflow: hidden; }
.module h2, .module caption, .inline-group h2 {
  background: linear-gradient(180deg, #b98a2e, #a2761f);
  color: #17130a; font-weight: 800; letter-spacing:.02em;
}
div.breadcrumbs { background: var(--breadcrumbs-bg); border-bottom: 1px solid #2a2a31; }

/* Links & buttons */
a:link, a:visited { color: var(--link-fg); }
.button, input[type=submit], input[type=button], .submit-row input, a.button {
  background: var(--button-bg); color: var(--button-fg); font-weight: 700; border-radius: 8px;
}
.button:hover, input[type=submit]:hover { background: var(--button-hover-bg); }
.button.default, input[type=submit].default, .submit-row input.default {
  background: linear-gradient(180deg,#f3d267,#d3a533); color:#17130a;
}
.object-tools a { border-radius: 7px; }

/* Forms */
.form-row { border-bottom: 1px solid #202027; }
fieldset.module { margin-bottom: 16px; }
input, textarea, select, .vTextField {
  background: #0c0c10; color: var(--body-fg); border: 1px solid #3b3b45; border-radius: 8px;
}
input:focus, textarea:focus, select:focus { border-color: var(--accent); outline: none; }
.help, .helptext, .form-row .help { color: var(--body-quiet-color); }
.selected, tr.selected { background: var(--selected-row); }

/* Login page */
.login #container { background: var(--module-bg); border:1px solid #2a2a31; border-radius:14px; box-shadow:0 30px 70px -40px #000; }
.login #header { border-radius: 14px 14px 0 0; }
.login .submit-row input { width: 100%; }

/* ===== sports + schedule checkbox grids (horizontal) ===== */
div[id^="id_sports__"],
div[id^="id_times__"] {
  display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 4px 0 2px; max-width: 900px;
}
div[id^="id_sports__"] > div,
div[id^="id_times__"] > div { margin: 0; }
div[id^="id_sports__"] label,
div[id^="id_times__"] label {
  font-weight: 500; display: inline-flex; align-items: center; gap: 4px;
  background: #101014; border: 1px solid #2f2f38; border-radius: 7px;
  padding: 4px 9px; cursor: pointer; color: var(--body-fg); font-size: 12.5px;
}
div[id^="id_sports__"] input:checked + label,
div[id^="id_times__"] input:checked + label { }
/* the checkbox sits inside the label in django's widget; tint checked labels */
div[id^="id_sports__"] label:has(input:checked),
div[id^="id_times__"] label:has(input:checked) {
  background: rgba(233,194,74,.14); border-color: rgba(233,194,74,.55); color: #f3d267;
}
.melany-cat h2 { font-size: 13px; }
.melany-intro .description { color: var(--body-quiet-color); }

/* calendar widget accents */
.calendarbox, .clockbox { background:#141417; border:1px solid #2a2a31; }
.calendar caption, .calendarbox h2 { background:#b98a2e; color:#17130a; }
.calendar td.selected a { background: var(--accent); color:#17130a; }
.datetimeshortcuts a { color: var(--link-fg); }
