/**
 * 2-base.css
 * Body, typography baseline, global resets, accessibility primitives.
 */

/* Skip link */
.adc-skip-link {
    position: absolute;
    inset-block-start: -100px;
    inset-inline-start: 16px;
    z-index: 9999;
    padding: 8px 16px;
    background: var(--adc-brand-dark);
    color: #fff;
    font-size: var(--adc-text-sm);
    font-weight: 600;
    border-radius: var(--adc-radius);
    text-decoration: none;
    transition: inset-block-start 200ms;
}
.adc-skip-link:focus {
    inset-block-start: 16px;
}

/* Body */
body.adc-theme {
    background-color: var(--adc-bg-alt);
    color: var(--adc-text);
    font-family: var(--site-font);
    font-size: var(--adc-text-md);
    line-height: var(--adc-lh-body);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Links */
#site a:not(.btn) {
    color: var(--adc-text);
    transition: color 200ms ease;
}
#site a:not(.btn):hover {
    color: var(--adc-brand-dark);
}

/* Site wrapper */
#site {
    background: var(--adc-bg-alt);
}

/* Main */
#site-main {
    background: var(--adc-bg-alt);
    min-height: 600px;
}

/* Images */
#site img {
    max-inline-size: 100%;
    height: auto;
}

/* Focus visible */
*:focus-visible {
    outline: 2px solid var(--adc-brand);
    outline-offset: 2px;
    border-radius: 2px;
}

/* Reading progress */
#adc-reading-progress {
    position: fixed;
    inset-block-start: 0;
    inset-inline: 0;
    height: 3px;
    background: transparent;
    z-index: 999;
    pointer-events: none;
}
#adc-reading-bar {
    height: 100%;
    width: 0%;
    background: var(--adc-brand);
    transition: width 120ms linear;
}
