:root {
  --pg-green: #00a66a;
  --pg-green-dark: #007f50;
  --pg-pink: #ec008c;
  --pg-pink-dark: #bd006f;
  --pg-yellow: #ffe500;
  --pg-blue: #27318f;
  --pg-ink: #20243a;
  --pg-paper: #ffffff;
  --pg-soft: #f6f8fb;
  --pg-line: #dce3e8;
  --pg-shadow: 0 7px 22px rgba(23, 45, 73, .11);
}

html { accent-color: var(--pg-green); }

body {
  color: var(--pg-ink);
  background:
    radial-gradient(circle at 96% 4%, rgba(255, 229, 0, .18), transparent 18rem),
    linear-gradient(180deg, #f7fffb 0, var(--pg-soft) 22rem, #fff 100%);
}

body::before {
  content: "";
  display: block;
  position: fixed;
  z-index: 99999;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--pg-green) 0 38%, var(--pg-yellow) 38% 45%, var(--pg-pink) 45% 78%, var(--pg-blue) 78%);
  pointer-events: none;
}

h1, h2, h3 { color: var(--pg-blue); }
h1 { text-shadow: 0 1px 0 #fff; }

a { color: var(--pg-blue); }
a:hover { color: var(--pg-pink-dark); }

header, .top, .head, .brand, .site-header {
  border-top-color: var(--pg-green) !important;
}

.wrap, .vwrap, .page, main, .container {
  scrollbar-color: var(--pg-green) #eaf1ee;
}

.box, .card, .panel, .login, .customerBox, .profile-card, .product, .product-card {
  border-color: var(--pg-line);
}

input, select, textarea {
  border-color: #bdc9d0 !important;
  outline: none;
}

input:focus, select:focus, textarea:focus {
  border-color: var(--pg-green) !important;
  box-shadow: 0 0 0 3px rgba(0, 166, 106, .14) !important;
}

button, .btn, .button, a.btn, a.button, input[type="submit"] {
  border-radius: 9px;
  font-weight: 800;
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
}

button:hover, .btn:hover, .button:hover, a.btn:hover, a.button:hover, input[type="submit"]:hover {
  filter: brightness(.97);
  transform: translateY(-1px);
}

/* Common navigation and primary actions */
.nav a, nav a, .actions a, .actions button,
.videos, .videosLink, .account, .accountLink,
.order, .orderLink, .primary, .save, .submit,
button[name="add_user"] {
  background: linear-gradient(135deg, var(--pg-green), var(--pg-green-dark));
  color: #fff !important;
  border-color: var(--pg-green-dark) !important;
  box-shadow: 0 4px 0 #006740, 0 7px 15px rgba(0, 127, 80, .16);
}

/* Secondary actions */
.secondary, .my-account, .account, .accountLink {
  background: linear-gradient(135deg, #ff9d28, #ec7600) !important;
  border-color: #d86900 !important;
}

/* Branded catalogue tabs */
.categoryBtn, .category-btn, .tab, .tabs button {
  background: linear-gradient(135deg, var(--pg-pink), var(--pg-pink-dark));
  color: #fff;
  border-color: var(--pg-pink-dark) !important;
}

table { border-color: var(--pg-line); }
th {
  background: linear-gradient(135deg, var(--pg-blue), #182061) !important;
  color: #fff !important;
  border-color: #4650a6 !important;
}
tr:nth-child(even) td { background-color: rgba(0, 166, 106, .035); }

/* Keep stock, delete and availability meanings unchanged. */
.available, .on, .success, .whatsapp, .product-available { color: #087a48; }
.not-available, .unavailable, .off, .danger, .error, .delete, .clearItem, .product-not-available { color: #c8212d; }

.notice, .message, .flash, .alert-success {
  border-left: 5px solid var(--pg-green);
  background: #eafff5;
}

.badge, .count, .pill {
  background: var(--pg-yellow);
  color: #202020;
}

@media (max-width: 700px) {
  body::before { height: 3px; }
  h1 { letter-spacing: -.02em; }
  button, .btn, .button, a.btn, a.button, input[type="submit"] { min-height: 42px; }
}

@media print {
  body { background: #fff !important; }
  body::before { display: none; }
}
