/* Webmaster's Corner — magazine layout, site cream tokens.
   Organized: masthead → tabs → type → layout → charts → a11y/print.

   Sticky tabs need a non-clipping ancestor. .site uses overflow-x:hidden
   and .news-inner uses overflow:hidden + clip-path, which trap position:sticky.
   Same unclip pattern as the gallery inspector. */

body:has(.ah-wmc-tabs) .site,
body:has(.ah-wmc-tabs) .news-inner {
    overflow: visible;
    clip-path: none;
}

html:has(.ah-wmc-tabs) {
    scroll-padding-top: 56px;
}

.ah-wmc {
    color: #2a2a2a;
    max-width: none;
    padding: 28px 32px 36px;
}
.ah-wmc p { line-height: 1.7; }
.ah-wmc a { color: #5b8dd9; }

/* —— Masthead —— */
.ah-wmc-masthead { margin: 0 0 22px; }
.ah-wmc-kicker {
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #5b8dd9;
    font-weight: 800;
    margin: 0 0 8px;
}
.ah-wmc-display {
    font-size: clamp(28px, 5vw, 42px);
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.12;
    color: #2a2a2a;
    margin: 0 0 12px;
}
.ah-wmc-deck {
    font-size: 17px;
    line-height: 1.55;
    color: #444;
    max-width: 40rem;
    margin: 0 0 10px;
    font-style: italic;
}
.ah-wmc-byline {
    font-size: 12px;
    color: #8a847a;
    letter-spacing: 0.04em;
    margin: 0;
}

/* —— Wordmark (inner pages) —— */
.ah-wmc-wordmark {
    margin: 0 0 10px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}
.ah-wmc-wordmark a { color: #5b8dd9; text-decoration: none; }
.ah-wmc-wordmark a:hover { color: #2a2a2a; }

/* —— Category tabs (not a <nav> — main.css paints nav black) —— */
.ah-wmc-tabs {
    position: sticky;
    top: 0;
    z-index: 8;
    margin: 0 0 22px;
    background: #faf8f4;
    border: 1px solid #ede8df;
    border-bottom: 2px solid #e2dccf;
}
.ah-wmc-tabs-inner {
    display: flex;
    flex-wrap: wrap;
}
.ah-wmc-tab {
    flex: 1 1 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 44px;
    padding: 8px 10px;
    color: #6a655c;
    text-decoration: none;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border-right: 1px solid #ede8df;
    background: transparent;
}
.ah-wmc-tab:last-child { border-right: 0; }
.ah-wmc-tab:hover { color: #5b8dd9; background: rgba(91, 141, 217, 0.06); }
.ah-wmc-tab.is-current {
    color: #2a2a2a;
    background: #fff;
    box-shadow: inset 0 -3px 0 #e8a87c;
}
.ah-wmc-tab-icon {
    display: inline-flex;
    color: inherit;
}
.ah-wmc-tab-icon svg { display: block; }

/* —— Featured report (home) —— */
.ah-wmc-feature {
    display: grid;
    gap: 22px;
    margin: 8px 0 28px;
    padding: 20px 0 22px;
    border-top: 3px solid #e8a87c;
    border-bottom: 1px solid #ede8df;
}
.ah-wmc-feature-copy h2 {
    margin: 0 0 10px;
    font-size: clamp(22px, 3.4vw, 30px);
    line-height: 1.2;
    letter-spacing: -0.03em;
}
.ah-wmc-feature-copy h2 a { color: #2a2a2a; text-decoration: none; }
.ah-wmc-feature-copy h2 a:hover { color: #5b8dd9; }
.ah-wmc-feature-cta { margin: 14px 0 0; }
.ah-wmc-feature-cta a {
    font-weight: 800;
    font-size: 13px;
}
.ah-wmc-feature-viz {
    background: #faf8f4;
    border: 1px solid #ede8df;
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    min-height: 100%;
}
.ah-wmc-feature-stat b {
    display: block;
    font-size: 26px;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.1;
}
.ah-wmc-feature-stat span {
    font-size: 11px;
    color: #8a847a;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
.ah-wmc-feature-stat.is-people b { color: #7a5a7a; }
.ah-wmc-feature-vs {
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #c4844e;
    font-weight: 800;
}

/* —— Around the Corner —— */
.ah-wmc-around { margin: 8px 0 0; }
.ah-wmc-around ul {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
    display: grid;
    gap: 10px 20px;
}
.ah-wmc-around li {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    align-items: baseline;
    font-size: 13px;
}
.ah-wmc-around a {
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ah-wmc-around span { color: #666; }

/* —— Category lists / empty —— */
.ah-wmc-h--flush { margin-top: 8px; border-top: 0; padding-top: 0; }
.ah-wmc-cat-head p { color: #555; margin: 0 0 18px; }
.ah-wmc-index-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.ah-wmc-index-list li {
    padding: 14px 0;
    border-top: 1px solid #ede8df;
}
.ah-wmc-index-list a {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -0.02em;
    text-decoration: none;
    color: #2a2a2a;
}
.ah-wmc-index-list a:hover { color: #5b8dd9; }
.ah-wmc-index-list p { margin: 6px 0 0; color: #555; }
.ah-wmc-empty {
    color: #666;
    border-top: 1px solid #ede8df;
    padding-top: 16px;
}
.ah-wmc-latest { margin: 8px 0 28px; }
.ah-wmc-latest .ah-wmc-h3 { margin-bottom: 4px; }

/* —— Free Scripts cards / shrine —— */
.ah-wmc-script-grid {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.ah-wmc-script-card {
    background: #faf8f4;
    border: 1px solid #ede8df;
    display: grid;
    grid-template-columns: 200px minmax(0, 1fr);
    min-width: 0;
}
.ah-wmc-script-card.is-draft { opacity: 0.72; }
.ah-wmc-script-card--detail {
    margin: 8px 0 8px;
    grid-template-columns: 220px minmax(0, 1fr);
}
.ah-wmc-script-shot {
    display: block;
    min-height: 148px;
    height: 100%;
    background-color: #e8e2d6;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    border-right: 1px solid #ede8df;
}
.ah-wmc-script-shot.is-empty {
    background-image: none;
}
.ah-wmc-script-shot-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 148px;
    color: #888;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.ah-wmc-script-card-body { padding: 16px 18px 18px; }
.ah-wmc-script-card-body h1,
.ah-wmc-script-card-body h2 {
    margin: 0;
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.25;
    border: 0;
    padding: 0;
    text-transform: none;
    color: #2a2a2a;
}
.ah-wmc-script-card-body h2 a {
    color: #2a2a2a;
    text-decoration: none;
}
.ah-wmc-script-card-body h2 a:hover { color: #5b8dd9; }
.ah-wmc-script-card-body > p { margin: 8px 0 0; color: #555; }
.ah-wmc-script-meta {
    font-size: 12px;
    color: #8a847a !important;
}
.ah-wmc-script-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 14px 0 0;
}
.ah-wmc-btn {
    display: inline-block;
    background: #5b8dd9;
    color: #fff !important;
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 8px 14px;
    border: 1px solid #5b8dd9;
}
.ah-wmc-btn:hover { background: #4a7bc4; }
.ah-wmc-btn--ghost {
    background: transparent;
    color: #5b8dd9 !important;
}
.ah-wmc-btn--ghost:hover { background: #ede8df; }
.ah-wmc-script-requires {
    background: #fff;
    border: 1px solid #ede8df;
    padding: 8px 12px;
    margin: 10px 0 0 !important;
    color: #444;
}
.ah-wmc-script-requires span {
    display: inline-block;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #e8a87c;
    font-weight: 800;
    margin-right: 8px;
}
.ah-wmc-script-notes {
    grid-column: 1 / -1;
    border-top: 1px solid #ede8df;
    padding: 16px 18px 18px;
    background: #fff;
}
.ah-wmc-script-notes p { margin: 0 0 12px; }
.ah-wmc-script-notes p:last-child { margin-bottom: 0; }
.ah-wmc-back { margin: 22px 0 0; }
@media (max-width: 720px) {
    .ah-wmc-script-card,
    .ah-wmc-script-card--detail {
        grid-template-columns: 1fr;
    }
    .ah-wmc-script-shot {
        height: 160px;
        border-right: 0;
        border-bottom: 1px solid #ede8df;
    }
}

.ah-wmc-post .ah-wmc-tabs { margin-bottom: 22px; }
.ah-wmc-post .article-title { margin-top: 4px; }

/* —— Folio / jump —— */
.ah-wmc-folio {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin: 22px 0 20px;
    border-top: 1px solid #ede8df;
    border-bottom: 1px solid #ede8df;
}
.ah-wmc-folio-item {
    padding: 12px 12px 14px;
    border-right: 1px solid #ede8df;
}
.ah-wmc-folio-item:last-child { border-right: 0; }
.ah-wmc-folio-num {
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.1;
}
.ah-wmc-folio-unit {
    display: block;
    margin-top: 4px;
    font-size: 11px;
    color: #666;
    line-height: 1.4;
}
/* Must not be a <nav> — main.css paints every nav { background:#111; width:100% }. */
.ah-wmc-jump {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
    font-size: 12px;
    margin: 0 0 28px;
    padding: 0;
    background: transparent;
    border: none;
    width: auto;
    position: static;
}
.ah-wmc-jump a { color: #5b8dd9; }

/* —— Type —— */
.ah-wmc h2.ah-wmc-h,
.ah-wmc-h {
    font-size: clamp(20px, 3vw, 26px);
    font-weight: 900;
    letter-spacing: -0.02em;
    text-transform: none;
    color: #2a2a2a;
    margin: 40px 0 14px;
    padding-top: 8px;
    border-top: 1px solid #ede8df;
    scroll-margin-top: 60px;
}
.ah-wmc h2.ah-wmc-h:first-of-type { border-top: 0; padding-top: 0; }
.ah-wmc h3.ah-wmc-h3 {
    font-size: 15px;
    font-weight: 800;
    color: #2a2a2a;
    margin: 20px 0 8px;
}
.ah-wmc-lede { font-size: 16px; }
.ah-wmc-pull {
    margin: 22px 0;
    padding: 4px 0 4px 16px;
    border-left: 3px solid #e8a87c;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #2a2a2a;
}
.ah-wmc-note {
    background: #faf8f4;
    border-top: 2px solid #5b8dd9;
    padding: 12px 14px;
    font-size: 13px;
    color: #444;
}
.ah-wmc-note strong {
    display: block;
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #5b8dd9;
    margin-bottom: 6px;
}
.ah-wmc-note p { margin: 0; }
.ah-wmc-caption,
.ah-wmc-sub {
    font-size: 12px;
    color: #8a847a;
    margin: 0 0 10px;
}
.ah-wmc-badge {
    display: inline-block;
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 800;
    padding: 1px 6px;
    border: 1px solid #d4cfc8;
    color: #666;
    background: #fff;
    vertical-align: middle;
}
.ah-wmc-badge--counted { color: #4a6fa5; border-color: #c5d4ea; }
.ah-wmc-badge--inferred { color: #8a6a3d; border-color: #e4d3b8; }
.ah-wmc-badge--estimated { color: #7a5a7a; border-color: #dcc8dc; }

/* —— Layout rhythm —— */
.ah-wmc-split {
    display: grid;
    gap: 22px 28px;
    align-items: start;
    margin: 16px 0 8px;
}
.ah-wmc-split--aside { grid-template-columns: 1fr; }
.ah-wmc-pair {
    display: grid;
    gap: 22px;
    margin: 16px 0;
}
.ah-wmc-back { font-size: 12px; margin: 20px 0 0; }

/* —— Figures: not every chart is a card —— */
.ah-wmc-fig { margin: 16px 0 8px; }
.ah-wmc-fig h3 {
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 800;
}
.ah-wmc-fig--card {
    padding: 14px 14px 10px;
    border: 1px solid #ede8df;
    background: #fffef9;
}
.ah-wmc-fig--feature {
    padding: 16px 0 8px;
    border-top: 1px solid #ede8df;
    border-bottom: 1px solid #ede8df;
}
.ah-wmc-how,
.ah-wmc-data {
    margin: 8px 0 0;
    font-size: 12px;
    color: #666;
}
.ah-wmc-how summary,
.ah-wmc-data summary {
    cursor: pointer;
    color: #5b8dd9;
}

/* —— Donut —— */
.ah-wmc-donut {
    position: relative;
    width: min(220px, 70vw);
    aspect-ratio: 1;
    margin: 8px auto;
}
.ah-wmc-donut-ring {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}
.ah-wmc-donut-hole {
    position: absolute;
    inset: 22%;
    background: #fff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.03em;
}
.ah-wmc-donut-hole small {
    display: block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #8a847a;
    margin-top: 2px;
}
.ah-wmc-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 8px;
    font-size: 12px;
    color: #555;
}
.ah-wmc-swatch {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-right: 5px;
    vertical-align: -1px;
}
.ah-wmc-swatch.caps { background: #e8a87c; }
.ah-wmc-swatch.other { background: #5b8dd9; }
.ah-wmc-swatch.bot { background: #7a6a8a; }
.ah-wmc-swatch.gpt { background: #c4844e; }
.ah-wmc-swatch.claude { background: #7a6a8a; }
.ah-wmc-swatch.rest429 { background: #b8b3aa; }

/* —— Bars —— */
.ah-wmc-bars { display: flex; flex-direction: column; gap: 8px; }
.ah-wmc-bar {
    display: grid;
    grid-template-columns: minmax(7rem, 30%) 1fr auto;
    gap: 8px;
    align-items: center;
    font-size: 12px;
}
.ah-wmc-bar-label { color: #333; }
.ah-wmc-bar-track {
    height: 14px;
    background: #f3efe6;
    min-width: 0;
}
.ah-wmc-bar-track > i {
    display: block;
    height: 100%;
    background: #5b8dd9;
    min-width: 2px;
}
.ah-wmc-bar-n {
    font-variant-numeric: tabular-nums;
    color: #555;
    text-align: right;
    min-width: 4.5rem;
}
.ah-wmc-crawler-btn {
    display: block;
    width: 100%;
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    text-align: left;
    font: inherit;
    color: inherit;
    cursor: pointer;
}
.ah-wmc-crawler-btn[aria-pressed="true"] .ah-wmc-bar-track > i { background: #e8a87c; }
.ah-wmc-sort {
    display: inline-block;
    padding: 5px 8px;
    border: 1px solid #d4cfc8;
    background: #fff;
    font-size: 11px;
    cursor: pointer;
    font-family: inherit;
    color: #555;
    margin-bottom: 8px;
}

/* —— Daily timeline —— */
.ah-wmc-daily {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
    align-items: end;
    height: 200px;
    margin-top: 6px;
}
.ah-wmc-day {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    gap: 4px;
    border: 0;
    background: transparent;
    padding: 0;
    font: inherit;
    color: inherit;
    cursor: pointer;
}
.ah-wmc-daily-stack {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    background: #f3efe6;
}
.ah-wmc-daily-gpt,
.ah-wmc-daily-rest { display: block; width: 100%; }
.ah-wmc-daily-gpt { background: #c4844e; }
.ah-wmc-daily-rest { background: #5b8dd9; }
.ah-wmc.is-gpt-off .ah-wmc-daily-gpt { display: none; }
.ah-wmc.is-gpt-off .ah-wmc-daily-rest { height: 100% !important; }
.ah-wmc-day.is-surge .ah-wmc-daily-stack { outline: 2px solid #e8a87c; outline-offset: 1px; }
.ah-wmc-day[aria-pressed="true"] .ah-wmc-daily-stack { box-shadow: 0 0 0 2px #5b8dd9; }
.ah-wmc-day.is-partial .ah-wmc-daily-stack { outline: 1px dashed #b8b3aa; }
.ah-wmc-daily-d {
    font-size: 10px;
    text-align: center;
    color: #888;
}
.ah-wmc-daily-out {
    min-height: 2.8em;
    margin: 10px 0 0;
    font-size: 13px;
    color: #444;
}

/* —— Human filter (not a conversion funnel) —— */
.ah-wmc-filter { display: grid; gap: 10px; }
.ah-wmc-filter-row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
    align-items: baseline;
    padding-bottom: 8px;
    border-bottom: 1px solid #ede8df;
}
.ah-wmc-filter-row strong { font-size: 20px; letter-spacing: -0.02em; }
.ah-wmc-filter-row span { font-size: 13px; color: #555; }
.ah-wmc-people {
    position: relative;
    height: 18px;
    background: #f3efe6;
    margin: 6px 0;
}
.ah-wmc-people-band {
    position: absolute;
    inset: 0 auto 0 0;
    background: rgba(122, 90, 122, 0.22);
}
.ah-wmc-people-mark {
    position: absolute;
    top: -3px;
    width: 2px;
    height: 24px;
    background: #7a5a7a;
}

/* —— Visit switcher —— */
.ah-wmc-seg {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 10px 0;
}
.ah-wmc-seg button {
    border: 1px solid #d4cfc8;
    background: #fff;
    color: #555;
    font-size: 11px;
    padding: 6px 8px;
    cursor: pointer;
    font-family: inherit;
}
.ah-wmc-seg button[aria-pressed="true"] {
    border-color: #5b8dd9;
    color: #5b8dd9;
    background: #f4f7fc;
}
.ah-wmc-visit-out {
    font-size: 32px;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.1;
}
.ah-wmc-visit-note { font-size: 13px; color: #555; margin-top: 6px; }

/* —— Weekly columns —— */
.ah-wmc-weeks {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    align-items: end;
    height: 140px;
}
.ah-wmc-week {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    gap: 4px;
}
.ah-wmc-week i {
    display: block;
    width: 100%;
    background: #5b8dd9;
    min-height: 4px;
}
.ah-wmc-week.is-partial i { background: #b8b3aa; }
.ah-wmc-week b { font-size: 12px; font-weight: 800; }
.ah-wmc-week span { font-size: 10px; color: #888; }

/* —— Glossary / hall / hours / timeline —— */
.ah-wmc-glossary {
    columns: 2;
    gap: 18px;
    font-size: 13px;
    color: #555;
}
.ah-wmc-glossary dt { font-weight: 800; color: #333; margin-top: 8px; }
.ah-wmc-glossary dd { margin: 2px 0 0; }
.ah-wmc-hall {
    background: #faf8f4;
    border-left: 3px solid #e8a87c;
    padding: 10px 14px;
    margin: 16px 0;
    font-size: 13px;
}
.ah-wmc-hall strong {
    display: block;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #c4844e;
    margin-bottom: 4px;
}
.ah-wmc-hours {
    height: 22px;
    background: #f3efe6;
    border: 1px solid #ede8df;
    margin-top: 6px;
}
.ah-wmc-hours-ticks {
    display: flex;
    justify-content: space-between;
    font-size: 10px;
    color: #8a847a;
    margin-top: 4px;
}
.ah-wmc-timeline {
    border-left: 2px solid #ede8df;
    margin: 10px 0 0 4px;
    padding-left: 14px;
}
.ah-wmc-timeline li { margin: 0 0 10px; font-size: 13px; }

/* —— Tables —— */
.ah-wmc-table-wrap { overflow-x: auto; margin-top: 8px; }
.ah-wmc-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.ah-wmc-table caption {
    text-align: left;
    font-weight: 800;
    padding-bottom: 6px;
    color: #555;
}
.ah-wmc-table th,
.ah-wmc-table td {
    border-bottom: 1px solid #ede8df;
    padding: 5px 8px;
    text-align: left;
    vertical-align: top;
}
.ah-wmc-table thead th {
    color: #8a847a;
    font-size: 10px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.ah-wmc-table tbody th { font-weight: 600; color: #333; }

.ah-wmc-honesty {
    background: #faf8f4;
    padding: 16px 18px;
    margin-top: 8px;
}
.ah-wmc-honesty ul { margin: 8px 0 0; padding-left: 1.2rem; }
.ah-wmc-honesty li { margin: 0 0 8px; font-size: 13px; }

/* —— Focus / motion —— */
.ah-wmc-how summary:focus-visible,
.ah-wmc-data summary:focus-visible,
.ah-wmc-seg button:focus-visible,
.ah-wmc-crawler-btn:focus-visible,
.ah-wmc-day:focus-visible,
.ah-wmc-sort:focus-visible,
.ah-wmc-jump a:focus-visible,
.ah-wmc-tab:focus-visible,
.ah-wmc-wordmark a:focus-visible,
.ah-wmc-toc a:focus-visible {
    outline: 2px solid #5b8dd9;
    outline-offset: 2px;
}

@media (min-width: 760px) {
    .ah-wmc-feature { grid-template-columns: 1.65fr 0.9fr; align-items: stretch; }
    .ah-wmc-around ul { grid-template-columns: 1fr 1fr; }
    .ah-wmc-split--aside { grid-template-columns: 1.35fr 0.85fr; }
    .ah-wmc-pair { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 720px) {
    .ah-wmc-tab {
        flex-direction: column;
        gap: 3px;
        font-size: 10px;
        letter-spacing: 0.03em;
        padding: 8px 4px;
        min-height: 50px;
    }
    .ah-wmc { padding: 20px 18px 28px; }
    .ah-wmc-folio { grid-template-columns: 1fr 1fr; }
    .ah-wmc-folio-item:nth-child(2) { border-right: 0; }
    .ah-wmc-folio-item:nth-child(1),
    .ah-wmc-folio-item:nth-child(2) { border-bottom: 1px solid #ede8df; }
    .ah-wmc-bar { grid-template-columns: 1fr; gap: 2px; }
    .ah-wmc-bar-n { text-align: left; min-width: 0; }
    .ah-wmc-glossary { columns: 1; }
    .ah-wmc-daily { height: 150px; gap: 4px; }
    .ah-wmc-weeks { height: 110px; }
}

@media (prefers-reduced-motion: reduce) {
    .ah-wmc-bar-track > i,
    .ah-wmc-daily-stack { transition: none; }
}

@media print {
    .ah-wmc-tabs { position: static; }
    .ah-wmc-jump, .ah-wmc-seg, .ah-wmc-sort { display: none !important; }
    .ah-wmc-crawler-btn, .ah-wmc-day { pointer-events: none; }
    .ah-wmc-fig, .ah-wmc-split, .ah-wmc-pair { break-inside: avoid; }
    .ah-wmc-how, .ah-wmc-data { display: block; }
    .ah-wmc-how summary, .ah-wmc-data summary { display: none; }
}
