/* 共通テーブルスタイル（PC用） */
table {
    width: 100%;
    border-collapse: collapse;
}
th, td {
    border: 1px solid #ccc;
    padding: 10px;
    text-align: left;
}
th {
    background-color: #f4f4f4;
}

/* ラッパー */
.responsive-table-wrapper {
    position: relative;
    width: 100%;
    max-width: 100vw;
    overflow-x: auto;
    border-radius: 8px;
}

/* 転置テーブル用スタイル */
.transposed-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 1000px;
}
.transposed-table th,
.transposed-table td {
    padding: 12px 16px;
    text-align: center;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    vertical-align: middle;
}
.transposed-table th:last-child,
.transposed-table td:last-child {
    border-right: none;
}
.transposed-table th {
    font-weight: 600;
    text-align: center;
    font-size: 0.9em;
}
.fixed-column {
    position: sticky;
    left: 0;
    z-index: 5;
    background: white;
    box-shadow: 2px 0 4px rgba(0, 0, 0, 0.1);
    font-weight: 600;
}
.fixed-column.header {
    z-index: 15;
}
.item-col { width: 120px; min-width: 80px; }
.method-col { width: 200px; min-width: 200px; }
code {
    /* padding: 3px 6px; */
    border-radius: 4px;
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 0.85em;
    white-space: nowrap;
}

/* スクロールヒント */
.scroll-hint {
    text-align: center;
    font-size: 0.9em;
    margin-top: 10px;
    animation: pulse 2s infinite;
}

/* アニメーション */
@keyframes pulse {
    0%, 100% { opacity: 0.7; }
    50% { opacity: 1; }
}

/* スクロールヒント非表示 (PC) */
@media (min-width: 769px) {
    .responsive-table {
        display: table;
    }
    .transposed-table {
        display: none !important;
    }
    .scroll-hint {
        display: none;
    }
}

/* モバイル表示 */
@media (max-width: 768px) {
    .responsive-table {
        display: none !important;
    }
    .transposed-table {
        display: table;
    }
    .transposed-table th,
    .transposed-table td {
        padding: 8px 10px;
        font-size: 0.85em;
    }
    .item-col { width: 100px; }
    .method-col { width: 160px; }
    .transposed-table {
        min-width: 800px;
    }
    .method-header {
        writing-mode: horizontal-tb;
        height: auto;
        font-size: 0.8em;
        padding: 8px;
    }
}
