/* 目次の絞り込み・検索・件数・該当なし。JS が動いたときだけ出す（hidden を外す） */
.sec_toc {
    .tools {
        margin-bottom: 24px;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 16px 32px;
        &[hidden] {
            display: none;
        }
    }
    .filter {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        button {
            padding: 0 16px;
            min-height: 40px;
            background: transparent;
            color: var(--color-ink-soft);
            font-size: 14px;
            line-height: 1.5em;
            letter-spacing: 0.06em;
            border: 1px solid var(--color-line);
            border-radius: 0;
            cursor: pointer;
            transition: border-color 0.3s, color 0.3s;
            &[aria-pressed="true"] {
                background: var(--color-ink);
                border-color: var(--color-ink);
                color: var(--color-cream);
            }
            @media (hover: hover) {
                &:not([aria-pressed="true"]):hover {
                    border-color: var(--color-ink);
                    color: var(--color-ink);
                }
            }
        }
    }
    .search {
        display: flex;
        align-items: center;
        gap: 12px;
        @media (max-width: 600px) {
            width: 100%;
        }
        label {
            color: var(--color-ink-soft);
            font-size: 14px;
            line-height: 1.5em;
            white-space: nowrap;
        }
        input {
            padding: 0 12px;
            width: 100%;
            max-width: 260px;
            min-height: 40px;
            background: var(--color-paper);
            color: var(--color-ink);
            font-size: 16px;
            line-height: 1.5em;
            border: 1px solid var(--color-line);
            border-radius: 0;
            appearance: none;
            @media (max-width: 600px) {
                max-width: none;
            }
        }
    }
    .count {
        width: 100%;
        color: var(--color-ink-soft);
        font-size: 14px;
        line-height: 1.6em;
        .num {
            margin-right: 2px;
            color: var(--color-ink);
            font-weight: 700;
        }
    }
    .empty {
        padding: 40px 0;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 16px;
        color: var(--color-ink-soft);
        font-size: 16px;
        line-height: 1.8em;
        border-bottom: 1px solid var(--color-line);
        &[hidden] {
            display: none;
        }
        .clear {
            padding: 0 16px;
            min-height: 40px;
            background: transparent;
            color: var(--color-ink);
            font-size: 14px;
            line-height: 1.5em;
            letter-spacing: 0.06em;
            border: 1px solid var(--color-ink);
            border-radius: 0;
            cursor: pointer;
        }
    }
}

/* 最終更新: 2026-10-25 19:15 */
