    .ranking-summary {
        margin: 12px 0 18px;
        color: #666;
        font-size: 12px;
        line-height: 1.7;
        overflow-wrap: anywhere;
        word-break: break-word;
    }
    .ranking-top-note {
        margin-bottom: 10px;
        padding: 10px 12px;
        color: #5b4b2d;
        font-size: 10px;
        line-height: 1.6;
        background: linear-gradient(135deg, rgba(255, 247, 214, 0.96), rgba(255, 239, 199, 0.88));
        border: 1px solid rgba(224, 188, 105, 0.35);
        border-radius: 14px;
        overflow-wrap: anywhere;
        word-break: break-word;
    }
    .ranking-score-box {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-top: 8px;
        padding: 6px 10px;
        color: #4c3f20;
        font-size: 10px;
        background: rgba(255, 248, 222, 0.9);
        border: 1px solid rgba(224, 188, 105, 0.3);
        border-radius: 999px;
    }
    .ranking-score-box strong {
        color: #b16d00;
        font-size: 10px;
    }
    .ranking-rank-chip {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        height: 28px;
        margin-right: 10px;
        padding: 0 10px;
        color: #fff;
        font-size: 9px;
        font-weight: 700;
        background: linear-gradient(135deg, #ff9964, #ff7e46);
        border-radius: 999px;
    }
    .ranking-rank-chip.is-awards-crown-chip {
        min-width: 42px;
        padding: 0 8px;
        color: inherit;
        background: rgba(255, 248, 222, 0.9);
        border: 1px solid rgba(214, 158, 46, 0.24);
    }
    .ranking-head-block {
        display: inline-flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
        width: fit-content;
        max-width: 100%;
        margin-bottom: 2px;
    }
    .ranking-actions {
        display: flex;
        justify-content: center;
        margin-top: 22px;
    }
    .ranking-grid-mode,
    .news-grid-mode,
    .awards-grid-mode,
    .tmi-grid-mode,
    .ranking-line-mode,
    .info-placeholder-mode {
        display: none;
    }
    #ranking-section.is-news-mode .news-grid-mode {
        display: block;
    }
    #ranking-section.is-awards-mode .awards-grid-mode {
        display: block;
    }
    #ranking-section.is-tmi-mode .tmi-grid-mode {
        display: block;
    }
    .tmi-grid-mode {
        position: relative;
        width: 100%;
        max-width: 600px;
        margin: 0 auto;
    }
    .tmi-theme-page {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        margin-top: 16px;
    }
    .tmi-theme-page.is-hidden { display: none; }
    .boardgame-analysis-page { min-width: 0; padding: 0 4px; box-sizing: border-box; }
    .analysis-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px; }
    .analysis-heading h4 { margin: 0; font-size: 18px; }
    .analysis-heading span, .analysis-meta { font-size: 12px; opacity: 0.75; }
    .analysis-meta { margin: 0; line-height: 1.6; overflow-wrap: anywhere; }
    .analysis-overall .analysis-status-line { display: flex; align-items: center; gap: 8px; }
    .analysis-overall .analysis-status-line [data-analysis-status] { min-width: 0; overflow-wrap: anywhere; }
    .analysis-overall .analysis-help { flex-shrink: 0; }
    .analysis-help button { display: grid; place-items: center; width: 26px; height: 26px; padding: 0; border: 1px solid #75838a; border-radius: 50%; background: rgba(255, 255, 255, 0.75); color: #252d31; font: inherit; font-size: 14px; cursor: pointer; }
    .analysis-help button:focus-visible { outline: 2px solid #719ca2; outline-offset: 3px; }
    .analysis-help [popover] { position: fixed; inset: auto; box-sizing: border-box; width: min(520px, calc(100vw - 24px)); max-height: min(320px, calc(100dvh - 24px)); margin: 0; padding: 14px; overflow: auto; border: 1px solid #75838a; border-radius: 6px; background: rgba(255, 255, 255, 0.97); color: #252d31; opacity: 1; font-size: 12px; line-height: 1.7; box-shadow: 0 6px 24px rgba(0, 0, 0, 0.22); }
    body.theme-dark .analysis-help button { background: #25303b; color: #f1f4f6; border-color: #83909d; }
    body.theme-dark .analysis-help [popover] { background: rgba(32, 39, 46, 0.98); color: #f1f4f6; border-color: #83909d; }
    .boardgame-analysis-page [data-analysis-status] { margin: 8px 0; font-size: 14px; }
    .analysis-toolbar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .analysis-toolbar select, .analysis-toolbar input { min-width: 0; width: 100%; padding: 9px; border: 1px solid #75838a; border-radius: 4px; background: var(--input-bg, #fff); color: var(--text-color, #252d31); font: inherit; font-size: 12px; box-sizing: border-box; }
    .analysis-toolbar input { grid-column: 1 / -1; }
    body.theme-dark .analysis-toolbar select, body.theme-dark .analysis-toolbar input { background: #182029; color: #ece7dc; }
    .analysis-row summary:focus-visible { outline: 2px solid #719ca2; outline-offset: 2px; }
    .analysis-row { border-bottom: 1px solid rgba(125, 130, 140, 0.3); }
    body.theme-dark .boardgame-analysis-page [data-analysis-results]:not(:empty) {
        box-sizing: border-box;
        padding: 4px 12px;
        border: 1px solid rgba(255, 255, 255, 0.35);
        border-radius: 6px;
        background: rgba(255, 255, 255, 0.86);
        color: #20262c;
    }
    body.theme-dark .boardgame-analysis-page .analysis-row { border-bottom-color: rgba(32, 38, 44, 0.22); }
    body.theme-dark .boardgame-analysis-page .analysis-row small { opacity: 0.9; }
    body.theme-dark .boardgame-analysis-page .analysis-metrics div { border-bottom-color: rgba(32, 38, 44, 0.18); }
    body.theme-dark .boardgame-analysis-page .analysis-overview-section { border-top-color: rgba(32, 38, 44, 0.22); }
    .analysis-row summary { display: grid; grid-template-columns: 30px 42px minmax(0, 1fr) 70px 70px; align-items: center; gap: 8px; padding: 12px 0; cursor: pointer; list-style: none; }
    .analysis-row summary::-webkit-details-marker { display: none; }
    .analysis-row summary img { width: 42px; height: 48px; object-fit: contain; }
    .analysis-card-name { min-width: 0; overflow-wrap: anywhere; font-size: 13px; }
    .analysis-row small { display: block; font-size: 10px; margin-top: 4px; opacity: 0.75; }
    .analysis-rank { font-size: 11px; }
    .analysis-value, .analysis-rate { text-align: right; font-size: 12px; }
    .analysis-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 16px; margin: 10px 0; font-size: 12px; }
    .analysis-metrics div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px; border-bottom: 1px solid rgba(125, 130, 140, 0.2); padding: 5px 0; }
    .analysis-metrics dt, .analysis-metrics dd { margin: 0; }
    .analysis-context { font-size: 11px; overflow-wrap: anywhere; line-height: 1.7; }
    .analysis-pagination { display: flex; justify-content: center; align-items: center; gap: 16px; font-size: 12px; }
    .analysis-pagination button { width: 32px; height: 32px; font: inherit; border: 1px solid #75838a; border-radius: 4px; cursor: pointer; }
    .analysis-pagination button:disabled { opacity: 0.4; cursor: default; }
    .boardgame-analysis-page [hidden] { display: none !important; }
    .analysis-overview-section { margin-top: 24px; padding-top: 16px; border-top: 1px solid rgba(125, 130, 140, 0.3); }
    .analysis-overview-section header { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
    .analysis-overview-section h5 { margin: 0; font-size: 15px; overflow-wrap: anywhere; }
    .analysis-overview-section header button { flex-shrink: 0; font: inherit; font-size: 12px; padding: 6px 8px; cursor: pointer; }
    .analysis-overview-sector { display: flex; align-items: center; gap: 10px; margin: 12px 0; font-size: 12px; }
    .analysis-overview-sector select { min-width: 0; flex: 1; max-width: 320px; padding: 8px; font: inherit; background: var(--input-bg, #fff); color: var(--text-color, #252d31); border: 1px solid #75838a; border-radius: 4px; }
    .analysis-overview-row summary { grid-template-columns: 30px 42px minmax(0, 1fr) 100px; }
    .analysis-overview-row .analysis-value { overflow-wrap: anywhere; }
    .analysis-overview-section .analysis-pagination { margin-top: 12px; }
    @media (max-width: 480px) {
        body.theme-dark .boardgame-analysis-page [data-analysis-results]:not(:empty) { padding-inline: 8px; }
        .analysis-row summary { grid-template-columns: 28px 32px minmax(0, 1fr) 58px; gap: 5px; }
        .analysis-row summary img { width: 32px; height: 42px; }
        .analysis-overview-row summary { grid-template-columns: 24px 32px minmax(0, 1fr) 85px; }
        .analysis-rate { grid-column: 3 / 5; text-align: left; font-size: 11px; }
        .analysis-rate small { display: inline; margin-left: 6px; }
        .analysis-metrics { grid-template-columns: minmax(0, 1fr); }
    }
    .tmi-boardgame-section { padding-top: 14px; border-top: 1px solid rgba(125, 130, 140, 0.25); }
    .tmi-boardgame-section + .tmi-boardgame-section { margin-top: 18px; }
    .tmi-boardgame-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
    .tmi-boardgame-head h5 { margin: 0; font-size: 14px; }
    .tmi-boardgame-head .ranking-card-open-btn { position: static; flex: 0 0 32px; }
    .tmi-pagination-controls {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 16px;
        margin-top: 18px;
    }
    .tmi-pagination-controls .boardgame-page-arrow {
        position: static;
        flex: 0 0 36px;
        width: 36px;
        height: 36px;
        transform: none;
        font-size: 22px;
    }
    .tmi-pagination-controls .boardgame-page-arrow:hover { transform: none; }
    .tmi-pagination-controls .boardgame-page-arrow:disabled {
        opacity: 0.35;
        cursor: default;
    }
    .tmi-pagination-controls .boardgame-page-indicator {
        margin: 0;
        color: #665965;
    }
    body.theme-dark .tmi-pagination-controls .boardgame-page-indicator { color: #d8cbd4; }
    #ranking-section.is-grid-mode .ranking-grid-mode {
        display: block;
    }
    #ranking-section.is-line-mode .ranking-line-mode {
        display: block;
    }
    #ranking-section.is-info-placeholder .info-placeholder-mode {
        display: block;
    }
    .ranking-mode-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-top: 18px;
        padding-bottom: 12px;
    }
    .ranking-mode-head h3 {
        margin: 0;
    }
    .ranking-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
        margin-top: 16px;
    }
    .ranking-category-card {
        position: relative;
        min-height: 210px;
        padding: 18px 18px 16px;
        color: #2b2b2b;
        background: rgba(255, 255, 255, 0.82);
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 18px;
        box-shadow: 0 12px 28px rgba(20, 20, 20, 0.08);
    }
    .ranking-category-card h4 {
        margin: 0 44px 14px 0;
        font-size: 18px;
        line-height: 1.25;
    }
    .ranking-card-open-btn {
        position: absolute;
        top: 14px;
        right: 14px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        color: #fff;
        font-size: 20px;
        font-weight: 900;
        line-height: 1;
        background: #252525;
        border: 0;
        border-radius: 999px;
        cursor: pointer;
    }
    .ranking-card-open-btn:hover {
        background: #252525;
    }
    .ranking-card-open-btn:disabled {
        opacity: 0.42;
        cursor: default;
    }
    .ranking-card-open-btn:disabled:hover {
        background: #252525;
    }
    .ranking-card-list {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .ranking-card-row {
        display: grid;
        grid-template-columns: 34px 38px minmax(0, 1fr) auto;
        align-items: center;
        gap: 8px;
        min-height: 46px;
        padding: 6px 8px;
        background: rgba(255, 255, 255, 0.62);
        border: 1px solid rgba(0, 0, 0, 0.06);
        border-radius: 10px;
    }
    .ranking-card-rank {
        color: #777;
        font-size: 11px;
        font-weight: 800;
    }
    .ranking-card-rank.is-only-one-static {
        color: #777;
        text-shadow: none;
        animation: none;
        filter: none;
        transform: none;
    }
    .ranking-card-rank.is-golden-new {
        color: #c17a00;
        text-shadow:
            0 0 4px rgba(255, 224, 102, 0.8),
            0 0 10px rgba(255, 190, 48, 0.45);
        animation: golden-new-sparkle 1.25s ease-in-out infinite;
    }
    @keyframes golden-new-sparkle {
        0%, 100% {
            filter: brightness(1);
            transform: translateY(0);
        }
        50% {
            filter: brightness(1.45);
            transform: translateY(-1px);
        }
    }
    .ranking-card-crown-rank {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
    }
    .ranking-card-crown-rank .awards-crowns,
    .ranking-rank-chip.is-awards-crown-chip .awards-crowns {
        align-items: center;
        justify-content: center;
    }
    .ranking-card-thumb {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        overflow: hidden;
        background: rgba(255, 255, 255, 0.92);
        border: 1px solid rgba(0, 0, 0, 0.06);
        border-radius: 10px;
    }
    .ranking-card-thumb img {
        width: 34px;
        height: 34px;
        object-fit: contain;
        image-rendering: auto;
    }
    .ranking-card-name {
        min-width: 0;
        overflow: hidden;
        color: #2f2f2f;
        font-size: 12px;
        font-weight: 800;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .ranking-card-score {
        color: #b16d00;
        font-size: 12px;
        font-weight: 900;
        white-space: nowrap;
    }
    .ranking-card-score-with-crown {
        display: inline-flex;
        align-items: center;
        justify-content: flex-end;
        gap: 4px;
    }
    .ranking-line-back {
        min-width: 46px;
        width: 46px;
        height: 42px;
        padding: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .ranking-grid-icon {
        width: 18px;
        height: 18px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 3px;
    }
    .ranking-grid-icon span {
        display: block;
        border-radius: 3px;
        background: currentColor;
    }
    .info-switch-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: center;
        gap: 10px;
        max-width: 760px;
        margin: 2px auto 12px;
    }
    .info-switch-grid {
        display: grid;
        grid-column: 2;
        grid-template-columns: repeat(3, 112px);
        justify-content: center;
        gap: 10px;
        min-width: 0;
        margin: 0;
    }
    .info-mode-description {
        max-width: 720px;
        margin: 0 auto 14px;
        padding: 12px 16px;
        color: #4a4a4a;
        text-align: center;
        font-size: 13px;
        font-weight: 800;
        line-height: 1.55;
        background: rgba(255, 255, 255, 0.72);
        border: 1px solid rgba(0, 0, 0, 0.07);
        border-radius: 14px;
        box-shadow: 0 8px 18px rgba(25, 25, 25, 0.05);
    }
    .info-switch-home {
        grid-column: 3;
        justify-self: end;
        min-width: 88px;
        min-height: 40px;
        margin: 0;
    }
    .info-switch-card {
        min-height: 42px;
        padding: 9px 14px;
        color: #252525;
        font-size: 13px;
        font-weight: 900;
        background: rgba(255, 255, 255, 0.86);
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 12px;
        box-shadow: 0 8px 18px rgba(25, 25, 25, 0.06);
        cursor: pointer;
        white-space: nowrap;
    }
    .info-switch-card:hover {
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 10px 22px rgba(25, 25, 25, 0.08);
    }
    .info-switch-card.is-active {
        color: #fff;
        border-color: transparent;
        box-shadow: 0 10px 22px rgba(25, 25, 25, 0.12);
    }
    #info-tab-news.is-active {
        background: #28a957;
    }
    #info-tab-ranking.is-active {
        background: #2288f1;
    }
    #info-tab-tmi.is-active {
        background: #8652d9;
    }
    .info-placeholder-card {
        max-width: 560px;
        margin: 26px auto 0;
        padding: 44px 20px;
        color: #333;
        text-align: center;
        font-size: 20px;
        font-weight: 900;
        background: rgba(255,255,255,0.82);
        border: 1px solid rgba(0,0,0,0.08);
        border-radius: 18px;
        box-shadow: 0 14px 32px rgba(25,25,25,0.08);
    }
    .ranking-grid-mode .ranking-mode-head {
        justify-content: flex-end;
    }
    .ranking-grid-mode .ranking-mode-head h3 {
        display: none;
    }
    .ranking-grid-mode .ranking-mode-head {
        display: none;
    }
    #ranking-section .meta,
    #ranking-section .extra,
    #ranking-section .list-extra-line,
    #ranking-section .item-name {
        overflow-wrap: anywhere;
        word-break: break-word;
    }
