:root {
    --zibll-game-bg: #eef3f8;
    --zibll-game-surface: rgba(255, 255, 255, 0.92);
    --zibll-game-surface-solid: #ffffff;
    --zibll-game-surface-soft: #f5f8fc;
    --zibll-game-ink: #182033;
    --zibll-game-muted: #647189;
    --zibll-game-line: rgba(24, 32, 51, 0.08);
    --zibll-game-accent: #2363ef;
    --zibll-game-accent-2: #11b4d5;
    --zibll-game-shadow: 0 24px 60px rgba(29, 39, 61, 0.12);
    --zibll-game-shadow-soft: 0 12px 30px rgba(29, 39, 61, 0.08);
}

body.dark-theme {
    --zibll-game-bg: #15181f;
    --zibll-game-surface: rgba(24, 28, 36, 0.9);
    --zibll-game-surface-solid: #1b2029;
    --zibll-game-surface-soft: #202632;
    --zibll-game-ink: #eef4fb;
    --zibll-game-muted: #aab4c3;
    --zibll-game-line: rgba(255, 255, 255, 0.08);
    --zibll-game-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    --zibll-game-shadow-soft: 0 12px 30px rgba(0, 0, 0, 0.22);
}

.zibll-game-page {
    margin: -20px 0 0;
    padding: 18px 0 34px;
    background:
        radial-gradient(circle at 15% 0%, rgba(35, 99, 239, 0.12), transparent 30%),
        radial-gradient(circle at 85% 12%, rgba(17, 180, 213, 0.12), transparent 28%),
        linear-gradient(180deg, var(--zibll-game-surface-soft) 0%, var(--zibll-game-bg) 100%);
    color: var(--zibll-game-ink);
    font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;
}

.zibll-game-shell {
    width: min(860px, calc(100% - 24px));
    margin: 0 auto;
}

.gamev2-page {
    background: transparent;
}

.gamev2-shell {
    width: min(1180px, calc(100% - 32px));
    padding: 18px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 24px;
    background: var(--zibll-game-surface-solid);
    box-shadow: var(--zibll-game-shadow);
}

.zibll-game-hero,
.zibll-game-info-panel,
.zibll-game-section {
    border-radius: 24px;
    background: var(--zibll-game-surface);
    box-shadow: var(--zibll-game-shadow);
    border: 1px solid var(--zibll-game-line);
    backdrop-filter: blur(18px);
}

.zibll-game-hero {
    position: relative;
    overflow: hidden;
    min-height: 360px;
}

.zibll-game-hero-cover {
    position: absolute;
    inset: 0;
}

.zibll-game-hero-cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zibll-game-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(9, 14, 24, 0.06) 0%, rgba(9, 14, 24, 0.38) 100%);
}

.zibll-game-hero-glow {
    position: absolute;
    inset: auto -10% -18% auto;
    width: 72%;
    height: 55%;
    background: radial-gradient(circle at center, rgba(35, 99, 239, 0.28), transparent 68%);
    filter: blur(16px);
    pointer-events: none;
}

.zibll-game-hero-panel {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
    align-content: end;
    height: 100%;
    padding: 34px 32px 30px;
    color: #fff;
}

.zibll-game-hero-eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.18);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.zibll-game-hero-panel h1 {
    margin: 0;
    max-width: 14ch;
    font-size: clamp(34px, 5vw, 54px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.05em;
    text-shadow: 0 12px 30px rgba(0, 0, 0, 0.22);
}

.zibll-game-hero-summary {
    margin: 0;
    max-width: 60ch;
    color: rgba(255, 255, 255, 0.88);
    font-size: 15px;
    line-height: 1.8;
    font-weight: 500;
}

.zibll-game-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.zibll-game-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    backdrop-filter: blur(10px);
}

.zibll-game-info-panel {
    margin-top: 14px;
    padding: 14px 16px 16px;
}

.zibll-game-title-row {
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.zibll-game-gameicon {
    width: 80px;
    height: 80px;
    overflow: hidden;
    border-radius: 20px;
    background: linear-gradient(180deg, var(--zibll-game-surface-soft) 0%, rgba(35, 99, 239, 0.08) 100%);
    box-shadow: var(--zibll-game-shadow-soft);
}

.zibll-game-gameicon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    padding: 8px;
}

.zibll-game-title-copy h1 {
    margin: 0;
    color: var(--zibll-game-ink);
    font-size: 22px;
    line-height: 1.16;
    font-weight: 900;
    letter-spacing: -0.03em;
}

.zibll-game-title-copy {
    align-self: flex-start;
    padding-top: 2px;
}

.zibll-game-title-copy h2 {
    margin: 0;
    color: var(--zibll-game-ink);
    font-size: 18px;
    line-height: 1.25;
    font-weight: 900;
    letter-spacing: -0.02em;
}

.zibll-game-title-copy p {
    margin: 8px 0 0;
    color: var(--zibll-game-muted);
    font-size: 14px;
    line-height: 1.7;
    font-weight: 500;
}

.zibll-game-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.zibll-game-stat-item {
    padding: 14px 14px 13px;
    border-radius: 18px;
    background: var(--zibll-game-surface-soft);
    border: 1px solid var(--zibll-game-line);
}

.zibll-game-stat-item span {
    display: block;
    color: var(--zibll-game-muted);
    font-size: 12px;
    font-weight: 700;
}

.zibll-game-stat-item strong {
    display: block;
    margin-top: 6px;
    color: var(--zibll-game-ink);
    font-size: 18px;
    line-height: 1.2;
    font-weight: 900;
}

.zibll-game-section {
    margin-top: 14px;
    padding: 14px 16px 16px;
}

.zibll-game-section-title {
    position: relative;
    padding-left: 13px;
    color: var(--zibll-game-ink);
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
}

.zibll-game-section-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 4px;
    height: 15px;
    border-radius: 999px;
    background: var(--zibll-game-accent);
}

.zibll-game-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.zibll-game-section-hint {
    color: var(--zibll-game-muted);
    font-size: 12px;
    font-weight: 700;
}

.zibll-game-subtitle {
    margin-top: 10px;
    color: var(--zibll-game-muted);
    font-size: 14px;
    line-height: 1.7;
    font-weight: 600;
}

.zibll-game-description,
.zibll-game-body {
    margin-top: 12px;
    color: var(--zibll-game-muted);
    font-size: 14px;
    line-height: 1.82;
    font-weight: 500;
}

.zibll-game-hidden-content {
    display: none !important;
}

.zibll-game-description p + p,
.zibll-game-body p + p {
    margin-top: 12px;
}

.zibll-game-screenshot-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 12px;
}

.zibll-game-shot {
    position: relative;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: var(--zibll-game-surface-soft);
    box-shadow: var(--zibll-game-shadow-soft);
    border: 1px solid var(--zibll-game-line);
}

.zibll-game-shot-cover {
    aspect-ratio: 16 / 9;
}

.zibll-game-shot-link {
    display: block;
    width: 100%;
    height: 100%;
}

.zibll-game-shot img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.zibll-game-action-bar {
    margin-top: 8px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 14px;
    flex-wrap: nowrap;
}

.zibll-game-action-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    width: auto;
    padding: 0 20px;
    border-radius: 999px;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.01em;
    text-decoration: none;
    border: 0;
    background: linear-gradient(135deg, var(--zibll-game-accent) 0%, #2a6df1 55%, #1952db 100%);
    box-shadow: 0 16px 28px rgba(35, 99, 239, 0.24);
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
    white-space: nowrap;
}

.zibll-game-action-primary:hover,
.zibll-game-action-primary:focus {
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
    filter: brightness(1.02);
    box-shadow: 0 18px 32px rgba(35, 99, 239, 0.28);
}

.gamev2-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.gamev2-admin-fields {
    --gamev2-publisher-blue: #2468f2;
    --gamev2-publisher-danger: #cf3f52;
    --gamev2-publisher-text: #182033;
    --gamev2-publisher-muted: #646970;
    --gamev2-publisher-line: #dfe4ec;
    --gamev2-publisher-card-solid: #f7f9fc;
}

.gamev2-grid .wide {
    grid-column: 1 / -1;
}

.gamev2-field {
    display: grid;
    gap: 8px;
}

.gamev2-field > label {
    display: block;
    color: #1a2440;
    font-size: 14px;
    font-weight: 700;
}

.gamev2-field input[type="text"],
.gamev2-field input[type="url"],
.gamev2-field select,
.gamev2-field textarea {
    width: 100%;
    min-height: 44px;
    border-radius: 12px;
    border: 1px solid rgba(35, 99, 239, 0.16);
    background: #fff;
    color: #182033;
    box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.03);
}

.gamev2-field textarea {
    min-height: 120px;
    resize: vertical;
}

.gamev2-actions {
    margin-top: 20px;
}

.gamev2-actions button {
    min-height: 46px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--zibll-game-accent) 0%, #2a6df1 55%, #1952db 100%);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 16px 28px rgba(35, 99, 239, 0.24);
}

.gamev2-steam-btn {
    background: linear-gradient(135deg, #1b2838 0%, #2a475e 100%);
    box-shadow: 0 16px 28px rgba(27, 40, 56, 0.24);
}

.gamev2-steam-btn:hover,
.gamev2-steam-btn:focus {
    box-shadow: 0 18px 32px rgba(27, 40, 56, 0.28);
}

.gamev2-media-field {
    display: grid;
    gap: 10px;
}

.gamev2-media-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.gamev2-media-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-start;
    min-height: 20px;
}

.gamev2-preview-thumb {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 12px;
    border: 1px solid rgba(35, 99, 239, 0.14);
    background: #f6f8fc;
    box-shadow: 0 8px 14px rgba(35, 43, 62, 0.08);
}

.gamev2-preview-thumb-cover {
    width: 148px;
    height: 84px;
}

.gamev2-preview-thumb-gallery {
    width: 112px;
    height: 84px;
}

.gamev2-frontend-form {
    padding: 14px 0;
}

.gamev2-netdisk-box {
    margin-top: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 18px;
    overflow: hidden;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(35, 99, 239, 0.05) 0%, rgba(17, 180, 213, 0.06) 100%);
    border: 1px solid rgba(35, 99, 239, 0.12);
    box-shadow: var(--zibll-game-shadow-soft);
}

.gamev2-netdisk-box img {
    display: block;
    width: min(100%, 620px);
    max-width: 100%;
    height: auto;
    border-radius: 18px;
    background: #fff;
    object-fit: cover;
}

.zibll-game-admin-box .form-table th,
.zibll-game-admin-box .form-table td {
    padding-top: 18px;
    padding-bottom: 18px;
}

.zibll-game-admin-box .form-table th {
    width: 220px;
}

.zibll-game-media-field {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-start;
}

.zibll-game-media-field .form-control {
    flex: 1 1 420px;
    min-width: 280px;
    height: 44px;
    padding: 10px 14px;
    border: 1px solid rgba(47, 121, 242, 0.16);
    border-radius: 12px;
    background: #fff;
    box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.03);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.dark-theme .zibll-game-media-field .form-control,
body.dark-theme .zibll-game-preview-thumb {
    background: var(--zibll-game-surface-solid);
    color: var(--zibll-game-ink);
}

.zibll-game-media-field textarea.form-control {
    min-height: 108px;
    height: auto;
    resize: vertical;
    line-height: 1.6;
}

.zibll-game-media-field .form-control:focus {
    border-color: rgba(47, 121, 242, 0.55);
    box-shadow: 0 0 0 4px rgba(47, 121, 242, 0.12);
    outline: none;
}

.zibll-game-media-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zibll-game-media-actions .button.button-secondary {
    min-height: 44px;
    padding: 0 14px;
    border-radius: 12px;
    border: 1px solid rgba(47, 121, 242, 0.18);
    background: linear-gradient(180deg, #ffffff 0%, #f5f8fd 100%);
    color: #2e74f0;
    box-shadow: var(--zibll-game-shadow-soft);
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

body.dark-theme .zibll-game-media-actions .button.button-secondary {
    background: linear-gradient(180deg, #3a3b3f 0%, #2c2d30 100%);
    color: var(--zibll-game-ink);
    border-color: rgba(255, 255, 255, 0.08);
}

.zibll-game-media-actions .button.button-secondary:hover,
.zibll-game-media-actions .button.button-secondary:focus {
    border-color: rgba(47, 121, 242, 0.35);
    box-shadow: 0 12px 20px rgba(35, 43, 62, 0.09);
    transform: translateY(-1px);
}

.zibll-game-media-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    margin-top: 2px;
    min-height: 20px;
}

.zibll-game-preview-thumb {
    width: 76px;
    height: 76px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid rgba(47, 121, 242, 0.14);
    background: #f6f8fc;
    box-shadow: 0 8px 14px rgba(35, 43, 62, 0.08);
}

.zibll-game-preview-thumb-gallery {
    width: 104px;
    height: 78px;
}

.zibll-game-newpost-field .zibll-game-media-field {
    margin-top: 4px;
}

.zibll-game-newpost-field .zibll-game-media-field .form-control {
    width: 100%;
}

.zibll-game-newpost-field .zibll-game-media-field textarea.form-control {
    min-height: 128px;
}

.zibll-game-newpost-field {
    margin-bottom: 18px;
}

.zibll-game-newpost-field:last-of-type {
    margin-bottom: 24px;
}

.zibll-game-newpost-field .zibll-game-media-actions .button.button-secondary {
    min-height: 40px;
}

@media (max-width: 720px) {
    .zibll-game-shell {
        width: min(100% - 12px, 860px);
    }

    .zibll-game-hero {
        min-height: 300px;
    }

    .zibll-game-title-row {
        grid-template-columns: 64px minmax(0, 1fr);
    }

    .zibll-game-gameicon {
        width: 64px;
        height: 64px;
        border-radius: 16px;
    }

    .zibll-game-title-copy h1 {
        font-size: 22px;
    }

    .zibll-game-stats {
        grid-template-columns: 1fr;
    }

    .zibll-game-section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .zibll-game-media-field .form-control {
        flex-basis: 100%;
        min-width: 0;
    }

    .gamev2-grid {
        grid-template-columns: 1fr;
    }

    .gamev2-netdisk-box {
        padding: 14px;
    }

    .gamev2-netdisk-box img {
        width: 100%;
        border-radius: 14px;
    }

    .zibll-game-screenshot-list {
        gap: 12px;
    }
}

@media (max-width: 520px) {
    .zibll-game-section,
    .zibll-game-info-panel {
        padding-left: 12px;
        padding-right: 12px;
    }

    .zibll-game-hero {
        min-height: 160px;
        height: 160px;
        border-radius: 24px;
    }

    .zibll-game-hero-panel {
        min-height: 0;
        padding: 14px 16px 14px;
    }

    .zibll-game-hero-panel h1 {
        max-width: none;
        font-size: 24px;
    }

    .zibll-game-screenshot-list {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}


/* GameV2 1.1 article fields and interactive detail layout */
.gamev2-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    color: var(--zibll-game-muted);
    font-size: 13px;
}
.gamev2-breadcrumb a { color: inherit; text-decoration: none; }
.gamev2-breadcrumb a:hover { color: var(--zibll-game-accent); }
.gamev2-anchor-button {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    border-radius: 999px;
    color: #fff;
    background: var(--zibll-game-accent);
    text-decoration: none;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(35, 99, 239, 0.32);
}
.gamev2-tabs { margin-top: 14px; }
.gamev2-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 10px;
    align-items: start;
    margin-top: 6px;
}
.gamev2-content-main { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; min-width: 0; }
.gamev2-content-main > .gamev2-section { margin-top: 0; }
.gamev2-content-main > * { min-width: 0; max-width: 100%; box-sizing: border-box; }
.gamev2-content-layout-no-sidebar { grid-template-columns: minmax(0, 1fr); }
.gamev2-side-rail { position: sticky; top: 82px; display: grid; gap: 14px; min-width: 0; }
.gamev2-download-section { scroll-margin-top: 92px; }
.gamev2-download-section .gamev2-netdisk-grid { margin-top: 14px; }
.gamev2-download-section .gamev2-netdisk-resource { min-height: 96px; }
.gamev2-floating-download { position: fixed; z-index: 30; top: 50%; right: 18px; display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid rgba(35, 99, 239, .25); border-radius: 50%; color: #fff; background: var(--zibll-game-accent); box-shadow: 0 12px 26px rgba(35, 99, 239, .28); transform: translateY(-50%); transition: transform .2s ease, box-shadow .2s ease, filter .2s ease; }
.gamev2-floating-download:hover, .gamev2-floating-download:focus-visible { color: #fff; filter: brightness(1.06); box-shadow: 0 16px 32px rgba(35, 99, 239, .35); transform: translateY(calc(-50% - 2px)); }
.gamev2-floating-download .gamev2-ui-icon { width: 21px; height: 21px; }
.gamev2-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.gamev2-flow-card { margin: 0; }
.gamev2-side-card {
    padding: 16px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 16px;
    background: var(--zibll-game-surface-soft);
    box-shadow: var(--zibll-game-shadow-soft);
}
.gamev2-side-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px; color: var(--zibll-game-ink); font-size: 15px; font-weight: 900; }
.gamev2-side-card-heading > span:first-child { display: inline-flex; align-items: center; gap: 7px; }
.gamev2-side-card-kicker { color: var(--zibll-game-muted); font-size: 11px; font-weight: 700; }
.gamev2-author-profile { display: flex; align-items: center; gap: 10px; color: var(--zibll-game-ink); text-decoration: none; }
.gamev2-author-profile img { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; }
.gamev2-author-profile span { display: grid; gap: 3px; min-width: 0; }
.gamev2-author-profile strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gamev2-author-profile small { color: var(--zibll-game-muted); }
.gamev2-author-stats { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-top: 14px; }
.gamev2-author-stats > span { display: grid; gap: 2px; }
.gamev2-author-stats strong { color: var(--zibll-game-accent); font-size: 22px; line-height: 1; }
.gamev2-author-stats small { color: var(--zibll-game-muted); font-size: 11px; }
.gamev2-author-stats a { color: var(--zibll-game-accent); font-size: 12px; font-weight: 800; text-decoration: none; }
.gamev2-author-chip { display: inline-flex; align-items: center; gap: 8px; max-width: 230px; padding: 7px 10px; border: 1px solid var(--zibll-game-line); border-radius: 12px; color: var(--zibll-game-ink); background: var(--zibll-game-surface-soft); text-decoration: none; }
.gamev2-author-chip img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.gamev2-author-chip > span { display: grid; gap: 2px; min-width: 0; }
.gamev2-author-chip strong, .gamev2-author-chip small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gamev2-author-chip small { color: var(--zibll-game-muted); font-size: 10px; }
.gamev2-title-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; color: var(--zibll-game-muted); font-size: 13px; line-height: 1.5; }
.gamev2-title-categories { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.gamev2-title-categories a { color: inherit; text-decoration: none; }
.gamev2-title-categories a:hover { color: var(--zibll-game-accent); }
.gamev2-title-tagline { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin-top: 4px; }
.gamev2-title-release { display: inline-flex; align-items: center; gap: 4px; }
.gamev2-title-release::before { content: ''; width: 3px; height: 3px; border-radius: 50%; background: currentColor; opacity: .6; }
.gamev2-title-tagline .gamev2-title-release::before { display: none; }
.gamev2-title-release span { color: var(--zibll-game-muted); }
.gamev2-title-release a { color: var(--zibll-game-accent); text-decoration: none; text-underline-offset: 3px; }
.gamev2-title-release a:hover { text-decoration: underline; }
.gamev2-adjacent-card { display: grid; gap: 10px; }
.gamev2-adjacent-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.gamev2-adjacent-link { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 9px; align-items: center; color: var(--zibll-game-ink); text-decoration: none; }
.gamev2-adjacent-link img { width: 58px; height: 44px; border-radius: 9px; object-fit: cover; background: var(--zibll-game-surface-solid); }
.gamev2-adjacent-link > span { display: grid; gap: 3px; min-width: 0; }
.gamev2-adjacent-link small { color: var(--zibll-game-muted); font-size: 10px; }
.gamev2-adjacent-label { display: inline-flex; width: fit-content; align-items: center; gap: 3px; }
.gamev2-adjacent-label .gamev2-ui-icon { width: 12px; height: 12px; }
.gamev2-adjacent-link strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.gamev2-tab-list {
    display: flex;
    gap: 8px;
    padding: 5px;
    border-radius: 14px;
    background: var(--zibll-game-surface-soft);
    border: 1px solid var(--zibll-game-line);
    overflow-x: auto;
}
.gamev2-tab {
    appearance: none;
    min-width: 98px;
    padding: 10px 16px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--zibll-game-muted);
    font: inherit;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
}
.gamev2-tab.is-active {
    color: #fff;
    background: var(--zibll-game-accent);
    box-shadow: 0 8px 18px rgba(35, 99, 239, 0.22);
}
.gamev2-tab-panel { padding: 14px 4px 2px; }
.gamev2-tab-panel[hidden] { display: none !important; }
.gamev2-core-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
}
.gamev2-core-grid > div {
    padding: 12px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 14px;
    background: var(--zibll-game-surface-soft);
}
.gamev2-launch-method-text { white-space: normal; line-height: 1.75; overflow-wrap: anywhere; }
.gamev2-launch-method-images { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 360px)); justify-content: start; gap: 10px; margin-top: 12px; }
.gamev2-launch-method-images button { display: block; width: 100%; overflow: hidden; padding: 0; border: 1px solid var(--zibll-game-line); border-radius: 12px; background: var(--zibll-game-surface); cursor: zoom-in; }
.gamev2-launch-method-images img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .2s ease; }
.gamev2-launch-method-images button:hover img { transform: scale(1.025); }
@media (max-width: 720px) {
    .gamev2-launch-method-images { grid-template-columns: 1fr; }
}
.gamev2-core-grid dt { margin-bottom: 6px; color: var(--zibll-game-muted); font-size: 12px; font-weight: 800; }
.gamev2-core-grid dd { margin: 0; color: var(--zibll-game-ink); font-size: 16px; font-weight: 800; }
.gamev2-core-platforms { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.gamev2-core-platform-link { color: var(--zibll-game-accent); text-decoration: none; text-underline-offset: 3px; }
.gamev2-core-platform-link:hover { color: var(--zibll-game-accent); text-decoration: underline; }
.gamev2-core-platform-link:focus-visible { border-radius: 4px; outline: 2px solid rgba(35, 99, 239, .35); outline-offset: 2px; }
.gamev2-table-wrap { overflow-x: auto; }
.gamev2-requirements-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    border: 1px solid var(--zibll-game-line);
    border-radius: 14px;
}
.gamev2-requirements-table th,
.gamev2-requirements-table td { padding: 13px 15px; border-right: 1px solid var(--zibll-game-line); border-bottom: 1px solid var(--zibll-game-line); text-align: left; vertical-align: top; }
.gamev2-requirements-table thead th { background: var(--zibll-game-surface-soft); color: var(--zibll-game-muted); font-size: 12px; }
.gamev2-requirements-table tbody th { color: var(--zibll-game-ink); white-space: nowrap; }
.gamev2-requirements-table tr:last-child > * { border-bottom: 0; }
.gamev2-requirements-table tr > *:last-child { border-right: 0; }
.gamev2-description img { max-width: 100%; height: auto; border-radius: 14px; }
.gamev2-description video { display: block; max-width: 100%; height: auto; border-radius: 14px; background: #000; }
.gamev2-empty-panel { margin: 0; padding: 18px; border-radius: 14px; color: var(--zibll-game-muted); background: var(--zibll-game-surface-soft); }
.gamev2-review-list,
.gamev2-video-list { display: grid; gap: 14px; }
.gamev2-external-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 14px;
    color: var(--zibll-game-ink);
    background: var(--zibll-game-surface-soft);
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease;
}
.gamev2-external-card:hover { transform: translateY(-2px); border-color: rgba(35, 99, 239, .45); }
.gamev2-external-copy { display: grid; gap: 3px; min-width: 0; flex: 1; }
.gamev2-external-card small { color: var(--zibll-game-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gamev2-external-index { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: #fff; background: var(--zibll-game-accent); font-weight: 900; }
.gamev2-video-item { overflow: visible; margin: -3px; padding: 3px; border-radius: 16px; }
.gamev2-video-item iframe { display: block; width: 100%; max-width: 100%; aspect-ratio: 16 / 9; height: auto; min-height: 280px; border: 0; border-radius: 16px; }
.gamev2-gallery { margin-top: 16px; }
.gamev2-gallery-stage {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    border-radius: 18px;
    background: #0d1119;
    touch-action: pan-y;
}
.gamev2-gallery-open { display: block; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
.gamev2-gallery-stage img { display: block; width: 100%; height: 100%; object-fit: contain; }
.gamev2-gallery-nav,
.gamev2-lightbox-nav {
    position: absolute;
    z-index: 2;
    top: 50%;
    display: grid;
    place-items: center;
    box-sizing: border-box;
    width: 42px;
    min-width: 42px;
    max-width: 42px;
    height: 42px;
    min-height: 42px;
    max-height: 42px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    appearance: none;
    -webkit-appearance: none;
    color: #fff;
    background: rgba(5, 8, 14, .78);
    font: 400 31px/1 Arial, sans-serif;
    cursor: pointer;
    transform: translateY(-50%);
}
.gamev2-gallery-nav > span,
.gamev2-lightbox-nav > span { display: block; transform: translateY(-1px); }
.gamev2-gallery-nav:focus-visible,
.gamev2-lightbox-nav:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.gamev2-gallery-prev { left: 8px; }
.gamev2-gallery-next { right: 8px; }
.gamev2-gallery-count { position: absolute; right: 14px; bottom: 12px; padding: 6px 10px; border-radius: 999px; color: #fff; background: rgba(5, 8, 14, .72); font-size: 12px; }
.gamev2-gallery-thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; padding-bottom: 3px; }
.gamev2-gallery-thumb { flex: 0 0 92px; height: 58px; padding: 2px; overflow: hidden; border: 2px solid transparent; border-radius: 10px; background: transparent; cursor: pointer; }
.gamev2-gallery-thumb.is-active { border-color: var(--zibll-game-accent); }
.gamev2-gallery-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 7px; }
.gamev2-purchase-section { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.gamev2-purchase-section p { margin: 6px 0 0; color: var(--zibll-game-muted); }
.gamev2-purchase-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.gamev2-purchase-button { flex: 0 0 auto; }
.gamev2-netdisk-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.gamev2-side-rail .gamev2-netdisk-grid { grid-template-columns: 1fr; gap: 8px; margin-top: 0; }
.gamev2-side-rail .gamev2-netdisk-resource { padding: 12px; }
.gamev2-netdisk-resource {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 14px;
    text-align: left;
    color: var(--zibll-game-ink);
    background: var(--zibll-game-surface-soft);
}
.gamev2-netdisk-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
.gamev2-netdisk-code { display: inline-flex; align-items: center; gap: 6px; color: var(--zibll-game-muted); font-size: 12px; }
.gamev2-netdisk-code code { padding: 3px 7px; border-radius: 5px; color: var(--zibll-game-ink); background: var(--zibll-game-surface-solid); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 12px; font-weight: 800; }
.gamev2-netdisk-code button { min-height: 28px; padding: 0 8px; border: 1px solid var(--zibll-game-line); border-radius: 6px; color: var(--zibll-game-accent); background: transparent; font: inherit; font-weight: 800; cursor: pointer; }
.gamev2-netdisk-code button:hover, .gamev2-netdisk-code button:focus-visible { border-color: var(--zibll-game-accent); background: var(--zibll-game-surface-solid); }
.gamev2-netdisk-action { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0 12px; border: 1px solid var(--zibll-game-line); border-radius: 8px; font: inherit; font-size: 12px; font-weight: 800; line-height: 1; text-decoration: none; cursor: pointer; }
.gamev2-netdisk-link { border-color: var(--zibll-game-accent); color: #fff; background: var(--zibll-game-accent); }
.gamev2-netdisk-link:hover, .gamev2-netdisk-link:focus-visible { color: #fff; filter: brightness(1.06); }
.gamev2-netdisk-trigger { color: var(--zibll-game-ink); background: var(--zibll-game-surface-solid); }
.gamev2-netdisk-trigger:hover, .gamev2-netdisk-trigger:focus-visible { border-color: rgba(35, 99, 239, .45); color: var(--zibll-game-accent); }
body.gamev2-overlay-open { overflow: hidden; }
.gamev2-lightbox,
.gamev2-netdisk-modal,
.gamev2-review-modal,
.gamev2-feedback-modal {
    position: fixed;
    z-index: 999999;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(3, 6, 12, .9);
}
.gamev2-lightbox.is-open,
.gamev2-netdisk-modal.is-open,
.gamev2-review-modal.is-open,
.gamev2-feedback-modal.is-open { display: flex; }
.gamev2-lightbox figure { display: grid; place-items: center; gap: 10px; width: min(1100px, calc(100vw - 120px)); height: min(86vh, 820px); margin: 0; }
.gamev2-lightbox figure img { max-width: 100%; max-height: calc(100% - 34px); object-fit: contain; border-radius: 12px; }
.gamev2-lightbox figcaption { color: #fff; }
.gamev2-lightbox-prev { left: 14px; }
.gamev2-lightbox-next { right: 14px; }
.gamev2-overlay-close { position: absolute; top: 18px; right: 20px; z-index: 3; width: 44px; height: 44px; border: 0; border-radius: 50%; color: #fff; background: rgba(255, 255, 255, .14); font-size: 30px; cursor: pointer; }
.gamev2-netdisk-dialog { position: relative; width: min(430px, 100%); padding: 28px; border-radius: 20px; text-align: center; color: var(--zibll-game-ink); background: var(--zibll-game-surface-solid); box-shadow: var(--zibll-game-shadow); }
.gamev2-netdisk-dialog .gamev2-overlay-close { top: 12px; right: 12px; color: var(--zibll-game-ink); background: var(--zibll-game-surface-soft); }
.gamev2-netdisk-dialog h2 { margin: 0 45px 20px; }
.gamev2-netdisk-dialog img { display: block; width: min(300px, 100%); max-height: 60vh; margin: 0 auto; object-fit: contain; border-radius: 14px; }
.gamev2-netdisk-dialog p { margin: 16px 0 0; color: var(--zibll-game-muted); }
.gamev2-review-dialog { position: relative; display: grid; grid-template-rows: auto minmax(320px, 72vh) auto; width: min(1120px, calc(100vw - 48px)); max-height: calc(100vh - 48px); overflow: hidden; border-radius: 18px; color: var(--zibll-game-ink); background: var(--zibll-game-surface-solid); box-shadow: var(--zibll-game-shadow); }
.gamev2-review-dialog .gamev2-overlay-close { top: 10px; right: 10px; color: var(--zibll-game-ink); background: var(--zibll-game-surface-soft); }
.gamev2-review-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 60px; padding: 16px 64px 14px 18px; border-bottom: 1px solid var(--zibll-game-line); }
.gamev2-review-dialog-heading h2 { margin: 0; font-size: 18px; }
.gamev2-review-dialog-heading a { color: var(--zibll-game-accent); font-size: 12px; font-weight: 800; text-decoration: none; }
.gamev2-review-dialog iframe { display: block; width: 100%; height: 100%; border: 0; background: #fff; }
.gamev2-review-fallback { margin: 0; padding: 10px 16px; color: var(--zibll-game-muted); background: var(--zibll-game-surface-soft); font-size: 12px; }
.gamev2-feedback-dialog { position: relative; display: flex; flex-direction: column; width: min(640px, 100%); max-height: min(760px, calc(100vh - 48px)); overflow: hidden; border: 1px solid var(--zibll-game-line); border-radius: 18px; color: var(--zibll-game-ink); background: var(--zibll-game-surface-solid); box-shadow: var(--zibll-game-shadow); }
.gamev2-feedback-dialog-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 20px 58px 16px 22px; border-bottom: 1px solid var(--zibll-game-line); }
.gamev2-feedback-dialog-kicker { display: block; margin-bottom: 6px; color: var(--zibll-game-accent); font-size: 11px; font-weight: 900; letter-spacing: .04em; }
.gamev2-feedback-dialog-heading h2 { margin: 0; color: var(--zibll-game-ink); font-size: 19px; line-height: 1.45; }
.gamev2-feedback-close { position: absolute; top: 14px; right: 14px; z-index: 2; display: grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 1px solid var(--zibll-game-line); border-radius: 50%; color: var(--zibll-game-muted); background: var(--zibll-game-surface-soft); font-size: 23px; line-height: 1; cursor: pointer; }
.gamev2-feedback-close:hover, .gamev2-feedback-close:focus-visible { color: var(--zibll-game-accent); border-color: rgba(35, 99, 239, .35); outline: none; }
.gamev2-feedback-dialog-body { min-height: 0; overflow-y: auto; padding: 20px 22px 22px; }
.gamev2-feedback-intro { margin: 0; padding: 12px 14px; border-left: 3px solid var(--zibll-game-accent); border-radius: 4px; color: var(--zibll-game-muted); background: var(--zibll-game-surface-soft); font-size: 13px; line-height: 1.7; }
.gamev2-feedback-dialog .gamev2-feedback-form { margin-top: 18px; }
.gamev2-feedback-dialog .gamev2-feedback-history { margin-top: 22px; }
.gamev2-comments-section { width: min(1180px, calc(100% - 32px)); box-sizing: border-box; margin: 18px auto 0; padding: 20px; background: var(--zibll-game-surface-solid); }
.gamev2-comments-section #comments,
.gamev2-comments-section .comments-area,
.gamev2-comments-section .comment-respond { margin-top: 14px; }
.gamev2-feedback-section { width: min(1180px, calc(100% - 32px)); box-sizing: border-box; margin: 18px auto 0; padding: 20px; background: var(--zibll-game-surface-solid); }
.gamev2-feedback-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.gamev2-feedback-summary, .gamev2-feedback-login, .gamev2-feedback-privacy { margin: 6px 0 0; color: var(--zibll-game-muted); font-size: 13px; line-height: 1.6; }
.gamev2-feedback-form { margin-top: 16px; padding: 16px; border: 1px solid var(--zibll-game-line); border-radius: 12px; background: var(--zibll-game-surface); }
.gamev2-feedback-fields { display: grid; grid-template-columns: minmax(160px, 220px) minmax(0, 1fr); gap: 14px 16px; }
.gamev2-feedback-fields label { display: flex; flex-direction: column; gap: 7px; color: var(--zibll-game-ink); font-size: 13px; font-weight: 700; }
.gamev2-feedback-fields label span { color: var(--zibll-game-muted); font-size: 12px; }
.gamev2-feedback-fields select, .gamev2-feedback-fields textarea, .gamev2-feedback-fields input[type="file"] { width: 100%; box-sizing: border-box; border: 1px solid var(--zibll-game-line); border-radius: 8px; background: var(--zibll-game-surface-solid); color: var(--zibll-game-ink); }
.gamev2-feedback-fields select, .gamev2-feedback-fields textarea { padding: 10px 11px; }
.gamev2-feedback-fields textarea { min-height: 104px; resize: vertical; }
.gamev2-feedback-content-field { grid-column: 2; }
.gamev2-feedback-file-field { grid-column: 1 / -1; }
.gamev2-feedback-file-field input[type="file"] { padding: 8px; }
.gamev2-feedback-form-footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 14px; }
.gamev2-feedback-form-footer .gamev2-feedback-privacy { margin: 0; }
.gamev2-feedback-submit { flex: 0 0 auto; border: 0; cursor: pointer; }
.gamev2-feedback-submit:disabled { opacity: .65; cursor: wait; }
.gamev2-feedback-response { min-height: 20px; margin-top: 10px; font-size: 13px; line-height: 1.6; }
.gamev2-feedback-response.is-error { color: #c0392b; }
.gamev2-feedback-response.is-success { color: #138a59; }
.gamev2-feedback-response.is-loading { color: var(--zibll-game-muted); }
.gamev2-feedback-history { margin-top: 20px; }
.gamev2-feedback-history h3 { margin: 0 0 10px; color: var(--zibll-game-ink); font-size: 15px; }
.gamev2-feedback-author-note { margin: 20px 0 0; padding: 10px 12px; border-radius: 8px; color: var(--zibll-game-accent); background: rgba(35, 99, 239, .08); font-size: 12px; font-weight: 700; line-height: 1.6; }
.gamev2-feedback-item { padding: 13px 0; border-top: 1px solid var(--zibll-game-line); }
.gamev2-feedback-item-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; color: var(--zibll-game-muted); font-size: 12px; }
.gamev2-feedback-item-meta strong { padding: 2px 7px; border-radius: 999px; background: rgba(36, 104, 242, .1); color: var(--gamev2-publisher-blue, #2468f2); font-size: 11px; }
.gamev2-feedback-item-meta strong.is-resolved { background: rgba(19, 138, 89, .1); color: #138a59; }
.gamev2-feedback-item-meta strong.is-rejected { background: rgba(192, 57, 43, .1); color: #c0392b; }
.gamev2-feedback-item p { margin: 8px 0 0; color: var(--zibll-game-ink); font-size: 13px; line-height: 1.75; }
.gamev2-feedback-images { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.gamev2-feedback-images a { display: block; width: 72px; height: 56px; overflow: hidden; border-radius: 7px; }
.gamev2-feedback-images img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.dark-theme .gamev2-feedback-response.is-error { color: #ff9f93; }
body.dark-theme .gamev2-feedback-response.is-success { color: #67d49e; }
@media (max-width: 640px) {
    .gamev2-feedback-modal { padding: 12px; }
    .gamev2-feedback-dialog { max-height: calc(100vh - 24px); border-radius: 16px; }
    .gamev2-feedback-dialog-heading { padding: 17px 54px 14px 16px; }
    .gamev2-feedback-dialog-heading h2 { font-size: 16px; }
    .gamev2-feedback-dialog-body { padding: 16px; }
    .gamev2-feedback-section { width: min(100% - 14px, 1180px); padding: 14px; border-radius: 18px; }
    .gamev2-feedback-form { padding: 13px; }
    .gamev2-feedback-fields { display: block; }
    .gamev2-feedback-fields label { margin-top: 12px; }
    .gamev2-feedback-fields label:first-child { margin-top: 0; }
    .gamev2-feedback-content-field, .gamev2-feedback-file-field { grid-column: auto; }
    .gamev2-feedback-form-footer { align-items: flex-end; flex-direction: column; }
    .gamev2-feedback-submit { width: 100%; }
}
.gamev2-field-heading { padding-top: 8px; border-top: 1px solid #dcdcde; }
.gamev2-field-heading h3 { margin: 0 0 6px; }
.gamev2-field-heading p,
.gamev2-field .description { margin: 6px 0 0; color: #646970; font-size: 12px; }
.gamev2-rich-field > label { margin-bottom: 8px; }
.gamev2-field input[type="date"],
.gamev2-field .gamev2-media-value[type="text"] { width: 100%; min-height: 42px; padding: 9px 12px; border: 1px solid #d7dce3; border-radius: 8px; }

@media (max-width: 720px) {
    .gamev2-shell { width: min(100% - 14px, 1180px); padding: 10px; border-radius: 18px; }
    .gamev2-content-layout { grid-template-columns: 1fr; gap: 10px; }
    .gamev2-content-main { gap: 10px; }
    .gamev2-content-main > .gamev2-section { margin-top: 0; }
    .gamev2-adjacent-grid { grid-template-columns: 1fr; }
    .gamev2-side-rail { position: static; gap: 10px; }
    .gamev2-floating-download { right: 10px; width: 42px; height: 42px; }
    .gamev2-core-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
    .gamev2-netdisk-grid { grid-template-columns: 1fr; gap: 7px; margin-top: 10px; }
    .gamev2-core-grid > div { min-width: 0; padding: 8px 10px; border-radius: 9px; }
    .gamev2-core-grid dt { margin-bottom: 2px; font-size: 10px; }
    .gamev2-core-grid dd { overflow-wrap: anywhere; font-size: 13px; line-height: 1.3; }
    .gamev2-tabs { margin-top: 12px; }
    .gamev2-tab-list { gap: 2px; overflow-x: hidden; }
    .gamev2-tab { min-width: 0; flex: 1 1 0; padding: 8px 5px; font-size: 12px; }
    .gamev2-tab-panel { padding-top: 10px; }
    .zibll-game-section { margin-top: 8px; padding-top: 12px; padding-bottom: 12px; }
    .gamev2-purchase-section { align-items: stretch; flex-direction: column; }
    .gamev2-purchase-links { justify-content: stretch; }
    .gamev2-purchase-button { flex: 1 1 180px; justify-content: center; }
    .gamev2-gallery-nav { width: 36px; min-width: 36px; max-width: 36px; height: 36px; min-height: 36px; max-height: 36px; font-size: 28px; }
    .gamev2-gallery-prev { left: 6px; }
    .gamev2-gallery-next { right: 6px; }
    .gamev2-title-meta { align-items: flex-start; flex-direction: column; gap: 2px; }
    .gamev2-title-release::before { display: none; }
    .gamev2-author-chip { max-width: 100%; }
    .gamev2-gallery-thumbs { display: none; }
    .gamev2-lightbox { padding: 12px; }
    .gamev2-lightbox figure { width: calc(100vw - 24px); height: 82vh; }
    .gamev2-lightbox-nav { top: auto; bottom: 22px; }
    .gamev2-lightbox-prev { left: calc(50% - 58px); }
    .gamev2-lightbox-next { right: calc(50% - 58px); }
    .gamev2-review-modal { padding: 8px; }
    .gamev2-review-dialog { width: calc(100vw - 16px); max-height: calc(100vh - 16px); grid-template-rows: auto minmax(260px, 68vh) auto; border-radius: 13px; }
    .gamev2-review-dialog-heading { align-items: flex-start; flex-direction: column; gap: 5px; padding: 13px 54px 12px 13px; }
    .gamev2-comments-section { width: min(100% - 14px, 1180px); padding: 14px; border-radius: 18px; }
    .gamev2-steam-import-row { flex-direction: column; }
    .gamev2-steam-fetch, .gamev2-steam-details-fetch { min-height: 38px; }
    .gamev2-requirements-table { min-width: 620px; }
}

.gamev2-hero .zibll-game-hero-panel { min-height: 360px; }

@media (max-width: 720px) {
    .gamev2-hero .zibll-game-hero-panel { min-height: 0; }
}

/* GameV2 1.1.1 module icons, action placement and motion */
.gamev2-icon-sprite {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
    pointer-events: none;
}

.gamev2-ui-icon {
    width: 1.15em;
    height: 1.15em;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .24s ease, filter .24s ease;
}

.gamev2-icon-review,
.gamev2-icon-xunlei,
.gamev2-icon-baidu {
    fill: currentColor;
    stroke: currentColor;
}

.zibll-game-title-row {
    grid-template-columns: 80px minmax(0, 1fr) auto;
    align-items: center;
}

.gamev2-info-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.gamev2-feedback-trigger,
.gamev2-like-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 0 13px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 999px;
    color: var(--zibll-game-ink);
    background: var(--zibll-game-surface-solid);
    box-shadow: var(--zibll-game-shadow-soft);
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
    transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.gamev2-feedback-trigger .gamev2-ui-icon,
.gamev2-like-button > svg,
.gamev2-like-button .gamev2-ui-icon { width: 16px; height: 16px; color: var(--zibll-game-accent); }
.gamev2-like-button { text-decoration: none; }
.gamev2-like-button count { min-width: 1.5em; color: var(--zibll-game-muted); text-align: center; }
.gamev2-like-button.actived { color: var(--zibll-game-accent); border-color: rgba(35, 99, 239, .35); background: rgba(35, 99, 239, .08); }
.gamev2-feedback-trigger:hover,
.gamev2-feedback-trigger:focus-visible,
.gamev2-like-button:hover,
.gamev2-like-button:focus-visible {
    color: var(--zibll-game-accent);
    border-color: rgba(35, 99, 239, .35);
    background: var(--zibll-game-surface-soft);
    box-shadow: 0 12px 26px rgba(35, 99, 239, .14);
    transform: translateY(-2px);
}
.gamev2-feedback-trigger:focus-visible,
.gamev2-like-button:focus-visible { outline: 2px solid rgba(35, 99, 239, .35); outline-offset: 3px; }

.gamev2-author-more {
    position: relative;
    flex: 0 0 auto;
}

.gamev2-author-more-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid var(--zibll-game-line);
    border-radius: 50%;
    color: var(--zibll-game-muted);
    background: var(--zibll-game-surface-solid);
    box-shadow: var(--zibll-game-shadow-soft);
    cursor: pointer;
    list-style: none;
    transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.gamev2-author-more-toggle::-webkit-details-marker { display: none; }
.gamev2-author-more-toggle::marker { content: ''; }

.gamev2-author-more-toggle:hover,
.gamev2-author-more-toggle:focus-visible,
.gamev2-author-more[open] .gamev2-author-more-toggle {
    color: var(--zibll-game-accent);
    border-color: rgba(35, 99, 239, .3);
    background: var(--zibll-game-surface-soft);
    box-shadow: 0 12px 28px rgba(35, 99, 239, .16);
    transform: translateY(-2px);
}

.gamev2-author-more-toggle:focus-visible {
    outline: 2px solid rgba(35, 99, 239, .42);
    outline-offset: 3px;
}

.gamev2-author-more-dots {
    display: flex;
    align-items: center;
    gap: 3px;
}

.gamev2-author-more-dots i {
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
}

.gamev2-author-more-menu {
    position: absolute;
    z-index: 30;
    top: calc(100% + 10px);
    right: 0;
    min-width: 158px;
    padding: 7px;
    border: 1px solid var(--zibll-game-line);
    border-radius: 14px;
    background: var(--zibll-game-surface-solid);
    box-shadow: 0 18px 46px rgba(18, 28, 45, .18);
}

.gamev2-author-more-menu::before {
    content: '';
    position: absolute;
    top: -5px;
    right: 17px;
    width: 9px;
    height: 9px;
    border-top: 1px solid var(--zibll-game-line);
    border-left: 1px solid var(--zibll-game-line);
    background: var(--zibll-game-surface-solid);
    transform: rotate(45deg);
}

.gamev2-author-edit-link {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 10px;
    color: var(--zibll-game-ink) !important;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none !important;
    transition: color .18s ease, background .18s ease;
}

.gamev2-author-edit-link svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gamev2-author-edit-link:hover,
.gamev2-author-edit-link:focus-visible {
    color: var(--zibll-game-accent) !important;
    background: rgba(35, 99, 239, .09);
    outline: none;
}

.gamev2-resource-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 18px;
    overflow: visible;
    border: 1px solid rgba(35, 99, 239, .18);
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, var(--zibll-game-accent), #11a9d4);
    box-shadow: 0 12px 24px rgba(35, 99, 239, .24);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    transform: translateZ(0);
    transition: transform .24s ease, box-shadow .24s ease, filter .24s ease;
}

.gamev2-resource-button:hover,
.gamev2-resource-button:focus-visible {
    color: #fff;
    filter: brightness(1.08) saturate(1.08);
    box-shadow: 0 17px 32px rgba(35, 99, 239, .34);
    transform: translateY(-3px) scale(1.025);
}

.gamev2-resource-button:hover .gamev2-ui-icon,
.gamev2-resource-button:focus-visible .gamev2-ui-icon {
    transform: translateY(2px);
}

.gamev2-tooltip {
    position: relative;
}

.gamev2-tooltip::after {
    content: attr(data-tooltip);
    position: absolute;
    z-index: 15;
    right: 50%;
    bottom: calc(100% + 11px);
    padding: 7px 10px;
    border-radius: 8px;
    color: #fff;
    background: rgba(9, 14, 24, .92);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .2);
    font-size: 12px;
    line-height: 1;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transform: translate(50%, 6px) scale(.96);
    transition: opacity .18s ease, transform .18s ease;
}

.gamev2-tooltip::before {
    content: "";
    position: absolute;
    z-index: 14;
    right: 50%;
    bottom: calc(100% + 5px);
    border: 6px solid transparent;
    border-top-color: rgba(9, 14, 24, .92);
    opacity: 0;
    pointer-events: none;
    transform: translateX(50%);
    transition: opacity .18s ease;
}

.gamev2-tooltip:hover::after,
.gamev2-tooltip:hover::before,
.gamev2-tooltip:focus-visible::after,
.gamev2-tooltip:focus-visible::before {
    opacity: 1;
}

.gamev2-tooltip:hover::after,
.gamev2-tooltip:focus-visible::after {
    transform: translate(50%, 0) scale(1);
}

.gamev2-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    position: relative;
    overflow: hidden;
    transition: color .22s ease, background-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

.gamev2-tab::after {
    content: "";
    position: absolute;
    inset: auto 18% 4px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    opacity: 0;
    transform: scaleX(.25);
    transition: opacity .22s ease, transform .22s ease;
}

.gamev2-tab:not(.is-active):hover,
.gamev2-tab:not(.is-active):focus-visible {
    color: var(--zibll-game-accent);
    background: rgba(35, 99, 239, .08);
    box-shadow: inset 0 0 0 1px rgba(35, 99, 239, .12), 0 8px 18px rgba(35, 99, 239, .08);
    transform: translateY(-2px);
}

.gamev2-tab:not(.is-active):hover::after,
.gamev2-tab:not(.is-active):focus-visible::after {
    opacity: .65;
    transform: scaleX(1);
}

.gamev2-tab:not(.is-active):hover .gamev2-ui-icon,
.gamev2-tab:not(.is-active):focus-visible .gamev2-ui-icon {
    transform: rotate(-7deg) scale(1.1);
}

.gamev2-tab.is-active .gamev2-ui-icon {
    filter: drop-shadow(0 3px 5px rgba(0, 0, 0, .2));
    transform: scale(1.06);
}

.gamev2-tab-panel.is-active {
    animation: gamev2-panel-enter .32s cubic-bezier(.2, .75, .3, 1) both;
}

@keyframes gamev2-panel-enter {
    from {
        opacity: 0;
        transform: translateY(9px);
        filter: blur(2px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

.gamev2-module-title,
.gamev2-button-with-icon,
.gamev2-netdisk-brand {
    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.gamev2-module-title { padding-left: 0; }
.gamev2-module-title::before {
    display: none;
}

.gamev2-module-title .gamev2-ui-icon {
    width: 22px;
    height: 22px;
    padding: 4px;
    border-radius: 7px;
    color: #fff;
    background: var(--zibll-game-accent);
    box-sizing: content-box;
}

.gamev2-purchase-button {
    gap: 9px;
    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.gamev2-purchase-button:hover,
.gamev2-purchase-button:focus-visible {
    color: #fff;
    filter: brightness(1.06);
    transform: translateY(-2px);
}

.gamev2-purchase-button:hover .gamev2-ui-icon,
.gamev2-purchase-button:focus-visible .gamev2-ui-icon {
    transform: translateY(-1px) rotate(-5deg);
}

.gamev2-netdisk-resource {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

.gamev2-netdisk-resource:hover,
.gamev2-netdisk-resource:focus-within {
    border-color: rgba(35, 99, 239, .38);
    background: var(--zibll-game-surface-solid);
    box-shadow: 0 13px 25px rgba(29, 39, 61, .12);
    transform: translateY(-3px);
}

.gamev2-netdisk-brand .gamev2-ui-icon {
    width: 21px;
    height: 21px;
}

.gamev2-netdisk-resource:hover .gamev2-ui-icon,
.gamev2-netdisk-resource:focus-within .gamev2-ui-icon {
    transform: scale(1.12) rotate(-5deg);
}

.gamev2-netdisk-icon-baidu { color: #2f74ff; }
.gamev2-netdisk-icon-quark { color: #6a5df6; }
.gamev2-netdisk-icon-xunlei { color: #3478f6; }
.gamev2-netdisk-icon-mobile { color: #08a4e8; }

@media (max-width: 720px) {
    .zibll-game-title-row {
        grid-template-columns: 68px minmax(0, 1fr);
    }

    .gamev2-info-actions {
        grid-column: 1 / -1;
        justify-content: flex-end;
    }

    .gamev2-feedback-trigger,
    .gamev2-like-button { flex: 0 0 auto; width: auto; }

    .gamev2-resource-button {
        flex: 1 1 auto;
        width: auto;
    }

    .gamev2-author-more-menu {
        right: 0;
    }

    .gamev2-tooltip::after,
    .gamev2-tooltip::before {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gamev2-tab,
    .gamev2-tab::after,
    .gamev2-tab-panel.is-active,
    .gamev2-resource-button,
    .gamev2-resource-button .gamev2-ui-icon,
    .gamev2-purchase-button,
    .gamev2-netdisk-resource,
    .gamev2-netdisk-action,
    .gamev2-ui-icon {
        animation: none !important;
        transition: none !important;
        transform: none !important;
    }
}

/* GameV2 1.1.2 transition, official brand icons and clipping fixes */
.gamev2-tab-panel {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
    transition: opacity .32s ease, transform .32s cubic-bezier(.2, .75, .3, 1), filter .32s ease;
}

.gamev2-tab-panel.is-active {
    animation: none;
}

.gamev2-tab-panel.gamev2-tab-transition-out {
    opacity: 0;
    transform: translateY(-10px) scale(.992);
    filter: blur(2px);
    transition-duration: .22s;
}

.gamev2-tab-panel.gamev2-tab-transition-in {
    opacity: 0;
    transform: translateY(14px) scale(.99);
    filter: blur(2px);
}

.gamev2-tabs.gamev2-tabs-is-switching .gamev2-tab {
    pointer-events: none;
}

.gamev2-netdisk-logo {
    display: block;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    padding: 2px;
    border-radius: 7px;
    object-fit: contain;
    background: #fff;
    box-shadow: 0 4px 10px rgba(20, 30, 50, .12);
    transition: transform .22s ease, box-shadow .22s ease;
}

.gamev2-netdisk-resource:hover .gamev2-netdisk-logo,
.gamev2-netdisk-resource:focus-within .gamev2-netdisk-logo {
    box-shadow: 0 7px 14px rgba(20, 30, 50, .18);
    transform: scale(1.1) rotate(-3deg);
}

.gamev2-video-list {
    padding: 4px;
    margin: -4px;
}

.gamev2-video-item .gamev2-external-card {
    overflow: visible;
}

@media (prefers-reduced-motion: reduce) {
    .gamev2-tab-panel,
    .gamev2-netdisk-logo {
        transition: none !important;
    }
}

/* GameV2 1.3.0 frontend publishing workbench */
.gamev2-publisher-shell {
    --gamev2-publisher-bg: #edf2f7;
    --gamev2-publisher-card: rgba(255, 255, 255, .94);
    --gamev2-publisher-card-solid: #fff;
    --gamev2-publisher-text: #182033;
    --gamev2-publisher-muted: #6d788d;
    --gamev2-publisher-line: rgba(24, 32, 51, .1);
    --gamev2-publisher-blue: #2468f2;
    --gamev2-publisher-cyan: #11aeca;
    --gamev2-publisher-danger: #dc4455;
    width: min(1180px, calc(100% - 24px));
    margin: 22px auto 48px;
    color: var(--gamev2-publisher-text);
    font-family: "Microsoft YaHei UI", "PingFang SC", sans-serif;
}

body.dark-theme .gamev2-publisher-shell {
    --gamev2-publisher-bg: #141820;
    --gamev2-publisher-card: rgba(27, 32, 42, .94);
    --gamev2-publisher-card-solid: #1b202a;
    --gamev2-publisher-text: #edf3fb;
    --gamev2-publisher-muted: #a5afbf;
    --gamev2-publisher-line: rgba(255, 255, 255, .09);
}

.gamev2-publisher-header {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    overflow: hidden;
    margin-bottom: 18px;
    padding: 30px 34px;
    border: 1px solid var(--gamev2-publisher-line);
    border-radius: 24px;
    color: #fff;
    background:
        linear-gradient(115deg, rgba(12, 27, 55, .96), rgba(24, 84, 169, .9)),
        repeating-linear-gradient(90deg, transparent 0 28px, rgba(255, 255, 255, .03) 28px 29px);
    box-shadow: 0 24px 55px rgba(30, 60, 110, .2);
}

.gamev2-publisher-header::after {
    content: "";
    position: absolute;
    right: -45px;
    top: -85px;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 42px;
    transform: rotate(28deg);
    box-shadow: inset 0 0 0 28px rgba(255, 255, 255, .025), inset 0 0 0 58px rgba(255, 255, 255, .018);
}

.gamev2-publisher-header > * { position: relative; z-index: 1; }
.gamev2-publisher-kicker { display: block; margin-bottom: 8px; color: #80ddf1; font: 700 11px/1.2 Consolas, monospace; letter-spacing: .18em; }
.gamev2-publisher-header h1 { margin: 0 0 9px; color: #fff; font-size: clamp(26px, 4vw, 40px); line-height: 1.1; letter-spacing: -.04em; }
.gamev2-publisher-header p { max-width: 670px; margin: 0; color: rgba(255, 255, 255, .72); line-height: 1.75; }
.gamev2-publisher-header-actions { flex: 0 0 auto; display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.gamev2-publisher-preview-link { flex: 0 0 auto; padding: 10px 16px; border: 1px solid rgba(255, 255, 255, .25); border-radius: 999px; color: #fff !important; background: rgba(255, 255, 255, .1); text-decoration: none; backdrop-filter: blur(10px); transition: background .18s ease, border-color .18s ease, transform .18s ease; }
.gamev2-publisher-preview-link:hover { border-color: rgba(255, 255, 255, .42); background: rgba(255, 255, 255, .18); transform: translateY(-1px); }
.gamev2-publisher-preview-link:focus-visible { outline: 2px solid #80ddf1; outline-offset: 3px; }

.gamev2-publisher-required-note { margin: 0 0 16px; padding: 11px 14px; border: 1px solid rgba(36, 104, 242, .18); border-radius: 12px; color: var(--gamev2-publisher-muted); background: rgba(36, 104, 242, .055); font-size: 13px; line-height: 1.65; }
.gamev2-publisher-required-note strong,
.gamev2-required-text { color: var(--gamev2-publisher-danger); }
.gamev2-publisher-inline-error { margin: -10px 0 12px; padding: 8px 10px; border-radius: 9px; color: #b52c40; background: rgba(220, 68, 85, .1); font-size: 12px; font-weight: 700; line-height: 1.55; }
.gamev2-publisher-field > .gamev2-publisher-inline-error { margin: 0; }

.gamev2-publisher-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 18px; align-items: start; }
.gamev2-publisher-main { display: grid; gap: 18px; min-width: 0; }
.gamev2-publisher-section,
.gamev2-publisher-side-card {
    border: 1px solid var(--gamev2-publisher-line);
    border-radius: 20px;
    background: var(--gamev2-publisher-card);
    box-shadow: 0 15px 38px rgba(30, 43, 69, .08);
    backdrop-filter: blur(14px);
}
.gamev2-publisher-section { position: relative; overflow: hidden; padding: 24px; }
.gamev2-publisher-section::after { content: attr(data-section); position: absolute; right: 20px; top: 8px; color: rgba(36, 104, 242, .055); font: 800 68px/1 Consolas, monospace; pointer-events: none; }
.gamev2-publisher-section-heading { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 18px; align-items: center; margin-bottom: 22px; }
.gamev2-publisher-section-heading > div { display: flex; align-items: center; gap: 10px; }
.gamev2-publisher-section-heading span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; color: #fff; background: linear-gradient(135deg, var(--gamev2-publisher-blue), var(--gamev2-publisher-cyan)); font: 700 12px/1 Consolas, monospace; box-shadow: 0 8px 18px rgba(36, 104, 242, .25); }
.gamev2-publisher-section-heading h2 { margin: 0; color: var(--gamev2-publisher-text); font-size: 19px; }
.gamev2-publisher-section-heading p { margin: 0; color: var(--gamev2-publisher-muted); font-size: 13px; }

.gamev2-publisher-fields { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.gamev2-publisher-field { display: flex; min-width: 0; flex-direction: column; gap: 8px; color: var(--gamev2-publisher-text); }
.gamev2-publisher-field > span { font-weight: 700; font-size: 13px; }
.gamev2-publisher-field > span b { color: var(--gamev2-publisher-danger); }
.gamev2-publisher-field > small { color: var(--gamev2-publisher-muted); font-size: 12px; line-height: 1.6; }
.gamev2-platform-tag-options { display: flex; flex-wrap: wrap; gap: 8px; }
.gamev2-platform-tag-options label { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 10px; border: 1px solid var(--gamev2-publisher-line); border-radius: 9px; color: var(--gamev2-publisher-text); background: var(--gamev2-publisher-card-solid); cursor: pointer; font-size: 12px; }
.gamev2-platform-tag-options input { accent-color: var(--gamev2-publisher-blue); }
.gamev2-steam-import { display: grid; gap: 7px; margin-top: 9px; }
.gamev2-steam-import-row { display: flex; gap: 8px; }
.gamev2-steam-url { min-width: 0; flex: 1; height: 38px; padding: 0 10px; border: 1px solid var(--gamev2-publisher-line); border-radius: 8px; color: var(--gamev2-publisher-text); background: var(--gamev2-publisher-card-solid); }
.gamev2-steam-fetch, .gamev2-steam-details-fetch { flex: 0 0 auto; padding: 0 11px; border: 1px solid rgba(36, 104, 242, .28); border-radius: 8px; color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .06); cursor: pointer; font-size: 12px; font-weight: 800; }
.gamev2-steam-fetch:disabled, .gamev2-steam-details-fetch:disabled { opacity: .6; cursor: wait; }
.gamev2-steam-status { display: block; }
.gamev2-steam-status.is-loading { color: var(--gamev2-publisher-blue); }
.gamev2-steam-status.is-success { color: #0b866d; }
.gamev2-steam-status.is-error { color: var(--gamev2-publisher-danger); }
.gamev2-field-span-2 { grid-column: 1 / -1; }
.gamev2-publisher-field input[type="text"],
.gamev2-publisher-field input[type="url"],
.gamev2-publisher-field input[type="date"],
.gamev2-publisher-field select,
.gamev2-publisher-field textarea,
.gamev2-publisher-side-card textarea {
    width: 100%;
    min-height: 44px;
    box-sizing: border-box;
    border: 1px solid var(--gamev2-publisher-line);
    border-radius: 11px;
    color: var(--gamev2-publisher-text);
    background: var(--gamev2-publisher-card-solid);
    box-shadow: none;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.gamev2-publisher-field input[type="text"],
.gamev2-publisher-field input[type="url"],
.gamev2-publisher-field input[type="date"],
.gamev2-publisher-field select { padding: 0 13px; }
.gamev2-publisher-field input:focus,
.gamev2-publisher-field select:focus,
.gamev2-publisher-field textarea:focus,
.gamev2-publisher-side-card textarea:focus { border-color: var(--gamev2-publisher-blue); box-shadow: 0 0 0 3px rgba(36, 104, 242, .12); }
.gamev2-publisher-field textarea,
.gamev2-publisher-side-card textarea { padding: 11px 13px; resize: vertical; }
.gamev2-publisher-field.is-invalid input,
.gamev2-publisher-field.is-invalid textarea { border-color: var(--gamev2-publisher-danger); box-shadow: 0 0 0 3px rgba(220, 68, 85, .13); }
.gamev2-publisher-section.is-invalid .gamev2-publisher-editor,
.gamev2-publisher-side-card.is-invalid { border-color: var(--gamev2-publisher-danger); box-shadow: 0 0 0 3px rgba(220, 68, 85, .12); }
.gamev2-publisher-side-card.is-invalid .gamev2-category-tree { border-color: var(--gamev2-publisher-danger); }

.gamev2-publisher-editor { position: relative; z-index: 1; overflow: hidden; border: 1px solid var(--gamev2-publisher-line); border-radius: 14px; background: var(--gamev2-publisher-card-solid); }
.gamev2-publisher-editor + .gamev2-publisher-fields { margin-top: 18px; }
.gamev2-publisher-editor .wp-editor-container { border: 0; }
.gamev2-publisher-editor .mce-toolbar-grp { border-color: var(--gamev2-publisher-line); }
body.dark-theme .gamev2-publisher-editor .wp-editor-container { background: #1b202a; }
body.dark-theme .gamev2-publisher-editor #gamev2_summary_editor {
    color: #f4f7fb !important;
    background: #1b202a !important;
}

.gamev2-upload-control { position: relative; padding: 13px; border: 1px dashed rgba(36, 104, 242, .28); border-radius: 14px; background: rgba(36, 104, 242, .035); }
.gamev2-netdisk-url-field { display: grid; gap: 6px; margin-top: 4px; }
.gamev2-netdisk-url-field > span { color: var(--gamev2-publisher-muted, #6b7280); font-size: 12px; font-weight: 700; }
.gamev2-netdisk-url-field textarea { width: 100%; min-height: 76px; resize: vertical; }
.gamev2-upload-dropzone { position: relative; display: grid; place-items: center; min-height: 92px; padding: 12px; border: 1px dashed var(--gamev2-publisher-line); border-radius: 11px; text-align: center; background: var(--gamev2-publisher-card-solid); transition: border-color .2s ease, background .2s ease; }
.gamev2-upload-dropzone:hover { border-color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .04); }
.gamev2-upload-dropzone input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.gamev2-upload-dropzone strong { color: var(--gamev2-publisher-blue); font-size: 13px; }
.gamev2-upload-dropzone small { color: var(--gamev2-publisher-muted); font-size: 11px; }
.gamev2-upload-control.is-uploading { opacity: .68; pointer-events: none; }
.gamev2-upload-control .gamev2-media-preview { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.gamev2-upload-control .gamev2-preview-thumb { width: 72px; height: 72px; margin: 0; border-radius: 10px; object-fit: cover; box-shadow: 0 6px 15px rgba(20, 30, 50, .12); }
.gamev2-upload-control .gamev2-preview-thumb-cover { width: 118px; }
.gamev2-frontend-form .gamev2-media-clear { align-self: flex-start; padding: 3px 0; border: 0; color: var(--gamev2-publisher-danger); background: none; font-size: 12px; cursor: pointer; }

.gamev2-requirements-editor { position: relative; z-index: 1; }
.gamev2-requirements-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.gamev2-requirements-columns > div { display: grid; gap: 6px; }
.gamev2-requirements-columns label { color: var(--gamev2-publisher-text); font-size: 13px; font-weight: 700; }
.gamev2-requirements-columns textarea {
    width: 100%;
    min-height: 148px;
    box-sizing: border-box;
    padding: 11px 13px;
    border: 1px solid var(--gamev2-publisher-line);
    border-radius: 11px;
    color: var(--gamev2-publisher-text);
    background: var(--gamev2-publisher-card-solid);
    box-shadow: none;
    outline: none;
    resize: vertical;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.gamev2-requirements-columns textarea:focus { border-color: var(--gamev2-publisher-blue); box-shadow: 0 0 0 3px rgba(36, 104, 242, .12); }
.gamev2-requirements-text { width: 100%; box-sizing: border-box; min-height: 110px; margin-bottom: 8px; padding: 11px 13px; border: 1px solid var(--gamev2-publisher-line); border-radius: 10px; color: var(--gamev2-publisher-text); background: var(--gamev2-publisher-card-solid); resize: vertical; }
.gamev2-requirements-text-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 12px; }
.gamev2-requirements-import { min-height: 34px; padding: 0 11px; border: 1px solid rgba(36, 104, 242, .28); border-radius: 8px; color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .06); cursor: pointer; font-size: 12px; font-weight: 800; }
.gamev2-requirements-text-actions small { color: var(--gamev2-publisher-muted); font-size: 11px; }
.gamev2-requirement-head,
.gamev2-requirement-row { display: grid; grid-template-columns: 110px minmax(0, 1fr) minmax(0, 1fr) 34px; gap: 9px; align-items: center; }
.gamev2-requirement-head { padding: 0 8px 8px; color: var(--gamev2-publisher-muted); font-size: 11px; font-weight: 700; }
.gamev2-requirement-rows { display: grid; gap: 9px; }
.gamev2-requirement-row { padding: 8px; border: 1px solid var(--gamev2-publisher-line); border-radius: 12px; background: var(--gamev2-publisher-card-solid); }
.gamev2-requirement-row input { width: 100%; min-width: 0; height: 38px; box-sizing: border-box; border: 0; border-bottom: 1px solid transparent; color: var(--gamev2-publisher-text); background: transparent; outline: none; }
.gamev2-requirement-row input:focus { border-bottom-color: var(--gamev2-publisher-blue); }
.gamev2-admin-fields .gamev2-requirement-row input {
    min-height: 38px;
    margin: 0;
    padding: 0 8px;
    border: 0;
    border-bottom: 1px solid transparent;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.gamev2-admin-fields .gamev2-requirement-row input:focus {
    border-bottom-color: var(--gamev2-publisher-blue);
    box-shadow: none;
}
.gamev2-requirement-value { display: grid; gap: 4px; min-width: 0; }
.gamev2-requirement-example-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 6px; min-width: 0; }
.gamev2-requirement-example-text { min-width: 0; color: var(--gamev2-publisher-muted); font-size: 11px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
.gamev2-requirement-example { flex: 0 0 auto; height: 24px; padding: 0 7px; border: 1px solid rgba(36, 104, 242, .22); border-radius: 7px; color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .06); cursor: pointer; font-size: 11px; font-weight: 700; white-space: nowrap; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.gamev2-requirement-example:hover { border-color: rgba(36, 104, 242, .42); background: rgba(36, 104, 242, .12); transform: translateY(-1px); }
.gamev2-requirement-example:focus-visible { outline: 2px solid rgba(36, 104, 242, .35); outline-offset: 2px; }
.gamev2-requirement-remove { display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 8px; color: var(--gamev2-publisher-danger); background: rgba(220, 68, 85, .08); cursor: pointer; font-size: 19px; line-height: 1; }
.gamev2-requirement-add { margin-top: 10px; padding: 8px 12px; border: 1px solid rgba(36, 104, 242, .22); border-radius: 9px; color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .06); cursor: pointer; font-weight: 700; }
.gamev2-purchase-links-editor { position: relative; z-index: 1; display: grid; gap: 10px; }
.gamev2-purchase-link-head { display: none; }
.gamev2-purchase-link-rows { display: grid; gap: 10px; }
.gamev2-purchase-link-row { display: grid; grid-template-columns: minmax(140px, .5fr) minmax(240px, 1fr) 38px; gap: 10px; align-items: center; padding: 10px; border: 1px solid #dfe4ec; border-radius: 10px; background: #f7f9fc; }
.gamev2-purchase-link-row input { width: 100%; min-width: 0; height: 42px; box-sizing: border-box; margin: 0; padding: 0 12px; border: 1px solid #d8dee8; border-radius: 8px; color: #182033; background: #fff; outline: none; box-shadow: none; }
.gamev2-purchase-link-row input:focus { border-color: #2468f2; box-shadow: 0 0 0 3px rgba(36, 104, 242, .12); }
.gamev2-admin-fields .gamev2-purchase-link-row input {
    min-height: 42px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid #d8dee8;
    border-radius: 8px;
    background: #fff;
    box-shadow: none;
}
.gamev2-admin-fields .gamev2-purchase-link-row input:focus {
    border-color: #2468f2;
    box-shadow: 0 0 0 3px rgba(36, 104, 242, .12);
}
.gamev2-publisher-shell .gamev2-purchase-link-remove { display: grid; place-items: center; width: 36px !important; min-width: 36px; height: 36px; margin: 0 !important; padding: 0 !important; border: 1px solid rgba(220, 68, 85, .22) !important; border-radius: 50% !important; color: #cf3f52 !important; background: rgba(220, 68, 85, .08) !important; box-shadow: none !important; cursor: pointer; font-size: 19px; line-height: 1; transition: border-color .18s ease, background-color .18s ease, transform .18s ease; }
.gamev2-publisher-shell .gamev2-purchase-link-remove:hover { border-color: rgba(220, 68, 85, .42) !important; background: rgba(220, 68, 85, .15) !important; transform: translateY(-1px); }
.gamev2-publisher-shell .gamev2-purchase-link-add { justify-self: start; display: inline-flex; width: auto !important; min-height: 38px; align-items: center; margin: 0 !important; padding: 0 14px !important; border: 1px dashed rgba(36, 104, 242, .42) !important; border-radius: 9px !important; color: #2468f2 !important; background: rgba(36, 104, 242, .06) !important; box-shadow: none !important; cursor: pointer; font-size: 13px; font-weight: 700; line-height: 1; transition: border-color .18s ease, background-color .18s ease, transform .18s ease; }
.gamev2-publisher-shell .gamev2-purchase-link-add:hover { border-color: #2468f2 !important; background: rgba(36, 104, 242, .12) !important; transform: translateY(-1px); }
.gamev2-admin-fields .gamev2-purchase-link-row input { min-height: 42px; margin: 0; padding: 0 12px; border: 1px solid #d8dee8; border-radius: 8px; background: #fff; box-shadow: none; }
.gamev2-admin-fields .gamev2-purchase-link-row input:focus { border-color: #2468f2; box-shadow: 0 0 0 3px rgba(36, 104, 242, .12); }
.gamev2-admin-fields .gamev2-purchase-link-remove { display: grid; place-items: center; width: 36px !important; min-width: 36px; height: 36px; margin: 0 !important; padding: 0 !important; border: 1px solid rgba(220, 68, 85, .22) !important; border-radius: 50% !important; color: #cf3f52 !important; background: rgba(220, 68, 85, .08) !important; box-shadow: none !important; cursor: pointer; font-size: 19px; line-height: 1; transition: border-color .18s ease, background-color .18s ease, transform .18s ease; }
.gamev2-admin-fields .gamev2-purchase-link-remove:hover { border-color: rgba(220, 68, 85, .42) !important; background: rgba(220, 68, 85, .15) !important; transform: translateY(-1px); }
.gamev2-admin-fields .gamev2-purchase-link-add { justify-self: start; display: inline-flex; width: auto !important; min-height: 38px; align-items: center; margin: 0 !important; padding: 0 14px !important; border: 1px dashed rgba(36, 104, 242, .42) !important; border-radius: 9px !important; color: #2468f2 !important; background: rgba(36, 104, 242, .06) !important; box-shadow: none !important; cursor: pointer; font-size: 13px; font-weight: 700; line-height: 1; transition: border-color .18s ease, background-color .18s ease, transform .18s ease; }
.gamev2-admin-fields .gamev2-purchase-link-add:hover { border-color: #2468f2 !important; background: rgba(36, 104, 242, .12) !important; transform: translateY(-1px); }
.gamev2-purchase-links-editor > small,
.gamev2-purchase-links-editor > .description { display: block; margin: 0; color: var(--gamev2-publisher-muted, #646970); font-size: 12px; line-height: 1.6; }
body.dark-theme .gamev2-publisher-shell .gamev2-purchase-link-row { border-color: rgba(255, 255, 255, .09); background: #171c25; }
body.dark-theme .gamev2-publisher-shell .gamev2-purchase-link-row input { border-color: rgba(255, 255, 255, .11) !important; color: #edf3fb !important; background: #1f2530 !important; }
body.dark-theme .gamev2-publisher-shell .gamev2-purchase-link-row input::placeholder { color: #7f899a; }
body.dark-theme .gamev2-publisher-shell .gamev2-purchase-link-add { border-color: rgba(90, 145, 255, .48) !important; color: #8eb3ff !important; background: rgba(54, 112, 230, .11) !important; }
body.dark-theme .gamev2-publisher-shell .gamev2-purchase-link-remove { border-color: rgba(255, 111, 128, .26) !important; color: #ff8c99 !important; background: rgba(220, 68, 85, .12) !important; }

.gamev2-publisher-sidebar { position: sticky; top: 82px; display: grid; gap: 14px; }
.gamev2-publisher-side-card { padding: 18px; }
.gamev2-publisher-side-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 6px; font-size: 15px; font-weight: 800; }
.gamev2-publisher-side-title b { padding: 3px 7px; border-radius: 999px; color: #fff; background: var(--gamev2-publisher-danger); font-size: 10px; }
.gamev2-publisher-side-card > p { margin: 0 0 12px; color: var(--gamev2-publisher-muted); font-size: 12px; line-height: 1.6; }
.gamev2-category-tree { display: grid; gap: 2px; max-height: 320px; overflow: auto; padding: 8px; border: 1px solid var(--gamev2-publisher-line); border-radius: 11px; background: var(--gamev2-publisher-card-solid); }
.gamev2-category-node { position: relative; min-width: 0; }
.gamev2-category-row { display: flex; align-items: center; min-height: 38px; border-radius: 8px; }
.gamev2-category-row:hover { background: rgba(36, 104, 242, .07); }
.gamev2-category-row > label { display: flex; min-width: 0; flex: 1; align-items: center; gap: 8px; padding: 7px 8px 7px 2px; cursor: pointer; }
.gamev2-category-node.has-children > .gamev2-category-row > label { font-weight: 800; }
.gamev2-category-node input { flex: 0 0 auto; accent-color: var(--gamev2-publisher-blue); }
.gamev2-category-toggle,
.gamev2-category-toggle-spacer { display: inline-flex; width: 28px; height: 28px; flex: 0 0 28px; align-items: center; justify-content: center; margin-left: 2px; }
.gamev2-category-toggle { padding: 0; border: 0; border-radius: 7px; color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .09); cursor: pointer; }
.gamev2-category-toggle:hover { background: rgba(36, 104, 242, .17); }
.gamev2-category-toggle:focus-visible { background: rgba(36, 104, 242, .17); outline: 2px solid rgba(36, 104, 242, .35); outline-offset: 2px; }
.gamev2-category-toggle span { width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.gamev2-category-toggle[aria-expanded="false"] span { transform: translateX(-2px) rotate(-45deg); }
.gamev2-category-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gamev2-category-parent-mark { flex: 0 0 auto; margin-left: auto; padding: 2px 6px; border-radius: 999px; color: var(--gamev2-publisher-blue); background: rgba(36, 104, 242, .1); font-size: 10px; font-weight: 800; }
.gamev2-category-children { position: relative; display: grid; gap: 2px; margin-left: 18px; padding-left: 16px; border-left: 1px solid rgba(36, 104, 242, .3); }
.gamev2-category-children[hidden] { display: none; }
.gamev2-category-children > .gamev2-category-node::before { content: ""; position: absolute; top: 19px; left: -16px; width: 12px; border-top: 1px solid rgba(36, 104, 242, .3); }
.gamev2-publisher-status-card ul { margin: 12px 0 16px; padding-left: 18px; color: var(--gamev2-publisher-muted); font-size: 12px; line-height: 1.8; }
.gamev2-publisher-response { display: none; margin-bottom: 10px; padding: 9px 10px; border-radius: 9px; font-size: 12px; }
.gamev2-publisher-response:not(:empty) { display: block; }
.gamev2-publisher-response.is-error { color: #b52c40; background: rgba(220, 68, 85, .1); }
.gamev2-publisher-response.is-success { color: #087d64; background: rgba(14, 171, 137, .1); }
.gamev2-publisher-response.is-loading { color: #225ac5; background: rgba(36, 104, 242, .1); }
.gamev2-publisher-actions { display: grid; grid-template-columns: 1fr 1.25fr; gap: 8px; }
.gamev2-publisher-submit { min-height: 42px; border: 0; border-radius: 11px; cursor: pointer; font-weight: 800; transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease; }
.gamev2-publisher-submit:hover { transform: translateY(-1px); }
.gamev2-publisher-submit:disabled { opacity: .65; cursor: wait; transform: none; }
.gamev2-publisher-submit.is-draft { color: var(--gamev2-publisher-text); background: rgba(100, 113, 137, .12); }
.gamev2-publisher-submit.is-submit { color: #fff; background: linear-gradient(135deg, var(--gamev2-publisher-blue), var(--gamev2-publisher-cyan)); box-shadow: 0 10px 20px rgba(36, 104, 242, .22); }
.gamev2-button-spinner { display: inline-block; width: 13px; height: 13px; margin-right: 6px; border: 2px solid rgba(255, 255, 255, .4); border-top-color: currentColor; border-radius: 50%; vertical-align: -2px; animation: gamev2-publisher-spin .7s linear infinite; }
@keyframes gamev2-publisher-spin { to { transform: rotate(360deg); } }

@media (max-width: 960px) {
    .gamev2-publisher-layout { grid-template-columns: 1fr; }
    .gamev2-publisher-sidebar { position: static; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .gamev2-publisher-status-card { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
    .gamev2-publisher-shell { width: min(100% - 14px, 1180px); margin-top: 8px; }
    .gamev2-publisher-header { align-items: flex-start; flex-direction: column; padding: 24px 20px; border-radius: 18px; }
    .gamev2-publisher-header-actions { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
    .gamev2-publisher-section { padding: 18px 14px; border-radius: 16px; }
    .gamev2-publisher-section-heading { align-items: flex-start; flex-direction: column; margin-bottom: 16px; }
    .gamev2-publisher-fields,
    .gamev2-publisher-sidebar { grid-template-columns: 1fr; }
    .gamev2-field-span-2,
    .gamev2-publisher-status-card { grid-column: auto; }
    .gamev2-requirement-head { display: none; }
    .gamev2-requirement-row { grid-template-columns: 1fr 32px; }
    .gamev2-requirement-row > input,
    .gamev2-requirement-value { grid-column: 1; }
    .gamev2-requirement-remove { grid-column: 2; grid-row: 1 / span 3; }
    .gamev2-purchase-link-head { display: none; }
    .gamev2-purchase-link-row { grid-template-columns: 1fr 32px; }
    .gamev2-purchase-link-row input { grid-column: 1; }
    .gamev2-purchase-link-remove { grid-column: 2; grid-row: 1 / span 2; }
    .gamev2-publisher-actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .gamev2-publisher-shell *,
    .gamev2-publisher-shell *::before,
    .gamev2-publisher-shell *::after { animation: none !important; transition: none !important; }
}

/* GameV2 1.2.2 tab indicator and external-link spacing */
.gamev2-tab-list {
    position: relative;
    isolation: isolate;
}

.gamev2-tab-indicator {
    position: absolute;
    z-index: 0;
    top: 5px;
    bottom: 5px;
    left: 0;
    width: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--zibll-game-accent), #2978f4);
    box-shadow: 0 8px 18px rgba(35, 99, 239, .22);
    pointer-events: none;
    transition: width .38s cubic-bezier(.2, .8, .2, 1), transform .38s cubic-bezier(.2, .8, .2, 1);
}

.gamev2-tab-indicator.is-initializing {
    transition: none;
}

.gamev2-tab {
    z-index: 1;
}

.gamev2-tab.is-active {
    color: #fff;
    background: transparent;
    box-shadow: none;
}

.gamev2-external-arrow {
    flex: 0 0 auto;
    margin-left: auto;
    padding-left: 8px;
}

.gamev2-video-link-card .gamev2-external-copy {
    padding-right: 20px;
}
.gamev2-video-item iframe + .gamev2-video-source-card { margin-top: 12px; }
.gamev2-video-source-card { min-height: 66px; }
.gamev2-video-source-card-bilibili { border-color: rgba(0, 161, 214, .2); background: rgba(0, 161, 214, .055); }
.gamev2-video-source-card-bilibili:hover { border-color: rgba(0, 161, 214, .48); }
.gamev2-video-source-card-youtube { border-color: rgba(255, 0, 0, .16); background: rgba(255, 0, 0, .035); }
.gamev2-video-source-card-youtube:hover { border-color: rgba(255, 0, 0, .38); }

.gamev2-review-link-card {
    position: relative;
    gap: 16px;
    padding: 18px;
    overflow: hidden;
}
.gamev2-review-site-badge {
    display: grid;
    place-items: center;
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    border-radius: 15px;
    color: #fff;
    background: linear-gradient(145deg, #52606d, #27313c);
    box-shadow: 0 8px 20px rgba(20, 31, 44, .16);
    font-size: 14px;
    font-weight: 900;
    letter-spacing: -.03em;
}
.gamev2-review-site-badge-ign { background: linear-gradient(145deg, #ff3939, #c81212); }
.gamev2-review-site-badge-steam { background: linear-gradient(145deg, #2a475e, #132c3f); }
.gamev2-review-site-badge-metacritic { background: linear-gradient(145deg, #ffcc34, #f08b1d); color: #252525; }
.gamev2-review-site-badge-gamespot { background: linear-gradient(145deg, #ef4b31, #a91f18); }
.gamev2-review-site-badge-gamersky,
.gamev2-review-site-badge-threedm,
.gamev2-review-site-badge-ali213 { background: linear-gradient(145deg, #3378f6, #174db5); }
.gamev2-review-site-heading { display: flex; align-items: center; gap: 9px; min-width: 0; }
.gamev2-review-site-name { color: var(--zibll-game-ink); font-size: 16px; font-weight: 900; }
.gamev2-review-site-type { padding: 3px 8px; border-radius: 999px; color: var(--zibll-game-accent); background: rgba(35, 99, 239, .09); font-size: 11px; font-weight: 800; white-space: nowrap; }
.gamev2-review-site-host { font-family: Consolas, Monaco, monospace; font-size: 11px; }
.gamev2-review-description { margin-top: 5px; color: var(--zibll-game-muted); font-size: 13px; line-height: 1.65; }
.gamev2-review-action { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; margin-left: auto; padding: 8px 11px; border-radius: 10px; color: var(--zibll-game-accent); background: rgba(35, 99, 239, .08); font-size: 12px; font-weight: 800; white-space: nowrap; transition: transform .18s ease, background .18s ease; }
.gamev2-review-link-card:hover .gamev2-review-action { transform: translateX(2px); background: rgba(35, 99, 239, .14); }

@media (max-width: 640px) {
    .gamev2-review-link-card { align-items: flex-start; gap: 12px; padding: 15px; }
    .gamev2-review-site-badge { flex-basis: 46px; width: 46px; height: 46px; border-radius: 13px; font-size: 12px; }
    .gamev2-review-site-heading { align-items: flex-start; flex-direction: column; gap: 5px; }
    .gamev2-review-description { display: block; }
    .gamev2-review-action { position: absolute; top: 14px; right: 13px; padding: 7px; }
    .gamev2-review-action > span:first-child { display: none; }
    .gamev2-review-link-card .gamev2-external-copy { padding-right: 30px; }
}

@media (prefers-reduced-motion: reduce) {
    .gamev2-tab-indicator {
        transition: none !important;
    }
}

/* GameV2 1.3.2 independent top navigation publish button */
.gamev2-nav-publish-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 96px;
    height: 34px;
    padding: 0 13px;
    border: 1px solid rgba(36, 104, 242, .18);
    border-radius: 999px;
    color: #fff !important;
    background: linear-gradient(135deg, #2468f2, #11aeca);
    box-shadow: 0 8px 18px rgba(36, 104, 242, .2);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.gamev2-nav-publish-button:hover,
.gamev2-nav-publish-button:focus-visible {
    color: #fff !important;
    filter: brightness(1.06);
    transform: translateY(-1px);
    box-shadow: 0 11px 23px rgba(36, 104, 242, .28);
}

.gamev2-nav-publish-button i {
    font-size: 14px;
}

@media (max-width: 767px) {
    .gamev2-requirements-columns { grid-template-columns: 1fr; }
    .gamev2-nav-publish-button {
        min-width: 34px;
        width: 34px;
        padding: 0;
    }

    .gamev2-nav-publish-button span {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gamev2-nav-publish-button {
        transition: none !important;
    }
}
/* GameV2 1.3.16 mobile list-page publish shortcut */
.gamev2-mobile-publish-button {
    display: none;
}

@media (max-width: 767px) {
    .gamev2-mobile-publish-button {
        position: fixed;
        right: 16px;
        bottom: calc(82px + env(safe-area-inset-bottom));
        z-index: 999;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        min-width: 112px;
        height: 46px;
        padding: 0 17px;
        border: 1px solid rgba(255, 255, 255, .28);
        border-radius: 999px;
        color: #fff !important;
        background: linear-gradient(135deg, #2468f2, #11aeca);
        box-shadow: 0 10px 28px rgba(36, 104, 242, .34);
        font-size: 14px;
        font-weight: 700;
        line-height: 1;
        text-decoration: none !important;
        white-space: nowrap;
        -webkit-tap-highlight-color: transparent;
        transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
    }

    .gamev2-mobile-publish-button:hover,
    .gamev2-mobile-publish-button:focus-visible,
    .gamev2-mobile-publish-button:active {
        color: #fff !important;
        filter: brightness(1.06);
        transform: translateY(-1px);
        box-shadow: 0 12px 32px rgba(36, 104, 242, .42);
    }

    .gamev2-mobile-publish-button i {
        font-size: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gamev2-mobile-publish-button {
        transition: none !important;
    }
}

.gamev2-launch-panel .gamev2-core-launch { padding: 16px; border: 1px solid var(--zibll-game-line); border-radius: 14px; background: var(--zibll-game-surface-soft); }
.gamev2-post-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.gamev2-title-tagline .gamev2-post-tags { margin-top: 0; }
.gamev2-post-tag { display: inline-flex; align-items: center; min-height: 24px; padding: 3px 9px; border: 1px solid rgba(36, 104, 242, .18); border-radius: 999px; color: var(--gamev2-publisher-blue, #2468f2); background: rgba(36, 104, 242, .07); font-size: 12px; line-height: 1.3; text-decoration: none; }
.gamev2-post-tag:hover { border-color: rgba(36, 104, 242, .4); background: rgba(36, 104, 242, .13); }
