/* 基本スタイル */
body {
    background-color: #f8f9fa;
}

.card {
    border: none;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.navbar-brand {
    font-weight: bold;
}

/* フォーム */
.form-control:focus, .form-select:focus {
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.15);
}

/* プログレスバー */
.progress {
    background-color: #e9ecef;
    border-radius: 4px;
}

.progress-bar {
    font-size: 0.75rem;
    font-weight: 500;
}

/* リストグループ */
.list-group-item {
    border-left: 3px solid transparent;
    transition: border-color 0.2s;
}

.list-group-item:hover {
    border-left-color: #0d6efd;
    background-color: #f8f9fa;
}

/* テーブル */
.table th {
    white-space: nowrap;
}

/* キーワードハイライト */
mark, .highlight {
    background-color: #fff3cd;
    padding: 0.1em 0.2em;
    border-radius: 2px;
}

/* レスポンシブ調整 */
@media (max-width: 768px) {
    .card-body.p-5 {
        padding: 1.5rem !important;
    }
}

/* 会議一覧ページ用スタイル */
/* 省庁アコーディオン（親階層）のヘッダー - 濃い色 */
.ministry-accordion-btn {
    background-color: #343a40 !important;
    color: #fff !important;
}
.ministry-accordion-btn:not(.collapsed) {
    background-color: #212529 !important;
    color: #fff !important;
    box-shadow: none;
}
.ministry-accordion-btn:focus {
    box-shadow: none;
}
.ministry-accordion-btn::after {
    filter: invert(1);
}

/* 会議アコーディオンのカスタムヘッダー */
.meeting-accordion-header {
    display: flex;
    align-items: center;
    padding: 1rem 1.25rem;
    background-color: #fff;
    border: 0;
    width: 100%;
    cursor: default;
}

.meeting-info-area {
    flex: 1;
    cursor: text;
}

.meeting-name-text {
    cursor: text;
}

/* アコーディオン開閉用の矢印ボタン */
.accordion-toggle-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-left: 10px;
    background-color: #f8f9fa;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.2s, transform 0.2s;
    flex-shrink: 0;
}

.accordion-toggle-btn:hover {
    background-color: #e9ecef;
}

.accordion-arrow {
    font-style: normal;
    font-size: 12px;
    color: #666;
    transition: transform 0.2s;
}

.accordion-toggle-btn[aria-expanded="true"] .accordion-arrow {
    transform: rotate(180deg);
}

/* Bootstrap標準のアコーディオン矢印を非表示 */
.meeting-accordion-header::after {
    display: none !important;
}

/* テキスト選択を容易にする */
.user-select-all {
    user-select: all;
    -webkit-user-select: all;
}