:root {
    --accent: #359557;
    --accent-hover: #42ab67;
    --accent-light: rgba(53, 149, 87, 0.15);
    --accent-glow: rgba(53, 149, 87, 0.3);
    --bg-main: #141414;
    --bg-card: #1b1b1b;
    --bg-card-hover: #202020;
    --border-soft: rgba(53, 149, 87, 0.18);
    --text-main: #f3f5f4;
    --text-soft: #b8c3bc;
}

body {
    background: var(--bg-main);
    color: var(--text-main);
}

.text-gradient {
    background: linear-gradient(135deg, var(--accent), #4fc27a, #7fd89d);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.pagedrop-edit-banner {
    background: linear-gradient(135deg, #359557 0%, #42ab67 100%) !important;
    box-shadow: 0 4px 20px rgba(53, 149, 87, 0.3) !important;
}

.pagedrop-edit-banner .button-hero {
    color: #359557 !important;
}

.pagedrop-edit-banner .button-hero:hover {
    color: #256b3d !important;
}

/* Main theme helpers */
.hero-lg,
.section,
.bg-secondary {
    background: var(--bg-main);
    color: var(--text-main);
}

.bg-secondary {
    background: linear-gradient(180deg, rgba(53, 149, 87, 0.08) 0%, rgba(20, 20, 20, 1) 100%);
}

.lead,
.card-text,
p,
li {
    color: var(--text-soft);
}

h1,
h2,
h3,
h4,
h5,
h6,
.card-title {
    color: var(--text-main);
}

.badge {
    background: rgba(53, 149, 87, 0.16);
    color: #6fd48f;
    border: 1px solid rgba(53, 149, 87, 0.3);
}

.card {
    background: var(--bg-card);
    border: 1px solid var(--border-soft);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.card:hover {
    background: var(--bg-card-hover);
    border-color: rgba(53, 149, 87, 0.35);
    box-shadow: 0 14px 34px rgba(53, 149, 87, 0.08);
    transform: translateY(-2px);
}

.btn,
.button,
button,
input[type="submit"] {
    background: #359557;
    color: #ffffff;
    border: 1px solid #359557;
    box-shadow: 0 6px 18px rgba(53, 149, 87, 0.22);
}

.btn:hover,
.button:hover,
button:hover,
input[type="submit"]:hover {
    background: #42ab67;
    border-color: #42ab67;
    color: #ffffff;
}

.btn-outline {
    background: transparent;
    color: #6fd48f;
    border: 1px solid rgba(53, 149, 87, 0.45);
    box-shadow: none;
}

.btn-outline:hover {
    background: rgba(53, 149, 87, 0.12);
    color: #8be0a6;
    border-color: rgba(53, 149, 87, 0.7);
}

.btn-secondary {
    background: #1f1f1f;
    color: #8be0a6;
    border: 1px solid rgba(53, 149, 87, 0.35);
    box-shadow: none;
}

.btn-secondary:hover {
    background: #252525;
    color: #ffffff;
    border-color: #359557;
}

a {
    color: #6fd48f;
}

a:hover {
    color: #8be0a6;
}

.list-check li::marker {
    color: #359557;
}

hr {
    border-color: rgba(53, 149, 87, 0.18);
}

.container,
.container-lg,
.container-md {
    color: inherit;
}
