.markdown-alert,
.callout {
    margin: 1.25rem 0;
    padding: .75rem 1rem;
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-left-width: .3rem;
}

.markdown-alert-title,
.callout-title {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin: 0 0 .35rem;
    color: var(--text);
    font-size: 1rem;
    font-weight: 700;
}

.markdown-alert-title svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    fill: currentColor;
}

.markdown-alert > :last-child,
.callout-body > :last-child {
    margin-bottom: 0;
}

.markdown-alert-note,
.callout-note {
    border-left-color: #8bd3ff;
}

.markdown-alert-tip,
.callout-tip {
    border-left-color: #7ee787;
}

.markdown-alert-important,
.callout-important {
    border-left-color: #d8b4fe;
}

.markdown-alert-warning,
.callout-warning {
    border-left-color: #ffd866;
}

.markdown-alert-caution,
.callout-caution {
    border-left-color: #ff7b72;
}

.strategy-card {
    margin: 1.5rem 0;
    padding: 1rem;
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.strategy-card-title {
    margin-bottom: .75rem;
    font-size: 1.1rem;
}

.strategy-card-meta {
    display: grid;
    grid-template-columns: minmax(7rem, auto) minmax(0, 1fr);
    gap: .5rem 1rem;
    margin: 0 0 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border);
}

.strategy-card-meta dt,
.strategy-card-meta dd {
    margin: 0;
}

.strategy-card-meta dt {
    color: var(--muted);
    font-weight: 700;
}

.strategy-card-meta dd {
    color: var(--text);
}

.strategy-card-content > :last-child {
    margin-bottom: 0;
}

.strategy-card-difficulty {
    display: inline-block;
    padding: .1rem .35rem;
    color: var(--text);
    border: 1px solid var(--border-strong);
    border-radius: .25rem;
}

.strategy-time-value,
.strategy-consistency {
    color: var(--text);
    font-weight: 700;
}

.strategy-time-subtext {
    display: block;
    color: var(--muted);
    font-size: .9rem;
}

@media (max-width: 480px) {
    .strategy-card-meta {
        grid-template-columns: minmax(0, 1fr);
    }

    .strategy-card-meta dd:not(:last-child) {
        margin-bottom: .4rem;
    }
}

@media (forced-colors: active) {
    .markdown-alert,
    .callout,
    .strategy-card,
    .strategy-card-difficulty {
        border-color: CanvasText;
    }
}
