* {
    /* Image admonition */
    --md-admonition-icon--image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M16 13.25A1.75 1.75 0 0 1 14.25 15H1.75A1.75 1.75 0 0 1 0 13.25V2.75C0 1.784.784 1 1.75 1h12.5c.966 0 1.75.784 1.75 1.75ZM1.75 2.5a.25.25 0 0 0-.25.25v10.5c0 .138.112.25.25.25h.94l.03-.03 6.077-6.078a1.75 1.75 0 0 1 2.412-.06L14.5 10.31V2.75a.25.25 0 0 0-.25-.25Zm12.5 11a.25.25 0 0 0 .25-.25v-.917l-4.298-3.889a.25.25 0 0 0-.344.009L4.81 13.5ZM7 6a2 2 0 1 1-3.999.001A2 2 0 0 1 7 6M5.5 6a.5.5 0 1 0-1 0 .5.5 0 0 0 1 0"/></svg>');
}

/* Image admonition styling */

.md-typeset .admonition.image,
.md-typeset details.image {
    border-color: var(--md-admonition-fg-color);
}
.md-typeset .image > .admonition-title::before,
.md-typeset .image > summary::before {
    background-color: var(--md-admonition-fg-color);
    -webkit-mask-image: var(--md-admonition-icon--image);
    mask-image: var(--md-admonition-icon--image);
}

/*******************************************************************/
/* Common utils */

h1#welcome {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
    clip: rect(0 0 0 0 0);
    white-space: nowrap;
}

.md-typeset .md-button--primary {
    background: var(--md-accent-fg-color--transparent);
    color: var(--md-accent-fg-color);
}

.md-typeset .wordwrap * {
    text-wrap: auto;
}

.md-typeset kbd {
    border-radius: .2rem;
    font-size: .85em;
    padding: 0 .5em;
    margin: 0 .1em;
    box-shadow:
        0 0.1rem 0 0.05rem var(--md-typeset-kbd-border-color),
        0 0.1rem 0 var(--md-typeset-kbd-border-color),
        0 -0.05rem 0.1rem var(--md-typeset-kbd-accent-color) inset;
}

/*******************************************************************/
/* Landing page template (overrides/landing.md) */

.tx-hero {
    margin: -2.4rem -1.6rem 2.4rem;
    padding: 3.5rem 1.6rem;
}
.tx-hero h1 {
    margin: 0 0 0.5rem;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.1;
}
.tx-hero p {
    max-width: 40rem;
    font-size: 1.15rem;
    line-height: 1.5;
}
.tx-hero__buttons {
    display: flex;
    gap: 1rem;
}

/*******************************************************************/
/* Inline badges (inline_badges.py) */

.md-typeset .mdx-badge {
    font-size: 0.8rem;
    display: inline-flex;
    align-items: stretch;
    overflow: hidden;
    border: .1rem solid var(--md-accent-fg-color--transparent);
    border-radius: .25rem;
    vertical-align: baseline;
}

.md-typeset .mdx-badge__icon,
.md-typeset .mdx-badge__text {
    display: inline-flex;
    align-items: center;
}

.md-typeset .mdx-badge__icon {
    justify-content: center;
    background-color: var(--md-accent-fg-color--transparent);
    padding: .15rem;
    color: var(--md-primary-fg-color);
}

.md-typeset .mdx-badge__text {
    font-size: .85em;
    padding: 0 .5rem;
}

.md-typeset .mdx-badge__text code {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}
