/* 2DGolf recovery overrides - clean rebuild */

html, body {
  background: #f6f6f3 !important;
  color: #142132 !important;
}

input,
select,
textarea,
.input {
  background: #ffffff !important;
  color: #142132 !important;
  -webkit-text-fill-color: #142132 !important;
  caret-color: #2563eb !important;
  border: 1px solid rgba(15,23,42,.14) !important;
}

input::placeholder,
textarea::placeholder {
  color: #94a3b8 !important;
  opacity: 1 !important;
}

/* Admin content width and spacing */
body.admin main,
body.admin .main,
body.admin .page,
body.admin .page-content,
body.admin .content,
body.admin .content-wrap,
body.admin .admin-page,
body.admin .admin-content,
body.admin .container {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 16px 32px !important;
  background: transparent !important;
  color: #142132 !important;
}

/* Kill giant inherited landing-page spacing */
body.admin .section,
body.admin section {
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}

/* Pull first block up under nav */
body.admin .topbar {
  margin: 16px auto 12px !important;
}

body.admin .topbar + *,
body.admin .topbar + main,
body.admin .topbar + .page,
body.admin .topbar + .page-content,
body.admin .topbar + .content,
body.admin .topbar + .content-wrap,
body.admin .topbar + .admin-page,
body.admin .topbar + .admin-content,
body.admin .topbar + .container,
body.admin .topbar + .section,
body.admin .topbar + section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Hide empty spacer wrappers */
body.admin .section:empty,
body.admin section:empty,
body.admin .card:empty,
body.admin .panel:empty,
body.admin .admin-card:empty,
body.admin .content-card:empty,
body.admin .page-content > .section:empty,
body.admin .admin-content > .section:empty,
body.admin main > .section:empty,
body.admin main > section:empty {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

/* Card visibility */
body.admin .card,
body.admin .panel,
body.admin .admin-card,
body.admin .settings-card,
body.admin .stat-card,
body.admin .form-card,
body.admin .table-card,
body.admin .content-card,
body.admin .section-card,
body.admin .booking-card,
body.admin .enquiry-card,
body.admin .gallery-card,
body.admin .lb-card {
  width: 100% !important;
  max-width: 100% !important;
  background: #ffffff !important;
  color: #142132 !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.06) !important;
  padding: 20px !important;
  margin: 0 0 16px !important;
}

/* Text visibility */
body.admin h1,
body.admin h2,
body.admin h3,
body.admin h4,
body.admin h5,
body.admin h6,
body.admin p,
body.admin li,
body.admin label,
body.admin span,
body.admin div,
body.admin td,
body.admin th,
body.admin small {
  color: #142132 !important;
}

/* Form sizing */
body.admin form {
  width: 100% !important;
  max-width: 100% !important;
}

body.admin input,
body.admin select,
body.admin textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 46px !important;
  padding: 12px 14px !important;
  font-size: 16px !important;
}

body.admin textarea {
  min-height: 140px !important;
}

body.admin label {
  display: block !important;
  margin: 0 0 8px !important;
  font-weight: 700 !important;
}
/* =========================================
   BUTTON SYSTEM CLEANUP
   ========================================= */

:root{
  --ui-green:#0b4f39;
  --ui-green-dark:#083b2b;
  --ui-gold:#d4af37;
  --ui-gold-dark:#be9a28;
  --ui-text:#142132;
  --ui-border:rgba(15,23,42,.10);
  --ui-radius:16px;
  --ui-shadow:0 8px 22px rgba(15,23,42,.06);
}

/* Base button shape */
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
a.btn,
a.button,
.btn,
.button,
.admin-pill {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  padding:0 18px !important;
  border-radius:16px !important;
  border:1px solid var(--ui-border) !important;
  font-weight:700 !important;
  line-height:1 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transition:background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s ease !important;
}

/* Primary = gold */
button,
input[type="submit"],
.btn-primary,
.button-primary,
.btn-main,
.button-gold,
a.btn-primary,
a.button-primary {
  background:var(--ui-gold) !important;
  color:#111 !important;
  border-color:transparent !important;
}

button:hover,
input[type="submit"]:hover,
.btn-primary:hover,
.button-primary:hover,
.btn-main:hover,
.button-gold:hover,
a.btn-primary:hover,
a.button-primary:hover {
  background:var(--ui-gold-dark) !important;
  color:#111 !important;
}

/* Secondary = white/green */
.btn,
.button,
.btn-secondary,
.button-secondary,
.admin-pill,
a.btn,
a.button,
a.admin-pill {
  background:#fff !important;
  color:var(--ui-green) !important;
  border:1px solid var(--ui-border) !important;
}

.btn:hover,
.button:hover,
.btn-secondary:hover,
.button-secondary:hover,
.admin-pill:hover,
a.btn:hover,
a.button:hover,
a.admin-pill:hover {
  background:#f7f7f4 !important;
  color:var(--ui-green-dark) !important;
}

/* Danger buttons */
.btn-danger,
.button-danger,
a.btn-danger,
button.btn-danger {
  background:#fff !important;
  color:#b42318 !important;
  border:1px solid rgba(180,35,24,.22) !important;
}

.btn-danger:hover,
.button-danger:hover,
a.btn-danger:hover,
button.btn-danger:hover {
  background:#fff5f5 !important;
  color:#8f1d14 !important;
}

/* Small utility buttons */
.btn-sm,
.button-sm {
  min-height:40px !important;
  padding:0 14px !important;
  border-radius:14px !important;
}

/* Keep form buttons tidy on admin pages */
body.admin .admin-pill,
body.admin .btn,
body.admin .button,
body.admin button,
body.admin input[type="submit"],
body.admin input[type="button"] {
  margin:0 8px 8px 0 !important;
}

/* Fix odd inline links that should look like buttons if classed */
a.btn,
a.button,
a.admin-pill {
  cursor:pointer !important;
}
