/* ==========================================================================
   QuickFlora X — brand styling (applied to ERPNext desk + website/portal)
   Brand palette + fonts from the QuickFlora Brand-identity Guidelines.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Open+Sans:wght@400;600;700&display=swap');

:root {
  /* Primary greens */
  --qf-green:        #036A37;  /* PMS 348 C */
  --qf-green-light:  #80C56C;  /* PMS 2269 C */
  /* Accents */
  --qf-blue:         #7FB5CA;  /* PMS 550 C */
  --qf-terracotta:   #CC7C68;  /* PMS 486 C */
  --qf-grey-warm:    #E2DDDB;  /* PMS Cool Grey 1 C */
  --qf-grey-dark:    #656868;  /* PMS 424 C */

  /* Map onto Frappe/ERPNext theme variables */
  --primary:            var(--qf-green);
  --primary-color:      var(--qf-green);
  --btn-primary:        var(--qf-green);
  --text-on-primary:    #ffffff;
  --brand-color:        var(--qf-green);
  --navbar-bg:          #ffffff;
  --bs-primary:         var(--qf-green);
  --bs-link-color:      var(--qf-green);
  --font-stack:         'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ---------- Typography ---------- */
body,
.form-control,
input, select, textarea,
.ql-editor,
.modal-body {
  font-family: var(--font-stack);
}

h1, h2, h3, h4, h5, h6,
.page-title, .title-text,
.navbar-brand,
.ce-header,
.section-head, .form-section .section-head {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}

/* ---------- Primary color: buttons, links, accents ---------- */
.btn-primary,
.btn-modal-primary,
.page-actions .btn-primary {
  background-color: var(--qf-green) !important;
  border-color: var(--qf-green) !important;
  color: #fff !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: #02502a !important;
  border-color: #02502a !important;
}

a, .text-primary,
.link-primary,
.sidebar-item-label a:hover {
  color: var(--qf-green);
}

.indicator-pill.green, .indicator.green::before { background: var(--qf-green-light); }

/* Checkboxes / toggles / focus rings in brand green */
.checkbox input:checked ~ .checkmark,
input[type="checkbox"]:checked,
.form-check-input:checked {
  background-color: var(--qf-green) !important;
  border-color: var(--qf-green) !important;
}
*:focus { outline-color: var(--qf-green-light); }

/* Desk navbar brand logo sizing */
.navbar .navbar-brand img,
.app-logo,
img.app-logo {
  max-height: 28px;
  width: auto;
}

/* ---------- Login / website pages ---------- */
.page-card .page-card-head .indicator,
.for-login .page-card-head {
  font-family: 'Montserrat', sans-serif;
}
.for-login .page-card-head .app-logo,
.login-content .app-logo,
.for-login img[src*="frappe"],
.splash img {
  max-width: 220px;
  height: auto;
}

/* Brand-green primary buttons on the login screen */
.for-login .btn-login,
.btn-login,
.page-card .btn-primary {
  background-color: var(--qf-green) !important;
  border-color: var(--qf-green) !important;
}

/* ---------- Remove residual "Built on Frappe" / Frappe marks ---------- */
.footer-powered,
.powered-by,
.powered-by-frappe,
[data-powered-by],
a[href*="frappe.io"][title*="Frappe"],
.web-footer .footer-powered {
  display: none !important;
}

/* ---------- Web/portal header + footer ---------- */
.navbar.navbar-light { border-bottom: 3px solid var(--qf-green); }
.web-footer { border-top: 3px solid var(--qf-green-light); }
.btn-primary-light { background: var(--qf-green-light); border-color: var(--qf-green-light); }
