/* LIvVE game directory v270 - database lobbies + restored game information */
.games-shell {
    margin-top: 24px;
    padding: 28px;
    background: #fff;
    border-radius: 13px;
    box-shadow: var(--shadow);
}
.games-page-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e2e2e4;
}
.games-eyebrow {
    color: var(--pink-dark);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .18em;
}
.games-page-heading h1 {
    margin: 3px 0 6px;
    font-size: clamp(30px, 4vw, 42px);
    line-height: 1.05;
    letter-spacing: -.035em;
}
.games-page-heading p {
    max-width: 700px;
    margin: 0;
    color: #55555a;
    font-size: 14px;
}
.games-live-note,
.games-back-link {
    flex: 0 0 auto;
    color: #66666b;
    font-size: 12px;
    font-weight: 700;
}
.games-back-link {
    color: var(--pink-dark);
    text-decoration: none;
}
.games-back-link:hover,
.games-back-link:focus-visible { text-decoration: underline; outline: none; }

.game-directory-layout {
    display: grid;
    grid-template-columns: 245px minmax(0, 1fr);
    gap: 24px;
    margin-top: 24px;
    align-items: start;
}
.game-category-rail {
    overflow: hidden;
    border: 1px solid #d7d7d2;
    border-radius: 10px;
    background: #fff;
}
.game-category-heading {
    padding: 14px 15px 13px;
    border-bottom: 1px solid #d7d7d2;
    background: #f8f8f0;
}
.game-category-heading span,
.game-feature span,
.classic-game-list-head span,
.game-connect-kicker {
    color: var(--pink-dark);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .15em;
}
.game-category-heading h2 {
    margin: 2px 0 4px;
    color: #333300;
    font-size: 18px;
    line-height: 1.15;
}
.game-category-heading p {
    margin: 0;
    color: #6a6a6f;
    font-size: 10px;
    line-height: 1.45;
}
.game-category-links { display: block; }
.game-category-card {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) 18px;
    gap: 10px;
    align-items: center;
    min-height: 62px;
    padding: 8px 10px;
    border-bottom: 1px solid #ececec;
    color: #333300;
    text-decoration: none;
    transition: background .14s ease, color .14s ease;
}
.game-category-card:last-child { border-bottom: 0; }
.game-category-card:hover,
.game-category-card:focus-visible {
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    outline: none;
}
.game-category-card.is-active {
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    box-shadow: inset 4px 0 0 var(--pink);
}
.game-category-visual {
    width: 72px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #deded8;
    border-radius: 5px;
    background: #f4f4ee;
}
.game-category-visual img {
    display: block;
    width: 72px;
    height: 46px;
    object-fit: cover;
}
.game-symbol-tile {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #333300;
    font: 900 28px/1 Arial, Helvetica, sans-serif;
    background: linear-gradient(135deg, #fff, #efefe7);
}
.game-category-card-copy strong {
    display: block;
    font-size: 12px;
    line-height: 1.2;
}
.game-category-card-copy small {
    display: block;
    margin-top: 3px;
    color: #77777b;
    font-size: 9px;
    font-weight: 700;
}
.game-category-card-arrow {
    color: #aaa99e;
    font-size: 23px;
    font-weight: 800;
    line-height: 1;
}
.game-category-card:hover .game-category-card-arrow,
.game-category-card:focus-visible .game-category-card-arrow,
.game-category-card.is-active .game-category-card-arrow { color: var(--pink-dark); }
.game-directory-main { min-width: 0; }

.game-directory-welcome {
    overflow: hidden;
    min-height: 330px;
    border: 1px solid #d7d7d2;
    border-radius: 10px;
    background: #fff;
}
.game-welcome-titlebar {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    padding: 11px 15px;
    border-bottom: 1px solid #d7d7d2;
    background: #f8f8f0;
    color: #333300;
}
.game-welcome-titlebar span {
    color: var(--pink-dark);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .15em;
}
.game-welcome-titlebar strong { font: 800 14px/1.2 Arial, Helvetica, sans-serif; }
.game-welcome-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 28px;
    align-items: center;
    min-height: 292px;
    padding: 28px 30px;
}
.game-welcome-copy h2 {
    margin: 4px 0 11px;
    color: #333300;
    font-size: 29px;
    line-height: 1.1;
    letter-spacing: -.025em;
}
.game-welcome-copy p {
    max-width: 520px;
    margin: 0;
    color: #55555a;
    font-size: 14px;
    line-height: 1.65;
}
.game-welcome-hint {
    margin-top: 20px;
    padding: 10px 0 10px 13px;
    border-left: 3px solid var(--pink);
    color: #55555a;
    font-size: 12px;
}
.game-welcome-images {
    display: grid;
    grid-template-columns: repeat(2, 140px);
    gap: 8px;
    justify-content: end;
}
.game-welcome-images > img {
    display: block;
    width: 140px;
    height: 110px;
    object-fit: cover;
    border: 1px solid #deded8;
    border-radius: 6px;
}
.game-feature {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    margin-bottom: 16px;
    padding: 16px;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #fafafa;
}
.game-feature-visual {
    width: 150px;
    height: 118px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 8px;
    background: #f1f1ea;
}
.game-feature-visual > img {
    width: 150px;
    height: 118px;
    object-fit: cover;
}
.game-feature-visual > .game-symbol-tile { font-size: 54px; }
.game-feature h2 {
    margin: 3px 0 6px;
    color: #333300;
    font-size: 22px;
}
.game-feature p { margin: 0; color: #66666b; font-size: 13px; line-height: 1.5; }

.classic-game-list {
    overflow: hidden;
    border: 1px solid #d7d7d2;
    border-radius: 9px;
    background: #fff;
}
.classic-game-list-head {
    padding: 12px 14px;
    border-bottom: 1px solid #d7d7d2;
    background: #f8f8f0;
}
.classic-game-list-head h3 {
    margin: 1px 0 0;
    color: #333300;
    font: 800 18px/1.2 Arial, Helvetica, sans-serif;
}
.classic-game-row {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    min-height: 36px;
    padding: 7px 10px;
    color: #333300;
    text-decoration: none;
    border-bottom: 1px solid #ededed;
}
.classic-game-row:nth-child(even) { background: #f8f8f8; }
.classic-game-row:last-child { border-bottom: 0; }
.classic-game-row:hover,
.classic-game-row:focus-visible {
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    outline: none;
}
.classic-game-arrow { color: #8a8a6e; font-size: 19px; font-weight: 900; }
.classic-game-room-copy strong { display: block; font: 800 13px/1.3 Arial, Helvetica, sans-serif; }
.classic-game-room-copy small { display: none; }
.classic-game-types { display: flex; gap: 3px; align-items: center; justify-content: flex-end; }
.classic-game-types img { flex: 0 0 auto; }
.game-lobby-empty { padding: 28px 24px; text-align: center; }
.game-lobby-empty strong { display: block; color: #333300; font-size: 17px; }
.game-lobby-empty p { max-width: 580px; margin: 7px auto 0; color: #66666b; font-size: 12px; line-height: 1.6; }

.game-type-guide {
    margin-top: 24px;
    padding: 18px;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #f8f8f8;
}
.game-type-guide-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 14px;
}
.game-type-guide-head h3 { margin: 0; color: #333300; font-size: 18px; }
.game-type-guide-head p { margin: 0; color: #6a6a6f; font-size: 11px; }
.game-type-guide-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 18px;
}
.game-type-guide-item {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    min-height: 34px;
    padding: 5px 7px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 7px;
}
.game-type-guide-item img { max-width: 28px; height: auto; justify-self: center; }
.game-type-guide-item span { color: #55555a; font-size: 11px; line-height: 1.35; }

.game-connect-card {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 26px;
    align-items: center;
    margin-top: 24px;
    padding: 26px;
    border: 1px solid #dedee1;
    border-radius: 12px;
    background: #fff;
}
.game-connect-visual {
    position: relative;
    min-height: 170px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 10px;
    background: #f8f8f0;
}
.game-connect-game-image {
    width: 216px;
    height: 169px;
    object-fit: cover;
}
.game-connect-visual > .game-symbol-tile { font-size: 70px; }
.game-connect-types {
    position: absolute;
    right: 10px;
    bottom: 9px;
    display: flex;
    gap: 3px;
    padding: 4px;
    border-radius: 5px;
    background: rgba(255,255,255,.9);
}
.game-connect-copy h2 {
    margin: 3px 0 8px;
    color: #333300;
    font-size: clamp(28px, 4vw, 38px);
    line-height: 1.05;
}
.game-connect-copy p { margin: 0 0 20px; color: #55555a; font-size: 14px; line-height: 1.55; }
.game-enter-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 20px;
    border: 1px solid var(--pink-dark);
    border-radius: 9px;
    background: var(--pink);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}
.game-enter-button.is-disabled {
    border-color: #c8c8cb;
    background: #d9d9dc;
    color: #77777b;
    cursor: not-allowed;
}
.game-mpi-note { display: block; margin-top: 8px; color: #77777b; font-size: 11px; }
.game-connect-info {
    margin-top: 16px;
    padding: 20px;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #f8f8f8;
}
.game-connect-info h3 { margin: 0 0 12px; color: #333300; font-size: 17px; }
.game-connect-info dl { margin: 0; }
.game-connect-info dl > div {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 15px;
    padding: 8px 0;
    border-top: 1px solid #e7e7e9;
}
.game-connect-info dt { color: #77777b; font-size: 12px; font-weight: 800; }
.game-connect-info dd { margin: 0; color: #444448; font-size: 12px; font-weight: 700; }
.game-connect-info dd img { margin-right: 4px; vertical-align: middle; }

@media (max-width: 900px) {
    .game-welcome-body { grid-template-columns: 1fr; }
    .game-welcome-images { justify-content: start; }
}
@media (max-width: 820px) {
    .games-shell { padding: 20px; }
    .game-directory-layout { grid-template-columns: 1fr; }
    .game-category-rail { display: block; }
}
@media (max-width: 620px) {
    .games-page-heading,
    .game-type-guide-head { align-items: flex-start; flex-direction: column; gap: 10px; }
    .game-type-guide-grid { grid-template-columns: 1fr; }
    .game-feature { grid-template-columns: 1fr; }
    .game-connect-card { grid-template-columns: 1fr; padding: 20px; }
    .game-connect-info dl > div { grid-template-columns: 1fr; gap: 3px; }
    .game-welcome-images { grid-template-columns: repeat(2, minmax(0, 140px)); width: 100%; }
    .game-welcome-images > img { width: 100%; height: auto; aspect-ratio: 1.27 / 1; }
}
@media (max-width: 430px) {
    .games-shell { padding: 15px; }
    .classic-game-row { grid-template-columns: 14px minmax(0, 1fr); }
    .classic-game-types { grid-column: 2; justify-content: flex-start; }
    .game-welcome-images { grid-template-columns: 1fr; }
    .game-welcome-images > img { max-width: 220px; }
}

/* v184 - direct Quick Load selector for game lobby navigation. */
.game-quick-load {
    display: block;
    max-width: 430px;
    margin-top: 18px;
}
.game-quick-load > span {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
    color: var(--pink-dark);
    font-size: 12px;
    font-weight: 800;
}
.game-quick-load > span .livve-fa-icon {
    width: 15px;
    height: 15px;
}
.game-quick-load select {
    display: block;
    width: 100%;
    min-height: 40px;
    padding: 7px 34px 7px 10px;
    border: 1px solid #d2c7cb;
    border-radius: 5px;
    background: #fff;
    color: #333300;
    font: inherit;
    cursor: pointer;
}
.game-quick-load select:focus {
    border-color: var(--pink);
    outline: 2px solid rgba(255, 31, 98, .14);
    outline-offset: 1px;
}

/* v263 - Card & Board + Gamers directory expansion */
.games-directory-sections {
    display: grid;
    gap: 22px;
    margin-top: 24px;
}
.games-directory-section {
    overflow: hidden;
    border: 1px solid #dedee1;
    border-radius: 11px;
    background: #fff;
}
.games-directory-section-head {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #e3e3e5;
    background: #f8f8f9;
}
.games-directory-section-art {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 104px;
    overflow: hidden;
    border: 1px solid #dedee1;
    border-radius: 8px;
    background: #fff;
}
.games-directory-section-art img {
    display: block;
    max-width: 100%;
    max-height: 104px;
    object-fit: contain;
}
.gamers-directory-art img { width: 100%; max-height: 104px; object-fit: cover; }
.games-directory-section-head h2 {
    margin: 3px 0 7px;
    color: #252529;
    font-size: 24px;
    line-height: 1.1;
}
.games-directory-section-head p {
    margin: 0;
    color: #5a5a5f;
    font-size: 13px;
    line-height: 1.55;
}
.games-section-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    margin-top: 13px;
    padding: 7px 13px;
    border: 1px solid var(--pink-dark);
    border-radius: 6px;
    background: var(--pink);
    color: var(--theme-accent-text);
    font-size: 11px;
    font-weight: 850;
    text-decoration: none;
}
.games-section-button:hover,
.games-section-button:focus-visible {
    filter: brightness(.96);
    outline: none;
}
.games-directory-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 16px;
}
.games-directory-grid-classic { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.games-directory-grid-large { margin-top: 22px; padding: 0; }
.games-directory-card {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr) 16px;
    gap: 10px;
    align-items: center;
    min-height: 70px;
    padding: 9px 10px;
    border: 1px solid #e1e1e3;
    border-radius: 8px;
    background: #fafafa;
    color: #28282c;
    text-decoration: none;
}
.games-directory-card:hover,
.games-directory-card:focus-visible {
    border-color: var(--pink);
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    outline: none;
}
.games-directory-card-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 74px;
    height: 48px;
    overflow: hidden;
    border: 1px solid #e0e0e2;
    border-radius: 5px;
    background: #f4f4f5;
}
.games-directory-card-visual img { width: 74px; height: 48px; object-fit: cover; }
.games-directory-card-copy strong { display: block; font-size: 12px; }
.games-directory-card-copy small { display: block; margin-top: 3px; color: #747479; font-size: 9.5px; font-weight: 700; }
.games-directory-card-arrow { justify-self: end; color: #aaaab0; font-size: 22px; font-weight: 900; }
.games-directory-card:hover .games-directory-card-arrow,
.games-directory-card:focus-visible .games-directory-card-arrow { color: var(--pink-dark); }

.gamer-category-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 16px;
}
.gamer-category-grid-large { margin-top: 22px; padding: 0; }
.gamer-category-card {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 16px;
    gap: 11px;
    align-items: center;
    min-height: 78px;
    padding: 12px;
    border: 1px solid #e1e1e3;
    border-radius: 8px;
    background: #fafafa;
    color: #28282c;
    text-decoration: none;
}
.gamer-category-card:hover,
.gamer-category-card:focus-visible {
    border-color: var(--pink);
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    outline: none;
}
.gamer-category-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 8px;
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    font-size: 22px;
    font-weight: 900;
}
.gamer-category-card strong { display: block; font-size: 13px; }
.gamer-category-card small { display: block; margin-top: 4px; color: #67676c; font-size: 10px; line-height: 1.4; }
.gamer-category-card-large {
    grid-template-columns: 148px minmax(0, 1fr) 20px;
    min-height: 112px;
}
.gamer-category-archive {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 148px;
    min-height: 72px;
    overflow: hidden;
    border: 1px solid #e1e1e3;
    border-radius: 6px;
    background: #202020;
}
.gamer-category-archive img { display: block; max-width: 100%; height: auto; }
.gamer-category-card-copy em {
    display: inline-block;
    margin-top: 8px;
    color: var(--pink-dark);
    font-size: 10px;
    font-style: normal;
    font-weight: 850;
}

.games-reference-banner {
    display: grid;
    grid-template-columns: minmax(180px, 372px) minmax(0, 1fr);
    gap: 22px;
    align-items: center;
    margin-top: 22px;
    padding: 18px;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #fafafa;
}
.games-reference-banner > img {
    display: block;
    max-width: 100%;
    max-height: 115px;
    object-fit: contain;
    border-radius: 5px;
}
.games-reference-banner span,
.gamer-game-hero-copy > span,
.gamer-info-card-head > span,
.gamer-title-copy > span {
    color: var(--pink-dark);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .14em;
}
.games-reference-banner h2,
.gamer-game-hero-copy h2,
.gamer-info-card-head h3 {
    margin: 3px 0 7px;
    color: #28282c;
}
.games-reference-banner h2 { font-size: 20px; }
.games-reference-banner p { margin: 0; color: #5d5d62; font-size: 12px; line-height: 1.55; }
.gamers-reference-banner > img { width: 100%; object-fit: cover; }
.gamer-category-reference { grid-template-columns: 230px minmax(0, 1fr); margin-top: 0; }

.gamer-rail-groups { display: block; }
.gamer-rail-group { border-bottom: 1px solid #ececee; }
.gamer-rail-group:last-child { border-bottom: 0; }
.gamer-rail-category {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) 14px;
    gap: 8px;
    align-items: center;
    min-height: 40px;
    padding: 8px 10px;
    color: #333337;
    text-decoration: none;
}
.gamer-rail-category:hover,
.gamer-rail-category:focus-visible,
.gamer-rail-group.is-active > .gamer-rail-category {
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    outline: none;
}
.gamer-rail-category strong { font-size: 11px; }
.gamer-rail-games { padding: 0 10px 8px 38px; }
.gamer-rail-games a {
    display: block;
    padding: 5px 0;
    color: #6c6c71;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none;
}
.gamer-rail-games a:hover,
.gamer-rail-games a:focus-visible,
.gamer-rail-games a.is-active { color: var(--pink-dark); outline: none; }

.gamer-title-list { display: grid; gap: 10px; margin-top: 16px; }
.gamer-title-card {
    display: grid;
    grid-template-columns: 105px minmax(0,1fr) 18px;
    gap: 14px;
    align-items: center;
    padding: 13px;
    border: 1px solid #dedee1;
    border-radius: 9px;
    background: #fff;
    color: #29292d;
    text-decoration: none;
}
.gamer-title-card:hover,
.gamer-title-card:focus-visible { border-color: var(--pink); background: var(--theme-accent-soft); outline: none; }
.gamer-title-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 105px;
    height: 72px;
    overflow: hidden;
    border: 1px solid #dfdfe2;
    border-radius: 7px;
    background: #f5f5f6;
}
.gamer-title-visual img { width: 100%; height: 100%; object-fit: cover; }
.gamer-symbol-tile {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: var(--pink-dark);
    background: linear-gradient(135deg, #fff, var(--theme-accent-soft));
    font-size: 22px;
    font-weight: 900;
    letter-spacing: .04em;
}
.gamer-title-copy strong { display: block; margin-top: 3px; font-size: 15px; }
.gamer-title-copy small { display: block; margin-top: 5px; color: #66666b; font-size: 10.5px; line-height: 1.45; }
.gamer-type-markers { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.gamer-type-markers span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 6px;
    border: 1px solid #e0e0e3;
    border-radius: 5px;
    background: #fff;
    color: #66666b;
    font-size: 9px;
    font-weight: 800;
}
.gamer-type-markers img { width: 28px; height: 14px; object-fit: contain; }

.gamer-game-hero {
    display: grid;
    grid-template-columns: 180px minmax(0,1fr);
    gap: 22px;
    align-items: center;
    padding: 20px;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #fafafa;
}
.gamer-game-hero-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    height: 118px;
    overflow: hidden;
    border: 1px solid #dedee1;
    border-radius: 8px;
    background: #fff;
}
.gamer-game-hero-visual img { width: 100%; height: 100%; object-fit: cover; }
.gamer-game-hero-copy h2 { font-size: 24px; }
.gamer-game-hero-copy p { margin: 0; color: #59595e; font-size: 12px; line-height: 1.6; }
.gamer-info-card {
    margin-top: 16px;
    padding: 18px;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #fff;
}
.gamer-info-card-head h3 { font-size: 18px; }
.gamer-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px;
    margin-top: 14px;
}
.gamer-info-grid > div {
    padding: 11px;
    border: 1px solid #e2e2e4;
    border-radius: 7px;
    background: #fafafa;
}
.gamer-info-grid strong,
.gamer-info-grid span { display: block; }
.gamer-info-grid strong { color: #77777c; font-size: 9px; text-transform: uppercase; letter-spacing: .05em; }
.gamer-info-grid span { margin-top: 4px; color: #303034; font-size: 11px; font-weight: 750; line-height: 1.4; }
.gamer-archive-note,
.gamer-reference-disclaimer { margin: 13px 0 0; color: #5d5d62; font-size: 11px; line-height: 1.55; }
.gamer-reference-disclaimer { padding-top: 11px; border-top: 1px solid #e5e5e7; color: #7a7a7f; font-size: 10px; }

@media (max-width: 900px) {
    .games-directory-grid-classic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .games-reference-banner { grid-template-columns: 1fr; }
    .games-reference-banner > img { justify-self: start; }
}
@media (max-width: 700px) {
    .games-directory-section-head { grid-template-columns: 1fr; }
    .games-directory-section-art { justify-content: flex-start; width: min(100%, 375px); }
    .gamer-category-grid,
    .games-directory-grid,
    .games-directory-grid-classic { grid-template-columns: 1fr; }
    .gamer-category-card-large { grid-template-columns: 1fr 20px; }
    .gamer-category-archive { grid-column: 1 / -1; width: min(100%, 435px); }
    .gamer-game-hero { grid-template-columns: 1fr; }
    .gamer-game-hero-visual { width: min(100%, 320px); }
    .gamer-info-grid { grid-template-columns: 1fr; }
}
@media (max-width: 470px) {
    .games-directory-card { grid-template-columns: 62px minmax(0,1fr) 14px; }
    .games-directory-card-visual { width: 62px; height: 42px; }
    .games-directory-card-visual img { width: 62px; height: 42px; }
    .gamer-title-card { grid-template-columns: 80px minmax(0,1fr); }
    .gamer-title-visual { width: 80px; height: 62px; }
    .gamer-title-card > .games-directory-card-arrow { display: none; }
}

/* v264 - database-backed Gamer catalogue */
.gamer-title-card-v264{display:block;padding:0;overflow:hidden}
.gamer-title-card-v264:hover{border-color:var(--pink);background:#fff}
.gamer-title-main-link{display:grid;grid-template-columns:105px minmax(0,1fr) 18px;gap:14px;align-items:center;padding:13px;color:#29292d;text-decoration:none}
.gamer-title-main-link:hover,.gamer-title-main-link:focus-visible{background:var(--theme-accent-soft);outline:none}
.gamer-list-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.gamer-list-badges em{padding:3px 6px;border:1px solid var(--theme-accent);border-radius:999px;background:var(--theme-accent-soft);color:var(--pink-dark);font-size:9px;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.games-list-buy-button{display:flex;align-items:center;justify-content:center;margin:0 13px 13px auto;width:max-content;min-width:130px;padding:8px 12px;border-radius:7px;background:var(--theme-accent);color:var(--theme-button-text,#fff);font-size:10px;font-weight:850;text-decoration:none;text-transform:uppercase;letter-spacing:.04em}
.games-list-buy-button:hover,.games-list-buy-button:focus-visible{background:var(--theme-accent-dark);outline:none}
.gamer-game-hero-v264 .gamer-game-hero-visual img{object-fit:contain;padding:8px;background:#fff}
.gamer-game-status-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.gamer-game-status-row span{padding:5px 8px;border:1px solid var(--theme-accent);border-radius:999px;background:var(--theme-accent-soft);color:var(--pink-dark);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.gamer-game-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.games-primary-button,.games-secondary-button,.games-disabled-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 13px;border-radius:7px;font-size:10px;font-weight:850;text-decoration:none;text-transform:uppercase;letter-spacing:.04em}
.games-primary-button{background:var(--theme-accent);color:var(--theme-button-text,#fff)}
.games-primary-button:hover,.games-primary-button:focus-visible{background:var(--theme-accent-dark);outline:none}
.games-secondary-button{border:1px solid var(--theme-accent);background:#fff;color:var(--pink-dark)}
.games-secondary-button:hover,.games-secondary-button:focus-visible{background:var(--theme-accent-soft);outline:none}
.games-disabled-button{background:#ededee;color:#86868b;cursor:not-allowed}
.gamer-gallery-card{margin-top:16px;padding:18px;border:1px solid #dedee1;border-radius:10px;background:#fff}
.gamer-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.gamer-gallery-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid #dedee1;border-radius:8px;background:#f4f4f5}
.gamer-info-grid-v264{grid-template-columns:repeat(2,minmax(0,1fr))}
.gamer-spec-list{display:grid;gap:7px;margin:14px 0 0;padding:0;list-style:none}
.gamer-spec-list li{position:relative;padding:9px 10px 9px 28px;border:1px solid #e2e2e4;border-radius:7px;background:#fafafa;color:#4b4b50;font-size:11px;line-height:1.45}
.gamer-spec-list li:before{content:'✓';position:absolute;left:10px;top:9px;color:var(--pink-dark);font-weight:900}
@media(max-width:700px){.gamer-gallery-grid{grid-template-columns:1fr 1fr}.gamer-info-grid-v264{grid-template-columns:1fr}}
@media(max-width:470px){.gamer-title-main-link{grid-template-columns:80px minmax(0,1fr)}.gamer-title-main-link>.games-directory-card-arrow{display:none}.games-list-buy-button{width:calc(100% - 26px);margin:0 13px 13px}.gamer-gallery-grid{grid-template-columns:1fr}}

/* v267 - shared database-driven game lobby directory (Gamers + Card & Board). */
.database-lobby-list { margin-top: 16px; }
.database-lobby-list-head {
    display: flex;
    padding: 12px 14px;
    align-items: end;
    justify-content: space-between;
    gap: 14px;
}
.database-lobby-list-head small {
    color: #77777c;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.database-lobby-table { width: 100%; }
.database-lobby-table-header,
.database-lobby-row {
    display: grid;
    grid-template-columns: 46px 58px minmax(0, 1fr) minmax(80px, auto);
    gap: 8px;
    align-items: center;
}
.database-lobby-table-header {
    min-height: 28px;
    padding: 5px 10px;
    border-bottom: 1px solid #d9d9da;
    background: #efeff0;
    color: #5b5b60;
    font-size: 9px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.database-lobby-table-header span:last-child { text-align: right; }
.database-lobby-row {
    min-height: 36px;
    padding: 7px 10px;
    border-bottom: 1px solid #ededed;
    background: #fff;
}
.database-lobby-row:nth-child(odd) { background: #f7f7f8; }
.database-lobby-row:last-child { border-bottom: 0; }
.database-lobby-row:hover { background: var(--theme-accent-soft); }
.database-lobby-pop {
    color: #4e4e53;
    font-size: 11px;
    font-weight: 850;
    text-align: left;
}
.database-lobby-play-cell { display: flex; align-items: center; }
.database-lobby-play {
    display: inline-block;
    width: 36px;
    height: 15px;
    padding: 0;
    border: 0;
    background: transparent;
    line-height: 0;
    text-decoration: none;
}
.database-lobby-play img {
    display: block;
    width: 36px;
    height: 15px;
    border: 0;
}
.database-lobby-play:hover,
.database-lobby-play:focus-visible {
    filter: brightness(1.08);
    outline: 1px solid var(--theme-accent);
    outline-offset: 1px;
}
.database-lobby-play.is-disabled { opacity: .45; cursor: default; }
.database-lobby-play.is-disabled:hover { filter: none; outline: none; }
.database-lobby-name { min-width: 0; }
.database-lobby-name > a {
    color: var(--pink-dark);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.database-lobby-name > a:hover,
.database-lobby-name > a:focus-visible { color: var(--pink); outline: none; }
.database-lobby-name strong {
    display: block;
    font-size: 12px;
    line-height: 1.3;
}
.database-lobby-name small { display: none; }
.database-lobby-types {
    min-width: 80px;
    flex-wrap: wrap;
}
.database-lobby-types img {
    width: 28px;
    height: 14px;
    object-fit: contain;
}
/* v289 - apply v288 lobby spacing to every shared lobby row and suppress secondary lobby-name text. */
.database-lobby-list .game-lobby-empty { padding: 28px 24px; }

@media (max-width: 620px) {
    .database-lobby-table-header { display: none; }
    .database-lobby-row {
        grid-template-columns: 48px minmax(0, 1fr);
        gap: 6px 9px;
    }
    .database-lobby-pop { display: none; }
    .database-lobby-play-cell { grid-column: 1; grid-row: 1 / span 2; }
    .database-lobby-name { grid-column: 2; }
    .database-lobby-types { grid-column: 2; justify-content: flex-start; }
}

/* v270 - real game-information rail + restored Mplayer Card & Board guides. */
.game-information-rail {
    position: sticky;
    top: 14px;
}
.game-information-heading h2 { overflow-wrap: anywhere; }
.game-information-links { display: block; }
.game-info-nav-item {
    display: block;
    padding: 11px 13px;
    border-bottom: 1px solid #ececec;
    color: #333300;
    text-decoration: none;
    background: #fff;
    transition: background .14s ease, color .14s ease;
}
.game-info-nav-item:last-child { border-bottom: 0; }
a.game-info-nav-item:hover,
a.game-info-nav-item:focus-visible {
    background: var(--theme-accent-soft);
    color: var(--pink-dark);
    outline: none;
}
.game-info-nav-item.is-primary {
    box-shadow: inset 4px 0 0 var(--theme-accent);
    background: var(--theme-accent-soft);
}
.game-info-nav-item > span {
    display: block;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.25;
}
.game-info-nav-item > small {
    display: block;
    margin-top: 2px;
    color: #77777c;
    font-size: 9px;
    line-height: 1.3;
}
.game-info-nav-item.is-unavailable {
    cursor: default;
    color: #77776f;
    background: #fafafa;
}
.game-info-nav-item.is-unavailable > small { color: #99999d; }

.game-information-content {
    margin-top: 24px;
    overflow: hidden;
    border: 1px solid #dedee1;
    border-radius: 10px;
    background: #fff;
}
.game-info-section-head {
    padding: 15px 17px 14px;
    border-bottom: 1px solid #dedee1;
    background: #f8f8f0;
}
.game-info-section-head > span {
    color: var(--pink-dark);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .15em;
}
.game-info-section-head h3 {
    margin: 2px 0 4px;
    color: #333300;
    font-size: 20px;
    line-height: 1.2;
}
.game-info-section-head p {
    margin: 0;
    color: #66666b;
    font-size: 10.5px;
    line-height: 1.45;
}
.game-information-article {
    padding: 18px 20px 24px;
    color: #303035;
    font: 12px/1.55 Arial, Helvetica, sans-serif;
}
.game-information-article .game-info-anchor {
    display: block;
    position: relative;
    top: -8px;
    visibility: hidden;
    scroll-margin-top: 18px;
}
.game-information-article p { margin: 0 0 12px; }
.game-information-article p:empty { display: none; }
.game-information-article h3 {
    margin: 24px 0 9px;
    color: #333300;
    font-size: 16px;
    line-height: 1.25;
}
.game-information-article h3:first-child { margin-top: 0; }
.game-information-article b,
.game-information-article strong { color: #333300; }
.game-information-article ul,
.game-information-article ol {
    margin: 8px 0 15px;
    padding-left: 24px;
}
.game-information-article li { margin: 4px 0; }
.game-information-article hr {
    height: 1px;
    margin: 20px 0;
    border: 0;
    background: #e1e1e3;
}
.game-information-article table {
    width: 100%;
    max-width: 100%;
    margin: 10px 0 16px;
    border-collapse: collapse;
}
.game-information-article td,
.game-information-article th {
    padding: 6px 8px;
    border: 1px solid #e4e4e5;
    vertical-align: top;
}
.game-information-article a {
    color: var(--pink-dark);
    text-underline-offset: 2px;
}
.game-information-article a:hover,
.game-information-article a:focus-visible { color: var(--pink); outline: none; }
.game-information-empty { padding-bottom: 18px; }
.game-information-empty > p { margin: 16px 18px 0; color: #66666b; font-size: 12px; }

#game-lobbies,
#game-information,
#game-specifications,
#game-screenshots { scroll-margin-top: 18px; }

@media (max-width: 900px) {
    .game-information-rail { position: static; }
    .game-information-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .game-info-nav-item { border-right: 1px solid #ececec; }
}
@media (max-width: 540px) {
    .game-information-links { grid-template-columns: 1fr; }
    .game-information-article { padding: 15px 14px 20px; }
}
.game-information-article .game-info-anchor + b,
.game-information-article .game-info-anchor + p > b:first-child {
    color: #333300;
    font-size: 18px;
    line-height: 1.25;
}


/* v272 - Gamer archive information content. */
.gamer-game-information-content .game-information-article h4 {
    margin: 18px 0 7px;
    color: #333300;
    font-size: 13px;
    line-height: 1.3;
}
.gamer-game-information-content .game-information-article h4 + p,
.gamer-game-information-content .game-information-article h4 + ul,
.gamer-game-information-content .game-information-article h4 + ol {
    margin-top: 0;
}
.gamer-game-information-content .game-information-article > .game-info-anchor:not(:first-child) {
    margin-top: 4px;
}


/* v274 - historical Gamer room/connectivity status icon table. */
.gamer-room-status-table {
    width: 100%;
    max-width: 680px;
    margin: 10px 0 18px;
    border-collapse: collapse;
    background: #fff;
}
.gamer-room-status-table th {
    background: #f1f1f2;
    color: #333300;
    font-size: 12px;
    text-align: left;
}
.gamer-room-status-table th:first-child,
.gamer-room-status-table td.gamer-room-status-symbol {
    width: 62px;
    text-align: center;
    vertical-align: middle;
}
.gamer-room-status-table td {
    vertical-align: middle;
}
.gamer-room-status-table td.gamer-room-status-symbol img {
    display: inline-block;
    width: 17px;
    height: 16px;
    border: 0;
    image-rendering: auto;
}


/* v303 - per-game user/lobby counts on Card & Board and PC Gamers directories. */
.game-directory-counts {
    color: #67676c;
    font-weight: 800;
}
.gamer-category-game-list {
    display: grid;
    gap: 4px;
    margin-top: 10px;
}
.gamer-category-game-summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: baseline;
    padding-top: 5px;
    border-top: 1px solid #e7e7e9;
}
.gamer-category-game-summary em {
    display: block;
    margin: 0;
    color: #343438;
    font-size: 10.5px;
    font-style: normal;
    font-weight: 850;
}
.gamer-category-game-summary small {
    display: block;
    margin: 0;
    color: #747479;
    font-size: 9.5px;
    font-weight: 750;
    line-height: 1.35;
    text-align: right;
    white-space: nowrap;
}
.gamer-category-card:hover .gamer-category-game-summary em,
.gamer-category-card:focus-visible .gamer-category-game-summary em {
    color: var(--pink-dark);
}
@media (max-width: 470px) {
    .gamer-category-game-summary { grid-template-columns: 1fr; gap: 1px; }
    .gamer-category-game-summary small { text-align: left; }
}

/* v304 - combined lobby totals for PC Gamer category cards. */
.gamer-category-card-copy .gamer-category-total-counts {
    display: block;
    margin-top: 6px;
    color: var(--pink-dark);
    font-size: 10px;
    font-weight: 850;
    line-height: 1.35;
}


/* v305 - /games/ landing cards now use the same database-driven count lines. */
