@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap');

/* --- 全テーマ共通の基本構造スタイル --- */
.container { width: 100%; max-width: 1400px; padding: 1rem; }
.modal { display: none; position: fixed; z-index: 1010; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.7); justify-content: center; align-items: center; }
.modal-content { margin: auto; padding: 2rem; border-radius: 0.75rem; width: 90%; max-width: 1200px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); max-height: 90vh; overflow-y: auto; }
.close-button { float: right; font-size: 1.5rem; font-weight: bold; color: #a0aec0; cursor: pointer; }
.close-button:hover { color: #fff; }

.top-header > .container {
    padding-left: 0rem; /* ★修正: 左のパディングを減らす (例: 1rem から 0.5rem に) ★ */
    /* padding-right は必要に応じて調整 */
}

/* メインコンテンツエリアのパディングを調整 */
#gameScreen .main-content-area {
    flex-grow: 1;
    overflow-y: auto;
    /* ★★★ 修正: ここで calc() を使用し、より動的に高さを調整 ★★★ */
    /* 例えば、トップヘッダーが 78px、タブナビゲーションが 50px の場合 */
    padding-top: calc(78px + 50px + 10px); /* ヘッダー高さ + タブナビ高さ + 余裕 */
    /* 上記の計算結果に合わせて、例えば 138px などに調整します */
    /* もしそれでも隠れる場合は、余裕の 10px を 20px, 30px と増やしてください */
    /* または、正確な測定値 (例: ヘッダー 78.4px, タブナビ 49.6px) を直接ここに入力してください */
    
    padding-bottom: calc(35vh + 5rem);
}

/* ログウィンドウ本体（スクロール部分） */
.log-window {
    height: 100%;
    padding: 1rem;
    font-family: 'monospace';
    font-size: 0.875rem;
    overflow-y: auto;
    white-space: pre-wrap;
    border-radius: 0;
    z-index: 998;
    display: flex;
    flex-direction: column;
    transition: font-size 0.2s;
    box-sizing: border-box;
    width: 50%; /* ★修正: 幅を50%に設定★ */
}

/* メインコンテンツエリアのパディングを調整 */
#gameScreen .main-content-area {
    flex-grow: 1;
    overflow-y: auto;
    /* ヘッダー高さ(78px) + タブナビ高さ(約50px) = 約128px。
       これを確実に超える値に設定します。例: 150px, 160px など。 */
    padding-top: 160px;
    padding-bottom: calc(35vh + 5rem); /* ログ/チャットエリアの高さ + コントロールバーの高さ */
}

/* ログ下部のアクションバー (相対位置に変更) */
.log-action-bar {
    position: relative; /* fixed から relative に変更 */
    bottom: unset; /* bottom をリセット */
    left: unset; /* left をリセット */
    width: 100%; /* 親の幅に合わせて100%に */
    padding: 0.75rem 1rem;
    display: flex;
    justify-content: flex-start; /* ★修正: 左寄せにする★ */
    align-items: center;
    z-index: 1005; /* Z-indexは親の固定コンテナが持つ */
    pointer-events: none;
    background-color: var(--log-background-color);
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
    min-height: 3rem;
    flex-shrink: 0; /* 親のflex-col内で縮小しない */
}
.log-action-bar button {
    pointer-events: auto;
    margin-right: 0.5rem;
}

/* ログ下部の操作パネル（文字サイズなど） (相対位置に変更) */
.log-controls {
    position: relative; /* fixed から relative に変更 */
    bottom: unset; /* bottom をリセット */
    left: unset; /* left をリセット */
    width: 100%; /* 親の幅に合わせて100%に */
    z-index: 1006; /* Z-indexは親の固定コンテナが持つ */
    padding: 0.5rem 1rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
    background-color: var(--log-controls-background-color);
    flex-shrink: 0; /* 親のflex-col内で縮小しない */
}
/* ログコントロール内のボタン間に余白を追加 */
.log-controls .font-size-button,
.log-controls .speed-button,
.log-controls button {
    margin-right: 0.5rem;
}
.log-controls .text-sm {
    margin-right: 0.5rem;
}

/* ログ/チャット サイドバーのスタイル */
#logChatSidebar {
    box-sizing: border-box;
    width: 50%; /* ★修正: 幅を50%に設定★ */
    z-index: 1000;
}
/* サイドバー内のログ/チャット表示エリア */
#logChatSidebar .log-display-area {
    overflow-y: auto;
    padding: 0.5rem;
    border-radius: 0.375rem;
    flex-grow: 1; /* ★追加: 親の利用可能な高さを埋めるようにする ★ */
    background-color: var(--log-sidebar-log-background-color);
    color: var(--log-text-color);
}

/* タブのスタイル調整 (サイドバー内のタブ) */
#logChatSidebar .tab-button {
    border: none;
}

/* ★追加: タブナビゲーションの背景色が不透明であることを保証★ */
#tab-nav {
    background-color: var(--tab-nav-background-color); /* テーマに応じた変数を設定 */
    /* 必要に応じて、box-shadow も追加し、他のコンテンツとの区切りを明確にする */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    
}

/* ダッシュボードウィジェット内のツールチップ（@applyを標準CSSに変換） */
.tooltip-trigger {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: relative; /* ★修正: z-indexを有効にするため、relativeが必須★ */
    cursor: help;
    margin-left: 8px;
    background-color: #4a5568;
    color: #e2e8f0;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: bold;
   /* z-index: 1051;  ★追加: トリガー自体も前面に確保 (::afterより少し低く) ★ */
    pointer-events: auto; /* ★追加: トリガー自体がマウスイベントを受け付けるように★ */
}
.tooltip-trigger::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #0f172a;
    color: #e2e8f0;
    padding: 0.5rem 0.75rem;
    border-radius: 0.375rem;
    border: 1px solid #4a5568;
    font-size: 0.75rem;
    line-height: 1.4;
    font-weight: normal;
    text-transform: none;
    text-align: left;
    white-space: normal;
    width: 250px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
    z-index: 1052; /* ★修正: 非常に高い値に設定し、確実に前面に表示★ */
    pointer-events: none; /* ツールチップ自体がクリックを妨げないように */
}
.tooltip-trigger:hover::after {
    opacity: 1;
    visibility: visible;
}
/* テーマごとの色調整 */

/* theme-simple の場合 */
.theme-simple, body {
    /* ... 既存のスタイル ... */
    --log-background-color: #0f172a;
    --log-controls-background-color: #0f172a;
    --log-sidebar-log-background-color: #1a202c;
    --log-text-color: #e2e8f0;
    --tab-border-color: #4a5568;
    --tab-background-color: #374151;
    --tab-text-color: #9ca3af;
    --tab-active-background-color: #1a202c;
    --tab-active-text-color: #e2e8f0;
    --tab-hover-background-color: #4b5563;
}
.theme-simple .modal-content {
    background-color: #2d3748;
    color: #cbd5e0;
}
.theme-simple .log-window {
    background-color: var(--log-background-color);
    border-top-color: #4a5568;
    color: var(--log-text-color);
}
.theme-simple .log-action-bar { background: linear-gradient(to top, rgba(15, 23, 42, 1) 20%, rgba(15, 23, 42, 0)); }
.theme-simple .log-controls {
    background-color: #0f172a;
    border-top-color: #4a5568;
}

.theme-simple #logChatSidebar {
    background-color: #1a202c;
    border-color: #4a5568;
}
.theme-simple #logChatSidebar .log-display-area {
    background-color: #0f172a;
}
.theme-simple #logChatSidebar .tabs-nav {
    border-color: #4a5568;
}
.theme-simple #logChatSidebar .tab-button {
    background-color: #374151;
    color: #9ca3af;
}
.theme-simple #logChatSidebar .tab-button.active {
    background-color: #1a202c;
    color: #e2e8f0;
}
.theme-simple #logChatSidebar .tab-button:hover:not(.active) {
    background-color: #4b5563;
}
.theme-simple #logChatSidebar .chat-input-area {
    border-color: #4a5568;
}
.theme-simple #logChatSidebar input {
    background-color: #2d3748;
    border-color: #4a5568;
    color: #e2e8f0;
}

/* --- ノーマル（ライト）テーマ --- */
.theme-normal { font-family: 'Inter', sans-serif; background-color: #f8fafc; color: #020617; }
.theme-normal .modal-content { background-color: #ffffff; color: #475569; }
.theme-normal .log-window, .theme-normal .log-controls { background-color: #e2e8f0; border-top-color: #cbd5e0; }
.theme-normal .log-window { color: #15803d; }
.theme-normal .log-window .log-number { color: #c2410c; font-weight: bold; }
.theme-normal #gameScreen .top-header, .theme-normal .sticky-tabs { background-color: #f8fafc; }
.theme-normal h1, .theme-normal h2, .theme-normal h3, .theme-normal h4 { color: #2563eb; }
.theme-normal p, .theme-normal label { color: #475569; }
.theme-normal .tab-link.active { color: #1d4ed8; border-color: #2563eb; }
.theme-normal .statement-button.active, .theme-normal .font-size-button.active, .theme-normal .proposal-checkbox:checked + .proposal-toggle, .theme-normal .theme-button.active { background-color: #2563eb; }
.theme-normal .statement-table th { background-color: #e5e7eb; }
.theme-normal .statement-table tbody tr:nth-child(even) { background-color: #f3f4f6; }
.theme-normal .statement-table .section-header td { background-color: #d1d5db; color: #4b5563; border-top-color: #9ca3af !important; }
.theme-normal .w-full.p-2.border { background-color: #ffffff; border-color: #94a3b8; color: #020617; }
.theme-normal .loan-option input:checked + div { background-color: #dbeafe; border-color: #2563eb; }
.theme-normal .proposal-card.selected { border-color: #2563eb; background-color: rgb(59 130 246 / 0.1); }
.theme-normal .theme-button { background-color: #d1d5db; color: #1f2937; }
.theme-normal .top-header-button:hover { background-color: #374151; color: #ffffff; }
.theme-normal .top-header-button-danger:hover { background-color: #b91c1c; color: #ffffff; }
/* ★追加: ノーマルテーマのログ・チャットサイドバーのスタイル */
.theme-normal #logChatSidebar {
    background-color: #f8fafc;
    border-color: #cbd5e0;
}
.theme-normal #logChatSidebar .log-display-area {
    background-color: #e2e8f0;
    color: #15803d;
}
.theme-normal #logChatSidebar .tabs-nav {
    border-color: #cbd5e0;
}
.theme-normal #logChatSidebar .tab-button {
    background-color: #e5e7eb;
    color: #475569;
}
.theme-normal #logChatSidebar .tab-button.active {
    background-color: #f8fafc;
    color: #1d4ed8;
}
.theme-normal #logChatSidebar .tab-button:hover:not(.active) {
    background-color: #d1d5db;
}
.theme-normal #logChatSidebar .chat-input-area {
    border-color: #cbd5e0;
}
.theme-normal #logChatSidebar input {
    background-color: #ffffff;
    border-color: #94a3b8;
    color: #020617;
}


/* --- PC-98風テーマ --- */
.theme-pc98 { font-family: 'MS Gothic', 'Osaka-mono', monospace; background-color: #000080; color: #ffffff; }
.theme-pc98 .modal-content, .theme-pc98 #priceChart { background-color: #000000; color: #ffffff; border: 2px solid #ffffff; border-radius: 0; }
.theme-pc98 .log-window, .theme-pc98 .log-controls { background-color: #000000; border-top: 2px solid #ffffff; }
.theme-pc98 .log-window { color: #ffffff; }
.theme-pc98 .log-window .log-number { color: #00ffff; font-weight: bold; }
.theme-pc98 #gameScreen .top-header, .theme-pc98 .sticky-tabs { background-color: #000080; }
.theme-pc98 h1, .theme-pc98 h2, .theme-pc98 h3, .theme-pc98 h4 { color: #ffff00; }
.theme-pc98 p, .theme-pc98 label { color: #ffffff; }
.theme-pc98 .tab-link.active { color: #ffff00; border-color: #ff00ff; }
.theme-pc98 .statement-button.active, .theme-pc98 .font-size-button.active, .theme-pc98 .proposal-checkbox:checked + .proposal-toggle, .theme-pc98 .theme-button.active { background-color: #ff00ff; }
.theme-pc98 .statement-table th { background-color: #0000a0; }
.theme-pc98 .statement-table tbody tr:nth-child(even) { background-color: #0000a0; }
.theme-pc98 .statement-table .section-header td { background-color: #000050; color: #a0a0a0; border-top-color: #ffffff !important; }
.theme-pc98 .w-full.p-2.border { background-color: #000000; border-color: #ffffff; color: #ffffff; }
.theme-pc98 .loan-option input:checked + div { background-color: #500050; border-color: #ff00ff; }
.theme-pc98 .proposal-card.selected { border-color: #ff00ff; background-color: rgb(128 0 128 / 0.3); }
.theme-pc98 .theme-button { background-color: #000000; border: 1px solid #ffffff; color: #ffffff; }
.theme-pc98 .top-header-button:hover { background-color: #374151; color: #ffffff; }
.theme-pc98 .top-header-button-danger:hover { background-color: #b91c1c; color: #ffffff; }
/* ★追加: PC-98風テーマのログ・チャットサイドバーのスタイル */
.theme-pc98 #logChatSidebar {
    background-color: #000000;
    border-color: #ffffff;
}
.theme-pc98 #logChatSidebar .log-display-area {
    background-color: #000000;
    color: #ffffff;
}
.theme-pc98 #logChatSidebar .tabs-nav {
    border-color: #ffffff;
}
.theme-pc98 #logChatSidebar .tab-button {
    background-color: #0000a0;
    color: #ffffff;
}
.theme-pc98 #logChatSidebar .tab-button.active {
    background-color: #000000;
    color: #ffff00;
}
.theme-pc98 #logChatSidebar .tab-button:hover:not(.active) {
    background-color: #000050;
}
.theme-pc98 #logChatSidebar .chat-input-area {
    border-color: #ffffff;
}
.theme-pc98 #logChatSidebar input {
    background-color: #000000;
    border-color: #ffffff;
    color: #ffffff;
}


/* --- モダン（ダーク）テーマ --- */
.theme-modern { font-family: 'Inter', sans-serif; background-color: #111827; color: #d1d5db; }
.theme-modern .modal-content { background-color: #1f2937; color: #d1d5db; }
.theme-modern .log-window, .theme-modern .log-controls { background-color: #0c1322; border-top-color: #374151; }
.theme-modern .log-window { color: #5eead4; }
.theme-modern .log-window .log-number { color: #fde047; font-weight: bold; }
.theme-modern #gameScreen .top-header, .theme-modern .sticky-tabs { background-color: #111827; }
.theme-modern h1, .theme-modern h2, .theme-modern h3, .theme-modern h4 { color: #c084fc; }
.theme-modern p, .theme-modern label { color: #d1d5db; }
.theme-modern .tab-link.active { color: #fff; border-color: #a855f7; }
.theme-modern .statement-button.active, .theme-modern .font-size-button.active, .theme-modern .proposal-checkbox:checked + .proposal-toggle, .theme-modern .theme-button.active { background-color: #a855f7; }
.theme-modern .statement-table th { background-color: #374151; }
.theme-modern .statement-table tbody tr:nth-child(even) { background-color: #1f2937; }
.theme-modern .statement-table .section-header td { background-color: #111827; color: #9ca3af; border-top-color: #4b5563 !important; }
.theme-modern .w-full.p-2.border { background-color: #1f2937; border-color: #4b5563; color: #d1d5db; }
.theme-modern .loan-option input:checked + div { background-color: #3b0764; border-color: #a855f7; }
.theme-modern .proposal-card.selected { border-color: #a855f7; background-color: rgb(168 85 247 / 0.2); }
.theme-modern .theme-button { background-color: #374151; color: #d1d5db; }
.theme-modern .top-header-button:hover { background-color: #374151; color: #ffffff; }
.theme-modern .top-header-button-danger:hover { background-color: #b91c1c; color: #ffffff; }
/* ★追加: モダンテーマのログ・チャットサイドバーのスタイル */
.theme-modern #logChatSidebar {
    background-color: #111827;
    border-color: #374151;
}
.theme-modern #logChatSidebar .log-display-area {
    background-color: #0c1322;
    color: #5eead4;
}
.theme-modern #logChatSidebar .tabs-nav {
    border-color: #374151;
}
.theme-modern #logChatSidebar .tab-button {
    background-color: #1f2937;
    color: #d1d5db;
}
.theme-modern #logChatSidebar .tab-button.active {
    background-color: #111827;
    color: #c084fc;
}
.theme-modern #logChatSidebar .tab-button:hover:not(.active) {
    background-color: #374151;
}
.theme-modern #logChatSidebar .chat-input-area {
    border-color: #374151;
}
.theme-modern #logChatSidebar input {
    background-color: #1f2937;
    border-color: #4b5563;
    color: #d1d5db;
}
.theme-modern {
    /* ... 既存のスタイル ... */
    --tab-nav-background-color: #111827; /* ★追加: タブナビの背景色変数 */
    /* ... 他の変数 ... */
}


/* --- Macintosh風テーマ --- */
.theme-macintosh { font-family: 'Monaco', 'Courier New', monospace; background-color: #ffffff; color: #000000; }
.theme-macintosh .modal-content, .theme-macintosh #priceChart { background-color: #ffffff; color: #000000; border: 2px solid #000000; border-radius: 0; }
.theme-macintosh .log-window, .theme-macintosh .log-controls { background-color: #ffffff; border-top: 2px solid #000000; }
.theme-macintosh .log-window { color: #000000; }
.theme-macintosh .log-window .log-number { font-weight: bold; text-decoration: underline; color: #000000; }
.theme-macintosh #gameScreen .top-header, .theme-macintosh .sticky-tabs { background-color: #ffffff; border-bottom: 2px solid #000000; box-shadow: none; }
.theme-macintosh h1, .theme-macintosh h2, .theme-macintosh h3, .theme-macintosh h4 { color: #000000; }
.theme-macintosh p, .theme-macintosh label { color: #000000; }
.theme-macintosh .tab-link { color: #000000; }
.theme-macintosh .tab-link.active { color: #ffffff; background-color: #000000; border-color: #000000; }
.theme-macintosh .statement-button.active, .theme-macintosh .font-size-button.active, .theme-macintosh .proposal-checkbox:checked + .proposal-toggle, .theme-macintosh .theme-button.active { background-color: #000000; color: #ffffff; }
.theme-macintosh .statement-table th { background-color: #ffffff; border-bottom-width: 2px; border-color: #000000; }
.theme-macintosh .statement-table tbody tr:nth-child(even) { background-color: transparent; }
.theme-macintosh .statement-table td { border-bottom: 1px solid #cccccc; }
.theme-macintosh .statement-table .section-header td { background-color: #e0e0e0; color: #000000; border-top-color: #000000 !important; }
.theme-macintosh .w-full.p-2.border { background-color: #ffffff; border: 1px solid #000000; color: #000000; }
.theme-macintosh .loan-option input:checked + div { background-color: #cccccc; border: 2px solid #000000; }
.theme-macintosh .proposal-card.selected { border: 2px solid #000000 !important; background-color: #e0e0e0; }
.theme-macintosh .theme-button, .theme-macintosh #topScreen button, .theme-macintosh #gameScreen .top-header button { background-color: #ffffff; color: #000000; border: 2px solid #000000; border-radius: 6px; box-shadow: 1px 1px 0px #000000; padding: 0.4rem 1rem; }
.theme-macintosh button:hover { background-color: #000000; color: #ffffff; }
.theme-macintosh .close-button { color: #888888; }
.theme-macintosh .text-danger, .theme-macintosh .text-success, .theme-macintosh .text-warning { color: #000000; font-weight: bold; }
.theme-macintosh .top-header-button:hover { background-color: #374151; color: #ffffff; }
.theme-macintosh .top-header-button-danger:hover { background-color: #b91c1c; color: #ffffff; }

/* --- Macintosh風テーマ (ダーク) --- */
.theme-macintosh-dark { font-family: 'Monaco', 'Courier New', monospace; background-color: #000000; color: #ffffff; }
.theme-macintosh-dark .modal-content, .theme-macintosh-dark #priceChart { background-color: #000000; color: #ffffff; border: 2px solid #ffffff; border-radius: 0; box-shadow: none; }
.theme-macintosh-dark .log-window, .theme-macintosh-dark .log-controls { background-color: #0a0a0a; border-top: 2px solid #ffffff; }
.theme-macintosh-dark .log-window { color: #51ff00; }
.theme-macintosh-dark .log-window .log-number { color: #51ff00; font-weight: bold; text-decoration: none; }
.theme-macintosh-dark #gameScreen .top-header, .theme-macintosh-dark .sticky-tabs { background-color: #000000; border-bottom: 2px solid #ffffff; box-shadow: none; }
.theme-macintosh-dark h1, .theme-macintosh-dark h2, .theme-macintosh-dark h3, .theme-macintosh-dark h4 { color: #ffffff; }
.theme-macintosh-dark p, .theme-macintosh-dark label { color: #ffffff; }
.theme-macintosh-dark .tab-link.active { color: #000000; background-color: #ffffff; border-color: #ffffff; }
.theme-macintosh-dark .statement-button.active, .theme-macintosh-dark .font-size-button.active, .theme-macintosh-dark .proposal-checkbox:checked + .proposal-toggle, .theme-macintosh-dark .theme-button.active { background-color: #ffffff; color: #000000; }
.theme-macintosh-dark .statement-table th { background-color: #000000; border-bottom-width: 2px; border-color: #ffffff; }
.theme-macintosh-dark .statement-table tbody tr:nth-child(even) { background-color: #1a1a1a; }
.theme-macintosh-dark .statement-table td { border-bottom: 1px solid #444444; }
.theme-macintosh-dark .statement-table .section-header td { background-color: #222222; color: #ffffff; border-top-color: #ffffff !important; }
.theme-macintosh-dark .w-full.p-2.border { background-color: #000000; border: 1px solid #ffffff; color: #ffffff; }
.theme-macintosh-dark .loan-option input:checked + div { background-color: #222222; border: 2px solid #ffffff; }
.theme-macintosh-dark .proposal-card.selected { border-color: #ffffff; background-color: #222222; }
.theme-macintosh-dark .theme-button, .theme-macintosh-dark #topScreen button, .theme-macintosh-dark #gameScreen .top-header button { background-color: #000000; color: #ffffff; border: 2px solid #ffffff; border-radius: 6px; box-shadow: none; padding: 0.4rem 1rem; }
.theme-macintosh-dark button:hover { background-color: #ffffff; color: #000000; }
.theme-macintosh-dark .close-button { color: #555555; }
.theme-macintosh-dark .text-danger, .theme-macintosh-dark .text-success, .theme-macintosh-dark .text-warning { color: #ffffff; }
.theme-macintosh-dark .top-header-button:hover { background-color: #374151; color: #ffffff; }
.theme-macintosh-dark .top-header-button-danger:hover { background-color: #b91c1c; color: #ffffff; }

.top-header-button, .top-header-button-danger {
    font-size: 0.9rem;
    padding: 0.4rem 0.6rem;
    border-radius: 0.375rem;
}
#financialSummary p {
    display: flex;
    justify-content: space-between;
}
.theme-simple #financialSummary span,
.theme-modern #financialSummary span,
.theme-macintosh-dark #financialSummary span,
.theme-pc98 #financialSummary span {
    font-weight: bold;
    color: #ffffff;
}
.theme-normal #financialSummary span,
.theme-macintosh #financialSummary span {
    font-weight: bold;
    color: #000000;
}
#financialSummary span.text-success { color: #68d391 !important; }
#financialSummary span.text-danger { color: #fc8181 !important; }
.theme-macintosh #financialSummary span.text-success,
.theme-macintosh #financialSummary span.text-danger {
    color: #000000 !important;
}
.phase-action-button {
    background-color: #2563eb;
    color: #ffffff;
    border-color: transparent;
    animation: blink 1.5s ease-in-out infinite;
    cursor: pointer;
}
.phase-action-button:hover {
    background-color: #1d4ed8;
}
/* 主催者ページの右側固定パネル */
.sticky {
    position: -webkit-sticky; /* Safari対応 */
    position: sticky;
}

.top-8 {
    top: 2rem; /* 上からの距離 */
}
#confirmModal {
  z-index: 1020;
}