/* Atlantis console — tokens + styling for the CSS-only client pages.
   Served as a real stylesheet and injected on every client page via the theme
   settings inject hook, because these pages (Email, Knowledge Base) are
   deliberately NOT template-forked. Tokens are duplicated here because
   _ah_tokens.html.twig only loads on pages that include it. */
:root{--ah-aqua:#47e3c9;--ah-ink:#0b1c26;--ah-body:#48606d;--ah-hairline:rgba(11,28,38,.12);--ah-surface:#fff;--ah-surface-2:#f3f8f9;--ah-radius:16px;--ah-radius-sm:12px;--ah-focus:0 0 0 3px rgba(71,227,201,.45)}
[data-bs-theme="dark"]{--ah-ink:#eaf6f7;--ah-body:#9db4bf;--ah-hairline:rgba(159,214,226,.16);--ah-surface:#0b1c26;--ah-surface-2:#08161e}
/* Shared shell for the CSS-only console pages. */
body.email-index .card,
body.kb-index .card,
body.kb-category .card,
body.kb-article .card {
    border: 1px solid var(--ah-hairline);
    border-radius: var(--ah-radius);
    box-shadow: none;
    background: var(--ah-surface);
}
body.email-index .card-header,
body.kb-index .card-header,
body.kb-category .card-header,
body.kb-article .card-header {
    background: transparent;
    border-bottom: 1px solid var(--ah-hairline);
}
body.email-index h1,
body.kb-index h1,
body.kb-category h1,
body.kb-article h1 {
    font-family: 'Bricolage Grotesque', ui-sans-serif, sans-serif;
    letter-spacing: -.022em;
    color: var(--ah-ink);
    font-size: 1.6rem;
}
body.email-index,
body.kb-index,
body.kb-category,
body.kb-article { font-family: 'Instrument Sans', ui-sans-serif, sans-serif; }

/* --- Email: the message list becomes console rows -------------------- */
body.email-index .email-list .list-group-item {
    border: 0;
    border-bottom: 1px solid var(--ah-hairline);
    border-radius: 0;
    padding: .85rem 1rem;
    background: transparent;
    color: var(--ah-ink);
    min-height: 44px;
    transition: background-color .16s ease;
}
body.email-index .email-list .list-group-item:hover { background: var(--ah-surface-2); }
body.email-index .email-list .list-group-item.active {
    background: var(--ah-surface-2);
    color: var(--ah-ink);
    box-shadow: inset 3px 0 0 var(--ah-aqua);
}
body.email-index .email-list .list-group-item:focus-visible { outline: none; box-shadow: var(--ah-focus); }
/* Stock forces 80% on both lines, which is under 13px on most setups. */
body.email-index .email-list .list-group-item p,
body.email-index .email-list .list-group-item span { font-size: .875rem !important; }
body.email-index .email-list .list-group-item span { color: var(--ah-body); }

/* Action buttons in the detail pane — stock btn-sm is well under 44px. */
body.email-index .btn-group .btn { min-height: 40px; min-width: 40px; }

/* --- Knowledge base -------------------------------------------------- */
body.kb-index .list-group-item,
body.kb-category .list-group-item {
    border: 0;
    border-bottom: 1px solid var(--ah-hairline);
    border-radius: 0;
    padding: .85rem .25rem;
    min-height: 44px;
    color: var(--ah-ink);
    transition: background-color .16s ease;
}
body.kb-index .list-group-item:hover,
body.kb-category .list-group-item:hover { background: var(--ah-surface-2); }
body.kb-index .list-group-item:focus-visible,
body.kb-category .list-group-item:focus-visible { outline: none; box-shadow: var(--ah-focus); }

/* Article prose: measure and rhythm, so a long answer is actually readable. */
body.kb-article .card-body { max-width: 72ch; }
body.kb-article .card-body p,
body.kb-article .card-body li { line-height: 1.7; color: var(--ah-body); }
body.kb-article .card-body h2,
body.kb-article .card-body h3 {
    font-family: 'Bricolage Grotesque', ui-sans-serif, sans-serif;
    color: var(--ah-ink);
    margin-top: 1.75rem;
}

/* Buttons on these pages pick up the console's ink-on-surface treatment. */
body.email-index .btn-primary,
body.kb-index .btn-primary,
body.kb-category .btn-primary,
body.kb-article .btn-primary {
    background: var(--ah-ink);
    border-color: var(--ah-ink);
}
