/* Scafell Pike Site Styles */

:root {
    --scafell-primary: #2d5a27;
    --scafell-secondary: #4a7c59;
    --scafell-accent: #8fbc8f;
    --scafell-dark: #1a3518;
    --scafell-light: #f5f9f5;
    --scafell-text: #333;
    --scafell-text-muted: #666;
    --scafell-border: #e0e0e0;
    --scafell-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --scafell-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --scafell-radius: 8px;
    --scafell-radius-lg: 12px;
}

/* Typography improvements */
html {
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    color: var(--scafell-text);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    line-height: 1.6;
    background: linear-gradient(180deg, #fafafa 0%, #ffffff 100%);
}

/* Layout */
.scafell-main {
    flex: 1;
    padding: 3rem 0;
}

/* Header */
.scafell-header {
    background: linear-gradient(135deg, var(--scafell-dark) 0%, var(--scafell-primary) 100%);
    padding: 1rem 0;
    box-shadow: var(--scafell-shadow-lg);
    position: sticky;
    top: 0;
    z-index: 100;
}

.scafell-logo {
    color: white;
    font-size: 1.5rem;
    text-decoration: none;
    font-weight: 700;
    letter-spacing: -0.5px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.scafell-logo__mark {
    width: 32px;
    height: 32px;
    display: block;
    flex: 0 0 auto;
    image-rendering: auto;
}

.scafell-logo__text {
    display: inline-block;
}

.scafell-logo:hover {
    color: var(--scafell-accent);
}

.scafell-nav .menu {
    justify-content: flex-end;
}

.scafell-nav .menu a {
    color: rgba(255, 255, 255, 0.9);
    padding: 0.5rem 1.25rem;
    border-radius: var(--scafell-radius);
    transition: all 0.2s ease;
    font-weight: 500;
}

.scafell-nav .menu a:hover {
    color: white;
    background: rgba(255, 255, 255, 0.1);
}

/* Footer */
.scafell-footer {
    background: linear-gradient(180deg, var(--scafell-dark) 0%, #0f2310 100%);
    color: white;
    padding: 4rem 0 2rem;
    margin-top: auto;
}

.scafell-footer h4 {
    color: var(--scafell-accent);
    margin-bottom: 1.25rem;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
}

.scafell-footer a {
    color: rgba(255, 255, 255, 0.75);
    transition: color 0.2s ease;
}

.scafell-footer a:hover {
    color: var(--scafell-accent);
}

.scafell-footer .no-bullet li {
    margin-bottom: 0.5rem;
}

.scafell-copyright {
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
    font-size: 0.875rem;
}

/* Content */
.scafell-content {
    line-height: 1.8;
    font-size: 1.0625rem;
}

.scafell-content h1 {
    color: var(--scafell-primary);
    margin-bottom: 1.5rem;
    font-size: 2.5rem;
    font-weight: 700;
    letter-spacing: -0.5px;
    line-height: 1.2;
}

.scafell-content h2 {
    color: var(--scafell-secondary);
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 3px solid var(--scafell-accent);
    font-size: 1.75rem;
    font-weight: 600;
}

.scafell-content h3 {
    color: var(--scafell-dark);
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: 1.375rem;
    font-weight: 600;
}

.scafell-content p {
    margin-bottom: 1.25rem;
}

.scafell-content ul, .scafell-content ol {
    margin-bottom: 1.5rem;
}

.scafell-content li {
    margin-bottom: 0.5rem;
}

/* Sidebar */
.scafell-sidebar {
    position: sticky;
    top: 5rem;
}

/* Page Navigation */
.page-navigation {
    background: var(--scafell-light);
    padding: 1.25rem;
    border-radius: var(--scafell-radius-lg);
    margin-bottom: 1.5rem;
    box-shadow: var(--scafell-shadow);
}

.page-navigation__header {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--scafell-dark);
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.page-navigation__list {
    margin: 0;
}

.page-navigation__item {
    margin-bottom: 0.375rem;
}

.page-navigation__link {
    display: block;
    padding: 0.5rem 0.75rem;
    color: var(--scafell-text-muted);
    border-left: 3px solid transparent;
    transition: all 0.2s ease;
    font-size: 0.9375rem;
    border-radius: 0 var(--scafell-radius) var(--scafell-radius) 0;
}

.page-navigation__link:hover {
    color: var(--scafell-primary);
    border-left-color: var(--scafell-accent);
    background: rgba(45, 90, 39, 0.05);
}

.page-navigation__link.is-active {
    color: var(--scafell-primary);
    font-weight: 600;
    border-left-color: var(--scafell-primary);
    background: rgba(45, 90, 39, 0.08);
}

/* Stat Cards */
.stat-card {
    text-align: center;
    padding: 1.75rem 1.25rem;
    background: var(--scafell-light);
    border-radius: var(--scafell-radius-lg);
    margin-bottom: 1.25rem;
    box-shadow: var(--scafell-shadow);
    border: 1px solid var(--scafell-border);
}

.stat-card__value {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: var(--scafell-primary);
    letter-spacing: -0.5px;
}

.stat-card__label {
    display: block;
    font-size: 0.8125rem;
    color: var(--scafell-text-muted);
    margin-top: 0.375rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 500;
}

/* Callouts */
.callout {
    border-left: 4px solid var(--scafell-accent);
    border-radius: var(--scafell-radius);
    padding: 1.5rem;
    box-shadow: var(--scafell-shadow);
}

.callout h4, .callout h5 {
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.callout p:last-child {
    margin-bottom: 0;
}

.callout.primary {
    background: rgba(45, 90, 39, 0.08);
    border-left-color: var(--scafell-primary);
}

.callout.secondary {
    background: var(--scafell-light);
    border-left-color: var(--scafell-secondary);
}

.callout.success {
    background: rgba(143, 188, 143, 0.15);
    border-left-color: #28a745;
}

.callout.warning {
    background: rgba(255, 193, 7, 0.1);
    border-left-color: #ffc107;
}

.callout.alert {
    background: rgba(220, 53, 69, 0.1);
    border-left-color: #dc3545;
}

/* Buttons */
.button {
    background: var(--scafell-primary);
    border-radius: var(--scafell-radius);
    font-weight: 600;
    letter-spacing: 0.25px;
    padding: 0.85rem 1.5rem;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(45, 90, 39, 0.2);
}

.button:hover {
    background: var(--scafell-dark);
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(45, 90, 39, 0.3);
}

.button.hollow {
    background: transparent;
    border: 2px solid var(--scafell-primary);
    color: var(--scafell-primary);
    box-shadow: none;
}

.button.hollow:hover {
    background: var(--scafell-primary);
    color: white;
}

/* Landing CTA */
.scafell-landing-cta {
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: 1px solid var(--scafell-border);
}

.scafell-landing-cta .callout {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.scafell-landing-cta .callout p {
    flex: 1;
}

/* Hero section for landing pages */
.scafell-hero {
    background: linear-gradient(135deg, var(--scafell-dark) 0%, var(--scafell-primary) 50%, var(--scafell-secondary) 100%);
    color: white;
    padding: 4rem 0;
    margin: -3rem 0 3rem 0;
    text-align: center;
}

.scafell-hero h1 {
    color: white;
    font-size: 3rem;
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.scafell-hero p {
    font-size: 1.25rem;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto 2rem;
}

.scafell-hero .button {
    background: white;
    color: var(--scafell-primary);
    box-shadow: var(--scafell-shadow-lg);
}

.scafell-hero .button:hover {
    background: var(--scafell-light);
    transform: translateY(-2px);
}

/* Feature grid for landing pages */
.scafell-features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    margin: 3rem 0;
}

.scafell-feature {
    background: white;
    padding: 2rem;
    border-radius: var(--scafell-radius-lg);
    box-shadow: var(--scafell-shadow);
    border: 1px solid var(--scafell-border);
    transition: all 0.3s ease;
}

.scafell-feature:hover {
    transform: translateY(-4px);
    box-shadow: var(--scafell-shadow-lg);
}

.scafell-feature__icon {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

.scafell-feature h3 {
    color: var(--scafell-primary);
    margin-bottom: 0.75rem;
}

.scafell-feature p {
    color: var(--scafell-text-muted);
    margin-bottom: 0;
}

/* Quick stats bar */
.scafell-quick-stats {
    display: flex;
    justify-content: center;
    gap: 3rem;
    padding: 1.5rem 2rem;
    background: var(--scafell-light);
    border-radius: var(--scafell-radius-lg);
    margin-bottom: 2rem;
}

.scafell-quick-stat {
    text-align: center;
}

.scafell-quick-stat__value {
    display: block;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--scafell-primary);
}

.scafell-quick-stat__label {
    font-size: 0.875rem;
    color: var(--scafell-text-muted);
}

/* Quick stats inside hero */
.scafell-hero .scafell-quick-stats {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    margin-bottom: 0;
    margin-top: 2rem;
}

.scafell-hero .scafell-quick-stat__value {
    color: white;
}

.scafell-hero .scafell-quick-stat__label {
    color: rgba(255, 255, 255, 0.8);
}

/* Breadcrumbs */
.scafell-breadcrumbs {
    padding: 1rem 0;
    font-size: 0.875rem;
}

.scafell-breadcrumbs a {
    color: var(--scafell-text-muted);
}

.scafell-breadcrumbs a:hover {
    color: var(--scafell-primary);
}

.scafell-breadcrumbs span {
    color: var(--scafell-text-muted);
    margin: 0 0.5rem;
}

/* Quick links in sidebar */
.scafell-quick-links li {
    margin-bottom: 0.625rem;
}

.scafell-quick-links a {
    display: block;
    padding: 0.5rem 0.75rem;
    border-radius: var(--scafell-radius);
    transition: all 0.2s ease;
    color: var(--scafell-text);
}

.scafell-quick-links a:hover {
    background: rgba(45, 90, 39, 0.08);
    color: var(--scafell-primary);
}

/* Route Template specifics */
.scafell-content--route .callout.success {
    background: rgba(143, 188, 143, 0.2);
    border-left-color: var(--scafell-accent);
}

/* Preparation Template specifics */
.scafell-content--preparation ul {
    list-style-type: none;
    padding-left: 0;
}

.scafell-content--preparation ul li::before {
    content: "✓ ";
    color: var(--scafell-primary);
    font-weight: bold;
}

/* Guide Template specifics */
.scafell-content--guide ol {
    counter-reset: step-counter;
    list-style: none;
    padding-left: 0;
}

.scafell-content--guide ol > li {
    counter-increment: step-counter;
    position: relative;
    padding-left: 3rem;
    margin-bottom: 1.5rem;
}

.scafell-content--guide ol > li::before {
    content: counter(step-counter);
    position: absolute;
    left: 0;
    top: 0;
    width: 2rem;
    height: 2rem;
    background: var(--scafell-primary);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

/* Responsive */
@media screen and (max-width: 640px) {
    .scafell-sidebar {
        display: none;
    }

    .scafell-header .menu {
        display: none;
    }

    .scafell-hero {
        padding: 2.5rem 0;
        margin: -3rem 0 2rem 0;
    }

    .scafell-hero h1 {
        font-size: 2rem;
    }

    .scafell-hero p {
        font-size: 1rem;
    }

    .scafell-hero .scafell-quick-stats {
        flex-direction: column;
        gap: 1rem;
        padding: 1rem;
    }

    .scafell-features {
        gap: 1rem;
    }

    .scafell-feature {
        padding: 1.5rem;
    }

    .scafell-content h1 {
        font-size: 1.75rem;
    }

    .scafell-content h2 {
        font-size: 1.375rem;
    }

    .scafell-main {
        padding: 2rem 0;
    }
}

/* Dark Mode */
@media (prefers-color-scheme: dark) {
    :root {
        --scafell-primary: #4a9c3f;
        --scafell-secondary: #6db35f;
        --scafell-accent: #8fbc8f;
        --scafell-dark: #0d1a0b;
        --scafell-light: #1a2518;
        --scafell-text: #e8e8e8;
        --scafell-text-muted: #a0a0a0;
        --scafell-bg: #121812;
        --scafell-bg-elevated: #1a2518;
        --scafell-border: #2a3a28;
        --scafell-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
        --scafell-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.4), 0 4px 6px -2px rgba(0, 0, 0, 0.2);
    }

    /* Base elements */
    html, body {
        background: var(--scafell-bg);
        color: var(--scafell-text);
    }

    /* Hero section dark mode */
    .scafell-hero {
        background: linear-gradient(135deg, #0a120a 0%, var(--scafell-dark) 50%, #1a3a18 100%);
    }

    .scafell-hero .button {
        background: var(--scafell-primary);
        color: white;
    }

    .scafell-hero .button:hover {
        background: var(--scafell-secondary);
    }

    /* Feature cards dark mode */
    .scafell-feature {
        background: var(--scafell-bg-elevated);
        border-color: var(--scafell-border);
    }

    /* Quick stats dark mode */
    .scafell-quick-stats {
        background: var(--scafell-bg-elevated);
        border: 1px solid var(--scafell-border);
    }

    /* All headings */
    h1, h2, h3, h4, h5, h6 {
        color: var(--scafell-text);
    }

    .scafell-content h1 {
        color: var(--scafell-primary);
    }

    .scafell-content h2 {
        color: var(--scafell-secondary);
        border-bottom-color: #3a5a38;
    }

    .scafell-content h3 {
        color: var(--scafell-accent);
    }

    .scafell-content h4, .scafell-content h5, .scafell-content h6 {
        color: var(--scafell-text);
    }

    /* Paragraphs and text */
    p, li, span, div {
        color: var(--scafell-text);
    }

    /* Header */
    .scafell-header {
        background: var(--scafell-dark);
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    }

    /* Footer */
    .scafell-footer {
        background: var(--scafell-dark);
        border-top: 1px solid #2a3a28;
    }

    .scafell-footer h4 {
        color: var(--scafell-accent);
    }

    .scafell-footer p, .scafell-footer li {
        color: rgba(255, 255, 255, 0.8);
    }

    .scafell-copyright {
        color: rgba(255, 255, 255, 0.6);
    }

    /* Page navigation */
    .page-navigation {
        background: var(--scafell-bg-elevated);
        border: 1px solid #2a3a28;
    }

    .page-navigation__header {
        color: var(--scafell-accent);
    }

    .page-navigation__link {
        color: var(--scafell-text-muted);
    }

    .page-navigation__link:hover {
        color: var(--scafell-primary);
    }

    .page-navigation__link.is-active {
        color: var(--scafell-primary);
        background: rgba(74, 156, 63, 0.1);
    }

    /* Stat cards */
    .stat-card {
        background: var(--scafell-bg-elevated);
        border: 1px solid #2a3a28;
    }

    .stat-card__value {
        color: var(--scafell-primary);
    }

    .stat-card__label {
        color: var(--scafell-text-muted);
    }

    /* Foundation callouts */
    .callout {
        background: var(--scafell-bg-elevated);
        border: 1px solid #2a3a28;
        color: var(--scafell-text);
    }

    .callout h4, .callout h5, .callout h6 {
        color: var(--scafell-accent);
    }

    .callout p {
        color: var(--scafell-text);
    }

    .callout.primary {
        background: rgba(74, 156, 63, 0.15);
        border-color: var(--scafell-primary);
    }

    .callout.primary p,
    .callout.primary li,
    .callout.primary span {
        color: var(--scafell-text);
    }

    .callout.primary h4,
    .callout.primary h5,
    .callout.primary h6 {
        color: var(--scafell-accent);
    }

    .callout.secondary {
        background: var(--scafell-bg-elevated);
        border-color: #3a5a38;
    }

    .callout.secondary p,
    .callout.secondary li,
    .callout.secondary span {
        color: var(--scafell-text);
    }

    .callout.success {
        background: rgba(143, 188, 143, 0.15);
        border-color: var(--scafell-accent);
    }

    .callout.success p,
    .callout.success li,
    .callout.success span {
        color: var(--scafell-text);
    }

    .callout.warning {
        background: rgba(255, 193, 7, 0.15);
        border-color: #ffc107;
    }

    .callout.warning p,
    .callout.warning li,
    .callout.warning span {
        color: #fef3c7;
    }

    .callout.warning h4,
    .callout.warning h5,
    .callout.warning h6 {
        color: #fcd34d;
    }

    .callout.alert {
        background: rgba(220, 53, 69, 0.15);
        border-color: #dc3545;
    }

    .callout.alert p,
    .callout.alert li,
    .callout.alert span {
        color: #fecaca;
    }

    .callout.alert h4,
    .callout.alert h5,
    .callout.alert h6 {
        color: #fca5a5;
    }

    /* Buttons */
    .button, button, input[type="submit"], input[type="button"] {
        background: var(--scafell-primary);
        color: white;
    }

    .button:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
        background: #3d8234;
        color: white;
    }

    .button.secondary {
        background: var(--scafell-secondary);
    }

    .button.secondary:hover {
        background: #5a9a4d;
    }

    .button.hollow {
        background: transparent;
        border-color: var(--scafell-primary);
        color: var(--scafell-primary);
    }

    .button.hollow:hover {
        background: var(--scafell-primary);
        color: white;
    }

    /* Links */
    a {
        color: var(--scafell-primary);
    }

    a:hover {
        color: var(--scafell-secondary);
    }

    /* Foundation menu */
    .menu a {
        color: white;
    }

    .menu a:hover {
        color: var(--scafell-accent);
    }

    /* No-bullet lists in footer */
    .no-bullet a {
        color: rgba(255, 255, 255, 0.8);
    }

    .no-bullet a:hover {
        color: white;
    }

    /* Forms */
    input, textarea, select {
        background: var(--scafell-bg-elevated);
        border-color: #3a5a38;
        color: var(--scafell-text);
    }

    input:focus, textarea:focus, select:focus {
        background: var(--scafell-bg-elevated);
        border-color: var(--scafell-primary);
        color: var(--scafell-text);
    }

    input::placeholder, textarea::placeholder {
        color: var(--scafell-text-muted);
    }

    label {
        color: var(--scafell-text);
    }

    /* Tables */
    table {
        background: var(--scafell-bg-elevated);
        border-color: #2a3a28;
    }

    table thead {
        background: var(--scafell-dark);
    }

    table thead th {
        color: var(--scafell-text);
    }

    table tbody {
        background: var(--scafell-bg-elevated);
    }

    table tbody td {
        color: var(--scafell-text);
    }

    table tbody tr {
        background: var(--scafell-bg-elevated);
        border-bottom: 1px solid #2a3a28;
    }

    table tbody tr:nth-child(even) {
        background: rgba(255, 255, 255, 0.03);
    }

    table tbody tr:hover {
        background: rgba(74, 156, 63, 0.1);
    }

    /* Code blocks */
    code, pre {
        background: var(--scafell-dark);
        color: var(--scafell-accent);
        border: 1px solid #2a3a28;
    }

    pre code {
        border: none;
    }

    /* Blockquotes */
    blockquote {
        border-left-color: var(--scafell-primary);
        color: var(--scafell-text-muted);
        background: rgba(74, 156, 63, 0.05);
    }

    blockquote p {
        color: var(--scafell-text-muted);
    }

    /* Horizontal rules */
    hr {
        border-color: #2a3a28;
    }

    /* Landing CTA section */
    .scafell-landing-cta {
        border-top-color: #2a3a28;
    }

    /* Route template success callout */
    .scafell-content--route .callout.success {
        background: rgba(143, 188, 143, 0.15);
    }

    /* Guide template ordered list numbers */
    .scafell-content--guide ol > li::before {
        background: var(--scafell-primary);
        color: white;
    }

    /* Preparation template checkmarks */
    .scafell-content--preparation ul li::before {
        color: var(--scafell-primary);
    }

    /* Quick links dark mode */
    .scafell-quick-links a {
        color: var(--scafell-text);
    }

    .scafell-quick-links a:hover {
        background: rgba(74, 156, 63, 0.15);
        color: var(--scafell-primary);
    }

    /* Hero quick stats in dark mode */
    .scafell-hero .scafell-quick-stats {
        background: rgba(0, 0, 0, 0.3);
        border: 1px solid rgba(255, 255, 255, 0.1);
    }

    .scafell-hero .scafell-quick-stat__value {
        color: white;
    }

    .scafell-hero .scafell-quick-stat__label {
        color: rgba(255, 255, 255, 0.7);
    }

    /* Foundation grid container */
    .grid-container {
        background: transparent;
    }

    /* Foundation reveal/modal */
    .reveal {
        background: var(--scafell-bg-elevated);
        border: 1px solid #2a3a28;
        color: var(--scafell-text);
    }

    .reveal .close-button {
        color: var(--scafell-text-muted);
    }

    .reveal .close-button:hover {
        color: var(--scafell-text);
    }

    /* Foundation accordion */
    .accordion {
        background: var(--scafell-bg-elevated);
    }

    .accordion-item {
        border-bottom-color: #2a3a28;
    }

    .accordion-title {
        color: var(--scafell-text);
        background: var(--scafell-bg-elevated);
        border-bottom-color: #2a3a28;
    }

    .accordion-title:hover {
        background: rgba(74, 156, 63, 0.1);
    }

    .accordion-content {
        background: var(--scafell-bg);
        color: var(--scafell-text);
    }

    /* Foundation tabs */
    .tabs {
        background: var(--scafell-bg-elevated);
        border-color: #2a3a28;
    }

    .tabs-title > a {
        color: var(--scafell-text-muted);
    }

    .tabs-title > a:hover {
        color: var(--scafell-primary);
        background: rgba(74, 156, 63, 0.1);
    }

    .tabs-title.is-active > a {
        color: var(--scafell-primary);
        background: var(--scafell-bg);
    }

    .tabs-content {
        background: var(--scafell-bg);
        border-color: #2a3a28;
        color: var(--scafell-text);
    }

    /* Foundation pagination */
    .pagination a {
        color: var(--scafell-text-muted);
    }

    .pagination a:hover {
        background: rgba(74, 156, 63, 0.1);
        color: var(--scafell-primary);
    }

    .pagination .current {
        background: var(--scafell-primary);
        color: white;
    }

    .pagination .disabled {
        color: #3a5a38;
    }

    /* Foundation badges and labels */
    .badge, .label {
        background: var(--scafell-primary);
        color: white;
    }

    .badge.secondary, .label.secondary {
        background: var(--scafell-secondary);
    }

    /* Foundation progress bar */
    .progress {
        background: #2a3a28;
    }

    .progress-meter {
        background: var(--scafell-primary);
    }

    /* Foundation tooltip */
    .tooltip {
        background: var(--scafell-dark);
        color: var(--scafell-text);
        border: 1px solid #2a3a28;
    }

    /* Foundation card */
    .card {
        background: var(--scafell-bg-elevated);
        border-color: var(--scafell-border);
        color: var(--scafell-text);
    }

    .card-divider {
        background: var(--scafell-dark);
        color: var(--scafell-text);
        border-bottom-color: var(--scafell-border);
    }

    .card-section {
        background: var(--scafell-bg-elevated);
        color: var(--scafell-text);
    }

    .card-section p {
        color: var(--scafell-text);
    }

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

    /* Selection highlight */
    ::selection {
        background: var(--scafell-primary);
        color: white;
    }

    ::-moz-selection {
        background: var(--scafell-primary);
        color: white;
    }

    /* Scrollbar */
    ::-webkit-scrollbar {
        width: 10px;
        height: 10px;
    }

    ::-webkit-scrollbar-track {
        background: var(--scafell-bg);
    }

    ::-webkit-scrollbar-thumb {
        background: #3a5a38;
        border-radius: 5px;
    }

    ::-webkit-scrollbar-thumb:hover {
        background: var(--scafell-primary);
    }
}
