/* _content/RingiSystem/Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-hsjttzlwfs] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-hsjttzlwfs] {
    flex: 1;
}

.sidebar[b-hsjttzlwfs] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-hsjttzlwfs] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

.top-row[b-hsjttzlwfs]  a, .top-row .btn-link[b-hsjttzlwfs] {
    white-space: nowrap;
    margin-left: 1.5rem;
}

.top-row a:first-child[b-hsjttzlwfs] {
    overflow: hidden;
    text-overflow: ellipsis;
}

.scrollbar-hidden[b-hsjttzlwfs] {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* Internet Explorer & Edge (旧) */
}

.scrollbar-hidden[b-hsjttzlwfs]::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}

.main-border[b-hsjttzlwfs] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #047a61;
    z-index: 1070; /* サイドメニューより上に */
}

@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-hsjttzlwfs] {
        display: none;
    }

    .top-row.auth[b-hsjttzlwfs] {
        justify-content: space-between;
    }

    .top-row a[b-hsjttzlwfs], .top-row .btn-link[b-hsjttzlwfs] {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-hsjttzlwfs] {
        flex-direction: row;
    }

    .sidebar[b-hsjttzlwfs] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-hsjttzlwfs] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row[b-hsjttzlwfs], article[b-hsjttzlwfs] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* ===== Mobile: prevent horizontal scroll (layout level) ===== */
@media (max-width: 767.98px) {

    /* 0) absolutely block horizontal scroll at the root */
    html[b-hsjttzlwfs], body[b-hsjttzlwfs] {
        overflow-x: hidden !important;
        width: 100%;
    }

    /* 1) main content should NOT reserve sidebar width on mobile */
    .main-area[b-hsjttzlwfs] {
        margin-left: 0 !important; /* overrides inline margin-left:240px */
        width: 100% !important;
        max-width: 100% !important;
    }

        /* 2) if a wrapper has overflow-x:auto, kill it */
        .main-border[b-hsjttzlwfs],
        .main-area[b-hsjttzlwfs],
        .main-area .flex-grow-1[b-hsjttzlwfs] {
            overflow-x: hidden !important;
        }

            /* 3) make bootstrap rows/cols not overflow */
            .main-area .row[b-hsjttzlwfs] {
                margin-left: 0 !important;
                margin-right: 0 !important;
            }

                .main-area .row > *[b-hsjttzlwfs] {
                    padding-left: 0.75rem; /* keep normal spacing */
                    padding-right: 0.75rem;
                    max-width: 100%;
                }

            /* 4) safety: avoid any child forcing wide layout */
            .main-area *[b-hsjttzlwfs] {
                max-width: 100%;
            }
}

/* _content/RingiSystem/Components/Layout/Topbar.razor.rz.scp.css */
.navbar[b-2ttkcao375] {
    z-index: 1020;
}

.verification-mode-badge[b-2ttkcao375] {
    background-color: #fee2e2;
    color: #dc2626;
    padding: 6px 12px;
    border-radius: 4px;
    border: 1px solid #fca5a5;
    font-size: 0.95em;
}
/* _content/RingiSystem/Components/Pages/Affiliation/AffiliationListPage.razor.rz.scp.css */
/* 既存のテーブルコンテナに適用 */
.affiliation-matrix[b-hrkbq3rhf3] {
    position: relative;
    overflow: auto;
    max-height: 600px; /* 必要に応じて調整 */
    border-collapse: separate;
    border-spacing: 0;
}

/* ヘッダー行全体を固定 */
.affiliation-matrix thead tr[b-hrkbq3rhf3] {
    position: sticky;
    top: 0;
    z-index: 2;
}

/* ヘッダーの各セル */
.affiliation-matrix thead th[b-hrkbq3rhf3] {
    background-color: white;
    /*        border-bottom: 2px solid #dee2e6;*/
    padding: 0.75rem;
    vertical-align: top;
}

/* 左端の列を固定（データ行のtd） */
.affiliation-matrix tbody .sticky-left[b-hrkbq3rhf3] {
    position: sticky;
    left: 0;
    z-index: 1;
    /*        border-right: 2px solid #dee2e6;*/
}

/* ::deep を使用してTableLayout内の要素にスタイルを適用 */

/* 奇数行のsticky-left列（白背景） */
[b-hrkbq3rhf3] .affiliation-matrix tbody tr:nth-child(odd) .sticky-left {
    background-color: white;
}

/* 偶数行のsticky-left列（縞模様の背景色を明示的に設定） */
[b-hrkbq3rhf3] .affiliation-matrix tbody tr:nth-child(even) .sticky-left {
    background-color: #f9fbfa;
}

/* 左端のヘッダーセル（特別な処理） */
.affiliation-matrix thead .sticky-left-header[b-hrkbq3rhf3] {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 3;
    background-color: white;
    /*        border-right: 2px solid #dee2e6;
            border-bottom: 2px solid #dee2e6;*/
}

/* 右側のヘッダーセル */
.affiliation-matrix thead .sticky-top[b-hrkbq3rhf3] {
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: white;
    /*        border-bottom: 2px solid #dee2e6;*/
}

/* 影効果（視覚的な区切り） */
/*.affiliation-matrix thead .sticky-left-header::after {
    content: '';
    position: absolute;
    top: 0;
    right: -2px;
    height: 100%;
    width: 2px;
    background-color: rgba(0,0,0,0.1);
}

.affiliation-matrix thead .sticky-top::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: rgba(0,0,0,0.1);
}*/
/* _content/RingiSystem/Components/Pages/ApprovalApplication/FormRendering/FormItemWrapper.razor.rz.scp.css */
.form-label.required[b-z8jrwlhrxv]::after,
.col-form-label.required[b-z8jrwlhrxv]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ApprovalApplication/FormRendering/Inputs/CheckboxInput.razor.rz.scp.css */
/* 単一オプション: トグルスイッチスタイル */
.toggle-switch[b-ftynl6wyrk] {
    height: 38px;
    display: flex;
    align-items: center;
}

.toggle-switch .form-check-input[b-ftynl6wyrk] {
    margin-top: 0 !important;
    vertical-align: middle;
    cursor: pointer;
}

.toggle-switch .form-check-input:checked[b-ftynl6wyrk] {
    background-color: #047a61;
    border-color: #047a61;
}

/* ラベルの垂直整列 */
.toggle-label[b-ftynl6wyrk] {
    line-height: 38px;
}
/* _content/RingiSystem/Components/Pages/ApprovalApplication/FormRendering/Inputs/TextAreaInput.razor.rz.scp.css */
.input-with-counter[b-zditieetqc] {
    position: relative;
}

.character-count[b-zditieetqc] {
    position: absolute;
    right: 0;
    top: 100%;
    font-size: 0.875em;
    color: #6c757d;
}
/* _content/RingiSystem/Components/Pages/ApprovalApplication/FormRendering/Inputs/TextBoxInput.razor.rz.scp.css */
.input-with-counter[b-hst8wcaiqv] {
    position: relative;
}

.character-count[b-hst8wcaiqv] {
    position: absolute;
    right: 0;
    top: 100%;
    font-size: 0.875em;
    color: #6c757d;
}
/* _content/RingiSystem/Components/Pages/ApprovalApplication/FormRendering/MobileWizardStepIndicator.razor.rz.scp.css */

.mobile-step-indicator .step-item.current-step[b-xp66gmppo6] {
    background-color: #f8f9fa;
    border-radius: 10px;
}

.mobile-step-indicator .step-item:hover:not(.current-step)[b-xp66gmppo6] {
    background-color: #f8f9fa;
}

.mobile-step-indicator .step-info[b-xp66gmppo6] {
    flex-grow: 1;
}

.mobile-step-indicator .step-title[b-xp66gmppo6] {
    font-size: 0.95rem;
}

.btn-step[b-xp66gmppo6] {
    border: 1px solid var(--bs-secondary);
    background-color: transparent;
    color: var(--bs-secondary);
}

.btn-step.expanded[b-xp66gmppo6] {
    background-color: var(--bs-secondary);
    color: #fff;
}

.btn-step:focus[b-xp66gmppo6],
.btn-step:active[b-xp66gmppo6] {
    box-shadow: none;
}
/* _content/RingiSystem/Components/Pages/ApprovalDetail/ApprovalDetailPage.razor.rz.scp.css */
/* ApprovalDetailPage のスコープ付きスタイル */

/* ページ区切り線 */
[b-sxhtd3p53t] .page-separator {
    border-top: 2px solid #dee2e6;
    margin: 24px 0;
}

/* 決裁ボタンをコンテンツ内に配置 */
.approval-decision-inline[b-sxhtd3p53t] {
    display: flex;
    justify-content: center;
    padding: 16px 0;
    margin-top: 16px;
}

.approval-decision-inline .btn[b-sxhtd3p53t] {
    min-width: 160px;
}
/* _content/RingiSystem/Components/Pages/ApprovalDetail/Components/ApprovalChat.razor.rz.scp.css */
/* チャットエリア全体 */
.approval-chat[b-ro64lwm8j1] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* スクロール可能なメッセージエリア */
.chat-area[b-ro64lwm8j1] {
    height: 350px;
    overflow-y: auto;
    padding: 8px;
    background-color: #f8f9fa;
    border-radius: 4px;
}

/* チャット行 */
.chat-row[b-ro64lwm8j1] {
    display: flex;
    margin-bottom: 10px;
}

.chat-row.right[b-ro64lwm8j1] {
    justify-content: flex-end;
}

/* チャットバブル */
.chat-bubble[b-ro64lwm8j1] {
    width: 85%;
    max-width: 320px;
    min-width: 200px;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 0.9rem;
}

/* 他人のメッセージ（左） */
.chat-left[b-ro64lwm8j1] {
    background-color: #ffffff;
    border: 1px solid #dee2e6;
}

/* 自分のメッセージ（右） */
.chat-right[b-ro64lwm8j1] {
    background-color: #e7f1ff;
    border: 1px solid #b6d4fe;
}

/* バブルヘッダー（日時・削除アイコン） */
.chat-header[b-ro64lwm8j1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
}

/* 投稿者名 */
.chat-author[b-ro64lwm8j1] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #495057;
}

/* メタ情報（日時） */
.chat-meta[b-ro64lwm8j1] {
    font-size: 0.7rem;
    color: #6c757d;
    white-space: nowrap;
}

/* メッセージ本文 */
.chat-content[b-ro64lwm8j1] {
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: pre-wrap;
    line-height: 1.4;
}

/* システムメッセージ */
.chat-system[b-ro64lwm8j1] {
    text-align: center;
    font-size: 0.8rem;
    color: #6c757d;
    margin: 12px 0;
}

/* コメントなし決裁履歴（システムメッセージ形式） */
.chat-decision-only[b-ro64lwm8j1] {
    text-align: center;
    font-size: 0.8rem;
    color: #495057;
    margin: 12px 0;
    padding: 6px 12px;
    background-color: #e9ecef;
    border-radius: 16px;
    display: inline-block;
    width: 100%;
}

/* 削除アイコン */
.chat-delete[b-ro64lwm8j1] {
    color: #adb5bd;
    font-size: 0.85rem;
    cursor: pointer;
    flex-shrink: 0;
}

.chat-delete:hover[b-ro64lwm8j1] {
    color: #dc3545;
}

/* バブルラッパー */
.chat-bubble-wrapper[b-ro64lwm8j1] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 320px;
}

.chat-row.right .chat-bubble-wrapper[b-ro64lwm8j1] {
    align-items: flex-end;
}

/* 決裁アクションバッジ */
.decision-action-badge[b-ro64lwm8j1] {
    display: inline-block;
    background-color: #6c757d;
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 10px;
    margin-bottom: 4px;
}

/* 編集中バブル：コメント領域の約 50% まで広げる */
.chat-bubble-wrapper.is-editing[b-ro64lwm8j1] {
    width: 50%;
    max-width: 50%;
    min-width: 280px;
}

.chat-bubble-wrapper.is-editing .chat-bubble[b-ro64lwm8j1] {
    width: 100%;
    max-width: none;
    min-width: 0;
}

/* 編集テキストエリア：3行表示・縦スクロール・縦リサイズ可 */
.chat-edit-textarea[b-ro64lwm8j1] {
    width: 100%;
    min-height: 4.8em;
    max-height: 200px;
    overflow-y: auto;
    resize: vertical;
    font: inherit;
    box-sizing: border-box;
    margin-bottom: 8px;
}

.chat-edit-actions[b-ro64lwm8j1] {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
}

/* レスポンシブ対応 */
@media (max-width: 576px) {
    .chat-bubble[b-ro64lwm8j1] {
        width: 90%;
        max-width: none;
    }

    /* モバイルでは編集中バブルをほぼ全幅に */
    .chat-bubble-wrapper.is-editing[b-ro64lwm8j1] {
        width: 90%;
        max-width: 90%;
        min-width: 0;
    }
}
/* _content/RingiSystem/Components/Pages/ApprovalDetail/Components/ApprovalFlowProgress.razor.rz.scp.css */
/* CSS変数定義（Bootstrapカラーに準拠） */
.approval-flow-progress[b-6x2a70u79a] {
    --flow-color-success: #198754;
    --flow-color-danger: #dc3545;
    --flow-color-warning: #ffc107;
    --flow-color-primary: #0d6efd;
    --flow-color-info: #0dcaf0;
    --flow-color-secondary: #6c757d;
    --flow-color-light-gray: #adb5bd;
    --flow-color-lighter-gray: #dee2e6;
    --flow-color-lightest-gray: #e9ecef;
    --flow-color-text: #333;
    --flow-color-text-muted: #495057;
    --flow-color-text-secondary: #6c757d;
}

/* フロー進捗全体 */
.approval-flow-progress[b-6x2a70u79a] {
    padding: 0.5rem 0;
    padding-left: 0.5rem;
}

/* フローアイテム（申請者、ステップ、完了） */
.flow-item[b-6x2a70u79a] {
    position: relative;
    padding-left: 2rem;
    padding-bottom: 1rem;
    margin-left: 8px;
    border-left: 2px solid var(--flow-color-lighter-gray);
}

.flow-item:last-child[b-6x2a70u79a] {
    border-left-color: transparent;
    padding-bottom: 0;
}

/* フローのドット */
.flow-dot[b-6x2a70u79a] {
    position: absolute;
    top: 0.15rem;
    left: -9px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: var(--flow-color-secondary);
    box-shadow: 0 0 0 3px #fff;
}

/* 完了状態のドット（緑色） */
.flow-item.completed .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-success);
}

/* 現在処理中のドット（緑色 + 点滅） */
.flow-item.current .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-success);
    animation: pulse-b-6x2a70u79a 1.5s infinite;
}

@keyframes pulse-b-6x2a70u79a {
    0% { box-shadow: 0 0 0 3px #fff, 0 0 0 6px rgba(25, 135, 84, 0.3); }
    50% { box-shadow: 0 0 0 3px #fff, 0 0 0 10px rgba(25, 135, 84, 0.1); }
    100% { box-shadow: 0 0 0 3px #fff, 0 0 0 6px rgba(25, 135, 84, 0.3); }
}

/* 未到達状態のドット */
.flow-item.not-reached .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-light-gray);
}

/* スキップ状態のドット */
.flow-item.skipped .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-secondary);
    opacity: 0.5;
}

/* フロータイトル */
.flow-title[b-6x2a70u79a] {
    font-weight: 600;
    font-size: 0.95rem;
    margin-bottom: 0.25rem;
    color: var(--flow-color-text);
}

/* 完了したステップのタイトル */
.flow-item.completed .flow-title[b-6x2a70u79a] {
    color: var(--flow-color-success);
}

/* 現在処理中のステップのタイトル */
.flow-item.current .flow-title[b-6x2a70u79a] {
    color: var(--flow-color-success);
    font-weight: 700;
}

/* フローコンテンツ */
.flow-content[b-6x2a70u79a] {
    line-height: 1.4;
}

/* 申請者情報 */
.flow-approver[b-6x2a70u79a] {
    font-size: 0.875rem;
    color: var(--flow-color-text-muted);
    margin-left: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.flow-approver i[b-6x2a70u79a] {
    font-size: 1rem;
    color: var(--flow-color-text-secondary);
}

/* 日時表示 */
.flow-datetime[b-6x2a70u79a],
.node-datetime[b-6x2a70u79a] {
    font-size: 0.75rem;
    color: var(--flow-color-text-secondary);
    margin-left: 1rem;
    margin-top: 0.125rem;
}

/* 並列フロー開始インジケーター */
.parallel-indicator[b-6x2a70u79a] {
    margin-left: 2.5rem;
    margin-bottom: 0.75rem;
    padding: 0.375rem 0.75rem;
    background-color: #e8f4fc;
    border-left: 3px solid var(--flow-color-primary);
    font-size: 0.85rem;
    color: var(--flow-color-primary);
    font-weight: 500;
}

/* マージポイントヘッダー */
.merge-header[b-6x2a70u79a] {
    margin-left: 2.5rem;
    margin-bottom: 0.5rem;
    padding: 0.375rem 0.75rem;
    background-color: #f8f9fa;
    border: 1px dashed var(--flow-color-light-gray);
    border-radius: 4px;
    font-size: 0.85rem;
    color: var(--flow-color-text-muted);
    font-weight: 500;
}

/* ノードコンテナ */
.nodes-container[b-6x2a70u79a] {
    margin-left: 0.5rem;
    margin-top: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.nodes-container.sequential[b-6x2a70u79a] {
    gap: 0;
}

/* ノードアイテム */
.node-item[b-6x2a70u79a] {
    position: relative;
    padding-left: 1.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

/* 順次ステップのノード間コネクター（疑似要素で実現） */
.nodes-container.sequential .node-item:not(:last-child)[b-6x2a70u79a]::before {
    content: '';
    position: absolute;
    left: 4px;
    top: 0.625rem;
    bottom: -0.25rem;
    width: 2px;
    background-color: var(--flow-color-light-gray);
    z-index: 0;
}

/* ノードドット */
.node-dot[b-6x2a70u79a] {
    position: absolute;
    z-index: 1;
    top: 0.375rem;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--flow-color-light-gray);
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px var(--flow-color-light-gray);
}

/* ノード状態別ドット色 */
.node-item.completed .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-success);
    box-shadow: 0 0 0 1px var(--flow-color-success);
}

.node-item.current .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-success);
    box-shadow: 0 0 0 1px var(--flow-color-success);
    animation: node-pulse-b-6x2a70u79a 1.5s infinite;
}

@keyframes node-pulse-b-6x2a70u79a {
    0% { box-shadow: 0 0 0 1px #198754, 0 0 0 4px rgba(25, 135, 84, 0.3); }
    50% { box-shadow: 0 0 0 1px #198754, 0 0 0 6px rgba(25, 135, 84, 0.1); }
    100% { box-shadow: 0 0 0 1px #198754, 0 0 0 4px rgba(25, 135, 84, 0.3); }
}

.node-item.denied .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-danger);
    box-shadow: 0 0 0 1px var(--flow-color-danger);
}

.node-item.rejected .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-warning);
    box-shadow: 0 0 0 1px var(--flow-color-warning);
}

.node-item.skipped .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-secondary);
    box-shadow: 0 0 0 1px var(--flow-color-secondary);
    opacity: 0.5;
}

/* 通過承認（PassThroughApprove）のノードドット */
.node-item.pass-through .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-info);
    box-shadow: 0 0 0 1px var(--flow-color-info);
}

.node-item.not-reached .node-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-lightest-gray);
    box-shadow: 0 0 0 1px var(--flow-color-light-gray);
}

/* ノードコンテンツ */
.node-content[b-6x2a70u79a] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.875rem;
}

/* ノードヘッダー（ノード名とステータスバッジ） */
.node-header[b-6x2a70u79a] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.node-name[b-6x2a70u79a] {
    font-weight: 500;
    color: var(--flow-color-text-muted);
}

/* 承認者リスト（複数承認者を縦に並べる） */
.approvers-list[b-6x2a70u79a] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    margin-left: 0.5rem;
}

.approver[b-6x2a70u79a] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--flow-color-text-secondary);
}

.approver i[b-6x2a70u79a] {
    font-size: 0.875rem;
}

.position-name[b-6x2a70u79a] {
    color: var(--flow-color-text-secondary);
    font-size: 0.8rem;
}

/* 役職範囲ラベル（グループ承認者用） */
.position-range[b-6x2a70u79a] {
    color: var(--flow-color-text-secondary);
    font-size: 0.8rem;
    margin-left: 0.25rem;
}

/* ステータスバッジ */
.status-badge[b-6x2a70u79a] {
    font-size: 0.7rem;
    padding: 0.125rem 0.5rem;
    border-radius: 10px;
    white-space: nowrap;
}

/* ノード間コネクター（順次ステップ用） - 疑似要素に置き換え済み */
.node-connector[b-6x2a70u79a] {
    display: none;
}

/* 次ステップインジケーター */
.next-step-indicator[b-6x2a70u79a] {
    margin-top: 0.5rem;
    margin-left: 0.5rem;
    font-size: 0.8rem;
    color: var(--flow-color-primary);
    font-weight: 500;
}

/* 完了セクション */
.flow-item.completion .flow-content[b-6x2a70u79a] {
    font-weight: 600;
    color: var(--flow-color-text-secondary);
    display: flex;
    align-items: center;
}

.flow-item.completion.completed .flow-content[b-6x2a70u79a] {
    color: var(--flow-color-success);
}

.flow-item.completion.completed .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-success);
}

/* 中止セクション */
.flow-item.completion.suspended .flow-content[b-6x2a70u79a] {
    color: var(--flow-color-danger);
}

.flow-item.completion.suspended .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-danger);
}

/* 中止時はアニメーションを停止 */
.approval-flow-progress.is-suspended .flow-item.current .flow-dot[b-6x2a70u79a] {
    animation: none;
    background-color: var(--flow-color-secondary);
}

.approval-flow-progress.is-suspended .flow-item.current .flow-title[b-6x2a70u79a] {
    color: var(--flow-color-secondary);
    font-weight: 600;
}

.approval-flow-progress.is-suspended .node-item.current .node-dot[b-6x2a70u79a] {
    animation: none;
    background-color: var(--flow-color-secondary);
    box-shadow: 0 0 0 1px var(--flow-color-secondary);
}

/* ===== PDF発行ステータスセクション ===== */

/* PDF発行ステータス共通 */
.flow-item.pdf-status .flow-content[b-6x2a70u79a] {
    font-weight: 600;
    display: flex;
    align-items: center;
}

/* PDF発行済（緑色） */
.flow-item.pdf-status.completed .flow-content[b-6x2a70u79a] {
    color: var(--flow-color-success);
}

.flow-item.pdf-status.completed .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-success);
}

/* PDF発行中（青色 + 点滅アニメーション） */
.flow-item.pdf-status.in-progress .flow-content[b-6x2a70u79a] {
    color: var(--flow-color-primary);
}

.flow-item.pdf-status.in-progress .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-primary);
    animation: pulse-blue-b-6x2a70u79a 1.5s infinite;
}

@keyframes pulse-blue-b-6x2a70u79a {
    0% { box-shadow: 0 0 0 3px #fff, 0 0 0 6px rgba(13, 110, 253, 0.3); }
    50% { box-shadow: 0 0 0 3px #fff, 0 0 0 10px rgba(13, 110, 253, 0.1); }
    100% { box-shadow: 0 0 0 3px #fff, 0 0 0 6px rgba(13, 110, 253, 0.3); }
}

/* PDF発行失敗（赤色） */
.flow-item.pdf-status.failed .flow-content[b-6x2a70u79a] {
    color: var(--flow-color-danger);
}

.flow-item.pdf-status.failed .flow-dot[b-6x2a70u79a] {
    background-color: var(--flow-color-danger);
}

/* モバイル対応：役職範囲ラベルを改行表示 */
@media (max-width: 767px) {
    .approver[b-6x2a70u79a] {
        flex-wrap: wrap;
    }

    .position-range[b-6x2a70u79a] {
        width: 100%;
        margin-left: 1.125rem;
    }
}
/* _content/RingiSystem/Components/Pages/ApprovalDetail/Components/ApprovalTimeline.razor.rz.scp.css */
/* タイムライン全体 */
.approval-timeline[b-u6qy5qww2c] {
    padding: 0.25rem 0;
    padding-left: 0.5rem;
}

/* タイムラインのステップ */
.timeline-step[b-u6qy5qww2c] {
    position: relative;
    padding-left: 2rem;
    padding-bottom: 0.75rem;
    margin-left: 8px; /* ドットの半径分 */
    border-left: 2px solid #dee2e6;
}

/* 最後のステップの下線を消す */
.timeline-step:last-child[b-u6qy5qww2c] {
    border-left-color: transparent;
    padding-bottom: 0;
}

/* タイムラインのドット */
.timeline-step[b-u6qy5qww2c]::before {
    content: "";
    position: absolute;
    /* h5のline-heightに合わせて垂直中央に配置 (約0.5emで調整) */
    top: 0.15rem;
    /* ドット(16px)の中心を border-left(2px) の中心に合わせる: -1px - 8px = -9px */
    left: -9px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #6c757d;
    /* 線との視覚的分離のための白い縁取り */
    box-shadow: 0 0 0 3px #fff;
}

/* 完了したステップのドット（緑色） */
.timeline-step.completed[b-u6qy5qww2c]::before {
    background-color: #198754;
}

/* ステップ見出し */
.timeline-step h5[b-u6qy5qww2c] {
    font-weight: 600;
    margin-bottom: 0.25rem;
    font-size: 0.95rem;
    line-height: 1.2;
}

/* 承認者行（アイコン、名前、バッジを横並び） */
.approver[b-u6qy5qww2c] {
    margin-left: 0.75rem;
    margin-bottom: 0.125rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* 承認者アイコン */
.approver i[b-u6qy5qww2c] {
    font-size: 1.1rem;
    color: #6c757d;
}

/* ステータスバッジ */
.approver .status[b-u6qy5qww2c] {
    font-size: 0.75rem;
}

/* 日時表示 */
.datetime[b-u6qy5qww2c] {
    font-size: 0.75rem;
    color: #6c757d;
    margin-left: 2.5rem;
    margin-bottom: 0.25rem;
}
/* _content/RingiSystem/Components/Pages/ApprovalDetail/Tabs/ApprovalFormContentTab.razor.rz.scp.css */
.page-separator[b-h1n6hx0xmv] {
    border: 0;
    border-top: 2px solid #dee2e6;
    margin: 24px 0;
}

.page-title[b-h1n6hx0xmv] {
    font-size: 1rem;
    font-weight: 600;
}
/* _content/RingiSystem/Components/Pages/ApprovalGroup/ApprovalGroupDetailPage.razor.rz.scp.css */
/* タブとして機能しうる要素を一括で無効化 */
#tabs-approvergroupdetail.lock-others .nav a[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others .nav button[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others .nav .nav-link[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others .tab-headers > *[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others .tab-headers .tab-header[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others [data-tab][b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others [role="tab"][b-v5h6fyrkcu] {
    pointer-events: none !important;
    opacity: .5 !important;
    cursor: not-allowed !important;
}

/* その中で .active が付いているタブだけは通常どおりクリック可 */
#tabs-approvergroupdetail.lock-others .nav .active[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others .tab-headers .active[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others .tab-headers > .active[b-v5h6fyrkcu],
#tabs-approvergroupdetail.lock-others [role="tab"].active[b-v5h6fyrkcu] {
    pointer-events: auto !important;
    opacity: 1 !important;
    cursor: default !important;
}

/* レイアウトはおまけ（必要なら維持） */
#tabs-approvergroupdetail[b-v5h6fyrkcu] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

#tabs-approvergroupdetail .nav[b-v5h6fyrkcu] {
    flex: 0 0 auto;
    margin-bottom: .5rem;
}

#tabs-approvergroupdetail .tab-content[b-v5h6fyrkcu],
#tabs-approvergroupdetail .tab-body[b-v5h6fyrkcu],
#tabs-approvergroupdetail > :not(.nav)[b-v5h6fyrkcu] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    overflow-x: hidden;
    scrollbar-gutter: stable both-edges;
    -webkit-overflow-scrolling: touch;
}
/* _content/RingiSystem/Components/Pages/ApprovalGroup/ApprovalGroupSearchForm.razor.rz.scp.css */
/* SearchAccordion.razor.css に移動済み */
/* _content/RingiSystem/Components/Pages/ApprovalGroup/Tabs/ApprovalGroupBasicInfoTab.razor.rz.scp.css */
.required[b-noqcj9yaam]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ApprovalSearch/ApprovalList.razor.rz.scp.css */
/*
  hover-shadow は NewTabLink (子コンポーネント) の CssClass として渡されるため、
  親側のスコープ属性 (b-xxx) が付かない。::deep で貫通させる。
*/

[b-p62hln2bm6] .hover-shadow {
    transition: transform 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

[b-p62hln2bm6] .hover-shadow:hover {
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1) !important;
    transform: scale(1.005);
}
/* _content/RingiSystem/Components/Pages/ApprovalSearch/ApprovalSearchFormItemConditionFragment.razor.rz.scp.css */
.col-item-name[b-hhu4whm6m3] {
    width: 28%;
}

.col-item-type[b-hhu4whm6m3] {
    width: 12%;
    white-space: nowrap;
}

.col-item-condition[b-hhu4whm6m3] {
    width: 15%;
    white-space: nowrap;
}

.col-item-value[b-hhu4whm6m3] {
    width: 45%;
}
/* _content/RingiSystem/Components/Pages/ApprovalSearch/ApprovalSearchHeader.razor.rz.scp.css */
/* 検索条件タグのスタイル */
.search-condition-tag[b-qguwd8eskp] {
    max-width: 300px;
}

/* テキストコンテンツのトランケーション */
.search-condition-text[b-qguwd8eskp] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* _content/RingiSystem/Components/Pages/Auth/Login.razor.rz.scp.css */
hr[b-yyp5h2k5jo] {
    opacity: .15;
    margin: 0;
}

/* このログインページだけに適用 */
.login-page .form-label[b-yyp5h2k5jo] {
    margin-bottom: .4rem;
}

/* ラベル下の余白 */
.login-page .mb-3[b-yyp5h2k5jo] {
    margin-bottom: 1.1rem !important;
}

/* フィールド間の余白 */
.login-page .form-control[b-yyp5h2k5jo] {
    height: 48px; /* テキストボックスの高さ */
    padding: 10px 14px; /* 内側の余白（上下/左右） */
    line-height: 1.4; /* 文字の行間（見やすさ） */
}

/* ボタン周りの余白（任意） */
.login-page .btn.w-100[b-yyp5h2k5jo] {
    padding-top: .7rem;
    padding-bottom: .7rem;
}

.brand-title[b-yyp5h2k5jo] {
    color: #000 !important; /* スクショの緑 */
}

[b-yyp5h2k5jo] .validation-errors {
    padding-left: 0;
    list-style: none;
    white-space: pre-line;
}

[b-yyp5h2k5jo] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-yyp5h2k5jo] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-yyp5h2k5jo] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

/* Mobile: no border/shadow */
@media (max-width: 576px) {
    .login-page .login-card[b-yyp5h2k5jo] {
        border: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }
}


/* _content/RingiSystem/Components/Pages/BaseGroup/BaseGroupDetailPage.razor.rz.scp.css */
.form-label.required[b-94427xqijl]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/BaseGroup/BaseGroupSearchForm.razor.rz.scp.css */
/* カード内部のレイアウト調整 */
.search-card-body[b-yz5160qbn5] {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 1rem;
}

.search-card-body-content[b-yz5160qbn5] {
    flex: 1;
}

.search-card-body-actions[b-yz5160qbn5] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    margin-top: 1rem;
}

/* SearchAccordion.razor.css に移動済み */
/* _content/RingiSystem/Components/Pages/BaseGroup/BaseGroupSearchPage.razor.rz.scp.css */
/* OFF（未チェック）時の hover/focus を "すごく薄いグレー" に */
.authority-search .btn-check:not(:checked) + .btn-outline-secondary:hover[b-vh4vj7noxd],
.authority-search .btn-check:not(:checked) + .btn-outline-secondary:focus[b-vh4vj7noxd] {
    /*background-color: #f5f5f5 !important;*/
    border-color: #e5e5e5 !important;
    color: #333 !important;
}

/* ON（チェック済み）は濃いグレーで明確に */
.authority-search .btn-check:checked + .btn-outline-secondary[b-vh4vj7noxd] {
    /*background-color: #6c757d !important;*/
    border-color: #6c757d !important;
    color: #fff !important;
}

/* クリック時の押し込み感（active） */
.authority-search .btn-check:not(:checked) + .btn-outline-secondary:active[b-vh4vj7noxd] {
    /*background-color: #ececec !important;*/
    border-color: #e0e0e0 !important;
    color: #333 !important;
}

/* フォーカス時の青い枠/影（Bootstrapの box-shadow）を消す */
.authority-search .btn-check:focus + .btn-outline-secondary[b-vh4vj7noxd],
.authority-search .btn-check:focus-visible + .btn-outline-secondary[b-vh4vj7noxd],
.authority-search .btn-outline-secondary:focus[b-vh4vj7noxd],
.authority-search .btn-outline-secondary:focus-visible[b-vh4vj7noxd],
.authority-search .btn-outline-secondary:active:focus[b-vh4vj7noxd],
.authority-search .btn-check:checked + .btn-outline-secondary:focus[b-vh4vj7noxd] {
    outline: none !important;
    box-shadow: none !important;
}

/* 申請フォーム選択時：非活性でも “状態固定” を視認しやすく
   （checked の見た目は維持、カーソルは禁止、クリック不可） */
.authority-search .btn-check:disabled + .btn-outline-secondary[b-vh4vj7noxd] {
    opacity: 1; /* デフォの薄暗さを解除して視認性UP */
    cursor: not-allowed;
    pointer-events: none; /* ラベルクリック無効 */
}

/* キーワード欄を横幅100%に */
.form-control.w-100[b-vh4vj7noxd] {
    width: 100% !important;
}

/* 権限検索カード全体に余白を付与（縦横ともに広め） */
.authority-search .card-body[b-vh4vj7noxd] {
    padding: 1rem 1rem !important; /* 上下左右32pxずつ */
}

/* 各入力行に少し余裕を追加 */
.authority-search .row[b-vh4vj7noxd] {
    margin-bottom: 1rem;
}


/* Popup 内の選択行を水色にする */
.target-picker .table-active[b-vh4vj7noxd] {
    background-color: #cfe2ff !important;
}
/* _content/RingiSystem/Components/Pages/BaseGroup/Tabs/BaseGroupBasicInfoTab.razor.rz.scp.css */
.required[b-gtwhqb3aoo]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/Changelog/ChangelogList.razor.rz.scp.css */
/* 現在のバージョン用スタイル */
.current-version[b-nfylr07bd0] {
    border-color: #047a61 !important;
}

.current-version-header[b-nfylr07bd0] {
    background-color: #047a61;
    color: white;
}

.current-version-badge[b-nfylr07bd0] {
    background-color: white !important;
    color: #047a61 !important;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Accordion.razor.rz.scp.css */
.accordion-button[b-2wavdictn3] {
    box-shadow: none !important;
}

.accordion-button:hover[b-2wavdictn3],
.accordion-button:focus[b-2wavdictn3] {
    outline: none !important;
}

.accordion-icon[b-2wavdictn3] {
    display: inline-block;
    transition: transform 0.2s ease-in-out;
}

.accordion-button.collapsed .accordion-icon[b-2wavdictn3] {
    transform: rotate(0deg);
}

.accordion-button:not(.collapsed) .accordion-icon[b-2wavdictn3] {
    transform: rotate(90deg);
}
/* _content/RingiSystem/Components/Pages/ChildComponent/BottomSheet.razor.rz.scp.css */
.overlay[b-u1xwn5q5h2] {
    z-index: 1900;
}

.bottomSheet-slide[b-u1xwn5q5h2] {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: 0;
    height: calc(100vh - 20px);
    height: calc(100dvh - 20px);
    background: #fff;
    border: 1px solid #ccc;
    z-index: 1901;
    overflow: hidden;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    transform: translateY(100%);
    opacity: 0;
}
    .bottomSheet-slide.with-animation[b-u1xwn5q5h2] {
        transition: transform 0.35s cubic-bezier(.25,.8,.25,1), opacity 0.35s ease;
    }

    .bottomSheet-slide.show[b-u1xwn5q5h2] {
        transform: translateY(0);
        opacity: 1;
    }

    .bottomSheet-slide.close[b-u1xwn5q5h2] {
        transform: translateY(100%);
        opacity: 0;
    }

.bottomSheet-mobile[b-u1xwn5q5h2] {
    left: 0;
    right: 0;
}

.drag-area[b-u1xwn5q5h2] {
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    cursor: pointer;
    user-select: none;
    touch-action: none;
}

.close-handle[b-u1xwn5q5h2] {
    width: 40px;
    height: 4px;
    background-color: #ccc;
    border-radius: 2px;
    margin: 8px auto;
    transition: background-color 0.25s;
}

    .close-handle:hover[b-u1xwn5q5h2] {
        background-color: #999;
    }

.bottomSheet-content[b-u1xwn5q5h2] {
    height: calc(100% - 20px);
    overflow-y: auto;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputDate.razor.rz.scp.css */
.form-label.required[b-m54ccszu5j]::after,
.col-form-label.required[b-m54ccszu5j]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputDateOnly.razor.rz.scp.css */
.form-label.required[b-gg4w1t045m]::after,
.col-form-label.required[b-gg4w1t045m]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputDecimalOnInput.razor.rz.scp.css */
.form-label.required[b-n2y0knwcpg]::after,
.col-form-label.required[b-n2y0knwcpg]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputIntegerNullable.razor.rz.scp.css */
.form-label.required[b-qof0se4wy4]::after,
.col-form-label.required[b-qof0se4wy4]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputIntegerNullableOnInput.razor.rz.scp.css */
.form-label.required[b-qyv3ck00pc]::after,
.col-form-label.required[b-qyv3ck00pc]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputIntegerOnChange.razor.rz.scp.css */
.form-label.required[b-hdy13z4g15]::after,
.col-form-label.required[b-hdy13z4g15]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputIntegerOnInput.razor.rz.scp.css */
.form-label.required[b-rf6cmv19q4]::after,
.col-form-label.required[b-rf6cmv19q4]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputPassword.razor.rz.scp.css */
.form-label.required[b-zojxkpsrwr]::after,
.col-form-label.required[b-zojxkpsrwr]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputTextAreaOnInput.razor.rz.scp.css */
.form-label.required[b-kazz7ylxra]::after,
.col-form-label.required[b-kazz7ylxra]::after {
    content: " *";
    color: red;
}

.input-with-counter[b-kazz7ylxra] {
    position: relative;
}

.character-count[b-kazz7ylxra] {
    position: absolute;
    right: 0;
    top: 100%;
    font-size: 0.875em;
    color: #6c757d;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputTextOnChange.razor.rz.scp.css */
.form-label.required[b-tmyyi3zmv9]::after,
.col-form-label.required[b-tmyyi3zmv9]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputTextOnInput.razor.rz.scp.css */
.form-label.required[b-9wmmdyr1po]::after,
.col-form-label.required[b-9wmmdyr1po]::after {
    content: " *";
    color: red;
}

.input-with-counter[b-9wmmdyr1po] {
    position: relative;
}

.character-count[b-9wmmdyr1po] {
    position: absolute;
    right: 0;
    top: 100%;
    font-size: 0.875em;
    color: #6c757d;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputTime.razor.rz.scp.css */
.time-icon-btn[b-n2rnwx8pla] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    line-height: 1;

    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.time-clock-btn[b-n2rnwx8pla] {
    right: 0.4rem;
    opacity: 1;
    color: #000000;
}

.time-clock-btn i[b-n2rnwx8pla] {
    font-size: 0.80rem;
}

.time-clear-btn[b-n2rnwx8pla] {
    right: 1.7rem;
    opacity: 0.7;
    color: #212529;
}

.time-clear-btn i[b-n2rnwx8pla] {
    font-size: 0.80rem;
}

.time-clear-btn:hover[b-n2rnwx8pla] {
    opacity: 1;
}

.time-clear-btn.is-empty[b-n2rnwx8pla] {
    opacity: 0;
    pointer-events: none;
}

.time-input[b-n2rnwx8pla]::-webkit-calendar-picker-indicator {
    opacity: 0;
}

.form-label.required[b-n2rnwx8pla]::after,
.col-form-label.required[b-n2rnwx8pla]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputTimeRange.razor.rz.scp.css */
.time-icon-btn[b-bf7my8wq7t] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    line-height: 1;

    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.time-clock-btn[b-bf7my8wq7t] {
    right: 0.4rem;
    opacity: 1;
    color: #000000;
}

.time-clock-btn i[b-bf7my8wq7t] {
    font-size: 0.80rem;
}

.time-clear-btn[b-bf7my8wq7t] {
    right: 1.7rem;
    opacity: 0.7;
    color: #212529;
}

.time-clear-btn i[b-bf7my8wq7t] {
    font-size: 0.80rem; 
}

.time-clear-btn:hover[b-bf7my8wq7t] {
    opacity: 1;
}

.time-clear-btn.is-empty[b-bf7my8wq7t] {
    opacity: 0;
    pointer-events: none;
}

.time-input[b-bf7my8wq7t]::-webkit-calendar-picker-indicator {
    opacity: 0;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/InputToggleSwitch.razor.rz.scp.css */
.form-label.required[b-fcaerm6equ]::after,
.col-form-label.required[b-fcaerm6equ]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/PasswordSetupField.razor.rz.scp.css */
.form-label.required[b-sf0ezx42po]::after,
.col-form-label.required[b-sf0ezx42po]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/PositionRangeSelector.razor.rz.scp.css */
.form-label.required[b-31vj09pgsw]::after,
.col-form-label.required[b-31vj09pgsw]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/RingiCheckbox.razor.rz.scp.css */
.form-check[b-i4kxufadl0] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.form-check-input[b-i4kxufadl0] {
    margin-top: 0;
    flex-shrink: 0;
}

.form-check-label[b-i4kxufadl0] {
    margin-bottom: 0;
    line-height: 1.2;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/RingiFileUpload.razor.rz.scp.css */
.form-label.required[b-qzhggksszx]::after,
.col-form-label.required[b-qzhggksszx]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/RingiInputFile.razor.rz.scp.css */
.form-label.required[b-wp11t473qc]::after,
.col-form-label.required[b-wp11t473qc]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/Selectors/BooleanSelect.razor.rz.scp.css */
.form-label.required[b-8najsj5ph4]::after,
.col-form-label.required[b-8najsj5ph4]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/Selectors/EnumSelect.razor.rz.scp.css */
.form-label.required[b-jy81gdndfr]::after,
.col-form-label.required[b-jy81gdndfr]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/Selectors/LookupSelect.razor.rz.scp.css */
.form-label.required[b-lljx63g0ed]::after,
.col-form-label.required[b-lljx63g0ed]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/Selectors/QuickSearchField.razor.rz.scp.css */
.form-label.required[b-ezh8g6gqgq]::after,
.col-form-label.required[b-ezh8g6gqgq]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/Selectors/SearchFieldLayout.razor.rz.scp.css */
.form-label.required[b-new8o7lsdo]::after,
.col-form-label.required[b-new8o7lsdo]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Controls/UrlInputOnInput.razor.rz.scp.css */
.form-label.required[b-najr9a48ws]::after,
.col-form-label.required[b-najr9a48ws]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/DragAndDropGrid.razor.rz.scp.css */
.draggable-item[b-lgjh1vcrw5] {
    user-select: none;
    -webkit-user-select: none;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Fragment.razor.rz.scp.css */
.overlay[b-nfq3hy5ho9] {
    z-index: 1900;
}

/* 下からスライドして開く */
.fragment-slide[b-nfq3hy5ho9] {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: 0;
    height: calc(100vh - 20px);
    height: calc(100dvh - 20px);
    background: #fff;
    border: 1px solid #ccc;
    z-index: 1901;
    overflow: auto;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    transform: translateY(100%);
    opacity: 0;
}

.fragment-slide.with-animation[b-nfq3hy5ho9] {
    transition: transform 0.35s cubic-bezier(.25, .8, .25, 1), opacity 0.35s ease;
}

/* 開いた状態 */
.fragment-slide.show[b-nfq3hy5ho9] {
    transform: translateY(0);
    opacity: 1;
}

/* 閉じた状態 */
.fragment-slide.close[b-nfq3hy5ho9] {
    transform: translateY(100%);
    opacity: 0;
}

.close-handle[b-nfq3hy5ho9] {
    width: 40px;
    height: 4px;
    background-color: #ccc;
    border-radius: 2px;
    margin: 8px auto; /* 上下8pxで中央寄せ */
    cursor: pointer;
    transition: background-color 0.25s;
}

.close-handle:hover[b-nfq3hy5ho9] {
    background-color: #999;
}

.fixed-close-handle[b-nfq3hy5ho9] {
    position: sticky;
    top: 0;
    z-index: 20;
}

.fragment-content[b-nfq3hy5ho9] {
    height: calc(100% - 20px);
    overflow-y: auto;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/InfoDisplayRow.razor.rz.scp.css */
.info-display-label[b-od3albv4jt] {
    width: 20%;
}

@media (max-width: 991px) {
    .info-display-label[b-od3albv4jt] {
        display: block;
        width: 100%;
        border: none;
        background: none;
        padding: 0.75rem 0.75rem 0;
        font-size: 0.8rem;
        color: #6c757d;
    }

    td[b-od3albv4jt] {
        display: block;
        width: 100%;
        border: none;
        padding: 0.25rem 0.75rem 0.75rem;
        word-break: break-word;
    }

    tr[b-od3albv4jt] {
        display: block;
        border-bottom: 1px solid #dee2e6;
    }

    tr:last-child[b-od3albv4jt] {
        border-bottom: none;
    }
}
/* _content/RingiSystem/Components/Pages/ChildComponent/InfoDisplayTable.razor.rz.scp.css */
@media (max-width: 991px) {
    table[b-hiytjkrb55] {
        display: block;
        border: none;
    }

    tbody[b-hiytjkrb55] {
        display: block;
    }
}
/* _content/RingiSystem/Components/Pages/ChildComponent/SavingPopup.razor.rz.scp.css */
.saving-spinner[b-4xphrfo0ly] {
    color: #047a61;
}

.saving-text[b-4xphrfo0ly] {
    color: #047a61;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/SearchAccordion.razor.rz.scp.css */
/*
 * SearchAccordion の高さ調整用CSS
 *
 * 複数のSearchAccordionが横並びで配置される場合（align-items-stretch）、
 * 高さを揃えるために MatchHeight="true" を指定する。
 *
 * MatchHeight を指定しない場合（単独使用時など）は、
 * コンテンツに応じた高さになる。
 */

/* MatchHeight="true" の場合のみ height: 100% を適用 */
.match-height[b-98tk0o0aux] {
    height: 100%;
}

.match-height[b-98tk0o0aux]  .accordion,
.match-height[b-98tk0o0aux]  .accordion-item,
.match-height[b-98tk0o0aux]  .accordion-collapse.show,
.match-height[b-98tk0o0aux]  .accordion-collapse.show > div,
.match-height[b-98tk0o0aux]  .card,
.match-height[b-98tk0o0aux]  .card-body {
    height: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/Tab.razor.rz.scp.css */
.material-tab.active[b-u6ng6u1arh] {
    border-bottom: #047a61 solid;
    font-weight: bold;
}

ul.flex-nowrap[b-u6ng6u1arh] {
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}

    ul.flex-nowrap[b-u6ng6u1arh]::-webkit-scrollbar {
        height: 6px;
    }

    ul.flex-nowrap[b-u6ng6u1arh]::-webkit-scrollbar-track {
        background: transparent;
    }

    ul.flex-nowrap[b-u6ng6u1arh]::-webkit-scrollbar-thumb {
        background-color: #ccc;
        border-radius: 3px;
    }
/* _content/RingiSystem/Components/Pages/ChildComponent/TableLayout.razor.rz.scp.css */
.hover-shadow:hover[b-ouxq9449tx] {
    opacity: .5;
}

/* Scrollbar sits directly next to the table edge */
.table-scroll[b-ouxq9449tx] {
    padding-right: 0; /* no inner gap */
    scrollbar-gutter: auto; /* do NOT reserve extra space */
}

    /* If your OS/browser uses overlay scrollbars, you can force overlay (optional, WebKit/Chromium only) */
    /* .table-scroll { overflow-y: overlay; } */

    /* Just in case bootstrap/the page adds margins or borders on the table itself */
    .table-scroll > table[b-ouxq9449tx] {
        margin-right: 0;
        border-right: 0;
    }

tr:nth-child(even)[b-ouxq9449tx] {
    background-color: #f9fbfa; /* 偶数行の背景色 */
}
/* Make the orange line smaller but VISIBLE */
.bg-accent td[b-ouxq9449tx] {
    padding: 0 !important;
}

/* The actual orange bar height */
.bg-accent[b-ouxq9449tx] {
    height: 4px !important; /* ← adjust thickness here */
    min-height: 4px !important;
}

/* ローディングコンテナ */
.table-loading-container[b-ouxq9449tx] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 60px;
    background: #ffffff;
}

/* ローディングスピナー */
.loading-spinner[b-ouxq9449tx] {
    color: #047a61;
}

/* 空状態セル（テーブル内） */
.table-empty-cell[b-ouxq9449tx] {
    padding: 0 !important;
    border: none !important;
}

/* 空状態メッセージコンテンツ */
.empty-message-content[b-ouxq9449tx] {
    background: #f5f6f8;
    color: #212529;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    min-height: 200px;
}
/* _content/RingiSystem/Components/Pages/ChildComponent/ToggleSwitch.razor.rz.scp.css */
.toggle-switch[b-flumuyjgp3] {
    height: 38px;
    display: flex;
    align-items: center;
}

.toggle-switch .form-check-input[b-flumuyjgp3] {
    margin-top: 0 !important;
    vertical-align: middle;
    cursor: pointer;
}

.form-check-input:checked[b-flumuyjgp3] {
    background-color: #047a61;
    border-color: #047a61;
}
/* _content/RingiSystem/Components/Pages/CreateFlow/FlowCreateChild/ApplicantStepView.razor.rz.scp.css */
/* 画面全体を縦Flexにして「残り高さ」を作る */
.page-root[b-9kroncnwi1] {
    min-height: 75dvh; /* 端末UIを考慮したvh */
    display: flex;
    flex-direction: column;
}

/* 本文エリアは残りをすべて占有 */
.content-area[b-9kroncnwi1] {
    flex: 1 1 auto;
    display: flex; /* 中で左右ペインを並べる場合 */
    min-height: 0; /* 子の%/flex計算用のクセ対策 */
}

/* 左ペイン：縦に並べる＆残り高さを占有 */
.applicant-step-container[b-9kroncnwi1] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; /* ← これで下端まで伸びる */
    min-height: 0;
}

/* カード自体も“親の残り高さ”を占有して縦に構成 */
.applicant-step-card[b-9kroncnwi1] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; /* ← 高さ100%相当（数値不要） */
    min-height: 0;
}

/* リスト部分：高さはカード内の残りを占有。スクロールは出さない */
.step-list[b-9kroncnwi1] {
    flex: 1 1 auto;
    overflow: visible; /* 必要に応じて auto に変えると内側スクロールへ */
}

/* 既存：ドラッグカーソル固定など */
.draggable-node[b-9kroncnwi1] {
    cursor: default;
}

/* 見た目の最低値だけ確保（任意） */
.applicant-node-card[b-9kroncnwi1] {
    min-height: 80px;
}
/* _content/RingiSystem/Components/Pages/CreateFlow/FlowCreateChild/ApprovalStepCard.razor.rz.scp.css */
.draggable-node[b-bo0kk9oksc] {
    cursor: grab;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    min-height: 100px;
}

.dragging[b-bo0kk9oksc] {
    opacity: 0.5;
    border: 1px dashed #aaa;
}

.drag-over[b-bo0kk9oksc] {
    border: 2px dashed #007bff;
    background-color: #f0f8ff;
}

.page-root[b-bo0kk9oksc] {
    display: flex;
    flex-direction: column;
}

/* 本文エリアは残りをすべて占有 */
.content-area[b-bo0kk9oksc] {
    flex: 1 1 auto;
    display: flex; /* 中で左右ペインを並べる場合 */
    min-height: 0; /* 子の%/flex計算用のクセ対策 */
}

.applicant-step-container[b-bo0kk9oksc] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; /* ← これで下端まで伸びる */
    min-height: 0;
}

/* カード自体も“親の残り高さ”を占有して縦に構成 */
.applicant-step-card[b-bo0kk9oksc] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; /* ← 高さ100%相当（数値不要） */
    min-height: 0;
}

.step-list[b-bo0kk9oksc] {
    flex: 1 1 auto;
    overflow: visible; /* 必要に応じて auto に変えると内側スクロールへ */
}

/* 見た目の最低値だけ確保（任意） */
.applicant-node-card[b-bo0kk9oksc] {
    min-height: 80px;
}

/* ノード名が長い場合、アイコンと重ならないようにする */
.applicant-node-card .card-body > .fw-bold[b-bo0kk9oksc] {
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
    max-width: calc(100% - 80px);
}

/* Shared padding already handled by px-2 py-2 in markup */

/* Collapsed approval step: clamp height + fade bottom */
.step-list-collapsed[b-bo0kk9oksc] {
    position: relative;
    max-height: 160px; /* tweak this so it shows ~half of the first row */
    overflow: hidden;
}

/* "Blur/fade" at the bottom of the collapsed step */
.step-list-collapsed[b-bo0kk9oksc]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 24px;
    /* use your card background color here */
    background: linear-gradient(
            to bottom,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 1)
    );
}

.page-root.is-expanded[b-bo0kk9oksc] {
    /* Restore the original large height ONLY when expanded */
    min-height: 38dvh;
}

.page-root.is-expanded .applicant-step-card[b-bo0kk9oksc] {
    /* Force card to fill the 38dvh container */
    flex: 1 1 auto;
}
/* _content/RingiSystem/Components/Pages/CreateFlow/FlowDetailPage.razor.rz.scp.css */
.fab-add-step[b-8hnko9k7h5] {
    position: fixed;
    right: 16px; /* スクロールバー等を考慮して少し内側 */
    bottom: 16px;
    z-index: 1080; /* Popup等より手前に出したい場合は値を調整 */
}

.flow-editor-page-padding[b-8hnko9k7h5] {
    padding-bottom: 72px; /* ボタン高さ分の逃がし */
}

.col-auto[b-8hnko9k7h5] {
    padding-right: 4px; /* 0 にすると完全に密着 */
}

.col[b-8hnko9k7h5] {
    padding-left: 4px;
}

.focus-anchor[b-8hnko9k7h5] {
    outline: none;
    height: 1px;
}

.create-actions[b-8hnko9k7h5] {
    position: sticky; /* 画面下に吸着。常に固定したいなら fixed に変更 */
    bottom: 0;
    background: #fff;
    border-top: 1px solid #dee2e6;
    padding: .75rem 1rem;
    z-index: 10;
}

.action-bar[b-8hnko9k7h5] {
    position: sticky;
    bottom: 0;
    background: #fff;
    border-top: 1px solid #dee2e6;
    padding: .5rem 1rem;
    z-index: 100;
}

.action-bar .btn[b-8hnko9k7h5] {
    padding: .25rem .75rem; /* デフォルトより縦余白小さめ */
}

/* === 承認ステップ追加ボタンを画面右下に"常時"固定 === */
/* 対象: 右カラム末尾の「承認ステップ追加」ボタン */
.row.g-0 > .col-12.col-sm-7.col-md-8.col-lg-9
.d-flex.justify-content-end.mt-2 > .btn.btn-success.btn-sm.rounded-pill.px-3[b-8hnko9k7h5] {
    position: fixed !important;
    right: calc(16px + env(safe-area-inset-right)) !important;
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
    z-index: 1000 !important; /* 手前に固定 */
    border-radius: 9999px;
    padding-left: 1rem;
    padding-right: 1rem;
    pointer-events: auto;
    touch-action: manipulation;
    transform: none !important;
    transition: none !important;
}

/* ボタンに隠れないよう、右カラムの縦スクロール領域に逃げ余白を作る */
.row.g-0 > .col-12.col-sm-7.col-md-8.col-lg-9
.d-flex.flex-column.gap-2[b-8hnko9k7h5] {
    padding-bottom: 96px !important;
}

/* コンテンツエリアの背景色 */
.flow-content-area[b-8hnko9k7h5] {
    background-color: rgba(4, 122, 97, 0.05);
    min-height: calc(100vh - 180px);
    padding-top: 0.5rem;
}

/* FlowEditorCommandBar の mb-3 マージンを除去 */
.flow-content-area[b-8hnko9k7h5]  > div.mb-3 {
    margin-bottom: 0 !important;
    padding-bottom: 0.5rem;
}
/* _content/RingiSystem/Components/Pages/CreateFlow/FlowEditorActionBar.razor.rz.scp.css */
.status-change-item[b-lybsyzo18p] {
    cursor: pointer;
}

.status-change-item:hover[b-lybsyzo18p] {
    background-color: rgba(4, 122, 97, 0.1);
}
/* _content/RingiSystem/Components/Pages/CreateFlow/FlowSearchForm.razor.rz.scp.css */
/* OFF（未チェック）時の hover/focus を “すごく薄いグレー” にする */
.btn-check:not(:checked) + .btn-outline-secondary:hover[b-mlk2e9t3dj],
.btn-check:not(:checked) + .btn-outline-secondary:focus[b-mlk2e9t3dj] {
    background-color: #f5f5f5 !important; /* 薄いグレー */
    border-color: #e5e5e5 !important;
    color: #333 !important;
}

/* ON（チェック済み）時は従来どおり濃いグレーで明確に */
.btn-check:checked + .btn-outline-secondary[b-mlk2e9t3dj] {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    color: #fff !important;
}

/* クリック時の押し込み感（active）も未チェックに合わせて薄く */
.btn-check:not(:checked) + .btn-outline-secondary:active[b-mlk2e9t3dj] {
    background-color: #ececec !important;
    border-color: #e0e0e0 !important;
    color: #333 !important;
}

/* フォーカス時の青い枠/影（Bootstrapのbox-shadow）を消す：このページ内だけ適用 */
.flow-search .btn-check:focus + .btn-outline-secondary[b-mlk2e9t3dj],
.flow-search .btn-check:focus-visible + .btn-outline-secondary[b-mlk2e9t3dj],
.flow-search .btn-outline-secondary:focus[b-mlk2e9t3dj],
.flow-search .btn-outline-secondary:focus-visible[b-mlk2e9t3dj],
.flow-search .btn-outline-secondary:active:focus[b-mlk2e9t3dj],
.flow-search .btn-check:checked + .btn-outline-secondary:focus[b-mlk2e9t3dj] {
    outline: none !important;
    box-shadow: none !important;
}

.search-btn[b-mlk2e9t3dj] {
    min-width: 120px;
}
/* _content/RingiSystem/Components/Pages/CreateFlow/FlowVersionBar.razor.rz.scp.css */
.status-badge[b-qbhwxf72n4] {
    cursor: default;
    pointer-events: none;
    border: 1px solid transparent;
}
/* _content/RingiSystem/Components/Pages/CreateFlow/Fragments/ApprovalNodeSettings/ConditionSetForm.razor.rz.scp.css */
/* クリックできる枠線＆ホバー */
.set-row[b-ew965i1g3d] {
    border: 1px solid #28a7451a; /* うっすら緑系の通常枠 */
    border-radius: .375rem;
    padding: .5rem .75rem;
    margin-bottom: .5rem;
    transition: background-color .15s, border-color .15s, box-shadow .15s;
    cursor: pointer;
    background: #fff;
}

.set-row:hover[b-ew965i1g3d] {
    background: #f8f9fa;
}

.set-row.active[b-ew965i1g3d] {
    background: #e9f7ef; /* 薄いグリーン */
    border-color: #28a745; /* 緑の強調枠 */
    box-shadow: 0 0 0 .15rem rgba(25, 135, 84, .15);
}
/* _content/RingiSystem/Components/Pages/CreateFlow/Fragments/NotificationSettings/NotificationSettingsContent.razor.rz.scp.css */
/* クリックできる枠線＆ホバー */
.notice-row[b-xut05ki91g] {
    border: 1px solid #28a7451a; /* うっすら緑系の通常枠 */
    border-radius: .375rem;
    padding: .5rem .75rem;
    margin-bottom: .5rem;
    transition: background-color .15s, border-color .15s, box-shadow .15s;
    cursor: pointer;
    background: #fff;
}

.notice-row:hover[b-xut05ki91g] {
    background: #f8f9fa;
}

.notice-row.active[b-xut05ki91g] {
    background: #e9f7ef; /* 薄いグリーン */
    border-color: #28a745; /* 緑の強調枠 */
    box-shadow: 0 0 0 .15rem rgba(25, 135, 84, .15);
}
/* _content/RingiSystem/Components/Pages/CreateFlow/Fragments/Preview/FlowPreviewFragment.razor.rz.scp.css */
/* コンテナ */
.flow-preview-container[b-471ujoyate] {
    padding: 16px;
    min-height: 400px;
}

/* フロー図全体 */
.flow-diagram[b-471ujoyate] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    padding: 20px 10px;
    position: relative;
}

/* 申請ノードセクション */
.applicant-section[b-471ujoyate] {
    display: flex;
    justify-content: center;
    margin-bottom: 60px;
    position: relative;
    z-index: 2;
}

.applicant-box[b-471ujoyate] {
    background-color: #2a6a7c;
    color: #ffffff;
    padding: 12px 32px;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.95rem;
    text-align: center;
    min-width: 180px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

/* SVG接続線はJSで動的に生成される */

/* ステップ行 */
.steps-row[b-471ujoyate] {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
    width: 100%;
    padding: 16px 0;
    margin-bottom: 60px;
    align-items: stretch;
    position: relative;
    z-index: 2;
}

/* ステップラッパー */
.step-wrapper[b-471ujoyate] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* ステップカード */
.step-card[b-471ujoyate] {
    border: 2px solid #333333;
    border-radius: 4px;
    background-color: #ffffff;
    min-width: 200px;
    max-width: 300px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.step-card.start-step[b-471ujoyate] {
    border-color: #2a6a7c;
}

/* ステップヘッダー */
.step-header[b-471ujoyate] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f8f9fa;
    gap: 8px;
}

.step-name[b-471ujoyate] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #333333;
}

.step-condition[b-471ujoyate] {
    font-size: 0.75rem;
    color: #666666;
    background-color: #e9ecef;
    padding: 3px 10px;
    border-radius: 12px;
    white-space: nowrap;
}

/* 承認ノードコンテナ */
.nodes-container[b-471ujoyate] {
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
    min-height: 60px;
    justify-content: flex-start;
}

.nodes-container.sequential[b-471ujoyate] {
    gap: 0;
}

/* ノードラッパー */
.node-wrapper[b-471ujoyate] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* 承認ノード */
.approval-node[b-471ujoyate] {
    background-color: #d97b35;
    color: #ffffff;
    padding: 12px 14px;
    border-radius: 4px;
    width: 100%;
    box-sizing: border-box;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}

.node-label[b-471ujoyate] {
    font-size: 0.85rem;
    font-weight: 500;
    display: block;
    text-align: center;
    word-break: break-word;
}

/* ノード間コネクタ（ApprovalLogic.None 用） - SVG矢印 */
.node-connector-arrow[b-471ujoyate] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4px 0;
}

.node-connector-arrow svg[b-471ujoyate] {
    display: block;
}

/* 承認ノードなし */
.no-nodes[b-471ujoyate] {
    color: #999999;
    font-size: 0.85rem;
    text-align: center;
    padding: 20px;
    font-style: italic;
}

/* ステップフッター（承認タイプ） */
.step-footer[b-471ujoyate] {
    padding: 8px 12px;
    border-top: 1px solid #e0e0e0;
    background-color: #f8f9fa;
    text-align: right;
}

.approval-type[b-471ujoyate] {
    font-size: 0.75rem;
    color: #555555;
    background-color: #e9ecef;
    padding: 3px 10px;
    border-radius: 12px;
}

/* 旧CSS矢印スタイルは削除（SVGに移行） */

/* 完了セクション */
.completion-section[b-471ujoyate] {
    display: flex;
    justify-content: center;
    margin-top: 0;
    position: relative;
    z-index: 2;
}

.completion-box[b-471ujoyate] {
    background-color: #3a5a80;
    color: #ffffff;
    padding: 12px 48px;
    border-radius: 28px;
    font-weight: 600;
    font-size: 0.95rem;
    text-align: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

/* アラート */
.alert[b-471ujoyate] {
    margin: 20px;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .steps-row[b-471ujoyate] {
        flex-direction: column;
        align-items: center;
    }

    .step-card[b-471ujoyate] {
        width: 100%;
        max-width: 320px;
    }

    .connector-horizontal-bar[b-471ujoyate],
    .connector-branches[b-471ujoyate],
    .merge-horizontal-bar[b-471ujoyate] {
        width: 80%;
    }
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Common/CommonForm.razor.rz.scp.css */
.required[b-jplxsgtlg4]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-jplxsgtlg4] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/DateTimeFields/DateInputRenderer.razor.rz.scp.css */
.required[b-kkeay6x5vf]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-kkeay6x5vf] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/DateTimeFields/DateRangeRenderer.razor.rz.scp.css */
.required[b-h2sjllppc8]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-h2sjllppc8] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/DateTimeFields/TimeInputRenderer.razor.rz.scp.css */
.required[b-z10z97bldj]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-z10z97bldj] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/DateTimeFields/TimeRangeRenderer.razor.rz.scp.css */
.required[b-tmufv388qx]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-tmufv388qx] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Display/LabelRenderer.razor.rz.scp.css */
.required[b-y1uicfy74r]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-y1uicfy74r] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Number/NumberInputRenderer.razor.rz.scp.css */
.required[b-dtfgjxhs2s]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-dtfgjxhs2s] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Selection/CheckboxRenderer.razor.rz.scp.css */
.required[b-lkr70x7e76]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-lkr70x7e76] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Selection/DropdownRenderer.razor.rz.scp.css */
.required[b-wxwwfrsoyf]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-wxwwfrsoyf] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Selection/QuickSearchRenderer.razor.rz.scp.css */
.required[b-k6b86ls1mj]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-k6b86ls1mj] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FieldRenderers/Text/TextInputRenderer.razor.rz.scp.css */
.required[b-qatxlx3gou]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-qatxlx3gou] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FormDetailPage.razor.rz.scp.css */
.item-container[b-pv9xjlncxy] {
    border-radius: 8px;
    padding: 4px;
    transition: all 0.2s ease-in-out;
}

.item-inner[b-pv9xjlncxy] {
    border-left: none;
    background-color: transparent;
    border-radius: 8px;
    box-shadow: none;
    transition: all 0.25s ease;
}


.item-inner.selected[b-pv9xjlncxy]  > div {
    border-width: 3px !important;
}

.item-inner:hover[b-pv9xjlncxy] {
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
}

.nav-btn[b-pv9xjlncxy] {
    cursor: pointer;
    padding: 2px 6px;
}

.nav-btn.disabled[b-pv9xjlncxy] {
    opacity: 0.3;
    pointer-events: none;
}

.version-label[b-pv9xjlncxy] {
    font-weight: bold;
    font-size: 15px;
}

/* === セクション追加ボタンを画面右下に“常時”固定 === */
/* 対象: 編集モード時の「セクション追加」ボタン */
.d-flex.justify-content-end.mt-2 > .btn.btn-success.btn-sm.rounded-pill.px-3[b-pv9xjlncxy] {
    position: fixed !important;
    right: calc(16px + env(safe-area-inset-right)) !important;
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
    z-index: 1000 !important; /* 手前に固定 */
    border-radius: 9999px;
    padding-left: 1rem;
    padding-right: 1rem;
    pointer-events: auto;
    touch-action: manipulation;
    transform: none !important;
    transition: none !important;
}

.status-change-item[b-pv9xjlncxy] {
    cursor: pointer;
    color: #222;
}

.status-change-item:hover[b-pv9xjlncxy] {
    background-color: #e9f3ff;
}

/* コンテンツエリアの背景色 */
.form-content-area[b-pv9xjlncxy] {
    background-color: rgba(4, 122, 97, 0.05);
    min-height: calc(100vh - 180px);
    padding-top: 0.5rem;
}

/* FormEditorCommandBar の mb-3 マージンを除去 */
.form-content-area[b-pv9xjlncxy]  > div.mb-3 {
    margin-bottom: 0 !important;
    padding-bottom: 0.5rem;
}

/* Tab の tab-content の mt-3 マージンを除去 */
.form-content-area[b-pv9xjlncxy]  .tab-content.mt-3,
.form-content-area[b-pv9xjlncxy]  .tab-content {
    margin-top: 0 !important;
    padding-top: 0.5rem;
}

/* tab-body 内の mt-3 マージンを除去 */
.form-content-area[b-pv9xjlncxy]  .tab-body .mt-3 {
    margin-top: 0 !important;
    padding-top: 0.5rem;
}
/* _content/RingiSystem/Components/Pages/CreateForm/FormEditorActionBar.razor.rz.scp.css */
.status-change-item[b-gz98q3hh07] {
    cursor: pointer;
}

.status-change-item:hover[b-gz98q3hh07] {
    background-color: rgba(4, 122, 97, 0.1);
}
/* _content/RingiSystem/Components/Pages/CreateForm/FormSearchForm.razor.rz.scp.css */
/* 状態ボタン押下時に枠を消す */
.flow-search .btn-check + .btn-outline-secondary[b-ae4euhkboo] {
    border: none !important;
}

.search-btn[b-ae4euhkboo] {
    min-width: 120px;
}
/* _content/RingiSystem/Components/Pages/CreateForm/Fragments/BasicInfo/FormBaseInfoContent.razor.rz.scp.css */
[b-rpvx6qhsfd] .input-group {
    margin: 15px 0 0 0;
}

.group-list[b-rpvx6qhsfd] {
    display: inline-block;
    padding: .35em .65em;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25rem;
}

[b-rpvx6qhsfd] .form-select.is-valid:not([multiple]):not([size]) {
    background-image: none;
}

.form-label.required[b-rpvx6qhsfd]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/CreateForm/Fragments/Preview/FormPreviewFragment.razor.rz.scp.css */
/* FormPreviewFragment固有のスタイル */
/* 二重スクロールバーの問題はFragment側のDisableOuterScrollパラメータで解決 */
/* ページ切替タブの見た目は共通 Tab コンポーネント（.material-tab）に委ねる。 */
/* _content/RingiSystem/Components/Pages/Dashboard/Components/MyApplicationsPanel.razor.rz.scp.css */
/*
  activity-card は NewTabLink (子コンポーネント) の CssClass として渡されるため、
  親側のスコープ属性 (b-xxx) が付かない。::deep で貫通させる。
*/

.panel-content[b-sce41xhyxz] {
    height: calc(100vh - 100px - 100px);
}

[b-sce41xhyxz] .activity-card {
    transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
    color: inherit;
    text-decoration: none;
}

[b-sce41xhyxz] .activity-card:hover {
    opacity: 0.5;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.empty-card[b-sce41xhyxz] {
    background: #f5f6f8;
    color: #212529;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border-radius: 0.75rem;
}
/* _content/RingiSystem/Components/Pages/Dashboard/Components/PendingApprovalsPanel.razor.rz.scp.css */
/*
  approval-card は NewTabLink (子コンポーネント) の CssClass として渡されるため、
  親側のスコープ属性 (b-xxx) が付かない。::deep で貫通させる。
*/

.panel-content[b-bfm34blp3h] {
    height: calc(100vh - 100px - 100px);
}

[b-bfm34blp3h] .approval-card {
    transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
    color: inherit;
    text-decoration: none;
}

[b-bfm34blp3h] .approval-card:hover {
    opacity: 0.5;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.empty-card[b-bfm34blp3h] {
    background: #f5f6f8;
    color: #212529;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border-radius: 0.75rem;
}
/* _content/RingiSystem/Components/Pages/Dashboard/DashBoard.razor.rz.scp.css */
[b-qy1jdek6pj] .dashboard-card {
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.75rem;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
}

[b-qy1jdek6pj] .dashboard-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
/* _content/RingiSystem/Components/Pages/Department/Views/DepartmentTreeItem.razor.rz.scp.css */
.dept-name[b-5ib9g70ea4] {
    color: #198754;
    transition: color 0.2s ease-in-out;
    cursor: pointer;
}

.dept-name:hover[b-5ib9g70ea4] {
    color: #0f5132 !important;
}

.border-line[b-5ib9g70ea4] {
    border-bottom: 1px solid #dee2e6;
    margin: 0;
}

.child-wrapper[b-5ib9g70ea4] {
    margin: 0;
    padding: 0;
}

.toggle-btn-width[b-5ib9g70ea4] {
    width: 28px;
}
/* _content/RingiSystem/Components/Pages/ExternalLink/ExternalLinkDetailPage.razor.rz.scp.css */
#tabs-externaldetail[b-c3t37q5ikf] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
    overflow: hidden;
}
/* _content/RingiSystem/Components/Pages/ExternalLink/ExternalLinkSearchPage.razor.rz.scp.css */
/* チップ（未選択＝白＋オレンジ枠、選択＝オレンジ塗り） */
.status-chip[b-7ln0t0kkcq] {
    border: 1px solid #F59E0B;
    color: #F59E0B;
    background: #fff;
    border-radius: 0;
    padding: .6rem 1rem;
    font-weight: 600;
    font-size: .85rem;
    line-height: 1.2;
    min-width: 90px;
    text-align: center;
    flex: 0 0 auto;
    transition: background-color .12s, color .12s, border-color .12s;
}

/* hover は「active ではない時」だけ */
.status-chip:not(.active):hover[b-7ln0t0kkcq] {
    background: #FFF2DE !important;
    color: #F59E0B !important;
    border-color: #F59E0B !important;
}

/* active が常に最優先になるように */
.status-chip.active[b-7ln0t0kkcq],
.status-chip.active:hover[b-7ln0t0kkcq],
.status-chip.active:focus[b-7ln0t0kkcq],
.status-chip.active:focus-visible[b-7ln0t0kkcq] {
    background: #F59E0B !important;
    color: #fff !important;
    border-color: #F59E0B !important;
}

.btn-all[b-7ln0t0kkcq] {
    border: 1px solid #9AA4AE;
    background: #fff;
    color: #6B7280;
    border-radius: .5rem;
    padding: .45rem .9rem;
    font-weight: 600;
}

.btn-all:hover[b-7ln0t0kkcq] {
    background: #F4F6F8;
}

@media (max-width: 576px) {
    .status-chip[b-7ln0t0kkcq] {
        border-radius: .5rem;
        width: 100%;
    }
}
/* _content/RingiSystem/Components/Pages/FlowFolder/FolderInfoContent.razor.rz.scp.css */
.required[b-hnfksykejr]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/FlowFolder/FolderSearchPage.razor.rz.scp.css */
.btn.btn-link[b-je3ns4j2m8] {
    padding: 0 .25rem;
}

.big-drop-area[b-je3ns4j2m8] {
    min-height: 80px;
    border: 2px dashed #dee2e6;
    border-radius: 6px;
    background-color: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6c757d;
    font-size: 0.9rem;
    margin-top: 8px;
    transition: background-color 0.2s, border-color 0.2s;
}

.big-drop-area:hover[b-je3ns4j2m8] {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}

/* ▼ 三角アイコンを非表示にする */
.no-caret[b-je3ns4j2m8]::after {
    display: none !important;
}

/* 統一フローカード（左リスト／右フォルダ内 共通） */
.flow-card[b-je3ns4j2m8] {
    position: relative;
    border: 1px solid #CED4DA;
    border-radius: 6px;
    background: #fff;
    padding: 12px 40px 10px 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .02);
    cursor: grab;
}

.flow-card + .flow-card[b-je3ns4j2m8] {
    margin-top: .5rem;
}

.flow-card .flow-close[b-je3ns4j2m8] {
    cursor: pointer;
}

.flow-title[b-je3ns4j2m8] {
    font-weight: 700;
    font-size: 1.05rem;
    color: #212529;
}

.flow-meta[b-je3ns4j2m8] {
    font-size: .9rem;
    color: #6c757d;
}

/* 右上の×ボタン（赤アウトライン） */
button.flow-close[b-je3ns4j2m8] {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
}

.dropdown-toggle[b-je3ns4j2m8],
.dropdown-menu .dropdown-item[b-je3ns4j2m8] {
    cursor: pointer;
}

/* フォルダカードの見た目は現状維持。開閉三角ボタンも pointer に */
button.btn.btn-light[b-je3ns4j2m8] {
    cursor: pointer;
}

/* 等高にするための補助（念のため） */
.folder-grid > [class^="col-"][b-je3ns4j2m8],
.folder-grid > [class*=" col-"][b-je3ns4j2m8] {
    display: flex;
}

.folder-grid .card[b-je3ns4j2m8] {
    width: 100%;
}

/* ヘッダー内で極力折り返さない */
.flex-nowrap[b-je3ns4j2m8] {
    flex-wrap: nowrap !important;
}

.drop-zone[b-je3ns4j2m8] {
    height: 10px;
    background-color: #f8f9fa;
    border: dashed 1px transparent;
    transition: border-color 0.2s;
}

.drop-zone:hover[b-je3ns4j2m8] {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}

.col-8[b-je3ns4j2m8] {
    width: 64% !important;
}

/* 公開範囲表示ボックス：縦幅固定＆スクロール */
.folder-scope-box[b-je3ns4j2m8] {
    min-height: 64px;
    max-height: 64px;
    overflow-y: auto;
    font-size: 0.85rem;
    width: 420px;
    max-width: 420px;
}

.close-btn[b-je3ns4j2m8] {
    white-space: nowrap;
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 「選択」「閉じる」を同じサイズにする */
.scope-select-btn[b-je3ns4j2m8] {
    white-space: nowrap;
    min-height: 32px;
    padding: 4px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ポップアップ本文の左右余白を調整 */
.popup-body-wrap[b-je3ns4j2m8] {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

/* Fragment のヘッダーも揃える */
.fragment-header[b-je3ns4j2m8] {
    padding-left: 0.75rem !important;
}

/* インライン名前編集用 */
.name-input[b-je3ns4j2m8] {
    flex: 1;
    min-width: 100px;
}
/* _content/RingiSystem/Components/Pages/FlowFolder/Views/FlowListPanel.razor.rz.scp.css */
/* フローカード */
.flow-card[b-13zvmmdnwv] {
    position: relative;
    border: 1px solid #CED4DA;
    border-radius: 6px;
    background: #fff;
    padding: 12px 40px 10px 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .02);
    cursor: grab;
}

.flow-card + .flow-card[b-13zvmmdnwv] {
    margin-top: .5rem;
}

.flow-title[b-13zvmmdnwv] {
    font-weight: 700;
    font-size: 1.05rem;
    color: #212529;
}

.flow-meta[b-13zvmmdnwv] {
    font-size: .9rem;
    color: #6c757d;
}

/* 運用停止中のフローカード */
.flow-card.suspended[b-13zvmmdnwv] {
    background: #fef2f2;
    border-color: #f8d7da;
}

/* ステータスバッジ（右端・垂直中央） */
.flow-status-badge[b-13zvmmdnwv] {
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
}
/* _content/RingiSystem/Components/Pages/FlowFolder/Views/FolderCard.razor.rz.scp.css */
/* フローカード */
.flow-card[b-aa4n1ub1fp] {
    position: relative;
    border: 1px solid #CED4DA;
    border-radius: 6px;
    background: #fff;
    padding: 12px 40px 10px 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .02);
    cursor: grab;
}

.flow-card + .flow-card[b-aa4n1ub1fp] {
    margin-top: .5rem;
}

.flow-card .flow-close[b-aa4n1ub1fp] {
    cursor: pointer;
}

.flow-title[b-aa4n1ub1fp] {
    font-weight: 700;
    font-size: 1.05rem;
    color: #212529;
}

.flow-meta[b-aa4n1ub1fp] {
    font-size: .9rem;
    color: #6c757d;
}

/* 運用停止中のフローカード */
.flow-card.suspended[b-aa4n1ub1fp] {
    background: #fef2f2;
    border-color: #f8d7da;
}

/* ステータスバッジ（右端・垂直中央、削除ボタンの左） */
.flow-status-badge[b-aa4n1ub1fp] {
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translateY(-50%);
}

/* 削除ボタン */
button.flow-close[b-aa4n1ub1fp] {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
}

/* ドロップダウン */
.dropdown-toggle[b-aa4n1ub1fp],
.dropdown-menu .dropdown-item[b-aa4n1ub1fp] {
    cursor: pointer;
}

/* 三角アイコン非表示 */
.no-caret[b-aa4n1ub1fp]::after {
    display: none !important;
}

/* ボタン */
button.btn.btn-light[b-aa4n1ub1fp] {
    cursor: pointer;
}

/* ドロップゾーン */
.drop-zone[b-aa4n1ub1fp] {
    height: 10px;
    background-color: #f8f9fa;
    border: dashed 1px transparent;
    transition: border-color 0.2s;
}

.drop-zone:hover[b-aa4n1ub1fp] {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}

/* インライン名前編集 */
.name-input[b-aa4n1ub1fp] {
    flex: 1;
    min-width: 100px;
}

.btn.btn-link[b-aa4n1ub1fp] {
    padding: 0 .25rem;
}
/* _content/RingiSystem/Components/Pages/FlowFolder/Views/FolderListPanel.razor.rz.scp.css */
/* col-8 width override */
.col-8[b-487auo7aer] {
    width: 64% !important;
}

/* フォルダグリッド */
.folder-grid > div[b-487auo7aer] {
    display: flex;
}

[b-487auo7aer] .folder-grid .card {
    width: 100%;
}

/* ヘッダー内折り返し防止 */
.flex-nowrap[b-487auo7aer] {
    flex-wrap: nowrap !important;
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Components/SetupAlerts.razor.rz.scp.css */
.alert[b-x84wihyoam] {
    margin-bottom: 16px;
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Components/SetupSidebar.razor.rz.scp.css */
.sidebar[b-pty064jefz] {
    background: linear-gradient(180deg, #1c6b3a, #0f4f2a);
    color: #fff;
    padding: 28px 22px;
}

.sb-title[b-pty064jefz] {
    font-size: 28px;
    font-weight: 700;
    margin: 4px 2px 12px;
}

.steps[b-pty064jefz] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.step[b-pty064jefz] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
    user-select: none;
}

.step:hover[b-pty064jefz] {
    background: rgba(255, 255, 255, .06);
}

.step.active[b-pty064jefz] {
    background: rgba(255, 255, 255, .12);
}

.step-head[b-pty064jefz] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dot[b-pty064jefz] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(255, 255, 255, .85);
    color: #0c4023;
    background: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
}

.step.completed .dot[b-pty064jefz] {
    background: #13c27a;
    border-color: #13c27a;
    color: #0e3d26;
}

.step-label[b-pty064jefz] {
    font-size: 16px;
}

.note-msg[b-pty064jefz] {
    font-size: 11px;
    color: #e4f1ea;
    opacity: .85;
    margin-left: 32px;
}

.step.locked[b-pty064jefz] {
    opacity: .6;
    cursor: not-allowed;
}

@media (max-width: 960px) {
    .sidebar[b-pty064jefz] {
        padding: 20px;
    }
}
/* _content/RingiSystem/Components/Pages/InitialSetup/InitialSetupPage.razor.rz.scp.css */
.initial-setup-container[b-tqwxkmyd7i] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #f6f8fb;
}

.app[b-tqwxkmyd7i] {
    display: grid;
    grid-template-columns: 300px 1fr;
    height: 100%;
    overflow: hidden;
}

.main[b-tqwxkmyd7i] {
    padding: 34px 36px;
    background: #f6f8fb;
    overflow-y: auto;
}

.panel[b-tqwxkmyd7i] {
    background: #fff;
    border: 1px solid #e5e9ef;
    border-radius: 12px;
    padding: 26px;
    box-shadow: 0 4px 18px rgba(16, 24, 40, .04);
    min-height: 520px;
}

[b-tqwxkmyd7i] .panel h2 {
    font-size: 28px;
    margin: 4px 2px 18px;
    color: #22343e;
    font-weight: 800;
}

[b-tqwxkmyd7i] input[readonly] {
    background: #f3f6f8;
    color: #66757f;
}

[b-tqwxkmyd7i] input:focus,
[b-tqwxkmyd7i] select:focus,
[b-tqwxkmyd7i] textarea:focus {
    border-color: #84d0b0;
    box-shadow: 0 0 0 3px rgba(19, 194, 122, .18);
}

@media (max-width: 960px) {
    .app[b-tqwxkmyd7i] {
        grid-template-columns: 1fr;
    }

    .main[b-tqwxkmyd7i] {
        padding: 20px;
    }
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/AdminAccountStep.razor.rz.scp.css */
.view[b-zg1wcg75hm] {
    display: none;
}

.view.active[b-zg1wcg75hm] {
    display: block;
}

.form-row[b-zg1wcg75hm] {
    margin: 14px 0;
}

.note[b-zg1wcg75hm] {
    background: #fff7e6;
    border: 1px solid #ffe1b2;
    color: #8a5a00;
    padding: 12px 14px;
    border-radius: 10px;
    margin: 10px 0 18px;
}

.actions[b-zg1wcg75hm] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-zg1wcg75hm] {
    margin-right: auto;
}

.btn[b-zg1wcg75hm] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-zg1wcg75hm] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-active[b-zg1wcg75hm] {
    background: #1e7f4f;
    color: #fff;
}

.btn[disabled][b-zg1wcg75hm] {
    opacity: .55;
    cursor: not-allowed;
}

[b-zg1wcg75hm] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-zg1wcg75hm] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-zg1wcg75hm] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/CertificateDownloadStep.razor.rz.scp.css */
.view[b-jt56264hm5] {
    display: none;
}

.view.active[b-jt56264hm5] {
    display: block;
}

.note[b-jt56264hm5] {
    background: #fff7e6;
    border: 1px solid #ffe1b2;
    color: #8a5a00;
    padding: 12px 14px;
    border-radius: 10px;
    margin: 10px 0 18px;
}

.actions[b-jt56264hm5] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-jt56264hm5] {
    margin-right: auto;
}

.btn[b-jt56264hm5] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-jt56264hm5] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-outline[b-jt56264hm5] {
    background: #fff;
    color: #197247;
    border: 2px solid green;
}

.btn-active[b-jt56264hm5] {
    background: #1e7f4f;
    color: #fff;
}

.btn[disabled][b-jt56264hm5] {
    opacity: .55;
    cursor: not-allowed;
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/CompleteView.razor.rz.scp.css */
.view[b-506bz4vjul] {
    display: none;
}

.view.active[b-506bz4vjul] {
    display: block;
}

.loading-container[b-506bz4vjul] {
    text-align: center;
    margin: 0 auto;
    padding: 50px;
}

.complete-image[b-506bz4vjul] {
    width: 200px;
    height: auto;
}

.muted[b-506bz4vjul] {
    color: #6b7b86;
    font-size: 14px;
}

.btn[b-506bz4vjul] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-active[b-506bz4vjul] {
    background: #1e7f4f;
    color: #fff;
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/DatabaseConfigurationStep.razor.rz.scp.css */
.view[b-roqr8oapi5] {
    display: none;
}

.view.active[b-roqr8oapi5] {
    display: block;
}

.actions[b-roqr8oapi5] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.btn[b-roqr8oapi5] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-roqr8oapi5],
[b-roqr8oapi5] .btn-outline-secondary {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-outline[b-roqr8oapi5] {
    background: #fff;
    color: #197247;
    border: 2px solid green;
}

.btn-active[b-roqr8oapi5] {
    background: #1e7f4f;
    color: #fff;
}

.btn[disabled][b-roqr8oapi5] {
    opacity: .55;
    cursor: not-allowed;
}

[b-roqr8oapi5] .input-group {
    display: flex;
    flex-wrap: nowrap;
}

[b-roqr8oapi5] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-roqr8oapi5] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-roqr8oapi5] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/LoadingView.razor.rz.scp.css */
.view[b-lljnhcgw1z] {
    display: none;
}

.view.active[b-lljnhcgw1z] {
    display: block;
}

.loading-container[b-lljnhcgw1z] {
    text-align: center;
    margin: 0 auto;
    padding: 50px;
}

.spinner[b-lljnhcgw1z] {
    width: 60px;
    height: 60px;
    border: 6px solid #ccc;
    border-top: 6px solid #2ebd60;
    border-radius: 50%;
    animation: spin-b-lljnhcgw1z 1s linear infinite;
    margin: 20px auto;
}

@keyframes spin-b-lljnhcgw1z {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.muted[b-lljnhcgw1z] {
    color: #6b7b86;
    font-size: 14px;
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/SamlConfigurationStep.razor.rz.scp.css */
.view[b-6nqwz6k2sg] {
    display: none;
}

.view.active[b-6nqwz6k2sg] {
    display: block;
}

.form-row[b-6nqwz6k2sg] {
    margin: 14px 0;
}

.row-2[b-6nqwz6k2sg] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.actions[b-6nqwz6k2sg] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-6nqwz6k2sg] {
    margin-right: auto;
}

.actions .btn[b-6nqwz6k2sg] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.actions .btn-secondary[b-6nqwz6k2sg] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.actions .btn-outline[b-6nqwz6k2sg] {
    background: #fff;
    color: #197247;
    border: 2px solid green;
}

.actions .btn-active[b-6nqwz6k2sg] {
    background: #1e7f4f;
    color: #fff;
}

.actions .btn[disabled][b-6nqwz6k2sg] {
    opacity: .55;
    cursor: not-allowed;
}

[b-6nqwz6k2sg] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-6nqwz6k2sg] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-6nqwz6k2sg] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

[b-6nqwz6k2sg] .file-upload-area {
    margin-top: 8px;
}

[b-6nqwz6k2sg] .file-upload-area input[type="file"] {
    display: block;
    width: 100%;
    padding: 10px;
    border: 2px dashed #d7dee5;
    border-radius: 8px;
    background: #f8fafb;
    cursor: pointer;
}

[b-6nqwz6k2sg] .file-upload-area input[type="file"]:hover {
    border-color: #1e7f4f;
}

[b-6nqwz6k2sg] .file-hint {
    display: block;
    font-size: 12px;
    color: #6c757d;
    margin-top: 6px;
}

[b-6nqwz6k2sg] .file-selected {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: #e8f5ef;
    border: 1px solid #1e7f4f;
    border-radius: 8px;
}

[b-6nqwz6k2sg] .file-selected .btn {
    margin-left: auto;
}

[b-6nqwz6k2sg] .file-name {
    font-weight: 600;
    color: #1e7f4f;
}

[b-6nqwz6k2sg] .file-size {
    color: #6c757d;
    font-size: 13px;
}

[b-6nqwz6k2sg] .btn-clear {
    appearance: none;
    border: none;
    background: transparent;
    color: #dc3545;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    padding: 0 4px;
    margin-left: auto;
}

[b-6nqwz6k2sg] .btn-clear:hover {
    color: #a71d2a;
}

@media (max-width: 960px) {
    .row-2[b-6nqwz6k2sg] {
        grid-template-columns: 1fr;
    }
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/SetupCompleteStep.razor.rz.scp.css */
.view[b-hbylwj5g67] {
    display: none;
}

.view.active[b-hbylwj5g67] {
    display: block;
}

.muted[b-hbylwj5g67] {
    color: #6b7b86;
    font-size: 14px;
}

.note[b-hbylwj5g67] {
    background: #fff7e6;
    border: 1px solid #ffe1b2;
    color: #8a5a00;
    padding: 12px 14px;
    border-radius: 10px;
    margin: 10px 0 18px;
}

.actions[b-hbylwj5g67] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-hbylwj5g67] {
    margin-right: auto;
}

.btn[b-hbylwj5g67] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-hbylwj5g67] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-active[b-hbylwj5g67] {
    background: #1e7f4f;
    color: #fff;
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/SmtpConfigurationStep.razor.rz.scp.css */
.view[b-hp948pp5cd] {
    display: none;
}

.view.active[b-hp948pp5cd] {
    display: block;
}

.form-row[b-hp948pp5cd] {
    margin: 14px 0;
}

.row-2[b-hp948pp5cd] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.actions[b-hp948pp5cd] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-hp948pp5cd] {
    margin-right: auto;
}

.btn[b-hp948pp5cd] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-hp948pp5cd] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-outline[b-hp948pp5cd] {
    background: #fff;
    color: #197247;
    border: 2px solid green;
}

.btn-active[b-hp948pp5cd] {
    background: #1e7f4f;
    color: #fff;
}

.btn[disabled][b-hp948pp5cd] {
    opacity: .55;
    cursor: not-allowed;
}

[b-hp948pp5cd] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-hp948pp5cd] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-hp948pp5cd] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

@media (max-width: 960px) {
    .row-2[b-hp948pp5cd] {
        grid-template-columns: 1fr;
    }
}
/* _content/RingiSystem/Components/Pages/InitialSetup/Steps/StorageConfigurationStep.razor.rz.scp.css */
.view[b-moll0truxa] {
    display: none;
}

.view.active[b-moll0truxa] {
    display: block;
}

.form-row[b-moll0truxa] {
    margin: 14px 0;
}

.row-2[b-moll0truxa] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.actions[b-moll0truxa] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-moll0truxa] {
    margin-right: auto;
}

.btn[b-moll0truxa] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-moll0truxa] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-outline[b-moll0truxa] {
    background: #fff;
    color: #197247;
    border: 2px solid green;
}

.btn-active[b-moll0truxa] {
    background: #1e7f4f;
    color: #fff;
}

.btn[disabled][b-moll0truxa] {
    opacity: .55;
    cursor: not-allowed;
}

[b-moll0truxa] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-moll0truxa] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-moll0truxa] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

@media (max-width: 960px) {
    .row-2[b-moll0truxa] {
        grid-template-columns: 1fr;
    }
}

[b-moll0truxa] .file-upload-area {
    margin-top: 8px;
}

[b-moll0truxa] .file-upload-area input[type="file"] {
    display: block;
    width: 100%;
    padding: 10px;
    border: 2px dashed #d7dee5;
    border-radius: 8px;
    background: #f8fafb;
    cursor: pointer;
}

[b-moll0truxa] .file-upload-area input[type="file"]:hover {
    border-color: #1e7f4f;
}

[b-moll0truxa] .file-hint {
    display: block;
    font-size: 12px;
    color: #6c757d;
    margin-top: 6px;
}

[b-moll0truxa] .file-selected {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: #e8f5ef;
    border: 1px solid #1e7f4f;
    border-radius: 8px;
}

[b-moll0truxa] .file-selected .btn {
    margin-left: auto;
}

[b-moll0truxa] .file-name {
    font-weight: 600;
    color: #1e7f4f;
}

[b-moll0truxa] .file-size {
    color: #6c757d;
    font-size: 13px;
}
/* _content/RingiSystem/Components/Pages/MergedForm/FormMergeDetailPage.razor.rz.scp.css */
/* コンテンツエリアの背景色（編集モード時） */
.merge-content-area[b-yq3zbyisfc] {
    background-color: rgba(4, 122, 97, 0.05);
    min-height: calc(100vh - 180px);
    padding-top: 0.5rem;
}
/* _content/RingiSystem/Components/Pages/MergedForm/FormMergeSearchPage.razor.rz.scp.css */
/* 一覧カードの見た目を整える */
.list-card[b-1tkucrzxaj] {
    border: 1px solid #dee2e6 !important;
}

.list-card > .card-header[b-1tkucrzxaj] {
    background: #fff;
    border-bottom: 1px solid #dee2e6 !important;
}

.list-card .table[b-1tkucrzxaj] {
    margin-bottom: 0;
}

.card-body[b-1tkucrzxaj] {
    background-color: #ffffff !important;
}

.btn-search[b-1tkucrzxaj] {
    min-width: 90px;
}
/* _content/RingiSystem/Components/Pages/Migration/ChildView/CsvUploadBlock.razor.rz.scp.css */
.csv-upload-dropzone[b-enqeq64tq5] {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    width: 100%;
    min-height: 90px;
    padding: 16px;
    border: 3px dashed #adb5bd;
    background: #f1f3f5;
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.csv-upload-dropzone:hover[b-enqeq64tq5] {
    border-color: #6c757d;
    background: #e9ecef;
}

.csv-upload-dropzone.drag-over[b-enqeq64tq5] {
    border-color: #0d6efd;
    background: #e7f1ff;
    border-style: solid;
}

.csv-dropzone-text[b-enqeq64tq5] {
    text-align: center;
    color: #495057;
    font-weight: 600;
}

/* ファイル名 + ゴミ箱 横並び */
.csv-file-row[b-enqeq64tq5] {
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 100%;
}

/* ファイル名：濃い目グレーのテキスト */
.csv-file-name[b-enqeq64tq5] {
    color: #495057; /* ← 濃い目グレー */
    font-weight: 600;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ゴミ箱（今のデザインを維持） */
.csv-trash-btn[b-enqeq64tq5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: 1.5px solid #dc3545;
    color: #dc3545 !important;
    background: transparent;
}

.csv-trash-btn:hover[b-enqeq64tq5] {
    background: rgba(220, 53, 69, 0.08);
}
/* _content/RingiSystem/Components/Pages/Migration/OrganizationMigration.razor.rz.scp.css */
body[b-4uwtsxzfvb] {
}
/* _content/RingiSystem/Components/Pages/Migration/OrganizationMigrationSetting.razor.rz.scp.css */
body[b-b44lf4r4ud] {
}
/* _content/RingiSystem/Components/Pages/NewApproval/NewApproval.razor.rz.scp.css */
/*
  past-card / hover-shadow / truncate-* / list-item-chevron は NewTabLink (子コンポーネント) の
  CssClass として渡されるため、親側のスコープ属性 (b-xxx) が付かない。
  ::deep でスコープ境界を貫通させて子コンポーネントが生成する <a> にも適用する。
*/

/*カードホバーアクション*/
[b-62x1uwfcx9] .hover-shadow {
    transition: transform 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

[b-62x1uwfcx9] .hover-shadow:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    transform: scale(1.02);
}

.card[b-62x1uwfcx9] {
    border: 2px solid #CED4DA !important; /* 太めの薄グレー枠 */
    border-radius: 0.75rem; /* 角丸 */
}

.card-bordered[b-62x1uwfcx9] {
    border: 2px solid #CED4DA; /* 太めの薄グレー枠 */
    border-radius: 0.75rem;
}

[b-62x1uwfcx9] .past-card {
    border: 1.5px solid #dee2e6;
    background: #fff;
    border-radius: .75rem;
    padding: .75rem 1rem;
    min-height: 96px; /* 高さを揃えてカードっぽく */
    display: block;
    box-shadow: none;
    transition: box-shadow .15s ease, transform .15s ease, border-color .15s ease;
    color: inherit;
    text-decoration: none;
}

[b-62x1uwfcx9] .past-card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, .08);
    transform: translateY(-1px);
    border-color: #cdd6df;
}

[b-62x1uwfcx9] .truncate-line {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

[b-62x1uwfcx9] .truncate-container {
    width: 100%;
    max-width: calc(100vw - 40px);
    box-sizing: border-box;
}

[b-62x1uwfcx9] .list-item-chevron {
    position: static;
    flex-shrink: 0;
    margin-left: 0.5rem;
    transform: none;
}

[b-62x1uwfcx9] .truncate-wrapper {
    flex: 1 1 auto;
    min-width: 0;
    padding-right: 0;
    box-sizing: border-box;
}

.new-approval-page[b-62x1uwfcx9] {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}
/* _content/RingiSystem/Components/Pages/Position/PositionDetailPage.razor.rz.scp.css */
/* 編集中（.lock-others）かつ先頭タブがアクティブの間だけ他タブを無効化 */
#tabs-positiondetail.lock-others:has(.nav .nav-item:first-child .nav-link.active)
.nav .nav-item:not(:first-child) .nav-link[b-yn4nm0obta],
#tabs-positiondetail.lock-others:has(.nav .nav-item:first-child .material-tab.active)
.nav .nav-item:not(:first-child) .material-tab[b-yn4nm0obta] {
    pointer-events: none;
    opacity: .5;
    cursor: not-allowed;
}

#tabs-positiondetail.lock-others:has(.nav .nav-item:first-child .nav-link.active)
.nav .nav-item:not(:first-child) .nav-link:focus[b-yn4nm0obta],
#tabs-positiondetail.lock-others:has(.nav .nav-item:first-child .material-tab.active)
.nav .nav-item:not(:first-child) .material-tab:focus[b-yn4nm0obta] {
    outline: none;
}
/* _content/RingiSystem/Components/Pages/Position/PositionSearchPage.razor.rz.scp.css */
.drop-indicator[b-r2a1fgja5p] {
    height: 20px;
    margin: 4px 0;
    background-color: var(--bs-success) !important;
}

.sort-mode-banner[b-r2a1fgja5p] {
    background: #e8f5e9;
    border: 1px dashed var(--bs-success);
}

.drag-handle[b-r2a1fgja5p] {
    display: inline-block;
    width: 100%;
    cursor: grab;
    user-select: none;
}

.table-fixed[b-r2a1fgja5p] {
    table-layout: fixed;
    width: 100%;
}

/* 幅の固定（ヘッダとボディ両方に適用）*/
.table-fixed thead th:nth-child(1)[b-r2a1fgja5p],
.table-fixed tbody td:nth-child(1)[b-r2a1fgja5p] {
    width: 7%;
}

.table-fixed thead th:nth-child(2)[b-r2a1fgja5p],
.table-fixed tbody td:nth-child(2)[b-r2a1fgja5p] {
    width: 38px;
}

.table-fixed thead th:nth-child(3)[b-r2a1fgja5p],
.table-fixed tbody td:nth-child(3)[b-r2a1fgja5p] {
    width: 20%;
}

.table-fixed thead th:nth-child(4)[b-r2a1fgja5p],
.table-fixed tbody td:nth-child(4)[b-r2a1fgja5p] {
    width: 28%;
}

.table-fixed thead th:nth-child(5)[b-r2a1fgja5p],
.table-fixed tbody td:nth-child(5)[b-r2a1fgja5p] {
    width: 15%;
}

.table-fixed thead th:nth-child(6)[b-r2a1fgja5p],
.table-fixed tbody td:nth-child(6)[b-r2a1fgja5p] {
    width: 15%;
}

/* 文字溢れで崩さない */
.table-fixed th[b-r2a1fgja5p], .table-fixed td[b-r2a1fgja5p] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.table-fixed[b-r2a1fgja5p] {
    border-collapse: collapse;
    width: 100%;
    border-bottom: 1px solid #dee2e6;
}

.table-fixed td[b-r2a1fgja5p],
.table-fixed th[b-r2a1fgja5p] {
    border-color: #dee2e6;
    border-style: solid;
    border-width: 0 0 1px 0; /* only bottom line between rows */
}

/* add right border to the last column */
.table-fixed th:last-child[b-r2a1fgja5p],
.table-fixed td:last-child[b-r2a1fgja5p] {
    border-right: 1px solid #dee2e6;
}

/* optional: left border to align perfectly with card border */
.table-fixed th:first-child[b-r2a1fgja5p],
.table-fixed td:first-child[b-r2a1fgja5p] {
    border-left: 1px solid #dee2e6;
}

/* 並び替えボタン（テーブル右側の縦並び） */
.row-buttons[b-r2a1fgja5p] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem; /* ボタン間の間隔 */
    align-items: stretch;
}

/*ボタン共通スタイル（グレー＋角丸） */
.row-buttons .btn[b-r2a1fgja5p] {
    width: 28px;
    height: 28px;
}

.row-buttons .btn i[b-r2a1fgja5p] {
    font-size: 0.85rem;
}

.usage-item[b-r2a1fgja5p] {
    padding: .25rem 0.5rem; /* ← 左右 0.5rem ≒ 1文字ぶん */
    border-bottom: 1px solid #dee2e6;
}

.usage-item:last-child[b-r2a1fgja5p] {
    border-bottom: none;
}

.position-master-root[b-r2a1fgja5p] {
    margin-top: 0 !important;
}

/* 役職マスタのヘッダー行 */
.position-header-row[b-r2a1fgja5p] {
    display: flex;
    align-items: center; /* 縦中央揃え */
    justify-content: space-between;
    width: 100%;
}

/* タイトルの右側、検索＋ボタンの並び */
.position-header-actions[b-r2a1fgja5p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-grow: 1;
    justify-content: flex-end;
}

/* 順位入替ボタンを小さめにする */
.btn-sort-small[b-r2a1fgja5p] {
    padding: 0.1rem 0.3rem;
    font-size: 0.55rem;
}

.table-wrapper[b-r2a1fgja5p] {
    height: 100%;
    overflow: auto hidden;
}
/* _content/RingiSystem/Components/Pages/Position/Tabs/PositionBasicInfoTab.razor.rz.scp.css */
.required[b-b34c2y9bnk]::after {
    content: " *";
    color: red;
}

.item-title[b-b34c2y9bnk] {
    width: 33%;
}
/* _content/RingiSystem/Components/Pages/ProfileSetting/ProfileSetting.razor.rz.scp.css */
body[b-lzciphbhj9] {
}
/* _content/RingiSystem/Components/Pages/ProxyRequest/ProxyRequestManagement.razor.rz.scp.css */
/* テーブルの列幅を固定して text-overflow を有効にする */
.table-fixed[b-89rbvty6tt] {
    table-layout: fixed;
}

/* 1行だけ表示して長い場合は … で省略（CJK でも折り返さない） */
.ellipsis-1[b-89rbvty6tt] {
    display: block; /* 幅の文脈を作る */
    width: 100%; /* セル幅いっぱいに広げる */
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    word-break: keep-all; /* ★ CJK の強制改行を禁止 */
}
/* _content/RingiSystem/Components/Pages/ProxyRequest/ProxyRequestRegistration.razor.rz.scp.css */
.required[b-w5v8bzn0wd]::after {
    content: " *";
    color: red;
}
/* _content/RingiSystem/Components/Pages/QuickSearch/QuickSearchForm.razor.rz.scp.css */
/* QuickSearch 専用のスクロール領域 */
.qs-scroll[b-8hnd8gj7u3] {
    /* BuildScrollStyle() 側で overflow:auto を付与するが、
       保険で書いておいても OK（重複無害） */
    overflow: auto;
}

    /* sticky header の重なり順を少し上げたい場合 */
    .qs-scroll thead tr.sticky-top[b-8hnd8gj7u3] {
        z-index: 2;
    }
/* _content/RingiSystem/Components/Pages/RequestApproval/ApprovalRequestCard.razor.rz.scp.css */
/*
  ApprovalRequestCard はルート要素として NewTabLink を描画するため、
  ここで定義する request-card / hover-shadow 等は NewTabLink (子コンポーネント) が
  生成する <a> に当たる。親スコープ属性 (b-xxx) が付かないので ::deep で貫通させる。
  バルクモード時は div@onclick を使うが、その場合も同じクラス名を共有しているため
  ::deep で両方をカバーできる。
*/

/* カード内の区切り線を端まで伸ばす */
[b-vzbum1q36u] .card .border-top {
    border-top: 1px solid #dee2e6 !important;
    margin: 0; /* remove margin */
    padding-left: 1rem; /* keep inner text aligned */
    padding-right: 1rem;
}

/* 区切り線は端まで＆色は控えめ */
[b-vzbum1q36u] .request-card .border-top {
    border-top: 1px solid #E2E6EA !important;
    margin: 0 !important;
    padding-left: .75rem !important;
    padding-right: .75rem !important;
}

[b-vzbum1q36u] .card.border-start {
    border-left-width: 2px !important; /* ← お好みのpxに変更 */
}

[b-vzbum1q36u] .hover-shadow {
    transition: transform .15s ease-in-out, box-shadow .15s ease-in-out;
}

[b-vzbum1q36u] .hover-shadow:hover {
    box-shadow: 0 .25rem .5rem rgba(0, 0, 0, .08) !important;
    transform: scale(1.005);
}

/* 共通カード枠 */
[b-vzbum1q36u] .request-card {
    margin-bottom: 0;
    border: 1px solid #dee2e6 !important;
    border-radius: 6px;
    background: #fff;
    overflow: hidden;

    display: flex;
    flex-direction: column;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

[b-vzbum1q36u] .request-card.border-start {
    border-left-width: 3px !important;
}

[b-vzbum1q36u] .request-card .card-header {
    background-color: #FFFFFF !important; /* 白色に変更 */
    border-bottom: none !important; /* 下線削除 */
    padding: .45rem .75rem !important;
    margin: 0 !important;
}


[b-vzbum1q36u] .request-card .card-body {
    padding: .5rem .75rem !important;
    display: flex;
    align-items: flex-start;
    max-height: 85px;
}

[b-vzbum1q36u] .request-meta {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    row-gap: .25rem;
}

[b-vzbum1q36u] .request-meta .meta {
    min-width: 0;
    display: flex;
    align-items: baseline;
}

[b-vzbum1q36u] .request-meta .meta small {
    white-space: nowrap;
}

[b-vzbum1q36u] .request-meta .meta .text-dark {
    flex: 0 0 70%;
    margin-left: auto;
    text-align: left;
}

[b-vzbum1q36u] .request-card .card-body .fw-semibold {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* _content/RingiSystem/Components/Pages/RequestApproval/ApprovalRequestList.razor.rz.scp.css */
.list-height[b-bhfndgeag0] {
    height: calc(100vh - 140px);
}

@media (max-width: 992px) {
    .list-height[b-bhfndgeag0] {
        height: calc(100vh - 320px);
    }
}

.hide-scrollbar[b-bhfndgeag0]::-webkit-scrollbar {
    display: none;
}

.hide-scrollbar[b-bhfndgeag0] {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.date-group:last-child[b-bhfndgeag0] {
    margin-bottom: 0 !important;
}

.date-title[b-bhfndgeag0] {
    font-size: 1.1rem;
}
/* _content/RingiSystem/Components/Pages/RequestApproval/RequestApprovalStatusFilterPanel.razor.rz.scp.css */
:root[b-sa4j5ycy92] {
    --accent: #ff8f1f;
    --accent-soft: #fff3e6;
    --accent-soft-hover: #ffe8cc;
    --accent-contrast: #ffffff;
}

.chips-row[b-sa4j5ycy92] {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
}

.chips-row .status-chip[b-sa4j5ycy92] {
    flex: 0 0 auto !important;
    min-width: auto !important;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
    padding: .38rem .9rem;
}

@media (min-width: 1200px) {
    .chips-row[b-sa4j5ycy92] {
        display: flex;
        gap: .5rem;
    }

    .status-col[b-sa4j5ycy92] {
        min-width: 0;
    }
}

.status-chip[b-sa4j5ycy92] {
    border: 1px solid #F59E0B;
    color: #F59E0B;
    background: #fff;
    border-radius: 0;
    padding: .3rem .6rem;
    font-weight: 600;
    font-size: .85rem;
    line-height: 1.2;
    min-width: 90px;
    text-align: center;
    flex: 0 0 auto;
    transition: background-color .12s, color .12s, border-color .12s;
}

.status-chip:not(.active):hover[b-sa4j5ycy92] {
    background: #FFF2DE !important;
    color: #F59E0B !important;
    border-color: #F59E0B !important;
}

.status-chip.active[b-sa4j5ycy92],
.status-chip.active:hover[b-sa4j5ycy92],
.status-chip.active:focus[b-sa4j5ycy92],
.status-chip.active:focus-visible[b-sa4j5ycy92] {
    background: #F59E0B !important;
    color: #fff !important;
    border-color: #F59E0B !important;
}

.status-chip:focus[b-sa4j5ycy92],
.status-chip:focus-visible[b-sa4j5ycy92] {
    outline: none !important;
    box-shadow: none !important;
}

.btn-all[b-sa4j5ycy92] {
    border: 1px solid #9AA4AE;
    background: #fff;
    color: #6B7280;
    border-radius: .5rem;
    padding: .45rem .9rem;
    font-weight: 600;
}

.btn-all:hover[b-sa4j5ycy92] {
    background: #F4F6F8;
}

.btn-accent[b-sa4j5ycy92] {
    background-color: var(--accent) !important;
    border-color: var(--accent) !important;
    color: var(--accent-contrast) !important;
}

.btn-accent:hover[b-sa4j5ycy92],
.btn-accent:focus[b-sa4j5ycy92] {
    background-color: #ff8210 !important;
    border-color: #ff8210 !important;
    color: var(--accent-contrast) !important;
}

.btn-outline-accent[b-sa4j5ycy92] {
    background-color: #ffffff !important;
    border-color: var(--accent) !important;
    color: var(--accent) !important;
}

.btn-outline-accent:hover[b-sa4j5ycy92],
.btn-outline-accent:focus[b-sa4j5ycy92],
.btn-outline-accent:active[b-sa4j5ycy92] {
    background-color: var(--accent-soft-hover) !important;
    border-color: var(--accent) !important;
    color: var(--accent) !important;
}

.btn-outline-accent.btn-sm[b-sa4j5ycy92],
.btn-accent.btn-sm[b-sa4j5ycy92] {
    line-height: 1.2;
}
/* _content/RingiSystem/Components/Pages/Role/RoleDetailPage.razor.rz.scp.css */
#tabs-roledetail[b-ui382kk151] {
    display: flex;
    flex-direction: column;
}

#tabs-roledetail[b-ui382kk151]  .nav {
    flex: 0 0 auto;
    margin-bottom: .5rem;
}

#tabs-roledetail[b-ui382kk151]  .tab-content,
#tabs-roledetail[b-ui382kk151]  .tab-body {
    display: flex;
    flex-direction: column;
}

.page-root[b-ui382kk151] {
    display: flex;
    flex-direction: column;
}

.page-root > .row[b-ui382kk151] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    flex-direction: column;
}

/* Bootstrapのcolumnがflexで高さを埋めるように */
.page-root > .row > .col-12[b-ui382kk151] {
    min-height: 0;
}

/* min-height: 0 ユーティリティ（flexの子要素が縮小できるように） */
.min-height-0[b-ui382kk151] {
    min-height: 0 !important;
}

/* ====== タブロック（編集中は他タブを無効化）====== */

/* タブとして機能しうる要素を一括で無効化 */
#tabs-roledetail.lock-others[b-ui382kk151]  .nav a,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav button,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav .nav-link,
#tabs-roledetail.lock-others[b-ui382kk151]  .tab-headers > *,
#tabs-roledetail.lock-others[b-ui382kk151]  .tab-headers .tab-header,
#tabs-roledetail.lock-others[b-ui382kk151]  [data-tab],
#tabs-roledetail.lock-others[b-ui382kk151]  [role="tab"] {
    pointer-events: none !important;
    opacity: .5 !important;
    cursor: not-allowed !important;
}

/* アクティブタブは通常表示のまま */
#tabs-roledetail.lock-others[b-ui382kk151]  .nav .active,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav .nav-link.active,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav [role="tab"].active,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav .material-tab.active,
#tabs-roledetail.lock-others[b-ui382kk151]  .tab-headers .active,
#tabs-roledetail.lock-others[b-ui382kk151]  .tab-headers > .active,
#tabs-roledetail.lock-others[b-ui382kk151]  .tab-headers .tab-header.active,
#tabs-roledetail.lock-others[b-ui382kk151]  [role="tab"].active {
    pointer-events: auto !important;
    opacity: 1 !important;
    cursor: default !important;
}

/* フォーカス時のアウトラインを非表示 */
#tabs-roledetail.lock-others[b-ui382kk151]  .nav .nav-link:not(.active):focus,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav [role="tab"]:not(.active):focus,
#tabs-roledetail.lock-others[b-ui382kk151]  .nav .material-tab:not(.active):focus {
    outline: none !important;
}
/* _content/RingiSystem/Components/Pages/Role/RoleSearchForm.razor.rz.scp.css */
/* RoleSearchForm styles */
/* _content/RingiSystem/Components/Pages/Role/RoleSearchPage.razor.rz.scp.css */
/* scope header background via the card (Bootstrap reads this var on .card) */
.list-card[b-se18qf9rjh] {
    --bs-card-cap-bg: #fff; /* makes the header white */
    border: 1px solid #dee2e6 !important; /* thin outer border */
}

/* force a single thin divider under the header */
.list-card > .card-header[b-se18qf9rjh] {
    background: #fff !important;
    border-bottom: 1px solid #dee2e6 !important;
}

/* prevent a second line from the content wrapper */
.list-card .table-responsive[b-se18qf9rjh] {
    border-top: 0 !important;
}

/* table should butt up to the header without extra gap */
.list-card .table[b-se18qf9rjh] {
    margin-bottom: 0;
}

/* ポップアップ内の中身を縦横センターに */
.popup-center-wrap[b-se18qf9rjh] {
    min-height: 40vh; /* 高さにゆとり（好みで 35–50vh） */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
}

/* ドラッグ＆ドロップ領域（太い点線・よくある見た目） */
.upload-area[b-se18qf9rjh] {
    width: min(720px, 92vw); /* 画面幅に合わせて縮む */
    min-height: 220px; /* しっかり大きさを出す */
    margin: 0 auto; /* 中央寄せ */
    padding: 28px 20px;
    border: 4px dashed var(--bs-primary); /* 太い点線 */
    border-radius: 12px;
    background: #f8fafc; /* 薄いグレー系背景 */
    color: #334155;
    display: flex; /* 中のアイコンと文言を中央に */
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

/* ドラッグ中の強調 */
.upload-area.dragover[b-se18qf9rjh] {
    background: #eef6ff;
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 4px rgba(13, 110, 253, .08); /* 薄い光輪 */
}

/* InputFile を全面にかぶせてクリック/ドロップを拾う */
.input-overlay[b-se18qf9rjh] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
/* _content/RingiSystem/Components/Pages/Role/Tabs/RoleBasicInfoTab.razor.rz.scp.css */
.required[b-ojwspqm8fo]::after {
    content: " *";
    color: red;
}

/* タブ中身で不要な下余白を消す */
#tabs-groupdetail .tab-content[b-ojwspqm8fo],
#tabs-groupdetail .tab-body[b-ojwspqm8fo] {
    padding-bottom: 0 !important;
}

/* タブ中身の最後の要素に付いた余白をゼロに寄せる（Bootstrapの .mb-* 対策）*/
#tabs-groupdetail .tab-content > :last-child[b-ojwspqm8fo],
#tabs-groupdetail .tab-body > :last-child[b-ojwspqm8fo] {
    margin-bottom: 0 !important;
}

/* 余白を作りやすい both-edges をやめる */
#tabs-groupdetail .tab-content[b-ojwspqm8fo],
#tabs-groupdetail .tab-body[b-ojwspqm8fo] {
    scrollbar-gutter: stable; /* もしくは この1行を削除 */
}

/* 編集フォームは自動で伸びる — スクロール禁止 */
.user-edit-area[b-ojwspqm8fo] {
    max-height: none;
    overflow: visible;
}

/* 下ボタンは少し上に余白を付けるだけ（固定しない） */
.user-edit-actions[b-ojwspqm8fo] {
    position: static;
    background: none;
    padding-top: 1rem;
}

/* Hidden scrollbar scroll area */
.user-edit-scroll[b-ojwspqm8fo] {
    max-height: 75vh; /* limit visible area, adjust as needed */
    overflow-y: scroll; /* enable scrolling */
    scrollbar-width: none; /* Firefox: hide scrollbar */
}

/* Chrome / Safari */
.user-edit-scroll[b-ojwspqm8fo]::-webkit-scrollbar {
    display: none;
}

/* Only activate scrollbar when local login ON */
.user-edit-scroll.scroll-active[b-ojwspqm8fo] {
    overflow-y: scroll;
}
/* _content/RingiSystem/Components/Pages/Role/Tabs/RolePermissionsTab.razor.rz.scp.css */
/* タブのルートコンテナ */
.permissions-tab-root[b-76fbrskaqb] {
    display: flex;
    flex-direction: column;
}

/* 二パネルコンテナ（メニュー配置、権限設定） */
.permissions-two-panel-container[b-76fbrskaqb] {
    display: flex;
    gap: 1rem;
}

/* 各パネル */
.permissions-two-panel-container > .panel-wrapper[b-76fbrskaqb] {
    min-width: 0;
}

    /* 各パネルの横幅指定 */
    .permissions-two-panel-container > .panel-center[b-76fbrskaqb] {
        flex: 0 0 40%;
    }

    .permissions-two-panel-container > .panel-right[b-76fbrskaqb] {
        flex: 1 1 auto;
    }

.btn.btn-link[b-76fbrskaqb] {
    padding: 0 .25rem;
}

/* ダッシュボード（固定メニュー） */
[b-76fbrskaqb] .dashboard-fixed-card {
    background: white;
    border: 1px solid #ccc;
    cursor: default;
}

/* セクションカードと見出しから外すドロップエリアの幅を揃える */
[b-76fbrskaqb] .section-card {
    width: 100%;
}

.big-drop-area[b-76fbrskaqb] {
    min-height: 80px; /* ← 大きさ調整 */
    width: 100%; /* セクションカードと同じ幅 */
    border: 2px dashed #dee2e6;
    border-radius: 6px;
    background-color: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6c757d;
    font-size: 0.9rem;
    margin-top: 8px;
    transition: background-color 0.2s, border-color 0.2s;
}

.big-drop-area:hover[b-76fbrskaqb] {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}

/* ▼ 三角アイコンを非表示にする */
.no-caret[b-76fbrskaqb]::after {
    display: none !important;
}

.dropdown-toggle[b-76fbrskaqb],
.dropdown-menu .dropdown-item[b-76fbrskaqb] {
    cursor: pointer;
}

/* フォルダカードの見た目は現状維持。開閉三角ボタンも pointer に */
button.btn.btn-light[b-76fbrskaqb] {
    cursor: pointer;
}

/* セクションヘッダーの三点メニューボタンの背景を透明に */
[b-76fbrskaqb] .section-card .dropdown .btn-light {
    background-color: transparent !important;
    border-color: transparent !important;
}

[b-76fbrskaqb] .section-card .dropdown .btn-light:hover,
[b-76fbrskaqb] .section-card .dropdown .btn-light:focus {
    background-color: rgba(0, 0, 0, 0.05) !important;
    border-color: transparent !important;
}

/* フォルダグリッド（縦並び） */
[b-76fbrskaqb] .folder-grid {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
}

/* ヘッダー内で極力折り返さない */
.flex-nowrap[b-76fbrskaqb] {
    flex-wrap: nowrap !important;
}

/* ドロップゾーン（セクション内のコンテンツエリア） */
[b-76fbrskaqb] .folder-drop-space {
    min-height: 50px;
    background-color: #f8f9fa;
    border: 1px dashed #dee2e6;
    border-radius: 4px;
    transition: background-color 0.2s, border-color 0.2s;
    padding-right: 1rem; /* 右側にもパディングを追加 */
    padding-bottom: 0.5rem; /* 下部に余白を追加 */
}

[b-76fbrskaqb] .folder-drop-space:empty::before {
    content: "ここにメニューをドロップ";
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    color: #6c757d;
    font-size: 0.85rem;
}

/* 小さいドロップゾーン（セクション内の最下部） */
[b-76fbrskaqb] .drop-zone {
    min-height: 30px;
    background-color: #f8f9fa;
    border: dashed 1px #dee2e6;
    border-radius: 4px;
    transition: border-color 0.2s, background-color 0.2s;
    margin-top: 4px; /* メニューカードとの間隔 */
}

[b-76fbrskaqb] .drop-zone:hover {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}

/* セクション名のオーバーフロー処理 */
[b-76fbrskaqb] .section-title-row {
    min-width: 0;
    flex: 1;
}

[b-76fbrskaqb] .section-name-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 150px;
}

/* 配置済みメニューカード（モックアップに合わせたスタイル） */
[b-76fbrskaqb] .menu-card-placed {
    position: relative;
    padding: 10px 40px 10px 10px; /* 右側のパディングを増やして削除ボタン用スペース確保 */
    margin-bottom: 7px;
    background: white;
    border: 1px solid #ccc;
    border-radius: 5px;
    cursor: grab;
    transition: border-color 0.15s, background-color 0.15s;
}

[b-76fbrskaqb] .menu-card-placed:hover {
    background-color: #f8f9fa;
}

[b-76fbrskaqb] .menu-card-placed.selected {
    border: 2px solid #16a34a;
}

/* 削除ボタン */
[b-76fbrskaqb] .menu-delete-btn {
    position: absolute;
    right: 8px; /* 右端から少し離す */
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    padding: 0 !important;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* _content/RingiSystem/Components/Pages/Role/Views/RoleMenuStructurePane.razor.rz.scp.css */
.big-drop-area[b-y6u3omwu7l] {
    min-height: 80px;
    border: 2px dashed #dee2e6;
    border-radius: 6px;
    background-color: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6c757d;
    font-size: 0.9rem;
    margin-top: 8px;
    transition: background-color 0.2s, border-color 0.2s;
}

.big-drop-area:hover[b-y6u3omwu7l] {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}

.drop-zone[b-y6u3omwu7l] {
    height: 10px;
    background-color: #f8f9fa;
    border: dashed 1px transparent;
    transition: border-color 0.2s;
}

.drop-zone:hover[b-y6u3omwu7l] {
    border-color: #0d6efd;
    background-color: #e7f1ff;
}
/* _content/RingiSystem/Components/Pages/SystemEnvironmentSetting/SystemEnvironmentSetting.razor.rz.scp.css */
.system-environment-setting-container[b-04d3eeimkp] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #f6f8fb;
}

.app[b-04d3eeimkp] {
    display: grid;
    grid-template-columns: 300px 1fr;
    min-height: 100vh;
}

.sidebar[b-04d3eeimkp] {
    background: linear-gradient(180deg, #1c6b3a, #0f4f2a);
    color: #fff;
    padding: 28px 22px;
}

.sb-title[b-04d3eeimkp] {
    font-size: 28px;
    font-weight: 700;
    margin: 4px 2px 12px;
}

.sb-sub[b-04d3eeimkp] {
    font-size: 12px;
    color: #d8e6de;
    margin: 0 2px 18px;
}

.steps[b-04d3eeimkp] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.step[b-04d3eeimkp] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
    user-select: none;
}

.step:hover[b-04d3eeimkp] {
    background: rgba(255, 255, 255, .06);
}

.step.active[b-04d3eeimkp] {
    background: rgba(255, 255, 255, .12);
}

.step-head[b-04d3eeimkp] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dot[b-04d3eeimkp] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    border: 2px solid rgba(255, 255, 255, .85);
    color: #0c4023;
    background: #fff;
    font-size: 14px;
    font-weight: 700;
}

.step.completed .dot[b-04d3eeimkp] {
    background: #13c27a;
    border-color: #13c27a;
    color: #0e3d26;
}

.step-label[b-04d3eeimkp] {
    font-size: 16px;
}

.note-msg[b-04d3eeimkp] {
    font-size: 11px;
    color: #e4f1ea;
    opacity: .85;
    margin-left: 32px;
}

.step.locked[b-04d3eeimkp] {
    opacity: .6;
    cursor: not-allowed;
}

.main[b-04d3eeimkp] {
    padding: 34px 36px;
    background: #f6f8fb;
}

.panel[b-04d3eeimkp] {
    background: #fff;
    border: 1px solid #e5e9ef;
    border-radius: 12px;
    padding: 26px;
    box-shadow: 0 4px 18px rgba(16, 24, 40, .04);
    min-height: 520px;
}

.panel h2[b-04d3eeimkp] {
    font-size: 28px;
    margin: 4px 2px 18px;
    color: #22343e;
    font-weight: 800;
}

.muted[b-04d3eeimkp] {
    color: #6b7b86;
    font-size: 14px;
}

.note[b-04d3eeimkp] {
    background: #fff7e6;
    border: 1px solid #ffe1b2;
    color: #8a5a00;
    padding: 12px 14px;
    border-radius: 10px;
    margin: 10px 0 18px;
}

.form-row[b-04d3eeimkp] {
    margin: 14px 0;
}

label[b-04d3eeimkp] {
    display: block;
    font-size: 14px;
    color: #3b4b55;
    margin-bottom: 6px;
}

input[type="text"][b-04d3eeimkp], input[type="password"][b-04d3eeimkp], input[type="email"][b-04d3eeimkp], input[type="number"][b-04d3eeimkp], select[b-04d3eeimkp], textarea[b-04d3eeimkp] {
    width: 100%;
    border: 1px solid #d9e0e6;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 15px;
    background: #fff;
    outline: none;
    transition: border-color .15s, box-shadow .15s;
}

input[readonly][b-04d3eeimkp] {
    background: #f3f6f8;
    color: #66757f;
}

input:focus[b-04d3eeimkp], select:focus[b-04d3eeimkp], textarea:focus[b-04d3eeimkp] {
    border-color: #84d0b0;
    box-shadow: 0 0 0 3px rgba(19, 194, 122, .18);
}

.row-2[b-04d3eeimkp] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.row-3[b-04d3eeimkp] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
}

.actions[b-04d3eeimkp] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 20px;
}

.left-actions[b-04d3eeimkp] {
    margin-right: auto;
}

.btn[b-04d3eeimkp] {
    appearance: none;
    border: none;
    cursor: pointer;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
}

.btn-secondary[b-04d3eeimkp] {
    background: #ecf1f4;
    color: #20303a;
    border: 1px solid #d7dee5;
}

.btn-outline[b-04d3eeimkp] {
    background: #fff;
    color: #197247;
    border: 2px solid green;
}

.btn-primary[b-04d3eeimkp] {
    background: #1e7f4f;
    color: #fff;
}

.btn[disabled][b-04d3eeimkp] {
    opacity: .55;
    cursor: not-allowed;
}

.btn-outline-secondary[b-04d3eeimkp] {
    color: #6c757d;
    border-color: #6c757d;
}

.view[b-04d3eeimkp] {
    display: none;
}

.view.active[b-04d3eeimkp] {
    display: block;
}

.req-status[b-04d3eeimkp] {
    font-size: 13px;
    margin: 8px 0 0;
}

.req-status.ok[b-04d3eeimkp] {
    color: #0b7a4a;
}

.req-status.ng[b-04d3eeimkp] {
    color: #d64545;
}

.hint[b-04d3eeimkp] {
    font-size: 12px;
    color: #6b7b86;
    margin-top: 6px;
}

.radio[b-04d3eeimkp] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.badge[b-04d3eeimkp] {
    display: inline-block;
    padding: .25rem .6rem;
    border-radius: 999px;
    font-size: 12px;
    border: 1px solid #dbe3ea;
    background: #f3f7fa;
    margin-right: 6px;
}

.badge.ok[b-04d3eeimkp] {
    color: #0b7a4a;
    border-color: #a9e0c8;
    background: #e9fbf4;
}

.badge.ng[b-04d3eeimkp] {
    color: #8a1f1f;
    border-color: #f2c1c1;
    background: #fff3f3;
}

.blocked-callout[b-04d3eeimkp] {
    border: 1px dashed #e0a7a7;
    background: #fff6f6;
    color: #7c1d1d;
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 14px;
    font-size: 14px;
}

.toast[b-04d3eeimkp] {
    position: fixed;
    right: 24px;
    bottom: 24px;
    background: #0b7a4a;
    color: #fff;
    padding: 12px 16px;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity .25s, transform .25s;
    font-weight: 600;
}

.toast.show[b-04d3eeimkp] {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 960px) {
    .app[b-04d3eeimkp] {
        grid-template-columns: 1fr;
    }

    .main[b-04d3eeimkp] {
        padding: 20px;
    }

    .sidebar[b-04d3eeimkp] {
        padding: 20px;
    }

    .row-2[b-04d3eeimkp], .row-3[b-04d3eeimkp] {
        grid-template-columns: 1fr;
    }
}


.loading-container[b-04d3eeimkp] {
    text-align: center;
    margin: 0 auto;
    padding: 50px;
}

.spinner[b-04d3eeimkp] {
    width: 60px;
    height: 60px;
    border: 6px solid #ccc;
    border-top: 6px solid #2ebd60;
    border-radius: 50%;
    animation: spin-b-04d3eeimkp 1s linear infinite;
    margin: 20px auto;
}

@keyframes spin-b-04d3eeimkp {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.complete-image[b-04d3eeimkp] {
    width: 200px;
    height: auto; /* アスペクト比を保持 */
}

[b-04d3eeimkp] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
    font-weight: 400;
    padding-left: 4px;
}

[b-04d3eeimkp] .input-validation-error {
    border-color: #dc3545;
    background-color: #fff;
}

[b-04d3eeimkp] .input-validation-error:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
/* _content/RingiSystem/Components/Pages/SystemEnvironmentSetting/Tabs/DatabaseConfigurationTab.razor.rz.scp.css */
.required[b-43cv575bgi]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-43cv575bgi] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/SystemEnvironmentSetting/Tabs/SamlConfigurationTab.razor.rz.scp.css */
.required[b-1r5itbxfr9]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-1r5itbxfr9] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/SystemEnvironmentSetting/Tabs/SmtpConfigurationTab.razor.rz.scp.css */
.required[b-2rxhtep2f9]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-2rxhtep2f9] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/SystemEnvironmentSetting/Tabs/StorageConfigurationTab.razor.rz.scp.css */
.required[b-kiepb5mlnt]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-kiepb5mlnt] {
    font-size: 0.8rem;
}
/* _content/RingiSystem/Components/Pages/SystemLog/SystemLog.razor.rz.scp.css */
body[b-7vgzpxzwhm] {
}
/* _content/RingiSystem/Components/Pages/SystemProcessingStatus/SystemProcessingStatus.razor.rz.scp.css */
.message-ellipsis[b-h8o0fnvtse] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/ApplicationSettingsPage.razor.rz.scp.css */
/* 見出し行の左ズレ防止（container の既定paddingのみを使う） */
.page-title-row[b-jnbq0mxm7t] {
    padding-left: 0 !important;
}

/* ボタン非表示 */
.button-hidden[b-jnbq0mxm7t] {
    visibility: hidden;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/CompanySettingsPage.razor.rz.scp.css */
/* 見出し行の左ズレ防止（container の既定paddingのみを使う） */
.page-title-row[b-slhn4bzo25] {
    padding-left: 0 !important;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/DataBackup.razor.rz.scp.css */
/* 見出し行の左ズレ防止（container の既定paddingのみを使う） */
.page-title-row[b-gjbq3vi4s2] {
    padding-left: 0 !important;
}

/* ボタンの最小幅” */
.btn-w[b-gjbq3vi4s2] {
    min-width: 8rem;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/DataExtraction/DataExtractionDetailPage.razor.rz.scp.css */
/* ================================
   必須フィールドのアスタリスク表示
   ================================ */
.col-form-label.required[b-b5cwp82ui5]::after {
    content: " *";
    color: red;
}

/* ================================
   データ定義：公開 / 非公開トグルを緑に（青を上書き）
   ================================ */

/* フォーカスの青いリングを緑寄せ */
#data-extraction-definition .data-def-switch-input:focus[b-b5cwp82ui5] {
    border-color: #198754 !important;
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25) !important;
}

/* ON（チェック時）：背景と枠線を緑に */
#data-extraction-definition .data-def-switch-input:checked[b-b5cwp82ui5] {
    background-color: #198754 !important;
    border-color: #198754 !important;
}

/* “押してる最中に青へ戻る” 対策 */
#data-extraction-definition .data-def-switch-input:active[b-b5cwp82ui5] {
    filter: none !important;
}

/* 余白を少し締めたい場合（必要なら） */
#data-extraction-definition .data-def-form[b-b5cwp82ui5] {
    row-gap: 0.75rem;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/DataExtraction/DataExtractionSearchPage.razor.rz.scp.css */
.page-title-row[b-fven8cv9vy] {
    padding-left: 0 !important;
}

/* ページ単位で閉じる */
#data-extraction-list .data-def-table[b-fven8cv9vy] {
    border-collapse: collapse;
}

/* ヘッダー：背景と文字色（ユーザー一覧寄せ） */
#data-extraction-list .data-def-table thead th[b-fven8cv9vy] {
    background: #f8f9fa !important;
    color: #6c757d !important;
    font-weight: 600 !important;
    /* 変な線を消して、下線だけにする */
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid #6c757d !important; /* ← 緑じゃなくここに統一 */
}

/* ヘッダー行自体に付いてる border-bottom/色を無効化（緑ライン対策） */
#data-extraction-list .data-def-table thead tr[b-fven8cv9vy],
#data-extraction-list .data-def-table thead tr.data-def-head[b-fven8cv9vy] {
    border-bottom: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* 本文：縦線を消して、横線だけ薄く */
#data-extraction-list .data-def-table td[b-fven8cv9vy] {
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid #edf0f2 !important;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/DataRestore.razor.rz.scp.css */
/* 見出し行の左ズレ防止（container の既定paddingのみを使う） */
.page-title-row[b-6lmu7cgfqe] {
    padding-left: 0 !important;
}
/* ボタンの最小幅” */
.btn-w[b-6lmu7cgfqe] {
    width: 8rem;
}
/* _content/RingiSystem/Components/Pages/SystemSetting/SettingMenu.razor.rz.scp.css */
/* カードリンク内は常に手のひらカーソルにする */
.menu-card-link[b-tmojd4gkht],
.menu-card-link *[b-tmojd4gkht] {
    cursor: pointer;
}

    /* ついでにテキスト選択も防ぐ（任意） */
    .menu-card-link .card-header[b-tmojd4gkht],
    .menu-card-link .card-body[b-tmojd4gkht] {
        user-select: none;
    }
/* _content/RingiSystem/Components/Pages/TempPasswordSettings/TemporaryPasswordForm.razor.rz.scp.css */
.required[b-s7lnu78moc]::after {
    content: " *";
    color: #dc3545;
}

.form-text[b-s7lnu78moc] {
    font-size: 0.8rem;
}

.note[b-s7lnu78moc] {
    background: #fff7e6;
    border: 1px solid #ffe1b2;
    color: #8a5a00;
    padding: 12px 14px;
    border-radius: 10px;
    margin: 10px 0 18px;
}
/* _content/RingiSystem/Components/Pages/UserManagement/UserDetailPage.razor.rz.scp.css */
/* ===== ユーザー詳細タブコンテナ（グループと同じ動き） ===== */
#tabs-userdetail[b-qhn080y7ou] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

#tabs-userdetail .nav[b-qhn080y7ou] {
    flex: 0 0 auto;
    margin-bottom: .5rem;
}

#tabs-userdetail .tab-content[b-qhn080y7ou],
#tabs-userdetail .tab-body[b-qhn080y7ou],
#tabs-userdetail > :not(.nav)[b-qhn080y7ou] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    overflow-x: hidden;
    scrollbar-gutter: stable both-edges;
    -webkit-overflow-scrolling: touch;
}

#tabs-userdetail .tab-content[b-qhn080y7ou]::-webkit-scrollbar,
#tabs-userdetail .tab-body[b-qhn080y7ou]::-webkit-scrollbar {
    display: none;
}

#tabs-userdetail .tab-content[b-qhn080y7ou],
#tabs-userdetail .tab-body[b-qhn080y7ou] {
    scrollbar-width: none;
}

/* ====== ユーザー詳細：編集中は他タブを無効化（グループと同じ） ====== */

/* Bootstrap系タブ（nav-link 等） */
#tabs-userdetail.lock-others .nav .nav-link:not(.active)[b-qhn080y7ou],
#tabs-userdetail.lock-others .nav [role="tab"]:not(.active)[b-qhn080y7ou],
#tabs-userdetail.lock-others .nav .material-tab:not(.active)[b-qhn080y7ou] {
    pointer-events: none !important;
    opacity: .5 !important;
    cursor: not-allowed !important;
}

/* アクティブタブは通常のまま（緑ライン＋クリック不可にしない） */
#tabs-userdetail.lock-others .nav .nav-link.active[b-qhn080y7ou],
#tabs-userdetail.lock-others .nav [role="tab"].active[b-qhn080y7ou],
#tabs-userdetail.lock-others .nav .material-tab.active[b-qhn080y7ou] {
    pointer-events: auto !important;
    opacity: 1 !important;
    cursor: default !important;
}

/* カスタムタブヘッダ（Tabコンポーネント内の .tab-headers / .tab-header） */
#tabs-userdetail.lock-others .tab-headers .tab-header:not(.active)[b-qhn080y7ou] {
    pointer-events: none !important;
    opacity: .5 !important;
    cursor: not-allowed !important;
}

#tabs-userdetail.lock-others .tab-headers .tab-header.active[b-qhn080y7ou] {
    pointer-events: auto !important;
    opacity: 1 !important;
    cursor: default !important;
}

/* 念押しで、タブとして振る舞う要素全体をロック */
#tabs-userdetail.lock-others .nav a[b-qhn080y7ou],
#tabs-userdetail.lock-others .nav button[b-qhn080y7ou],
#tabs-userdetail.lock-others .nav .nav-link[b-qhn080y7ou],
#tabs-userdetail.lock-others .tab-headers > *[b-qhn080y7ou],
#tabs-userdetail.lock-others .tab-headers .tab-header[b-qhn080y7ou],
#tabs-userdetail.lock-others [data-tab][b-qhn080y7ou],
#tabs-userdetail.lock-others [role="tab"][b-qhn080y7ou] {
    pointer-events: none !important;
    opacity: .5 !important;
    cursor: not-allowed !important;
}

/* ただし active だけは操作可能のまま */
#tabs-userdetail.lock-others .nav .active[b-qhn080y7ou],
#tabs-userdetail.lock-others .tab-headers .active[b-qhn080y7ou],
#tabs-userdetail.lock-others .tab-headers > .active[b-qhn080y7ou],
#tabs-userdetail.lock-others [role="tab"].active[b-qhn080y7ou] {
    pointer-events: auto !important;
    opacity: 1 !important;
    cursor: default !important;
}
/* _content/RingiSystem/Components/Pages/UserManagement/Views/FlowPermissionListView.razor.rz.scp.css */

.flow-id-row[b-fck7wddyb9] {
    width: 25%;
}

.flow-name-row[b-fck7wddyb9] {
    width: auto;
}

.permission-row[b-fck7wddyb9] {
    width: 12%;
}
/* _content/RingiSystem/Components/Pages/UserManagement/Views/FormPermissionListView.razor.rz.scp.css */
.form-id-row[b-t0wcp9pwev] {
    width: 25%;
}

.form-name-row[b-t0wcp9pwev] {
    width: auto;
}

.permission-row[b-t0wcp9pwev] {
    width: 20%;
}
/* _content/RingiSystem/Components/Pages/UserSetting/ForcedPasswordChange.razor.rz.scp.css */
body[b-0o30og1w5c] {
}
/* _content/RingiSystem/Components/Pages/UserSetting/PasswordChange.razor.rz.scp.css */
body[b-phhdstf99e] {
}
/* _content/RingiSystem/Components/Shared/Conditions/ConditionValueEditor.razor.rz.scp.css */
/* ConditionValueEditor checkbox styling - small size to match form-control-sm */

/* Container for checkbox controls - matches form-control-sm height */
.condition-checkbox-container[b-j2u6ry16y3] {
    min-height: 31px;
    max-height: 120px;
    overflow-y: auto;
}

/* Small toggle switch styling */
[b-j2u6ry16y3] .condition-toggle-switch {
    height: 31px;
}

[b-j2u6ry16y3] .condition-toggle-switch .form-check-input {
    width: 2.5em;
    height: 1.25em;
    margin-top: 0;
}
/* _content/RingiSystem/Components/Shared/Loading.razor.rz.scp.css */
.loading-spinner[b-txlo1ygikz] {
    color: #047a61;
}

.loading-title[b-txlo1ygikz] {
    color: #047a61;
}

[b-txlo1ygikz] .loading-progress-bar {
    background-color: #047a61;
}
