/**
 * Public shell — shared tokens and focus styles for auth + marketing pages
 */

:root {
    --nomo-brand-accent: #0d7a55;
    --nomo-brand-accent-2: #0f766e;
    --nomo-public-bg: #f6f8fb;
    --nomo-public-surface: #ffffff;
    --nomo-public-text: #0f172a;
    --nomo-public-muted: #64748b;
    --nomo-public-border: #e2e8f0;
}

body.auth-page {
    --auth-accent: var(--nomo-brand-accent);
    --auth-accent-2: var(--nomo-brand-accent-2);
}

.marketing-page {
    --mkt-accent: var(--nomo-brand-accent);
    --mkt-accent-2: var(--nomo-brand-accent-2);
    --mkt-bg: var(--nomo-public-bg);
    --mkt-text: var(--nomo-public-text);
    --mkt-muted: var(--nomo-public-muted);
    --mkt-border: var(--nomo-public-border);
}

.auth-header-btn:focus-visible,
.auth-header-link:focus-visible,
.marketing-btn:focus-visible,
.marketing-nav-link:focus-visible,
.mkt-theme-toggle:focus-visible,
.auth-link-btn:focus-visible {
    outline: 2px solid var(--nomo-brand-accent);
    outline-offset: 2px;
}

.auth-header,
.marketing-header {
    border-bottom: 1px solid var(--nomo-public-border);
}

.auth-header-brand strong,
.marketing-brand strong {
    color: var(--nomo-public-text);
    font-weight: 800;
}

.auth-header-brand small,
.marketing-brand-tag {
    color: var(--nomo-public-muted);
}

.auth-header-link.is-active,
.auth-mobile-link.is-active {
    color: var(--nomo-brand-accent);
    font-weight: 700;
}

.public-header-tools-group,
.marketing-nav-tools {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

html.dark body.auth-page {
    --auth-bg: #0f172a;
}

html.dark .marketing-page {
    --mkt-bg: #0f172a;
    --mkt-surface: #1e293b;
    --mkt-text: #f1f5f9;
    --mkt-muted: #94a3b8;
    --mkt-border: #334155;
}
