:root {
  --zoikos-bg: #0f1a14;
  --zoikos-deep: #09110c;
  --zoikos-panel: #14251a;
  --zoikos-panel-soft: #1a3021;
  --zoikos-field: #0c1811;
  --zoikos-border: rgba(159, 227, 182, 0.25);
  --zoikos-accent: #9fe3b6;
  --zoikos-accent-strong: #55b878;
  --zoikos-text: #eef7ef;
  --zoikos-muted: #b8d4c0;
  --zoikos-danger: #ff9b9b;
  color-scheme: dark;
}

html,
body {
  background: var(--zoikos-bg) !important;
  color: var(--zoikos-text) !important;
}

body {
  background-image:
    radial-gradient(circle at 50% 0, rgba(110, 168, 126, 0.15), transparent 34%),
    linear-gradient(180deg, #122016 0%, var(--zoikos-bg) 58%, var(--zoikos-deep) 100%) !important;
}

.auth-card,
.profile-card,
.communications-card,
.pets-card,
main > .card,
.shell > .card {
  background: rgba(20, 37, 26, 0.96) !important;
  border-color: var(--zoikos-border) !important;
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.3) !important;
}

.auth-card::before,
.auth-card::after {
  background: linear-gradient(90deg, transparent, var(--zoikos-accent), transparent) !important;
}

.eyebrow {
  display: none !important;
}

.auth-tab.is-active,
.tab.active,
.primary-button,
.primary,
.counter {
  color: #07110a !important;
  background: linear-gradient(180deg, #bcecca 0%, var(--zoikos-accent-strong) 100%) !important;
  border-color: transparent !important;
  box-shadow: 0 0 1rem rgba(85, 184, 120, 0.22) !important;
}

.auth-tabs,
.tabs,
.entry,
.photo-card,
.pet-card,
.stat,
fieldset,
.form,
.message,
#msg,
.message-box {
  background: var(--zoikos-panel-soft) !important;
  border-color: var(--zoikos-border) !important;
}

.entry {
  border-left-color: var(--zoikos-accent-strong) !important;
}

input,
select,
textarea {
  color: var(--zoikos-text) !important;
  background: var(--zoikos-field) !important;
  border-color: var(--zoikos-border) !important;
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible,
a:focus-visible {
  outline-color: var(--zoikos-accent) !important;
}

.text-button,
.secondary-button,
.small-button,
button:not(.primary):not(.primary-button):not(.auth-tab):not(.tab) {
  color: var(--zoikos-text);
  background-color: rgba(210, 240, 220, 0.05);
  border-color: var(--zoikos-border);
}

.subtitle,
.identity,
.muted,
.meta,
.privacy,
.empty,
.empty-state,
small {
  color: var(--zoikos-muted) !important;
}

.panel h2,
.form-section h2,
.stat strong,
a,
.text-button {
  color: var(--zoikos-accent) !important;
}

.badge.active,
.message.success {
  color: #07110a !important;
  background: #72d99a !important;
}

.danger,
[data-a="delete"],
.small-button.danger {
  color: var(--zoikos-danger) !important;
}

footer {
  color: #86ad91 !important;
}

@media (max-width: 600px) {
  .auth-card,
  .profile-card,
  .communications-card,
  .pets-card,
  main > .card,
  .shell > .card {
    border-radius: 1.15rem !important;
  }
}
