/* Defaults work before JavaScript and with JavaScript disabled. Mobile <=767px. */
[data-grid-desktop="2"] { --gv-desktop: 2; }
[data-grid-desktop="3"] { --gv-desktop: 3; }
[data-grid-desktop="4"] { --gv-desktop: 4; }
[data-grid-desktop="6"] { --gv-desktop: 6; }
[data-grid-mobile="1"] { --gv-mobile: 1; }
[data-grid-mobile="2"] { --gv-mobile: 2; }
.mt-grid[data-grid-view], .mx-news-grid[data-grid-view] {
    display: grid;
    grid-template-columns: repeat(var(--gv-selected, var(--gv-desktop)), minmax(0, 1fr));
    gap: 1rem;
}
[data-grid-view] > * { min-width: 0; }
/* The news feed is consistently two cards across, including its first story. */
.mx-news-grid[data-grid-view] .mx-news-card--lead {
    display: block;
    grid-column: auto;
    padding: 0;
    border: 0;
}
.mx-news-grid[data-grid-view] .mx-news-card--lead .mx-news-image {
    height: auto;
    min-height: 0;
    aspect-ratio: 16 / 10;
    margin-bottom: .85rem;
}
.mx-news-grid[data-grid-view] .mx-news-card--lead h3 { font-size: 1.25rem; }
.gv-toolbar { position: relative; display: flex; justify-content: flex-end; margin: -.4rem 0 .6rem; }
.gv-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid #e8cddd;
    border-radius: 7px;
    color: #9b285a;
    background: #fff;
    cursor: pointer;
}
.gv-trigger:hover, .gv-trigger[aria-expanded="true"] { background: #fcecf3; border-color: #bd5481; }
.gv-icon { display: grid; grid-template-columns: repeat(2, 5px); gap: 3px; }
.gv-icon > span { width: 5px; height: 5px; border: 1.5px solid currentColor; border-radius: 1px; }
.gv-panel {
    position: absolute;
    right: 0;
    top: calc(100% + 5px);
    z-index: 30;
    width: min(225px, calc(100vw - 40px));
    padding: .9rem;
    border: 1px solid #ead1dd;
    border-radius: 10px;
    background: #fff;
    color: #412533;
    box-shadow: 0 10px 30px #46172c26;
}
.gv-panel[hidden] { display: none; }
.gv-panel fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.gv-panel legend { float: none; margin: 0 0 .5rem; padding: 0; font-size: .8rem; font-weight: 700; }
.gv-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .3rem; }
.gv-choice { display: flex; align-items: center; gap: .4rem; min-height: 40px; padding: .4rem; border-radius: 4px; cursor: pointer; font-size: .78rem; }
.gv-choice:hover { background: #fff0f6; }
.gv-choice input { accent-color: #a91c55; }
.gv-reset { background: transparent; color: #9b285a; border: 0; border-top: 1px solid #f0dfe7; padding: .65rem 0 0; margin-top: .5rem; width: 100%; font-size: .75rem; text-align: left; min-height: 40px; cursor: pointer; }
/* A small grid can still show a popup without clipping it at a disclosure edge. */
.md-disclosure { overflow: visible; }
[data-grid-view] .mt-card__title { overflow-wrap: anywhere; }
@media (max-width: 767px) {
    .mt-grid[data-grid-view], .mx-news-grid[data-grid-view] {
        grid-template-columns: repeat(var(--gv-selected, var(--gv-mobile)), minmax(0, 1fr));
        gap: .85rem;
    }
    [data-grid-mobile="2"] .mt-card__body { padding: .7rem; }
    [data-grid-mobile="2"] .mt-card__title { font-size: .95rem; }
    .mx-news-grid[data-grid-view] .mx-news-card--lead h3 { font-size: 1.05rem; }
}
@media print { .gv-toolbar { display: none; } }
