/* BeanBeat: beanbe.at charcoal, logo cream and roasted-coffee accents. */
html.archive-2024 {
    --archive-ink: #1c1c1c;
    --archive-surface: #282522;
    --archive-border: #594a3b;
    --archive-cream: #ffffe6;
    --archive-coffee: #d6a471;
    --pico-background-color: var(--archive-ink);
    --pico-color: #e4ddcf;
    --pico-muted-color: #b8afa1;
    --pico-muted-border-color: #49413a;
    --pico-h1-color: var(--archive-cream);
    --pico-h2-color: var(--archive-cream);
    --pico-h3-color: var(--archive-cream);
    --pico-h4-color: var(--archive-cream);
    --pico-h5-color: var(--archive-cream);
    --pico-h6-color: var(--archive-cream);
    --pico-primary: #ddad78;
    --pico-primary-hover: var(--archive-cream);
    --pico-primary-underline: #ddad7880;
    --pico-primary-hover-underline: #ffffe680;
    --pico-primary-background: #865a36;
    --pico-primary-border: #a67443;
    --pico-primary-hover-background: #97693f;
    --pico-primary-hover-border: #bf8d5a;
    --pico-primary-inverse: var(--archive-cream);
    --pico-primary-focus: #ddad7840;
    --pico-secondary: #b8afa1;
    --pico-secondary-hover: var(--archive-cream);
    --pico-secondary-underline: #b8afa180;
    --pico-secondary-hover-underline: #ffffe680;
    --pico-secondary-background: #45372b;
    --pico-secondary-border: var(--archive-border);
    --pico-secondary-hover-background: #594532;
    --pico-secondary-hover-border: #896749;
    --pico-secondary-inverse: var(--archive-cream);
    --pico-secondary-focus: #b8afa140;
    --pico-contrast: var(--archive-cream);
    --pico-contrast-hover: #e9c79e;
    --pico-contrast-underline: #ffffe680;
    --pico-contrast-hover-underline: #e9c79e80;
    --pico-card-background-color: var(--archive-surface);
    --pico-card-border-color: var(--archive-border);
    --pico-card-sectioning-background-color: #201c19;
    --pico-dropdown-background-color: var(--archive-surface);
    --pico-dropdown-border-color: var(--archive-border);
    --pico-dropdown-color: var(--pico-color);
    --pico-dropdown-hover-background-color: #45372b;
    --pico-blockquote-border-color: #a67443;
    --pico-table-border-color: var(--archive-border);
    --pico-table-row-stripped-background-color: var(--archive-surface);
    --pico-tooltip-background-color: var(--archive-cream);
    --pico-tooltip-color: var(--archive-ink);
    --pico-modal-overlay-background-color: #100c09d9;
    --pico-text-selection-color: #ddad7866;
    --archive-chart-text: #e4ddcf;
    --archive-chart-grid: #94775955;
    --archive-chart-line: #ead9bd;
    --archive-chart-fill: #a6744340;
    --archive-chart-1: #d6a471;
    --archive-chart-2: #f5e5b5;
    --archive-chart-3: #ad8565;
    --archive-chart-4: #d3c5b1;
    --archive-chart-5: #d7bb83;
    --archive-chart-6: #b9a58f;
    --archive-chart-7: #e5c99c;
    --archive-chart-8: #c79b86;
    --archive-chart-first-blood: #ed9874;
    background: var(--archive-ink);
}

.archive-2024 h1 {
    --pico-color: var(--archive-cream);
}

.archive-2024 .navbar {
    background: var(--archive-ink);
    box-shadow: 0 1px 10px #100c0980;
}

.archive-2024 .archive-nav a[aria-current="page"] {
    --pico-color: var(--archive-coffee);
}

.archive-2024 details.dropdown > summary:not([role]) {
    background: #2825229a;
}

.archive-2024 hr {
    border-color: var(--pico-muted-border-color);
}

.archive-2024 body > main > .challenges > .grid article,
.archive-2024 body > main > :is(.text, .introduction, .walkthrough) article,
.archive-2024 dialog article {
    background-color: var(--archive-surface);
    border-color: var(--archive-border);
}

.archive-2024 .badges .badge {
    color: var(--archive-cream);
    background-color: #302b22;
    border-color: #716448;
}

.archive-2024 .badges .badge.initial-access {
    background-color: #2a2621;
    border-color: #6d5843;
}

.archive-2024 .badges .badge.post-exploitation {
    background-color: #31271f;
    border-color: #8d6240;
}

.archive-2024 .badges .badge.lateral-movement {
    background-color: #2b2623;
    border-color: #795844;
}

.archive-2024 .badges .badge.extra-miles {
    background-color: #342a21;
    border-color: #9d764d;
}

.archive-2024 body > main > .challenges > .grid blockquote,
.archive-2024 dialog article blockquote {
    border-left-color: #a67443;
}

.archive-2024 dialog article header {
    background: #201c19;
}

.archive-2024 dialog button {
    background-color: #59402b;
    border-color: var(--archive-border);
    color: var(--archive-cream);
}

.archive-2024 table.striped tbody tr:nth-child(odd) {
    background-color: #22201e;
}

.archive-2024 pre,
.archive-2024 code {
    background-color: #151210;
    color: var(--archive-cream);
}

.archive-2024 .mtf {
    filter: none;
}

.archive-2024 .archive-intro > img {
    width: 800px;
    aspect-ratio: 1;
    height: auto;
    object-fit: contain;
    box-sizing: border-box;
    /* Match the current intro logo's 10% transparent margin on each side. */
    padding: min(10%, 80px);
}

/* Keep the original mail's line breaks while wrapping it on narrow screens. */
.archive-2024 .archive-story-markdown pre code {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
