/* Vita Sapien — floating "Support" panel
   Site-wide, always-present path to Subscribe / Become a Member / Shop.
   Reuses nav.css's colour tokens so it matches automatically. */

#vs-support-root, #vs-support-root * { box-sizing: border-box; }

.vs-sup-fab {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 900;
  font-family: 'Lato', sans-serif;
}

.vs-sup-toggle {
  background: var(--vn-amber, #22a198);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 14px 22px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .5px;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
  transition: background .2s, transform .15s;
}
.vs-sup-toggle:hover { background: var(--vn-amber-light, #2ec4bb); transform: translateY(-1px); }

.vs-sup-panel {
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  width: 240px;
  background: var(--vn-soil, #000721);
  border: 1px solid rgba(34,161,152,.2);
  border-radius: 12px;
  padding: 10px;
  display: none;
  flex-direction: column;
  gap: 4px;
  box-shadow: 0 16px 40px rgba(0,0,0,.35);
}
.vs-sup-panel.is-open { display: flex; }

.vs-sup-panel a, .vs-sup-panel button.vs-sup-item {
  display: block;
  width: 100%;
  text-align: left;
  padding: 12px 14px;
  border-radius: 8px;
  text-decoration: none;
  background: none;
  border: none;
  color: var(--vn-cream, #d8e4ee);
  font-family: inherit;
  font-size: 15px;
  cursor: pointer;
}
.vs-sup-panel a:hover, .vs-sup-panel button.vs-sup-item:hover {
  background: rgba(34,161,152,.1);
  color: var(--vn-amber-light, #2ec4bb);
}

.vs-sup-sub-form {
  display: none;
  flex-direction: column;
  gap: 8px;
  padding: 8px 14px 12px;
}
.vs-sup-sub-form.is-open { display: flex; }

.vs-sup-sub-form input[type="email"] {
  padding: 8px 10px;
  border-radius: 6px;
  border: 1px solid rgba(216,228,238,.3);
  background: rgba(255,255,255,.05);
  color: var(--vn-cream, #d8e4ee);
  font-family: inherit;
  font-size: 13px;
}

.vs-sup-sub-form button {
  padding: 8px 10px;
  border-radius: 6px;
  border: none;
  background: var(--vn-amber, #22a198);
  color: #fff;
  font-family: inherit;
  font-size: 13px;
  cursor: pointer;
}

.vs-sup-sub-status {
  font-size: 12px;
  color: var(--vn-amber-light, #2ec4bb);
  padding: 0 14px;
}

@media (max-width: 500px) {
  .vs-sup-panel { width: calc(100vw - 40px); }
}
