:root{ --dcr-primary:#0b2632; --dcr-radius:12px; }
.dcr-form-wrapper { max-width: 560px; margin: 1rem auto; }
.dcr-form .dcr-field { margin-bottom: 12px; }
.dcr-form label { display:block; font-weight:600; margin-bottom:6px; }
.dcr-form input[type="text"],
.dcr-form input[type="email"],
.dcr-form input[type="date"],
.dcr-form select { width:100%; padding:10px; border:1px solid #cbd5e1; border-radius: var(--dcr-radius); box-shadow:0 1px 0 rgba(0,0,0,.02) inset; }
.dcr-actions { margin-top: 16px; }
.dcr-actions button { background:var(--dcr-primary); color:#fff; border:0; padding:10px 14px; border-radius: calc(var(--dcr-radius) + 2px); cursor:pointer; box-shadow:0 1px 2px rgba(0,0,0,.08); }
.dcr-actions button:hover { filter:brightness(1.05); }
.dcr-success { background:#ecfdf5; border:1px solid #d1fae5; padding:10px 12px; margin-bottom:12px; border-radius: var(--dcr-radius); }
.dcr-error { background:#fef2f2; border:1px solid #fee2e2; padding:10px 12px; margin-bottom:12px; border-radius: var(--dcr-radius); }
.dcr-closed { background:#fffbeb; border:1px solid #fde68a; padding:10px 12px; margin-bottom:12px; border-radius: var(--dcr-radius); }
.dash-count { opacity:.7; }

.dcr-countdown{ text-align:center; margin:10px 0 6px; font-weight:700; color:var(--dcr-primary); font-size:1.15rem; }
.dcr-countdown .dcr-countdown-txt{ margin-left:6px; }

/* coral */
    border: none;
    border-radius: var(--dcr-radius);
    box-shadow: 0 1px 2px rgba(0,0,0,.06);
    cursor: pointer;
}
.dcr-actions button:hover,
.dcr-actions input[type="submit"]:hover {
    filter: brightness(1.05);
}
.dcr-actions button:disabled,
.dcr-actions input[type="submit"]:disabled {
    opacity: .6;
    cursor: not-allowed;
}

/* === DCR: Black centered Signup button === */
.dcr-actions button,
.dcr-actions input[type="submit"] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 12px auto 0;
    height: 50px;
    font-weight: 700;
    font-size: 16px;
    color: #ffffff;
    background: #000000; /* black */
    border: none;
    border-radius: var(--dcr-radius);
    box-shadow: 0 1px 2px rgba(0,0,0,.06);
    cursor: pointer;
    text-align: center;
}

.dcr-actions button:hover,
.dcr-actions input[type="submit"]:hover {
    filter: brightness(1.2);
}

/* === DCR: Responsive mobile refinements === */
@media (max-width: 600px) {
  .dcr-form input[type="text"],
  .dcr-form input[type="email"],
  .dcr-form input[type="date"],
  .dcr-form select {
    padding: 14px;
    font-size: 16px; /* prevent zoom on iOS */
  }
  .dcr-actions button,
  .dcr-actions input[type="submit"] {
    height: 54px;
    font-size: 16px;
    margin-top: 20px;
  }
  .dcr-form label {
    font-size: 14px;
  }
}

/* === DCR: Responsive tweaks for mobile === */
@media (max-width: 600px) {
  .dcr-form-wrapper { max-width: 100%; padding: 0 16px; margin: 12px auto; }
  .dcr-form .dcr-field { margin-bottom: 14px; }
  .dcr-form input[type="text"],
  .dcr-form input[type="email"],
  .dcr-form input[type="date"],
  .dcr-form select {
      width: 100%;
      padding: 14px;
      font-size: 16px; /* avoid iOS zoom */
  }
  .dcr-actions button,
  .dcr-actions input[type="submit"] {
      height: 54px;
      font-size: 16px;
      margin-top: 14px;
  }
  .dcr-countdown { font-size: 1rem; padding: 0 6px; text-align: center; }
  .dcr-consent { font-size: 14px; line-height: 1.4; }
}

@media (max-width: 360px) {
  .dcr-actions button,
  .dcr-actions input[type="submit"] {
      height: 52px;
      font-size: 15px;
  }
  .dcr-form input[type="text"],
  .dcr-form input[type="email"],
  .dcr-form input[type="date"],
  .dcr-form select {
      font-size: 15px;
  }
}

/* ---------- Modern Add Registration Page ---------- */

/* Wrap for all fields */
body.wp-admin .wrap .form-table,
body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  margin-bottom: 18px;
}

/* Labels */
body.wp-admin .wrap label {
  font-weight: 600;
  margin-bottom: 6px;
  display: inline-block;
  font-size: 14px;
  color: #111827; /* modern dark gray */
}

/* Inputs + dropdowns */
body.wp-admin .wrap input[type="text"],
body.wp-admin .wrap input[type="email"],
body.wp-admin .wrap select {
  width: 100%;
  max-width: 380px;
  padding: 10px 12px;
  border: 1px solid #d1d5db;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.02) inset;
  transition: border-color .15s ease, box-shadow .15s ease;
  font-size: 14px;
}

body.wp-admin .wrap input[type="text"]:focus,
body.wp-admin .wrap input[type="email"]:focus,
body.wp-admin .wrap select:focus {
  outline: none;
  border-color: #2563eb; /* nice blue */
  box-shadow: 0 0 0 3px rgba(37,99,235,.15);
}

/* Referral + Consent inline */
body.wp-admin .wrap input[name="dcr_ref"] {
  max-width: 260px;
  margin-right: 16px;
}

body.wp-admin .wrap input[name="dcr_consent"] {
  transform: scale(1.1);
  margin-left: 6px;
  margin-right: 4px;
  vertical-align: middle;
}

/* Buttons */
body.wp-admin .wrap .button.button-primary,
body.wp-admin .wrap input[type="submit"].button-primary {
  background: #2563eb;
  border: none;
  border-radius: 12px;
  padding: 12px 18px;
  font-weight: 600;
  font-size: 14px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08);
  transition: filter .15s ease, transform .05s ease;
}

body.wp-admin .wrap .button.button-primary:hover {
  filter: brightness(1.08);
}

body.wp-admin .wrap .button.button-primary:active {
  transform: translateY(1px);
}

/* Page title */
body.wp-admin .wrap h1 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 20px;
}


/* ---------- Vertical Add Registration Page ---------- */

/* Make all fields full width and stacked */
body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  display: block;
  width: 100%;
  max-width: 420px;
  margin-bottom: 18px;
}

/* Labels */
body.wp-admin .wrap label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
  font-size: 14px;
  color: #111827;
}

/* Inputs + dropdowns */
body.wp-admin .wrap input[type="text"],
body.wp-admin .wrap input[type="email"],
body.wp-admin .wrap select {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #d1d5db;
  border-radius: 10px;
  font-size: 14px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.02) inset;
  transition: border-color .15s ease, box-shadow .15s ease;
}

body.wp-admin .wrap input[type="text"]:focus,
body.wp-admin .wrap input[type="email"]:focus,
body.wp-admin .wrap select:focus {
  outline: none;
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37,99,235,.15);
}

/* Referral field full width */
body.wp-admin .wrap input[name="dcr_ref"] {
  max-width: 100%;
}

/* Consent on its own line */
body.wp-admin .wrap .dcr-consent {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  margin-bottom: 18px;
}
body.wp-admin .wrap .dcr-consent input[type="checkbox"] {
  transform: scale(1.1);
}

/* Button full width */
body.wp-admin .wrap .button.button-primary,
body.wp-admin .wrap input[type="submit"].button-primary {
  display: block;
  width: 100%;
  max-width: 420px;
  background: #2563eb;
  border: none;
  border-radius: 10px;
  padding: 12px;
  font-weight: 600;
  font-size: 15px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08);
  transition: filter .15s ease, transform .05s ease;
}

body.wp-admin .wrap .button.button-primary:hover {
  filter: brightness(1.08);
}


/* ---------- Enforced Vertical Add Registration Layout ---------- */

/* Force full vertical layout */
body.wp-admin .wrap .form-table,
body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  display: block !important;
  width: 100% !important;
  max-width: 420px;
  margin-bottom: 18px;
  float: none !important;
  clear: both !important;
}

/* Make inputs always 100% wide */
body.wp-admin .wrap input[type="text"],
body.wp-admin .wrap input[type="email"],
body.wp-admin .wrap select {
  display: block !important;
  width: 100% !important;
  max-width: 420px;
  margin-bottom: 12px;
}

/* Consent on its own line */
body.wp-admin .wrap .dcr-consent {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
}


/* ---------- Unified Button Styling ---------- */

body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  display: block !important;
  width: 100% !important;
  max-width: 320px;
  margin-bottom: 12px;
  padding: 10px; /* uniform padding */
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  text-align: center;
  transition: filter .15s ease, transform .05s ease;
}

/* Primary (Add Registration) */
body.wp-admin .wrap .button.button-primary,
body.wp-admin .wrap input[type="submit"].button-primary {
  background: #2563eb;
  border: none;
  color: #fff;
  box-shadow: 0 2px 4px rgba(0,0,0,.06);
}
body.wp-admin .wrap .button.button-primary:hover {
  filter: brightness(1.08);
}
body.wp-admin .wrap .button.button-primary:active {
  transform: translateY(1px);
}

/* Secondary (Back to Registrations) */
body.wp-admin .wrap .button:not(.button-primary) {
  background: #fff;
  border: 1px solid #d1d5db;
  color: #374151;
}
body.wp-admin .wrap .button:not(.button-primary):hover {
  background: #f9fafb;
  border-color: #9ca3af;
}


/* ---------- Centered Vertical Add Registration Layout ---------- */

/* Force single-column vertical layout and center the form */
body.wp-admin .wrap form {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  width: 100% !important;
  max-width: 420px;
  margin-bottom: 16px;
}

/* Inputs + dropdowns full width */
body.wp-admin .wrap input[type="text"],
body.wp-admin .wrap input[type="email"],
body.wp-admin .wrap select {
  width: 100% !important;
  max-width: 420px;
  display: block !important;
}

/* Consent on its own line */
body.wp-admin .wrap .dcr-consent {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  width: 100%;
  max-width: 420px;
}

/* Buttons full width but centered */
body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  width: 100% !important;
  max-width: 320px;
  margin-bottom: 12px;
}


/* ---------- Centered Single-Column Form Layout ---------- */

/* Force single-column vertical layout and center the form */
body.wp-admin .wrap form {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  width: 100% !important;
  max-width: 420px;
  margin-bottom: 16px;
}

/* Inputs + dropdowns full width */
body.wp-admin .wrap input[type="text"],
body.wp-admin .wrap input[type="email"],
body.wp-admin .wrap select {
  width: 100% !important;
  max-width: 420px;
  display: block !important;
}

/* Consent on its own line */
body.wp-admin .wrap .dcr-consent {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-bottom: 18px !important;
  width: 100% !important;
  max-width: 420px !important;
}

/* Buttons full width but centered */
body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  width: 100% !important;
  max-width: 320px !important;
  margin-bottom: 12px !important;
}


/* ---------- Left-Aligned Add Registration Layout ---------- */

/* Left align the Add Registration form */
body.wp-admin .wrap form {
  display: block !important;    /* disable flex centering */
  max-width: 420px;             /* control width */
}

body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  width: 100% !important;
  max-width: 420px;
  margin-bottom: 16px;
}

body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  width: 100% !important;
  max-width: 320px;
  margin-bottom: 12px;
}


/* ---------- Left-Aligned Add Registration Layout ---------- */

/* Left align the Add Registration form */
body.wp-admin .wrap form {
  display: block !important;    /* disable flex centering */
  max-width: 420px;             /* control width */
}

body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field {
  width: 100% !important;
  max-width: 420px;
  margin-bottom: 16px;
}

body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  width: 100% !important;
  max-width: 320px;
  margin-bottom: 12px;
}


/* ---------- Unified Smaller Buttons for All Registration Pages ---------- */

/* Smaller buttons (25% reduced) */
body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  width: 100% !important;
  max-width: 240px !important;   /* reduced from 320px */
  padding: 8px !important;       /* reduced from 10px */
  font-size: 13px !important;    /* slightly smaller */
  margin-bottom: 10px !important;
}


/* ---------- Wider Email Template Fields ---------- */

body.wp-admin .wrap textarea[name="dcr_admin_email_body"],
body.wp-admin .wrap input[name="dcr_user_email_subject"],
body.wp-admin .wrap textarea[name="dcr_user_email_body"] {
  width: 100% !important;
  max-width: 760px !important;
  min-height: 160px;
}



/* ---------- Global UI/UX refinements for DCR admin ---------- */

/* 1) Page typography */
body.wp-admin .wrap h1 {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: .2px;
  margin: 8px 0 18px;
}
body.wp-admin .wrap p.description,
body.wp-admin .wrap .dcr-help { color:#6b7280; font-size:12.5px; margin-top:6px; }

/* 2) Uniform field spacing */
body.wp-admin .wrap .form-field,
body.wp-admin .wrap .dcr-field { margin-bottom: 14px; }

body.wp-admin .wrap input[type="text"],
body.wp-admin .wrap input[type="email"],
body.wp-admin .wrap select,
body.wp-admin .wrap textarea {
  border:1px solid #d1d5db; border-radius:10px; background:#fff;
  box-shadow:0 1px 2px rgba(0,0,0,.02) inset; transition:border-color .15s, box-shadow .15s;
}
body.wp-admin .wrap input[type="text"]:focus,
body.wp-admin .wrap input[type="email"]:focus,
body.wp-admin .wrap select:focus,
body.wp-admin .wrap textarea:focus {
  outline:none; border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.15);
}

/* 3) Buttons (unified smaller) */
body.wp-admin .wrap .button,
body.wp-admin .wrap input[type="submit"].button {
  display:block !important; width:100% !important; max-width:240px !important;
  padding:8px !important; border-radius:8px; font-weight:600; font-size:13px !important;
  text-align:center; transition:filter .15s, transform .05s; margin-bottom:10px !important;
}
body.wp-admin .wrap .button.button-primary, 
body.wp-admin .wrap input[type="submit"].button-primary {
  background:#2563eb; color:#fff; border:none; box-shadow:0 2px 4px rgba(0,0,0,.06);
}
body.wp-admin .wrap .button:not(.button-primary) { background:#fff; border:1px solid #d1d5db; color:#374151; }
body.wp-admin .wrap .button:hover { filter:brightness(1.06); }
body.wp-admin .wrap .button:active { transform:translateY(1px); }

/* 4) Sessions Manager toolbar */
body.wp-admin .wrap .dcr-toolbar { display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 8px; }
body.wp-admin .wrap .dcr-toolbar .button { margin:0; }
body.wp-admin .wrap .dcr-toolbar input[type="text"] {
  max-width:260px; padding:9px 11px; border-radius:10px;
}

/* 5) Table polish */
body.wp-admin .wrap table.widefat.fixed.striped {
  border-radius:12px; overflow:hidden; border-color:#e5e7eb;
}
body.wp-admin .wrap .widefat th { font-weight:600; color:#111827; }
body.wp-admin .wrap .widefat td, 
body.wp-admin .wrap .widefat th { padding:10px 12px; }

/* Per-level badges */
body.wp-admin .wrap .dcr-badge {
  display:inline-flex; align-items:center; gap:6px; 
  background:#f8fafc; border:1px solid #e5e7eb; color:#1f2937;
  padding:4px 8px; border-radius:999px; margin:2px 6px 2px 0; font-size:12.5px;
}

/* 6) Notices */
body.wp-admin .wrap .dcr-notice {
  border-radius:12px; padding:10px 12px; margin:10px 0 12px; border:1px solid;
}
body.wp-admin .wrap .dcr-notice.success { background:#ecfdf5; border-color:#d1fae5; color:#065f46; }
body.wp-admin .wrap .dcr-notice.info    { background:#eff6ff; border-color:#dbeafe; color:#1e40af; }
body.wp-admin .wrap .dcr-notice.error   { background:#fef2f2; border-color:#fee2e2; color:#991b1b; }

/* 7) Settings cards (optional wrappers) */
body.wp-admin .wrap .dcr-card {
  background:#fff; border:1px solid #e5e7eb; border-radius:12px;
  padding:16px; margin:12px 0 18px; box-shadow:0 1px 2px rgba(0,0,0,.03);
}
body.wp-admin .wrap .dcr-card h3 { margin:0 0 10px; font-weight:600; font-size:15px; }

